Archive

Posts Tagged ‘CodeIgniter’

Integrate Xinha WYSIWYG Editor into CodeIgniter

January 2nd, 2009

ci_logo_flameSelama 2 hari nonstop aku googling sana sini karena penasaran bagaimana cara mengintegrasikan WYSIWYG(What You See Is What You Get) HTML Editor kedalam CodeIgniter. Hasil googling ternyata aku punya 3 kandidat yaitu TinyMCE, FCKEditor dan Xinha.
Untuk TinyMCE bisa direview di http://tinymce.moxiecode.com/, FCKEditor di http://www.fckeditor.net/ dan Xinha di http://trac.xinha.org/ .

Setelah aku unduh dan aku oprek ketiga editor tadi aku punya kesimpulan, untuk TiyMCE merupakan WYSIWYG Editor yang sangat elegan dan mudah sekali untuk digunakan dan diintegrasikan pada CodeIgniter namun sayangnya fitur Image Manager (MCImage Manager) dan File Manager(MCFile Manager) kita harus merogoh kocek lagi (maklumlah anak kost dompetnya tipis hehehe… :cry: ), karena tidak bisa diunduh secara bebas :roll:  akhirnya aku mengurungkan niat untuk menggunakan editor yang satu ini, walaupun sebenarnya ada yang telah menyediakan Ibrowser plugin dan Imanager plugin untuk TinyMCE (bisa direview disini)namun ukurannya sangat besar (Ibrowser 652KB dan Imanager 4MB(zipped), weleh weleh gede banget yach.. 8O ), lagipula aku juga males melakukan konfigurasi ini dan itu buat integrasikan plugin tersebut :P . Sedangkan FCKEditor sudah menyertakan Image Manager namun masih minim fitur dan untuk tampilan tidak seelegan TinyMCE, Image Manager untuk FCKEditor juga belum diperkuat dengan fitur editing gambar dan thumbnail.

Dan yang terakhir Xinha mempunyai fitur yang lumayan lengkap dan customizable, Xinha juga telah menyertakan plugin Image Manager dengan fitur editing gambar dan thumbnail yang sudah terintegrasi dengan baik, namun untuk plugin File Manager belum disertakan sehingga kita tidak bisa mengunggah file-file selain gambar ke dalam server walaupun begitu aku akhirnya memilih editor ini (karena aku suka ama Image Manager dan jenis-jenis emoticonnya banyak). Namun untuk proses integrasi ke dalam CodeIgniter agak rumit (hehehe gak sebegitunya kaleee.. :mrgreen: ).

Baiklah aku akan berikan langkah-langkah cara mengintegrasikan Xinha WYSIWYG Editor kedalam CodeIgniter. Sebenarnya langkah-langkah ini bersumber dari url http://codeigniter.com/wiki/WYSIWYG/ namun pada langkah yang akan aku berikan ini ada sedikit modifikasi kode.

Screenshot dari Xinha WYSIWYG Editor

xinha1

xinha2

Read more…

CodeIgniter, PHP , ,

File Inclusion untuk Javascript pada CodeIgniter

December 26th, 2008

ci_logo_flameLagi asik utak-atik CodeIgniter 1.7.0 yang merupakan salah satu framework PHP yang lagi populer saat ini, pada saat aku ingin mencoba melakukan file inclusion untuk file berisikan scripting javascript (file dengan ekstensi .js) tanpa panjang lebar aku langsung baca user guide CodeIgniter pada bagian HTML Helper. Anehnya koq function untuk inclusion file .js tidak ada, yang ada cuma function link_tag() untuk file inclusion  css, favicon dan rss feed.

Pikirku apa mungkin developer lupa tentang hal ini. Akhirnya setelah googling sana sini dapet juga solusinya. Untuk melakukan file inclusion untuk tipe file .js menggunakan function script_tag(). Namun sebelumnya kita harus modifikasi kode file html_helper.php terlebih dahulu pada direktori system/helpers/ dengan menambahkan kode berikut:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
if ( ! function_exists('script_tag'))
{
 function script_tag($src = '', $language = 'javascript', 
                    $type = 'text/javascript', $index_page = FALSE)
 {
    $CI =& get_instance();
 
    $script = '<script';
 
   if (is_array($src))
   {
	 foreach ($src as $k=>$v)
	 {
	  if ($k == 'src' AND strpos($v, '://') === FALSE)
	  {
		if ($index_page === TRUE)
		{
			$script .= ' src="'.
			$CI->config->site_url($v).'"';
		}
		else
		{
			$script .= ' src="'.
			$CI->config->slash_item('base_url').$v.'"';
		}
	   }
	   else
	   {
			$script .= "$k=\"$v\"";
	   }
	 }
 
	$script .= "></script>\n";
   }
   else
   {
	if ( strpos($src, '://') !== FALSE)
	{
		$script .= ' src="'.$src.'" ';
	}
	elseif ($index_page === TRUE)
	{
		$script .= ' src="'.$CI->config->site_url($src).'" ';
	}
	else
	{
		$script .= ' src="'.
		        $CI->config->slash_item('base_url').$src.'" ';
	}
 
	$script .= 'language="'.$language.'" type="'.$type.'"';
 
	$script .= '></script>'."\n";
  }
 
  return $script;
 }
}

Apabila Anda menerapkan URL Friendly maka jangan lupa pada file .htaccess lakukan modifikasi sehingga menjadi:

RewriteEngine on
RewriteCond $1 !^(index\.php|<strong>js</strong>|images|robots\.txt)
RewriteRule ^(.*)$ /<strong>directory_base</strong>/index.php/$1 [L]

Contoh penggunaan function script_tag() sebagai berikut:

<?=script_tag("js/md5.js")?>

Kode diatas akan menghasilkan output :

<script src="http://domain_anda/directory_base_anda/js/md5.js" language="javascript" type="text/javascript"></script>

Ref : here

CodeIgniter, PHP , ,