[ Index ]

PHP Cross Reference of phpwcms V1.4.7 _r403 (01.11.10)

title

Body

[close]

/setup/inc/ -> setup.func.inc.php (source)

   1  <?php
   2  /*************************************************************************************
   3     Copyright notice
   4     
   5     (c) 2002-2010 Oliver Georgi (oliver@phpwcms.de) // All rights reserved.
   6   
   7     This script is part of PHPWCMS. The PHPWCMS web content management system is
   8     free software; you can redistribute it and/or modify it under the terms of
   9     the GNU General Public License as published by the Free Software Foundation;
  10     either version 2 of the License, or (at your option) any later version.
  11    
  12     The GNU General Public License can be found at http://www.gnu.org/copyleft/gpl.html
  13     A copy is found in the textfile GPL.txt and important notices to the license 
  14     from the author is found in LICENSE.txt distributed with these scripts.
  15    
  16     This script is distributed in the hope that it will be useful, but WITHOUT ANY 
  17     WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  18     PARTICULAR PURPOSE.  See the GNU General Public License for more details.
  19   
  20     This copyright notice MUST APPEAR in all copies of the script!
  21  *************************************************************************************/
  22  
  23  //setup functions
  24  $phpwcms_version        = '1.4.7';
  25  $phpwcms_release_date    = '2010/11/01';
  26  $phpwcms_revision        = '403';
  27  
  28  function read_textfile($filename) {
  29      if(is_file($filename)) {
  30          $fd = @fopen($filename, "rb");
  31          $text = fread($fd, filesize($filename));
  32          fclose($fd);
  33          return $text;                
  34      } else {
  35          return false;
  36      }
  37  }
  38  
  39  function write_textfile($filename, $text) {
  40      if($fp = @fopen($filename, "w+b")) {;
  41          fwrite($fp, $text);
  42          fclose($fp);
  43          return true;    
  44      } else {
  45          return false;
  46      }
  47  }
  48  
  49  function set_chmod($path, $rights, $status, $file_folder=0) {
  50  
  51      $Cpath = $_SERVER['DOCUMENT_ROOT'].$path;
  52      if(@file_exists($Cpath)) {
  53          if(@chmod($Cpath, $rights)) {
  54              $status = $file_folder ? check_path_status($path) : check_file_status($path);
  55          }
  56      }
  57      return $status;
  58  }
  59  
  60  function check_path_status($path) {
  61      $path = $_SERVER['DOCUMENT_ROOT'].$path;
  62      $status = 0;
  63      $status += (is_dir($path)) ? 1 : 0;
  64      if($status) {
  65          $status += (is_writable($path)) ? 1 : 0;
  66      }
  67      return $status;
  68  }
  69  
  70  function check_file_status($path) {
  71      $path = $_SERVER['DOCUMENT_ROOT'].$path;
  72      $status = 0;
  73      $status += (is_file($path)) ? 1 : 0;
  74      if($status) {
  75          $status += (is_writable($path)) ? 1 : 0;
  76      }
  77      return $status;
  78  }
  79  
  80  function gib_bg_color($status) {
  81      $color = ' bgcolor="#FF3300"';
  82      switch($status) {
  83          case 2: $color = ' bgcolor="#99CC00"';
  84                  break;
  85          case 1: $color = ' bgcolor="#99CC00"';
  86                  break;
  87      }
  88      return $color;
  89      
  90  }
  91  
  92  function gib_status_text($status) {
  93      $msg = "&nbsp;<b>FALSE</b> (not existing)";
  94      switch($status) {
  95          case 2: $msg = "&nbsp;<b>OK</b> (exists + writable)";
  96                  break;
  97          case 1: $msg = "&nbsp;<b>FALSE</b> (exists + not writable)";
  98                  break;
  99          case 3: $msg = "&nbsp;<b>OK</b> (exists + not writable)";
 100                  break;
 101      }
 102      return $msg;
 103  }
 104  
 105  function slweg($string_wo_slashes_weg, $string_laenge=0) {
 106      // Falls die Serverfunktion magic_quotes_gpc aktiviert ist, so
 107      // sollen die Slashes herausgenommen werden, anderenfalls nicht
 108      $string_wo_slashes_weg = trim($string_wo_slashes_weg);
 109      if( get_magic_quotes_gpc() ) $string_wo_slashes_weg = stripslashes ($string_wo_slashes_weg);
 110      if($string_laenge) $string_wo_slashes_weg = substr($string_wo_slashes_weg, 0, $string_laenge);
 111      return $string_wo_slashes_weg;
 112  }
 113  
 114  function clean_slweg($string_wo_slashes_weg, $string_laenge=0) {
 115      // Falls die Serverfunktion magic_quotes_gpc aktiviert ist, so
 116      // sollen die Slashes herausgenommen werden, anderenfalls nicht
 117      $string_wo_slashes_weg = trim($string_wo_slashes_weg);
 118      if( get_magic_quotes_gpc() ) $string_wo_slashes_weg = stripslashes ($string_wo_slashes_weg);
 119      $string_wo_slashes_weg = strip_tags($string_wo_slashes_weg);
 120      if($string_laenge) $string_wo_slashes_weg = substr($string_wo_slashes_weg, 0, $string_laenge);
 121      return $string_wo_slashes_weg;
 122  }
 123  
 124  function write_conf_file($val) {
 125  
 126      $conf_file  = '<?'."php\n\n";
 127      $conf_file .= "// database values\n";
 128      $conf_file .= "\$phpwcms['db_host']           = '".$val["db_host"]."';\n";
 129      $conf_file .= "\$phpwcms['db_user']           = '".$val["db_user"]."';\n";
 130      $conf_file .= "\$phpwcms['db_pass']           = '".$val["db_pass"]."';\n";
 131      $conf_file .= "\$phpwcms['db_table']          = '".$val["db_table"]."';\n";
 132      $conf_file .= "\$phpwcms['db_prepend']        = '".$val["db_prepend"]."';\n";
 133      $conf_file .= "\$phpwcms['db_pers']           = ".intval($val["db_pers"]).";\n";
 134      $conf_file .= "\$phpwcms['db_charset']        = '".$val["db_charset"]."';\n";
 135      $conf_file .= "\$phpwcms['db_collation']      = '".$val["db_collation"]."';\n";
 136      $conf_file .= "\$phpwcms['db_version']        = ".intval($val["db_version"]).";\n";
 137      
 138      $conf_file .= "\n// site values\n";
 139      $conf_file .= "\$phpwcms['site']              = '".$val["site"]."';\n";
 140      $conf_file .= "\$phpwcms['admin_name']        = '".$val["admin_name"]."'; //default: Webmaster\n";
 141      $conf_file .= "\$phpwcms['admin_user']        = '".$val["admin_user"]."'; //default: admin\n";
 142      $conf_file .= "\$phpwcms['admin_pass']        = '".$val["admin_pass"]."'; //MD5(phpwcms)\n";
 143      $conf_file .= "\$phpwcms['admin_email']       = '".$val["admin_email"]."'; //default: noreplay@host\n";
 144  
 145      $conf_file .= "\n// paths\n";
 146      if(!$val['DOC_ROOT'] || $val['DOC_ROOT'] == $_SERVER['DOCUMENT_ROOT']) {
 147          $conf_file .= "\$phpwcms['DOC_ROOT']          = \$_SERVER"."['DOCUMENT_ROOT'];";
 148      } else {
 149          $conf_file .= "\$phpwcms['DOC_ROOT']          = '".$val["DOC_ROOT"]."';         //default: \$_SERVER['DOCUMENT_ROOT']";
 150      }
 151      $real_doc_root = dirname(__FILE__);
 152      $real_doc_root = str_replace("\\", '/', $real_doc_root);
 153      $real_doc_root = str_replace('/setup', '', $real_doc_root);
 154      $real_doc_root = str_replace($val["root"], '', $real_doc_root);
 155      $real_doc_root = preg_replace('/\/$/i', '', $real_doc_root);
 156      $conf_file .= "// real DOC_ROOT seems to be: '".$real_doc_root."' \n";
 157      $conf_file .= "\$phpwcms['root']                 = '".$val["root"]."';         //default: ''\n";
 158      $conf_file .= "\$phpwcms['file_path']         = '".$val["file_path"]."';    //default: 'filearchive'\n";
 159      $conf_file .= "\$phpwcms['templates']         = '".$val["templates"]."';    //default: 'template'\n";
 160      $conf_file .= "\$phpwcms['content_path']      = '".$val["content_path"]."'; //default: 'content'\n";
 161      $conf_file .= "\$phpwcms['cimage_path']       = 'images';  //default: 'images'\n";
 162      $conf_file .= "\$phpwcms['ftp_path']          = '".$val["ftp_path"]."';     //default: 'upload'\n";
 163  
 164      $conf_file .= "\n// content values\n";
 165      $conf_file .= "\$phpwcms['file_maxsize']      = ".intval($val["file_maxsize"])."; //Bytes (50 x 1024 x 1024)\n";
 166      $conf_file .= "\$phpwcms['content_width']     = ".intval($val["content_width"])."; //max width of the article content column - important for rendering multi column images\n";
 167      $conf_file .= "\$phpwcms['img_list_width']    = ".intval($val["img_list_width"])."; //max with of the list thumbnail image\n";
 168      $conf_file .= "\$phpwcms['img_list_height']   = ".intval($val["img_list_height"])."; //max height of the list thumbnail image\n";
 169      $conf_file .= "\$phpwcms['img_prev_width']    = ".intval($val["img_prev_width"])."; //max width of the large preview image\n";
 170      $conf_file .= "\$phpwcms['img_prev_height']   = ".intval($val["img_prev_height"])."; //max height of the large preview image\n";
 171      $conf_file .= "\$phpwcms['max_time']          = ".intval($val["max_time"])."; //logout after max_time/60 seconds\n";
 172  
 173      $conf_file .= "\n// other stuff\n";
 174      $conf_file .= "\$phpwcms['compress_page']     = 0; //0 = OFF, 1-9: page compression ON (1 = low level, 9 = highest level)\n";
 175      $conf_file .= "\$phpwcms['imagick']           = 0; //0 = GD,  1 = ImageMagick, 2 = ImageMagick 4.2.9\n";
 176      $conf_file .= "\$phpwcms['imagick_path']      = ''; //Path to ImageMagick (default='' - none)\n";
 177      $conf_file .= "\$phpwcms['use_gd2']           = 1; //0 = GD1, 1 = GD2\n";
 178      $conf_file .= "\$phpwcms['rewrite_url']       = 0;  //whether URL should be rewritable\n";
 179      $conf_file .= "\$phpwcms['wysiwyg_editor']    = 1;  //0 = no wysiwyg editor, 1 = CKEditor, 2 = FCKeditor\n";
 180      $conf_file .= "\$phpwcms['phpmyadmin']        = 0;  //enable/disable phpMyAdmin in Backend\n";
 181      $conf_file .= "\$phpwcms['allowed_lang']      = array('en');     //array of allowed languages: array('en', 'de', 'fr', 'es')\n";
 182      $conf_file .= "\$phpwcms['be_lang_parse']     = false; // to disable backend language parsing use false, otherwise 'BBCode' or 'BraceCode'\n";
 183      $conf_file .= "\$phpwcms['DOCTYPE_LANG']      = '';          //by default same as \$phpwcms['default_lang'], but can be injected by whatever you like\n";
 184      $conf_file .= "\$phpwcms['default_lang']      = '".$val["default_lang"]."';  //default language\n";
 185      $conf_file .= "\$phpwcms['charset']           = '".$val["charset"]."';  //default charset 'iso-8859-1'\n";
 186      $conf_file .= "\$phpwcms['allow_remote_URL']  = 1;  //0 = no remote URL in {PHP:...} replacement tag allowed, 1 = allowed\n";
 187      $conf_file .= "\$phpwcms['gt_mod']            = 1;  //0 = Graphical Text MOD disabled, 1 = enabled\n";
 188      $conf_file .= "\$phpwcms['jpg_quality']       = 85; //JPG Quality Range 25-100\n";
 189      $conf_file .= "\$phpwcms['sharpen_level']     = 1;  //Sharpen Level - only ImageMagick: 0, 1, 2, 3, 4, 5 -- 0 = no, 5 = extra sharp\n";
 190      $conf_file .= "\$phpwcms['allow_ext_init']    = 1;  //allow including of custom external scripts at frontend initialization\n";
 191      $conf_file .= "\$phpwcms['allow_ext_render']  = 1;  //allow including of custom external scripts at frontend rendering\n";
 192      $conf_file .= "\$phpwcms['cache_enabled']     = 0;        //cache On/Off - 1 = caching On / 0 = caching Off (default)\n";
 193      $conf_file .= "\$phpwcms['cache_timeout']     = 0;  //default cache timeout setting in seconds - 0 = caching Off\n";
 194      $conf_file .= "\$phpwcms['imgext_disabled']   = '';  //comma seperated list of imagetypes which should not be handled 'pdf,ps'\n";
 195      $conf_file .= "\$phpwcms['multimedia_ext']    = 'aif,aiff,mov,movie,mp3,mpeg,mpeg4,mpeg2,wav,swf,swc,ram,ra,wma,wmv,avi,au,midi,moov,rm,rpm,mid,midi'; //comma seperated list of file extensiosn allowed for multimedia\n";
 196      $conf_file .= "\$phpwcms['inline_download']   = 1;  //1 = try to display download documents in new window; 0 = show safe under dialog\n";
 197      $conf_file .= "\$phpwcms['form_tracking']     = 1; //make a db entry for each form\n";
 198      $conf_file .= "\$phpwcms['formmailer_set']    = array('allow_send_copy' => 0, 'global_recipient_email' => 'mail@example.com'); //for better security handling\n";
 199      $conf_file .= "\$phpwcms['allow_cntPHP_rt']   = 0; //allow PHP replacement tags and includes in content parts\n";
 200      $conf_file .= "\$phpwcms['GETparameterName']  = 'id'; //must have a minimum of 2 chars \n";
 201      $conf_file .= "\$phpwcms['BOTS']              = array('googlebot', 'msnbot', 'bingbot', 'ia_archiver', 'altavista', 'slurp', 'yahoo', 'jeeves', 'teoma', 'lycos', 'crawler'); //don't start session \n";
 202      $conf_file .= "\$phpwcms['mode_XHTML']        = 1; // Doctype: 1 = XHTML 1.0 Transitional, 0 = HTML 4.01 Transitional, 2 = XHTML 1.0 Strict, 3 = HTML5 \n";
 203      $conf_file .= "\$phpwcms['header_XML']        = 0; // Content Type: 1 = application/xhtml+xml, 0 = text/html \n";
 204      $conf_file .= "\$phpwcms['IE_htc_hover']      = 0; // fix IE CSS anomalities\n";
 205      $conf_file .= "\$phpwcms['IE_htc_png']        = 0; // IE <7 PNG fix\n";
 206      $conf_file .= "\$phpwcms['IE7-js']              = 0; // load IE7-js - fix for HTML/CSS/PMG bugs in IE, will disable IE_htc_hover/IE_htc_png\n";
 207      $conf_file .= "\$phpwcms['Bad_Behavior']      = 0; // 1 enables spam/bot blocking by Bad Behavior, 0 off \n";
 208      $conf_file .= "\$phpwcms['wysiwyg_template']  = array( 'FCKeditor' => 'phpwcms_basic,phpwcms_default,Default,Basic', 'CKEditor' => 'phpwcms_basic,phpwcms_default,Default,Basic' );\n";
 209      $conf_file .= "\$phpwcms['GET_pageinfo']      = 0; // will add \"&pageinfo=/cat1/cat2/page-title.htm\" based on the breadcrumb information for each site link \n";
 210      $conf_file .= "\$phpwcms['version_check']     = 1; // checks for current release of phpwcms online \n";
 211      $conf_file .= "\$phpwcms['SESSION_FEinit']    = 0; // set 1 to enable sessions in frontend, 0 to disable sessions in frontend \n";
 212      $conf_file .= "\$phpwcms['Login_IPcheck']     = 0; \n";
 213      $conf_file .= "\$phpwcms['frontend_edit']      = 0; // enable content specific direct links - linking direct into the backend \n";
 214      $conf_file .= "\$phpwcms['gd_memcheck_off']   = 0; // disable GD php memory check before resize an image \n";
 215      $conf_file .= "\$phpwcms['enable_chat']          = 0; // enable or disable chat function, by default it is disabled - not recommend anymore to use it \n";
 216      $conf_file .= "\$phpwcms['enable_messages']      = 0; // enable or disable internal messags, by default it is disabled - not recommend anymore to use it \n";
 217      $conf_file .= "\$phpwcms['enable_seolog']      = 1; // enable or disable logging of search engine referrer data \n";
 218      $conf_file .= "\$phpwcms['i18n_parse']            = 1; // enable|disable browser based language parser - all @@Text@@ will be parsed and checked for translation/var based replacement\n";
 219      $conf_file .= "\$phpwcms['i18n_complex']      = 0; // enable|disable the way browser language setting should be used, false = the easier way (always 2 chars 'en'), true - 'en-gb'...\n";
 220      $conf_file .= "\$phpwcms['FCK_FileBrowser']   = 1; // enable|disable phpwcms Filebrowser in FCKeditor instead of built-in FCK file bowser support\n";
 221      $conf_file .= "\$phpwcms['JW_FLV_License']    = ''; // insert your JW FLV Media Player License Code here - License warning will no longer displayed\n";
 222      $conf_file .= "\$phpwcms['feuser_regkey']      = 'FEUSER';\n";
 223      $conf_file .= "\$phpwcms['login.php']            = 'login.php';\n";
 224      $conf_file .= "\$phpwcms['js_lib']              = array('mootools-1.2'=>'MooTools 1.2', 'mootools-1.1'=>'MooTools 1.1', 'jquery'=>'jQuery 1.3', 'jquery-1.4'=>'jQuery 1.4');\n";
 225  
 226  
 227      $conf_file .= "\n// dynamic ssl encryption engine\n";
 228      $conf_file .= "\$phpwcms['site_ssl_mode']     = '0'; // tuns the SSL Support of WCMS on(1) or off (0) DEFAULT '0'\n";
 229      $conf_file .= "\$phpwcms['site_ssl_url']      = '';  //URL assigned to the SSL Certificate. DON'T add a slash at the End! Exp. 'https://www.yourdomainhere.tld'\n";
 230      $conf_file .= "\$phpwcms['site_ssl_port']     = '443'; //The Port on which you SSL Service serve the secure Sites. Servers DEFAULT is '443'\n";
 231      
 232      $conf_file .= "\n// smtp values\n";
 233      $conf_file .= "\$phpwcms['SMTP_FROM_EMAIL']   = '".$val["SMTP_FROM_EMAIL"]."'; // reply/from email address\n";
 234      $conf_file .= "\$phpwcms['SMTP_FROM_NAME']    = '".$val["SMTP_FROM_NAME"]."'; // reply/from name\n";
 235      $conf_file .= "\$phpwcms['SMTP_HOST']         = '".$val["SMTP_HOST"]."'; // SMTP server (host/IP)\n";
 236      $conf_file .= "\$phpwcms['SMTP_PORT']         = ".intval($val["SMTP_PORT"])."; // SMTP-Server port (default 25)\n";
 237      $conf_file .= "\$phpwcms['SMTP_MAILER']       = '".$val["SMTP_MAILER"]."'; // default phpMailer: smtp, mail (default), sendmail\n";
 238      $conf_file .= "\$phpwcms['SMTP_AUTH']         = ".intval($val["SMTP_AUTH"])."; // sets SMTP_AUTH to ON/OFF\n";
 239      $conf_file .= "\$phpwcms['SMTP_USER']         = '".$val["SMTP_USER"]."'; // default SMTP login (user) name\n";
 240      $conf_file .= "\$phpwcms['SMTP_PASS']         = '".$val["SMTP_PASS"]."'; // default SMTP password\n";
 241      
 242      $conf_file .= "\n\ndefine('PHPWCMS_INCLUDE_CHECK', true);\n";
 243      
 244      $conf_file .= "\n\n?>";
 245      
 246      write_textfile("setup.conf.inc.php", $conf_file);    
 247  }
 248  
 249  function aporeplace($string_to_convert="") {
 250      //Ändert die einfachen Apostrophe für SQL-Funktionen in doppelte
 251      $string_to_convert = str_replace("\\", "\\\\", $string_to_convert);
 252      $string_to_convert = str_replace("'", "''", $string_to_convert );
 253      return $string_to_convert;
 254  }
 255  
 256  function html_specialchars($h="") {
 257      //used to replace the htmlspecialchars original php function
 258      //not compatible with many internation chars like turkish, polish
 259      $h = preg_replace("/&(?!#[0-9]+;)/s", '&amp;', $h );
 260      $h = str_replace( "<", "&lt;"  , $h );
 261      $h = str_replace( ">", "&gt;"  , $h );
 262      $h = str_replace( '"', "&quot;", $h );
 263      $h = str_replace( "'", "&#039;", $h );
 264      $h = str_replace( "\\", "&#92;", $h );
 265      return $h;
 266  }
 267  
 268  
 269  // taken from http://de.php.net/manual/de/function.phpinfo.php#59573
 270  function parsePHPModules() {
 271   ob_start();
 272   phpinfo(INFO_MODULES);
 273   $s = ob_get_contents();
 274   ob_end_clean();
 275   
 276   $s = strip_tags($s,'<h2><th><td>');
 277   $s = preg_replace('/<th[^>]*>([^<]+)<\/th>/',"<info>\\1</info>",$s);
 278   $s = preg_replace('/<td[^>]*>([^<]+)<\/td>/',"<info>\\1</info>",$s);
 279   $vTmp = preg_split('/(<h2>[^<]+<\/h2>)/',$s,-1,PREG_SPLIT_DELIM_CAPTURE);
 280   $vModules = array();
 281   for ($i=1;$i<count($vTmp);$i++) {
 282    if (preg_match('/<h2>([^<]+)<\/h2>/',$vTmp[$i],$vMat)) {
 283     $vName = trim($vMat[1]);
 284     $vTmp2 = explode("\n",$vTmp[$i+1]);
 285     foreach ($vTmp2 AS $vOne) {
 286     $vPat = '<info>([^<]+)<\/info>';
 287     $vPat3 = "/$vPat\s*$vPat\s*$vPat/";
 288     $vPat2 = "/$vPat\s*$vPat/";
 289     if (preg_match($vPat3,$vOne,$vMat)) { // 3cols
 290       $vModules[$vName][trim($vMat[1])] = array(trim($vMat[2]),trim($vMat[3]));
 291     } elseif (preg_match($vPat2,$vOne,$vMat)) { // 2cols
 292       $vModules[$vName][trim($vMat[1])] = trim($vMat[2]);
 293     }
 294     }
 295    }
 296   }
 297   return $vModules;
 298  }
 299  
 300  
 301  function errorWarning($warning='') {
 302      $t  = '<p class="error"><img src="../img/famfamfam/icon_alert.gif" alt="Alert" border="0" class="icon1" /><b>';
 303      $t .= $warning;
 304      $t .= '</b></p>';
 305      return $t;
 306  }
 307  
 308  // based on definitions of phpMyAdmin
 309  
 310  $mysql_charset_map = array(
 311      'big5'         => 'big5',
 312      'cp-866'       => 'cp866',
 313      'euc-jp'       => 'ujis',
 314      'euc-kr'       => 'euckr',
 315      'gb2312'       => 'gb2312',
 316      'gbk'          => 'gbk',
 317      'iso-8859-1'   => 'latin1',
 318      'iso-8859-2'   => 'latin2',
 319      'iso-8859-7'   => 'greek',
 320      'iso-8859-8'   => 'hebrew',
 321      'iso-8859-8-i' => 'hebrew',
 322      'iso-8859-9'   => 'latin5',
 323      'iso-8859-13'  => 'latin7',
 324      'iso-8859-15'  => 'latin1',
 325      'koi8-r'       => 'koi8r',
 326      'shift_jis'    => 'sjis',
 327      'tis-620'      => 'tis620',
 328      'utf-8'        => 'utf8',
 329      'windows-1250' => 'cp1250',
 330      'windows-1251' => 'cp1251',
 331      'windows-1252' => 'latin1',
 332      'windows-1256' => 'cp1256',
 333      'windows-1257' => 'cp1257',
 334  );
 335  
 336  $available_languages = array(
 337      'af-iso-8859-1'     => array('af|afrikaans', 'afrikaans-iso-8859-1', 'af', ''),
 338      'af-utf-8'          => array('af|afrikaans', 'afrikaans-utf-8', 'af', ''),
 339      'ar-win1256'        => array('ar|arabic', 'arabic-windows-1256', 'ar', '&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577;'),
 340      'ar-utf-8'          => array('ar|arabic', 'arabic-utf-8', 'ar', '&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577;'),
 341      'az-iso-8859-9'     => array('az|azerbaijani', 'azerbaijani-iso-8859-9', 'az', 'Az&#601;rbaycanca'),
 342      'az-utf-8'          => array('az|azerbaijani', 'azerbaijani-utf-8', 'az', 'Az&#601;rbaycanca'),
 343  
 344      'becyr-win1251'     => array('be|belarusian', 'belarusian_cyrillic-windows-1251', 'be', '&#1041;&#1077;&#1083;&#1072;&#1088;&#1091;&#1089;&#1082;&#1072;&#1103;'),
 345      'becyr-utf-8'       => array('be|belarusian', 'belarusian_cyrillic-utf-8', 'be', '&#1041;&#1077;&#1083;&#1072;&#1088;&#1091;&#1089;&#1082;&#1072;&#1103;'),
 346      'belat-utf-8'       => array('be[-_]lat|belarusian latin', 'belarusian_latin-utf-8', 'be-lat', 'Byelorussian'),
 347      'bg-win1251'        => array('bg|bulgarian', 'bulgarian-windows-1251', 'bg', '&#1041;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;'),
 348      'bg-koi8-r'         => array('bg|bulgarian', 'bulgarian-koi8-r', 'bg', '&#1041;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;'),
 349      'bg-utf-8'          => array('bg|bulgarian', 'bulgarian-utf-8', 'bg', '&#1041;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;'),
 350      'bs-win1250'        => array('bs|bosnian', 'bosnian-windows-1250', 'bs', 'Bosanski'),
 351      'bs-utf-8'          => array('bs|bosnian', 'bosnian-utf-8', 'bs', 'Bosanski'),
 352      'ca-iso-8859-1'     => array('ca|catalan', 'catalan-iso-8859-1', 'ca', 'Catal&agrave;'),
 353      'ca-utf-8'          => array('ca|catalan', 'catalan-utf-8', 'ca', 'Catal&agrave;'),
 354      'cs-iso-8859-2'     => array('cs|czech', 'czech-iso-8859-2', 'cs', '&#268;esky'),
 355      'cs-win1250'        => array('cs|czech', 'czech-windows-1250', 'cs', '&#268;esky'),
 356      'cs-utf-8'          => array('cs|czech', 'czech-utf-8', 'cs', '&#268;esky'),
 357      'da-iso-8859-1'     => array('da|danish', 'danish-iso-8859-1', 'da', 'Dansk'),
 358      'da-utf-8'          => array('da|danish', 'danish-utf-8', 'da', 'Dansk'),
 359      'de-iso-8859-1'     => array('de|german', 'german-iso-8859-1', 'de', 'Deutsch'),
 360      'de-iso-8859-15'    => array('de|german', 'german-iso-8859-15', 'de', 'Deutsch'),
 361      'de-utf-8'          => array('de|german', 'german-utf-8', 'de', 'Deutsch'),
 362      'el-iso-8859-7'     => array('el|greek',  'greek-iso-8859-7', 'el', '&Epsilon;&lambda;&lambda;&eta;&nu;&iota;&kappa;&#940;'),
 363      'el-utf-8'          => array('el|greek',  'greek-utf-8', 'el', '&Epsilon;&lambda;&lambda;&eta;&nu;&iota;&kappa;&#940;'),
 364      'en-iso-8859-1'     => array('en|english',  'english-iso-8859-1', 'en', ''),
 365      'en-iso-8859-15'    => array('en|english',  'english-iso-8859-15', 'en', ''),
 366      'en-utf-8'          => array('en|english',  'english-utf-8', 'en', ''),
 367      'es-iso-8859-1'     => array('es|spanish', 'spanish-iso-8859-1', 'es', 'Espa&ntilde;ol'),
 368      'es-iso-8859-15'    => array('es|spanish', 'spanish-iso-8859-15', 'es', 'Espa&ntilde;ol'),
 369      'es-utf-8'          => array('es|spanish', 'spanish-utf-8', 'es', 'Espa&ntilde;ol'),
 370      'et-iso-8859-1'     => array('et|estonian', 'estonian-iso-8859-1', 'et', 'Eesti'),
 371      'et-utf-8'          => array('et|estonian', 'estonian-utf-8', 'et', 'Eesti'),
 372      'eu-iso-8859-1'     => array('eu|basque', 'basque-iso-8859-1', 'eu', 'Euskara'),
 373      'eu-utf-8'          => array('eu|basque', 'basque-utf-8', 'eu', 'Euskara'),
 374      'fa-win1256'        => array('fa|persian', 'persian-windows-1256', 'fa', '&#1601;&#1575;&#1585;&#1587;&#1740;'),
 375      'fa-utf-8'          => array('fa|persian', 'persian-utf-8', 'fa', '&#1601;&#1575;&#1585;&#1587;&#1740;'),
 376      'fi-iso-8859-1'     => array('fi|finnish', 'finnish-iso-8859-1', 'fi', 'Suomi'),
 377      'fi-iso-8859-15'    => array('fi|finnish', 'finnish-iso-8859-15', 'fi', 'Suomi'),
 378      'fi-utf-8'          => array('fi|finnish', 'finnish-utf-8', 'fi', 'Suomi'),
 379      'fr-iso-8859-1'     => array('fr|french', 'french-iso-8859-1', 'fr', 'Fran&ccedil;ais'),
 380      'fr-iso-8859-15'    => array('fr|french', 'french-iso-8859-15', 'fr', 'Fran&ccedil;ais'),
 381      'fr-utf-8'          => array('fr|french', 'french-utf-8', 'fr', 'Fran&ccedil;ais'),
 382      'gl-iso-8859-1'     => array('gl|galician', 'galician-iso-8859-1', 'gl', 'Galego'),
 383      'gl-utf-8'          => array('gl|galician', 'galician-utf-8', 'gl', 'Galego'),
 384      'he-iso-8859-8-i'   => array('he|hebrew', 'hebrew-iso-8859-8-i', 'he', '&#1506;&#1489;&#1512;&#1497;&#1514;'),
 385      'he-utf-8'          => array('he|hebrew', 'hebrew-utf-8', 'he', '&#1506;&#1489;&#1512;&#1497;&#1514;'),
 386      'hi-utf-8'          => array('hi|hindi', 'hindi-utf-8', 'hi', '&#2361;&#2367;&#2344;&#2381;&#2342;&#2368;'),
 387      'hr-win1250'        => array('hr|croatian', 'croatian-windows-1250', 'hr', 'Hrvatski'),
 388      'hr-iso-8859-2'     => array('hr|croatian', 'croatian-iso-8859-2', 'hr', 'Hrvatski'),
 389      'hr-utf-8'          => array('hr|croatian', 'croatian-utf-8', 'hr', 'Hrvatski'),
 390      'hu-iso-8859-2'     => array('hu|hungarian', 'hungarian-iso-8859-2', 'hu', 'Magyar'),
 391      'hu-utf-8'          => array('hu|hungarian', 'hungarian-utf-8', 'hu', 'Magyar'),
 392      'id-iso-8859-1'     => array('id|indonesian', 'indonesian-iso-8859-1', 'id', 'Bahasa Indonesia'),
 393      'id-utf-8'          => array('id|indonesian', 'indonesian-utf-8', 'id', 'Bahasa Indonesia'),
 394      'it-iso-8859-1'     => array('it|italian', 'italian-iso-8859-1', 'it', 'Italiano'),
 395      'it-iso-8859-15'    => array('it|italian', 'italian-iso-8859-15', 'it', 'Italiano'),
 396      'it-utf-8'          => array('it|italian', 'italian-utf-8', 'it', 'Italiano'),
 397      'ja-euc'            => array('ja|japanese', 'japanese-euc', 'ja', '&#26085;&#26412;&#35486;'),
 398      'ja-sjis'           => array('ja|japanese', 'japanese-sjis', 'ja', '&#26085;&#26412;&#35486;'),
 399      'ja-utf-8'          => array('ja|japanese', 'japanese-utf-8', 'ja', '&#26085;&#26412;&#35486;'),
 400      'ko-euc-kr'         => array('ko|korean', 'korean-euc-kr', 'ko', '&#54620;&#44397;&#50612;'),
 401      'ko-utf-8'          => array('ko|korean', 'korean-utf-8', 'ko', '&#54620;&#44397;&#50612;'),
 402      'ka-utf-8'          => array('ka|georgian', 'georgian-utf-8', 'ka', '&#4325;&#4304;&#4320;&#4311;&#4323;&#4314;&#4312;'),
 403      'lt-win1257'        => array('lt|lithuanian', 'lithuanian-windows-1257', 'lt', 'Lietuvi&#371;'),
 404      'lt-utf-8'          => array('lt|lithuanian', 'lithuanian-utf-8', 'lt', 'Lietuvi&#371;'),
 405      'lv-win1257'        => array('lv|latvian', 'latvian-windows-1257', 'lv', 'Latvie&scaron;u'),
 406      'lv-utf-8'          => array('lv|latvian', 'latvian-utf-8', 'lv', 'Latvie&scaron;u'),
 407      'mn-utf-8'          => array('mn|mongolian', 'mongolian-utf-8', 'mn', '&#1052;&#1086;&#1085;&#1075;&#1086;&#1083;'),
 408      'ms-iso-8859-1'     => array('ms|malay', 'malay-iso-8859-1', 'ms', 'Bahasa Melayu'),
 409      'ms-utf-8'          => array('ms|malay', 'malay-utf-8', 'ms', 'Bahasa Melayu'),
 410      'nl-iso-8859-1'     => array('nl|dutch', 'dutch-iso-8859-1', 'nl', 'Nederlands'),
 411      'nl-iso-8859-15'    => array('nl|dutch', 'dutch-iso-8859-15', 'nl', 'Nederlands'),
 412      'nl-utf-8'          => array('nl|dutch', 'dutch-utf-8', 'nl', 'Nederlands'),
 413      'no-iso-8859-1'     => array('no|norwegian', 'norwegian-iso-8859-1', 'no', 'Norsk'),
 414      'no-utf-8'          => array('no|norwegian', 'norwegian-utf-8', 'no', 'Norsk'),
 415      'pl-iso-8859-2'     => array('pl|polish', 'polish-iso-8859-2', 'pl', 'Polski'),
 416      'pl-win1250'        => array('pl|polish', 'polish-windows-1250', 'pl', 'Polski'),
 417      'pl-utf-8'          => array('pl|polish', 'polish-utf-8', 'pl', 'Polski'),
 418      'ptbr-iso-8859-1'   => array('pt[-_]br|brazilian portuguese', 'brazilian_portuguese-iso-8859-1', 'pt-BR', 'Portugu&ecirc;s'),
 419      'ptbr-utf-8'        => array('pt[-_]br|brazilian portuguese', 'brazilian_portuguese-utf-8', 'pt-BR', 'Portugu&ecirc;s'),
 420      'pt-iso-8859-1'     => array('pt|portuguese', 'portuguese-iso-8859-1', 'pt', 'Portugu&ecirc;s'),
 421      'pt-iso-8859-15'    => array('pt|portuguese', 'portuguese-iso-8859-15', 'pt', 'Portugu&ecirc;s'),
 422      'pt-utf-8'          => array('pt|portuguese', 'portuguese-utf-8', 'pt', 'Portugu&ecirc;s'),
 423      'ro-iso-8859-1'     => array('ro|romanian', 'romanian-iso-8859-1', 'ro', 'Rom&acirc;n&#259;'),
 424      'ro-utf-8'          => array('ro|romanian', 'romanian-utf-8', 'ro', 'Rom&acirc;n&#259;'),
 425      'ru-win1251'        => array('ru|russian', 'russian-windows-1251', 'ru', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
 426      'ru-cp-866'         => array('ru|russian', 'russian-cp-866', 'ru', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
 427      'ru-koi8-r'         => array('ru|russian', 'russian-koi8-r', 'ru', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
 428      'ru-utf-8'          => array('ru|russian', 'russian-utf-8', 'ru', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
 429      'sk-iso-8859-2'     => array('sk|slovak', 'slovak-iso-8859-2', 'sk', 'Sloven&#269;ina'),
 430      'sk-win1250'        => array('sk|slovak', 'slovak-windows-1250', 'sk', 'Sloven&#269;ina'),
 431      'sk-utf-8'          => array('sk|slovak', 'slovak-utf-8', 'sk', 'Sloven&#269;ina'),
 432      'sl-iso-8859-2'     => array('sl|slovenian', 'slovenian-iso-8859-2', 'sl', 'Sloven&scaron;&#269;ina'),
 433      'sl-win1250'        => array('sl|slovenian', 'slovenian-windows-1250', 'sl', 'Sloven&scaron;&#269;ina'),
 434      'sl-utf-8'          => array('sl|slovenian', 'slovenian-utf-8', 'sl', 'Sloven&scaron;&#269;ina'),
 435      'sq-iso-8859-1'     => array('sq|albanian', 'albanian-iso-8859-1', 'sq', 'Shqip'),
 436      'sq-utf-8'          => array('sq|albanian', 'albanian-utf-8', 'sq', 'Shqip'),
 437      'srlat-win1250'     => array('sr[-_]lat|serbian latin', 'serbian_latin-windows-1250', 'sr-lat', 'Srpski'),
 438      'srlat-utf-8'       => array('sr[-_]lat|serbian latin', 'serbian_latin-utf-8', 'sr-lat', 'Srpski'),
 439      'srcyr-win1251'     => array('sr|serbian', 'serbian_cyrillic-windows-1251', 'sr', '&#1057;&#1088;&#1087;&#1089;&#1082;&#1080;'),
 440      'srcyr-utf-8'       => array('sr|serbian', 'serbian_cyrillic-utf-8', 'sr', '&#1057;&#1088;&#1087;&#1089;&#1082;&#1080;'),
 441      'sv-iso-8859-1'     => array('sv|swedish', 'swedish-iso-8859-1', 'sv', 'Svenska'),
 442      'sv-utf-8'          => array('sv|swedish', 'swedish-utf-8', 'sv', 'Svenska'),
 443      'th-tis-620'        => array('th|thai', 'thai-tis-620', 'th', '&#3616;&#3634;&#3625;&#3634;&#3652;&#3607;&#3618;'),
 444      'th-utf-8'          => array('th|thai', 'thai-utf-8', 'th', '&#3616;&#3634;&#3625;&#3634;&#3652;&#3607;&#3618;'),
 445      'tr-iso-8859-9'     => array('tr|turkish', 'turkish-iso-8859-9', 'tr', 'T&uuml;rk&ccedil;e'),
 446      'tr-utf-8'          => array('tr|turkish', 'turkish-utf-8', 'tr', 'T&uuml;rk&ccedil;e'),
 447      'tt-iso-8859-9'     => array('tt|tatarish', 'tatarish-iso-8859-9', 'tt', 'Tatar&ccedil;a'),
 448      'tt-utf-8'          => array('tt|tatarish', 'tatarish-utf-8', 'tt', 'Tatar&ccedil;a'),
 449      'uk-win1251'        => array('uk|ukrainian', 'ukrainian-windows-1251', 'uk', '&#1059;&#1082;&#1088;&#1072;&#1111;&#1085;&#1089;&#1100;&#1082;&#1072;'),
 450      'uk-utf-8'          => array('uk|ukrainian', 'ukrainian-utf-8', 'uk', '&#1059;&#1082;&#1088;&#1072;&#1111;&#1085;&#1089;&#1100;&#1082;&#1072;'),
 451      'zhtw-big5'         => array('zhtw|chinese traditional', 'chinese_traditional-big5', 'zh-TW', '&#20013;&#25991;'),
 452      'zhtw-utf-8'        => array('zhtw|chinese traditional', 'chinese_traditional-utf-8', 'zh-TW', '&#20013;&#25991;'),
 453      'zh-gb2312'         => array('zh|chinese simplified', 'chinese_simplified-gb2312', 'zh', '&#20013;&#25991;'),
 454      'zh-utf-8'          => array('zh|chinese simplified', 'chinese_simplified-utf-8', 'zh', '&#20013;&#25991;'),
 455  );
 456  
 457  function _dbQuery($query='', $_queryMode='ASSOC') {
 458  
 459      if(empty($query)) return false;
 460      
 461      global $db;
 462      $queryResult    = array();
 463      $queryCount        = 0;
 464      
 465      if($result = @mysql_query($query, $db)) {
 466      
 467          switch($_queryMode) {
 468  
 469              // INSERT, UPDATE, DELETE
 470              case 'INSERT':    $queryResult['INSERT_ID']        = mysql_insert_id($db);
 471              case 'DELETE':    
 472              case 'UPDATE':    
 473                              $queryResult['AFFECTED_ROWS']    = mysql_affected_rows($db);
 474                              return $queryResult;
 475                              break;
 476  
 477              // SELECT Queries    
 478              case 'ROW':        $_queryMode = 'mysql_fetch_row';    break;
 479              case 'ARRAY':    $_queryMode = 'mysql_fetch_array';    break;
 480              default:         $_queryMode = 'mysql_fetch_assoc';
 481      
 482          }
 483      
 484          while($row = $_queryMode($result)) {
 485              
 486              $queryResult[$queryCount] = $row;
 487              $queryCount++;
 488  
 489          }
 490          mysql_free_result($result);
 491      
 492          return $queryResult;
 493      
 494      } else {
 495          return false;
 496      }
 497  }
 498  
 499  if(!function_exists('decode_entities')) {
 500  	function decode_entities($string) {
 501          // replace numeric entities
 502          $string = preg_replace('~&#x([0-9a-f]+);~ei', 'chr(hexdec("\\1"))', $string);
 503          $string = preg_replace('~&#([0-9]+);~e', 'chr(\\1)', $string);
 504          // replace literal entities
 505          $trans_tbl = get_html_translation_table(HTML_ENTITIES);
 506          $trans_tbl = array_flip($trans_tbl);
 507          return strtr($string, $trans_tbl);
 508      }
 509  }
 510  
 511  ?>


Generated: Tue Nov 16 22:51:00 2010 Cross-referenced by PHPXref 0.7