[ Index ]

PHP Cross Reference of phpwcms V1.4.3 _r380 (23.11.09)

title

Body

[close]

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

   1  <?php
   2  /*************************************************************************************
   3     Copyright notice
   4     
   5     (c) 2002-2009 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.3';
  25  $phpwcms_release_date    = '2009/11/23';
  26  $phpwcms_revision        = '380';
  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['DOCTYPE_LANG']      = '';          //by default same as \$phpwcms['default_lang'], but can be injected by whatever you like\n";
 183      $conf_file .= "\$phpwcms['default_lang']      = '".$val["default_lang"]."';  //default language\n";
 184      $conf_file .= "\$phpwcms['charset']           = '".$val["charset"]."';  //default charset 'iso-8859-1'\n";
 185      $conf_file .= "\$phpwcms['allow_remote_URL']  = 1;  //0 = no remote URL in {PHP:...} replacement tag allowed, 1 = allowed\n";
 186      $conf_file .= "\$phpwcms['gt_mod']            = 1;  //0 = Graphical Text MOD disabled, 1 = enabled\n";
 187      $conf_file .= "\$phpwcms['jpg_quality']       = 85; //JPG Quality Range 25-100\n";
 188      $conf_file .= "\$phpwcms['sharpen_level']     = 1;  //Sharpen Level - only ImageMagick: 0, 1, 2, 3, 4, 5 -- 0 = no, 5 = extra sharp\n";
 189      $conf_file .= "\$phpwcms['allow_ext_init']    = 1;  //allow including of custom external scripts at frontend initialization\n";
 190      $conf_file .= "\$phpwcms['allow_ext_render']  = 1;  //allow including of custom external scripts at frontend rendering\n";
 191      $conf_file .= "\$phpwcms['cache_enabled']     = 0;        //cache On/Off - 1 = caching On / 0 = caching Off (default)\n";
 192      $conf_file .= "\$phpwcms['cache_timeout']     = 0;  //default cache timeout setting in seconds - 0 = caching Off\n";
 193      $conf_file .= "\$phpwcms['imgext_disabled']   = '';  //comma seperated list of imagetypes which should not be handled 'pdf,ps'\n";
 194      $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";
 195      $conf_file .= "\$phpwcms['inline_download']   = 1;  //1 = try to display download documents in new window; 0 = show safe under dialog\n";
 196      $conf_file .= "\$phpwcms['form_tracking']     = 1; //make a db entry for each form\n";
 197      $conf_file .= "\$phpwcms['formmailer_set']    = array('allow_send_copy' => 0, 'global_recipient_email' => 'form@localhost'); //for better security handling\n";
 198      $conf_file .= "\$phpwcms['allow_cntPHP_rt']   = 0; //allow PHP replacement tags and includes in content parts\n";
 199      $conf_file .= "\$phpwcms['GETparameterName']  = 'id'; //must have a minimum of 2 chars \n";
 200      $conf_file .= "\$phpwcms['BOTS']              = array('googlebot', 'msnbot', 'bingbot', 'ia_archiver', 'altavista', 'slurp', 'yahoo', 'jeeves', 'teoma', 'lycos', 'crawler'); //don't start session \n";
 201      $conf_file .= "\$phpwcms['mode_XHTML']        = 1; // Doctype: 1 = XHTML 1.0 Transitional, 0 = HTML 4.01 Transitional, 2 = XHTML 1.0 Strict \n";
 202      $conf_file .= "\$phpwcms['header_XML']        = 0; // Content Type: 1 = application/xhtml+xml, 0 = text/html \n";
 203      $conf_file .= "\$phpwcms['IE_htc_hover']      = 0; // enables HTC Hover for IE < 7 - has no effect in other browsers \n";
 204      $conf_file .= "\$phpwcms['IE_htc_png']        = 0; // enables HTC pngbehavior for IE < 7 - has no effect in other browsers \n";
 205      $conf_file .= "\$phpwcms['Bad_Behavior']      = 0; // 1 enables spam blocking by Bad Behavior, 0 off \n";
 206      $conf_file .= "\$phpwcms['wysiwyg_template']  = array( 'FCKeditor' => 'phpwcms_basic,phpwcms_default,Default,Basic', 'CKEditor' => 'phpwcms_basic,phpwcms_default,Default,Basic' );\n";
 207      $conf_file .= "\$phpwcms['GET_pageinfo']      = 0; // will add \"&pageinfo=/cat1/cat2/page-title.htm\" based on the breadcrumb information for each site link \n";
 208      $conf_file .= "\$phpwcms['version_check']     = 1; // checks for current release of phpwcms online \n";
 209      $conf_file .= "\$phpwcms['SESSION_FEinit']    = 0; // set 1 to enable sessions in frontend, 0 to disable sessions in frontend \n";
 210      $conf_file .= "\$phpwcms['Login_IPcheck']     = 0; \n";
 211      $conf_file .= "\$phpwcms['frontend_edit']      = 0; // enable content specific direct links - linking direct into the backend \n";
 212      $conf_file .= "\$phpwcms['gd_memcheck_off']   = 0; // disable GD php memory check before resize an image \n";
 213      $conf_file .= "\$phpwcms['enable_chat']          = 0; // enable or disable chat function, by default it is disabled - not recommend anymore to use it \n";
 214      $conf_file .= "\$phpwcms['enable_messages']      = 0; // enable or disable internal messags, by default it is disabled - not recommend anymore to use it \n";
 215      $conf_file .= "\$phpwcms['enable_seolog']      = 1; // enable or disable logging of search engine referrer data \n";
 216      $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";
 217      $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";
 218      $conf_file .= "\$phpwcms['FCK_FileBrowser']   = 1; // enable|disable phpwcms Filebrowser in FCKeditor instead of built-in FCK file bowser support\n";
 219      $conf_file .= "\$phpwcms['JW_FLV_License']    = ''; // insert your JW FLV Media Player License Code here - License warning will no longer displayed\n";
 220      $conf_file .= "\$phpwcms['feuser_regkey']      = 'FEUSER';\n";
 221      $conf_file .= "\$phpwcms['login.php']            = 'login.php';\n";
 222  
 223      $conf_file .= "\n// dynamic ssl encryption engine\n";
 224      $conf_file .= "\$phpwcms['site_ssl_mode']     = '0'; // tuns the SSL Support of WCMS on(1) or off (0) DEFAULT '0'\n";
 225      $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";
 226      $conf_file .= "\$phpwcms['site_ssl_port']     = '443'; //The Port on which you SSL Service serve the secure Sites. Servers DEFAULT is '443'\n";
 227      
 228      $conf_file .= "\n// smtp values\n";
 229      $conf_file .= "\$phpwcms['SMTP_FROM_EMAIL']   = '".$val["SMTP_FROM_EMAIL"]."'; // reply/from email address\n";
 230      $conf_file .= "\$phpwcms['SMTP_FROM_NAME']    = '".$val["SMTP_FROM_NAME"]."'; // reply/from name\n";
 231      $conf_file .= "\$phpwcms['SMTP_HOST']         = '".$val["SMTP_HOST"]."'; // SMTP server (host/IP)\n";
 232      $conf_file .= "\$phpwcms['SMTP_PORT']         = ".intval($val["SMTP_PORT"])."; // SMTP-Server port (default 25)\n";
 233      $conf_file .= "\$phpwcms['SMTP_MAILER']       = '".$val["SMTP_MAILER"]."'; // default phpMailer: smtp, mail (default), sendmail\n";
 234      $conf_file .= "\$phpwcms['SMTP_AUTH']         = ".intval($val["SMTP_AUTH"])."; // sets SMTP_AUTH to ON/OFF\n";
 235      $conf_file .= "\$phpwcms['SMTP_USER']         = '".$val["SMTP_USER"]."'; // default SMTP login (user) name\n";
 236      $conf_file .= "\$phpwcms['SMTP_PASS']         = '".$val["SMTP_PASS"]."'; // default SMTP password\n";
 237      
 238      $conf_file .= "\n\ndefine('PHPWCMS_INCLUDE_CHECK', true);\n";
 239      
 240      $conf_file .= "\n\n?>";
 241      
 242      write_textfile("setup.conf.inc.php", $conf_file);    
 243  }
 244  
 245  function aporeplace($string_to_convert="") {
 246      //Ändert die einfachen Apostrophe für SQL-Funktionen in doppelte
 247      $string_to_convert = str_replace("\\", "\\\\", $string_to_convert);
 248      $string_to_convert = str_replace("'", "''", $string_to_convert );
 249      return $string_to_convert;
 250  }
 251  
 252  function html_specialchars($h="") {
 253      //used to replace the htmlspecialchars original php function
 254      //not compatible with many internation chars like turkish, polish
 255      $h = preg_replace("/&(?!#[0-9]+;)/s", '&amp;', $h );
 256      $h = str_replace( "<", "&lt;"  , $h );
 257      $h = str_replace( ">", "&gt;"  , $h );
 258      $h = str_replace( '"', "&quot;", $h );
 259      $h = str_replace( "'", "&#039;", $h );
 260      $h = str_replace( "\\", "&#92;", $h );
 261      return $h;
 262  }
 263  
 264  
 265  // taken from http://de.php.net/manual/de/function.phpinfo.php#59573
 266  function parsePHPModules() {
 267   ob_start();
 268   phpinfo(INFO_MODULES);
 269   $s = ob_get_contents();
 270   ob_end_clean();
 271   
 272   $s = strip_tags($s,'<h2><th><td>');
 273   $s = preg_replace('/<th[^>]*>([^<]+)<\/th>/',"<info>\\1</info>",$s);
 274   $s = preg_replace('/<td[^>]*>([^<]+)<\/td>/',"<info>\\1</info>",$s);
 275   $vTmp = preg_split('/(<h2>[^<]+<\/h2>)/',$s,-1,PREG_SPLIT_DELIM_CAPTURE);
 276   $vModules = array();
 277   for ($i=1;$i<count($vTmp);$i++) {
 278    if (preg_match('/<h2>([^<]+)<\/h2>/',$vTmp[$i],$vMat)) {
 279     $vName = trim($vMat[1]);
 280     $vTmp2 = explode("\n",$vTmp[$i+1]);
 281     foreach ($vTmp2 AS $vOne) {
 282     $vPat = '<info>([^<]+)<\/info>';
 283     $vPat3 = "/$vPat\s*$vPat\s*$vPat/";
 284     $vPat2 = "/$vPat\s*$vPat/";
 285     if (preg_match($vPat3,$vOne,$vMat)) { // 3cols
 286       $vModules[$vName][trim($vMat[1])] = array(trim($vMat[2]),trim($vMat[3]));
 287     } elseif (preg_match($vPat2,$vOne,$vMat)) { // 2cols
 288       $vModules[$vName][trim($vMat[1])] = trim($vMat[2]);
 289     }
 290     }
 291    }
 292   }
 293   return $vModules;
 294  }
 295  
 296  
 297  function errorWarning($warning='') {
 298      $t  = '<p class="error"><img src="../img/famfamfam/icon_alert.gif" alt="Alert" border="0" class="icon1" /><b>';
 299      $t .= $warning;
 300      $t .= '</b></p>';
 301      return $t;
 302  }
 303  
 304  // based on definitions of phpMyAdmin
 305  
 306  $mysql_charset_map = array(
 307      'big5'         => 'big5',
 308      'cp-866'       => 'cp866',
 309      'euc-jp'       => 'ujis',
 310      'euc-kr'       => 'euckr',
 311      'gb2312'       => 'gb2312',
 312      'gbk'          => 'gbk',
 313      'iso-8859-1'   => 'latin1',
 314      'iso-8859-2'   => 'latin2',
 315      'iso-8859-7'   => 'greek',
 316      'iso-8859-8'   => 'hebrew',
 317      'iso-8859-8-i' => 'hebrew',
 318      'iso-8859-9'   => 'latin5',
 319      'iso-8859-13'  => 'latin7',
 320      'iso-8859-15'  => 'latin1',
 321      'koi8-r'       => 'koi8r',
 322      'shift_jis'    => 'sjis',
 323      'tis-620'      => 'tis620',
 324      'utf-8'        => 'utf8',
 325      'windows-1250' => 'cp1250',
 326      'windows-1251' => 'cp1251',
 327      'windows-1252' => 'latin1',
 328      'windows-1256' => 'cp1256',
 329      'windows-1257' => 'cp1257',
 330  );
 331  
 332  $available_languages = array(
 333      'af-iso-8859-1'     => array('af|afrikaans', 'afrikaans-iso-8859-1', 'af', ''),
 334      'af-utf-8'          => array('af|afrikaans', 'afrikaans-utf-8', 'af', ''),
 335      'ar-win1256'        => array('ar|arabic', 'arabic-windows-1256', 'ar', '&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577;'),
 336      'ar-utf-8'          => array('ar|arabic', 'arabic-utf-8', 'ar', '&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577;'),
 337      'az-iso-8859-9'     => array('az|azerbaijani', 'azerbaijani-iso-8859-9', 'az', 'Az&#601;rbaycanca'),
 338      'az-utf-8'          => array('az|azerbaijani', 'azerbaijani-utf-8', 'az', 'Az&#601;rbaycanca'),
 339  
 340      'becyr-win1251'     => array('be|belarusian', 'belarusian_cyrillic-windows-1251', 'be', '&#1041;&#1077;&#1083;&#1072;&#1088;&#1091;&#1089;&#1082;&#1072;&#1103;'),
 341      'becyr-utf-8'       => array('be|belarusian', 'belarusian_cyrillic-utf-8', 'be', '&#1041;&#1077;&#1083;&#1072;&#1088;&#1091;&#1089;&#1082;&#1072;&#1103;'),
 342      'belat-utf-8'       => array('be[-_]lat|belarusian latin', 'belarusian_latin-utf-8', 'be-lat', 'Byelorussian'),
 343      'bg-win1251'        => array('bg|bulgarian', 'bulgarian-windows-1251', 'bg', '&#1041;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;'),
 344      'bg-koi8-r'         => array('bg|bulgarian', 'bulgarian-koi8-r', 'bg', '&#1041;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;'),
 345      'bg-utf-8'          => array('bg|bulgarian', 'bulgarian-utf-8', 'bg', '&#1041;&#1098;&#1083;&#1075;&#1072;&#1088;&#1089;&#1082;&#1080;'),
 346      'bs-win1250'        => array('bs|bosnian', 'bosnian-windows-1250', 'bs', 'Bosanski'),
 347      'bs-utf-8'          => array('bs|bosnian', 'bosnian-utf-8', 'bs', 'Bosanski'),
 348      'ca-iso-8859-1'     => array('ca|catalan', 'catalan-iso-8859-1', 'ca', 'Catal&agrave;'),
 349      'ca-utf-8'          => array('ca|catalan', 'catalan-utf-8', 'ca', 'Catal&agrave;'),
 350      'cs-iso-8859-2'     => array('cs|czech', 'czech-iso-8859-2', 'cs', '&#268;esky'),
 351      'cs-win1250'        => array('cs|czech', 'czech-windows-1250', 'cs', '&#268;esky'),
 352      'cs-utf-8'          => array('cs|czech', 'czech-utf-8', 'cs', '&#268;esky'),
 353      'da-iso-8859-1'     => array('da|danish', 'danish-iso-8859-1', 'da', 'Dansk'),
 354      'da-utf-8'          => array('da|danish', 'danish-utf-8', 'da', 'Dansk'),
 355      'de-iso-8859-1'     => array('de|german', 'german-iso-8859-1', 'de', 'Deutsch'),
 356      'de-iso-8859-15'    => array('de|german', 'german-iso-8859-15', 'de', 'Deutsch'),
 357      'de-utf-8'          => array('de|german', 'german-utf-8', 'de', 'Deutsch'),
 358      'el-iso-8859-7'     => array('el|greek',  'greek-iso-8859-7', 'el', '&Epsilon;&lambda;&lambda;&eta;&nu;&iota;&kappa;&#940;'),
 359      'el-utf-8'          => array('el|greek',  'greek-utf-8', 'el', '&Epsilon;&lambda;&lambda;&eta;&nu;&iota;&kappa;&#940;'),
 360      'en-iso-8859-1'     => array('en|english',  'english-iso-8859-1', 'en', ''),
 361      'en-iso-8859-15'    => array('en|english',  'english-iso-8859-15', 'en', ''),
 362      'en-utf-8'          => array('en|english',  'english-utf-8', 'en', ''),
 363      'es-iso-8859-1'     => array('es|spanish', 'spanish-iso-8859-1', 'es', 'Espa&ntilde;ol'),
 364      'es-iso-8859-15'    => array('es|spanish', 'spanish-iso-8859-15', 'es', 'Espa&ntilde;ol'),
 365      'es-utf-8'          => array('es|spanish', 'spanish-utf-8', 'es', 'Espa&ntilde;ol'),
 366      'et-iso-8859-1'     => array('et|estonian', 'estonian-iso-8859-1', 'et', 'Eesti'),
 367      'et-utf-8'          => array('et|estonian', 'estonian-utf-8', 'et', 'Eesti'),
 368      'eu-iso-8859-1'     => array('eu|basque', 'basque-iso-8859-1', 'eu', 'Euskara'),
 369      'eu-utf-8'          => array('eu|basque', 'basque-utf-8', 'eu', 'Euskara'),
 370      'fa-win1256'        => array('fa|persian', 'persian-windows-1256', 'fa', '&#1601;&#1575;&#1585;&#1587;&#1740;'),
 371      'fa-utf-8'          => array('fa|persian', 'persian-utf-8', 'fa', '&#1601;&#1575;&#1585;&#1587;&#1740;'),
 372      'fi-iso-8859-1'     => array('fi|finnish', 'finnish-iso-8859-1', 'fi', 'Suomi'),
 373      'fi-iso-8859-15'    => array('fi|finnish', 'finnish-iso-8859-15', 'fi', 'Suomi'),
 374      'fi-utf-8'          => array('fi|finnish', 'finnish-utf-8', 'fi', 'Suomi'),
 375      'fr-iso-8859-1'     => array('fr|french', 'french-iso-8859-1', 'fr', 'Fran&ccedil;ais'),
 376      'fr-iso-8859-15'    => array('fr|french', 'french-iso-8859-15', 'fr', 'Fran&ccedil;ais'),
 377      'fr-utf-8'          => array('fr|french', 'french-utf-8', 'fr', 'Fran&ccedil;ais'),
 378      'gl-iso-8859-1'     => array('gl|galician', 'galician-iso-8859-1', 'gl', 'Galego'),
 379      'gl-utf-8'          => array('gl|galician', 'galician-utf-8', 'gl', 'Galego'),
 380      'he-iso-8859-8-i'   => array('he|hebrew', 'hebrew-iso-8859-8-i', 'he', '&#1506;&#1489;&#1512;&#1497;&#1514;'),
 381      'he-utf-8'          => array('he|hebrew', 'hebrew-utf-8', 'he', '&#1506;&#1489;&#1512;&#1497;&#1514;'),
 382      'hi-utf-8'          => array('hi|hindi', 'hindi-utf-8', 'hi', '&#2361;&#2367;&#2344;&#2381;&#2342;&#2368;'),
 383      'hr-win1250'        => array('hr|croatian', 'croatian-windows-1250', 'hr', 'Hrvatski'),
 384      'hr-iso-8859-2'     => array('hr|croatian', 'croatian-iso-8859-2', 'hr', 'Hrvatski'),
 385      'hr-utf-8'          => array('hr|croatian', 'croatian-utf-8', 'hr', 'Hrvatski'),
 386      'hu-iso-8859-2'     => array('hu|hungarian', 'hungarian-iso-8859-2', 'hu', 'Magyar'),
 387      'hu-utf-8'          => array('hu|hungarian', 'hungarian-utf-8', 'hu', 'Magyar'),
 388      'id-iso-8859-1'     => array('id|indonesian', 'indonesian-iso-8859-1', 'id', 'Bahasa Indonesia'),
 389      'id-utf-8'          => array('id|indonesian', 'indonesian-utf-8', 'id', 'Bahasa Indonesia'),
 390      'it-iso-8859-1'     => array('it|italian', 'italian-iso-8859-1', 'it', 'Italiano'),
 391      'it-iso-8859-15'    => array('it|italian', 'italian-iso-8859-15', 'it', 'Italiano'),
 392      'it-utf-8'          => array('it|italian', 'italian-utf-8', 'it', 'Italiano'),
 393      'ja-euc'            => array('ja|japanese', 'japanese-euc', 'ja', '&#26085;&#26412;&#35486;'),
 394      'ja-sjis'           => array('ja|japanese', 'japanese-sjis', 'ja', '&#26085;&#26412;&#35486;'),
 395      'ja-utf-8'          => array('ja|japanese', 'japanese-utf-8', 'ja', '&#26085;&#26412;&#35486;'),
 396      'ko-euc-kr'         => array('ko|korean', 'korean-euc-kr', 'ko', '&#54620;&#44397;&#50612;'),
 397      'ko-utf-8'          => array('ko|korean', 'korean-utf-8', 'ko', '&#54620;&#44397;&#50612;'),
 398      'ka-utf-8'          => array('ka|georgian', 'georgian-utf-8', 'ka', '&#4325;&#4304;&#4320;&#4311;&#4323;&#4314;&#4312;'),
 399      'lt-win1257'        => array('lt|lithuanian', 'lithuanian-windows-1257', 'lt', 'Lietuvi&#371;'),
 400      'lt-utf-8'          => array('lt|lithuanian', 'lithuanian-utf-8', 'lt', 'Lietuvi&#371;'),
 401      'lv-win1257'        => array('lv|latvian', 'latvian-windows-1257', 'lv', 'Latvie&scaron;u'),
 402      'lv-utf-8'          => array('lv|latvian', 'latvian-utf-8', 'lv', 'Latvie&scaron;u'),
 403      'mn-utf-8'          => array('mn|mongolian', 'mongolian-utf-8', 'mn', '&#1052;&#1086;&#1085;&#1075;&#1086;&#1083;'),
 404      'ms-iso-8859-1'     => array('ms|malay', 'malay-iso-8859-1', 'ms', 'Bahasa Melayu'),
 405      'ms-utf-8'          => array('ms|malay', 'malay-utf-8', 'ms', 'Bahasa Melayu'),
 406      'nl-iso-8859-1'     => array('nl|dutch', 'dutch-iso-8859-1', 'nl', 'Nederlands'),
 407      'nl-iso-8859-15'    => array('nl|dutch', 'dutch-iso-8859-15', 'nl', 'Nederlands'),
 408      'nl-utf-8'          => array('nl|dutch', 'dutch-utf-8', 'nl', 'Nederlands'),
 409      'no-iso-8859-1'     => array('no|norwegian', 'norwegian-iso-8859-1', 'no', 'Norsk'),
 410      'no-utf-8'          => array('no|norwegian', 'norwegian-utf-8', 'no', 'Norsk'),
 411      'pl-iso-8859-2'     => array('pl|polish', 'polish-iso-8859-2', 'pl', 'Polski'),
 412      'pl-win1250'        => array('pl|polish', 'polish-windows-1250', 'pl', 'Polski'),
 413      'pl-utf-8'          => array('pl|polish', 'polish-utf-8', 'pl', 'Polski'),
 414      'ptbr-iso-8859-1'   => array('pt[-_]br|brazilian portuguese', 'brazilian_portuguese-iso-8859-1', 'pt-BR', 'Portugu&ecirc;s'),
 415      'ptbr-utf-8'        => array('pt[-_]br|brazilian portuguese', 'brazilian_portuguese-utf-8', 'pt-BR', 'Portugu&ecirc;s'),
 416      'pt-iso-8859-1'     => array('pt|portuguese', 'portuguese-iso-8859-1', 'pt', 'Portugu&ecirc;s'),
 417      'pt-iso-8859-15'    => array('pt|portuguese', 'portuguese-iso-8859-15', 'pt', 'Portugu&ecirc;s'),
 418      'pt-utf-8'          => array('pt|portuguese', 'portuguese-utf-8', 'pt', 'Portugu&ecirc;s'),
 419      'ro-iso-8859-1'     => array('ro|romanian', 'romanian-iso-8859-1', 'ro', 'Rom&acirc;n&#259;'),
 420      'ro-utf-8'          => array('ro|romanian', 'romanian-utf-8', 'ro', 'Rom&acirc;n&#259;'),
 421      'ru-win1251'        => array('ru|russian', 'russian-windows-1251', 'ru', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
 422      'ru-cp-866'         => array('ru|russian', 'russian-cp-866', 'ru', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
 423      'ru-koi8-r'         => array('ru|russian', 'russian-koi8-r', 'ru', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
 424      'ru-utf-8'          => array('ru|russian', 'russian-utf-8', 'ru', '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;'),
 425      'sk-iso-8859-2'     => array('sk|slovak', 'slovak-iso-8859-2', 'sk', 'Sloven&#269;ina'),
 426      'sk-win1250'        => array('sk|slovak', 'slovak-windows-1250', 'sk', 'Sloven&#269;ina'),
 427      'sk-utf-8'          => array('sk|slovak', 'slovak-utf-8', 'sk', 'Sloven&#269;ina'),
 428      'sl-iso-8859-2'     => array('sl|slovenian', 'slovenian-iso-8859-2', 'sl', 'Sloven&scaron;&#269;ina'),
 429      'sl-win1250'        => array('sl|slovenian', 'slovenian-windows-1250', 'sl', 'Sloven&scaron;&#269;ina'),
 430      'sl-utf-8'          => array('sl|slovenian', 'slovenian-utf-8', 'sl', 'Sloven&scaron;&#269;ina'),
 431      'sq-iso-8859-1'     => array('sq|albanian', 'albanian-iso-8859-1', 'sq', 'Shqip'),
 432      'sq-utf-8'          => array('sq|albanian', 'albanian-utf-8', 'sq', 'Shqip'),
 433      'srlat-win1250'     => array('sr[-_]lat|serbian latin', 'serbian_latin-windows-1250', 'sr-lat', 'Srpski'),
 434      'srlat-utf-8'       => array('sr[-_]lat|serbian latin', 'serbian_latin-utf-8', 'sr-lat', 'Srpski'),
 435      'srcyr-win1251'     => array('sr|serbian', 'serbian_cyrillic-windows-1251', 'sr', '&#1057;&#1088;&#1087;&#1089;&#1082;&#1080;'),
 436      'srcyr-utf-8'       => array('sr|serbian', 'serbian_cyrillic-utf-8', 'sr', '&#1057;&#1088;&#1087;&#1089;&#1082;&#1080;'),
 437      'sv-iso-8859-1'     => array('sv|swedish', 'swedish-iso-8859-1', 'sv', 'Svenska'),
 438      'sv-utf-8'          => array('sv|swedish', 'swedish-utf-8', 'sv', 'Svenska'),
 439      'th-tis-620'        => array('th|thai', 'thai-tis-620', 'th', '&#3616;&#3634;&#3625;&#3634;&#3652;&#3607;&#3618;'),
 440      'th-utf-8'          => array('th|thai', 'thai-utf-8', 'th', '&#3616;&#3634;&#3625;&#3634;&#3652;&#3607;&#3618;'),
 441      'tr-iso-8859-9'     => array('tr|turkish', 'turkish-iso-8859-9', 'tr', 'T&uuml;rk&ccedil;e'),
 442      'tr-utf-8'          => array('tr|turkish', 'turkish-utf-8', 'tr', 'T&uuml;rk&ccedil;e'),
 443      'tt-iso-8859-9'     => array('tt|tatarish', 'tatarish-iso-8859-9', 'tt', 'Tatar&ccedil;a'),
 444      'tt-utf-8'          => array('tt|tatarish', 'tatarish-utf-8', 'tt', 'Tatar&ccedil;a'),
 445      'uk-win1251'        => array('uk|ukrainian', 'ukrainian-windows-1251', 'uk', '&#1059;&#1082;&#1088;&#1072;&#1111;&#1085;&#1089;&#1100;&#1082;&#1072;'),
 446      'uk-utf-8'          => array('uk|ukrainian', 'ukrainian-utf-8', 'uk', '&#1059;&#1082;&#1088;&#1072;&#1111;&#1085;&#1089;&#1100;&#1082;&#1072;'),
 447      'zhtw-big5'         => array('zhtw|chinese traditional', 'chinese_traditional-big5', 'zh-TW', '&#20013;&#25991;'),
 448      'zhtw-utf-8'        => array('zhtw|chinese traditional', 'chinese_traditional-utf-8', 'zh-TW', '&#20013;&#25991;'),
 449      'zh-gb2312'         => array('zh|chinese simplified', 'chinese_simplified-gb2312', 'zh', '&#20013;&#25991;'),
 450      'zh-utf-8'          => array('zh|chinese simplified', 'chinese_simplified-utf-8', 'zh', '&#20013;&#25991;'),
 451  );
 452  
 453  function _dbQuery($query='', $_queryMode='ASSOC') {
 454  
 455      if(empty($query)) return false;
 456      
 457      global $db;
 458      $queryResult    = array();
 459      $queryCount        = 0;
 460      
 461      if($result = @mysql_query($query, $db)) {
 462      
 463          switch($_queryMode) {
 464  
 465              // INSERT, UPDATE, DELETE
 466              case 'INSERT':    $queryResult['INSERT_ID']        = mysql_insert_id($db);
 467              case 'DELETE':    
 468              case 'UPDATE':    
 469                              $queryResult['AFFECTED_ROWS']    = mysql_affected_rows($db);
 470                              return $queryResult;
 471                              break;
 472  
 473              // SELECT Queries    
 474              case 'ROW':        $_queryMode = 'mysql_fetch_row';    break;
 475              case 'ARRAY':    $_queryMode = 'mysql_fetch_array';    break;
 476              default:         $_queryMode = 'mysql_fetch_assoc';
 477      
 478          }
 479      
 480          while($row = $_queryMode($result)) {
 481              
 482              $queryResult[$queryCount] = $row;
 483              $queryCount++;
 484  
 485          }
 486          mysql_free_result($result);
 487      
 488          return $queryResult;
 489      
 490      } else {
 491          return false;
 492      }
 493  }
 494  
 495  if(!function_exists('decode_entities')) {
 496  	function decode_entities($string) {
 497          // replace numeric entities
 498          $string = preg_replace('~&#x([0-9a-f]+);~ei', 'chr(hexdec("\\1"))', $string);
 499          $string = preg_replace('~&#([0-9]+);~e', 'chr(\\1)', $string);
 500          // replace literal entities
 501          $trans_tbl = get_html_translation_table(HTML_ENTITIES);
 502          $trans_tbl = array_flip($trans_tbl);
 503          return strtr($string, $trans_tbl);
 504      }
 505  }
 506  
 507  ?>


Generated: Wed Dec 30 05:55:15 2009 Cross-referenced by PHPXref 0.7