diff options
Diffstat (limited to 'system')
368 files changed, 12043 insertions, 62013 deletions
diff --git a/system/.htaccess b/system/.htaccess index 8d2f25636..14249c50b 100644..100755 --- a/system/.htaccess +++ b/system/.htaccess @@ -1 +1 @@ -deny from all +Deny from all
\ No newline at end of file diff --git a/system/application/config/.gitignore b/system/application/config/.gitignore deleted file mode 100644 index cde8069e1..000000000 --- a/system/application/config/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.php diff --git a/system/application/config/example/.gitignore b/system/application/config/example/.gitignore deleted file mode 100644 index f9be8dfe0..000000000 --- a/system/application/config/example/.gitignore +++ /dev/null @@ -1 +0,0 @@ -!* diff --git a/system/application/config/example/autoload.php b/system/application/config/example/autoload.php deleted file mode 100755 index 9cd7a4fce..000000000 --- a/system/application/config/example/autoload.php +++ /dev/null @@ -1,116 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/* -| ------------------------------------------------------------------- -| AUTO-LOADER -| ------------------------------------------------------------------- -| This file specifies which systems should be loaded by default. -| -| In order to keep the framework as light-weight as possible only the -| absolute minimal resources are loaded by default. For example, -| the database is not connected to automatically since no assumption -| is made regarding whether you intend to use it. This file lets -| you globally define which systems you would like loaded with every -| request. -| -| ------------------------------------------------------------------- -| Instructions -| ------------------------------------------------------------------- -| -| These are the things you can load automatically: -| -| 1. Libraries -| 2. Helper files -| 3. Plugins -| 4. Custom config files -| 5. Language files -| 6. Models -| -*/ - -/* -| ------------------------------------------------------------------- -| Auto-load Libraries -| ------------------------------------------------------------------- -| These are the classes located in the system/libraries folder -| or in your system/application/libraries folder. -| -| Prototype: -| -| $autoload['libraries'] = array('database', 'session', 'xmlrpc'); -*/ - -$autoload['libraries'] = array('database'); - - -/* -| ------------------------------------------------------------------- -| Auto-load Helper Files -| ------------------------------------------------------------------- -| Prototype: -| -| $autoload['helper'] = array('url', 'file'); -*/ - -$autoload['helper'] = array('url'); - - -/* -| ------------------------------------------------------------------- -| Auto-load Plugins -| ------------------------------------------------------------------- -| Prototype: -| -| $autoload['plugin'] = array('captcha', 'js_calendar'); -*/ - -$autoload['plugin'] = array(); - - -/* -| ------------------------------------------------------------------- -| Auto-load Config files -| ------------------------------------------------------------------- -| Prototype: -| -| $autoload['config'] = array('config1', 'config2'); -| -| NOTE: This item is intended for use ONLY if you have created custom -| config files. Otherwise, leave it blank. -| -*/ - -$autoload['config'] = array(); - - -/* -| ------------------------------------------------------------------- -| Auto-load Language files -| ------------------------------------------------------------------- -| Prototype: -| -| $autoload['language'] = array('lang1', 'lang2'); -| -| NOTE: Do not include the "_lang" part of your file. For example -| "codeigniter_lang.php" would be referenced as array('codeigniter'); -| -*/ - -$autoload['language'] = array(); - - -/* -| ------------------------------------------------------------------- -| Auto-load Models -| ------------------------------------------------------------------- -| Prototype: -| -| $autoload['model'] = array('model1', 'model2'); -| -*/ - -$autoload['model'] = array(); - - - -/* End of file autoload.php */ -/* Location: ./system/application/config/autoload.php */ diff --git a/system/application/config/example/config.php b/system/application/config/example/config.php deleted file mode 100755 index bab0087b0..000000000 --- a/system/application/config/example/config.php +++ /dev/null @@ -1,353 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); - -/* -|-------------------------------------------------------------------------- -| Base Site URL -|-------------------------------------------------------------------------- -| -| URL to your CodeIgniter root. Typically this will be your base URL, -| WITH a trailing slash: -| -| http://example.com/ -| -*/ -$config['base_url'] = ''; - -/* -|-------------------------------------------------------------------------- -| Index File -|-------------------------------------------------------------------------- -| -| Typically this will be your index.php file, unless you've renamed it to -| something else. If you are using mod_rewrite to remove the page set this -| variable so that it is blank. -| -*/ -$config['index_page'] = "index.php"; - -/* -|-------------------------------------------------------------------------- -| URI PROTOCOL -|-------------------------------------------------------------------------- -| -| This item determines which server global should be used to retrieve the -| URI string. The default setting of "AUTO" works for most servers. -| If your links do not seem to work, try one of the other delicious flavors: -| -| 'AUTO' Default - auto detects -| 'PATH_INFO' Uses the PATH_INFO -| 'QUERY_STRING' Uses the QUERY_STRING -| 'REQUEST_URI' Uses the REQUEST_URI -| 'ORIG_PATH_INFO' Uses the ORIG_PATH_INFO -| -*/ -$config['uri_protocol'] = "AUTO"; - -/* -|-------------------------------------------------------------------------- -| URL suffix -|-------------------------------------------------------------------------- -| -| This option allows you to add a suffix to all URLs generated by CodeIgniter. -| For more information please see the user guide: -| -| http://codeigniter.com/user_guide/general/urls.html -*/ - -$config['url_suffix'] = ""; - -/* -|-------------------------------------------------------------------------- -| Default Language -|-------------------------------------------------------------------------- -| -| This determines which set of language files should be used. Make sure -| there is an available translation if you intend to use something other -| than english. -| -*/ -$config['language'] = "english"; - -/* -|-------------------------------------------------------------------------- -| Default Character Set -|-------------------------------------------------------------------------- -| -| This determines which character set is used by default in various methods -| that require a character set to be provided. -| -*/ -$config['charset'] = "UTF-8"; - -/* -|-------------------------------------------------------------------------- -| Enable/Disable System Hooks -|-------------------------------------------------------------------------- -| -| If you would like to use the "hooks" feature you must enable it by -| setting this variable to TRUE (boolean). See the user guide for details. -| -*/ -$config['enable_hooks'] = FALSE; - - -/* -|-------------------------------------------------------------------------- -| Class Extension Prefix -|-------------------------------------------------------------------------- -| -| This item allows you to set the filename/classname prefix when extending -| native libraries. For more information please see the user guide: -| -| http://codeigniter.com/user_guide/general/core_classes.html -| http://codeigniter.com/user_guide/general/creating_libraries.html -| -*/ -$config['subclass_prefix'] = 'MY_'; - - -/* -|-------------------------------------------------------------------------- -| Allowed URL Characters -|-------------------------------------------------------------------------- -| -| This lets you specify with a regular expression which characters are permitted -| within your URLs. When someone tries to submit a URL with disallowed -| characters they will get a warning message. -| -| As a security measure you are STRONGLY encouraged to restrict URLs to -| as few characters as possible. By default only these are allowed: a-z 0-9~%.:_- -| -| Leave blank to allow all characters -- but only if you are insane. -| -| DO NOT CHANGE THIS UNLESS YOU FULLY UNDERSTAND THE REPERCUSSIONS!! -| -*/ -$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-'; - - -/* -|-------------------------------------------------------------------------- -| Enable Query Strings -|-------------------------------------------------------------------------- -| -| By default CodeIgniter uses search-engine friendly segment based URLs: -| example.com/who/what/where/ -| -| You can optionally enable standard query string based URLs: -| example.com?who=me&what=something&where=here -| -| Options are: TRUE or FALSE (boolean) -| -| The other items let you set the query string "words" that will -| invoke your controllers and its functions: -| example.com/index.php?c=controller&m=function -| -| Please note that some of the helpers won't work as expected when -| this feature is enabled, since CodeIgniter is designed primarily to -| use segment based URLs. -| -*/ -$config['enable_query_strings'] = FALSE; -$config['controller_trigger'] = 'c'; -$config['function_trigger'] = 'm'; -$config['directory_trigger'] = 'd'; // experimental not currently in use - -/* -|-------------------------------------------------------------------------- -| Error Logging Threshold -|-------------------------------------------------------------------------- -| -| If you have enabled error logging, you can set an error threshold to -| determine what gets logged. Threshold options are: -| You can enable error logging by setting a threshold over zero. The -| threshold determines what gets logged. Threshold options are: -| -| 0 = Disables logging, Error logging TURNED OFF -| 1 = Error Messages (including PHP errors) -| 2 = Debug Messages -| 3 = Informational Messages -| 4 = All Messages -| -| For a live site you'll usually only enable Errors (1) to be logged otherwise -| your log files will fill up very fast. -| -*/ -$config['log_threshold'] = 0; - -/* -|-------------------------------------------------------------------------- -| Error Logging Directory Path -|-------------------------------------------------------------------------- -| -| Leave this BLANK unless you would like to set something other than the default -| system/logs/ folder. Use a full server path with trailing slash. -| -*/ -$config['log_path'] = ''; - -/* -|-------------------------------------------------------------------------- -| Date Format for Logs -|-------------------------------------------------------------------------- -| -| Each item that is logged has an associated date. You can use PHP date -| codes to set your own date formatting -| -*/ -$config['log_date_format'] = 'Y-m-d H:i:s'; - -/* -|-------------------------------------------------------------------------- -| Cache Directory Path -|-------------------------------------------------------------------------- -| -| Leave this BLANK unless you would like to set something other than the default -| system/cache/ folder. Use a full server path with trailing slash. -| -*/ -$config['cache_path'] = ''; - -/* -|-------------------------------------------------------------------------- -| Encryption Key -|-------------------------------------------------------------------------- -| -| If you use the Encryption class or the Sessions class with encryption -| enabled you MUST set an encryption key. See the user guide for info. -| -*/ -$config['encryption_key'] = ""; - -/* -|-------------------------------------------------------------------------- -| Session Variables -|-------------------------------------------------------------------------- -| -| 'session_cookie_name' = the name you want for the cookie -| 'encrypt_sess_cookie' = TRUE/FALSE (boolean). Whether to encrypt the cookie -| 'session_expiration' = the number of SECONDS you want the session to last. -| by default sessions last 7200 seconds (two hours). Set to zero for no expiration. -| 'time_to_update' = how many seconds between CI refreshing Session Information -| -*/ -$config['sess_cookie_name'] = 'ci_session'; -$config['sess_expiration'] = 7200; -$config['sess_encrypt_cookie'] = FALSE; -$config['sess_use_database'] = FALSE; -$config['sess_table_name'] = 'ci_sessions'; -$config['sess_match_ip'] = FALSE; -$config['sess_match_useragent'] = TRUE; -$config['sess_time_to_update'] = 300; - -/* -|-------------------------------------------------------------------------- -| Cookie Related Variables -|-------------------------------------------------------------------------- -| -| 'cookie_prefix' = Set a prefix if you need to avoid collisions -| 'cookie_domain' = Set to .your-domain.com for site-wide cookies -| 'cookie_path' = Typically will be a forward slash -| -*/ -$config['cookie_prefix'] = ""; -$config['cookie_domain'] = ""; -$config['cookie_path'] = "/"; - -/* -|-------------------------------------------------------------------------- -| Global XSS Filtering -|-------------------------------------------------------------------------- -| -| Determines whether the XSS filter is always active when GET, POST or -| COOKIE data is encountered -| -*/ -$config['global_xss_filtering'] = FALSE; - -/* -|-------------------------------------------------------------------------- -| Output Compression -|-------------------------------------------------------------------------- -| -| Enables Gzip output compression for faster page loads. When enabled, -| the output class will test whether your server supports Gzip. -| Even if it does, however, not all browsers support compression -| so enable only if you are reasonably sure your visitors can handle it. -| -| VERY IMPORTANT: If you are getting a blank page when compression is enabled it -| means you are prematurely outputting something to your browser. It could -| even be a line of whitespace at the end of one of your scripts. For -| compression to work, nothing can be sent before the output buffer is called -| by the output class. Do not "echo" any values with compression enabled. -| -*/ -$config['compress_output'] = FALSE; - -/* -|-------------------------------------------------------------------------- -| Master Time Reference -|-------------------------------------------------------------------------- -| -| Options are "local" or "gmt". This pref tells the system whether to use -| your server's local time as the master "now" reference, or convert it to -| GMT. See the "date helper" page of the user guide for information -| regarding date handling. -| -*/ -$config['time_reference'] = 'local'; - - -/* -|-------------------------------------------------------------------------- -| Rewrite PHP Short Tags -|-------------------------------------------------------------------------- -| -| If your PHP installation does not have short tag support enabled CI -| can rewrite the tags on-the-fly, enabling you to utilize that syntax -| in your view files. Options are TRUE or FALSE (boolean) -| -*/ -$config['rewrite_short_tags'] = FALSE; - - -/* -|-------------------------------------------------------------------------- -| Reverse Proxy IPs -|-------------------------------------------------------------------------- -| -| If your server is behind a reverse proxy, you must whitelist the proxy IP -| addresses from which CodeIgniter should trust the HTTP_X_FORWARDED_FOR -| header in order to properly identify the visitor's IP address. -| Comma-delimited, e.g. '10.0.1.200,10.0.1.201' -| -*/ -$config['proxy_ips'] = ''; - - -/* -|-------------------------------------------------------------------------- -| Filebin -|------------------------------------------------------------------------- -| -| upload_path should NOT be readable/served by the server, but only by -| the script -| sizes are in bytes -| max_age in seconds -| - */ - -$config['upload_path'] = FCPATH.'data/uploads'; -$config['upload_max_size'] = 256*1024*1024; -$config['upload_max_text_size'] = 2*1024*1024; - -// 0 disables deletion -$config['upload_max_age'] = 60*60*24*5; // 5 days - -// won't be deleted -$config['small_upload_size'] = 1024*10; // 10KB - -$config['passwordsalt'] = ''; // just enter any string you want here - -/* End of file config.php */ -/* Location: ./system/application/config/config.php */ diff --git a/system/application/config/example/constants.php b/system/application/config/example/constants.php deleted file mode 100755 index 19c5ee788..000000000 --- a/system/application/config/example/constants.php +++ /dev/null @@ -1,43 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); - -putenv('HOME='.FCPATH); - -/* -|-------------------------------------------------------------------------- -| File and Directory Modes -|-------------------------------------------------------------------------- -| -| These prefs are used when checking and setting modes when working -| with the file system. The defaults are fine on servers with proper -| security, but you may wish (or even need) to change the values in -| certain environments (Apache running a separate process for each -| user, PHP under CGI with Apache suEXEC, etc.). Octal values should -| always be used to set the mode correctly. -| -*/ -define('FILE_READ_MODE', 0644); -define('FILE_WRITE_MODE', 0666); -define('DIR_READ_MODE', 0755); -define('DIR_WRITE_MODE', 0777); - -/* -|-------------------------------------------------------------------------- -| File Stream Modes -|-------------------------------------------------------------------------- -| -| These modes are used when working with fopen()/popen() -| -*/ - -define('FOPEN_READ', 'rb'); -define('FOPEN_READ_WRITE', 'r+b'); -define('FOPEN_WRITE_CREATE_DESTRUCTIVE', 'wb'); // truncates existing file data, use with care -define('FOPEN_READ_WRITE_CREATE_DESTRUCTIVE', 'w+b'); // truncates existing file data, use with care -define('FOPEN_WRITE_CREATE', 'ab'); -define('FOPEN_READ_WRITE_CREATE', 'a+b'); -define('FOPEN_WRITE_CREATE_STRICT', 'xb'); -define('FOPEN_READ_WRITE_CREATE_STRICT', 'x+b'); - - -/* End of file constants.php */ -/* Location: ./system/application/config/constants.php */ diff --git a/system/application/config/example/database.php b/system/application/config/example/database.php deleted file mode 100755 index 2d6780e6a..000000000 --- a/system/application/config/example/database.php +++ /dev/null @@ -1,55 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/* -| ------------------------------------------------------------------- -| DATABASE CONNECTIVITY SETTINGS -| ------------------------------------------------------------------- -| This file will contain the settings needed to access your database. -| -| For complete instructions please consult the "Database Connection" -| page of the User Guide. -| -| ------------------------------------------------------------------- -| EXPLANATION OF VARIABLES -| ------------------------------------------------------------------- -| -| ['hostname'] The hostname of your database server. -| ['username'] The username used to connect to the database -| ['password'] The password used to connect to the database -| ['database'] The name of the database you want to connect to -| ['dbdriver'] The database type. ie: mysql. Currently supported: - mysql, mysqli, postgre, odbc, mssql, sqlite, oci8 -| ['dbprefix'] You can add an optional prefix, which will be added -| to the table name when using the Active Record class -| ['pconnect'] TRUE/FALSE - Whether to use a persistent connection -| ['db_debug'] TRUE/FALSE - Whether database errors should be displayed. -| ['cache_on'] TRUE/FALSE - Enables/disables query caching -| ['cachedir'] The path to the folder where cache files should be stored -| ['char_set'] The character set used in communicating with the database -| ['dbcollat'] The character collation used in communicating with the database -| -| The $active_group variable lets you choose which connection group to -| make active. By default there is only one group (the "default" group). -| -| The $active_record variables lets you determine whether or not to load -| the active record class -*/ - -$active_group = "default"; -$active_record = TRUE; - -$db['default']['hostname'] = "localhost"; -$db['default']['username'] = ""; -$db['default']['password'] = ""; -$db['default']['database'] = ""; -$db['default']['dbdriver'] = "mysqli"; -$db['default']['dbprefix'] = ""; -$db['default']['pconnect'] = TRUE; -$db['default']['db_debug'] = TRUE; -$db['default']['cache_on'] = FALSE; -$db['default']['cachedir'] = ""; -$db['default']['char_set'] = "utf8"; -$db['default']['dbcollat'] = "utf8_bin"; - - -/* End of file database.php */ -/* Location: ./system/application/config/database.php */ diff --git a/system/application/config/example/doctypes.php b/system/application/config/example/doctypes.php deleted file mode 100755 index 9d510abca..000000000 --- a/system/application/config/example/doctypes.php +++ /dev/null @@ -1,15 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); - -$_doctypes = array( - 'xhtml11' => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">', - 'xhtml1-strict' => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">', - 'xhtml1-trans' => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">', - 'xhtml1-frame' => '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">', - 'html5' => '<!DOCTYPE html>', - 'html4-strict' => '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">', - 'html4-trans' => '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">', - 'html4-frame' => '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">' - ); - -/* End of file doctypes.php */ -/* Location: application/config/doctypes.php */
\ No newline at end of file diff --git a/system/application/config/example/hooks.php b/system/application/config/example/hooks.php deleted file mode 100755 index 5e98a9b46..000000000 --- a/system/application/config/example/hooks.php +++ /dev/null @@ -1,16 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/* -| ------------------------------------------------------------------------- -| Hooks -| ------------------------------------------------------------------------- -| This file lets you define "hooks" to extend CI without hacking the core -| files. Please see the user guide for info: -| -| http://codeigniter.com/user_guide/general/hooks.html -| -*/ - - - -/* End of file hooks.php */ -/* Location: ./system/application/config/hooks.php */
\ No newline at end of file diff --git a/system/application/config/example/memcache.php b/system/application/config/example/memcache.php deleted file mode 100644 index a5bc7e3a8..000000000 --- a/system/application/config/example/memcache.php +++ /dev/null @@ -1,9 +0,0 @@ -<?php - -// this file is a config example for the codeigniter-memcache library -// add this file to the your application's config directory -$config["MEMCACHE_HOST"] = '127.0.0.1'; -$config["MEMCACHE_PORT"] = 11211; - - -?> diff --git a/system/application/config/example/mimes.php b/system/application/config/example/mimes.php deleted file mode 100755 index 438f610ce..000000000 --- a/system/application/config/example/mimes.php +++ /dev/null @@ -1,105 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/* -| ------------------------------------------------------------------- -| MIME TYPES -| ------------------------------------------------------------------- -| This file contains an array of mime types. It is used by the -| Upload class to help identify allowed file types. -| -*/ - -$mimes = array( 'hqx' => 'application/mac-binhex40', - 'cpt' => 'application/mac-compactpro', - 'csv' => array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel'), - 'bin' => 'application/macbinary', - 'dms' => 'application/octet-stream', - 'lha' => 'application/octet-stream', - 'lzh' => 'application/octet-stream', - 'exe' => 'application/octet-stream', - 'class' => 'application/octet-stream', - 'psd' => 'application/x-photoshop', - 'so' => 'application/octet-stream', - 'sea' => 'application/octet-stream', - 'dll' => 'application/octet-stream', - 'oda' => 'application/oda', - 'pdf' => array('application/pdf', 'application/x-download'), - 'ai' => 'application/postscript', - 'eps' => 'application/postscript', - 'ps' => 'application/postscript', - 'smi' => 'application/smil', - 'smil' => 'application/smil', - 'mif' => 'application/vnd.mif', - 'xls' => array('application/excel', 'application/vnd.ms-excel', 'application/msexcel'), - 'ppt' => array('application/powerpoint', 'application/vnd.ms-powerpoint'), - 'wbxml' => 'application/wbxml', - 'wmlc' => 'application/wmlc', - 'dcr' => 'application/x-director', - 'dir' => 'application/x-director', - 'dxr' => 'application/x-director', - 'dvi' => 'application/x-dvi', - 'gtar' => 'application/x-gtar', - 'gz' => 'application/x-gzip', - 'php' => 'application/x-httpd-php', - 'php4' => 'application/x-httpd-php', - 'php3' => 'application/x-httpd-php', - 'phtml' => 'application/x-httpd-php', - 'phps' => 'application/x-httpd-php-source', - 'js' => 'application/x-javascript', - 'swf' => 'application/x-shockwave-flash', - 'sit' => 'application/x-stuffit', - 'tar' => 'application/x-tar', - 'tgz' => 'application/x-tar', - 'xhtml' => 'application/xhtml+xml', - 'xht' => 'application/xhtml+xml', - 'zip' => array('application/x-zip', 'application/zip', 'application/x-zip-compressed'), - 'mid' => 'audio/midi', - 'midi' => 'audio/midi', - 'mpga' => 'audio/mpeg', - 'mp2' => 'audio/mpeg', - 'mp3' => array('audio/mpeg', 'audio/mpg'), - 'aif' => 'audio/x-aiff', - 'aiff' => 'audio/x-aiff', - 'aifc' => 'audio/x-aiff', - 'ram' => 'audio/x-pn-realaudio', - 'rm' => 'audio/x-pn-realaudio', - 'rpm' => 'audio/x-pn-realaudio-plugin', - 'ra' => 'audio/x-realaudio', - 'rv' => 'video/vnd.rn-realvideo', - 'wav' => 'audio/x-wav', - 'bmp' => 'image/bmp', - 'gif' => 'image/gif', - 'jpeg' => array('image/jpeg', 'image/pjpeg'), - 'jpg' => array('image/jpeg', 'image/pjpeg'), - 'jpe' => array('image/jpeg', 'image/pjpeg'), - 'png' => array('image/png', 'image/x-png'), - 'tiff' => 'image/tiff', - 'tif' => 'image/tiff', - 'css' => 'text/css', - 'html' => 'text/html', - 'htm' => 'text/html', - 'shtml' => 'text/html', - 'txt' => 'text/plain', - 'text' => 'text/plain', - 'log' => array('text/plain', 'text/x-log'), - 'rtx' => 'text/richtext', - 'rtf' => 'text/rtf', - 'xml' => 'text/xml', - 'xsl' => 'text/xml', - 'mpeg' => 'video/mpeg', - 'mpg' => 'video/mpeg', - 'mpe' => 'video/mpeg', - 'qt' => 'video/quicktime', - 'mov' => 'video/quicktime', - 'avi' => 'video/x-msvideo', - 'movie' => 'video/x-sgi-movie', - 'doc' => 'application/msword', - 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', - 'word' => array('application/msword', 'application/octet-stream'), - 'xl' => 'application/excel', - 'eml' => 'message/rfc822' - ); - - -/* End of file mimes.php */ -/* Location: ./system/application/config/mimes.php */
\ No newline at end of file diff --git a/system/application/config/example/routes.php b/system/application/config/example/routes.php deleted file mode 100755 index 17e5927be..000000000 --- a/system/application/config/example/routes.php +++ /dev/null @@ -1,49 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/* -| ------------------------------------------------------------------------- -| URI ROUTING -| ------------------------------------------------------------------------- -| This file lets you re-map URI requests to specific controller functions. -| -| Typically there is a one-to-one relationship between a URL string -| and its corresponding controller class/method. The segments in a -| URL normally follow this pattern: -| -| example.com/class/method/id/ -| -| In some instances, however, you may want to remap this relationship -| so that a different class/function is called than the one -| corresponding to the URL. -| -| Please see the user guide for complete details: -| -| http://codeigniter.com/user_guide/general/routing.html -| -| ------------------------------------------------------------------------- -| RESERVED ROUTES -| ------------------------------------------------------------------------- -| -| There are two reserved routes: -| -| $route['default_controller'] = 'welcome'; -| -| This route indicates which controller class should be loaded if the -| URI contains no data. In the above example, the "welcome" class -| would be loaded. -| -| $route['scaffolding_trigger'] = 'scaffolding'; -| -| This route lets you set a "secret" word that will trigger the -| scaffolding feature for added security. Note: Scaffolding must be -| enabled in the controller in which you intend to use it. The reserved -| routes must come before any wildcard or regular expression routes. -| -*/ - -$route['default_controller'] = "file"; -$route['scaffolding_trigger'] = ""; -$route['file/(:any)'] = "file/$1"; -$route['(:any)'] = "file/index/$1"; - -/* End of file routes.php */ -/* Location: ./system/application/config/routes.php */ diff --git a/system/application/config/example/smileys.php b/system/application/config/example/smileys.php deleted file mode 100755 index 7f3aba550..000000000 --- a/system/application/config/example/smileys.php +++ /dev/null @@ -1,66 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/* -| ------------------------------------------------------------------- -| SMILEYS -| ------------------------------------------------------------------- -| This file contains an array of smileys for use with the emoticon helper. -| Individual images can be used to replace multiple simileys. For example: -| :-) and :) use the same image replacement. -| -| Please see user guide for more info: -| http://codeigniter.com/user_guide/helpers/smiley_helper.html -| -*/ - -$smileys = array( - -// smiley image name width height alt - - ':-)' => array('grin.gif', '19', '19', 'grin'), - ':lol:' => array('lol.gif', '19', '19', 'LOL'), - ':cheese:' => array('cheese.gif', '19', '19', 'cheese'), - ':)' => array('smile.gif', '19', '19', 'smile'), - ';-)' => array('wink.gif', '19', '19', 'wink'), - ';)' => array('wink.gif', '19', '19', 'wink'), - ':smirk:' => array('smirk.gif', '19', '19', 'smirk'), - ':roll:' => array('rolleyes.gif', '19', '19', 'rolleyes'), - ':-S' => array('confused.gif', '19', '19', 'confused'), - ':wow:' => array('surprise.gif', '19', '19', 'surprised'), - ':bug:' => array('bigsurprise.gif', '19', '19', 'big surprise'), - ':-P' => array('tongue_laugh.gif', '19', '19', 'tongue laugh'), - '%-P' => array('tongue_rolleye.gif', '19', '19', 'tongue rolleye'), - ';-P' => array('tongue_wink.gif', '19', '19', 'tongue wink'), - ':P' => array('raspberry.gif', '19', '19', 'raspberry'), - ':blank:' => array('blank.gif', '19', '19', 'blank stare'), - ':long:' => array('longface.gif', '19', '19', 'long face'), - ':ohh:' => array('ohh.gif', '19', '19', 'ohh'), - ':grrr:' => array('grrr.gif', '19', '19', 'grrr'), - ':gulp:' => array('gulp.gif', '19', '19', 'gulp'), - '8-/' => array('ohoh.gif', '19', '19', 'oh oh'), - ':down:' => array('downer.gif', '19', '19', 'downer'), - ':red:' => array('embarrassed.gif', '19', '19', 'red face'), - ':sick:' => array('sick.gif', '19', '19', 'sick'), - ':shut:' => array('shuteye.gif', '19', '19', 'shut eye'), - ':-/' => array('hmm.gif', '19', '19', 'hmmm'), - '>:(' => array('mad.gif', '19', '19', 'mad'), - ':mad:' => array('mad.gif', '19', '19', 'mad'), - '>:-(' => array('angry.gif', '19', '19', 'angry'), - ':angry:' => array('angry.gif', '19', '19', 'angry'), - ':zip:' => array('zip.gif', '19', '19', 'zipper'), - ':kiss:' => array('kiss.gif', '19', '19', 'kiss'), - ':ahhh:' => array('shock.gif', '19', '19', 'shock'), - ':coolsmile:' => array('shade_smile.gif', '19', '19', 'cool smile'), - ':coolsmirk:' => array('shade_smirk.gif', '19', '19', 'cool smirk'), - ':coolgrin:' => array('shade_grin.gif', '19', '19', 'cool grin'), - ':coolhmm:' => array('shade_hmm.gif', '19', '19', 'cool hmm'), - ':coolmad:' => array('shade_mad.gif', '19', '19', 'cool mad'), - ':coolcheese:' => array('shade_cheese.gif', '19', '19', 'cool cheese'), - ':vampire:' => array('vampire.gif', '19', '19', 'vampire'), - ':snake:' => array('snake.gif', '19', '19', 'snake'), - ':exclaim:' => array('exclaim.gif', '19', '19', 'excaim'), - ':question:' => array('question.gif', '19', '19', 'question') // no comma after last item - - ); - -/* End of file smileys.php */ -/* Location: ./system/application/config/smileys.php */
\ No newline at end of file diff --git a/system/application/config/example/user_agents.php b/system/application/config/example/user_agents.php deleted file mode 100755 index c01b2767d..000000000 --- a/system/application/config/example/user_agents.php +++ /dev/null @@ -1,175 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/* -| ------------------------------------------------------------------- -| USER AGENT TYPES -| ------------------------------------------------------------------- -| This file contains four arrays of user agent data. It is used by the -| User Agent Class to help identify browser, platform, robot, and -| mobile device data. The array keys are used to identify the device -| and the array values are used to set the actual name of the item. -| -*/ - -$platforms = array ( - 'windows nt 6.0' => 'Windows Longhorn', - 'windows nt 5.2' => 'Windows 2003', - 'windows nt 5.0' => 'Windows 2000', - 'windows nt 5.1' => 'Windows XP', - 'windows nt 4.0' => 'Windows NT 4.0', - 'winnt4.0' => 'Windows NT 4.0', - 'winnt 4.0' => 'Windows NT', - 'winnt' => 'Windows NT', - 'windows 98' => 'Windows 98', - 'win98' => 'Windows 98', - 'windows 95' => 'Windows 95', - 'win95' => 'Windows 95', - 'windows' => 'Unknown Windows OS', - 'os x' => 'Mac OS X', - 'ppc mac' => 'Power PC Mac', - 'freebsd' => 'FreeBSD', - 'ppc' => 'Macintosh', - 'linux' => 'Linux', - 'debian' => 'Debian', - 'sunos' => 'Sun Solaris', - 'beos' => 'BeOS', - 'apachebench' => 'ApacheBench', - 'aix' => 'AIX', - 'irix' => 'Irix', - 'osf' => 'DEC OSF', - 'hp-ux' => 'HP-UX', - 'netbsd' => 'NetBSD', - 'bsdi' => 'BSDi', - 'openbsd' => 'OpenBSD', - 'gnu' => 'GNU/Linux', - 'unix' => 'Unknown Unix OS' - ); - - -// The order of this array should NOT be changed. Many browsers return -// multiple browser types so we want to identify the sub-type first. -$browsers = array( - 'Opera' => 'Opera', - 'MSIE' => 'Internet Explorer', - 'Internet Explorer' => 'Internet Explorer', - 'Shiira' => 'Shiira', - 'Firefox' => 'Firefox', - 'Chimera' => 'Chimera', - 'Phoenix' => 'Phoenix', - 'Firebird' => 'Firebird', - 'Camino' => 'Camino', - 'Netscape' => 'Netscape', - 'OmniWeb' => 'OmniWeb', - 'Mozilla' => 'Mozilla', - 'Safari' => 'Safari', - 'Konqueror' => 'Konqueror', - 'icab' => 'iCab', - 'Lynx' => 'Lynx', - 'Links' => 'Links', - 'hotjava' => 'HotJava', - 'amaya' => 'Amaya', - 'IBrowse' => 'IBrowse' - ); - -$mobiles = array( - // legacy array, old values commented out - 'mobileexplorer' => 'Mobile Explorer', -// 'openwave' => 'Open Wave', -// 'opera mini' => 'Opera Mini', -// 'operamini' => 'Opera Mini', -// 'elaine' => 'Palm', - 'palmsource' => 'Palm', -// 'digital paths' => 'Palm', -// 'avantgo' => 'Avantgo', -// 'xiino' => 'Xiino', - 'palmscape' => 'Palmscape', -// 'nokia' => 'Nokia', -// 'ericsson' => 'Ericsson', -// 'blackberry' => 'BlackBerry', -// 'motorola' => 'Motorola' - - // Phones and Manufacturers - 'motorola' => "Motorola", - 'nokia' => "Nokia", - 'palm' => "Palm", - 'iphone' => "Apple iPhone", - 'ipod' => "Apple iPod Touch", - 'sony' => "Sony Ericsson", - 'ericsson' => "Sony Ericsson", - 'blackberry' => "BlackBerry", - 'cocoon' => "O2 Cocoon", - 'blazer' => "Treo", - 'lg' => "LG", - 'amoi' => "Amoi", - 'xda' => "XDA", - 'mda' => "MDA", - 'vario' => "Vario", - 'htc' => "HTC", - 'samsung' => "Samsung", - 'sharp' => "Sharp", - 'sie-' => "Siemens", - 'alcatel' => "Alcatel", - 'benq' => "BenQ", - 'ipaq' => "HP iPaq", - 'mot-' => "Motorola", - 'playstation portable' => "PlayStation Portable", - 'hiptop' => "Danger Hiptop", - 'nec-' => "NEC", - 'panasonic' => "Panasonic", - 'philips' => "Philips", - 'sagem' => "Sagem", - 'sanyo' => "Sanyo", - 'spv' => "SPV", - 'zte' => "ZTE", - 'sendo' => "Sendo", - - // Operating Systems - 'symbian' => "Symbian", - 'SymbianOS' => "SymbianOS", - 'elaine' => "Palm", - 'palm' => "Palm", - 'series60' => "Symbian S60", - 'windows ce' => "Windows CE", - - // Browsers - 'obigo' => "Obigo", - 'netfront' => "Netfront Browser", - 'openwave' => "Openwave Browser", - 'mobilexplorer' => "Mobile Explorer", - 'operamini' => "Opera Mini", - 'opera mini' => "Opera Mini", - - // Other - 'digital paths' => "Digital Paths", - 'avantgo' => "AvantGo", - 'xiino' => "Xiino", - 'novarra' => "Novarra Transcoder", - 'vodafone' => "Vodafone", - 'docomo' => "NTT DoCoMo", - 'o2' => "O2", - - // Fallback - 'mobile' => "Generic Mobile", - 'wireless' => "Generic Mobile", - 'j2me' => "Generic Mobile", - 'midp' => "Generic Mobile", - 'cldc' => "Generic Mobile", - 'up.link' => "Generic Mobile", - 'up.browser' => "Generic Mobile", - 'smartphone' => "Generic Mobile", - 'cellphone' => "Generic Mobile" - ); - -// There are hundreds of bots but these are the most common. -$robots = array( - 'googlebot' => 'Googlebot', - 'msnbot' => 'MSNBot', - 'slurp' => 'Inktomi Slurp', - 'yahoo' => 'Yahoo', - 'askjeeves' => 'AskJeeves', - 'fastcrawler' => 'FastCrawler', - 'infoseek' => 'InfoSeek Robot 1.0', - 'lycos' => 'Lycos' - ); - -/* End of file user_agents.php */ -/* Location: ./system/application/config/user_agents.php */
\ No newline at end of file diff --git a/system/application/controllers/file.php b/system/application/controllers/file.php deleted file mode 100644 index a11255986..000000000 --- a/system/application/controllers/file.php +++ /dev/null @@ -1,232 +0,0 @@ -<?php -/* - * Copyright 2009-2010 Florian "Bluewind" Pritz <bluewind@server-speed.net> - * - * Licensed under GPLv3 - * (see COPYING for full license text) - * - */ - -class File extends Controller { - - function __construct() - { - parent::Controller(); - $this->load->helper(array('form', 'filebin')); - $this->load->model('file_mod'); - $this->var->cli_client = false; - $this->file_mod->var->cli_client =& $this->var->cli_client; - $this->var->latest_client = trim(file_get_contents(FCPATH.'data/client/latest')); - - // official client uses "fb-client/$version" as useragent - if (strpos($_SERVER['HTTP_USER_AGENT'], 'fb-client') !== false) { - $client_version = substr($_SERVER['HTTP_USER_AGENT'], 10); - if ($this->var->latest_client != $client_version) { - echo "Your are using an old client version. Latest is ".$this->var->latest_client."\n"; - } - $this->var->cli_client = "fb-client"; - } elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'libcurl') !== false) { - $this->var->cli_client = "curl"; - } - } - - function index() - { - // Try to guess what the user would like to do. - // File uploads should be checked first because they are usually big and - // take quite some time to upload. - $id = $this->uri->segment(1); - if(isset($_FILES['file'])) { - $this->do_upload(); - } elseif ($this->input->post('content')) { - $this->do_paste(); - } elseif ($id != "file" && $this->file_mod->id_exists($id)) { - $this->file_mod->download(); - } elseif ($this->var->cli_client) { - die("No upload or unknown ID requested.\n"); - } elseif ($id && $id != "file") { - $this->file_mod->non_existent(); - } else { - $this->upload_form(); - } - } - - function client() - { - $data['title'] = 'Client'; - $data['client_link'] = base_url().'data/client/fb-'.$this->var->latest_client.'.tar.gz'; - $data['client_link_dir'] = base_url().'data/client/'; - $data['client_link_deb'] = base_url().'data/client/deb/'; - $data['client_link_slackware'] = base_url().'data/client/slackware/'; - - $this->load->view('file/header', $data); - $this->load->view('file/client', $data); - $this->load->view('file/footer', $data); - } - - function upload_form() - { - $data = array(); - $data['title'] = 'Upload'; - $data['small_upload_size'] = $this->config->item('small_upload_size'); - $data['max_upload_size'] = $this->config->item('upload_max_size'); - - $this->load->view('file/header', $data); - $this->load->view('file/upload_form', $data); - $this->load->view('file/footer', $data); - } - - // Allow CLI clients to query the server for the maxium filesize so they can - // stop the upload before wasting time and bandwith - function get_max_size() - { - echo $this->config->item('upload_max_size'); - } - - // Allow users to delete IDs if their password matches the one used when uploading - function delete() - { - $data = array(); - $id = $this->uri->segment(3); - $password = $this->file_mod->get_password(); - $data["title"] = "Delete"; - $data["id"] = $id; - if ($password != "NULL") { - if ($this->file_mod->delete_id($id)) { - if ($this->var->cli_client) { - echo $id." deleted\n"; - die(); - } else { - $this->load->view('file/header', $data); - $this->load->view('file/deleted', $data); - $this->load->view('file/footer', $data); - return; - } - } else { - if ($this->var->cli_client) { - echo 'Couldn\'t delete '.$id."\n"; - die(); - } else { - $data["msg"] = "Deletion failed. Is the password correct?"; - } - } - } - if ($this->var->cli_client) { - die(); - } else { - $this->load->view('file/header', $data); - $this->load->view('file/delete_form', $data); - $this->load->view('file/footer', $data); - } - } - - // Take the content from post instead of a file - // support textareas on the upload form - // XXX: This requires users of suhosin to adjust maxium post and request size - // TODO: merge with do_upload() - // XXX: this is too vulnerable to bots - function do_paste() - { - // FIXME: disable until bot problem is really fixed - return $this->upload_form(); - - $data = array(); - $content = $this->input->post('content')."\n"; - $extension = $this->input->post('extension'); - // Try to filter spambots - if ($this->input->post("email") != "") return; - - // prevent empty pastes from the upload form - if($content === "\n") { - $this->upload_form(); - return; - } - // TODO: Display nice error for cli clients - if(strlen($content) > $this->config->item('upload_max_size')) { - $this->load->view('file/header', $data); - $this->load->view('file/too_big'); - $this->load->view('file/footer'); - return; - } - - $id = $this->file_mod->new_id(); - $hash = md5($content); - $folder = $this->file_mod->folder($hash); - file_exists($folder) || mkdir ($folder); - $file = $this->file_mod->file($hash); - - file_put_contents($file, $content); - chmod($file, 0600); - $this->file_mod->add_file($hash, $id, 'stdin'); - $this->file_mod->show_url($id, $extension); - } - - // Handles uploaded files - // TODO: merge with do_paste() - function do_upload() - { - $data = array(); - $extension = $this->input->post('extension'); - // TODO: Display nice error for cli clients - if(!isset($_FILES['file'])) { - $this->load->view('file/header', $data); - $this->load->view('file/upload_error'); - $this->load->view('file/footer'); - return; - } - if ($_FILES['file']['error'] !== 0) { - $this->upload_form(); - return; - } - $filesize = filesize($_FILES['file']['tmp_name']); - // TODO: Display nice error for cli clients - if ($filesize > $this->config->item('upload_max_size')) { - $this->load->view('file/header', $data); - $this->load->view('file/too_big'); - $this->load->view('file/footer'); - return; - } - - $id = $this->file_mod->new_id(); - $hash = md5_file($_FILES['file']['tmp_name']); - $filename = $_FILES['file']['name']; - $folder = $this->file_mod->folder($hash); - file_exists($folder) || mkdir ($folder); - $file = $this->file_mod->file($hash); - - move_uploaded_file($_FILES['file']['tmp_name'], $file); - chmod($file, 0600); - $this->file_mod->add_file($hash, $id, $filename); - $this->file_mod->show_url($id, $extension); - } - - // Removes old files - function cron() - { - if ($this->config->item('upload_max_age') == 0) return; - - $oldest_time = (time()-$this->config->item('upload_max_age')); - $small_upload_size = $this->config->item('small_upload_size'); - $query = $this->db->query('SELECT hash, id FROM files WHERE date < ?', - array($oldest_time)); - - foreach($query->result_array() as $row) { - $file = $this->file_mod->file($row['hash']); - if (!file_exists($file)) { - $this->db->query('DELETE FROM files WHERE id = ? LIMIT 1', array($row['id'])); - continue; - } - - if (filesize($file) > $small_upload_size) { - if (filemtime($file) < $oldest_time) { - unlink($file); - $this->db->query('DELETE FROM files WHERE hash = ?', array($row['hash'])); - } else { - $this->db->query('DELETE FROM files WHERE id = ? LIMIT 1', array($row['id'])); - } - } - } - } -} - -# vim: set noet: diff --git a/system/application/controllers/index.html b/system/application/controllers/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/controllers/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/application/errors/error_404.php b/system/application/errors/error_404.php deleted file mode 100644 index 1c513a205..000000000 --- a/system/application/errors/error_404.php +++ /dev/null @@ -1,34 +0,0 @@ -<html> -<head> -<title>404 Page Not Found</title> -<style type="text/css"> - -body { -background-color: #fff; -margin: 40px; -font-family: Lucida Grande, Verdana, Sans-serif; -font-size: 12px; -color: #000; -} - -#content { -border: #999 1px solid; -background-color: #fff; -padding: 20px 20px 12px 20px; -} - -h1 { -font-weight: normal; -font-size: 14px; -color: #990000; -margin: 0 0 4px 0; -} -</style> -</head> -<body> - <div id="content"> - <h1><?php echo $heading; ?></h1> - <?php echo $message; ?> - </div> -</body> -</html>
\ No newline at end of file diff --git a/system/application/errors/error_db.php b/system/application/errors/error_db.php deleted file mode 100644 index 1ce52dfc9..000000000 --- a/system/application/errors/error_db.php +++ /dev/null @@ -1,34 +0,0 @@ -<html> -<head> -<title>Database Error</title> -<style type="text/css"> - -body { -background-color: #fff; -margin: 40px; -font-family: Lucida Grande, Verdana, Sans-serif; -font-size: 12px; -color: #000; -} - -#content { -border: #999 1px solid; -background-color: #fff; -padding: 20px 20px 12px 20px; -} - -h1 { -font-weight: normal; -font-size: 14px; -color: #990000; -margin: 0 0 4px 0; -} -</style> -</head> -<body> - <div id="content"> - <h1><?php echo $heading; ?></h1> - <?php echo $message; ?> - </div> -</body> -</html>
\ No newline at end of file diff --git a/system/application/errors/error_general.php b/system/application/errors/error_general.php deleted file mode 100644 index d8610702b..000000000 --- a/system/application/errors/error_general.php +++ /dev/null @@ -1,34 +0,0 @@ -<html> -<head> -<title>Error</title> -<style type="text/css"> - -body { -background-color: #fff; -margin: 40px; -font-family: Lucida Grande, Verdana, Sans-serif; -font-size: 12px; -color: #000; -} - -#content { -border: #999 1px solid; -background-color: #fff; -padding: 20px 20px 12px 20px; -} - -h1 { -font-weight: normal; -font-size: 14px; -color: #990000; -margin: 0 0 4px 0; -} -</style> -</head> -<body> - <div id="content"> - <h1><?php echo $heading; ?></h1> - <?php echo $message; ?> - </div> -</body> -</html>
\ No newline at end of file diff --git a/system/application/errors/error_php.php b/system/application/errors/error_php.php deleted file mode 100644 index f085c2037..000000000 --- a/system/application/errors/error_php.php +++ /dev/null @@ -1,10 +0,0 @@ -<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;"> - -<h4>A PHP Error was encountered</h4> - -<p>Severity: <?php echo $severity; ?></p> -<p>Message: <?php echo $message; ?></p> -<p>Filename: <?php echo $filepath; ?></p> -<p>Line Number: <?php echo $line; ?></p> - -</div>
\ No newline at end of file diff --git a/system/application/errors/index.html b/system/application/errors/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/errors/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/application/helpers/filebin_helper.php b/system/application/helpers/filebin_helper.php deleted file mode 100644 index 3d6c30b76..000000000 --- a/system/application/helpers/filebin_helper.php +++ /dev/null @@ -1,10 +0,0 @@ -<?php - -// Source: http://ibnuyahya.com/format-bytes-to-kb-mb-gb/ -function format_bytes($size, $precision = 2){ - $base = log($size) / log(1024); - $suffixes = array('B', 'kB', 'MB', 'GB', 'TB' , 'PB' , 'EB'); - return round(pow(1024, $base - floor($base)), $precision) . $suffixes[floor($base)]; -} - -# vim: set noet: diff --git a/system/application/helpers/index.html b/system/application/helpers/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/helpers/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/application/hooks/index.html b/system/application/hooks/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/hooks/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/application/index.html b/system/application/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/application/language/english/index.html b/system/application/language/english/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/language/english/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/application/libraries/MemcacheLibrary.php b/system/application/libraries/MemcacheLibrary.php deleted file mode 100644 index dcc08b942..000000000 --- a/system/application/libraries/MemcacheLibrary.php +++ /dev/null @@ -1,179 +0,0 @@ -<?php - -/** -* codeigniter-memcache v0.1 -* -* codeigniter-memcache is a codeigniter library to work with memcached easily. -* -* -* @file MemcacheLibrary.php -* @copyright 2010 egnity - egnity.com -* @author Emre Yilmaz <mail@emreyilmaz.me> -* @license GNU General Public License -* @version 0.1 -*/ - - -class MemcacheLibrary { - - /** - * variable that holds memcached backend instance - * - * @var object - * @access public - */ - public $memcachedInstance; - - /** - * variable that holds servers for the memcache - * - * @var array - * @access public - */ - public $servers = array(); - - - /** - * main CodeIgniter instance - * - * @var object - * @access public - */ - public $CI; - - /** - * constructor function for the library - */ - public function __construct() { - - /* initialize memcached instance */ - if(class_exists("Memcache")) { - $this->memcachedInstance = new Memcache(); - } else { - throw new Exception( - "Memcached client doesn't exists in your PHP configuration" - ); - } - - /* load super CI instance */ - $this->CI =& get_instance(); - - /* load default server info */ - $this->CI->config->load("memcache"); - - /* connect to default server */ - if($this->CI->config->item("MEMCACHE_HOST") && $this->CI->config->item("MEMCACHE_PORT") !== false) { - $this->addServer($this->CI->config->item("MEMCACHE_HOST"), $this->CI->config->item("MEMCACHE_PORT")); - } - - } - - /** - * adder function for the memcache servers - * - * @access public - * @return void - */ - public function addServer($server, $port) { - $this->servers[] = array( - "server" => $server, - "port" => $port, - ); - - $this->memcachedInstance->addServer($server, $port); - } - - /** - * gets related key from the memcache - * - * @access public - */ - public function get($key) { - $this->logDebugMessage(sprintf("%s key requested from memcache", $key)); - return $this->memcachedInstance->get($key); - } - - /** - * sets related key to the memcache - * - * @access public - */ - public function set($key, $value, $expire = null) { - $this->logDebugMessage( - sprintf("%s key set to memcache. (expire: %s)",$key, $expire) - ); - return $this->memcachedInstance->set($key, $value, null, $expire); - } - - /** - * deletes related key from the memcache - * - * @access public - */ - public function delete($key) { - $this->logDebugMessage(sprintf("%s key deleted from memcache.", $key)); - return $this->memcachedInstance->delete($key); - } - - /** - * increments related key from the memcache - * - * @access public - */ - public function increment($key, $offset = 1) { - $this->logDebugMessage(sprintf("%s key incremented %s times", $key, $offset)); - return $this->memcachedInstance->increment($key, $offset); - } - - /** - * decrements related key from the memcache - * - * @access public - */ - public function decrement($key, $offset = 1) { - $this->logDebugMessage(sprintf("%s key decremented %s times", $key, $offset)); - return $this->memcachedInstance->decrement($key, $offset); - } - - /** - * gets running memcached servers. - * - * @access public - * @return array - */ - public function getRunningServers() { - return $this->servers; - } - - /** - * array of server statistics, one entry per server. - * - * @access public - * @return array - */ - public function getStatistics() { - return $this->memcachedInstance->getStats(); - } - - /** - * Invalidates all items from the memcache. - * - * @access public - * @return boolean - */ - public function flush($delay = 0) { - $this->logDebugMessage(sprintf("memcache flushed! (delay: %s)", $delay)); - return $this->memcachedInstance->flush($delay); - } - - /** - * logs the memcache actions to the codeigniter's main logging system. - * - * @access private - */ - private function logDebugMessage($message) { - log_message("debug", $message); - } -} - -# vim: set noet: diff --git a/system/application/libraries/contrib/aliased.php b/system/application/libraries/contrib/aliased.php deleted file mode 100644 index 32bec9239..000000000 --- a/system/application/libraries/contrib/aliased.php +++ /dev/null @@ -1,124 +0,0 @@ -<?php - -/** - * Another GeSHi example script - * - * Configure your Apache server with 'AcceptPathInfo true' and something like - * 'Alias /viewmysource /var/www/geshi/contrib/aliased.php'. Don't forget - * to protect this alias as necessary. - * - * Usage - visit /viewmysource/file.name.ext to see that file with syntax - * highlighting, where "viewmysource" is the name of the alias you set up. - * You can use this without an alias too, just by visiting - * aliased.php/file.name.ext. - * - * @author Ross Golder <ross@golder.org> - * @version $Id: aliased.php 785 2006-07-19 10:09:45Z oracleshinoda $ - */ - -// Your config here -define("SOURCE_ROOT", "/var/www/your/source/root/"); - -// Assume you've put geshi in the include_path already -require_once("geshi.php"); - -// Get path info -$path = SOURCE_ROOT.$_SERVER['PATH_INFO']; - -// Check for dickheads trying to use '../' to get to sensitive areas -$base_path_len = strlen(SOURCE_ROOT); -$real_path = realpath($path); -if(strncmp($real_path, SOURCE_ROOT, $base_path_len)) { - exit("Stop that."); -} - -// Check file exists -if(!file_exists($path)) { - exit("File not found ($path)."); -} - -// Gather contents -$contents = file_get_contents($path); - -// Prepare GeSHi instance -$geshi =& new GeSHi($contents, "PHP"); -$geshi->set_header_type(GESHI_HEADER_PRE); -$geshi->enable_classes(); -$geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 10); -$geshi->set_overall_style('color: #000066; border: 1px solid #d0d0d0; background-color: #f0f0f0;', true); -$geshi->set_line_style('font: normal normal 95% \'Courier New\', Courier, monospace; color: #003030;', 'font-weight: bold; color: #006060;', true); -$geshi->set_code_style('color: #000020;', 'color: #000020;'); -$geshi->set_link_styles(GESHI_LINK, 'color: #000060;'); -$geshi->set_link_styles(GESHI_HOVER, 'background-color: #f0f000;'); -$geshi->set_header_content('Source code viewer'); -$geshi->set_header_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-bottom: 1px solid #d0d0d0; padding: 2px;'); -$geshi->set_footer_content('Parsed in <TIME> seconds, using GeSHi <VERSION>'); -$geshi->set_footer_content_style('font-family: Verdana, Arial, sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-top: 1px solid #d0d0d0; padding: 2px;'); - -?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <title>Source code viewer - <?php echo $path; ?></title> - <style type="text/css"> - <!-- - <?php - // Output the stylesheet. Note it doesn't output the <style> tag - echo $geshi->get_stylesheet(); - ?> - html { - background-color: #f0f0f0; - } - body { - font-family: Verdana, Arial, sans-serif; - margin: 10px; - border: 2px solid #e0e0e0; - background-color: #fcfcfc; - padding: 5px; - } - h2 { - margin: .1em 0 .2em .5em; - border-bottom: 1px solid #b0b0b0; - color: #b0b0b0; - font-weight: normal; - font-size: 150%; - } - h3 { - margin: .1em 0 .2em .5em; - color: #b0b0b0; - font-weight: normal; - font-size: 120%; - } - #footer { - text-align: center; - font-size: 80%; - color: #a9a9a9; - } - #footer a { - color: #9999ff; - } - textarea { - border: 1px solid #b0b0b0; - font-size: 90%; - color: #333; - margin-left: 20px; - } - select, input { - margin-left: 20px; - } - p { - font-size: 90%; - margin-left: .5em; - } - --> - </style> -</head> -<body> -<?php -// The fun part :) -echo $geshi->parse_code(); -?> -<hr/> -</body> -</html> diff --git a/system/application/libraries/contrib/cssgen.php b/system/application/libraries/contrib/cssgen.php deleted file mode 100644 index f746b00c3..000000000 --- a/system/application/libraries/contrib/cssgen.php +++ /dev/null @@ -1,456 +0,0 @@ -<?php -/************************************************************************************* - * cssgen.php - * ---------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie - * Release Version: 1.0.8.6 - * Date Started: 2004/05/20 - * - * Application to generate custom CSS files for GeSHi (based on an idea by Andreas - * Gohr) - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -set_magic_quotes_runtime(0); -// -// Functions -// - -function make_header ( $title ) -{ - echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <title>GeSHi CSS Generator :: ' . $title . ' </title> - <style type="text/css" media="screen"> - <!-- - html { - font-family: Verdana, Arial, sans-serif; - font-size: 80%; - background-color: #d0d0d0; - } - body { - margin: 10px; - padding: 5px; - border: 1px solid #f0f0f0; - background-color: #f6f6f6; - } - h1 { - border-bottom: 2px solid #e0e0e0; - font-weight: normal; - font-size: 150%; - color: #c0c0c0; - } - input, textarea { - border: 1px solid #d0d0d0; - } - th { - text-align: right; - font-weight: normal; - } - pre { - font-size: 110%; - color: #202020; - } - #footer { - color: #b0b0b0; - text-align: center; - font-size: 90%; - margin: 0 auto; - border-top: 1px solid #e0e0e0; - } - #footer a { - color: #c0c0c0; - } - --> - </style> - <script type="text/javascript"> - function select (state) - { - var cboxes = document.getElementsByTagName(\'input\'); - for (var i = 0; i < cboxes.length; i++) { - if (cboxes[i].type == "checkbox") { - if (state == "true") { - cboxes[i].checked = true; - } else if (state == "false") { - cboxes[i].checked = false; - } else if (state == "invert") { - cboxes[i].checked = !cboxes[i].checked; - } - } - } - } - </script> -</head> -<body> -<h1>' . $title . '</h1> -'; -} - -function make_footer () -{ - echo '<div id="footer"><a href="http://qbnz.com/highlighter/">GeSHi</a> © Nigel McNie, 2004, released under the GPL</div></body> -</html>'; -} - - -function get_var ( $var_name ) -{ - if ( isset($_GET[$var_name]) ) - { - return str_replace("\'", "'", $_GET[$var_name]); - } - elseif ( isset($_POST[$var_name]) ) - { - return str_replace("\'", "'", $_POST[$var_name]); - } - return null; -} - - - -// -// Unset everything -// -foreach ( $_REQUEST as $var ) -{ - unset($$var); -} -foreach ( array( - '_POST' => 'HTTP_POST_VARS', - '_GET' => 'HTTP_GET_VARS', - '_COOKIE' => 'HTTP_COOKIE_VARS', - '_SERVER' => 'HTTP_SERVER_VARS', - '_ENV' => 'HTTP_ENV_VARS', - '_FILES' => 'HTTP_POST_FILES') as $array => $other ) -{ - if ( !isset($$array) ) - { - $$array = $$other; - } - unset($$other); -} - - -// Get what step we're up to -$step = get_var('step'); - -if ( !$step || $step == 1 ) -{ - $errors = 0; - make_header('Step 1'); - echo "Welcome to the GeSHi CSS generator.<br /><pre>Searching for GeSHi... "; - - // Find GeSHi - $geshi_path = get_var('geshi-path'); - $geshi_lang_path = get_var('geshi-lang-path'); - - if ( !$geshi_path ) - { - $geshi_path = '../geshi.php'; - } - if ( !$geshi_lang_path ) - { - $geshi_lang_path = '../geshi/'; - } - - - if ( is_file($geshi_path) && is_readable($geshi_path) ) - { - // Get file contents and see if GeSHi is in here - $file = @file($geshi_path); - $contents = ''; - foreach ( $file as $line ) - { - $contents .= $line; - } - if ( strpos($contents, '<?php -/** - * GeSHi - Generic Syntax Highlighter') !== false ) - { - echo '<span style="color: green;">Found at ' . realpath($geshi_path) . '</span>'; - } - else - { - ++$errors; - $no_geshi_dot_php_error = true; - echo '<span style="color: red;">Not found</span>'; - } - } - else - { - ++$errors; - $no_geshi_dot_php_error = true; - echo '<span style="color: red;">Not found</span>'; - } - - // Find language files - echo "\nSearching for language files... "; - if ( is_readable($geshi_lang_path . 'css-gen.cfg') ) - { - - echo '<span style="color: green;">Found at ' . realpath($geshi_lang_path) . '</span>'; - } - else - { - ++$errors; - $no_lang_dir_error = true; - echo '<span style="color: red;">Not found</span>'; - } - echo "</pre>\n"; - - if ( $errors > 0 ) - { - // We're gonna have to ask for the paths... - echo 'Unfortunately CSSGen could not detect the following paths. Please input them and press "submit" to try again.'; - echo " -<form action=\"cssgen.php\" method=\"post\">"; - if ( $no_geshi_dot_php_error ) - { - echo " -<br />geshi.php: <input type=\"text\" name=\"geshi-path\" value=\"" . realpath('../geshi.php') . "\" size=\"50\" />"; - } - else - { - echo '<input type="hidden" name="geshi-path" value="' . htmlspecialchars($geshi_path) . '" />'; - } - if ( $no_lang_dir_error ) - { - echo " -<br />language files directory: <input type=\"text\" name=\"geshi-lang-path\" value=\"" . realpath('../geshi/') . "/\" size=\"50\" /> (should have a trailing slash)"; - } - else - { - echo '<input type="hidden" name="geshi-lang-path" value="' . $geshi_lang_path . '" />'; - } - - echo " -<br /><input type=\"submit\" value=\"Search\" /></form>"; - } - else - { - // no errors - echo continue form - echo 'Everything seems to be detected successfully. Use the button to continue. -<br /><br /><form action="cssgen.php?step=2" method="post"> -<input type="hidden" name="geshi-path" value="' . realpath($geshi_path) . '" /><input type="hidden" name="geshi-lang-path" value="' . realpath($geshi_lang_path) . '" /> -<input type="submit" value="Step 2" />'; - } - - make_footer(); -} -// Step 2 -elseif ( $step == 2 ) -{ - make_header('Step 2'); - - $geshi_path = get_var('geshi-path'); - $geshi_lang_path = get_var('geshi-lang-path'); - - $dh = opendir($geshi_lang_path); - $lang_files = array(); - $file = readdir($dh); - while ( $file !== false ) - { - if ( $file == '.' || $file == '..' || $file == 'CVS' || $file == 'css-gen.cfg' ) - { - $file = readdir($dh); - continue; - } - $lang_files[] = $file; - $file = readdir($dh); - } - closedir($dh); - sort($lang_files); - - // Now installed languages are in $lang_files - - echo '<form action="cssgen.php?step=3" method="post" id="step2"> -What languages are you wanting to make this stylesheet for?<br /><br /> -Detected languages:<br />'; - - foreach ( $lang_files as $lang ) - { - $lang = substr($lang, 0, strpos($lang, '.')); - if ($lang) { - echo "<input type=\"checkbox\" name=\"langs[$lang]\" checked=\"checked\" /> $lang<br />\n"; - } - } - - echo "Select: <a href=\"javascript:select('true')\">All</a>, <a href=\"javascript:select('false')\">None</a>, <a href=\"javascript:select('invert')\">Invert</a><br />\n"; - - echo 'If you\'d like any other languages not detected here to be supported, please enter -them here, one per line:<br /><textarea rows="4" cols="20" name="extra-langs"></textarea><br /> -'; - - echo '<br />Styles: -<table> - <tr><th>Style for the overall code block:</th><td><input type="text" name="overall" value="border: 1px dotted #a0a0a0; font-family: \'Courier New\', Courier, monospace; background-color: #f0f0f0; color: #0000bb;" /></td></tr> - <tr><th>Default Styles</th><td><input type="text" name="default-styles" value="font-weight:normal;background:transparent;color:#000; padding-left: 5px;" /></td></tr> - <tr><th>Keywords I (if, do, while etc)</th><td><input type="text" name="keywords-1" value="color: #a1a100;" /></td></tr> - <tr><th>Keywords II (null, true, false etc)</th><td><input type="text" name="keywords-2" value="color: #000; font-weight: bold;" /></td></tr> - <tr><th>Inbuilt Functions (echo, print etc)</th><td><input type="text" name="keywords-3" value="color: #000066;" /></td></tr> - <tr><th>Data Types (int, boolean etc)</th><td><input type="text" name="keywords-4" value="color: #f63333;" /></td></tr> - - <tr><th>Comments (//, <!-- --> etc)</th><td><input type="text" name="comments" value="color: #808080;" /></td></tr> - <tr><th>Escaped Characters (\n, \t etc)</th><td><input type="text" name="escaped-chars" value="color: #000033; font-weight: bold;" /></td></tr> - <tr><th>Brackets ( ([{}]) etc)</th><td><input type="text" name="brackets" value="color: #66cc66;" /></td></tr> - <tr><th>Strings ("foo" etc)</th><td><input type="text" name="strings" value="color: #ff0000;" /></td></tr> - <tr><th>Numbers (1, -54, 2.5 etc)</th><td><input type="text" name="numbers" value="color: #ff33ff;" /></td></tr> - <tr><th>Methods (Foo.bar() etc)</th><td><input type="text" name="methods" value="color: #006600;" /></td></tr> -</table>'; - - echo '<input type="hidden" name="geshi-path" value="' . realpath($geshi_path) . '" /><input type="hidden" name="geshi-lang-path" value="' . realpath($geshi_lang_path) . '" /> -<input type="submit" value="Step 3" /></form>'; - - make_footer(); -} -// Step 3 -elseif ( $step == 3 ) -{ - make_header('Step 3'); - echo '<p>Here is your completed stylesheet. Note that it may not be perfect - no regular expression styles are included for one thing, -you\'ll have to add those yourself (php and xml are just two languages that use them), and line numbers are not included, however -it includes most of the basic information.</p>'; - - // Make the stylesheet - $part_selector_1 = ''; - $part_selector_2 = ''; - $part_selector_3 = ''; - - $langs = get_var('langs'); - $extra_langs = trim(get_var('extra-langs')); - if ( $extra_langs != '' ) - { - $l = explode("\r\n", $extra_langs); - foreach ( $l as $lng ) - { - $langs[$lng] = true; - } - } - - - foreach ( $langs as $lang => $dummy ) - { - $part_selector_1 .= ".$lang {PART}, "; - $part_selector_2 .= ".$lang {PART1}, .$lang {PART2}, "; - $part_selector_3 .= ".$lang {PART1}, .$lang {PART2}, .$lang {PART3}, "; - } - $part_selector_1 = substr($part_selector_1, 0, -2); - $part_selector_2 = substr($part_selector_2, 0, -2); - $part_selector_3 = substr($part_selector_3, 0, -2); - - - $default_styles = get_var('default-styles'); - $ol_selector = str_replace('{PART}', 'ol', $part_selector_1); - $overall_styles = get_var('overall'); - $overall_selector = str_replace('{PART}', '', $part_selector_1); - - $stylesheet = "/* GeSHi (c) Nigel McNie 2004 (http://qbnz.com/highlighter) */"; - - if ( $overall != '' ) - { - $stylesheet .= "\n$overall_selector {{$overall_styles}}"; - } - if ( $default_styles != '' ) - { - $default_selector = str_replace(array('{PART1}', '{PART2}'), array('.de1', '.de2'), $part_selector_2); - $stylesheet .= "\n$default_selector {{$default_styles}}"; - } - - // Do keywords - $keywords_1 = get_var('keywords-1'); - $keyword_selector_1 = str_replace('{PART}', '.kw1', $part_selector_1); - if ( $keywords_1 != '' ) - { - $stylesheet .= "\n$keyword_selector_1 {{$keywords_1}}"; - } - - $keywords_2 = get_var('keywords-2'); - $keyword_selector_2 = str_replace('{PART}', '.kw2', $part_selector_1); - if ( $keywords_2 != '' ) - { - $stylesheet .= "\n$keyword_selector_2 {{$keywords_2}}"; - } - - $keywords_3 = get_var('keywords-3'); - $keyword_selector_3 = str_replace('{PART}', '.kw3', $part_selector_1); - if ( $keywords_3 != '' ) - { - $stylesheet .= "\n$keyword_selector_3 {{$keywords_3}}"; - } - - $keywords_4 = get_var('keywords-4'); - $keyword_selector_4 = str_replace('{PART}', '.kw4', $part_selector_1); - if ( $keywords_4 != '' ) - { - $stylesheet .= "\n$keyword_selector_4 {{$keywords_4}}"; - } - - // Do other lexics - $comments = get_var('comments'); - $comment_selector = str_replace(array('{PART1}', '{PART2}', '{PART3}'), array('.co1', '.co2', '.coMULTI'), $part_selector_3); - if ( $comments != '' ) - { - $stylesheet .= "\n$comment_selector {{$comments}}"; - } - - $esc = get_var('escaped-chars'); - $esc_selector = str_replace('{PART}', '.es0', $part_selector_1); - if ( $esc != '' ) - { - $stylesheet .= "\n$esc_selector {{$esc}}"; - } - - $brackets = get_var('brackets'); - $brk_selector = str_replace('{PART}', '.br0', $part_selector_1); - if ( $brackets != '' ) - { - $stylesheet .= "\n$brk_selector {{$brackets}}"; - } - - $strings = get_var('strings'); - $string_selector = str_replace('{PART}', '.st0', $part_selector_1); - if ( $strings != '' ) - { - $stylesheet .= "\n$string_selector {{$strings}}"; - } - - $numbers = get_var('numbers'); - $num_selector = str_replace('{PART}', '.nu0', $part_selector_1); - if ( $numbers != '' ) - { - $stylesheet .= "\n$num_selector {{$numbers}}"; - } - - $methods = get_var('methods'); - $method_selector = str_replace('{PART}', '.me0', $part_selector_1); - if ( $methods != '' ) - { - $stylesheet .= "\n$method_selector {{$methods}}"; - } - - echo "<pre>$stylesheet</pre>"; - - make_footer(); -} - -?> diff --git a/system/application/libraries/contrib/cssgen2.php b/system/application/libraries/contrib/cssgen2.php deleted file mode 100644 index cc3c39cbf..000000000 --- a/system/application/libraries/contrib/cssgen2.php +++ /dev/null @@ -1,59 +0,0 @@ -<?php -/** - * A simple script which outputs the CSS classes for all languages - * supported by GeSHi. You can access it directly to download - * the CSS file. On *NIX you can also do a simple `php cssgen.php > geshi.css`. - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * @package geshi - * @subpackage contrib - * @author revulo <revulon@gmail.com> - * @copyright 2008 revulo - * @license http://gnu.org/copyleft/gpl.html GNU GPL - * - */ - -require dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'geshi.php'; -$geshi = new GeSHi; - -$languages = array(); -if ($handle = opendir($geshi->language_path)) { - while (($file = readdir($handle)) !== false) { - $pos = strpos($file, '.'); - if ($pos > 0 && substr($file, $pos) == '.php') { - $languages[] = substr($file, 0, $pos); - } - } - closedir($handle); -} -sort($languages); - -header('Content-Type: application/octet-stream'); -header('Content-Disposition: attachment; filename="geshi.css"'); - -echo "/**\n". - " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" . - " * (http://qbnz.com/highlighter/ and http://geshi.org/)\n". - " */\n"; - -foreach ($languages as $language) { - $geshi->set_language($language); - // note: the false argument is required for stylesheet generators, see API documentation - $css = $geshi->get_stylesheet(false); - echo preg_replace('/^\/\*\*.*?\*\//s', '', $css); -} diff --git a/system/application/libraries/contrib/example.php b/system/application/libraries/contrib/example.php deleted file mode 100644 index 32e6f0c75..000000000 --- a/system/application/libraries/contrib/example.php +++ /dev/null @@ -1,217 +0,0 @@ -<?php -/** - * GeSHi example script - * - * Just point your browser at this script (with geshi.php in the parent directory, - * and the language files in subdirectory "../geshi/") - * - * @author Nigel McNie - * @version $Id: example.php 1512 2008-07-21 21:05:40Z benbe $ - */ -header('Content-Type: text/html; charset=utf-8'); - -error_reporting(E_ALL); - -// Rudimentary checking of where GeSHi is. In a default install it will be in ../, but -// it could be in the current directory if the include_path is set. There's nowhere else -// we can reasonably guess. -if (is_readable('../geshi.php')) { - $path = '../'; -} elseif (is_readable('geshi.php')) { - $path = './'; -} else { - die('Could not find geshi.php - make sure it is in your include path!'); -} -require $path . 'geshi.php'; - -$fill_source = false; -if (isset($_POST['submit'])) { - if (get_magic_quotes_gpc()) { - $_POST['source'] = stripslashes($_POST['source']); - } - if (!strlen(trim($_POST['source']))) { - $_POST['language'] = preg_replace('#[^a-zA-Z0-9\-_]#', '', $_POST['language']); - $_POST['source'] = implode('', @file($path . 'geshi/' . $_POST['language'] . '.php')); - $_POST['language'] = 'php'; - } else { - $fill_source = true; - } - - // Here's a free demo of how GeSHi works. - - // First the initialisation: source code to highlight and the language to use. Make sure - // you sanitise correctly if you use $_POST of course - this very script has had a security - // advisory against it in the past because of this. Please try not to use this script on a - // live site. - $geshi = new GeSHi($_POST['source'], $_POST['language']); - - // Use the PRE_VALID header. This means less output source since we don't have to output - // everywhere. Of course it also means you can't set the tab width. - // HEADER_PRE_VALID puts the <pre> tag inside the list items (<li>) thus producing valid HTML markup. - // HEADER_PRE puts the <pre> tag around the list (<ol>) which is invalid in HTML 4 and XHTML 1 - // HEADER_DIV puts a <div> tag arount the list (valid!) but needs to replace whitespaces with   - // thus producing much larger overhead. You can set the tab width though. - $geshi->set_header_type(GESHI_HEADER_PRE_VALID); - - // Enable CSS classes. You can use get_stylesheet() to output a stylesheet for your code. Using - // CSS classes results in much less output source. - $geshi->enable_classes(); - - // Enable line numbers. We want fancy line numbers, and we want every 5th line number to be fancy - $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 5); - - // Set the style for the PRE around the code. The line numbers are contained within this box (not - // XHTML compliant btw, but if you are liberally minded about these things then you'll appreciate - // the reduced source output). - $geshi->set_overall_style('font: normal normal 90% monospace; color: #000066; border: 1px solid #d0d0d0; background-color: #f0f0f0;', false); - - // Set the style for line numbers. In order to get style for line numbers working, the <li> element - // is being styled. This means that the code on the line will also be styled, and most of the time - // you don't want this. So the set_code_style reverts styles for the line (by using a <div> on the line). - // So the source output looks like this: - // - // <pre style="[set_overall_style styles]"><ol> - // <li style="[set_line_style styles]"><div style="[set_code_style styles]>...</div></li> - // ... - // </ol></pre> - $geshi->set_line_style('color: #003030;', 'font-weight: bold; color: #006060;', true); - $geshi->set_code_style('color: #000020;', true); - - // Styles for hyperlinks in the code. GESHI_LINK for default styles, GESHI_HOVER for hover style etc... - // note that classes must be enabled for this to work. - $geshi->set_link_styles(GESHI_LINK, 'color: #000060;'); - $geshi->set_link_styles(GESHI_HOVER, 'background-color: #f0f000;'); - - // Use the header/footer functionality. This puts a div with content within the PRE element, so it is - // affected by the styles set by set_overall_style. So if the PRE has a border then the header/footer will - // appear inside it. - $geshi->set_header_content('<SPEED> <TIME> GeSHi © 2004-2007, Nigel McNie, 2007-2008 Benny Baumann. View source of example.php for example of using GeSHi'); - $geshi->set_header_content_style('font-family: sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-bottom: 1px solid #d0d0d0; padding: 2px;'); - - // You can use <TIME> and <VERSION> as placeholders - $geshi->set_footer_content('Parsed in <TIME> seconds at <SPEED>, using GeSHi <VERSION>'); - $geshi->set_footer_content_style('font-family: sans-serif; color: #808080; font-size: 70%; font-weight: bold; background-color: #f0f0ff; border-top: 1px solid #d0d0d0; padding: 2px;'); -} else { - // make sure we don't preselect any language - $_POST['language'] = null; -} -?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <title>GeSHi examples</title> - <style type="text/css"> - <!-- - <?php - if (isset($_POST['submit'])) { - // Output the stylesheet. Note it doesn't output the <style> tag - echo $geshi->get_stylesheet(true); - } - ?> - html { - background-color: #f0f0f0; - } - body { - font-family: Verdana, Arial, sans-serif; - margin: 10px; - border: 2px solid #e0e0e0; - background-color: #fcfcfc; - padding: 5px; - } - h2 { - margin: .1em 0 .2em .5em; - border-bottom: 1px solid #b0b0b0; - color: #b0b0b0; - font-weight: normal; - font-size: 150%; - } - h3 { - margin: .1em 0 .2em .5em; - color: #b0b0b0; - font-weight: normal; - font-size: 120%; - } - #footer { - text-align: center; - font-size: 80%; - color: #a9a9a9; - } - #footer a { - color: #9999ff; - } - textarea { - border: 1px solid #b0b0b0; - font-size: 90%; - color: #333; - margin-left: 20px; - } - select, input { - margin-left: 20px; - } - p { - font-size: 90%; - margin-left: .5em; - } - --> - </style> -</head> -<body> -<h2>GeSHi Example Script</h2> -<p>To use this script, make sure that <strong>geshi.php</strong> is in the parent directory or in your -include_path, and that the language files are in a subdirectory of GeSHi's directory called <strong>geshi/</strong>.</p> -<p>Enter your source and a language to highlight the source in and submit, or just choose a language to -have that language file highlighted in PHP.</p> -<?php -if (isset($_POST['submit'])) { - // The fun part :) - echo $geshi->parse_code(); - echo '<hr />'; -} -?> -<form action="<?php echo basename($_SERVER['PHP_SELF']); ?>" method="post"> -<h3>Source to highlight</h3> -<p> -<textarea rows="10" cols="60" name="source" id="source"><?php echo $fill_source ? htmlspecialchars($_POST['source']) : '' ?></textarea> -</p> -<h3>Choose a language</h3> -<p> -<select name="language" id="language"> -<?php -if (!($dir = @opendir(dirname(__FILE__) . '/geshi'))) { - if (!($dir = @opendir(dirname(__FILE__) . '/../geshi'))) { - echo '<option>No languages available!</option>'; - } -} -$languages = array(); -while ($file = readdir($dir)) { - if ( $file[0] == '.' || strpos($file, '.', 1) === false) { - continue; - } - $lang = substr($file, 0, strpos($file, '.')); - $languages[] = $lang; -} -closedir($dir); -sort($languages); -foreach ($languages as $lang) { - if (isset($_POST['language']) && $_POST['language'] == $lang) { - $selected = 'selected="selected"'; - } else { - $selected = ''; - } - echo '<option value="' . $lang . '" '. $selected .'>' . $lang . "</option>\n"; -} - -?> -</select> -</p> -<p> -<input type="submit" name="submit" value="Highlight Source" /> -<input type="submit" name="clear" onclick="document.getElementById('source').value='';document.getElementById('language').value='';return false" value="clear" /> -</p> -</form> -<div id="footer">GeSHi © Nigel McNie, 2004, released under the GNU GPL<br /> -For a better demonstration, check out the <a href="http://qbnz.com/highlighter/demo.php">online demo</a> -</div> -</body> -</html> diff --git a/system/application/libraries/contrib/langcheck.php b/system/application/libraries/contrib/langcheck.php deleted file mode 100644 index a4ee4f65f..000000000 --- a/system/application/libraries/contrib/langcheck.php +++ /dev/null @@ -1,766 +0,0 @@ -<?php -/** - * GeSHi language file validation script - * - * Just point your browser at this script (with geshi.php in the parent directory) - * and the language files in subdirectory "../geshi/" are being validated - * - * CLI mode is supported - * - * @author Benny Baumann - * @version $Id: langcheck.php 2174 2009-09-10 09:17:40Z benbe $ - */ -header('Content-Type: text/html; charset=utf-8'); - -set_time_limit(0); -error_reporting(E_ALL); -$time_start = explode(' ', microtime()); - -function colorize($level, $string) { - static $colors, $end; - if ( !isset($colors) ) { - if ( PHP_SAPI != 'cli' ) { - $end = '</span>'; - $colors = array( - TYPE_NOTICE => '<span style="color:#080;font-weight:bold;">', - TYPE_WARNING => '<span style="color:#CC0; font-weight: bold;">', - TYPE_ERROR => '<span style="color:#F00; font-weight: bold;">', - TYPE_OK => '<span style="color: #080; font-weight: bold;">' - ); - } else { - $end = chr(27).'[0m'; - $colors = array( - TYPE_NOTICE => chr(27).'[1m', - TYPE_WARNING => chr(27).'[1;33m', - TYPE_ERROR => chr(27).'[1;31m', - TYPE_OK => chr(27).'[1;32m' - ); - } - } - - if ( !isset($colors[$level]) ) { - trigger_error("no colors for level $level", E_USER_ERROR); - } - - return $colors[$level].$string.$end; -} - -define ('TYPE_NOTICE', 0); -define ('TYPE_WARNING', 1); -define ('TYPE_ERROR', 2); -define ('TYPE_OK', 3); - -$error_abort = false; -$error_cache = array(); -function output_error_cache(){ - global $error_cache, $error_abort; - - if(count($error_cache)) { - echo colorize(TYPE_ERROR, "Failed"); - if ( PHP_SAPI == 'cli' ) { - echo "\n\n"; - } else { - echo "<br /><ol>\n"; - } - foreach($error_cache as $error_msg) { - if ( PHP_SAPI == 'cli' ) { - echo "\n"; - } else { - echo "<li>"; - } - switch($error_msg['t']) { - case TYPE_NOTICE: - $msg = 'NOTICE'; - break; - case TYPE_WARNING: - $msg = 'WARNING'; - break; - case TYPE_ERROR: - $msg = 'ERROR'; - break; - } - echo colorize($error_msg['t'], $msg); - if ( PHP_SAPI == 'cli' ) { - echo "\t" . $error_msg['m']; - } else { - echo " " . $error_msg['m'] . "</li>"; - } - } - if ( PHP_SAPI == 'cli' ) { - echo "\n"; - } else { - echo "</ol>\n"; - } - } else { - echo colorize(TYPE_OK, "OK"); - if ( PHP_SAPI == 'cli' ) { - echo "\n"; - } else { - echo "\n<br />"; - } - } - echo "\n"; - - $error_cache = array(); -} - -function report_error($type, $message) { - global $error_cache, $error_abort; - - $error_cache[] = array('t' => $type, 'm' => $message); - if(TYPE_ERROR == $type) { - $error_abort = true; - } -} - -function dupfind_strtolower(&$value){ - $value = strtolower($value); -} - -if ( PHP_SAPI != 'cli' ) { ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> - <title>GeSHi Language File Validation Script</title> - <style type="text/css"> - <!-- - html { - background-color: #f0f0f0; - } - body { - font-family: Verdana, Arial, sans-serif; - margin: 10px; - border: 2px solid #e0e0e0; - background-color: #fcfcfc; - padding: 5px; - font-size: 10pt; - } - h2 { - margin: .1em 0 .2em .5em; - border-bottom: 1px solid #b0b0b0; - color: #b0b0b0; - font-weight: normal; - font-size: 150%; - } - h3 { - margin: .1em 0 .2em .5em; - color: #b0b0b0; - font-weight: normal; - font-size: 120%; - } - #footer { - text-align: center; - font-size: 80%; - color: #a9a9a9; - } - #footer a { - color: #9999ff; - } - textarea { - border: 1px solid #b0b0b0; - font-size: 90%; - color: #333; - margin-left: 20px; - } - select, input { - margin-left: 20px; - } - p { - font-size: 90%; - margin-left: .5em; - } - --> - </style> -</head> -<body> -<h2>GeSHi Language File Validation Script</h2> -<p>To use this script, make sure that <strong>geshi.php</strong> is in the -parent directory or in your include_path, and that the language files are in a -subdirectory of GeSHi's directory called <strong>geshi/</strong>.</p> -<p>Everything else will be done by this script automatically. After the script -finished you should see messages of what could cause trouble with GeSHi or where -your language files can be improved. Please be patient, as this might take some time.</p> - -<ol> -<li>Checking where to find GeSHi installation ...<?php -} else { ?> -<?php echo colorize(TYPE_NOTICE, "#### GeSHi Language File Validation Script ####") ?> - - -To use this script, make sure that <?php echo colorize(TYPE_NOTICE, "geshi.php"); ?> is in the -parent directory or in your include_path, and that the language files are in a -subdirectory of GeSHi's directory called <?php echo colorize(TYPE_NOTICE, "geshi/"); ?>. - -Everything else will be done by this script automatically. After the script -finished you should see messages of what could cause trouble with GeSHi or where -your language files can be improved. Please be patient, as this might take some time. - - -Checking where to find GeSHi installation ...<?php echo "\t"; -} - -// Rudimentary checking of where GeSHi is. In a default install it will be in ../, but -// it could be in the current directory if the include_path is set. There's nowhere else -// we can reasonably guess. -if (is_readable('../geshi.php')) { - $path = '../'; -} elseif (is_readable('geshi.php')) { - $path = './'; -} else { - report_error(TYPE_ERROR, 'Could not find geshi.php - make sure it is in your include path!'); -} - -if(!$error_abort) { - require $path . 'geshi.php'; - - if(!class_exists('GeSHi')) { - report_error(TYPE_ERROR, 'The GeSHi class was not found, although it seemed we loaded the correct file!'); - } -} - -if(!$error_abort) { - if(!defined('GESHI_LANG_ROOT')) { - report_error(TYPE_ERROR, 'There\'s no information present on where to find the language files!'); - } else if(!is_dir(GESHI_LANG_ROOT)) { - report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" given, does not ressemble a directory!'); - } else if(!is_readable(GESHI_LANG_ROOT)) { - report_error(TYPE_ERROR, 'The path "'.GESHI_LANG_ROOT.'" is not readable to this script!'); - } -} - -output_error_cache(); - -if(!$error_abort) { - if ( PHP_SAPI == 'cli' ) { - echo "Listing available language files ...\t\t"; - } else { - echo "</li>\n<li>Listing available language files ... "; - } - - if (!($dir = @opendir(GESHI_LANG_ROOT))) { - report_error(TYPE_ERROR, 'Error requesting listing for available language files!'); - } - - $languages = array(); - - if(!$error_abort) { - while ($file = readdir($dir)) { - if (!$file || $file[0] == '.' || strpos($file, '.') === false) { - continue; - } - $lang = substr($file, 0, strpos($file, '.')); - $languages[] = $lang; - } - closedir($dir); - } - - $languages = array_unique($languages); - sort($languages); - - if(!count($languages)) { - report_error(TYPE_WARNING, 'Unable to locate any usable language files in "'.GESHI_LANG_ROOT.'"!'); - } - - output_error_cache(); -} - -if ( PHP_SAPI == 'cli' ) { - if (isset($_SERVER['argv'][1]) && in_array($_SERVER['argv'][1], $languages)) { - $languages = array($_SERVER['argv'][1]); - } -} else { - if (isset($_REQUEST['show']) && in_array($_REQUEST['show'], $languages)) { - $languages = array($_REQUEST['show']); - } -} - -if(!$error_abort) { - foreach ($languages as $lang) { - - if ( PHP_SAPI == 'cli' ) { - echo "Validating language file for '$lang' ...\t\t"; - } else { - echo "</li>\n<li>Validating language file for '$lang' ... "; - } - - $langfile = GESHI_LANG_ROOT . $lang . '.php'; - - $language_data = array(); - - if(!is_file($langfile)) { - report_error(TYPE_ERROR, 'The path "' .$langfile. '" does not ressemble a regular file!'); - } else if(!is_readable($langfile)) { - report_error(TYPE_ERROR, 'Cannot read file "' .$langfile. '"!'); - } else { - $langfile_content = file_get_contents($langfile); - if(preg_match("/\?>(?:\r?\n|\r(?!\n)){2,}\Z/", $langfile_content)) { - report_error(TYPE_ERROR, 'Language file contains trailing empty lines at EOF!'); - } - if(!preg_match("/\?>(?:\r?\n|\r(?!\n))?\Z/", $langfile_content)) { - report_error(TYPE_ERROR, 'Language file contains no PHP end marker at EOF!'); - } - if(preg_match("/\t/", $langfile_content)) { - report_error(TYPE_NOTICE, 'Language file contains unescaped tabulator chars (probably for indentation)!'); - } - if(preg_match('/^(?: )*(?! )(?! \*) /m', $langfile_content)) { - report_error(TYPE_NOTICE, 'Language file contains irregular indentation (other than 4 spaces per indentation level)!'); - } - - if(!preg_match("/\/\*\*((?!\*\/).)*?Author:((?!\*\/).)*?\*\//s", $langfile_content)) { - report_error(TYPE_WARNING, 'Language file does not contain a specification of an author!'); - } - if(!preg_match("/\/\*\*((?!\*\/).)*?Copyright:((?!\*\/).)*?\*\//s", $langfile_content)) { - report_error(TYPE_WARNING, 'Language file does not contain a specification of the copyright!'); - } - if(!preg_match("/\/\*\*((?!\*\/).)*?Release Version:((?!\*\/).)*?\*\//s", $langfile_content)) { - report_error(TYPE_WARNING, 'Language file does not contain a specification of the release version!'); - } - if(!preg_match("/\/\*\*((?!\*\/).)*?Date Started:((?!\*\/).)*?\*\//s", $langfile_content)) { - report_error(TYPE_WARNING, 'Language file does not contain a specification of the date it was started!'); - } - if(!preg_match("/\/\*\*((?!\*\/).)*?This file is part of GeSHi\.((?!\*\/).)*?\*\//s", $langfile_content)) { - report_error(TYPE_WARNING, 'Language file does not state that it belongs to GeSHi!'); - } - if(!preg_match("/\/\*\*((?!\*\/).)*?language file for GeSHi\.((?!\*\/).)*?\*\//s", $langfile_content)) { - report_error(TYPE_WARNING, 'Language file does not state that it is a language file for GeSHi!'); - } - if(!preg_match("/\/\*\*((?!\*\/).)*?GNU General Public License((?!\*\/).)*?\*\//s", $langfile_content)) { - report_error(TYPE_WARNING, 'Language file does not state that it is provided under the terms of the GNU GPL!'); - } - - unset($langfile_content); - - include $langfile; - - if(!isset($language_data)) { - report_error(TYPE_ERROR, 'Language file does not contain a $language_data structure to check!'); - } else if (!is_array($language_data)) { - report_error(TYPE_ERROR, 'Language file contains a $language_data structure which is not an array!'); - } - } - - if(!$error_abort) { - if(!isset($language_data['LANG_NAME'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'LANG_NAME\'] specification!'); - } else if (!is_string($language_data['LANG_NAME'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'LANG_NAME\'] specification which is not a string!'); - } - - if(!isset($language_data['COMMENT_SINGLE'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'COMMENT_SIGNLE\'] structure to check!'); - } else if (!is_array($language_data['COMMENT_SINGLE'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_SINGLE\'] structure which is not an array!'); - } - - if(!isset($language_data['COMMENT_MULTI'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'COMMENT_MULTI\'] structure to check!'); - } else if (!is_array($language_data['COMMENT_MULTI'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_MULTI\'] structure which is not an array!'); - } - - if(isset($language_data['COMMENT_REGEXP'])) { - if (!is_array($language_data['COMMENT_REGEXP'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'COMMENT_REGEXP\'] structure which is not an array!'); - } - } - - if(!isset($language_data['QUOTEMARKS'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'QUOTEMARKS\'] structure to check!'); - } else if (!is_array($language_data['QUOTEMARKS'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'QUOTEMARKS\'] structure which is not an array!'); - } - - if(isset($language_data['HARDQUOTE'])) { - if (!is_array($language_data['HARDQUOTE'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'HARDQUOTE\'] structure which is not an array!'); - } - } - - if(!isset($language_data['ESCAPE_CHAR'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'ESCAPE_CHAR\'] specification to check!'); - } else if (!is_string($language_data['ESCAPE_CHAR'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'ESCAPE_CHAR\'] specification which is not a string!'); - } else if (1 < strlen($language_data['ESCAPE_CHAR'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'ESCAPE_CHAR\'] specification is not empty or exactly one char!'); - } - - if(!isset($language_data['CASE_KEYWORDS'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'CASE_KEYWORDS\'] specification!'); - } else if (!is_int($language_data['CASE_KEYWORDS'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_KEYWORDS\'] specification which is not an integer!'); - } else if (GESHI_CAPS_NO_CHANGE != $language_data['CASE_KEYWORDS'] && - GESHI_CAPS_LOWER != $language_data['CASE_KEYWORDS'] && - GESHI_CAPS_UPPER != $language_data['CASE_KEYWORDS']) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_KEYWORDS\'] specification which is neither of GESHI_CAPS_NO_CHANGE, GESHI_CAPS_LOWER nor GESHI_CAPS_UPPER!'); - } - - if(!isset($language_data['KEYWORDS'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'KEYWORDS\'] structure to check!'); - } else if (!is_array($language_data['KEYWORDS'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'KEYWORDS\'] structure which is not an array!'); - } else { - foreach($language_data['KEYWORDS'] as $kw_key => $kw_value) { - if(!is_integer($kw_key)) { - report_error(TYPE_WARNING, "Language file contains an key '$kw_key' in \$language_data['KEYWORDS'] that is not integer!"); - } else if (!is_array($kw_value)) { - report_error(TYPE_ERROR, "Language file contains a \$language_data['CASE_SENSITIVE']['$kw_value'] structure which is not an array!"); - } - } - } - - if(!isset($language_data['SYMBOLS'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'SYMBOLS\'] structure to check!'); - } else if (!is_array($language_data['SYMBOLS'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'SYMBOLS\'] structure which is not an array!'); - } - - if(!isset($language_data['CASE_SENSITIVE'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'CASE_SENSITIVE\'] structure to check!'); - } else if (!is_array($language_data['CASE_SENSITIVE'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'CASE_SENSITIVE\'] structure which is not an array!'); - } else { - foreach($language_data['CASE_SENSITIVE'] as $cs_key => $cs_value) { - if(!is_integer($cs_key)) { - report_error(TYPE_WARNING, "Language file contains an key '$cs_key' in \$language_data['CASE_SENSITIVE'] that is not integer!"); - } else if (!is_bool($cs_value)) { - report_error(TYPE_ERROR, "Language file contains a Case Sensitivity specification for \$language_data['CASE_SENSITIVE']['$cs_value'] which is not a boolean!"); - } - } - } - - if(!isset($language_data['URLS'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'URLS\'] structure to check!'); - } else if (!is_array($language_data['URLS'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'URLS\'] structure which is not an array!'); - } else { - foreach($language_data['URLS'] as $url_key => $url_value) { - if(!is_integer($url_key)) { - report_error(TYPE_WARNING, "Language file contains an key '$url_key' in \$language_data['URLS'] that is not integer!"); - } else if (!is_string($url_value)) { - report_error(TYPE_ERROR, "Language file contains a Documentation URL specification for \$language_data['URLS']['$url_value'] which is not a string!"); - } else if (preg_match('#&([^;]*(=|$))#U', $url_value)) { - report_error(TYPE_ERROR, "Language file contains unescaped ampersands (&) in \$language_data['URLS']!"); - } - } - } - - if(!isset($language_data['OOLANG'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'OOLANG\'] specification!'); - } else if (!is_int($language_data['OOLANG']) && !is_bool($language_data['OOLANG'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OOLANG\'] specification which is neither boolean nor integer!'); - } else if (false !== $language_data['OOLANG'] && - true !== $language_data['OOLANG'] && - 2 !== $language_data['OOLANG']) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OOLANG\'] specification which is neither of false, true or 2!'); - } - - if(!isset($language_data['OBJECT_SPLITTERS'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'OBJECT_SPLITTERS\'] structure to check!'); - } else if (!is_array($language_data['OBJECT_SPLITTERS'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'OBJECT_SPLITTERS\'] structure which is not an array!'); - } - - if(!isset($language_data['REGEXPS'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'REGEXPS\'] structure to check!'); - } else if (!is_array($language_data['REGEXPS'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'REGEXPS\'] structure which is not an array!'); - } - - if(!isset($language_data['STRICT_MODE_APPLIES'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'STRICT_MODE_APPLIES\'] specification!'); - } else if (!is_int($language_data['STRICT_MODE_APPLIES'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STRICT_MODE_APPLIES\'] specification which is not an integer!'); - } else if (GESHI_MAYBE != $language_data['STRICT_MODE_APPLIES'] && - GESHI_ALWAYS != $language_data['STRICT_MODE_APPLIES'] && - GESHI_NEVER != $language_data['STRICT_MODE_APPLIES']) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STRICT_MODE_APPLIES\'] specification which is neither of GESHI_MAYBE, GESHI_ALWAYS nor GESHI_NEVER!'); - } - - if(!isset($language_data['SCRIPT_DELIMITERS'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'SCRIPT_DELIMITERS\'] structure to check!'); - } else if (!is_array($language_data['SCRIPT_DELIMITERS'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'SCRIPT_DELIMITERS\'] structure which is not an array!'); - } - - if(!isset($language_data['HIGHLIGHT_STRICT_BLOCK'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'HIGHLIGHT_STRICT_BLOCK\'] structure to check!'); - } else if (!is_array($language_data['HIGHLIGHT_STRICT_BLOCK'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'HIGHLIGHT_STRICT_BLOCK\'] structure which is not an array!'); - } - - if(isset($language_data['TAB_WIDTH'])) { - if (!is_int($language_data['TAB_WIDTH'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'TAB_WIDTH\'] specification which is not an integer!'); - } else if (1 > $language_data['TAB_WIDTH']) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'TAB_WIDTH\'] specification which is less than 1!'); - } - } - - if(isset($language_data['PARSER_CONTROL'])) { - if (!is_array($language_data['PARSER_CONTROL'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'PARSER_CONTROL\'] structure which is not an array!'); - } - } - - if(!isset($language_data['STYLES'])) { - report_error(TYPE_ERROR, 'Language file contains no $language_data[\'STYLES\'] structure to check!'); - } else if (!is_array($language_data['STYLES'])) { - report_error(TYPE_ERROR, 'Language file contains a $language_data[\'STYLES\'] structure which is not an array!'); - } else { - $style_arrays = array('KEYWORDS', 'COMMENTS', 'ESCAPE_CHAR', - 'BRACKETS', 'STRINGS', 'NUMBERS', 'METHODS', 'SYMBOLS', - 'REGEXPS', 'SCRIPT'); - foreach($style_arrays as $style_kind) { - if(!isset($language_data['STYLES'][$style_kind])) { - report_error(TYPE_ERROR, "Language file contains no \$language_data['STYLES']['$style_kind'] structure to check!"); - } else if (!is_array($language_data['STYLES'][$style_kind])) { - report_error(TYPE_ERROR, "Language file contains a \$language_data['STYLES\']['$style_kind'] structure which is not an array!"); - } else { - foreach($language_data['STYLES'][$style_kind] as $sk_key => $sk_value) { - if(!is_int($sk_key) && ('COMMENTS' != $style_kind && 'MULTI' != $sk_key) - && !(('STRINGS' == $style_kind || 'ESCAPE_CHAR' == $style_kind) && 'HARD' == $sk_key)) { - report_error(TYPE_WARNING, "Language file contains an key '$sk_key' in \$language_data['STYLES']['$style_kind'] that is not integer!"); - } else if (!is_string($sk_value)) { - report_error(TYPE_WARNING, "Language file contains a CSS specification for \$language_data['STYLES']['$style_kind'][$key] which is not a string!"); - } - } - } - } - - unset($style_arrays); - } - } - - if(!$error_abort) { - //Initial sanity checks survived? --> Let's dig deeper! - foreach($language_data['KEYWORDS'] as $key => $keywords) { - if(!isset($language_data['CASE_SENSITIVE'][$key])) { - report_error(TYPE_ERROR, "Language file contains no \$language_data['CASE_SENSITIVE'] specification for keyword group $key!"); - } - if(!isset($language_data['URLS'][$key])) { - report_error(TYPE_ERROR, "Language file contains no \$language_data['URLS'] specification for keyword group $key!"); - } - if(empty($keywords)) { - report_error(TYPE_WARNING, "Language file contains an empty keyword list in \$language_data['KEYWORDS'] for group $key!"); - } - foreach($keywords as $id => $kw) { - if(!is_string($kw)) { - report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['KEYWORDS'][$key][$id]!"); - } else if (!strlen($kw)) { - report_error(TYPE_ERROR, "Language file contains an empty string entry at \$language_data['KEYWORDS'][$key][$id]!"); - } else if (preg_match('/^([\(\)\{\}\[\]\^=.,:;\-+\*\/%\$\"\'\?]|&[\w#]\w*;)+$/i', $kw)) { - report_error(TYPE_NOTICE, "Language file contains an keyword ('$kw') at \$language_data['KEYWORDS'][$key][$id] which seems to be better suited for the symbols section!"); - } - } - if(isset($language_data['CASE_SENSITIVE'][$key]) && !$language_data['CASE_SENSITIVE'][$key]) { - array_walk($keywords, 'dupfind_strtolower'); - } - if(count($keywords) != count(array_unique($keywords))) { - $kw_diffs = array_count_values($keywords); - foreach($kw_diffs as $kw => $kw_count) { - if($kw_count > 1) { - report_error(TYPE_WARNING, "Language file contains per-group duplicate keyword '$kw' in \$language_data['KEYWORDS'][$key]!"); - } - } - } - } - - $disallowed_before = "(?<![a-zA-Z0-9\$_\|\#;>|^&"; - $disallowed_after = "(?![a-zA-Z0-9_\|%\\-&;"; - - foreach($language_data['KEYWORDS'] as $key => $keywords) { - foreach($language_data['KEYWORDS'] as $key2 => $keywords2) { - if($key2 <= $key) { - continue; - } - $kw_diffs = array_intersect($keywords, $keywords2); - foreach($kw_diffs as $kw) { - if(isset($language_data['PARSER_CONTROL']['KEYWORDS'])) { - //Check the precondition\post-cindition for the involved keyword groups - $g1_pre = $disallowed_before; - $g2_pre = $disallowed_before; - $g1_post = $disallowed_after; - $g2_post = $disallowed_after; - if(isset($language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'])) { - $g1_pre = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE']; - $g2_pre = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE']; - } - if(isset($language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'])) { - $g1_post = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER']; - $g2_post = $language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER']; - } - - if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_BEFORE'])) { - $g1_pre = $language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_BEFORE']; - } - if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_AFTER'])) { - $g1_post = $language_data['PARSER_CONTROL']['KEYWORDS'][$key]['DISALLOWED_AFTER']; - } - - if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_BEFORE'])) { - $g2_pre = $language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_BEFORE']; - } - if(isset($language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_AFTER'])) { - $g2_post = $language_data['PARSER_CONTROL']['KEYWORDS'][$key2]['DISALLOWED_AFTER']; - } - - if($g1_pre != $g2_pre || $g1_post != $g2_post) { - continue; - } - } - report_error(TYPE_WARNING, "Language file contains cross-group duplicate keyword '$kw' in \$language_data['KEYWORDS'][$key] and \$language_data['KEYWORDS'][$key2]!"); - } - } - } - foreach($language_data['CASE_SENSITIVE'] as $key => $keywords) { - if(!isset($language_data['KEYWORDS'][$key]) && $key != GESHI_COMMENTS) { - report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['CASE_SENSITIVE'] specification for non-existing keyword group $key!"); - } - } - foreach($language_data['URLS'] as $key => $keywords) { - if(!isset($language_data['KEYWORDS'][$key])) { - report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['URLS'] specification for non-existing keyword group $key!"); - } - } - foreach($language_data['STYLES']['KEYWORDS'] as $key => $keywords) { - if(!isset($language_data['KEYWORDS'][$key])) { - report_error(TYPE_WARNING, "Language file contains an superfluous \$language_data['STYLES']['KEYWORDS'] specification for non-existing keyword group $key!"); - } - } - - foreach($language_data['COMMENT_SINGLE'] as $ck => $cv) { - if(!is_int($ck)) { - report_error(TYPE_WARNING, "Language file contains an key '$ck' in \$language_data['COMMENT_SINGLE'] that is not integer!"); - } - if(!is_string($cv)) { - report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['COMMENT_SINGLE'][$ck]!"); - } - if(!isset($language_data['STYLES']['COMMENTS'][$ck])) { - report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['COMMENTS'] specification for comment group $ck!"); - } - } - if(isset($language_data['COMMENT_REGEXP'])) { - foreach($language_data['COMMENT_REGEXP'] as $ck => $cv) { - if(!is_int($ck)) { - report_error(TYPE_WARNING, "Language file contains an key '$ck' in \$language_data['COMMENT_REGEXP'] that is not integer!"); - } - if(!is_string($cv)) { - report_error(TYPE_WARNING, "Language file contains an non-string entry at \$language_data['COMMENT_REGEXP'][$ck]!"); - } - if(!isset($language_data['STYLES']['COMMENTS'][$ck])) { - report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['COMMENTS'] specification for comment group $ck!"); - } - } - } - foreach($language_data['STYLES']['COMMENTS'] as $ck => $cv) { - if($ck != 'MULTI' && !isset($language_data['COMMENT_SINGLE'][$ck]) && - !isset($language_data['COMMENT_REGEXP'][$ck])) { - report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['COMMENTS'] specification for Single Line or Regular-Expression Comment key $ck!"); - } - } - if (isset($language_data['STYLES']['STRINGS']['HARD'])) { - if (empty($language_data['HARDQUOTE'])) { - report_error(TYPE_NOTICE, "Language file contains superfluous \$language_data['STYLES']['STRINGS'] specification for key 'HARD', but no 'HARDQUOTE's are defined!"); - } - unset($language_data['STYLES']['STRINGS']['HARD']); - } - foreach($language_data['STYLES']['STRINGS'] as $sk => $sv) { - if($sk && !isset($language_data['QUOTEMARKS'][$sk])) { - report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['STRINGS'] specification for non-existing quotemark key $sk!"); - } - } - - foreach($language_data['REGEXPS'] as $rk => $rv) { - if(!is_int($rk)) { - report_error(TYPE_WARNING, "Language file contains an key '$rk' in \$language_data['REGEXPS'] that is not integer!"); - } - if(is_string($rv)) { - //Check for unmasked / in regular expressions ... - if(empty($rv)) { - report_error(TYPE_WARNING, "Language file contains an empty regular expression at \$language_data['REGEXPS'][$rk]!"); - } else { - if(preg_match("/(?<!\\\\)\//s", $rv)) { - report_error(TYPE_WARNING, "Language file contains a regular expression with an unmasked / character at \$language_data['REGEXPS'][$rk]!"); - } elseif (preg_match("/(?<!<)(\\\\\\\\)*\\\\\|(?!>)/s", $rv)) { - report_error(TYPE_WARNING, "Language file contains a regular expression with an unescaped match for a pipe character '|' which needs escaping as '<PIPE>' instead at \$language_data['REGEXPS'][$rk]!"); - } - } - } elseif(is_array($rv)) { - if(!isset($rv[GESHI_SEARCH])) { - report_error(TYPE_ERROR, "Language file contains no GESHI_SEARCH entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); - } elseif(!is_string($rv[GESHI_SEARCH])) { - report_error(TYPE_ERROR, "Language file contains a GESHI_SEARCH entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); - } else { - if(preg_match("/(?<!\\\\)\//s", $rv[GESHI_SEARCH])) { - report_error(TYPE_WARNING, "Language file contains a regular expression with an unmasked / character at \$language_data['REGEXPS'][$rk]!"); - } elseif (preg_match("/(?<!<)(\\\\\\\\)*\\\\\|(?!>)/s", $rv[GESHI_SEARCH])) { - report_error(TYPE_WARNING, "Language file contains a regular expression with an unescaped match for a pipe character '|' which needs escaping as '<PIPE>' instead at \$language_data['REGEXPS'][$rk]!"); - } - } - if(!isset($rv[GESHI_REPLACE])) { - report_error(TYPE_WARNING, "Language file contains no GESHI_REPLACE entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); - } elseif(!is_string($rv[GESHI_REPLACE])) { - report_error(TYPE_ERROR, "Language file contains a GESHI_REPLACE entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); - } - if(!isset($rv[GESHI_MODIFIERS])) { - report_error(TYPE_WARNING, "Language file contains no GESHI_MODIFIERS entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); - } elseif(!is_string($rv[GESHI_MODIFIERS])) { - report_error(TYPE_ERROR, "Language file contains a GESHI_MODIFIERS entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); - } - if(!isset($rv[GESHI_BEFORE])) { - report_error(TYPE_WARNING, "Language file contains no GESHI_BEFORE entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); - } elseif(!is_string($rv[GESHI_BEFORE])) { - report_error(TYPE_ERROR, "Language file contains a GESHI_BEFORE entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); - } - if(!isset($rv[GESHI_AFTER])) { - report_error(TYPE_WARNING, "Language file contains no GESHI_AFTER entry in extended regular expression at \$language_data['REGEXPS'][$rk]!"); - } elseif(!is_string($rv[GESHI_AFTER])) { - report_error(TYPE_ERROR, "Language file contains a GESHI_AFTER entry in extended regular expression at \$language_data['REGEXPS'][$rk] which is not a string!"); - } - } else { - report_error(TYPE_WARNING, "Language file contains an non-string and non-array entry at \$language_data['REGEXPS'][$rk]!"); - } - if(!isset($language_data['STYLES']['REGEXPS'][$rk])) { - report_error(TYPE_WARNING, "Language file contains no \$language_data['STYLES']['REGEXPS'] specification for regexp group $rk!"); - } - } - foreach($language_data['STYLES']['REGEXPS'] as $rk => $rv) { - if(!isset($language_data['REGEXPS'][$rk])) { - report_error(TYPE_NOTICE, "Language file contains an superfluous \$language_data['STYLES']['REGEXPS'] specification for regexp key $rk!"); - } - } - - - } - - output_error_cache(); - - flush(); - - if($error_abort) { - break; - } - } -} - -$time_end = explode(' ', microtime()); -$time_diff = $time_end[0] + $time_end[1] - $time_start[0] - $time_start[1]; - -if ( PHP_SAPI != 'cli' ) { -?></li> -</ol> - -<p>Validation process completed in <? printf("%.2f", $time_diff); ?> seconds.</p> - -<div id="footer">GeSHi © 2004-2007 Nigel McNie, 2007-2008 Benny Baumann, released under the GNU GPL</div> -</body> -</html> - -<?php } else { ?> - -Validation process completed in <? printf("%.2f", $time_diff); ?> seconds. - -GeSHi © 2004-2007 Nigel McNie, 2007-2008 Benny Baumann, released under the GNU GPL - -<?php } ?>
\ No newline at end of file diff --git a/system/application/libraries/geshi.php b/system/application/libraries/geshi.php deleted file mode 100644 index f6796c9f6..000000000 --- a/system/application/libraries/geshi.php +++ /dev/null @@ -1,4685 +0,0 @@ -<?php -/** - * GeSHi - Generic Syntax Highlighter - * - * The GeSHi class for Generic Syntax Highlighting. Please refer to the - * documentation at http://qbnz.com/highlighter/documentation.php for more - * information about how to use this class. - * - * For changes, release notes, TODOs etc, see the relevant files in the docs/ - * directory. - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * @package geshi - * @subpackage core - * @author Nigel McNie <nigel@geshi.org>, Benny Baumann <BenBE@omorphia.de> - * @copyright (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann - * @license http://gnu.org/copyleft/gpl.html GNU GPL - * - */ - -// -// GeSHi Constants -// You should use these constant names in your programs instead of -// their values - you never know when a value may change in a future -// version -// - -/** The version of this GeSHi file */ -define('GESHI_VERSION', '1.0.8.6'); - -// Define the root directory for the GeSHi code tree -if (!defined('GESHI_ROOT')) { - /** The root directory for GeSHi */ - define('GESHI_ROOT', dirname(__FILE__) . DIRECTORY_SEPARATOR); -} -/** The language file directory for GeSHi - @access private */ -define('GESHI_LANG_ROOT', GESHI_ROOT . 'geshi' . DIRECTORY_SEPARATOR); - -// Define if GeSHi should be paranoid about security -if (!defined('GESHI_SECURITY_PARANOID')) { - /** Tells GeSHi to be paranoid about security settings */ - define('GESHI_SECURITY_PARANOID', false); -} - -// Line numbers - use with enable_line_numbers() -/** Use no line numbers when building the result */ -define('GESHI_NO_LINE_NUMBERS', 0); -/** Use normal line numbers when building the result */ -define('GESHI_NORMAL_LINE_NUMBERS', 1); -/** Use fancy line numbers when building the result */ -define('GESHI_FANCY_LINE_NUMBERS', 2); - -// Container HTML type -/** Use nothing to surround the source */ -define('GESHI_HEADER_NONE', 0); -/** Use a "div" to surround the source */ -define('GESHI_HEADER_DIV', 1); -/** Use a "pre" to surround the source */ -define('GESHI_HEADER_PRE', 2); -/** Use a pre to wrap lines when line numbers are enabled or to wrap the whole code. */ -define('GESHI_HEADER_PRE_VALID', 3); -/** - * Use a "table" to surround the source: - * - * <table> - * <thead><tr><td colspan="2">$header</td></tr></thead> - * <tbody><tr><td><pre>$linenumbers</pre></td><td><pre>$code></pre></td></tr></tbody> - * <tfooter><tr><td colspan="2">$footer</td></tr></tfoot> - * </table> - * - * this is essentially only a workaround for Firefox, see sf#1651996 or take a look at - * https://bugzilla.mozilla.org/show_bug.cgi?id=365805 - * @note when linenumbers are disabled this is essentially the same as GESHI_HEADER_PRE - */ -define('GESHI_HEADER_PRE_TABLE', 4); - -// Capatalisation constants -/** Lowercase keywords found */ -define('GESHI_CAPS_NO_CHANGE', 0); -/** Uppercase keywords found */ -define('GESHI_CAPS_UPPER', 1); -/** Leave keywords found as the case that they are */ -define('GESHI_CAPS_LOWER', 2); - -// Link style constants -/** Links in the source in the :link state */ -define('GESHI_LINK', 0); -/** Links in the source in the :hover state */ -define('GESHI_HOVER', 1); -/** Links in the source in the :active state */ -define('GESHI_ACTIVE', 2); -/** Links in the source in the :visited state */ -define('GESHI_VISITED', 3); - -// Important string starter/finisher -// Note that if you change these, they should be as-is: i.e., don't -// write them as if they had been run through htmlentities() -/** The starter for important parts of the source */ -define('GESHI_START_IMPORTANT', '<BEGIN GeSHi>'); -/** The ender for important parts of the source */ -define('GESHI_END_IMPORTANT', '<END GeSHi>'); - -/**#@+ - * @access private - */ -// When strict mode applies for a language -/** Strict mode never applies (this is the most common) */ -define('GESHI_NEVER', 0); -/** Strict mode *might* apply, and can be enabled or - disabled by {@link GeSHi->enable_strict_mode()} */ -define('GESHI_MAYBE', 1); -/** Strict mode always applies */ -define('GESHI_ALWAYS', 2); - -// Advanced regexp handling constants, used in language files -/** The key of the regex array defining what to search for */ -define('GESHI_SEARCH', 0); -/** The key of the regex array defining what bracket group in a - matched search to use as a replacement */ -define('GESHI_REPLACE', 1); -/** The key of the regex array defining any modifiers to the regular expression */ -define('GESHI_MODIFIERS', 2); -/** The key of the regex array defining what bracket group in a - matched search to put before the replacement */ -define('GESHI_BEFORE', 3); -/** The key of the regex array defining what bracket group in a - matched search to put after the replacement */ -define('GESHI_AFTER', 4); -/** The key of the regex array defining a custom keyword to use - for this regexp's html tag class */ -define('GESHI_CLASS', 5); - -/** Used in language files to mark comments */ -define('GESHI_COMMENTS', 0); - -/** Used to work around missing PHP features **/ -define('GESHI_PHP_PRE_433', !(version_compare(PHP_VERSION, '4.3.3') === 1)); - -/** make sure we can call stripos **/ -if (!function_exists('stripos')) { - // the offset param of preg_match is not supported below PHP 4.3.3 - if (GESHI_PHP_PRE_433) { - /** - * @ignore - */ - function stripos($haystack, $needle, $offset = null) { - if (!is_null($offset)) { - $haystack = substr($haystack, $offset); - } - if (preg_match('/'. preg_quote($needle, '/') . '/', $haystack, $match, PREG_OFFSET_CAPTURE)) { - return $match[0][1]; - } - return false; - } - } - else { - /** - * @ignore - */ - function stripos($haystack, $needle, $offset = null) { - if (preg_match('/'. preg_quote($needle, '/') . '/', $haystack, $match, PREG_OFFSET_CAPTURE, $offset)) { - return $match[0][1]; - } - return false; - } - } -} - -/** some old PHP / PCRE subpatterns only support up to xxx subpatterns in - regular expressions. Set this to false if your PCRE lib is up to date - @see GeSHi->optimize_regexp_list() - **/ -define('GESHI_MAX_PCRE_SUBPATTERNS', 500); -/** it's also important not to generate too long regular expressions - be generous here... but keep in mind, that when reaching this limit we - still have to close open patterns. 12k should do just fine on a 16k limit. - @see GeSHi->optimize_regexp_list() - **/ -define('GESHI_MAX_PCRE_LENGTH', 12288); - -//Number format specification -/** Basic number format for integers */ -define('GESHI_NUMBER_INT_BASIC', 1); //Default integers \d+ -/** Enhanced number format for integers like seen in C */ -define('GESHI_NUMBER_INT_CSTYLE', 2); //Default C-Style \d+[lL]? -/** Number format to highlight binary numbers with a suffix "b" */ -define('GESHI_NUMBER_BIN_SUFFIX', 16); //[01]+[bB] -/** Number format to highlight binary numbers with a prefix % */ -define('GESHI_NUMBER_BIN_PREFIX_PERCENT', 32); //%[01]+ -/** Number format to highlight binary numbers with a prefix 0b (C) */ -define('GESHI_NUMBER_BIN_PREFIX_0B', 64); //0b[01]+ -/** Number format to highlight octal numbers with a leading zero */ -define('GESHI_NUMBER_OCT_PREFIX', 256); //0[0-7]+ -/** Number format to highlight octal numbers with a prefix 0o (logtalk) */ -define('GESHI_NUMBER_OCT_PREFIX_0O', 512); //0[0-7]+ -/** Number format to highlight octal numbers with a suffix of o */ -define('GESHI_NUMBER_OCT_SUFFIX', 1024); //[0-7]+[oO] -/** Number format to highlight hex numbers with a prefix 0x */ -define('GESHI_NUMBER_HEX_PREFIX', 4096); //0x[0-9a-fA-F]+ -/** Number format to highlight hex numbers with a suffix of h */ -define('GESHI_NUMBER_HEX_SUFFIX', 8192); //[0-9][0-9a-fA-F]*h -/** Number format to highlight floating-point numbers without support for scientific notation */ -define('GESHI_NUMBER_FLT_NONSCI', 65536); //\d+\.\d+ -/** Number format to highlight floating-point numbers without support for scientific notation */ -define('GESHI_NUMBER_FLT_NONSCI_F', 131072); //\d+(\.\d+)?f -/** Number format to highlight floating-point numbers with support for scientific notation (E) and optional leading zero */ -define('GESHI_NUMBER_FLT_SCI_SHORT', 262144); //\.\d+e\d+ -/** Number format to highlight floating-point numbers with support for scientific notation (E) and required leading digit */ -define('GESHI_NUMBER_FLT_SCI_ZERO', 524288); //\d+(\.\d+)?e\d+ -//Custom formats are passed by RX array - -// Error detection - use these to analyse faults -/** No sourcecode to highlight was specified - * @deprecated - */ -define('GESHI_ERROR_NO_INPUT', 1); -/** The language specified does not exist */ -define('GESHI_ERROR_NO_SUCH_LANG', 2); -/** GeSHi could not open a file for reading (generally a language file) */ -define('GESHI_ERROR_FILE_NOT_READABLE', 3); -/** The header type passed to {@link GeSHi->set_header_type()} was invalid */ -define('GESHI_ERROR_INVALID_HEADER_TYPE', 4); -/** The line number type passed to {@link GeSHi->enable_line_numbers()} was invalid */ -define('GESHI_ERROR_INVALID_LINE_NUMBER_TYPE', 5); -/**#@-*/ - - -/** - * The GeSHi Class. - * - * Please refer to the documentation for GeSHi 1.0.X that is available - * at http://qbnz.com/highlighter/documentation.php for more information - * about how to use this class. - * - * @package geshi - * @author Nigel McNie <nigel@geshi.org>, Benny Baumann <BenBE@omorphia.de> - * @copyright (C) 2004 - 2007 Nigel McNie, (C) 2007 - 2008 Benny Baumann - */ -class Geshi { - /**#@+ - * @access private - */ - /** - * The source code to highlight - * @var string - */ - var $source = ''; - - /** - * The language to use when highlighting - * @var string - */ - var $language = ''; - - /** - * The data for the language used - * @var array - */ - var $language_data = array(); - - /** - * The path to the language files - * @var string - */ - var $language_path = GESHI_LANG_ROOT; - - /** - * The error message associated with an error - * @var string - * @todo check err reporting works - */ - var $error = false; - - /** - * Possible error messages - * @var array - */ - var $error_messages = array( - GESHI_ERROR_NO_SUCH_LANG => 'GeSHi could not find the language {LANGUAGE} (using path {PATH})', - GESHI_ERROR_FILE_NOT_READABLE => 'The file specified for load_from_file was not readable', - GESHI_ERROR_INVALID_HEADER_TYPE => 'The header type specified is invalid', - GESHI_ERROR_INVALID_LINE_NUMBER_TYPE => 'The line number type specified is invalid' - ); - - /** - * Whether highlighting is strict or not - * @var boolean - */ - var $strict_mode = false; - - /** - * Whether to use CSS classes in output - * @var boolean - */ - var $use_classes = false; - - /** - * The type of header to use. Can be one of the following - * values: - * - * - GESHI_HEADER_PRE: Source is outputted in a "pre" HTML element. - * - GESHI_HEADER_DIV: Source is outputted in a "div" HTML element. - * - GESHI_HEADER_NONE: No header is outputted. - * - * @var int - */ - var $header_type = GESHI_HEADER_PRE; - - /** - * Array of permissions for which lexics should be highlighted - * @var array - */ - var $lexic_permissions = array( - 'KEYWORDS' => array(), - 'COMMENTS' => array('MULTI' => true), - 'REGEXPS' => array(), - 'ESCAPE_CHAR' => true, - 'BRACKETS' => true, - 'SYMBOLS' => false, - 'STRINGS' => true, - 'NUMBERS' => true, - 'METHODS' => true, - 'SCRIPT' => true - ); - - /** - * The time it took to parse the code - * @var double - */ - var $time = 0; - - /** - * The content of the header block - * @var string - */ - var $header_content = ''; - - /** - * The content of the footer block - * @var string - */ - var $footer_content = ''; - - /** - * The style of the header block - * @var string - */ - var $header_content_style = ''; - - /** - * The style of the footer block - * @var string - */ - var $footer_content_style = ''; - - /** - * Tells if a block around the highlighted source should be forced - * if not using line numbering - * @var boolean - */ - var $force_code_block = false; - - /** - * The styles for hyperlinks in the code - * @var array - */ - var $link_styles = array(); - - /** - * Whether important blocks should be recognised or not - * @var boolean - * @deprecated - * @todo REMOVE THIS FUNCTIONALITY! - */ - var $enable_important_blocks = false; - - /** - * Styles for important parts of the code - * @var string - * @deprecated - * @todo As above - rethink the whole idea of important blocks as it is buggy and - * will be hard to implement in 1.2 - */ - var $important_styles = 'font-weight: bold; color: red;'; // Styles for important parts of the code - - /** - * Whether CSS IDs should be added to the code - * @var boolean - */ - var $add_ids = false; - - /** - * Lines that should be highlighted extra - * @var array - */ - var $highlight_extra_lines = array(); - - /** - * Styles of lines that should be highlighted extra - * @var array - */ - var $highlight_extra_lines_styles = array(); - - /** - * Styles of extra-highlighted lines - * @var string - */ - var $highlight_extra_lines_style = 'background-color: #ffc;'; - - /** - * The line ending - * If null, nl2br() will be used on the result string. - * Otherwise, all instances of \n will be replaced with $line_ending - * @var string - */ - var $line_ending = null; - - /** - * Number at which line numbers should start at - * @var int - */ - var $line_numbers_start = 1; - - /** - * The overall style for this code block - * @var string - */ - var $overall_style = 'font-family:monospace;'; - - /** - * The style for the actual code - * @var string - */ - var $code_style = 'font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;'; - - /** - * The overall class for this code block - * @var string - */ - var $overall_class = ''; - - /** - * The overall ID for this code block - * @var string - */ - var $overall_id = ''; - - /** - * Line number styles - * @var string - */ - var $line_style1 = 'font-weight: normal; vertical-align:top;'; - - /** - * Line number styles for fancy lines - * @var string - */ - var $line_style2 = 'font-weight: bold; vertical-align:top;'; - - /** - * Style for line numbers when GESHI_HEADER_PRE_TABLE is chosen - * @var string - */ - var $table_linenumber_style = 'width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;'; - - /** - * Flag for how line numbers are displayed - * @var boolean - */ - var $line_numbers = GESHI_NO_LINE_NUMBERS; - - /** - * Flag to decide if multi line spans are allowed. Set it to false to make sure - * each tag is closed before and reopened after each linefeed. - * @var boolean - */ - var $allow_multiline_span = true; - - /** - * The "nth" value for fancy line highlighting - * @var int - */ - var $line_nth_row = 0; - - /** - * The size of tab stops - * @var int - */ - var $tab_width = 8; - - /** - * Should we use language-defined tab stop widths? - * @var int - */ - var $use_language_tab_width = false; - - /** - * Default target for keyword links - * @var string - */ - var $link_target = ''; - - /** - * The encoding to use for entity encoding - * NOTE: Used with Escape Char Sequences to fix UTF-8 handling (cf. SF#2037598) - * @var string - */ - var $encoding = 'utf-8'; - - /** - * Should keywords be linked? - * @var boolean - */ - var $keyword_links = true; - - /** - * Currently loaded language file - * @var string - * @since 1.0.7.22 - */ - var $loaded_language = ''; - - /** - * Wether the caches needed for parsing are built or not - * - * @var bool - * @since 1.0.8 - */ - var $parse_cache_built = false; - - /** - * Work around for Suhosin Patch with disabled /e modifier - * - * Note from suhosins author in config file: - * <blockquote> - * The /e modifier inside <code>preg_replace()</code> allows code execution. - * Often it is the cause for remote code execution exploits. It is wise to - * deactivate this feature and test where in the application it is used. - * The developer using the /e modifier should be made aware that he should - * use <code>preg_replace_callback()</code> instead - * </blockquote> - * - * @var array - * @since 1.0.8 - */ - var $_kw_replace_group = 0; - var $_rx_key = 0; - - /** - * some "callback parameters" for handle_multiline_regexps - * - * @since 1.0.8 - * @access private - * @var string - */ - var $_hmr_before = ''; - var $_hmr_replace = ''; - var $_hmr_after = ''; - var $_hmr_key = 0; - - /**#@-*/ - - /** - * Creates a new GeSHi object, with source and language - * - * @param string The source code to highlight - * @param string The language to highlight the source with - * @param string The path to the language file directory. <b>This - * is deprecated!</b> I've backported the auto path - * detection from the 1.1.X dev branch, so now it - * should be automatically set correctly. If you have - * renamed the language directory however, you will - * still need to set the path using this parameter or - * {@link GeSHi->set_language_path()} - * @since 1.0.0 - */ - function GeSHi($source = '', $language = '', $path = '') { - if (!empty($source)) { - $this->set_source($source); - } - if (!empty($language)) { - $this->set_language($language); - } - $this->set_language_path($path); - } - - /** - * Setter function to initialize vars from within CI - * @param array $config to set - * @return bool - */ - function initialize($config){ - - if(is_array($config)){ - - foreach($config as $key=>$value){ - if(method_exists('Geshi',$key)){ - $this->$key($value); - }else{ - $this->$key = $value; - } - } - return TRUE; - } - return FALSE; - } - - /** - * Returns an error message associated with the last GeSHi operation, - * or false if no error has occured - * - * @return string|false An error message if there has been an error, else false - * @since 1.0.0 - */ - function error() { - if ($this->error) { - //Put some template variables for debugging here ... - $debug_tpl_vars = array( - '{LANGUAGE}' => $this->language, - '{PATH}' => $this->language_path - ); - $msg = str_replace( - array_keys($debug_tpl_vars), - array_values($debug_tpl_vars), - $this->error_messages[$this->error]); - - return "<br /><strong>GeSHi Error:</strong> $msg (code {$this->error})<br />"; - } - return false; - } - - /** - * Gets a human-readable language name (thanks to Simon Patterson - * for the idea :)) - * - * @return string The name for the current language - * @since 1.0.2 - */ - function get_language_name() { - if (GESHI_ERROR_NO_SUCH_LANG == $this->error) { - return $this->language_data['LANG_NAME'] . ' (Unknown Language)'; - } - return $this->language_data['LANG_NAME']; - } - - /** - * Sets the source code for this object - * - * @param string The source code to highlight - * @since 1.0.0 - */ - function set_source($source) { - $this->source = $source; - $this->highlight_extra_lines = array(); - } - - /** - * Sets the language for this object - * - * @note since 1.0.8 this function won't reset language-settings by default anymore! - * if you need this set $force_reset = true - * - * @param string The name of the language to use - * @since 1.0.0 - */ - function set_language($language, $force_reset = false) { - if ($force_reset) { - $this->loaded_language = false; - } - - //Clean up the language name to prevent malicious code injection - $language = preg_replace('#[^a-zA-Z0-9\-_]#', '', $language); - - $language = strtolower($language); - - //Retreive the full filename - $file_name = $this->language_path . $language . '.php'; - if ($file_name == $this->loaded_language) { - // this language is already loaded! - return; - } - - $this->language = $language; - - $this->error = false; - $this->strict_mode = GESHI_NEVER; - - //Check if we can read the desired file - if (!is_readable($file_name)) { - $this->error = GESHI_ERROR_NO_SUCH_LANG; - return; - } - - // Load the language for parsing - $this->load_language($file_name); - } - - /** - * Sets the path to the directory containing the language files. Note - * that this path is relative to the directory of the script that included - * geshi.php, NOT geshi.php itself. - * - * @param string The path to the language directory - * @since 1.0.0 - * @deprecated The path to the language files should now be automatically - * detected, so this method should no longer be needed. The - * 1.1.X branch handles manual setting of the path differently - * so this method will disappear in 1.2.0. - */ - function set_language_path($path) { - if(strpos($path,':')) { - //Security Fix to prevent external directories using fopen wrappers. - if(DIRECTORY_SEPARATOR == "\\") { - if(!preg_match('#^[a-zA-Z]:#', $path) || false !== strpos($path, ':', 2)) { - return; - } - } else { - return; - } - } - if(preg_match('#[^/a-zA-Z0-9_\.\-\\\s:]#', $path)) { - //Security Fix to prevent external directories using fopen wrappers. - return; - } - if(GESHI_SECURITY_PARANOID && false !== strpos($path, '/.')) { - //Security Fix to prevent external directories using fopen wrappers. - return; - } - if(GESHI_SECURITY_PARANOID && false !== strpos($path, '..')) { - //Security Fix to prevent external directories using fopen wrappers. - return; - } - if ($path) { - $this->language_path = ('/' == $path[strlen($path) - 1]) ? $path : $path . '/'; - $this->set_language($this->language); // otherwise set_language_path has no effect - } - } - - /** - * Sets the type of header to be used. - * - * If GESHI_HEADER_DIV is used, the code is surrounded in a "div".This - * means more source code but more control over tab width and line-wrapping. - * GESHI_HEADER_PRE means that a "pre" is used - less source, but less - * control. Default is GESHI_HEADER_PRE. - * - * From 1.0.7.2, you can use GESHI_HEADER_NONE to specify that no header code - * should be outputted. - * - * @param int The type of header to be used - * @since 1.0.0 - */ - function set_header_type($type) { - //Check if we got a valid header type - if (!in_array($type, array(GESHI_HEADER_NONE, GESHI_HEADER_DIV, - GESHI_HEADER_PRE, GESHI_HEADER_PRE_VALID, GESHI_HEADER_PRE_TABLE))) { - $this->error = GESHI_ERROR_INVALID_HEADER_TYPE; - return; - } - - //Set that new header type - $this->header_type = $type; - } - - /** - * Sets the styles for the code that will be outputted - * when this object is parsed. The style should be a - * string of valid stylesheet declarations - * - * @param string The overall style for the outputted code block - * @param boolean Whether to merge the styles with the current styles or not - * @since 1.0.0 - */ - function set_overall_style($style, $preserve_defaults = false) { - if (!$preserve_defaults) { - $this->overall_style = $style; - } else { - $this->overall_style .= $style; - } - } - - /** - * Sets the overall classname for this block of code. This - * class can then be used in a stylesheet to style this object's - * output - * - * @param string The class name to use for this block of code - * @since 1.0.0 - */ - function set_overall_class($class) { - $this->overall_class = $class; - } - - /** - * Sets the overall id for this block of code. This id can then - * be used in a stylesheet to style this object's output - * - * @param string The ID to use for this block of code - * @since 1.0.0 - */ - function set_overall_id($id) { - $this->overall_id = $id; - } - - /** - * Sets whether CSS classes should be used to highlight the source. Default - * is off, calling this method with no arguments will turn it on - * - * @param boolean Whether to turn classes on or not - * @since 1.0.0 - */ - function enable_classes($flag = true) { - $this->use_classes = ($flag) ? true : false; - } - - /** - * Sets the style for the actual code. This should be a string - * containing valid stylesheet declarations. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * Note: Use this method to override any style changes you made to - * the line numbers if you are using line numbers, else the line of - * code will have the same style as the line number! Consult the - * GeSHi documentation for more information about this. - * - * @param string The style to use for actual code - * @param boolean Whether to merge the current styles with the new styles - * @since 1.0.2 - */ - function set_code_style($style, $preserve_defaults = false) { - if (!$preserve_defaults) { - $this->code_style = $style; - } else { - $this->code_style .= $style; - } - } - - /** - * Sets the styles for the line numbers. - * - * @param string The style for the line numbers that are "normal" - * @param string|boolean If a string, this is the style of the line - * numbers that are "fancy", otherwise if boolean then this - * defines whether the normal styles should be merged with the - * new normal styles or not - * @param boolean If set, is the flag for whether to merge the "fancy" - * styles with the current styles or not - * @since 1.0.2 - */ - function set_line_style($style1, $style2 = '', $preserve_defaults = false) { - //Check if we got 2 or three parameters - if (is_bool($style2)) { - $preserve_defaults = $style2; - $style2 = ''; - } - - //Actually set the new styles - if (!$preserve_defaults) { - $this->line_style1 = $style1; - $this->line_style2 = $style2; - } else { - $this->line_style1 .= $style1; - $this->line_style2 .= $style2; - } - } - - /** - * Sets whether line numbers should be displayed. - * - * Valid values for the first parameter are: - * - * - GESHI_NO_LINE_NUMBERS: Line numbers will not be displayed - * - GESHI_NORMAL_LINE_NUMBERS: Line numbers will be displayed - * - GESHI_FANCY_LINE_NUMBERS: Fancy line numbers will be displayed - * - * For fancy line numbers, the second parameter is used to signal which lines - * are to be fancy. For example, if the value of this parameter is 5 then every - * 5th line will be fancy. - * - * @param int How line numbers should be displayed - * @param int Defines which lines are fancy - * @since 1.0.0 - */ - function enable_line_numbers($flag, $nth_row = 5) { - if (GESHI_NO_LINE_NUMBERS != $flag && GESHI_NORMAL_LINE_NUMBERS != $flag - && GESHI_FANCY_LINE_NUMBERS != $flag) { - $this->error = GESHI_ERROR_INVALID_LINE_NUMBER_TYPE; - } - $this->line_numbers = $flag; - $this->line_nth_row = $nth_row; - } - - /** - * Sets wether spans and other HTML markup generated by GeSHi can - * span over multiple lines or not. Defaults to true to reduce overhead. - * Set it to false if you want to manipulate the output or manually display - * the code in an ordered list. - * - * @param boolean Wether multiline spans are allowed or not - * @since 1.0.7.22 - */ - function enable_multiline_span($flag) { - $this->allow_multiline_span = (bool) $flag; - } - - /** - * Get current setting for multiline spans, see GeSHi->enable_multiline_span(). - * - * @see enable_multiline_span - * @return bool - */ - function get_multiline_span() { - return $this->allow_multiline_span; - } - - /** - * Sets the style for a keyword group. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param int The key of the keyword group to change the styles of - * @param string The style to make the keywords - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @since 1.0.0 - */ - function set_keyword_group_style($key, $style, $preserve_defaults = false) { - //Set the style for this keyword group - if (!$preserve_defaults) { - $this->language_data['STYLES']['KEYWORDS'][$key] = $style; - } else { - $this->language_data['STYLES']['KEYWORDS'][$key] .= $style; - } - - //Update the lexic permissions - if (!isset($this->lexic_permissions['KEYWORDS'][$key])) { - $this->lexic_permissions['KEYWORDS'][$key] = true; - } - } - - /** - * Turns highlighting on/off for a keyword group - * - * @param int The key of the keyword group to turn on or off - * @param boolean Whether to turn highlighting for that group on or off - * @since 1.0.0 - */ - function set_keyword_group_highlighting($key, $flag = true) { - $this->lexic_permissions['KEYWORDS'][$key] = ($flag) ? true : false; - } - - /** - * Sets the styles for comment groups. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param int The key of the comment group to change the styles of - * @param string The style to make the comments - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @since 1.0.0 - */ - function set_comments_style($key, $style, $preserve_defaults = false) { - if (!$preserve_defaults) { - $this->language_data['STYLES']['COMMENTS'][$key] = $style; - } else { - $this->language_data['STYLES']['COMMENTS'][$key] .= $style; - } - } - - /** - * Turns highlighting on/off for comment groups - * - * @param int The key of the comment group to turn on or off - * @param boolean Whether to turn highlighting for that group on or off - * @since 1.0.0 - */ - function set_comments_highlighting($key, $flag = true) { - $this->lexic_permissions['COMMENTS'][$key] = ($flag) ? true : false; - } - - /** - * Sets the styles for escaped characters. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param string The style to make the escape characters - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @since 1.0.0 - */ - function set_escape_characters_style($style, $preserve_defaults = false, $group = 0) { - if (!$preserve_defaults) { - $this->language_data['STYLES']['ESCAPE_CHAR'][$group] = $style; - } else { - $this->language_data['STYLES']['ESCAPE_CHAR'][$group] .= $style; - } - } - - /** - * Turns highlighting on/off for escaped characters - * - * @param boolean Whether to turn highlighting for escape characters on or off - * @since 1.0.0 - */ - function set_escape_characters_highlighting($flag = true) { - $this->lexic_permissions['ESCAPE_CHAR'] = ($flag) ? true : false; - } - - /** - * Sets the styles for brackets. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * This method is DEPRECATED: use set_symbols_style instead. - * This method will be removed in 1.2.X - * - * @param string The style to make the brackets - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @since 1.0.0 - * @deprecated In favour of set_symbols_style - */ - function set_brackets_style($style, $preserve_defaults = false) { - if (!$preserve_defaults) { - $this->language_data['STYLES']['BRACKETS'][0] = $style; - } else { - $this->language_data['STYLES']['BRACKETS'][0] .= $style; - } - } - - /** - * Turns highlighting on/off for brackets - * - * This method is DEPRECATED: use set_symbols_highlighting instead. - * This method will be remove in 1.2.X - * - * @param boolean Whether to turn highlighting for brackets on or off - * @since 1.0.0 - * @deprecated In favour of set_symbols_highlighting - */ - function set_brackets_highlighting($flag) { - $this->lexic_permissions['BRACKETS'] = ($flag) ? true : false; - } - - /** - * Sets the styles for symbols. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param string The style to make the symbols - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @param int Tells the group of symbols for which style should be set. - * @since 1.0.1 - */ - function set_symbols_style($style, $preserve_defaults = false, $group = 0) { - // Update the style of symbols - if (!$preserve_defaults) { - $this->language_data['STYLES']['SYMBOLS'][$group] = $style; - } else { - $this->language_data['STYLES']['SYMBOLS'][$group] .= $style; - } - - // For backward compatibility - if (0 == $group) { - $this->set_brackets_style ($style, $preserve_defaults); - } - } - - /** - * Turns highlighting on/off for symbols - * - * @param boolean Whether to turn highlighting for symbols on or off - * @since 1.0.0 - */ - function set_symbols_highlighting($flag) { - // Update lexic permissions for this symbol group - $this->lexic_permissions['SYMBOLS'] = ($flag) ? true : false; - - // For backward compatibility - $this->set_brackets_highlighting ($flag); - } - - /** - * Sets the styles for strings. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param string The style to make the escape characters - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @param int Tells the group of strings for which style should be set. - * @since 1.0.0 - */ - function set_strings_style($style, $preserve_defaults = false, $group = 0) { - if (!$preserve_defaults) { - $this->language_data['STYLES']['STRINGS'][$group] = $style; - } else { - $this->language_data['STYLES']['STRINGS'][$group] .= $style; - } - } - - /** - * Turns highlighting on/off for strings - * - * @param boolean Whether to turn highlighting for strings on or off - * @since 1.0.0 - */ - function set_strings_highlighting($flag) { - $this->lexic_permissions['STRINGS'] = ($flag) ? true : false; - } - - /** - * Sets the styles for strict code blocks. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param string The style to make the script blocks - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @param int Tells the group of script blocks for which style should be set. - * @since 1.0.8.4 - */ - function set_script_style($style, $preserve_defaults = false, $group = 0) { - // Update the style of symbols - if (!$preserve_defaults) { - $this->language_data['STYLES']['SCRIPT'][$group] = $style; - } else { - $this->language_data['STYLES']['SCRIPT'][$group] .= $style; - } - } - - /** - * Sets the styles for numbers. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param string The style to make the numbers - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @param int Tells the group of numbers for which style should be set. - * @since 1.0.0 - */ - function set_numbers_style($style, $preserve_defaults = false, $group = 0) { - if (!$preserve_defaults) { - $this->language_data['STYLES']['NUMBERS'][$group] = $style; - } else { - $this->language_data['STYLES']['NUMBERS'][$group] .= $style; - } - } - - /** - * Turns highlighting on/off for numbers - * - * @param boolean Whether to turn highlighting for numbers on or off - * @since 1.0.0 - */ - function set_numbers_highlighting($flag) { - $this->lexic_permissions['NUMBERS'] = ($flag) ? true : false; - } - - /** - * Sets the styles for methods. $key is a number that references the - * appropriate "object splitter" - see the language file for the language - * you are highlighting to get this number. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param int The key of the object splitter to change the styles of - * @param string The style to make the methods - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @since 1.0.0 - */ - function set_methods_style($key, $style, $preserve_defaults = false) { - if (!$preserve_defaults) { - $this->language_data['STYLES']['METHODS'][$key] = $style; - } else { - $this->language_data['STYLES']['METHODS'][$key] .= $style; - } - } - - /** - * Turns highlighting on/off for methods - * - * @param boolean Whether to turn highlighting for methods on or off - * @since 1.0.0 - */ - function set_methods_highlighting($flag) { - $this->lexic_permissions['METHODS'] = ($flag) ? true : false; - } - - /** - * Sets the styles for regexps. If $preserve_defaults is - * true, then styles are merged with the default styles, with the - * user defined styles having priority - * - * @param string The style to make the regular expression matches - * @param boolean Whether to merge the new styles with the old or just - * to overwrite them - * @since 1.0.0 - */ - function set_regexps_style($key, $style, $preserve_defaults = false) { - if (!$preserve_defaults) { - $this->language_data['STYLES']['REGEXPS'][$key] = $style; - } else { - $this->language_data['STYLES']['REGEXPS'][$key] .= $style; - } - } - - /** - * Turns highlighting on/off for regexps - * - * @param int The key of the regular expression group to turn on or off - * @param boolean Whether to turn highlighting for the regular expression group on or off - * @since 1.0.0 - */ - function set_regexps_highlighting($key, $flag) { - $this->lexic_permissions['REGEXPS'][$key] = ($flag) ? true : false; - } - - /** - * Sets whether a set of keywords are checked for in a case sensitive manner - * - * @param int The key of the keyword group to change the case sensitivity of - * @param boolean Whether to check in a case sensitive manner or not - * @since 1.0.0 - */ - function set_case_sensitivity($key, $case) { - $this->language_data['CASE_SENSITIVE'][$key] = ($case) ? true : false; - } - - /** - * Sets the case that keywords should use when found. Use the constants: - * - * - GESHI_CAPS_NO_CHANGE: leave keywords as-is - * - GESHI_CAPS_UPPER: convert all keywords to uppercase where found - * - GESHI_CAPS_LOWER: convert all keywords to lowercase where found - * - * @param int A constant specifying what to do with matched keywords - * @since 1.0.1 - */ - function set_case_keywords($case) { - if (in_array($case, array( - GESHI_CAPS_NO_CHANGE, GESHI_CAPS_UPPER, GESHI_CAPS_LOWER))) { - $this->language_data['CASE_KEYWORDS'] = $case; - } - } - - /** - * Sets how many spaces a tab is substituted for - * - * Widths below zero are ignored - * - * @param int The tab width - * @since 1.0.0 - */ - function set_tab_width($width) { - $this->tab_width = intval($width); - - //Check if it fit's the constraints: - if ($this->tab_width < 1) { - //Return it to the default - $this->tab_width = 8; - } - } - - /** - * Sets whether or not to use tab-stop width specifed by language - * - * @param boolean Whether to use language-specific tab-stop widths - * @since 1.0.7.20 - */ - function set_use_language_tab_width($use) { - $this->use_language_tab_width = (bool) $use; - } - - /** - * Returns the tab width to use, based on the current language and user - * preference - * - * @return int Tab width - * @since 1.0.7.20 - */ - function get_real_tab_width() { - if (!$this->use_language_tab_width || - !isset($this->language_data['TAB_WIDTH'])) { - return $this->tab_width; - } else { - return $this->language_data['TAB_WIDTH']; - } - } - - /** - * Enables/disables strict highlighting. Default is off, calling this - * method without parameters will turn it on. See documentation - * for more details on strict mode and where to use it. - * - * @param boolean Whether to enable strict mode or not - * @since 1.0.0 - */ - function enable_strict_mode($mode = true) { - if (GESHI_MAYBE == $this->language_data['STRICT_MODE_APPLIES']) { - $this->strict_mode = ($mode) ? GESHI_ALWAYS : GESHI_NEVER; - } - } - - /** - * Disables all highlighting - * - * @since 1.0.0 - * @todo Rewrite with array traversal - * @deprecated In favour of enable_highlighting - */ - function disable_highlighting() { - $this->enable_highlighting(false); - } - - /** - * Enables all highlighting - * - * The optional flag parameter was added in version 1.0.7.21 and can be used - * to enable (true) or disable (false) all highlighting. - * - * @since 1.0.0 - * @param boolean A flag specifying whether to enable or disable all highlighting - * @todo Rewrite with array traversal - */ - function enable_highlighting($flag = true) { - $flag = $flag ? true : false; - foreach ($this->lexic_permissions as $key => $value) { - if (is_array($value)) { - foreach ($value as $k => $v) { - $this->lexic_permissions[$key][$k] = $flag; - } - } else { - $this->lexic_permissions[$key] = $flag; - } - } - - // Context blocks - $this->enable_important_blocks = $flag; - } - - /** - * Given a file extension, this method returns either a valid geshi language - * name, or the empty string if it couldn't be found - * - * @param string The extension to get a language name for - * @param array A lookup array to use instead of the default one - * @since 1.0.5 - * @todo Re-think about how this method works (maybe make it private and/or make it - * a extension->lang lookup?) - * @todo static? - */ - function get_language_name_from_extension( $extension, $lookup = array() ) { - if ( !is_array($lookup) || empty($lookup)) { - $lookup = array( - 'abap' => array('abap'), - 'actionscript' => array('as'), - 'ada' => array('a', 'ada', 'adb', 'ads'), - 'apache' => array('conf'), - 'asm' => array('ash', 'asm', 'inc'), - 'asp' => array('asp'), - 'bash' => array('sh'), - 'bf' => array('bf'), - 'c' => array('c', 'h'), - 'c_mac' => array('c', 'h'), - 'caddcl' => array(), - 'cadlisp' => array(), - 'cdfg' => array('cdfg'), - 'cobol' => array('cbl'), - 'cpp' => array('cpp', 'hpp', 'C', 'H', 'CPP', 'HPP'), - 'csharp' => array('cs'), - 'css' => array('css'), - 'd' => array('d'), - 'delphi' => array('dpk', 'dpr', 'pp', 'pas'), - 'diff' => array('diff', 'patch'), - 'dos' => array('bat', 'cmd'), - 'gdb' => array('kcrash', 'crash', 'bt'), - 'gettext' => array('po', 'pot'), - 'gml' => array('gml'), - 'gnuplot' => array('plt'), - 'groovy' => array('groovy'), - 'haskell' => array('hs'), - 'html4strict' => array('html', 'htm'), - 'ini' => array('ini', 'desktop'), - 'java' => array('java'), - 'javascript' => array('js'), - 'klonec' => array('kl1'), - 'klonecpp' => array('klx'), - 'latex' => array('tex'), - 'lisp' => array('lisp'), - 'lua' => array('lua'), - 'matlab' => array('m'), - 'mpasm' => array(), - 'mysql' => array('sql'), - 'nsis' => array(), - 'objc' => array(), - 'oobas' => array(), - 'oracle8' => array(), - 'oracle10' => array(), - 'pascal' => array('pas'), - 'perl' => array('pl', 'pm'), - 'php' => array('php', 'php5', 'phtml', 'phps'), - 'povray' => array('pov'), - 'providex' => array('pvc', 'pvx'), - 'prolog' => array('pl'), - 'python' => array('py'), - 'qbasic' => array('bi'), - 'reg' => array('reg'), - 'ruby' => array('rb'), - 'sas' => array('sas'), - 'scala' => array('scala'), - 'scheme' => array('scm'), - 'scilab' => array('sci'), - 'smalltalk' => array('st'), - 'smarty' => array(), - 'tcl' => array('tcl'), - 'vb' => array('bas'), - 'vbnet' => array(), - 'visualfoxpro' => array(), - 'whitespace' => array('ws'), - 'xml' => array('xml', 'svg', 'xrc'), - 'z80' => array('z80', 'asm', 'inc') - ); - } - - foreach ($lookup as $lang => $extensions) { - if (in_array($extension, $extensions)) { - return $lang; - } - } - return ''; - } - - /** - * Given a file name, this method loads its contents in, and attempts - * to set the language automatically. An optional lookup table can be - * passed for looking up the language name. If not specified a default - * table is used - * - * The language table is in the form - * <pre>array( - * 'lang_name' => array('extension', 'extension', ...), - * 'lang_name' ... - * );</pre> - * - * @param string The filename to load the source from - * @param array A lookup array to use instead of the default one - * @todo Complete rethink of this and above method - * @since 1.0.5 - */ - function load_from_file($file_name, $lookup = array()) { - if (is_readable($file_name)) { - $this->set_source(file_get_contents($file_name)); - $this->set_language($this->get_language_name_from_extension(substr(strrchr($file_name, '.'), 1), $lookup)); - } else { - $this->error = GESHI_ERROR_FILE_NOT_READABLE; - } - } - - /** - * Adds a keyword to a keyword group for highlighting - * - * @param int The key of the keyword group to add the keyword to - * @param string The word to add to the keyword group - * @since 1.0.0 - */ - function add_keyword($key, $word) { - if (!in_array($word, $this->language_data['KEYWORDS'][$key])) { - $this->language_data['KEYWORDS'][$key][] = $word; - - //NEW in 1.0.8 don't recompile the whole optimized regexp, simply append it - if ($this->parse_cache_built) { - $subkey = count($this->language_data['CACHED_KEYWORD_LISTS'][$key]) - 1; - $this->language_data['CACHED_KEYWORD_LISTS'][$key][$subkey] .= '|' . preg_quote($word, '/'); - } - } - } - - /** - * Removes a keyword from a keyword group - * - * @param int The key of the keyword group to remove the keyword from - * @param string The word to remove from the keyword group - * @param bool Wether to automatically recompile the optimized regexp list or not. - * Note: if you set this to false and @see GeSHi->parse_code() was already called once, - * for the current language, you have to manually call @see GeSHi->optimize_keyword_group() - * or the removed keyword will stay in cache and still be highlighted! On the other hand - * it might be too expensive to recompile the regexp list for every removal if you want to - * remove a lot of keywords. - * @since 1.0.0 - */ - function remove_keyword($key, $word, $recompile = true) { - $key_to_remove = array_search($word, $this->language_data['KEYWORDS'][$key]); - if ($key_to_remove !== false) { - unset($this->language_data['KEYWORDS'][$key][$key_to_remove]); - - //NEW in 1.0.8, optionally recompile keyword group - if ($recompile && $this->parse_cache_built) { - $this->optimize_keyword_group($key); - } - } - } - - /** - * Creates a new keyword group - * - * @param int The key of the keyword group to create - * @param string The styles for the keyword group - * @param boolean Whether the keyword group is case sensitive ornot - * @param array The words to use for the keyword group - * @since 1.0.0 - */ - function add_keyword_group($key, $styles, $case_sensitive = true, $words = array()) { - $words = (array) $words; - if (empty($words)) { - // empty word lists mess up highlighting - return false; - } - - //Add the new keyword group internally - $this->language_data['KEYWORDS'][$key] = $words; - $this->lexic_permissions['KEYWORDS'][$key] = true; - $this->language_data['CASE_SENSITIVE'][$key] = $case_sensitive; - $this->language_data['STYLES']['KEYWORDS'][$key] = $styles; - - //NEW in 1.0.8, cache keyword regexp - if ($this->parse_cache_built) { - $this->optimize_keyword_group($key); - } - } - - /** - * Removes a keyword group - * - * @param int The key of the keyword group to remove - * @since 1.0.0 - */ - function remove_keyword_group ($key) { - //Remove the keyword group internally - unset($this->language_data['KEYWORDS'][$key]); - unset($this->lexic_permissions['KEYWORDS'][$key]); - unset($this->language_data['CASE_SENSITIVE'][$key]); - unset($this->language_data['STYLES']['KEYWORDS'][$key]); - - //NEW in 1.0.8 - unset($this->language_data['CACHED_KEYWORD_LISTS'][$key]); - } - - /** - * compile optimized regexp list for keyword group - * - * @param int The key of the keyword group to compile & optimize - * @since 1.0.8 - */ - function optimize_keyword_group($key) { - $this->language_data['CACHED_KEYWORD_LISTS'][$key] = - $this->optimize_regexp_list($this->language_data['KEYWORDS'][$key]); - $space_as_whitespace = false; - if(isset($this->language_data['PARSER_CONTROL'])) { - if(isset($this->language_data['PARSER_CONTROL']['KEYWORDS'])) { - if(isset($this->language_data['PARSER_CONTROL']['KEYWORDS']['SPACE_AS_WHITESPACE'])) { - $space_as_whitespace = $this->language_data['PARSER_CONTROL']['KEYWORDS']['SPACE_AS_WHITESPACE']; - } - if(isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$key]['SPACE_AS_WHITESPACE'])) { - if(isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$key]['SPACE_AS_WHITESPACE'])) { - $space_as_whitespace = $this->language_data['PARSER_CONTROL']['KEYWORDS'][$key]['SPACE_AS_WHITESPACE']; - } - } - } - } - if($space_as_whitespace) { - foreach($this->language_data['CACHED_KEYWORD_LISTS'][$key] as $rxk => $rxv) { - $this->language_data['CACHED_KEYWORD_LISTS'][$key][$rxk] = - str_replace(" ", "\\s+", $rxv); - } - } - } - - /** - * Alias for parse_code() function - * @param none - * @return none - */ - function output(){ - return $this->parse_code(); - } - - /** - * Sets the content of the header block - * - * @param string The content of the header block - * @since 1.0.2 - */ - function set_header_content($content) { - $this->header_content = $content; - } - - /** - * Sets the content of the footer block - * - * @param string The content of the footer block - * @since 1.0.2 - */ - function set_footer_content($content) { - $this->footer_content = $content; - } - - /** - * Sets the style for the header content - * - * @param string The style for the header content - * @since 1.0.2 - */ - function set_header_content_style($style) { - $this->header_content_style = $style; - } - - /** - * Sets the style for the footer content - * - * @param string The style for the footer content - * @since 1.0.2 - */ - function set_footer_content_style($style) { - $this->footer_content_style = $style; - } - - /** - * Sets whether to force a surrounding block around - * the highlighted code or not - * - * @param boolean Tells whether to enable or disable this feature - * @since 1.0.7.20 - */ - function enable_inner_code_block($flag) { - $this->force_code_block = (bool)$flag; - } - - /** - * Sets the base URL to be used for keywords - * - * @param int The key of the keyword group to set the URL for - * @param string The URL to set for the group. If {FNAME} is in - * the url somewhere, it is replaced by the keyword - * that the URL is being made for - * @since 1.0.2 - */ - function set_url_for_keyword_group($group, $url) { - $this->language_data['URLS'][$group] = $url; - } - - /** - * Sets styles for links in code - * - * @param int A constant that specifies what state the style is being - * set for - e.g. :hover or :visited - * @param string The styles to use for that state - * @since 1.0.2 - */ - function set_link_styles($type, $styles) { - $this->link_styles[$type] = $styles; - } - - /** - * Sets the target for links in code - * - * @param string The target for links in the code, e.g. _blank - * @since 1.0.3 - */ - function set_link_target($target) { - if (!$target) { - $this->link_target = ''; - } else { - $this->link_target = ' target="' . $target . '"'; - } - } - - /** - * Sets styles for important parts of the code - * - * @param string The styles to use on important parts of the code - * @since 1.0.2 - */ - function set_important_styles($styles) { - $this->important_styles = $styles; - } - - /** - * Sets whether context-important blocks are highlighted - * - * @param boolean Tells whether to enable or disable highlighting of important blocks - * @todo REMOVE THIS SHIZ FROM GESHI! - * @deprecated - * @since 1.0.2 - */ - function enable_important_blocks($flag) { - $this->enable_important_blocks = ( $flag ) ? true : false; - } - - /** - * Whether CSS IDs should be added to each line - * - * @param boolean If true, IDs will be added to each line. - * @since 1.0.2 - */ - function enable_ids($flag = true) { - $this->add_ids = ($flag) ? true : false; - } - - /** - * Specifies which lines to highlight extra - * - * The extra style parameter was added in 1.0.7.21. - * - * @param mixed An array of line numbers to highlight, or just a line - * number on its own. - * @param string A string specifying the style to use for this line. - * If null is specified, the default style is used. - * If false is specified, the line will be removed from - * special highlighting - * @since 1.0.2 - * @todo Some data replication here that could be cut down on - */ - function highlight_lines_extra($lines, $style = null) { - if (is_array($lines)) { - //Split up the job using single lines at a time - foreach ($lines as $line) { - $this->highlight_lines_extra($line, $style); - } - } else { - //Mark the line as being highlighted specially - $lines = intval($lines); - $this->highlight_extra_lines[$lines] = $lines; - - //Decide on which style to use - if ($style === null) { //Check if we should use default style - unset($this->highlight_extra_lines_styles[$lines]); - } else if ($style === false) { //Check if to remove this line - unset($this->highlight_extra_lines[$lines]); - unset($this->highlight_extra_lines_styles[$lines]); - } else { - $this->highlight_extra_lines_styles[$lines] = $style; - } - } - } - - /** - * Sets the style for extra-highlighted lines - * - * @param string The style for extra-highlighted lines - * @since 1.0.2 - */ - function set_highlight_lines_extra_style($styles) { - $this->highlight_extra_lines_style = $styles; - } - - /** - * Sets the line-ending - * - * @param string The new line-ending - * @since 1.0.2 - */ - function set_line_ending($line_ending) { - $this->line_ending = (string)$line_ending; - } - - /** - * Sets what number line numbers should start at. Should - * be a positive integer, and will be converted to one. - * - * <b>Warning:</b> Using this method will add the "start" - * attribute to the <ol> that is used for line numbering. - * This is <b>not</b> valid XHTML strict, so if that's what you - * care about then don't use this method. Firefox is getting - * support for the CSS method of doing this in 1.1 and Opera - * has support for the CSS method, but (of course) IE doesn't - * so it's not worth doing it the CSS way yet. - * - * @param int The number to start line numbers at - * @since 1.0.2 - */ - function start_line_numbers_at($number) { - $this->line_numbers_start = abs(intval($number)); - } - - /** - * Sets the encoding used for htmlspecialchars(), for international - * support. - * - * NOTE: This is not needed for now because htmlspecialchars() is not - * being used (it has a security hole in PHP4 that has not been patched). - * Maybe in a future version it may make a return for speed reasons, but - * I doubt it. - * - * @param string The encoding to use for the source - * @since 1.0.3 - */ - function set_encoding($encoding) { - if ($encoding) { - $this->encoding = strtolower($encoding); - } - } - - /** - * Turns linking of keywords on or off. - * - * @param boolean If true, links will be added to keywords - * @since 1.0.2 - */ - function enable_keyword_links($enable = true) { - $this->keyword_links = (bool) $enable; - } - - /** - * Setup caches needed for styling. This is automatically called in - * parse_code() and get_stylesheet() when appropriate. This function helps - * stylesheet generators as they rely on some style information being - * preprocessed - * - * @since 1.0.8 - * @access private - */ - function build_style_cache() { - //Build the style cache needed to highlight numbers appropriate - if($this->lexic_permissions['NUMBERS']) { - //First check what way highlighting information for numbers are given - if(!isset($this->language_data['NUMBERS'])) { - $this->language_data['NUMBERS'] = 0; - } - - if(is_array($this->language_data['NUMBERS'])) { - $this->language_data['NUMBERS_CACHE'] = $this->language_data['NUMBERS']; - } else { - $this->language_data['NUMBERS_CACHE'] = array(); - if(!$this->language_data['NUMBERS']) { - $this->language_data['NUMBERS'] = - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI; - } - - for($i = 0, $j = $this->language_data['NUMBERS']; $j > 0; ++$i, $j>>=1) { - //Rearrange style indices if required ... - if(isset($this->language_data['STYLES']['NUMBERS'][1<<$i])) { - $this->language_data['STYLES']['NUMBERS'][$i] = - $this->language_data['STYLES']['NUMBERS'][1<<$i]; - unset($this->language_data['STYLES']['NUMBERS'][1<<$i]); - } - - //Check if this bit is set for highlighting - if($j&1) { - //So this bit is set ... - //Check if it belongs to group 0 or the actual stylegroup - if(isset($this->language_data['STYLES']['NUMBERS'][$i])) { - $this->language_data['NUMBERS_CACHE'][$i] = 1 << $i; - } else { - if(!isset($this->language_data['NUMBERS_CACHE'][0])) { - $this->language_data['NUMBERS_CACHE'][0] = 0; - } - $this->language_data['NUMBERS_CACHE'][0] |= 1 << $i; - } - } - } - } - } - } - - /** - * Setup caches needed for parsing. This is automatically called in parse_code() when appropriate. - * This function makes stylesheet generators much faster as they do not need these caches. - * - * @since 1.0.8 - * @access private - */ - function build_parse_cache() { - // cache symbol regexp - //As this is a costy operation, we avoid doing it for multiple groups ... - //Instead we perform it for all symbols at once. - // - //For this to work, we need to reorganize the data arrays. - if ($this->lexic_permissions['SYMBOLS'] && !empty($this->language_data['SYMBOLS'])) { - $this->language_data['MULTIPLE_SYMBOL_GROUPS'] = count($this->language_data['STYLES']['SYMBOLS']) > 1; - - $this->language_data['SYMBOL_DATA'] = array(); - $symbol_preg_multi = array(); // multi char symbols - $symbol_preg_single = array(); // single char symbols - foreach ($this->language_data['SYMBOLS'] as $key => $symbols) { - if (is_array($symbols)) { - foreach ($symbols as $sym) { - $sym = $this->hsc($sym); - if (!isset($this->language_data['SYMBOL_DATA'][$sym])) { - $this->language_data['SYMBOL_DATA'][$sym] = $key; - if (isset($sym[1])) { // multiple chars - $symbol_preg_multi[] = preg_quote($sym, '/'); - } else { // single char - if ($sym == '-') { - // don't trigger range out of order error - $symbol_preg_single[] = '\-'; - } else { - $symbol_preg_single[] = preg_quote($sym, '/'); - } - } - } - } - } else { - $symbols = $this->hsc($symbols); - if (!isset($this->language_data['SYMBOL_DATA'][$symbols])) { - $this->language_data['SYMBOL_DATA'][$symbols] = 0; - if (isset($symbols[1])) { // multiple chars - $symbol_preg_multi[] = preg_quote($symbols, '/'); - } else if ($symbols == '-') { - // don't trigger range out of order error - $symbol_preg_single[] = '\-'; - } else { // single char - $symbol_preg_single[] = preg_quote($symbols, '/'); - } - } - } - } - - //Now we have an array with each possible symbol as the key and the style as the actual data. - //This way we can set the correct style just the moment we highlight ... - // - //Now we need to rewrite our array to get a search string that - $symbol_preg = array(); - if (!empty($symbol_preg_multi)) { - rsort($symbol_preg_multi); - $symbol_preg[] = implode('|', $symbol_preg_multi); - } - if (!empty($symbol_preg_single)) { - rsort($symbol_preg_single); - $symbol_preg[] = '[' . implode('', $symbol_preg_single) . ']'; - } - $this->language_data['SYMBOL_SEARCH'] = implode("|", $symbol_preg); - } - - // cache optimized regexp for keyword matching - // remove old cache - $this->language_data['CACHED_KEYWORD_LISTS'] = array(); - foreach (array_keys($this->language_data['KEYWORDS']) as $key) { - if (!isset($this->lexic_permissions['KEYWORDS'][$key]) || - $this->lexic_permissions['KEYWORDS'][$key]) { - $this->optimize_keyword_group($key); - } - } - - // brackets - if ($this->lexic_permissions['BRACKETS']) { - $this->language_data['CACHE_BRACKET_MATCH'] = array('[', ']', '(', ')', '{', '}'); - if (!$this->use_classes && isset($this->language_data['STYLES']['BRACKETS'][0])) { - $this->language_data['CACHE_BRACKET_REPLACE'] = array( - '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">[|>', - '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">]|>', - '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">(|>', - '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">)|>', - '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">{|>', - '<| style="' . $this->language_data['STYLES']['BRACKETS'][0] . '">}|>', - ); - } - else { - $this->language_data['CACHE_BRACKET_REPLACE'] = array( - '<| class="br0">[|>', - '<| class="br0">]|>', - '<| class="br0">(|>', - '<| class="br0">)|>', - '<| class="br0">{|>', - '<| class="br0">}|>', - ); - } - } - - //Build the parse cache needed to highlight numbers appropriate - if($this->lexic_permissions['NUMBERS']) { - //Check if the style rearrangements have been processed ... - //This also does some preprocessing to check which style groups are useable ... - if(!isset($this->language_data['NUMBERS_CACHE'])) { - $this->build_style_cache(); - } - - //Number format specification - //All this formats are matched case-insensitively! - static $numbers_format = array( - GESHI_NUMBER_INT_BASIC => - '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])([1-9]\d*?|0)(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_INT_CSTYLE => - '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])([1-9]\d*?|0)l(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_BIN_SUFFIX => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])[01]+?[bB](?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_BIN_PREFIX_PERCENT => - '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])%[01]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_BIN_PREFIX_0B => - '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])0b[01]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_OCT_PREFIX => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])0[0-7]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_OCT_PREFIX_0O => - '(?<![0-9a-z_\.%])(?<![\d\.]e[+\-])0o[0-7]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_OCT_SUFFIX => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])[0-7]+?o(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_HEX_PREFIX => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])0x[0-9a-fA-F]+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_HEX_SUFFIX => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\d[0-9a-fA-F]*?[hH](?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_FLT_NONSCI => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\d+?\.\d+?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_FLT_NONSCI_F => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])(?:\d+?(?:\.\d*?)?|\.\d+?)f(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_FLT_SCI_SHORT => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])\.\d+?(?:e[+\-]?\d+?)?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)', - GESHI_NUMBER_FLT_SCI_ZERO => - '(?<![0-9a-z_\.])(?<![\d\.]e[+\-])(?:\d+?(?:\.\d*?)?|\.\d+?)(?:e[+\-]?\d+?)?(?![0-9a-z]|\.(?:[eE][+\-]?)?\d)' - ); - - //At this step we have an associative array with flag groups for a - //specific style or an string denoting a regexp given its index. - $this->language_data['NUMBERS_RXCACHE'] = array(); - foreach($this->language_data['NUMBERS_CACHE'] as $key => $rxdata) { - if(is_string($rxdata)) { - $regexp = $rxdata; - } else { - //This is a bitfield of number flags to highlight: - //Build an array, implode them together and make this the actual RX - $rxuse = array(); - for($i = 1; $i <= $rxdata; $i<<=1) { - if($rxdata & $i) { - $rxuse[] = $numbers_format[$i]; - } - } - $regexp = implode("|", $rxuse); - } - - $this->language_data['NUMBERS_RXCACHE'][$key] = - "/(?<!<\|\/)(?<!<\|!REG3XP)(?<!<\|\/NUM!)(?<!\d\/>)($regexp)(?!(?:<DOT>|[^\<])+>)(?![^<]*>)(?!\|>)(?!\/>)/i"; // - } - } - - $this->parse_cache_built = true; - } - - /** - * Returns the code in $this->source, highlighted and surrounded by the - * nessecary HTML. - * - * This should only be called ONCE, cos it's SLOW! If you want to highlight - * the same source multiple times, you're better off doing a whole lot of - * str_replaces to replace the <span>s - * - * @since 1.0.0 - */ - function parse_code () { - // Start the timer - $start_time = microtime(); - - // Replace all newlines to a common form. - $code = str_replace("\r\n", "\n", $this->source); - $code = str_replace("\r", "\n", $code); - - // Firstly, if there is an error, we won't highlight - if ($this->error) { - //Escape the source for output - $result = $this->hsc($this->source); - - //This fix is related to SF#1923020, but has to be applied regardless of - //actually highlighting symbols. - $result = str_replace(array('<SEMI>', '<PIPE>'), array(';', '|'), $result); - - // Timing is irrelevant - $this->set_time($start_time, $start_time); - $this->finalise($result); - return $result; - } - - // make sure the parse cache is up2date - if (!$this->parse_cache_built) { - $this->build_parse_cache(); - } - - // Initialise various stuff - $length = strlen($code); - $COMMENT_MATCHED = false; - $stuff_to_parse = ''; - $endresult = ''; - - // "Important" selections are handled like multiline comments - // @todo GET RID OF THIS SHIZ - if ($this->enable_important_blocks) { - $this->language_data['COMMENT_MULTI'][GESHI_START_IMPORTANT] = GESHI_END_IMPORTANT; - } - - if ($this->strict_mode) { - // Break the source into bits. Each bit will be a portion of the code - // within script delimiters - for example, HTML between < and > - $k = 0; - $parts = array(); - $matches = array(); - $next_match_pointer = null; - // we use a copy to unset delimiters on demand (when they are not found) - $delim_copy = $this->language_data['SCRIPT_DELIMITERS']; - $i = 0; - while ($i < $length) { - $next_match_pos = $length + 1; // never true - foreach ($delim_copy as $dk => $delimiters) { - if(is_array($delimiters)) { - foreach ($delimiters as $open => $close) { - // make sure the cache is setup properly - if (!isset($matches[$dk][$open])) { - $matches[$dk][$open] = array( - 'next_match' => -1, - 'dk' => $dk, - - 'open' => $open, // needed for grouping of adjacent code blocks (see below) - 'open_strlen' => strlen($open), - - 'close' => $close, - 'close_strlen' => strlen($close), - ); - } - // Get the next little bit for this opening string - if ($matches[$dk][$open]['next_match'] < $i) { - // only find the next pos if it was not already cached - $open_pos = strpos($code, $open, $i); - if ($open_pos === false) { - // no match for this delimiter ever - unset($delim_copy[$dk][$open]); - continue; - } - $matches[$dk][$open]['next_match'] = $open_pos; - } - if ($matches[$dk][$open]['next_match'] < $next_match_pos) { - //So we got a new match, update the close_pos - $matches[$dk][$open]['close_pos'] = - strpos($code, $close, $matches[$dk][$open]['next_match']+1); - - $next_match_pointer =& $matches[$dk][$open]; - $next_match_pos = $matches[$dk][$open]['next_match']; - } - } - } else { - //So we should match an RegExp as Strict Block ... - /** - * The value in $delimiters is expected to be an RegExp - * containing exactly 2 matching groups: - * - Group 1 is the opener - * - Group 2 is the closer - */ - if(!GESHI_PHP_PRE_433 && //Needs proper rewrite to work with PHP >=4.3.0; 4.3.3 is guaranteed to work. - preg_match($delimiters, $code, $matches_rx, PREG_OFFSET_CAPTURE, $i)) { - //We got a match ... - if(isset($matches_rx['start']) && isset($matches_rx['end'])) - { - $matches[$dk] = array( - 'next_match' => $matches_rx['start'][1], - 'dk' => $dk, - - 'close_strlen' => strlen($matches_rx['end'][0]), - 'close_pos' => $matches_rx['end'][1], - ); - } else { - $matches[$dk] = array( - 'next_match' => $matches_rx[1][1], - 'dk' => $dk, - - 'close_strlen' => strlen($matches_rx[2][0]), - 'close_pos' => $matches_rx[2][1], - ); - } - } else { - // no match for this delimiter ever - unset($delim_copy[$dk]); - continue; - } - - if ($matches[$dk]['next_match'] <= $next_match_pos) { - $next_match_pointer =& $matches[$dk]; - $next_match_pos = $matches[$dk]['next_match']; - } - } - } - - // non-highlightable text - $parts[$k] = array( - 1 => substr($code, $i, $next_match_pos - $i) - ); - ++$k; - - if ($next_match_pos > $length) { - // out of bounds means no next match was found - break; - } - - // highlightable code - $parts[$k][0] = $next_match_pointer['dk']; - - //Only combine for non-rx script blocks - if(is_array($delim_copy[$next_match_pointer['dk']])) { - // group adjacent script blocks, e.g. <foobar><asdf> should be one block, not three! - $i = $next_match_pos + $next_match_pointer['open_strlen']; - while (true) { - $close_pos = strpos($code, $next_match_pointer['close'], $i); - if ($close_pos == false) { - break; - } - $i = $close_pos + $next_match_pointer['close_strlen']; - if ($i == $length) { - break; - } - if ($code[$i] == $next_match_pointer['open'][0] && ($next_match_pointer['open_strlen'] == 1 || - substr($code, $i, $next_match_pointer['open_strlen']) == $next_match_pointer['open'])) { - // merge adjacent but make sure we don't merge things like <tag><!-- comment --> - foreach ($matches as $submatches) { - foreach ($submatches as $match) { - if ($match['next_match'] == $i) { - // a different block already matches here! - break 3; - } - } - } - } else { - break; - } - } - } else { - $close_pos = $next_match_pointer['close_pos'] + $next_match_pointer['close_strlen']; - $i = $close_pos; - } - - if ($close_pos === false) { - // no closing delimiter found! - $parts[$k][1] = substr($code, $next_match_pos); - ++$k; - break; - } else { - $parts[$k][1] = substr($code, $next_match_pos, $i - $next_match_pos); - ++$k; - } - } - unset($delim_copy, $next_match_pointer, $next_match_pos, $matches); - $num_parts = $k; - - if ($num_parts == 1 && $this->strict_mode == GESHI_MAYBE) { - // when we have only one part, we don't have anything to highlight at all. - // if we have a "maybe" strict language, this should be handled as highlightable code - $parts = array( - 0 => array( - 0 => '', - 1 => '' - ), - 1 => array( - 0 => null, - 1 => $parts[0][1] - ) - ); - $num_parts = 2; - } - - } else { - // Not strict mode - simply dump the source into - // the array at index 1 (the first highlightable block) - $parts = array( - 0 => array( - 0 => '', - 1 => '' - ), - 1 => array( - 0 => null, - 1 => $code - ) - ); - $num_parts = 2; - } - - //Unset variables we won't need any longer - unset($code); - - //Preload some repeatedly used values regarding hardquotes ... - $hq = isset($this->language_data['HARDQUOTE']) ? $this->language_data['HARDQUOTE'][0] : false; - $hq_strlen = strlen($hq); - - //Preload if line numbers are to be generated afterwards - //Added a check if line breaks should be forced even without line numbers, fixes SF#1727398 - $check_linenumbers = $this->line_numbers != GESHI_NO_LINE_NUMBERS || - !empty($this->highlight_extra_lines) || !$this->allow_multiline_span; - - //preload the escape char for faster checking ... - $escaped_escape_char = $this->hsc($this->language_data['ESCAPE_CHAR']); - - // this is used for single-line comments - $sc_disallowed_before = ""; - $sc_disallowed_after = ""; - - if (isset($this->language_data['PARSER_CONTROL'])) { - if (isset($this->language_data['PARSER_CONTROL']['COMMENTS'])) { - if (isset($this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_BEFORE'])) { - $sc_disallowed_before = $this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_BEFORE']; - } - if (isset($this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_AFTER'])) { - $sc_disallowed_after = $this->language_data['PARSER_CONTROL']['COMMENTS']['DISALLOWED_AFTER']; - } - } - } - - //Fix for SF#1932083: Multichar Quotemarks unsupported - $is_string_starter = array(); - if ($this->lexic_permissions['STRINGS']) { - foreach ($this->language_data['QUOTEMARKS'] as $quotemark) { - if (!isset($is_string_starter[$quotemark[0]])) { - $is_string_starter[$quotemark[0]] = (string)$quotemark; - } else if (is_string($is_string_starter[$quotemark[0]])) { - $is_string_starter[$quotemark[0]] = array( - $is_string_starter[$quotemark[0]], - $quotemark); - } else { - $is_string_starter[$quotemark[0]][] = $quotemark; - } - } - } - - // Now we go through each part. We know that even-indexed parts are - // code that shouldn't be highlighted, and odd-indexed parts should - // be highlighted - for ($key = 0; $key < $num_parts; ++$key) { - $STRICTATTRS = ''; - - // If this block should be highlighted... - if (!($key & 1)) { - // Else not a block to highlight - $endresult .= $this->hsc($parts[$key][1]); - unset($parts[$key]); - continue; - } - - $result = ''; - $part = $parts[$key][1]; - - $highlight_part = true; - if ($this->strict_mode && !is_null($parts[$key][0])) { - // get the class key for this block of code - $script_key = $parts[$key][0]; - $highlight_part = $this->language_data['HIGHLIGHT_STRICT_BLOCK'][$script_key]; - if ($this->language_data['STYLES']['SCRIPT'][$script_key] != '' && - $this->lexic_permissions['SCRIPT']) { - // Add a span element around the source to - // highlight the overall source block - if (!$this->use_classes && - $this->language_data['STYLES']['SCRIPT'][$script_key] != '') { - $attributes = ' style="' . $this->language_data['STYLES']['SCRIPT'][$script_key] . '"'; - } else { - $attributes = ' class="sc' . $script_key . '"'; - } - $result .= "<span$attributes>"; - $STRICTATTRS = $attributes; - } - } - - if ($highlight_part) { - // Now, highlight the code in this block. This code - // is really the engine of GeSHi (along with the method - // parse_non_string_part). - - // cache comment regexps incrementally - $next_comment_regexp_key = ''; - $next_comment_regexp_pos = -1; - $next_comment_multi_pos = -1; - $next_comment_single_pos = -1; - $comment_regexp_cache_per_key = array(); - $comment_multi_cache_per_key = array(); - $comment_single_cache_per_key = array(); - $next_open_comment_multi = ''; - $next_comment_single_key = ''; - $escape_regexp_cache_per_key = array(); - $next_escape_regexp_key = ''; - $next_escape_regexp_pos = -1; - - $length = strlen($part); - for ($i = 0; $i < $length; ++$i) { - // Get the next char - $char = $part[$i]; - $char_len = 1; - - // update regexp comment cache if needed - if (isset($this->language_data['COMMENT_REGEXP']) && $next_comment_regexp_pos < $i) { - $next_comment_regexp_pos = $length; - foreach ($this->language_data['COMMENT_REGEXP'] as $comment_key => $regexp) { - $match_i = false; - if (isset($comment_regexp_cache_per_key[$comment_key]) && - ($comment_regexp_cache_per_key[$comment_key]['pos'] >= $i || - $comment_regexp_cache_per_key[$comment_key]['pos'] === false)) { - // we have already matched something - if ($comment_regexp_cache_per_key[$comment_key]['pos'] === false) { - // this comment is never matched - continue; - } - $match_i = $comment_regexp_cache_per_key[$comment_key]['pos']; - } else if ( - //This is to allow use of the offset parameter in preg_match and stay as compatible with older PHP versions as possible - (GESHI_PHP_PRE_433 && preg_match($regexp, substr($part, $i), $match, PREG_OFFSET_CAPTURE)) || - (!GESHI_PHP_PRE_433 && preg_match($regexp, $part, $match, PREG_OFFSET_CAPTURE, $i)) - ) { - $match_i = $match[0][1]; - if (GESHI_PHP_PRE_433) { - $match_i += $i; - } - - $comment_regexp_cache_per_key[$comment_key] = array( - 'key' => $comment_key, - 'length' => strlen($match[0][0]), - 'pos' => $match_i - ); - } else { - $comment_regexp_cache_per_key[$comment_key]['pos'] = false; - continue; - } - - if ($match_i !== false && $match_i < $next_comment_regexp_pos) { - $next_comment_regexp_pos = $match_i; - $next_comment_regexp_key = $comment_key; - if ($match_i === $i) { - break; - } - } - } - } - - $string_started = false; - - if (isset($is_string_starter[$char])) { - // Possibly the start of a new string ... - - //Check which starter it was ... - //Fix for SF#1932083: Multichar Quotemarks unsupported - if (is_array($is_string_starter[$char])) { - $char_new = ''; - foreach ($is_string_starter[$char] as $testchar) { - if ($testchar === substr($part, $i, strlen($testchar)) && - strlen($testchar) > strlen($char_new)) { - $char_new = $testchar; - $string_started = true; - } - } - if ($string_started) { - $char = $char_new; - } - } else { - $testchar = $is_string_starter[$char]; - if ($testchar === substr($part, $i, strlen($testchar))) { - $char = $testchar; - $string_started = true; - } - } - $char_len = strlen($char); - } - - if ($string_started && ($i != $next_comment_regexp_pos)) { - // Hand out the correct style information for this string - $string_key = array_search($char, $this->language_data['QUOTEMARKS']); - if (!isset($this->language_data['STYLES']['STRINGS'][$string_key]) || - !isset($this->language_data['STYLES']['ESCAPE_CHAR'][$string_key])) { - $string_key = 0; - } - - // parse the stuff before this - $result .= $this->parse_non_string_part($stuff_to_parse); - $stuff_to_parse = ''; - - if (!$this->use_classes) { - $string_attributes = ' style="' . $this->language_data['STYLES']['STRINGS'][$string_key] . '"'; - } else { - $string_attributes = ' class="st'.$string_key.'"'; - } - - // now handle the string - $string = "<span$string_attributes>" . GeSHi::hsc($char); - $start = $i + $char_len; - $string_open = true; - - if(empty($this->language_data['ESCAPE_REGEXP'])) { - $next_escape_regexp_pos = $length; - } - - do { - //Get the regular ending pos ... - $close_pos = strpos($part, $char, $start); - if(false === $close_pos) { - $close_pos = $length; - } - - if($this->lexic_permissions['ESCAPE_CHAR']) { - // update escape regexp cache if needed - if (isset($this->language_data['ESCAPE_REGEXP']) && $next_escape_regexp_pos < $start) { - $next_escape_regexp_pos = $length; - foreach ($this->language_data['ESCAPE_REGEXP'] as $escape_key => $regexp) { - $match_i = false; - if (isset($escape_regexp_cache_per_key[$escape_key]) && - ($escape_regexp_cache_per_key[$escape_key]['pos'] >= $start || - $escape_regexp_cache_per_key[$escape_key]['pos'] === false)) { - // we have already matched something - if ($escape_regexp_cache_per_key[$escape_key]['pos'] === false) { - // this comment is never matched - continue; - } - $match_i = $escape_regexp_cache_per_key[$escape_key]['pos']; - } else if ( - //This is to allow use of the offset parameter in preg_match and stay as compatible with older PHP versions as possible - (GESHI_PHP_PRE_433 && preg_match($regexp, substr($part, $start), $match, PREG_OFFSET_CAPTURE)) || - (!GESHI_PHP_PRE_433 && preg_match($regexp, $part, $match, PREG_OFFSET_CAPTURE, $start)) - ) { - $match_i = $match[0][1]; - if (GESHI_PHP_PRE_433) { - $match_i += $start; - } - - $escape_regexp_cache_per_key[$escape_key] = array( - 'key' => $escape_key, - 'length' => strlen($match[0][0]), - 'pos' => $match_i - ); - } else { - $escape_regexp_cache_per_key[$escape_key]['pos'] = false; - continue; - } - - if ($match_i !== false && $match_i < $next_escape_regexp_pos) { - $next_escape_regexp_pos = $match_i; - $next_escape_regexp_key = $escape_key; - if ($match_i === $start) { - break; - } - } - } - } - - //Find the next simple escape position - if('' != $this->language_data['ESCAPE_CHAR']) { - $simple_escape = strpos($part, $this->language_data['ESCAPE_CHAR'], $start); - if(false === $simple_escape) { - $simple_escape = $length; - } - } else { - $simple_escape = $length; - } - } else { - $next_escape_regexp_pos = $length; - $simple_escape = $length; - } - - if($simple_escape < $next_escape_regexp_pos && - $simple_escape < $length && - $simple_escape < $close_pos) { - //The nexxt escape sequence is a simple one ... - $es_pos = $simple_escape; - - //Add the stuff not in the string yet ... - $string .= $this->hsc(substr($part, $start, $es_pos - $start)); - - //Get the style for this escaped char ... - if (!$this->use_classes) { - $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR'][0] . '"'; - } else { - $escape_char_attributes = ' class="es0"'; - } - - //Add the style for the escape char ... - $string .= "<span$escape_char_attributes>" . - GeSHi::hsc($this->language_data['ESCAPE_CHAR']); - - //Get the byte AFTER the ESCAPE_CHAR we just found - $es_char = $part[$es_pos + 1]; - if ($es_char == "\n") { - // don't put a newline around newlines - $string .= "</span>\n"; - $start = $es_pos + 2; - } else if (ord($es_char) >= 128) { - //This is an non-ASCII char (UTF8 or single byte) - //This code tries to work around SF#2037598 ... - if(function_exists('mb_substr')) { - $es_char_m = mb_substr(substr($part, $es_pos+1, 16), 0, 1, $this->encoding); - $string .= $es_char_m . '</span>'; - } else if (!GESHI_PHP_PRE_433 && 'utf-8' == $this->encoding) { - if(preg_match("/[\xC2-\xDF][\x80-\xBF]". - "|\xE0[\xA0-\xBF][\x80-\xBF]". - "|[\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}". - "|\xED[\x80-\x9F][\x80-\xBF]". - "|\xF0[\x90-\xBF][\x80-\xBF]{2}". - "|[\xF1-\xF3][\x80-\xBF]{3}". - "|\xF4[\x80-\x8F][\x80-\xBF]{2}/s", - $part, $es_char_m, null, $es_pos + 1)) { - $es_char_m = $es_char_m[0]; - } else { - $es_char_m = $es_char; - } - $string .= $this->hsc($es_char_m) . '</span>'; - } else { - $es_char_m = $this->hsc($es_char); - } - $start = $es_pos + strlen($es_char_m) + 1; - } else { - $string .= $this->hsc($es_char) . '</span>'; - $start = $es_pos + 2; - } - } else if ($next_escape_regexp_pos < $length && - $next_escape_regexp_pos < $close_pos) { - $es_pos = $next_escape_regexp_pos; - //Add the stuff not in the string yet ... - $string .= $this->hsc(substr($part, $start, $es_pos - $start)); - - //Get the key and length of this match ... - $escape = $escape_regexp_cache_per_key[$next_escape_regexp_key]; - $escape_str = substr($part, $es_pos, $escape['length']); - $escape_key = $escape['key']; - - //Get the style for this escaped char ... - if (!$this->use_classes) { - $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR'][$escape_key] . '"'; - } else { - $escape_char_attributes = ' class="es' . $escape_key . '"'; - } - - //Add the style for the escape char ... - $string .= "<span$escape_char_attributes>" . - $this->hsc($escape_str) . '</span>'; - - $start = $es_pos + $escape['length']; - } else { - //Copy the remainder of the string ... - $string .= $this->hsc(substr($part, $start, $close_pos - $start + $char_len)) . '</span>'; - $start = $close_pos + $char_len; - $string_open = false; - } - } while($string_open); - - if ($check_linenumbers) { - // Are line numbers used? If, we should end the string before - // the newline and begin it again (so when <li>s are put in the source - // remains XHTML compliant) - // note to self: This opens up possibility of config files specifying - // that languages can/cannot have multiline strings??? - $string = str_replace("\n", "</span>\n<span$string_attributes>", $string); - } - - $result .= $string; - $string = ''; - $i = $start - 1; - continue; - } else if ($this->lexic_permissions['STRINGS'] && $hq && $hq[0] == $char && - substr($part, $i, $hq_strlen) == $hq && ($i != $next_comment_regexp_pos)) { - // The start of a hard quoted string - if (!$this->use_classes) { - $string_attributes = ' style="' . $this->language_data['STYLES']['STRINGS']['HARD'] . '"'; - $escape_char_attributes = ' style="' . $this->language_data['STYLES']['ESCAPE_CHAR']['HARD'] . '"'; - } else { - $string_attributes = ' class="st_h"'; - $escape_char_attributes = ' class="es_h"'; - } - // parse the stuff before this - $result .= $this->parse_non_string_part($stuff_to_parse); - $stuff_to_parse = ''; - - // now handle the string - $string = ''; - - // look for closing quote - $start = $i + $hq_strlen; - while ($close_pos = strpos($part, $this->language_data['HARDQUOTE'][1], $start)) { - $start = $close_pos + 1; - if ($this->lexic_permissions['ESCAPE_CHAR'] && $part[$close_pos - 1] == $this->language_data['HARDCHAR']) { - // make sure this quote is not escaped - foreach ($this->language_data['HARDESCAPE'] as $hardescape) { - if (substr($part, $close_pos - 1, strlen($hardescape)) == $hardescape) { - // check wether this quote is escaped or if it is something like '\\' - $escape_char_pos = $close_pos - 1; - while ($escape_char_pos > 0 - && $part[$escape_char_pos - 1] == $this->language_data['HARDCHAR']) { - --$escape_char_pos; - } - if (($close_pos - $escape_char_pos) & 1) { - // uneven number of escape chars => this quote is escaped - continue 2; - } - } - } - } - - // found closing quote - break; - } - - //Found the closing delimiter? - if (!$close_pos) { - // span till the end of this $part when no closing delimiter is found - $close_pos = $length; - } - - //Get the actual string - $string = substr($part, $i, $close_pos - $i + 1); - $i = $close_pos; - - // handle escape chars and encode html chars - // (special because when we have escape chars within our string they may not be escaped) - if ($this->lexic_permissions['ESCAPE_CHAR'] && $this->language_data['ESCAPE_CHAR']) { - $start = 0; - $new_string = ''; - while ($es_pos = strpos($string, $this->language_data['ESCAPE_CHAR'], $start)) { - // hmtl escape stuff before - $new_string .= $this->hsc(substr($string, $start, $es_pos - $start)); - // check if this is a hard escape - foreach ($this->language_data['HARDESCAPE'] as $hardescape) { - if (substr($string, $es_pos, strlen($hardescape)) == $hardescape) { - // indeed, this is a hardescape - $new_string .= "<span$escape_char_attributes>" . - $this->hsc($hardescape) . '</span>'; - $start = $es_pos + strlen($hardescape); - continue 2; - } - } - // not a hard escape, but a normal escape - // they come in pairs of two - $c = 0; - while (isset($string[$es_pos + $c]) && isset($string[$es_pos + $c + 1]) - && $string[$es_pos + $c] == $this->language_data['ESCAPE_CHAR'] - && $string[$es_pos + $c + 1] == $this->language_data['ESCAPE_CHAR']) { - $c += 2; - } - if ($c) { - $new_string .= "<span$escape_char_attributes>" . - str_repeat($escaped_escape_char, $c) . - '</span>'; - $start = $es_pos + $c; - } else { - // this is just a single lonely escape char... - $new_string .= $escaped_escape_char; - $start = $es_pos + 1; - } - } - $string = $new_string . $this->hsc(substr($string, $start)); - } else { - $string = $this->hsc($string); - } - - if ($check_linenumbers) { - // Are line numbers used? If, we should end the string before - // the newline and begin it again (so when <li>s are put in the source - // remains XHTML compliant) - // note to self: This opens up possibility of config files specifying - // that languages can/cannot have multiline strings??? - $string = str_replace("\n", "</span>\n<span$string_attributes>", $string); - } - - $result .= "<span$string_attributes>" . $string . '</span>'; - $string = ''; - continue; - } else { - //Have a look for regexp comments - if ($i == $next_comment_regexp_pos) { - $COMMENT_MATCHED = true; - $comment = $comment_regexp_cache_per_key[$next_comment_regexp_key]; - $test_str = $this->hsc(substr($part, $i, $comment['length'])); - - //@todo If remove important do remove here - if ($this->lexic_permissions['COMMENTS']['MULTI']) { - if (!$this->use_classes) { - $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS'][$comment['key']] . '"'; - } else { - $attributes = ' class="co' . $comment['key'] . '"'; - } - - $test_str = "<span$attributes>" . $test_str . "</span>"; - - // Short-cut through all the multiline code - if ($check_linenumbers) { - // strreplace to put close span and open span around multiline newlines - $test_str = str_replace( - "\n", "</span>\n<span$attributes>", - str_replace("\n ", "\n ", $test_str) - ); - } - } - - $i += $comment['length'] - 1; - - // parse the rest - $result .= $this->parse_non_string_part($stuff_to_parse); - $stuff_to_parse = ''; - } - - // If we haven't matched a regexp comment, try multi-line comments - if (!$COMMENT_MATCHED) { - // Is this a multiline comment? - if (!empty($this->language_data['COMMENT_MULTI']) && $next_comment_multi_pos < $i) { - $next_comment_multi_pos = $length; - foreach ($this->language_data['COMMENT_MULTI'] as $open => $close) { - $match_i = false; - if (isset($comment_multi_cache_per_key[$open]) && - ($comment_multi_cache_per_key[$open] >= $i || - $comment_multi_cache_per_key[$open] === false)) { - // we have already matched something - if ($comment_multi_cache_per_key[$open] === false) { - // this comment is never matched - continue; - } - $match_i = $comment_multi_cache_per_key[$open]; - } else if (($match_i = stripos($part, $open, $i)) !== false) { - $comment_multi_cache_per_key[$open] = $match_i; - } else { - $comment_multi_cache_per_key[$open] = false; - continue; - } - if ($match_i !== false && $match_i < $next_comment_multi_pos) { - $next_comment_multi_pos = $match_i; - $next_open_comment_multi = $open; - if ($match_i === $i) { - break; - } - } - } - } - if ($i == $next_comment_multi_pos) { - $open = $next_open_comment_multi; - $close = $this->language_data['COMMENT_MULTI'][$open]; - $open_strlen = strlen($open); - $close_strlen = strlen($close); - $COMMENT_MATCHED = true; - $test_str_match = $open; - //@todo If remove important do remove here - if ($this->lexic_permissions['COMMENTS']['MULTI'] || - $open == GESHI_START_IMPORTANT) { - if ($open != GESHI_START_IMPORTANT) { - if (!$this->use_classes) { - $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS']['MULTI'] . '"'; - } else { - $attributes = ' class="coMULTI"'; - } - $test_str = "<span$attributes>" . $this->hsc($open); - } else { - if (!$this->use_classes) { - $attributes = ' style="' . $this->important_styles . '"'; - } else { - $attributes = ' class="imp"'; - } - - // We don't include the start of the comment if it's an - // "important" part - $test_str = "<span$attributes>"; - } - } else { - $test_str = $this->hsc($open); - } - - $close_pos = strpos( $part, $close, $i + $open_strlen ); - - if ($close_pos === false) { - $close_pos = $length; - } - - // Short-cut through all the multiline code - $rest_of_comment = $this->hsc(substr($part, $i + $open_strlen, $close_pos - $i - $open_strlen + $close_strlen)); - if (($this->lexic_permissions['COMMENTS']['MULTI'] || - $test_str_match == GESHI_START_IMPORTANT) && - $check_linenumbers) { - - // strreplace to put close span and open span around multiline newlines - $test_str .= str_replace( - "\n", "</span>\n<span$attributes>", - str_replace("\n ", "\n ", $rest_of_comment) - ); - } else { - $test_str .= $rest_of_comment; - } - - if ($this->lexic_permissions['COMMENTS']['MULTI'] || - $test_str_match == GESHI_START_IMPORTANT) { - $test_str .= '</span>'; - } - - $i = $close_pos + $close_strlen - 1; - - // parse the rest - $result .= $this->parse_non_string_part($stuff_to_parse); - $stuff_to_parse = ''; - } - } - - // If we haven't matched a multiline comment, try single-line comments - if (!$COMMENT_MATCHED) { - // cache potential single line comment occurances - if (!empty($this->language_data['COMMENT_SINGLE']) && $next_comment_single_pos < $i) { - $next_comment_single_pos = $length; - foreach ($this->language_data['COMMENT_SINGLE'] as $comment_key => $comment_mark) { - $match_i = false; - if (isset($comment_single_cache_per_key[$comment_key]) && - ($comment_single_cache_per_key[$comment_key] >= $i || - $comment_single_cache_per_key[$comment_key] === false)) { - // we have already matched something - if ($comment_single_cache_per_key[$comment_key] === false) { - // this comment is never matched - continue; - } - $match_i = $comment_single_cache_per_key[$comment_key]; - } else if ( - // case sensitive comments - ($this->language_data['CASE_SENSITIVE'][GESHI_COMMENTS] && - ($match_i = stripos($part, $comment_mark, $i)) !== false) || - // non case sensitive - (!$this->language_data['CASE_SENSITIVE'][GESHI_COMMENTS] && - (($match_i = strpos($part, $comment_mark, $i)) !== false))) { - $comment_single_cache_per_key[$comment_key] = $match_i; - } else { - $comment_single_cache_per_key[$comment_key] = false; - continue; - } - if ($match_i !== false && $match_i < $next_comment_single_pos) { - $next_comment_single_pos = $match_i; - $next_comment_single_key = $comment_key; - if ($match_i === $i) { - break; - } - } - } - } - if ($next_comment_single_pos == $i) { - $comment_key = $next_comment_single_key; - $comment_mark = $this->language_data['COMMENT_SINGLE'][$comment_key]; - $com_len = strlen($comment_mark); - - // This check will find special variables like $# in bash - // or compiler directives of Delphi beginning {$ - if ((empty($sc_disallowed_before) || ($i == 0) || - (false === strpos($sc_disallowed_before, $part[$i-1]))) && - (empty($sc_disallowed_after) || ($length <= $i + $com_len) || - (false === strpos($sc_disallowed_after, $part[$i + $com_len])))) - { - // this is a valid comment - $COMMENT_MATCHED = true; - if ($this->lexic_permissions['COMMENTS'][$comment_key]) { - if (!$this->use_classes) { - $attributes = ' style="' . $this->language_data['STYLES']['COMMENTS'][$comment_key] . '"'; - } else { - $attributes = ' class="co' . $comment_key . '"'; - } - $test_str = "<span$attributes>" . $this->hsc($this->change_case($comment_mark)); - } else { - $test_str = $this->hsc($comment_mark); - } - - //Check if this comment is the last in the source - $close_pos = strpos($part, "\n", $i); - $oops = false; - if ($close_pos === false) { - $close_pos = $length; - $oops = true; - } - $test_str .= $this->hsc(substr($part, $i + $com_len, $close_pos - $i - $com_len)); - if ($this->lexic_permissions['COMMENTS'][$comment_key]) { - $test_str .= "</span>"; - } - - // Take into account that the comment might be the last in the source - if (!$oops) { - $test_str .= "\n"; - } - - $i = $close_pos; - - // parse the rest - $result .= $this->parse_non_string_part($stuff_to_parse); - $stuff_to_parse = ''; - } - } - } - } - - // Where are we adding this char? - if (!$COMMENT_MATCHED) { - $stuff_to_parse .= $char; - } else { - $result .= $test_str; - unset($test_str); - $COMMENT_MATCHED = false; - } - } - // Parse the last bit - $result .= $this->parse_non_string_part($stuff_to_parse); - $stuff_to_parse = ''; - } else { - $result .= $this->hsc($part); - } - // Close the <span> that surrounds the block - if ($STRICTATTRS != '') { - $result = str_replace("\n", "</span>\n<span$STRICTATTRS>", $result); - $result .= '</span>'; - } - - $endresult .= $result; - unset($part, $parts[$key], $result); - } - - //This fix is related to SF#1923020, but has to be applied regardless of - //actually highlighting symbols. - /** NOTE: memorypeak #3 */ - $endresult = str_replace(array('<SEMI>', '<PIPE>'), array(';', '|'), $endresult); - -// // Parse the last stuff (redundant?) -// $result .= $this->parse_non_string_part($stuff_to_parse); - - // Lop off the very first and last spaces -// $result = substr($result, 1, -1); - - // We're finished: stop timing - $this->set_time($start_time, microtime()); - - $this->finalise($endresult); - return $endresult; - } - - /** - * Swaps out spaces and tabs for HTML indentation. Not needed if - * the code is in a pre block... - * - * @param string The source to indent (reference!) - * @since 1.0.0 - * @access private - */ - function indent(&$result) { - /// Replace tabs with the correct number of spaces - if (false !== strpos($result, "\t")) { - $lines = explode("\n", $result); - $result = null;//Save memory while we process the lines individually - $tab_width = $this->get_real_tab_width(); - $tab_string = ' ' . str_repeat(' ', $tab_width); - - for ($key = 0, $n = count($lines); $key < $n; $key++) { - $line = $lines[$key]; - if (false === strpos($line, "\t")) { - continue; - } - - $pos = 0; - $length = strlen($line); - $lines[$key] = ''; // reduce memory - - $IN_TAG = false; - for ($i = 0; $i < $length; ++$i) { - $char = $line[$i]; - // Simple engine to work out whether we're in a tag. - // If we are we modify $pos. This is so we ignore HTML - // in the line and only workout the tab replacement - // via the actual content of the string - // This test could be improved to include strings in the - // html so that < or > would be allowed in user's styles - // (e.g. quotes: '<' '>'; or similar) - if ($IN_TAG) { - if ('>' == $char) { - $IN_TAG = false; - } - $lines[$key] .= $char; - } else if ('<' == $char) { - $IN_TAG = true; - $lines[$key] .= '<'; - } else if ('&' == $char) { - $substr = substr($line, $i + 3, 5); - $posi = strpos($substr, ';'); - if (false === $posi) { - ++$pos; - } else { - $pos -= $posi+2; - } - $lines[$key] .= $char; - } else if ("\t" == $char) { - $str = ''; - // OPTIMISE - move $strs out. Make an array: - // $tabs = array( - // 1 => ' ', - // 2 => ' ', - // 3 => ' ' etc etc - // to use instead of building a string every time - $tab_end_width = $tab_width - ($pos % $tab_width); //Moved out of the look as it doesn't change within the loop - if (($pos & 1) || 1 == $tab_end_width) { - $str .= substr($tab_string, 6, $tab_end_width); - } else { - $str .= substr($tab_string, 0, $tab_end_width+5); - } - $lines[$key] .= $str; - $pos += $tab_end_width; - - if (false === strpos($line, "\t", $i + 1)) { - $lines[$key] .= substr($line, $i + 1); - break; - } - } else if (0 == $pos && ' ' == $char) { - $lines[$key] .= ' '; - ++$pos; - } else { - $lines[$key] .= $char; - ++$pos; - } - } - } - $result = implode("\n", $lines); - unset($lines);//We don't need the lines separated beyond this --- free them! - } - // Other whitespace - // BenBE: Fix to reduce the number of replacements to be done - $result = preg_replace('/^ /m', ' ', $result); - $result = str_replace(' ', ' ', $result); - - if ($this->line_numbers == GESHI_NO_LINE_NUMBERS && $this->header_type != GESHI_HEADER_PRE_TABLE) { - if ($this->line_ending === null) { - $result = nl2br($result); - } else { - $result = str_replace("\n", $this->line_ending, $result); - } - } - } - - /** - * Changes the case of a keyword for those languages where a change is asked for - * - * @param string The keyword to change the case of - * @return string The keyword with its case changed - * @since 1.0.0 - * @access private - */ - function change_case($instr) { - switch ($this->language_data['CASE_KEYWORDS']) { - case GESHI_CAPS_UPPER: - return strtoupper($instr); - case GESHI_CAPS_LOWER: - return strtolower($instr); - default: - return $instr; - } - } - - /** - * Handles replacements of keywords to include markup and links if requested - * - * @param string The keyword to add the Markup to - * @return The HTML for the match found - * @since 1.0.8 - * @access private - * - * @todo Get rid of ender in keyword links - */ - function handle_keyword_replace($match) { - $k = $this->_kw_replace_group; - $keyword = $match[0]; - - $before = ''; - $after = ''; - - if ($this->keyword_links) { - // Keyword links have been ebabled - - if (isset($this->language_data['URLS'][$k]) && - $this->language_data['URLS'][$k] != '') { - // There is a base group for this keyword - - // Old system: strtolower - //$keyword = ( $this->language_data['CASE_SENSITIVE'][$group] ) ? $keyword : strtolower($keyword); - // New system: get keyword from language file to get correct case - if (!$this->language_data['CASE_SENSITIVE'][$k] && - strpos($this->language_data['URLS'][$k], '{FNAME}') !== false) { - foreach ($this->language_data['KEYWORDS'][$k] as $word) { - if (strcasecmp($word, $keyword) == 0) { - break; - } - } - } else { - $word = $keyword; - } - - $before = '<|UR1|"' . - str_replace( - array( - '{FNAME}', - '{FNAMEL}', - '{FNAMEU}', - '.'), - array( - str_replace('+', '%20', urlencode($this->hsc($word))), - str_replace('+', '%20', urlencode($this->hsc(strtolower($word)))), - str_replace('+', '%20', urlencode($this->hsc(strtoupper($word)))), - '<DOT>'), - $this->language_data['URLS'][$k] - ) . '">'; - $after = '</a>'; - } - } - - return $before . '<|/'. $k .'/>' . $this->change_case($keyword) . '|>' . $after; - } - - /** - * handles regular expressions highlighting-definitions with callback functions - * - * @note this is a callback, don't use it directly - * - * @param array the matches array - * @return The highlighted string - * @since 1.0.8 - * @access private - */ - function handle_regexps_callback($matches) { - // before: "' style=\"' . call_user_func(\"$func\", '\\1') . '\"\\1|>'", - return ' style="' . call_user_func($this->language_data['STYLES']['REGEXPS'][$this->_rx_key], $matches[1]) . '"'. $matches[1] . '|>'; - } - - /** - * handles newlines in REGEXPS matches. Set the _hmr_* vars before calling this - * - * @note this is a callback, don't use it directly - * - * @param array the matches array - * @return string - * @since 1.0.8 - * @access private - */ - function handle_multiline_regexps($matches) { - $before = $this->_hmr_before; - $after = $this->_hmr_after; - if ($this->_hmr_replace) { - $replace = $this->_hmr_replace; - $search = array(); - - foreach (array_keys($matches) as $k) { - $search[] = '\\' . $k; - } - - $before = str_replace($search, $matches, $before); - $after = str_replace($search, $matches, $after); - $replace = str_replace($search, $matches, $replace); - } else { - $replace = $matches[0]; - } - return $before - . '<|!REG3XP' . $this->_hmr_key .'!>' - . str_replace("\n", "|>\n<|!REG3XP" . $this->_hmr_key . '!>', $replace) - . '|>' - . $after; - } - - /** - * Takes a string that has no strings or comments in it, and highlights - * stuff like keywords, numbers and methods. - * - * @param string The string to parse for keyword, numbers etc. - * @since 1.0.0 - * @access private - * @todo BUGGY! Why? Why not build string and return? - */ - function parse_non_string_part($stuff_to_parse) { - $stuff_to_parse = ' ' . $this->hsc($stuff_to_parse); - - // Highlight keywords - $disallowed_before = "(?<![a-zA-Z0-9\$_\|\#;>|^&"; - $disallowed_after = "(?![a-zA-Z0-9_\|%\\-&;"; - if ($this->lexic_permissions['STRINGS']) { - $quotemarks = preg_quote(implode($this->language_data['QUOTEMARKS']), '/'); - $disallowed_before .= $quotemarks; - $disallowed_after .= $quotemarks; - } - $disallowed_before .= "])"; - $disallowed_after .= "])"; - - $parser_control_pergroup = false; - if (isset($this->language_data['PARSER_CONTROL'])) { - if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'])) { - $x = 0; // check wether per-keyword-group parser_control is enabled - if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE'])) { - $disallowed_before = $this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_BEFORE']; - ++$x; - } - if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER'])) { - $disallowed_after = $this->language_data['PARSER_CONTROL']['KEYWORDS']['DISALLOWED_AFTER']; - ++$x; - } - $parser_control_pergroup = (count($this->language_data['PARSER_CONTROL']['KEYWORDS']) - $x) > 0; - } - } - - foreach (array_keys($this->language_data['KEYWORDS']) as $k) { - if (!isset($this->lexic_permissions['KEYWORDS'][$k]) || - $this->lexic_permissions['KEYWORDS'][$k]) { - - $case_sensitive = $this->language_data['CASE_SENSITIVE'][$k]; - $modifiers = $case_sensitive ? '' : 'i'; - - // NEW in 1.0.8 - per-keyword-group parser control - $disallowed_before_local = $disallowed_before; - $disallowed_after_local = $disallowed_after; - if ($parser_control_pergroup && isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k])) { - if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE'])) { - $disallowed_before_local = - $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_BEFORE']; - } - - if (isset($this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER'])) { - $disallowed_after_local = - $this->language_data['PARSER_CONTROL']['KEYWORDS'][$k]['DISALLOWED_AFTER']; - } - } - - $this->_kw_replace_group = $k; - - //NEW in 1.0.8, the cached regexp list - // since we don't want PHP / PCRE to crash due to too large patterns we split them into smaller chunks - for ($set = 0, $set_length = count($this->language_data['CACHED_KEYWORD_LISTS'][$k]); $set < $set_length; ++$set) { - $keywordset =& $this->language_data['CACHED_KEYWORD_LISTS'][$k][$set]; - // Might make a more unique string for putting the number in soon - // Basically, we don't put the styles in yet because then the styles themselves will - // get highlighted if the language has a CSS keyword in it (like CSS, for example ;)) - $stuff_to_parse = preg_replace_callback( - "/$disallowed_before_local({$keywordset})(?!\<DOT\>(?:htm|php))$disallowed_after_local/$modifiers", - array($this, 'handle_keyword_replace'), - $stuff_to_parse - ); - } - } - } - - // Regular expressions - foreach ($this->language_data['REGEXPS'] as $key => $regexp) { - if ($this->lexic_permissions['REGEXPS'][$key]) { - if (is_array($regexp)) { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - // produce valid HTML when we match multiple lines - $this->_hmr_replace = $regexp[GESHI_REPLACE]; - $this->_hmr_before = $regexp[GESHI_BEFORE]; - $this->_hmr_key = $key; - $this->_hmr_after = $regexp[GESHI_AFTER]; - $stuff_to_parse = preg_replace_callback( - "/" . $regexp[GESHI_SEARCH] . "/{$regexp[GESHI_MODIFIERS]}", - array($this, 'handle_multiline_regexps'), - $stuff_to_parse); - $this->_hmr_replace = false; - $this->_hmr_before = ''; - $this->_hmr_after = ''; - } else { - $stuff_to_parse = preg_replace( - '/' . $regexp[GESHI_SEARCH] . '/' . $regexp[GESHI_MODIFIERS], - $regexp[GESHI_BEFORE] . '<|!REG3XP'. $key .'!>' . $regexp[GESHI_REPLACE] . '|>' . $regexp[GESHI_AFTER], - $stuff_to_parse); - } - } else { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - // produce valid HTML when we match multiple lines - $this->_hmr_key = $key; - $stuff_to_parse = preg_replace_callback( "/(" . $regexp . ")/", - array($this, 'handle_multiline_regexps'), $stuff_to_parse); - $this->_hmr_key = ''; - } else { - $stuff_to_parse = preg_replace( "/(" . $regexp . ")/", "<|!REG3XP$key!>\\1|>", $stuff_to_parse); - } - } - } - } - - // Highlight numbers. As of 1.0.8 we support different types of numbers - $numbers_found = false; - if ($this->lexic_permissions['NUMBERS'] && preg_match('#\d#', $stuff_to_parse )) { - $numbers_found = true; - - //For each of the formats ... - foreach($this->language_data['NUMBERS_RXCACHE'] as $id => $regexp) { - //Check if it should be highlighted ... - $stuff_to_parse = preg_replace($regexp, "<|/NUM!$id/>\\1|>", $stuff_to_parse); - } - } - - // - // Now that's all done, replace /[number]/ with the correct styles - // - foreach (array_keys($this->language_data['KEYWORDS']) as $k) { - if (!$this->use_classes) { - $attributes = ' style="' . - (isset($this->language_data['STYLES']['KEYWORDS'][$k]) ? - $this->language_data['STYLES']['KEYWORDS'][$k] : "") . '"'; - } else { - $attributes = ' class="kw' . $k . '"'; - } - $stuff_to_parse = str_replace("<|/$k/>", "<|$attributes>", $stuff_to_parse); - } - - if ($numbers_found) { - // Put number styles in - foreach($this->language_data['NUMBERS_RXCACHE'] as $id => $regexp) { - //Commented out for now, as this needs some review ... - // if ($numbers_permissions & $id) { - //Get the appropriate style ... - //Checking for unset styles is done by the style cache builder ... - if (!$this->use_classes) { - $attributes = ' style="' . $this->language_data['STYLES']['NUMBERS'][$id] . '"'; - } else { - $attributes = ' class="nu'.$id.'"'; - } - - //Set in the correct styles ... - $stuff_to_parse = str_replace("/NUM!$id/", $attributes, $stuff_to_parse); - // } - } - } - - // Highlight methods and fields in objects - if ($this->lexic_permissions['METHODS'] && $this->language_data['OOLANG']) { - $oolang_spaces = "[\s]*"; - $oolang_before = ""; - $oolang_after = "[a-zA-Z][a-zA-Z0-9_]*"; - if (isset($this->language_data['PARSER_CONTROL'])) { - if (isset($this->language_data['PARSER_CONTROL']['OOLANG'])) { - if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_BEFORE'])) { - $oolang_before = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_BEFORE']; - } - if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_AFTER'])) { - $oolang_after = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_AFTER']; - } - if (isset($this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_SPACES'])) { - $oolang_spaces = $this->language_data['PARSER_CONTROL']['OOLANG']['MATCH_SPACES']; - } - } - } - - foreach ($this->language_data['OBJECT_SPLITTERS'] as $key => $splitter) { - if (false !== strpos($stuff_to_parse, $splitter)) { - if (!$this->use_classes) { - $attributes = ' style="' . $this->language_data['STYLES']['METHODS'][$key] . '"'; - } else { - $attributes = ' class="me' . $key . '"'; - } - $stuff_to_parse = preg_replace("/($oolang_before)(" . preg_quote($this->language_data['OBJECT_SPLITTERS'][$key], '/') . ")($oolang_spaces)($oolang_after)/", "\\1\\2\\3<|$attributes>\\4|>", $stuff_to_parse); - } - } - } - - // - // Highlight brackets. Yes, I've tried adding a semi-colon to this list. - // You try it, and see what happens ;) - // TODO: Fix lexic permissions not converting entities if shouldn't - // be highlighting regardless - // - if ($this->lexic_permissions['BRACKETS']) { - $stuff_to_parse = str_replace( $this->language_data['CACHE_BRACKET_MATCH'], - $this->language_data['CACHE_BRACKET_REPLACE'], $stuff_to_parse ); - } - - - //FIX for symbol highlighting ... - if ($this->lexic_permissions['SYMBOLS'] && !empty($this->language_data['SYMBOLS'])) { - //Get all matches and throw away those witin a block that is already highlighted... (i.e. matched by a regexp) - $n_symbols = preg_match_all("/<\|(?:<DOT>|[^>])+>(?:(?!\|>).*?)\|>|<\/a>|(?:" . $this->language_data['SYMBOL_SEARCH'] . ")+(?![^<]+?>)/", $stuff_to_parse, $pot_symbols, PREG_OFFSET_CAPTURE | PREG_SET_ORDER); - $global_offset = 0; - for ($s_id = 0; $s_id < $n_symbols; ++$s_id) { - $symbol_match = $pot_symbols[$s_id][0][0]; - if (strpos($symbol_match, '<') !== false || strpos($symbol_match, '>') !== false) { - // already highlighted blocks _must_ include either < or > - // so if this conditional applies, we have to skip this match - // BenBE: UNLESS the block contains <SEMI> or <PIPE> - if(strpos($symbol_match, '<SEMI>') === false && - strpos($symbol_match, '<PIPE>') === false) { - continue; - } - } - - // if we reach this point, we have a valid match which needs to be highlighted - - $symbol_length = strlen($symbol_match); - $symbol_offset = $pot_symbols[$s_id][0][1]; - unset($pot_symbols[$s_id]); - $symbol_end = $symbol_length + $symbol_offset; - $symbol_hl = ""; - - // if we have multiple styles, we have to handle them properly - if ($this->language_data['MULTIPLE_SYMBOL_GROUPS']) { - $old_sym = -1; - // Split the current stuff to replace into its atomic symbols ... - preg_match_all("/" . $this->language_data['SYMBOL_SEARCH'] . "/", $symbol_match, $sym_match_syms, PREG_PATTERN_ORDER); - foreach ($sym_match_syms[0] as $sym_ms) { - //Check if consequtive symbols belong to the same group to save output ... - if (isset($this->language_data['SYMBOL_DATA'][$sym_ms]) - && ($this->language_data['SYMBOL_DATA'][$sym_ms] != $old_sym)) { - if (-1 != $old_sym) { - $symbol_hl .= "|>"; - } - $old_sym = $this->language_data['SYMBOL_DATA'][$sym_ms]; - if (!$this->use_classes) { - $symbol_hl .= '<| style="' . $this->language_data['STYLES']['SYMBOLS'][$old_sym] . '">'; - } else { - $symbol_hl .= '<| class="sy' . $old_sym . '">'; - } - } - $symbol_hl .= $sym_ms; - } - unset($sym_match_syms); - - //Close remaining tags and insert the replacement at the right position ... - //Take caution if symbol_hl is empty to avoid doubled closing spans. - if (-1 != $old_sym) { - $symbol_hl .= "|>"; - } - } else { - if (!$this->use_classes) { - $symbol_hl = '<| style="' . $this->language_data['STYLES']['SYMBOLS'][0] . '">'; - } else { - $symbol_hl = '<| class="sy0">'; - } - $symbol_hl .= $symbol_match . '|>'; - } - - $stuff_to_parse = substr_replace($stuff_to_parse, $symbol_hl, $symbol_offset + $global_offset, $symbol_length); - - // since we replace old text with something of different size, - // we'll have to keep track of the differences - $global_offset += strlen($symbol_hl) - $symbol_length; - } - } - //FIX for symbol highlighting ... - - // Add class/style for regexps - foreach (array_keys($this->language_data['REGEXPS']) as $key) { - if ($this->lexic_permissions['REGEXPS'][$key]) { - if (is_callable($this->language_data['STYLES']['REGEXPS'][$key])) { - $this->_rx_key = $key; - $stuff_to_parse = preg_replace_callback("/!REG3XP$key!(.*)\|>/U", - array($this, 'handle_regexps_callback'), - $stuff_to_parse); - } else { - if (!$this->use_classes) { - $attributes = ' style="' . $this->language_data['STYLES']['REGEXPS'][$key] . '"'; - } else { - if (is_array($this->language_data['REGEXPS'][$key]) && - array_key_exists(GESHI_CLASS, $this->language_data['REGEXPS'][$key])) { - $attributes = ' class="' . - $this->language_data['REGEXPS'][$key][GESHI_CLASS] . '"'; - } else { - $attributes = ' class="re' . $key . '"'; - } - } - $stuff_to_parse = str_replace("!REG3XP$key!", "$attributes", $stuff_to_parse); - } - } - } - - // Replace <DOT> with . for urls - $stuff_to_parse = str_replace('<DOT>', '.', $stuff_to_parse); - // Replace <|UR1| with <a href= for urls also - if (isset($this->link_styles[GESHI_LINK])) { - if ($this->use_classes) { - $stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' href=', $stuff_to_parse); - } else { - $stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' style="' . $this->link_styles[GESHI_LINK] . '" href=', $stuff_to_parse); - } - } else { - $stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' href=', $stuff_to_parse); - } - - // - // NOW we add the span thingy ;) - // - - $stuff_to_parse = str_replace('<|', '<span', $stuff_to_parse); - $stuff_to_parse = str_replace ( '|>', '</span>', $stuff_to_parse ); - return substr($stuff_to_parse, 1); - } - - /** - * Sets the time taken to parse the code - * - * @param microtime The time when parsing started - * @param microtime The time when parsing ended - * @since 1.0.2 - * @access private - */ - function set_time($start_time, $end_time) { - $start = explode(' ', $start_time); - $end = explode(' ', $end_time); - $this->time = $end[0] + $end[1] - $start[0] - $start[1]; - } - - /** - * Gets the time taken to parse the code - * - * @return double The time taken to parse the code - * @since 1.0.2 - */ - function get_time() { - return $this->time; - } - - /** - * Merges arrays recursively, overwriting values of the first array with values of later arrays - * - * @since 1.0.8 - * @access private - */ - function merge_arrays() { - $arrays = func_get_args(); - $narrays = count($arrays); - - // check arguments - // comment out if more performance is necessary (in this case the foreach loop will trigger a warning if the argument is not an array) - for ($i = 0; $i < $narrays; $i ++) { - if (!is_array($arrays[$i])) { - // also array_merge_recursive returns nothing in this case - trigger_error('Argument #' . ($i+1) . ' is not an array - trying to merge array with scalar! Returning false!', E_USER_WARNING); - return false; - } - } - - // the first array is in the output set in every case - $ret = $arrays[0]; - - // merege $ret with the remaining arrays - for ($i = 1; $i < $narrays; $i ++) { - foreach ($arrays[$i] as $key => $value) { - if (is_array($value) && isset($ret[$key])) { - // if $ret[$key] is not an array you try to merge an scalar value with an array - the result is not defined (incompatible arrays) - // in this case the call will trigger an E_USER_WARNING and the $ret[$key] will be false. - $ret[$key] = $this->merge_arrays($ret[$key], $value); - } else { - $ret[$key] = $value; - } - } - } - - return $ret; - } - - /** - * Gets language information and stores it for later use - * - * @param string The filename of the language file you want to load - * @since 1.0.0 - * @access private - * @todo Needs to load keys for lexic permissions for keywords, regexps etc - */ - function load_language($file_name) { - if ($file_name == $this->loaded_language) { - // this file is already loaded! - return; - } - - //Prepare some stuff before actually loading the language file - $this->loaded_language = $file_name; - $this->parse_cache_built = false; - $this->enable_highlighting(); - $language_data = array(); - - //Load the language file - require $file_name; - - // Perhaps some checking might be added here later to check that - // $language data is a valid thing but maybe not - $this->language_data = $language_data; - - // Set strict mode if should be set - $this->strict_mode = $this->language_data['STRICT_MODE_APPLIES']; - - // Set permissions for all lexics to true - // so they'll be highlighted by default - foreach (array_keys($this->language_data['KEYWORDS']) as $key) { - if (!empty($this->language_data['KEYWORDS'][$key])) { - $this->lexic_permissions['KEYWORDS'][$key] = true; - } else { - $this->lexic_permissions['KEYWORDS'][$key] = false; - } - } - - foreach (array_keys($this->language_data['COMMENT_SINGLE']) as $key) { - $this->lexic_permissions['COMMENTS'][$key] = true; - } - foreach (array_keys($this->language_data['REGEXPS']) as $key) { - $this->lexic_permissions['REGEXPS'][$key] = true; - } - - // for BenBE and future code reviews: - // we can use empty here since we only check for existance and emptiness of an array - // if it is not an array at all but rather false or null this will work as intended as well - // even if $this->language_data['PARSER_CONTROL'] is undefined this won't trigger a notice - if (!empty($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS'])) { - foreach ($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS'] as $flag => $value) { - // it's either true or false and maybe is true as well - $perm = $value !== GESHI_NEVER; - if ($flag == 'ALL') { - $this->enable_highlighting($perm); - continue; - } - if (!isset($this->lexic_permissions[$flag])) { - // unknown lexic permission - continue; - } - if (is_array($this->lexic_permissions[$flag])) { - foreach ($this->lexic_permissions[$flag] as $key => $val) { - $this->lexic_permissions[$flag][$key] = $perm; - } - } else { - $this->lexic_permissions[$flag] = $perm; - } - } - unset($this->language_data['PARSER_CONTROL']['ENABLE_FLAGS']); - } - - //Fix: Problem where hardescapes weren't handled if no ESCAPE_CHAR was given - //You need to set one for HARDESCAPES only in this case. - if(!isset($this->language_data['HARDCHAR'])) { - $this->language_data['HARDCHAR'] = $this->language_data['ESCAPE_CHAR']; - } - - //NEW in 1.0.8: Allow styles to be loaded from a separate file to override defaults - $style_filename = substr($file_name, 0, -4) . '.style.php'; - if (is_readable($style_filename)) { - //Clear any style_data that could have been set before ... - if (isset($style_data)) { - unset($style_data); - } - - //Read the Style Information from the style file - include $style_filename; - - //Apply the new styles to our current language styles - if (isset($style_data) && is_array($style_data)) { - $this->language_data['STYLES'] = - $this->merge_arrays($this->language_data['STYLES'], $style_data); - } - } - } - - /** - * Takes the parsed code and various options, and creates the HTML - * surrounding it to make it look nice. - * - * @param string The code already parsed (reference!) - * @since 1.0.0 - * @access private - */ - function finalise(&$parsed_code) { - // Remove end parts of important declarations - // This is BUGGY!! My fault for bad code: fix coming in 1.2 - // @todo Remove this crap - if ($this->enable_important_blocks && - (strpos($parsed_code, $this->hsc(GESHI_START_IMPORTANT)) === false)) { - $parsed_code = str_replace($this->hsc(GESHI_END_IMPORTANT), '', $parsed_code); - } - - // Add HTML whitespace stuff if we're using the <div> header - if ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID) { - $this->indent($parsed_code); - } - - // purge some unnecessary stuff - /** NOTE: memorypeak #1 */ - $parsed_code = preg_replace('#<span[^>]+>(\s*)</span>#', '\\1', $parsed_code); - - // If we are using IDs for line numbers, there needs to be an overall - // ID set to prevent collisions. - if ($this->add_ids && !$this->overall_id) { - $this->overall_id = 'geshi-' . substr(md5(microtime()), 0, 4); - } - - // Get code into lines - /** NOTE: memorypeak #2 */ - $code = explode("\n", $parsed_code); - $parsed_code = $this->header(); - - // If we're using line numbers, we insert <li>s and appropriate - // markup to style them (otherwise we don't need to do anything) - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS && $this->header_type != GESHI_HEADER_PRE_TABLE) { - // If we're using the <pre> header, we shouldn't add newlines because - // the <pre> will line-break them (and the <li>s already do this for us) - $ls = ($this->header_type != GESHI_HEADER_PRE && $this->header_type != GESHI_HEADER_PRE_VALID) ? "\n" : ''; - - // Set vars to defaults for following loop - $i = 0; - - // Foreach line... - for ($i = 0, $n = count($code); $i < $n;) { - //Reset the attributes for a new line ... - $attrs = array(); - - // Make lines have at least one space in them if they're empty - // BenBE: Checking emptiness using trim instead of relying on blanks - if ('' == trim($code[$i])) { - $code[$i] = ' '; - } - - // If this is a "special line"... - if ($this->line_numbers == GESHI_FANCY_LINE_NUMBERS && - $i % $this->line_nth_row == ($this->line_nth_row - 1)) { - // Set the attributes to style the line - if ($this->use_classes) { - //$attr = ' class="li2"'; - $attrs['class'][] = 'li2'; - $def_attr = ' class="de2"'; - } else { - //$attr = ' style="' . $this->line_style2 . '"'; - $attrs['style'][] = $this->line_style2; - // This style "covers up" the special styles set for special lines - // so that styles applied to special lines don't apply to the actual - // code on that line - $def_attr = ' style="' . $this->code_style . '"'; - } - } else { - if ($this->use_classes) { - //$attr = ' class="li1"'; - $attrs['class'][] = 'li1'; - $def_attr = ' class="de1"'; - } else { - //$attr = ' style="' . $this->line_style1 . '"'; - $attrs['style'][] = $this->line_style1; - $def_attr = ' style="' . $this->code_style . '"'; - } - } - - //Check which type of tag to insert for this line - if ($this->header_type == GESHI_HEADER_PRE_VALID) { - $start = "<pre$def_attr>"; - $end = '</pre>'; - } else { - // Span or div? - $start = "<div$def_attr>"; - $end = '</div>'; - } - - ++$i; - - // Are we supposed to use ids? If so, add them - if ($this->add_ids) { - $attrs['id'][] = "$this->overall_id-$i"; - } - - //Is this some line with extra styles??? - if (in_array($i, $this->highlight_extra_lines)) { - if ($this->use_classes) { - if (isset($this->highlight_extra_lines_styles[$i])) { - $attrs['class'][] = "lx$i"; - } else { - $attrs['class'][] = "ln-xtra"; - } - } else { - array_push($attrs['style'], $this->get_line_style($i)); - } - } - - // Add in the line surrounded by appropriate list HTML - $attr_string = ''; - foreach ($attrs as $key => $attr) { - $attr_string .= ' ' . $key . '="' . implode(' ', $attr) . '"'; - } - - $parsed_code .= "<li$attr_string>$start{$code[$i-1]}$end</li>$ls"; - unset($code[$i - 1]); - } - } else { - $n = count($code); - if ($this->use_classes) { - $attributes = ' class="de1"'; - } else { - $attributes = ' style="'. $this->code_style .'"'; - } - if ($this->header_type == GESHI_HEADER_PRE_VALID) { - $parsed_code .= '<pre'. $attributes .'>'; - } elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - if ($this->use_classes) { - $attrs = ' class="ln"'; - } else { - $attrs = ' style="'. $this->table_linenumber_style .'"'; - } - $parsed_code .= '<td'.$attrs.'><pre'.$attributes.'>'; - // get linenumbers - // we don't merge it with the for below, since it should be better for - // memory consumption this way - // @todo: but... actually it would still be somewhat nice to merge the two loops - // the mem peaks are at different positions - for ($i = 0; $i < $n; ++$i) { - $close = 0; - // fancy lines - if ($this->line_numbers == GESHI_FANCY_LINE_NUMBERS && - $i % $this->line_nth_row == ($this->line_nth_row - 1)) { - // Set the attributes to style the line - if ($this->use_classes) { - $parsed_code .= '<span class="xtra li2"><span class="de2">'; - } else { - // This style "covers up" the special styles set for special lines - // so that styles applied to special lines don't apply to the actual - // code on that line - $parsed_code .= '<span style="display:block;' . $this->line_style2 . '">' - .'<span style="' . $this->code_style .'">'; - } - $close += 2; - } - //Is this some line with extra styles??? - if (in_array($i + 1, $this->highlight_extra_lines)) { - if ($this->use_classes) { - if (isset($this->highlight_extra_lines_styles[$i])) { - $parsed_code .= "<span class=\"xtra lx$i\">"; - } else { - $parsed_code .= "<span class=\"xtra ln-xtra\">"; - } - } else { - $parsed_code .= "<span style=\"display:block;" . $this->get_line_style($i) . "\">"; - } - ++$close; - } - $parsed_code .= $this->line_numbers_start + $i; - if ($close) { - $parsed_code .= str_repeat('</span>', $close); - } else if ($i != $n) { - $parsed_code .= "\n"; - } - } - $parsed_code .= '</pre></td><td'.$attributes.'>'; - } - $parsed_code .= '<pre'. $attributes .'>'; - } - // No line numbers, but still need to handle highlighting lines extra. - // Have to use divs so the full width of the code is highlighted - $close = 0; - for ($i = 0; $i < $n; ++$i) { - // Make lines have at least one space in them if they're empty - // BenBE: Checking emptiness using trim instead of relying on blanks - if ('' == trim($code[$i])) { - $code[$i] = ' '; - } - // fancy lines - if ($this->line_numbers == GESHI_FANCY_LINE_NUMBERS && - $i % $this->line_nth_row == ($this->line_nth_row - 1)) { - // Set the attributes to style the line - if ($this->use_classes) { - $parsed_code .= '<span class="xtra li2"><span class="de2">'; - } else { - // This style "covers up" the special styles set for special lines - // so that styles applied to special lines don't apply to the actual - // code on that line - $parsed_code .= '<span style="display:block;' . $this->line_style2 . '">' - .'<span style="' . $this->code_style .'">'; - } - $close += 2; - } - //Is this some line with extra styles??? - if (in_array($i + 1, $this->highlight_extra_lines)) { - if ($this->use_classes) { - if (isset($this->highlight_extra_lines_styles[$i])) { - $parsed_code .= "<span class=\"xtra lx$i\">"; - } else { - $parsed_code .= "<span class=\"xtra ln-xtra\">"; - } - } else { - $parsed_code .= "<span style=\"display:block;" . $this->get_line_style($i) . "\">"; - } - ++$close; - } - - $parsed_code .= $code[$i]; - - if ($close) { - $parsed_code .= str_repeat('</span>', $close); - $close = 0; - } - elseif ($i + 1 < $n) { - $parsed_code .= "\n"; - } - unset($code[$i]); - } - - if ($this->header_type == GESHI_HEADER_PRE_VALID || $this->header_type == GESHI_HEADER_PRE_TABLE) { - $parsed_code .= '</pre>'; - } - if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { - $parsed_code .= '</td>'; - } - } - - $parsed_code .= $this->footer(); - } - - /** - * Creates the header for the code block (with correct attributes) - * - * @return string The header for the code block - * @since 1.0.0 - * @access private - */ - function header() { - // Get attributes needed - /** - * @todo Document behaviour change - class is outputted regardless of whether - * we're using classes or not. Same with style - */ - $attributes = ' class="' . $this->_genCSSName($this->language); - if ($this->overall_class != '') { - $attributes .= " ".$this->_genCSSName($this->overall_class); - } - $attributes .= '"'; - - if ($this->overall_id != '') { - $attributes .= " id=\"{$this->overall_id}\""; - } - if ($this->overall_style != '' && !$this->use_classes) { - $attributes .= ' style="' . $this->overall_style . '"'; - } - - $ol_attributes = ''; - - if ($this->line_numbers_start != 1) { - $ol_attributes .= ' start="' . $this->line_numbers_start . '"'; - } - - // Get the header HTML - $header = $this->header_content; - if ($header) { - if ($this->header_type == GESHI_HEADER_PRE || $this->header_type == GESHI_HEADER_PRE_VALID) { - $header = str_replace("\n", '', $header); - } - $header = $this->replace_keywords($header); - - if ($this->use_classes) { - $attr = ' class="head"'; - } else { - $attr = " style=\"{$this->header_content_style}\""; - } - if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { - $header = "<thead><tr><td colspan=\"2\" $attr>$header</td></tr></thead>"; - } else { - $header = "<div$attr>$header</div>"; - } - } - - if (GESHI_HEADER_NONE == $this->header_type) { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "$header<ol$attributes$ol_attributes>"; - } - return $header . ($this->force_code_block ? '<div>' : ''); - } - - // Work out what to return and do it - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - if ($this->header_type == GESHI_HEADER_PRE) { - return "<pre$attributes>$header<ol$ol_attributes>"; - } else if ($this->header_type == GESHI_HEADER_DIV || - $this->header_type == GESHI_HEADER_PRE_VALID) { - return "<div$attributes>$header<ol$ol_attributes>"; - } else if ($this->header_type == GESHI_HEADER_PRE_TABLE) { - return "<table$attributes>$header<tbody><tr class=\"li1\">"; - } - } else { - if ($this->header_type == GESHI_HEADER_PRE) { - return "<pre$attributes>$header" . - ($this->force_code_block ? '<div>' : ''); - } else { - return "<div$attributes>$header" . - ($this->force_code_block ? '<div>' : ''); - } - } - } - - /** - * Returns the footer for the code block. - * - * @return string The footer for the code block - * @since 1.0.0 - * @access private - */ - function footer() { - $footer = $this->footer_content; - if ($footer) { - if ($this->header_type == GESHI_HEADER_PRE) { - $footer = str_replace("\n", '', $footer);; - } - $footer = $this->replace_keywords($footer); - - if ($this->use_classes) { - $attr = ' class="foot"'; - } else { - $attr = " style=\"{$this->footer_content_style}\""; - } - if ($this->header_type == GESHI_HEADER_PRE_TABLE && $this->line_numbers != GESHI_NO_LINE_NUMBERS) { - $footer = "<tfoot><tr><td colspan=\"2\">$footer</td></tr></tfoot>"; - } else { - $footer = "<div$attr>$footer</div>"; - } - } - - if (GESHI_HEADER_NONE == $this->header_type) { - return ($this->line_numbers != GESHI_NO_LINE_NUMBERS) ? '</ol>' . $footer : $footer; - } - - if ($this->header_type == GESHI_HEADER_DIV || $this->header_type == GESHI_HEADER_PRE_VALID) { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "</ol>$footer</div>"; - } - return ($this->force_code_block ? '</div>' : '') . - "$footer</div>"; - } - elseif ($this->header_type == GESHI_HEADER_PRE_TABLE) { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "</tr></tbody>$footer</table>"; - } - return ($this->force_code_block ? '</div>' : '') . - "$footer</div>"; - } - else { - if ($this->line_numbers != GESHI_NO_LINE_NUMBERS) { - return "</ol>$footer</pre>"; - } - return ($this->force_code_block ? '</div>' : '') . - "$footer</pre>"; - } - } - - /** - * Replaces certain keywords in the header and footer with - * certain configuration values - * - * @param string The header or footer content to do replacement on - * @return string The header or footer with replaced keywords - * @since 1.0.2 - * @access private - */ - function replace_keywords($instr) { - $keywords = $replacements = array(); - - $keywords[] = '<TIME>'; - $keywords[] = '{TIME}'; - $replacements[] = $replacements[] = number_format($time = $this->get_time(), 3); - - $keywords[] = '<LANGUAGE>'; - $keywords[] = '{LANGUAGE}'; - $replacements[] = $replacements[] = $this->language_data['LANG_NAME']; - - $keywords[] = '<VERSION>'; - $keywords[] = '{VERSION}'; - $replacements[] = $replacements[] = GESHI_VERSION; - - $keywords[] = '<SPEED>'; - $keywords[] = '{SPEED}'; - if ($time <= 0) { - $speed = 'N/A'; - } else { - $speed = strlen($this->source) / $time; - if ($speed >= 1024) { - $speed = sprintf("%.2f KB/s", $speed / 1024.0); - } else { - $speed = sprintf("%.0f B/s", $speed); - } - } - $replacements[] = $replacements[] = $speed; - - return str_replace($keywords, $replacements, $instr); - } - - /** - * Secure replacement for PHP built-in function htmlspecialchars(). - * - * See ticket #427 (http://wush.net/trac/wikka/ticket/427) for the rationale - * for this replacement function. - * - * The INTERFACE for this function is almost the same as that for - * htmlspecialchars(), with the same default for quote style; however, there - * is no 'charset' parameter. The reason for this is as follows: - * - * The PHP docs say: - * "The third argument charset defines character set used in conversion." - * - * I suspect PHP's htmlspecialchars() is working at the byte-value level and - * thus _needs_ to know (or asssume) a character set because the special - * characters to be replaced could exist at different code points in - * different character sets. (If indeed htmlspecialchars() works at - * byte-value level that goes some way towards explaining why the - * vulnerability would exist in this function, too, and not only in - * htmlentities() which certainly is working at byte-value level.) - * - * This replacement function however works at character level and should - * therefore be "immune" to character set differences - so no charset - * parameter is needed or provided. If a third parameter is passed, it will - * be silently ignored. - * - * In the OUTPUT there is a minor difference in that we use ''' instead - * of PHP's ''' for a single quote: this provides compatibility with - * get_html_translation_table(HTML_SPECIALCHARS, ENT_QUOTES) - * (see comment by mikiwoz at yahoo dot co dot uk on - * http://php.net/htmlspecialchars); it also matches the entity definition - * for XML 1.0 - * (http://www.w3.org/TR/xhtml1/dtds.html#a_dtd_Special_characters). - * Like PHP we use a numeric character reference instead of ''' for the - * single quote. For the other special characters we use the named entity - * references, as PHP is doing. - * - * @author {@link http://wikkawiki.org/JavaWoman Marjolein Katsma} - * - * @license http://www.gnu.org/copyleft/lgpl.html - * GNU Lesser General Public License - * @copyright Copyright 2007, {@link http://wikkawiki.org/CreditsPage - * Wikka Development Team} - * - * @access private - * @param string $string string to be converted - * @param integer $quote_style - * - ENT_COMPAT: escapes &, <, > and double quote (default) - * - ENT_NOQUOTES: escapes only &, < and > - * - ENT_QUOTES: escapes &, <, >, double and single quotes - * @return string converted string - * @since 1.0.7.18 - */ - function hsc($string, $quote_style = ENT_COMPAT) { - // init - static $aTransSpecchar = array( - '&' => '&', - '"' => '"', - '<' => '<', - '>' => '>', - - //This fix is related to SF#1923020, but has to be applied - //regardless of actually highlighting symbols. - - //Circumvent a bug with symbol highlighting - //This is required as ; would produce undesirable side-effects if it - //was not to be processed as an entity. - ';' => '<SEMI>', // Force ; to be processed as entity - '|' => '<PIPE>' // Force | to be processed as entity - ); // ENT_COMPAT set - - switch ($quote_style) { - case ENT_NOQUOTES: // don't convert double quotes - unset($aTransSpecchar['"']); - break; - case ENT_QUOTES: // convert single quotes as well - $aTransSpecchar["'"] = '''; // (apos) htmlspecialchars() uses ''' - break; - } - - // return translated string - return strtr($string, $aTransSpecchar); - } - - function _genCSSName($name){ - return (is_numeric($name[0]) ? '_' : '') . $name; - } - - /** - * Returns a stylesheet for the highlighted code. If $economy mode - * is true, we only return the stylesheet declarations that matter for - * this code block instead of the whole thing - * - * @param boolean Whether to use economy mode or not - * @return string A stylesheet built on the data for the current language - * @since 1.0.0 - */ - function get_stylesheet($economy_mode = true) { - // If there's an error, chances are that the language file - // won't have populated the language data file, so we can't - // risk getting a stylesheet... - if ($this->error) { - return ''; - } - - //Check if the style rearrangements have been processed ... - //This also does some preprocessing to check which style groups are useable ... - if(!isset($this->language_data['NUMBERS_CACHE'])) { - $this->build_style_cache(); - } - - // First, work out what the selector should be. If there's an ID, - // that should be used, the same for a class. Otherwise, a selector - // of '' means that these styles will be applied anywhere - if ($this->overall_id) { - $selector = '#' . $this->_genCSSName($this->overall_id); - } else { - $selector = '.' . $this->_genCSSName($this->language); - if ($this->overall_class) { - $selector .= '.' . $this->_genCSSName($this->overall_class); - } - } - $selector .= ' '; - - // Header of the stylesheet - if (!$economy_mode) { - $stylesheet = "/**\n". - " * GeSHi Dynamically Generated Stylesheet\n". - " * --------------------------------------\n". - " * Dynamically generated stylesheet for {$this->language}\n". - " * CSS class: {$this->overall_class}, CSS id: {$this->overall_id}\n". - " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" . - " * (http://qbnz.com/highlighter/ and http://geshi.org/)\n". - " * --------------------------------------\n". - " */\n"; - } else { - $stylesheet = "/**\n". - " * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\n" . - " * (http://qbnz.com/highlighter/ and http://geshi.org/)\n". - " */\n"; - } - - // Set the <ol> to have no effect at all if there are line numbers - // (<ol>s have margins that should be destroyed so all layout is - // controlled by the set_overall_style method, which works on the - // <pre> or <div> container). Additionally, set default styles for lines - if (!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) { - //$stylesheet .= "$selector, {$selector}ol, {$selector}ol li {margin: 0;}\n"; - $stylesheet .= "$selector.de1, $selector.de2 {{$this->code_style}}\n"; - } - - // Add overall styles - // note: neglect economy_mode, empty styles are meaningless - if ($this->overall_style != '') { - $stylesheet .= "$selector {{$this->overall_style}}\n"; - } - - // Add styles for links - // note: economy mode does not make _any_ sense here - // either the style is empty and thus no selector is needed - // or the appropriate key is given. - foreach ($this->link_styles as $key => $style) { - if ($style != '') { - switch ($key) { - case GESHI_LINK: - $stylesheet .= "{$selector}a:link {{$style}}\n"; - break; - case GESHI_HOVER: - $stylesheet .= "{$selector}a:hover {{$style}}\n"; - break; - case GESHI_ACTIVE: - $stylesheet .= "{$selector}a:active {{$style}}\n"; - break; - case GESHI_VISITED: - $stylesheet .= "{$selector}a:visited {{$style}}\n"; - break; - } - } - } - - // Header and footer - // note: neglect economy_mode, empty styles are meaningless - if ($this->header_content_style != '') { - $stylesheet .= "$selector.head {{$this->header_content_style}}\n"; - } - if ($this->footer_content_style != '') { - $stylesheet .= "$selector.foot {{$this->footer_content_style}}\n"; - } - - // Styles for important stuff - // note: neglect economy_mode, empty styles are meaningless - if ($this->important_styles != '') { - $stylesheet .= "$selector.imp {{$this->important_styles}}\n"; - } - - // Simple line number styles - if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) && $this->line_style1 != '') { - $stylesheet .= "{$selector}li, {$selector}.li1 {{$this->line_style1}}\n"; - } - if ((!$economy_mode || $this->line_numbers != GESHI_NO_LINE_NUMBERS) && $this->table_linenumber_style != '') { - $stylesheet .= "{$selector}.ln {{$this->table_linenumber_style}}\n"; - } - // If there is a style set for fancy line numbers, echo it out - if ((!$economy_mode || $this->line_numbers == GESHI_FANCY_LINE_NUMBERS) && $this->line_style2 != '') { - $stylesheet .= "{$selector}.li2 {{$this->line_style2}}\n"; - } - - // note: empty styles are meaningless - foreach ($this->language_data['STYLES']['KEYWORDS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || - (isset($this->lexic_permissions['KEYWORDS'][$group]) && - $this->lexic_permissions['KEYWORDS'][$group]))) { - $stylesheet .= "$selector.kw$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['COMMENTS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || - (isset($this->lexic_permissions['COMMENTS'][$group]) && - $this->lexic_permissions['COMMENTS'][$group]) || - (!empty($this->language_data['COMMENT_REGEXP']) && - !empty($this->language_data['COMMENT_REGEXP'][$group])))) { - $stylesheet .= "$selector.co$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['ESCAPE_CHAR'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['ESCAPE_CHAR'])) { - // NEW: since 1.0.8 we have to handle hardescapes - if ($group === 'HARD') { - $group = '_h'; - } - $stylesheet .= "$selector.es$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['BRACKETS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['BRACKETS'])) { - $stylesheet .= "$selector.br$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['SYMBOLS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['SYMBOLS'])) { - $stylesheet .= "$selector.sy$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['STRINGS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['STRINGS'])) { - // NEW: since 1.0.8 we have to handle hardquotes - if ($group === 'HARD') { - $group = '_h'; - } - $stylesheet .= "$selector.st$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['NUMBERS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['NUMBERS'])) { - $stylesheet .= "$selector.nu$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['METHODS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || $this->lexic_permissions['METHODS'])) { - $stylesheet .= "$selector.me$group {{$styles}}\n"; - } - } - // note: neglect economy_mode, empty styles are meaningless - foreach ($this->language_data['STYLES']['SCRIPT'] as $group => $styles) { - if ($styles != '') { - $stylesheet .= "$selector.sc$group {{$styles}}\n"; - } - } - foreach ($this->language_data['STYLES']['REGEXPS'] as $group => $styles) { - if ($styles != '' && (!$economy_mode || - (isset($this->lexic_permissions['REGEXPS'][$group]) && - $this->lexic_permissions['REGEXPS'][$group]))) { - if (is_array($this->language_data['REGEXPS'][$group]) && - array_key_exists(GESHI_CLASS, $this->language_data['REGEXPS'][$group])) { - $stylesheet .= "$selector."; - $stylesheet .= $this->language_data['REGEXPS'][$group][GESHI_CLASS]; - $stylesheet .= " {{$styles}}\n"; - } else { - $stylesheet .= "$selector.re$group {{$styles}}\n"; - } - } - } - // Styles for lines being highlighted extra - if (!$economy_mode || (count($this->highlight_extra_lines)!=count($this->highlight_extra_lines_styles))) { - $stylesheet .= "{$selector}.ln-xtra, {$selector}li.ln-xtra, {$selector}div.ln-xtra {{$this->highlight_extra_lines_style}}\n"; - } - $stylesheet .= "{$selector}span.xtra { display:block; }\n"; - foreach ($this->highlight_extra_lines_styles as $lineid => $linestyle) { - $stylesheet .= "{$selector}.lx$lineid, {$selector}li.lx$lineid, {$selector}div.lx$lineid {{$linestyle}}\n"; - } - - return $stylesheet; - } - - /** - * Get's the style that is used for the specified line - * - * @param int The line number information is requested for - * @access private - * @since 1.0.7.21 - */ - function get_line_style($line) { - //$style = null; - $style = null; - if (isset($this->highlight_extra_lines_styles[$line])) { - $style = $this->highlight_extra_lines_styles[$line]; - } else { // if no "extra" style assigned - $style = $this->highlight_extra_lines_style; - } - - return $style; - } - - /** - * this functions creates an optimized regular expression list - * of an array of strings. - * - * Example: - * <code>$list = array('faa', 'foo', 'foobar'); - * => string 'f(aa|oo(bar)?)'</code> - * - * @param $list array of (unquoted) strings - * @param $regexp_delimiter your regular expression delimiter, @see preg_quote() - * @return string for regular expression - * @author Milian Wolff <mail@milianw.de> - * @since 1.0.8 - * @access private - */ - function optimize_regexp_list($list, $regexp_delimiter = '/') { - $regex_chars = array('.', '\\', '+', '*', '?', '[', '^', ']', '$', - '(', ')', '{', '}', '=', '!', '<', '>', '|', ':', $regexp_delimiter); - sort($list); - $regexp_list = array(''); - $num_subpatterns = 0; - $list_key = 0; - - // the tokens which we will use to generate the regexp list - $tokens = array(); - $prev_keys = array(); - // go through all entries of the list and generate the token list - $cur_len = 0; - for ($i = 0, $i_max = count($list); $i < $i_max; ++$i) { - if ($cur_len > GESHI_MAX_PCRE_LENGTH) { - // seems like the length of this pcre is growing exorbitantly - $regexp_list[++$list_key] = $this->_optimize_regexp_list_tokens_to_string($tokens); - $num_subpatterns = substr_count($regexp_list[$list_key], '(?:'); - $tokens = array(); - $cur_len = 0; - } - $level = 0; - $entry = preg_quote((string) $list[$i], $regexp_delimiter); - $pointer = &$tokens; - // properly assign the new entry to the correct position in the token array - // possibly generate smaller common denominator keys - while (true) { - // get the common denominator - if (isset($prev_keys[$level])) { - if ($prev_keys[$level] == $entry) { - // this is a duplicate entry, skip it - continue 2; - } - $char = 0; - while (isset($entry[$char]) && isset($prev_keys[$level][$char]) - && $entry[$char] == $prev_keys[$level][$char]) { - ++$char; - } - if ($char > 0) { - // this entry has at least some chars in common with the current key - if ($char == strlen($prev_keys[$level])) { - // current key is totally matched, i.e. this entry has just some bits appended - $pointer = &$pointer[$prev_keys[$level]]; - } else { - // only part of the keys match - $new_key_part1 = substr($prev_keys[$level], 0, $char); - $new_key_part2 = substr($prev_keys[$level], $char); - - if (in_array($new_key_part1[0], $regex_chars) - || in_array($new_key_part2[0], $regex_chars)) { - // this is bad, a regex char as first character - $pointer[$entry] = array('' => true); - array_splice($prev_keys, $level, count($prev_keys), $entry); - $cur_len += strlen($entry); - continue; - } else { - // relocate previous tokens - $pointer[$new_key_part1] = array($new_key_part2 => $pointer[$prev_keys[$level]]); - unset($pointer[$prev_keys[$level]]); - $pointer = &$pointer[$new_key_part1]; - // recreate key index - array_splice($prev_keys, $level, count($prev_keys), array($new_key_part1, $new_key_part2)); - $cur_len += strlen($new_key_part2); - } - } - ++$level; - $entry = substr($entry, $char); - continue; - } - // else: fall trough, i.e. no common denominator was found - } - if ($level == 0 && !empty($tokens)) { - // we can dump current tokens into the string and throw them away afterwards - $new_entry = $this->_optimize_regexp_list_tokens_to_string($tokens); - $new_subpatterns = substr_count($new_entry, '(?:'); - if (GESHI_MAX_PCRE_SUBPATTERNS && $num_subpatterns + $new_subpatterns > GESHI_MAX_PCRE_SUBPATTERNS) { - $regexp_list[++$list_key] = $new_entry; - $num_subpatterns = $new_subpatterns; - } else { - if (!empty($regexp_list[$list_key])) { - $new_entry = '|' . $new_entry; - } - $regexp_list[$list_key] .= $new_entry; - $num_subpatterns += $new_subpatterns; - } - $tokens = array(); - $cur_len = 0; - } - // no further common denominator found - $pointer[$entry] = array('' => true); - array_splice($prev_keys, $level, count($prev_keys), $entry); - - $cur_len += strlen($entry); - break; - } - unset($list[$i]); - } - // make sure the last tokens get converted as well - $new_entry = $this->_optimize_regexp_list_tokens_to_string($tokens); - if (GESHI_MAX_PCRE_SUBPATTERNS && $num_subpatterns + substr_count($new_entry, '(?:') > GESHI_MAX_PCRE_SUBPATTERNS) { - if ( !empty($regexp_list[$list_key]) ) { - ++$list_key; - } - $regexp_list[$list_key] = $new_entry; - } else { - if (!empty($regexp_list[$list_key])) { - $new_entry = '|' . $new_entry; - } - $regexp_list[$list_key] .= $new_entry; - } - return $regexp_list; - } - /** - * this function creates the appropriate regexp string of an token array - * you should not call this function directly, @see $this->optimize_regexp_list(). - * - * @param &$tokens array of tokens - * @param $recursed bool to know wether we recursed or not - * @return string - * @author Milian Wolff <mail@milianw.de> - * @since 1.0.8 - * @access private - */ - function _optimize_regexp_list_tokens_to_string(&$tokens, $recursed = false) { - $list = ''; - foreach ($tokens as $token => $sub_tokens) { - $list .= $token; - $close_entry = isset($sub_tokens['']); - unset($sub_tokens['']); - if (!empty($sub_tokens)) { - $list .= '(?:' . $this->_optimize_regexp_list_tokens_to_string($sub_tokens, true) . ')'; - if ($close_entry) { - // make sub_tokens optional - $list .= '?'; - } - } - $list .= '|'; - } - if (!$recursed) { - // do some optimizations - // common trailing strings - // BUGGY! - //$list = preg_replace_callback('#(?<=^|\:|\|)\w+?(\w+)(?:\|.+\1)+(?=\|)#', create_function( - // '$matches', 'return "(?:" . preg_replace("#" . preg_quote($matches[1], "#") . "(?=\||$)#", "", $matches[0]) . ")" . $matches[1];'), $list); - // (?:p)? => p? - $list = preg_replace('#\(\?\:(.)\)\?#', '\1?', $list); - // (?:a|b|c|d|...)? => [abcd...]? - // TODO: a|bb|c => [ac]|bb - static $callback_2; - if (!isset($callback_2)) { - $callback_2 = create_function('$matches', 'return "[" . str_replace("|", "", $matches[1]) . "]";'); - } - $list = preg_replace_callback('#\(\?\:((?:.\|)+.)\)#', $callback_2, $list); - } - // return $list without trailing pipe - return substr($list, 0, -1); - } -} // End Class GeSHi - - -if (!function_exists('geshi_highlight')) { - /** - * Easy way to highlight stuff. Behaves just like highlight_string - * - * @param string The code to highlight - * @param string The language to highlight the code in - * @param string The path to the language files. You can leave this blank if you need - * as from version 1.0.7 the path should be automatically detected - * @param boolean Whether to return the result or to echo - * @return string The code highlighted (if $return is true) - * @since 1.0.2 - */ - function geshi_highlight($string, $language, $path = null, $return = false) { - $geshi = new GeSHi($string, $language, $path); - $geshi->set_header_type(GESHI_HEADER_NONE); - - if ($return) { - return '<code>' . $geshi->parse_code() . '</code>'; - } - - echo '<code>' . $geshi->parse_code() . '</code>'; - - if ($geshi->error()) { - return false; - } - return true; - } -} - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/4cs.php b/system/application/libraries/geshi/4cs.php deleted file mode 100644 index 6ce702fbc..000000000 --- a/system/application/libraries/geshi/4cs.php +++ /dev/null @@ -1,139 +0,0 @@ -<?php -/************************************************************************************* - * 4cs.php - * ------ - * Author: Jason Curl (jason.curl@continental-corporation.com) - * Copyright: (c) 2009 Jason Curl - * Release Version: 1.0.8.6 - * Date Started: 2009/09/05 - * - * 4CS language file for GeSHi. - * - * CHANGES - * ------- - * 2009/09/05 - * - First Release - * - * TODO (updated 2009/09/01) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'GADV 4CS', - 'COMMENT_SINGLE' => array(1 => "//"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'All', 'AllMatches', 'And', 'And_Filters', 'As', 'Asc', 'BasedOn', - 'BestMatch', 'Block', 'Buffer', 'ByRef', 'ByVal', 'Call', 'Channel', - 'Chr', 'Clear', 'Close', 'Confirm', 'Const', 'Continue', 'Cos', - 'Critical', 'Declare', 'Default', 'DefaultChannel', 'DefaultDelayTime', - 'DefaultReceiveMode', 'DefaultResponseTime', '#Define', 'DelayTime', - 'Delete', 'Div', 'Else', '#Else', 'ElseIf', '#ElseIf', 'End', 'EndCritical', - 'EndInlineC', 'EndFunction', 'EndIf', '#EndIf', 'EndInputList', - 'EndLocalChannel', 'EndScenario', 'EndSub', 'EndWhile', 'Error', - 'ErrorLevelOff', 'ErrorLevelOn', 'ErrorLevelSet', 'ErrorLevelSetRaw', - 'Event', 'EventMode', 'EventOff', 'EventOn', 'EventSet', 'EventSetRaw', - 'Execute', 'Exit', 'Exp', 'FileClose', 'FilterClear', 'FileEOF', 'FileOpen', - 'FileRead', 'FileSize', 'FileWrite', 'FilterAdd', 'FilterMode', - 'FilterOff', 'FilterOn', 'For', 'Format', 'Function', 'GoOnline', 'GoTo', - 'Handle', 'Hide', 'If', '#If', '#IfDef', '#IfNDef', 'Ignore', '#Include', - 'InlineC', 'Input', 'InputItem', 'InputList', 'Kill', 'LBound', 'LocalChannel', - 'Local', 'Log', 'Log10', 'LogOff', 'LogOn', 'Loop', 'Message', 'Mod', - 'MonitorChannel', 'MostFormat', 'MostMessage', 'Named', 'Never', 'Next', - 'NoOrder', 'Not', 'Nothing', 'NoWait', 'Numeric', 'OnError', 'OnEvent', - 'Or', 'Or_Filters', 'Order', 'Pass', 'Pow', 'Prototype', 'Quit', 'Raise', - 'Random', 'Receive', 'ReceiveMode', 'ReceiveRaw', 'Redim', 'Remote', 'Repeat', - 'Repeated', 'ResponseTime', 'Resume', 'ResumeCritical', 'RT_Common', - 'RT_Dll_Call', 'RT_FILEIO', 'RT_General', 'RT_HardwareAccess', - 'RT_MessageVariableAccess', 'RT_Scenario', 'RT_VariableAccess', 'Runtime', - 'Scenario', 'ScenarioEnd', 'ScenarioStart', 'ScenarioStatus', 'ScenarioTerminate', - 'Send', 'SendRaw', 'Set', 'SetError', 'Sin', 'Single', 'Show', 'Start', - 'StartCritical', 'Starts', 'Static', 'Step', 'Stop', 'String', 'Sub', - 'System_Error', 'TerminateAllChilds', 'Terminates', 'Then', 'Throw', 'TimeOut', - 'To', 'TooLate', 'Trunc', 'UBound', 'Unexpected', 'Until', 'User_Error', - 'View', 'Wait', 'Warning', 'While', 'XOr' - ), - 2 => array( - 'alias', 'winapi', 'long', 'char', 'double', 'float', 'int', 'short', 'lib' - ) - ), - 'SYMBOLS' => array( - '=', ':=', '<', '>', '<>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000C0; font-weight: bold;', - 2 => 'color: #808080;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000080;' - ), - 'STRINGS' => array( - 0 => 'color: #800080;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000080;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/abap.php b/system/application/libraries/geshi/abap.php deleted file mode 100644 index fa69c92f9..000000000 --- a/system/application/libraries/geshi/abap.php +++ /dev/null @@ -1,1409 +0,0 @@ -<?php -/************************************************************************************* - * abap.php - * -------- - * Author: Andres Picazo (andres@andrespicazo.com) - * Contributors: - * - Sandra Rossi (sandra.rossi@gmail.com) - * - Jacob Laursen (jlu@kmd.dk) - * Copyright: (c) 2007 Andres Picazo - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * ABAP language file for GeSHi. - * - * Reference abap language documentation (abap 7.1) : http://help.sap.com/abapdocu/en/ABENABAP_INDEX.htm - * - * ABAP syntax is highly complex, several problems could not be addressed, see TODO below if you dare ;-) - * Be aware that in ABAP language, keywords may be composed of several tokens, - * separated by one or more spaces or carriage returns - * (for example CONCATENATE 'hello' 'world' INTO string SEPARATED BY ' ') - * it's why we must decode them with REGEXPS. As there are many keywords with several tokens, - * I had to create a separate section in the code to simplify the reading. - * Be aware that some words may be highlighted several times like for "ref to data", which is first - * highlighted for "ref to data", then secondly for "ref to". It is very important to - * position "ref to" after "ref to data" otherwise "data" wouldn't be highlighted because - * of the previous highlight. - * Control, declarative and other statements are assigned URLs to sap documentation website: - * http://help.sap.com/abapdocu/en/ABAP<statement_name>.htm - * - * CHANGES - * ------- - * 2009/02/25 (1.0.8.3) - * - Some more rework of the language file - * 2009/01/04 (1.0.8.2) - * - Major Release, more than 1000 statements and keywords added = whole abap 7.1 (Sandra Rossi) - * 2007/06/27 (1.0.0) - * - First Release - * - * TODO - * ---- - * - in DATA data TYPE type, 2nd "data" and 2nd "type" are highlighted with data - * style, but should be ignored. Same problem for all words!!! This is quite impossible to - * solve it as we should define syntaxes of all statements (huge effort!) and use a lex - * or something like that instead of regexp I guess. - * - Some words are considered as being statement names (report, tables, etc.) though they - * are used as keyword in some statements. For example: FORM xxxx TABLES itab. It was - * arbitrary decided to define them as statement instead of keyword, because it may be - * useful to have the URL to SAP help for some of them. - * - if a comment is between 2 words of a keyword (for example SEPARATED "comment \n BY), - * it is not considered as a keyword, but it should! - * - for statements like "READ DATASET", GeSHi does not allow to set URLs because these - * statements are determined by REGEXPS. For "READ DATASET", the URL should be - * ABAPREAD_DATASET.htm. If a technical solution is found, be careful : URLs - * are sometimes not valid because the URL does not exist. For example, for "AT NEW" - * statement, the URL should be ABAPAT_ITAB.htm (not ABAPAT_NEW.htm). - * There are many other exceptions. - * Note: for adding this functionality within your php program, you can execute this code: - * function add_urls_to_multi_tokens( $matches ) { - * $url = preg_replace( "/[ \n]+/" , "_" , $matches[3] ); - * if( $url == $matches[3] ) return $matches[0] ; - * else return $matches[1]."<a href=\"http://help.sap.com/abapdocu/en/ABAP".strtoupper($url).".htm\">".$matches[3]."</a>".$matches[4]; - * } - * $html = $geshi->parse_code(); - * $html = preg_replace_callback( "£(zzz:(control|statement|data);\">)(.+?)(</span>)£s", "add_urls_to_multi_tokens", $html ); - * echo $html; - * - Numbers followed by a dot terminating the statement are not properly recognized - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'ABAP', - 'COMMENT_SINGLE' => array( - 1 => '"' - ), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - // lines beginning with star at 1st position are comments - // (star anywhere else is not a comment, especially be careful with - // "assign dref->* to <fs>" statement) - 2 => '/^\*.*?$/m' - ), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array( - 1 => "'", - 2 => "`" - ), - 'ESCAPE_CHAR' => '', - - 'KEYWORDS' => array( - //*********************************************** - // Section 2 : process sequences of several tokens - //*********************************************** - - 7 => array( - 'at new', - 'at end of', - 'at first', - 'at last', - 'loop at', - 'loop at screen', - ), - - 8 => array( - 'private section', - 'protected section', - 'public section', - 'at line-selection', - 'at selection-screen', - 'at user-command', - 'assign component', - 'assign table field', - 'call badi', - 'call customer-function', - 'call customer subscreen', - 'call dialog', - 'call function', - 'call method', - 'call screen', - 'call selection-screen', - 'call transaction', - 'call transformation', - 'close cursor', - 'close dataset', - 'commit work', - 'convert date', - 'convert text', - 'convert time stamp', - 'create data', - 'create object', - 'delete dataset', - 'delete from', - 'describe distance', - 'describe field', - 'describe list', - 'describe table', - 'exec sql', - 'exit from sql', - 'exit from step-loop', - 'export dynpro', - 'export nametab', - 'free memory', - 'generate subroutine-pool', - 'get badi', - 'get bit', - 'get cursor', - 'get dataset', - 'get locale', - 'get parameter', - 'get pf-status', - 'get property', - 'get reference', - 'get run time', - 'get time', - 'get time stamp', - 'import directory', - 'insert report', - 'insert text-pool', - 'leave list-processing', - 'leave program', - 'leave screen', - 'leave to list-processing', - 'leave to transaction', - 'modify line', - 'modify screen', - 'move percentage', - 'open cursor', - 'open dataset', - 'raise event', - 'raise exception', - 'read dataset', - 'read line', - 'read report', - 'read table', - 'read textpool', - 'receive results from function', - 'refresh control', - 'rollback work', - 'set bit', - 'set blank lines', - 'set country', - 'set cursor', - 'set dataset', - 'set extended check', - 'set handler', - 'set hold data', - 'set language', - 'set left scroll-boundary', - 'set locale', - 'set margin', - 'set parameter', - 'set pf-status', - 'set property', - 'set run time analyzer', - 'set run time clock', - 'set screen', - 'set titlebar', - 'set update task', - 'set user-command', - 'suppress dialog', - 'truncate dataset', - 'wait until', - 'wait up to', - ), - - 9 => array( - 'accepting duplicate keys', - 'accepting padding', - 'accepting truncation', - 'according to', - 'actual length', - 'adjacent duplicates', - 'after input', - 'all blob columns', - 'all clob columns', - 'all fields', - 'all methods', - 'all other columns', - 'and mark', - 'and return to screen', - 'and return', - 'and skip first screen', - 'and wait', - 'any table', - 'appendage type', - 'archive mode', - 'archiving parameters', - 'area handle', - 'as checkbox', - 'as icon', - 'as line', - 'as listbox', - 'as person table', - 'as search patterns', - 'as separate unit', - 'as subscreen', - 'as symbol', - 'as text', - 'as window', - 'at cursor-selection', - 'at exit-command', - 'at next application statement', - 'at position', - - 'backup into', - 'before output', - 'before unwind', - 'begin of block', - 'begin of common part', - 'begin of line', - 'begin of screen', - 'begin of tabbed block', - 'begin of version', - 'begin of', - 'big endian', - 'binary mode', - 'binary search', - 'by kernel module', - 'bypassing buffer', - - 'client specified', - 'code page', - 'code page hint', - 'code page into', - 'color black', - 'color blue', - 'color green', - 'color pink', - 'color red', - 'color yellow', - 'compression off', - 'compression on', - 'connect to', - 'corresponding fields of table', - 'corresponding fields of', - 'cover page', - 'cover text', - 'create package', - 'create private', - 'create protected', - 'create public', - 'current position', - - 'data buffer', - 'data values', - 'dataset expiration', - 'daylight saving time', - 'default key', - 'default program', - 'default screen', - 'defining database', - 'deleting leading', - 'deleting trailing', - 'directory entry', - 'display like', - 'display offset', - 'during line-selection', - 'dynamic selections', - - 'edit mask', - 'end of block', - 'end of common part', - 'end of file', - 'end of line', - 'end of screen', - 'end of tabbed block', - 'end of version', - 'end of', - 'endian into', - 'ending at', - 'enhancement options into', - 'enhancement into', - 'environment time format', - 'execute procedure', - 'exporting list to memory', - 'extension type', - - 'field format', - 'field selection', - 'field value into', - 'final methods', - 'first occurrence of', - 'fixed-point arithmetic', - 'for all entries', - 'for all instances', - 'for appending', - 'for columns', - 'for event of', - 'for field', - 'for high', - 'for input', - 'for lines', - 'for low', - 'for node', - 'for output', - 'for select', - 'for table', - 'for testing', - 'for update', - 'for user', - 'frame entry', - 'frame program from', - 'from code page', - 'from context', - 'from database', - 'from logfile id', - 'from number format', - 'from screen', - 'from table', - 'function key', - - 'get connection', - 'global friends', - 'group by', - - 'hashed table of', - 'hashed table', - - 'if found', - 'ignoring case', - 'ignoring conversion errors', - 'ignoring structure boundaries', - 'implementations from', - 'in background', - 'in background task', - 'in background unit', - 'in binary mode', - 'in byte mode', - 'in char-to-hex mode', - 'in character mode', - 'in group', - 'in legacy binary mode', - 'in legacy text mode', - 'in program', - 'in remote task', - 'in text mode', - 'in table', - 'in update task', - 'include bound', - 'include into', - 'include program from', - 'include structure', - 'include type', - 'including gaps', - 'index table', - 'inheriting from', - 'init destination', - 'initial line of', - 'initial line', - 'initial size', - 'internal table', - 'into sortable code', - - 'keep in spool', - 'keeping directory entry', - 'keeping logical unit of work', - 'keeping task', - 'keywords from', - - 'left margin', - 'left outer', - 'levels into', - 'line format', - 'line into', - 'line of', - 'line page', - 'line value from', - 'line value into', - 'lines of', - 'list authority', - 'list dataset', - 'list name', - 'little endian', - 'lob handle for', - 'local friends', - 'locator for', - 'lower case', - - 'main table field', - 'match count', - 'match length', - 'match line', - 'match offset', - 'matchcode object', - 'maximum length', - 'maximum width into', - 'memory id', - 'message into', - 'messages into', - 'modif id', - - 'nesting level', - 'new list identification', - 'next cursor', - 'no database selection', - 'no dialog', - 'no end of line', - 'no fields', - 'no flush', - 'no intervals', - 'no intervals off', - 'no standard page heading', - 'no-extension off', - 'non-unique key', - 'non-unique sorted key', - 'not at end of mode', - 'number of lines', - 'number of pages', - - 'object key', - 'obligatory off', - 'of current page', - 'of page', - 'of program', - 'offset into', - 'on block', - 'on commit', - 'on end of task', - 'on end of', - 'on exit-command', - 'on help-request for', - 'on radiobutton group', - 'on rollback', - 'on value-request for', - 'open for package', - 'option class-coding', - 'option class', - 'option coding', - 'option expand', - 'option syncpoints', - 'options from', - 'order by', - 'overflow into', - - 'package section', - 'package size', - 'preferred parameter', - 'preserving identifier escaping', - 'primary key', - 'print off', - 'print on', - 'program from', - 'program type', - - 'radiobutton groups', - 'radiobutton group', - 'range of', - 'reader for', - 'receive buffer', - 'reduced functionality', - 'ref to data', - 'ref to object', - 'ref to', - - 'reference into', - 'renaming with suffix', - 'replacement character', - 'replacement count', - 'replacement length', - 'replacement line', - 'replacement offset', - 'respecting blanks', - 'respecting case', - 'result into', - 'risk level', - - 'sap cover page', - 'search fkeq', - 'search fkge', - 'search gkeq', - 'search gkge', - 'section of', - 'send buffer', - 'separated by', - 'shared buffer', - 'shared memory', - 'shared memory enabled', - 'skipping byte-order mark', - 'sorted by', - 'sorted table of', - 'sorted table', - 'spool parameters', - 'standard table of', - 'standard table', - 'starting at', - 'starting new task', - 'statements into', - 'structure default', - 'structures into', - - 'table field', - 'table of', - 'text mode', - 'time stamp', - 'time zone', - 'to code page', - 'to column', - 'to context', - 'to first page', - 'to last page', - 'to last line', - 'to line', - 'to lower case', - 'to number format', - 'to page', - 'to sap spool', - 'to upper case', - 'tokens into', - 'transporting no fields', - 'type tableview', - 'type tabstrip', - - 'unicode enabling', - 'up to', - 'upper case', - 'using edit mask', - 'using key', - 'using no edit mask', - 'using screen', - 'using selection-screen', - 'using selection-set', - 'using selection-sets of program', - - 'valid between', - 'valid from', - 'value check', - 'via job', - 'via selection-screen', - 'visible length', - - 'whenever found', - 'with analysis', - 'with byte-order mark', - 'with comments', - 'with current switchstates', - 'with explicit enhancements', - 'with frame', - 'with free selections', - 'with further secondary keys', - 'with header line', - 'with hold', - 'with implicit enhancements', - 'with inactive enhancements', - 'with includes', - 'with key', - 'with linefeed', - 'with list tokenization', - 'with native linefeed', - 'with non-unique key', - 'with null', - 'with pragmas', - 'with precompiled headers', - 'with selection-table', - 'with smart linefeed', - 'with table key', - 'with test code', - 'with type-pools', - 'with unique key', - 'with unix linefeed', - 'with windows linefeed', - 'without further secondary keys', - 'without selection-screen', - 'without spool dynpro', - 'without trmac', - 'word into', - 'writer for' - ), - - //********************************************************** - // Other abap statements - //********************************************************** - 3 => array( - 'add', - 'add-corresponding', - 'aliases', - 'append', - 'assign', - 'at', - 'authority-check', - - 'break-point', - - 'clear', - 'collect', - 'compute', - 'concatenate', - 'condense', - 'class', - 'class-events', - 'class-methods', - 'class-pool', - - 'define', - 'delete', - 'demand', - 'detail', - 'divide', - 'divide-corresponding', - - 'editor-call', - 'end-of-file', - 'end-enhancement-section', - 'end-of-definition', - 'end-of-page', - 'end-of-selection', - 'endclass', - 'endenhancement', - 'endexec', - 'endform', - 'endfunction', - 'endinterface', - 'endmethod', - 'endmodule', - 'endon', - 'endprovide', - 'endselect', - 'enhancement', - 'enhancement-point', - 'enhancement-section', - 'export', - 'extract', - 'events', - - 'fetch', - 'field-groups', - 'find', - 'format', - 'form', - 'free', - 'function-pool', - 'function', - - 'get', - - 'hide', - - 'import', - 'infotypes', - 'input', - 'insert', - 'include', - 'initialization', - 'interface', - 'interface-pool', - 'interfaces', - - 'leave', - 'load-of-program', - 'log-point', - - 'maximum', - 'message', - 'methods', - 'method', - 'minimum', - 'modify', - 'move', - 'move-corresponding', - 'multiply', - 'multiply-corresponding', - - 'new-line', - 'new-page', - 'new-section', - - 'overlay', - - 'pack', - 'perform', - 'position', - 'print-control', - 'program', - 'provide', - 'put', - - 'raise', - 'refresh', - 'reject', - 'replace', - 'report', - 'reserve', - - 'scroll', - 'search', - 'select', - 'selection-screen', - 'shift', - 'skip', - 'sort', - 'split', - 'start-of-selection', - 'submit', - 'subtract', - 'subtract-corresponding', - 'sum', - 'summary', - 'summing', - 'supply', - 'syntax-check', - - 'top-of-page', - 'transfer', - 'translate', - 'type-pool', - - 'uline', - 'unpack', - 'update', - - 'window', - 'write' - - ), - - //********************************************************** - // keywords - //********************************************************** - - 4 => array( - 'abbreviated', - 'abstract', - 'accept', - 'acos', - 'activation', - 'alias', - 'align', - 'all', - 'allocate', - 'and', - 'assigned', - 'any', - 'appending', - 'area', - 'as', - 'ascending', - 'asin', - 'assigning', - 'atan', - 'attributes', - 'avg', - - 'backward', - 'between', - 'bit-and', - 'bit-not', - 'bit-or', - 'bit-set', - 'bit-xor', - 'boolc', - 'boolx', - 'bound', - 'bt', - 'blocks', - 'bounds', - 'boxed', - 'by', - 'byte-ca', - 'byte-cn', - 'byte-co', - 'byte-cs', - 'byte-na', - 'byte-ns', - - 'ca', - 'calling', - 'casting', - 'ceil', - 'center', - 'centered', - 'changing', - 'char_off', - 'charlen', - 'circular', - 'class_constructor', - 'client', - 'clike', - 'close', - 'cmax', - 'cmin', - 'cn', - 'cnt', - 'co', - 'col_background', - 'col_group', - 'col_heading', - 'col_key', - 'col_negative', - 'col_normal', - 'col_positive', - 'col_total', - 'color', - 'column', - 'comment', - 'comparing', - 'components', - 'condition', - 'context', - 'copies', - 'count', - 'country', - 'cpi', - 'creating', - 'critical', - 'concat_lines_of', - 'cos', - 'cosh', - 'count_any_not_of', - 'count_any_of', - 'cp', - 'cs', - 'csequence', - 'currency', - 'current', - 'cx_static_check', - 'cx_root', - 'cx_dynamic_check', - - 'dangerous', - 'database', - 'datainfo', - 'date', - 'dbmaxlen', - 'dd/mm/yy', - 'dd/mm/yyyy', - 'ddmmyy', - 'deallocate', - 'decfloat', - 'decfloat16', - 'decfloat34', - 'decimals', - 'default', - 'deferred', - 'definition', - 'department', - 'descending', - 'destination', - 'disconnect', - 'display-mode', - 'distance', - 'distinct', - 'div', - 'dummy', - - 'encoding', - 'end-lines', - 'engineering', - 'environment', - 'eq', - 'equiv', - 'error_message', - 'errormessage', - 'escape', - 'exact', - 'exception-table', - 'exceptions', - 'exclude', - 'excluding', - 'exists', - 'exp', - 'exponent', - 'exporting', - 'extended_monetary', - - 'field', - 'filter-table', - 'filters', - 'filter', - 'final', - 'find_any_not_of', - 'find_any_of', - 'find_end', - 'floor', - 'first-line', - 'font', - 'forward', - 'for', - 'frac', - 'from_mixed', - 'friends', - 'from', - - 'giving', - 'ge', - 'gt', - - 'handle', - 'harmless', - 'having', - 'head-lines', - 'help-id', - 'help-request', - 'high', - 'hold', - 'hotspot', - - 'id', - 'ids', - 'immediately', - 'implementation', - 'importing', - 'in', - 'initial', - 'incl', - 'including', - 'increment', - 'index', - 'index-line', - 'inner', - 'inout', - 'intensified', - 'into', - 'inverse', - 'is', - 'iso', - - 'join', - - 'key', - 'kind', - - 'log10', - 'language', - 'late', - 'layout', - 'le', - 'lt', - 'left-justified', - 'leftplus', - 'leftspace', - 'left', - 'length', - 'level', - 'like', - 'line-count', - 'line-size', - 'lines', - 'line', - 'load', - 'long', - 'lower', - 'low', - 'lpi', - - 'matches', - 'match', - 'mail', - 'major-id', - 'max', - 'medium', - 'memory', - 'message-id', - 'module', - 'minor-id', - 'min', - 'mm/dd/yyyy', - 'mm/dd/yy', - 'mmddyy', - 'mode', - 'modifier', - 'mod', - 'monetary', - - 'name', - 'nb', - 'ne', - 'next', - 'no-display', - 'no-extension', - 'no-gap', - 'no-gaps', - 'no-grouping', - 'no-heading', - 'no-scrolling', - 'no-sign', - 'no-title', - 'no-topofpage', - 'no-zero', - 'nodes', - 'non-unicode', - 'no', - 'number', - 'nmax', - 'nmin', - 'not', - 'null', - 'numeric', - 'numofchar', - - 'o', - 'objects', - 'obligatory', - 'occurs', - 'offset', - 'off', - 'of', - 'only', - 'open', - 'option', - 'optional', - 'options', - 'output-length', - 'output', - 'out', - 'on change of', - 'or', - 'others', - - 'pad', - 'page', - 'pages', - 'parameter-table', - 'part', - 'performing', - 'pos_high', - 'pos_low', - 'priority', - 'public', - 'pushbutton', - - 'queue-only', - 'quickinfo', - - 'raising', - 'range', - 'read-only', - 'received', - 'receiver', - 'receiving', - 'redefinition', - 'reference', - 'regex', - 'replacing', - 'reset', - 'responsible', - 'result', - 'results', - 'resumable', - 'returncode', - 'returning', - 'right', - 'right-specified', - 'rightplus', - 'rightspace', - 'round', - 'rows', - 'repeat', - 'requested', - 'rescale', - 'reverse', - - 'scale_preserving', - 'scale_preserving_scientific', - 'scientific', - 'scientific_with_leading_zero', - 'screen', - 'scrolling', - 'seconds', - 'segment', - 'shift_left', - 'shift_right', - 'sign', - 'simple', - 'sin', - 'sinh', - 'short', - 'shortdump-id', - 'sign_as_postfix', - 'single', - 'size', - 'some', - 'source', - 'space', - 'spots', - 'stable', - 'state', - 'static', - 'statusinfo', - 'sqrt', - 'string', - 'strlen', - 'structure', - 'style', - 'subkey', - 'submatches', - 'substring', - 'substring_after', - 'substring_before', - 'substring_from', - 'substring_to', - 'super', - 'supplied', - 'switch', - - 'tan', - 'tanh', - 'table_line', - 'table', - 'tab', - 'then', - 'timestamp', - 'times', - 'time', - 'timezone', - 'title-lines', - 'title', - 'top-lines', - 'to', - 'to_lower', - 'to_mixed', - 'to_upper', - 'trace-file', - 'trace-table', - 'transporting', - 'trunc', - 'type', - - 'under', - 'unique', - 'unit', - 'user-command', - 'using', - 'utf-8', - - 'valid', - 'value', - 'value-request', - 'values', - 'vary', - 'varying', - 'version', - - 'warning', - 'where', - 'width', - 'with', - 'word', - 'with-heading', - 'with-title', - - 'xsequence', - 'xstring', - 'xstrlen', - - 'yes', - 'yymmdd', - - 'z', - 'zero' - - ), - - //********************************************************** - // screen statements - //********************************************************** - - 5 => array( - 'call subscreen', - 'chain', - 'endchain', - 'on chain-input', - 'on chain-request', - 'on help-request', - 'on input', - 'on request', - 'on value-request', - 'process' - ), - - //********************************************************** - // internal statements - //********************************************************** - - 6 => array( - 'generate dynpro', - 'generate report', - 'import dynpro', - 'import nametab', - 'include methods', - 'load report', - 'scan abap-source', - 'scan and check abap-source', - 'syntax-check for dynpro', - 'syntax-check for program', - 'syntax-trace', - 'system-call', - 'system-exit', - 'verification-message' - ), - - //********************************************************** - // Control statements - //********************************************************** - - 1 => array( - 'assert', - 'case', - 'catch', - 'check', - 'cleanup', - 'continue', - 'do', - 'else', - 'elseif', - 'endat', - 'endcase', - 'endcatch', - 'endif', - 'enddo', - 'endloop', - 'endtry', - 'endwhile', - 'exit', - 'if', - 'loop', - 'resume', - 'retry', - 'return', - 'stop', - 'try', - 'when', - 'while' - - ), - - //********************************************************** - // variable declaration statements - //********************************************************** - - 2 => array( - 'class-data', - 'controls', - 'constants', - 'data', - 'field-symbols', - 'fields', - 'local', - 'parameters', - 'ranges', - 'select-options', - 'statics', - 'tables', - 'type-pools', - 'types' - ) - ), - 'SYMBOLS' => array( - 0 => array( - '->*', '->', '=>', - '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '!', '%', '^', '&', ':', ',', '.' - ), - 1 => array( - '>=', '<=', '<', '>', '=' - ), - 2 => array( - '?=' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;', //control statements - 2 => 'color: #cc4050; text-transform: uppercase; font-weight: bold; zzz:data;', //data statements - 3 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;', //first token of other statements - 4 => 'color: #500066; text-transform: uppercase; font-weight: bold; zzz:keyword;', // next tokens of other statements ("keywords") - 5 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;', - 6 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;', - 7 => 'color: #000066; text-transform: uppercase; font-weight: bold; zzz:control;', - 8 => 'color: #005066; text-transform: uppercase; font-weight: bold; zzz:statement;', - 9 => 'color: #500066; text-transform: uppercase; font-weight: bold; zzz:keyword;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #339933;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #808080;' - ), - 'STRINGS' => array( - 0 => 'color: #4da619;' - ), - 'NUMBERS' => array( - 0 => 'color: #3399ff;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #808080;', - 1 => 'color: #800080;', - 2 => 'color: #0000ff;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm', - 2 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm', - 3 => 'http://help.sap.com/abapdocu/en/ABAP{FNAMEU}.htm', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '=>' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 7 => array( - 'SPACE_AS_WHITESPACE' => true - ), - 8 => array( - 'SPACE_AS_WHITESPACE' => true - ), - 9 => array( - 'SPACE_AS_WHITESPACE' => true - ) - ) - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/actionscript.php b/system/application/libraries/geshi/actionscript.php deleted file mode 100644 index 394a463c4..000000000 --- a/system/application/libraries/geshi/actionscript.php +++ /dev/null @@ -1,197 +0,0 @@ -<?php -/************************************************************************************* - * actionscript.php - * ---------------- - * Author: Steffen Krause (Steffen.krause@muse.de) - * Copyright: (c) 2004 Steffen Krause, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/20 - * - * Actionscript language file for GeSHi. - * - * CHANGES - * ------- - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'ActionScript', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - '#include', 'for', 'foreach', 'each', 'if', 'elseif', 'else', 'while', 'do', 'dowhile', - 'endwhile', 'endif', 'switch', 'case', 'endswitch', 'return', 'break', 'continue', 'in' - ), - 2 => array( - 'null', 'false', 'true', 'var', - 'default', 'function', 'class', - 'new', '_global' - ), - 3 => array( - '#endinitclip', '#initclip', '__proto__', '_accProps', '_alpha', '_currentframe', - '_droptarget', '_focusrect', '_framesloaded', '_height', '_highquality', '_lockroot', - '_name', '_parent', '_quality', '_root', '_rotation', '_soundbuftime', '_target', '_totalframes', - '_url', '_visible', '_width', '_x', '_xmouse', '_xscale', '_y', '_ymouse', '_yscale', 'abs', - 'Accessibility', 'acos', 'activityLevel', 'add', 'addListener', 'addPage', 'addProperty', - 'addRequestHeader', 'align', 'allowDomain', 'allowInsecureDomain', 'and', 'appendChild', - 'apply', 'Arguments', 'Array', 'asfunction', 'asin', 'atan', 'atan2', 'attachAudio', 'attachMovie', - 'attachSound', 'attachVideo', 'attributes', 'autosize', 'avHardwareDisable', 'background', - 'backgroundColor', 'BACKSPACE', 'bandwidth', 'beginFill', 'beginGradientFill', 'blockIndent', - 'bold', 'Boolean', 'border', 'borderColor', 'bottomScroll', 'bufferLength', 'bufferTime', - 'builtInItems', 'bullet', 'Button', 'bytesLoaded', 'bytesTotal', 'call', 'callee', 'caller', - 'Camera', 'capabilities', 'CAPSLOCK', 'caption', 'catch', 'ceil', 'charAt', 'charCodeAt', - 'childNodes', 'chr', 'clear', 'clearInterval', 'cloneNode', 'close', 'Color', 'concat', - 'connect', 'condenseWhite', 'constructor', 'contentType', 'ContextMenu', 'ContextMenuItem', - 'CONTROL', 'copy', 'cos', 'createElement', 'createEmptyMovieClip', 'createTextField', - 'createTextNode', 'currentFps', 'curveTo', 'CustomActions', 'customItems', 'data', 'Date', - 'deblocking', 'delete', 'DELETEKEY', 'docTypeDecl', 'domain', 'DOWN', - 'duplicateMovieClip', 'duration', 'dynamic', 'E', 'embedFonts', 'enabled', - 'END', 'endFill', 'ENTER', 'eq', 'Error', 'ESCAPE(Konstante)', 'escape(Funktion)', 'eval', - 'exactSettings', 'exp', 'extends', 'finally', 'findText', 'firstChild', 'floor', - 'flush', 'focusEnabled', 'font', 'fps', 'fromCharCode', 'fscommand', - 'gain', 'ge', 'get', 'getAscii', 'getBeginIndex', 'getBounds', 'getBytesLoaded', 'getBytesTotal', - 'getCaretIndex', 'getCode', 'getCount', 'getDate', 'getDay', 'getDepth', 'getEndIndex', 'getFocus', - 'getFontList', 'getFullYear', 'getHours', 'getInstanceAtDepth', 'getLocal', 'getMilliseconds', - 'getMinutes', 'getMonth', 'getNewTextFormat', 'getNextHighestDepth', 'getPan', 'getProgress', - 'getProperty', 'getRGB', 'getSeconds', 'getSelected', 'getSelectedText', 'getSize', 'getStyle', - 'getStyleNames', 'getSWFVersion', 'getText', 'getTextExtent', 'getTextFormat', 'getTextSnapshot', - 'getTime', 'getTimer', 'getTimezoneOffset', 'getTransform', 'getURL', 'getUTCDate', 'getUTCDay', - 'getUTCFullYear', 'getUTCHours', 'getUTCMilliseconds', 'getUTCMinutes', 'getUTCMonth', 'getUTCSeconds', - 'getVersion', 'getVolume', 'getYear', 'globalToLocal', 'goto', 'gotoAndPlay', 'gotoAndStop', - 'hasAccessibility', 'hasAudio', 'hasAudioEncoder', 'hasChildNodes', 'hasEmbeddedVideo', 'hasMP3', - 'hasPrinting', 'hasScreenBroadcast', 'hasScreenPlayback', 'hasStreamingAudio', 'hasStreamingVideo', - 'hasVideoEncoder', 'height', 'hide', 'hideBuiltInItems', 'hitArea', 'hitTest', 'hitTestTextNearPos', - 'HOME', 'hscroll', 'html', 'htmlText', 'ID3', 'ifFrameLoaded', 'ignoreWhite', 'implements', - 'import', 'indent', 'index', 'indexOf', 'Infinity', '-Infinity', 'INSERT', 'insertBefore', 'install', - 'instanceof', 'int', 'interface', 'isActive', 'isDebugger', 'isDown', 'isFinite', 'isNaN', 'isToggled', - 'italic', 'join', 'Key', 'language', 'lastChild', 'lastIndexOf', 'le', 'leading', 'LEFT', 'leftMargin', - 'length', 'level', 'lineStyle', 'lineTo', 'list', 'LN10', 'LN2', 'load', 'loadClip', 'loaded', 'loadMovie', - 'loadMovieNum', 'loadSound', 'loadVariables', 'loadVariablesNum', 'LoadVars', 'LocalConnection', - 'localFileReadDisable', 'localToGlobal', 'log', 'LOG10E', 'LOG2E', 'manufacturer', 'Math', 'max', - 'MAX_VALUE', 'maxChars', 'maxhscroll', 'maxscroll', 'mbchr', 'mblength', 'mbord', 'mbsubstring', 'menu', - 'message', 'Microphone', 'min', 'MIN_VALUE', 'MMExecute', 'motionLevel', 'motionTimeOut', 'Mouse', - 'mouseWheelEnabled', 'moveTo', 'Movieclip', 'MovieClipLoader', 'multiline', 'muted', 'name', 'names', 'NaN', - 'ne', 'NEGATIVE_INFINITY', 'NetConnection', 'NetStream', 'newline', 'nextFrame', - 'nextScene', 'nextSibling', 'nodeName', 'nodeType', 'nodeValue', 'not', 'Number', 'Object', - 'on', 'onActivity', 'onChanged', 'onClipEvent', 'onClose', 'onConnect', 'onData', 'onDragOut', - 'onDragOver', 'onEnterFrame', 'onID3', 'onKeyDown', 'onKeyUp', 'onKillFocus', 'onLoad', 'onLoadComplete', - 'onLoadError', 'onLoadInit', 'onLoadProgress', 'onLoadStart', 'onMouseDown', 'onMouseMove', 'onMouseUp', - 'onMouseWheel', 'onPress', 'onRelease', 'onReleaseOutside', 'onResize', 'onRollOut', 'onRollOver', - 'onScroller', 'onSelect', 'onSetFocus', 'onSoundComplete', 'onStatus', 'onUnload', 'onUpdate', 'onXML', - 'or(logischesOR)', 'ord', 'os', 'parentNode', 'parseCSS', 'parseFloat', 'parseInt', 'parseXML', 'password', - 'pause', 'PGDN', 'PGUP', 'PI', 'pixelAspectRatio', 'play', 'playerType', 'pop', 'position', - 'POSITIVE_INFINITY', 'pow', 'prevFrame', 'previousSibling', 'prevScene', 'print', 'printAsBitmap', - 'printAsBitmapNum', 'PrintJob', 'printNum', 'private', 'prototype', 'public', 'push', 'quality', - 'random', 'rate', 'registerClass', 'removeListener', 'removeMovieClip', 'removeNode', 'removeTextField', - 'replaceSel', 'replaceText', 'resolutionX', 'resolutionY', 'restrict', 'reverse', 'RIGHT', - 'rightMargin', 'round', 'scaleMode', 'screenColor', 'screenDPI', 'screenResolutionX', 'screenResolutionY', - 'scroll', 'seek', 'selectable', 'Selection', 'send', 'sendAndLoad', 'separatorBefore', 'serverString', - 'set', 'setvariable', 'setBufferTime', 'setClipboard', 'setDate', 'setFocus', 'setFullYear', 'setGain', - 'setHours', 'setInterval', 'setMask', 'setMilliseconds', 'setMinutes', 'setMode', 'setMonth', - 'setMotionLevel', 'setNewTextFormat', 'setPan', 'setProperty', 'setQuality', 'setRate', 'setRGB', - 'setSeconds', 'setSelectColor', 'setSelected', 'setSelection', 'setSilenceLevel', 'setStyle', - 'setTextFormat', 'setTime', 'setTransform', 'setUseEchoSuppression', 'setUTCDate', 'setUTCFullYear', - 'setUTCHours', 'setUTCMilliseconds', 'setUTCMinutes', 'setUTCMonth', 'setUTCSeconds', 'setVolume', - 'setYear', 'SharedObject', 'SHIFT(Konstante)', 'shift(Methode)', 'show', 'showMenu', 'showSettings', - 'silenceLevel', 'silenceTimeout', 'sin', 'size', 'slice', 'smoothing', 'sort', 'sortOn', 'Sound', 'SPACE', - 'splice', 'split', 'sqrt', 'SQRT1_2', 'SQRT2', 'Stage', 'start', 'startDrag', 'static', 'status', 'stop', - 'stopAllSounds', 'stopDrag', 'String', 'StyleSheet(Klasse)', 'styleSheet(Eigenschaft)', 'substr', - 'substring', 'super', 'swapDepths', 'System', 'TAB', 'tabChildren', 'tabEnabled', 'tabIndex', - 'tabStops', 'tan', 'target', 'targetPath', 'tellTarget', 'text', 'textColor', 'TextField', 'TextFormat', - 'textHeight', 'TextSnapshot', 'textWidth', 'this', 'throw', 'time', 'toggleHighQuality', 'toLowerCase', - 'toString', 'toUpperCase', 'trace', 'trackAsMenu', 'try', 'type', 'typeof', 'undefined', - 'underline', 'unescape', 'uninstall', 'unloadClip', 'unloadMovie', 'unLoadMovieNum', 'unshift', 'unwatch', - 'UP', 'updateAfterEvent', 'updateProperties', 'url', 'useCodePage', 'useEchoSuppression', 'useHandCursor', - 'UTC', 'valueOf', 'variable', 'version', 'Video', 'visible', 'void', 'watch', 'width', - 'with', 'wordwrap', 'XML', 'xmlDecl', 'XMLNode', 'XMLSocket' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #0066CC;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/actionscript3.php b/system/application/libraries/geshi/actionscript3.php deleted file mode 100644 index 8449173e8..000000000 --- a/system/application/libraries/geshi/actionscript3.php +++ /dev/null @@ -1,473 +0,0 @@ -<?php -/************************************************************************************* - * actionscript3.php - * ---------------- - * Author: Jordi Boggiano (j.boggiano@seld.be) - * Copyright: (c) 2007 Jordi Boggiano (http://www.seld.be/), Benny Baumann (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2007/11/26 - * - * ActionScript3 language file for GeSHi. - * - * All keywords scraped from the Flex 2.0.1 Documentation - * - * The default style is based on FlexBuilder2 coloring, with the addition of class, package, method and - * constant names that are highlighted to help identifying problem when used on public pastebins. - * - * For styling, keywords data from 0 to 1 (accessible through .kw1, etc.) are described here : - * - * 1 : operators - * 2 : 'var' keyword - * 3 : 'function' keyword - * 4 : 'class' and 'package' keywords - * 5 : all flash.* class names plus Top Level classes, mx are excluded - * 6 : all flash.* package names, mx are excluded - * 7 : valid flash method names and properties (there is no type checks sadly, for example String().x will be highlighted as 'x' is valid, but obviously strings don't have a x property) - * 8 : valid flash constant names (again, no type check) - * - * - * CHANGES - * ------- - * 2007/12/06 (1.0.7.22) - * - Added the 'this' keyword (oops) - * - * TODO (updated 2007/11/30) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'ActionScript 3', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Regular expressions - 2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU", - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'with', 'while', 'void', 'undefined', 'typeof', 'try', 'true', - 'throw', 'this', 'switch', 'super', 'set', 'return', 'public', 'protected', - 'private', 'null', 'new', 'is', 'internal', 'instanceof', 'in', - 'import', 'if', 'get', 'for', 'false', 'else', 'each', 'do', - 'delete', 'default', 'continue', 'catch', 'case', 'break', 'as', - 'extends' - ), - 2 => array( - 'var' - ), - 3 => array( - 'function' - ), - 4 => array( - 'class', 'package' - ), - 6 => array( - 'flash.xml', 'flash.utils', 'flash.ui', 'flash.text', - 'flash.system', 'flash.profiler', 'flash.printing', 'flash.net', - 'flash.media', 'flash.geom', 'flash.filters', 'flash.external', - 'flash.events', 'flash.errors', 'flash.display', - 'flash.accessibility' - ), - 7 => array( - 'zoom', 'year', 'y', 'xmlDecl', 'x', 'writeUnsignedInt', - 'writeUTFBytes', 'writeUTF', 'writeShort', 'writeObject', - 'writeMultiByte', 'writeInt', 'writeFloat', 'writeExternal', - 'writeDynamicProperty', 'writeDynamicProperties', 'writeDouble', - 'writeBytes', 'writeByte', 'writeBoolean', 'wordWrap', - 'willTrigger', 'width', 'volume', 'visible', 'videoWidth', - 'videoHeight', 'version', 'valueOf', 'value', 'usingTLS', - 'useRichTextClipboard', 'useHandCursor', 'useEchoSuppression', - 'useCodePage', 'url', 'uri', 'uploadCompleteData', 'upload', - 'updateProperties', 'updateAfterEvent', 'upState', 'unshift', - 'unlock', 'unload', 'union', 'unescapeMultiByte', 'unescape', - 'underline', 'uncompress', 'type', 'ty', 'tx', 'transparent', - 'translate', 'transformPoint', 'transform', 'trackAsMenu', 'track', - 'trace', 'totalMemory', 'totalFrames', 'topLeft', 'top', - 'togglePause', 'toXMLString', 'toUpperCase', 'toUTCString', - 'toTimeString', 'toString', 'toPrecision', 'toLowerCase', - 'toLocaleUpperCase', 'toLocaleTimeString', 'toLocaleString', - 'toLocaleLowerCase', 'toLocaleDateString', 'toFixed', - 'toExponential', 'toDateString', 'timezoneOffset', 'timerComplete', - 'timer', 'time', 'threshold', 'thickness', 'textWidth', - 'textSnapshot', 'textInput', 'textHeight', 'textColor', 'text', - 'test', 'target', 'tan', 'tabStops', 'tabIndexChange', 'tabIndex', - 'tabEnabledChange', 'tabEnabled', 'tabChildrenChange', - 'tabChildren', 'sync', 'swfVersion', 'swapChildrenAt', - 'swapChildren', 'subtract', 'substring', 'substr', 'styleSheet', - 'styleNames', 'strength', 'stopPropagation', - 'stopImmediatePropagation', 'stopDrag', 'stopAll', 'stop', 'status', - 'startDrag', 'start', 'stageY', 'stageX', 'stageWidth', - 'stageHeight', 'stageFocusRect', 'stage', 'sqrt', 'split', 'splice', - 'source', 'soundTransform', 'soundComplete', 'sortOn', 'sort', - 'songName', 'some', 'socketData', 'smoothing', 'slice', 'size', - 'sin', 'silent', 'silenceTimeout', 'silenceLevel', 'showSettings', - 'showRedrawRegions', 'showDefaultContextMenu', 'show', 'shortcut', - 'shiftKey', 'shift', 'sharpness', 'sharedEvents', 'shadowColor', - 'shadowAlpha', 'settings', 'setUseEchoSuppression', 'setUTCSeconds', - 'setUTCMonth', 'setUTCMinutes', 'setUTCMilliseconds', 'setUTCHours', - 'setUTCFullYear', 'setUTCDate', 'setTimeout', 'setTime', - 'setTextFormat', 'setStyle', 'setSilenceLevel', 'setSettings', - 'setSelection', 'setSelected', 'setSelectColor', 'setSeconds', - 'setQuality', 'setPropertyIsEnumerable', 'setProperty', 'setPixels', - 'setPixel32', 'setPixel', 'setNamespace', 'setName', - 'setMotionLevel', 'setMonth', 'setMode', 'setMinutes', - 'setMilliseconds', 'setLoopback', 'setLoopBack', 'setLocalName', - 'setKeyFrameInterval', 'setInterval', 'setHours', 'setFullYear', - 'setEmpty', 'setDirty', 'setDate', 'setCompositionString', - 'setClipboard', 'setChildren', 'setChildIndex', - 'setAdvancedAntiAliasingTable', 'serverString', 'separatorBefore', - 'sendToURL', 'send', 'selectionEndIndex', 'selectionBeginIndex', - 'selectable', 'select', 'seek', 'securityError', 'securityDomain', - 'secondsUTC', 'seconds', 'search', 'scrollV', 'scrollRect', - 'scrollH', 'scroll', 'screenResolutionY', 'screenResolutionX', - 'screenDPI', 'screenColor', 'scenes', 'scaleY', 'scaleX', - 'scaleMode', 'scale9Grid', 'scale', 'save', 'sandboxType', - 'sameDomain', 'running', 'round', 'rotation', 'rotate', 'root', - 'rollOver', 'rollOut', 'rightToRight', 'rightToLeft', 'rightPeak', - 'rightMargin', 'right', 'rewind', 'reverse', 'resume', 'restrict', - 'resize', 'reset', 'requestHeaders', 'replaceText', - 'replaceSelectedText', 'replace', 'repeatCount', 'render', - 'removedFromStage', 'removed', 'removeNode', 'removeNamespace', - 'removeEventListener', 'removeChildAt', 'removeChild', - 'relatedObject', 'registerFont', 'registerClassAlias', 'redOffset', - 'redMultiplier', 'rect', 'receiveVideo', 'receiveAudio', - 'readUnsignedShort', 'readUnsignedInt', 'readUnsignedByte', - 'readUTFBytes', 'readUTF', 'readShort', 'readObject', - 'readMultiByte', 'readInt', 'readFloat', 'readExternal', - 'readDouble', 'readBytes', 'readByte', 'readBoolean', 'ratios', - 'rate', 'random', 'quality', 'push', 'publish', 'proxyType', - 'prototype', 'propertyIsEnumerable', 'progress', - 'processingInstructions', 'printAsBitmap', 'print', - 'previousSibling', 'preventDefault', 'prevScene', 'prevFrame', - 'prettyPrinting', 'prettyIndent', 'preserveAlpha', 'prependChild', - 'prefix', 'pow', 'position', 'pop', 'polar', 'playerType', 'play', - 'pixelSnapping', 'pixelDissolve', 'pixelBounds', 'pixelAspectRatio', - 'perlinNoise', 'pause', 'parseXML', 'parseInt', 'parseFloat', - 'parseCSS', 'parse', 'parentNode', 'parentDomain', - 'parentAllowsChild', 'parent', 'parameters', 'paperWidth', - 'paperHeight', 'pan', 'paletteMap', 'pageWidth', 'pageHeight', - 'overState', 'outsideCutoff', 'os', 'orientation', 'open', - 'opaqueBackground', 'onPlayStatus', 'onMetaData', 'onCuePoint', - 'offsetPoint', 'offset', 'objectID', 'objectEncoding', 'numLock', - 'numLines', 'numFrames', 'numChildren', 'normalize', 'noise', - 'nodeValue', 'nodeType', 'nodeName', 'nodeKind', 'noAutoLabeling', - 'nextValue', 'nextSibling', 'nextScene', 'nextNameIndex', - 'nextName', 'nextFrame', 'netStatus', 'navigateToURL', - 'namespaceURI', 'namespaceDeclarations', 'namespace', 'names', - 'name', 'muted', 'multiline', 'moveTo', 'mouseY', 'mouseX', - 'mouseWheelEnabled', 'mouseWheel', 'mouseUp', 'mouseTarget', - 'mouseOver', 'mouseOut', 'mouseMove', 'mouseLeave', - 'mouseFocusChange', 'mouseEnabled', 'mouseDown', 'mouseChildren', - 'motionTimeout', 'motionLevel', 'monthUTC', 'month', - 'modificationDate', 'mode', 'minutesUTC', 'minutes', 'min', - 'millisecondsUTC', 'milliseconds', 'method', 'message', 'merge', - 'menuSelect', 'menuItemSelect', 'maxScrollV', 'maxScrollH', - 'maxLevel', 'maxChars', 'max', 'matrixY', 'matrixX', 'matrix', - 'match', 'mask', 'mapPoint', 'mapBitmap', 'map', 'manufacturer', - 'macType', 'loopback', 'loop', 'log', 'lock', 'localeCompare', - 'localY', 'localX', 'localToGlobal', 'localName', - 'localFileReadDisable', 'loaderURL', 'loaderInfo', 'loader', - 'loadPolicyFile', 'loadBytes', 'load', 'liveDelay', 'link', - 'lineTo', 'lineStyle', 'lineGradientStyle', 'level', - 'letterSpacing', 'length', 'leftToRight', 'leftToLeft', 'leftPeak', - 'leftMargin', 'left', 'leading', 'lastIndexOf', 'lastIndex', - 'lastChild', 'language', 'labels', 'knockout', 'keyUp', - 'keyLocation', 'keyFrameInterval', 'keyFocusChange', 'keyDown', - 'keyCode', 'kerning', 'join', 'italic', 'isXMLName', - 'isPrototypeOf', 'isNaN', 'isFocusInaccessible', 'isFinite', - 'isEmpty', 'isDefaultPrevented', 'isDebugger', 'isBuffering', - 'isAttribute', 'isAccessible', 'ioError', 'invert', 'invalidate', - 'intersects', 'intersection', 'interpolate', 'insideCutoff', - 'insertChildBefore', 'insertChildAfter', 'insertBefore', 'inner', - 'init', 'info', 'inflatePoint', 'inflate', 'indexOf', 'index', - 'indent', 'inScopeNamespaces', 'imeComposition', 'ime', - 'ignoreWhitespace', 'ignoreWhite', 'ignoreProcessingInstructions', - 'ignoreComments', 'ignoreCase', 'identity', 'idMap', 'id3', - 'httpStatus', 'htmlText', 'hoursUTC', 'hours', 'hitTestTextNearPos', - 'hitTestState', 'hitTestPoint', 'hitTestObject', 'hitTest', - 'hitArea', 'highlightColor', 'highlightAlpha', 'hideObject', - 'hideBuiltInItems', 'hide', 'height', 'hasVideoEncoder', 'hasTLS', - 'hasStreamingVideo', 'hasStreamingAudio', 'hasSimpleContent', - 'hasScreenPlayback', 'hasScreenBroadcast', 'hasProperty', - 'hasPrinting', 'hasOwnProperty', 'hasMP3', 'hasIME', 'hasGlyphs', - 'hasEventListener', 'hasEmbeddedVideo', 'hasDefinition', - 'hasComplexContent', 'hasChildNodes', 'hasAudioEncoder', 'hasAudio', - 'hasAccessibility', 'gridFitType', 'greenOffset', 'greenMultiplier', - 'graphics', 'gotoAndStop', 'gotoAndPlay', 'globalToLocal', 'global', - 'getUTCSeconds', 'getUTCMonth', 'getUTCMinutes', - 'getUTCMilliseconds', 'getUTCHours', 'getUTCFullYear', 'getUTCDay', - 'getUTCDate', 'getTimezoneOffset', 'getTimer', 'getTime', - 'getTextRunInfo', 'getTextFormat', 'getText', 'getStyle', - 'getStackTrace', 'getSelectedText', 'getSelected', 'getSeconds', - 'getRemote', 'getRect', 'getQualifiedSuperclassName', - 'getQualifiedClassName', 'getProperty', 'getPrefixForNamespace', - 'getPixels', 'getPixel32', 'getPixel', 'getParagraphLength', - 'getObjectsUnderPoint', 'getNamespaceForPrefix', 'getMonth', - 'getMinutes', 'getMilliseconds', 'getMicrophone', 'getLocal', - 'getLineText', 'getLineOffset', 'getLineMetrics', 'getLineLength', - 'getLineIndexOfChar', 'getLineIndexAtPoint', 'getImageReference', - 'getHours', 'getFullYear', 'getFirstCharInParagraph', - 'getDescendants', 'getDefinitionByName', 'getDefinition', 'getDay', - 'getDate', 'getColorBoundsRect', 'getClassByAlias', 'getChildIndex', - 'getChildByName', 'getChildAt', 'getCharIndexAtPoint', - 'getCharBoundaries', 'getCamera', 'getBounds', 'genre', - 'generateFilterRect', 'gain', 'fullYearUTC', 'fullYear', - 'fullScreen', 'fscommand', 'fromCharCode', 'framesLoaded', - 'frameRate', 'frame', 'fps', 'forwardAndBack', 'formatToString', - 'forceSimple', 'forEach', 'fontType', 'fontStyle', 'fontSize', - 'fontName', 'font', 'focusRect', 'focusOut', 'focusIn', 'focus', - 'flush', 'floor', 'floodFill', 'firstChild', 'findText', 'filters', - 'filter', 'fillRect', 'fileList', 'extension', 'extended', 'exp', - 'exec', 'exactSettings', 'every', 'eventPhase', 'escapeMultiByte', - 'escape', 'errorID', 'error', 'equals', 'enumerateFonts', - 'enterFrame', 'endian', 'endFill', 'encodeURIComponent', - 'encodeURI', 'enabled', 'embedFonts', 'elements', - 'dynamicPropertyWriter', 'dropTarget', 'drawRoundRect', 'drawRect', - 'drawEllipse', 'drawCircle', 'draw', 'download', 'downState', - 'doubleClickEnabled', 'doubleClick', 'dotall', 'domain', - 'docTypeDecl', 'doConversion', 'divisor', 'distance', 'dispose', - 'displayState', 'displayMode', 'displayAsPassword', 'dispatchEvent', - 'description', 'describeType', 'descent', 'descendants', - 'deltaTransformPoint', 'delta', 'deleteProperty', 'delay', - 'defaultTextFormat', 'defaultSettings', 'defaultObjectEncoding', - 'decodeURIComponent', 'decodeURI', 'decode', 'deblocking', - 'deactivate', 'dayUTC', 'day', 'dateUTC', 'date', 'dataFormat', - 'data', 'd', 'customItems', 'curveTo', 'currentTarget', - 'currentScene', 'currentLabels', 'currentLabel', 'currentFrame', - 'currentFPS', 'currentDomain', 'currentCount', 'ctrlKey', 'creator', - 'creationDate', 'createTextNode', 'createGradientBox', - 'createElement', 'createBox', 'cos', 'copyPixels', 'copyChannel', - 'copy', 'conversionMode', 'contextMenuOwner', 'contextMenu', - 'contentType', 'contentLoaderInfo', 'content', 'containsRect', - 'containsPoint', 'contains', 'constructor', 'connectedProxyType', - 'connected', 'connect', 'condenseWhite', 'concatenatedMatrix', - 'concatenatedColorTransform', 'concat', 'computeSpectrum', - 'compress', 'componentY', 'componentX', 'complete', 'compare', - 'comments', 'comment', 'colors', 'colorTransform', 'color', 'code', - 'close', 'cloneNode', 'clone', 'client', 'click', 'clearTimeout', - 'clearInterval', 'clear', 'clamp', 'children', 'childNodes', - 'childIndex', 'childAllowsParent', 'child', 'checkPolicyFile', - 'charCount', 'charCodeAt', 'charCode', 'charAt', 'changeList', - 'change', 'ceil', 'caretIndex', 'caption', 'capsLock', 'cancelable', - 'cancel', 'callee', 'callProperty', 'call', 'cacheAsBitmap', 'c', - 'bytesTotal', 'bytesLoaded', 'bytesAvailable', 'buttonMode', - 'buttonDown', 'bullet', 'builtInItems', 'bufferTime', - 'bufferLength', 'bubbles', 'browse', 'bottomScrollV', 'bottomRight', - 'bottom', 'borderColor', 'border', 'bold', 'blurY', 'blurX', - 'blueOffset', 'blueMultiplier', 'blockIndent', 'blendMode', - 'bitmapData', 'bias', 'beginGradientFill', 'beginFill', - 'beginBitmapFill', 'bandwidth', 'backgroundColor', 'background', - 'b', 'available', 'avHardwareDisable', 'autoSize', 'attributes', - 'attribute', 'attachNetStream', 'attachCamera', 'attachAudio', - 'atan2', 'atan', 'asyncError', 'asin', 'ascent', 'artist', - 'areSoundsInaccessible', 'areInaccessibleObjectsUnderPoint', - 'applyFilter', 'apply', 'applicationDomain', 'appendText', - 'appendChild', 'antiAliasType', 'angle', 'alwaysShowSelection', - 'altKey', 'alphas', 'alphaOffset', 'alphaMultiplier', 'alpha', - 'allowInsecureDomain', 'allowDomain', 'align', 'album', - 'addedToStage', 'added', 'addPage', 'addNamespace', 'addHeader', - 'addEventListener', 'addChildAt', 'addChild', 'addCallback', 'add', - 'activityLevel', 'activity', 'active', 'activating', 'activate', - 'actionScriptVersion', 'acos', 'accessibilityProperties', 'abs' - ), - 8 => array( - 'WRAP', 'VERTICAL', 'VARIABLES', - 'UTC', 'UPLOAD_COMPLETE_DATA', 'UP', 'UNLOAD', 'UNKNOWN', - 'UNIQUESORT', 'TOP_RIGHT', 'TOP_LEFT', 'TOP', 'TIMER_COMPLETE', - 'TIMER', 'TEXT_NODE', 'TEXT_INPUT', 'TEXT', 'TAB_INDEX_CHANGE', - 'TAB_ENABLED_CHANGE', 'TAB_CHILDREN_CHANGE', 'TAB', 'SYNC', - 'SUBTRACT', 'SUBPIXEL', 'STATUS', 'STANDARD', 'SQUARE', 'SQRT2', - 'SQRT1_2', 'SPACE', 'SOUND_COMPLETE', 'SOCKET_DATA', 'SHOW_ALL', - 'SHIFT', 'SETTINGS_MANAGER', 'SELECT', 'SECURITY_ERROR', 'SCROLL', - 'SCREEN', 'ROUND', 'ROLL_OVER', 'ROLL_OUT', 'RIGHT', 'RGB', - 'RETURNINDEXEDARRAY', 'RESIZE', 'REPEAT', 'RENDER', - 'REMOVED_FROM_STAGE', 'REMOVED', 'REMOTE', 'REGULAR', 'REFLECT', - 'RED', 'RADIAL', 'PROGRESS', 'PRIVACY', 'POST', 'POSITIVE_INFINITY', - 'PORTRAIT', 'PIXEL', 'PI', 'PENDING', 'PAGE_UP', 'PAGE_DOWN', 'PAD', - 'OVERLAY', 'OUTER', 'OPEN', 'NaN', 'NUM_PAD', 'NUMPAD_SUBTRACT', - 'NUMPAD_MULTIPLY', 'NUMPAD_ENTER', 'NUMPAD_DIVIDE', - 'NUMPAD_DECIMAL', 'NUMPAD_ADD', 'NUMPAD_9', 'NUMPAD_8', 'NUMPAD_7', - 'NUMPAD_6', 'NUMPAD_5', 'NUMPAD_4', 'NUMPAD_3', 'NUMPAD_2', - 'NUMPAD_1', 'NUMPAD_0', 'NUMERIC', 'NO_SCALE', 'NO_BORDER', - 'NORMAL', 'NONE', 'NEVER', 'NET_STATUS', 'NEGATIVE_INFINITY', - 'MULTIPLY', 'MOUSE_WHEEL', 'MOUSE_UP', 'MOUSE_OVER', 'MOUSE_OUT', - 'MOUSE_MOVE', 'MOUSE_LEAVE', 'MOUSE_FOCUS_CHANGE', 'MOUSE_DOWN', - 'MITER', 'MIN_VALUE', 'MICROPHONE', 'MENU_SELECT', - 'MENU_ITEM_SELECT', 'MEDIUM', 'MAX_VALUE', 'LOW', 'LOG2E', 'LOG10E', - 'LOCAL_WITH_NETWORK', 'LOCAL_WITH_FILE', 'LOCAL_TRUSTED', - 'LOCAL_STORAGE', 'LN2', 'LN10', 'LITTLE_ENDIAN', 'LINK', - 'LINEAR_RGB', 'LINEAR', 'LIGHT_COLOR', 'LIGHTEN', 'LEFT', 'LCD', - 'LAYER', 'LANDSCAPE', 'KOREAN', 'KEY_UP', 'KEY_FOCUS_CHANGE', - 'KEY_DOWN', 'JUSTIFY', 'JAPANESE_KATAKANA_HALF', - 'JAPANESE_KATAKANA_FULL', 'JAPANESE_HIRAGANA', 'Infinity', 'ITALIC', - 'IO_ERROR', 'INVERT', 'INSERT', 'INPUT', 'INNER', 'INIT', - 'IME_COMPOSITION', 'IGNORE', 'ID3', 'HTTP_STATUS', 'HORIZONTAL', - 'HOME', 'HIGH', 'HARDLIGHT', 'GREEN', 'GET', 'FULLSCREEN', 'FULL', - 'FOCUS_OUT', 'FOCUS_IN', 'FLUSHED', 'FLASH9', 'FLASH8', 'FLASH7', - 'FLASH6', 'FLASH5', 'FLASH4', 'FLASH3', 'FLASH2', 'FLASH1', 'F9', - 'F8', 'F7', 'F6', 'F5', 'F4', 'F3', 'F2', 'F15', 'F14', 'F13', - 'F12', 'F11', 'F10', 'F1', 'EXACT_FIT', 'ESCAPE', 'ERROR', 'ERASE', - 'ENTER_FRAME', 'ENTER', 'END', 'EMBEDDED', 'ELEMENT_NODE', 'E', - 'DYNAMIC', 'DOWN', 'DOUBLE_CLICK', 'DIFFERENCE', 'DEVICE', - 'DESCENDING', 'DELETE', 'DEFAULT', 'DEACTIVATE', 'DATA', - 'DARK_COLOR', 'DARKEN', 'CRT', 'CONTROL', 'CONNECT', 'COMPLETE', - 'COLOR', 'CLOSE', 'CLICK', 'CLAMP', 'CHINESE', 'CHANGE', 'CENTER', - 'CASEINSENSITIVE', 'CAPTURING_PHASE', 'CAPS_LOCK', 'CANCEL', - 'CAMERA', 'BUBBLING_PHASE', 'BOTTOM_RIGHT', 'BOTTOM_LEFT', 'BOTTOM', - 'BOLD_ITALIC', 'BOLD', 'BLUE', 'BINARY', 'BIG_ENDIAN', 'BEVEL', - 'BEST', 'BACKSPACE', 'AUTO', 'AT_TARGET', 'ASYNC_ERROR', 'AMF3', - 'AMF0', 'ALWAYS', 'ALPHANUMERIC_HALF', 'ALPHANUMERIC_FULL', 'ALPHA', - 'ADVANCED', 'ADDED_TO_STAGE', 'ADDED', 'ADD', 'ACTIVITY', - 'ACTIONSCRIPT3', 'ACTIONSCRIPT2' - ), - //FIX: Must be last in order to avoid conflicts with keywords present - //in other keyword groups, that might get highlighted as part of the URL. - //I know this is not a proper work-around, but should do just fine. - 5 => array( - 'uint', 'int', 'arguments', 'XMLSocket', 'XMLNodeType', 'XMLNode', - 'XMLList', 'XMLDocument', 'XML', 'Video', 'VerifyError', - 'URLVariables', 'URLStream', 'URLRequestMethod', 'URLRequestHeader', - 'URLRequest', 'URLLoaderDataFormat', 'URLLoader', 'URIError', - 'TypeError', 'Transform', 'TimerEvent', 'Timer', 'TextSnapshot', - 'TextRenderer', 'TextLineMetrics', 'TextFormatAlign', 'TextFormat', - 'TextFieldType', 'TextFieldAutoSize', 'TextField', 'TextEvent', - 'TextDisplayMode', 'TextColorType', 'System', 'SyntaxError', - 'SyncEvent', 'StyleSheet', 'String', 'StatusEvent', 'StaticText', - 'StageScaleMode', 'StageQuality', 'StageAlign', 'Stage', - 'StackOverflowError', 'Sprite', 'SpreadMethod', 'SoundTransform', - 'SoundMixer', 'SoundLoaderContext', 'SoundChannel', 'Sound', - 'Socket', 'SimpleButton', 'SharedObjectFlushStatus', 'SharedObject', - 'Shape', 'SecurityPanel', 'SecurityErrorEvent', 'SecurityError', - 'SecurityDomain', 'Security', 'ScriptTimeoutError', 'Scene', - 'SWFVersion', 'Responder', 'RegExp', 'ReferenceError', 'Rectangle', - 'RangeError', 'QName', 'Proxy', 'ProgressEvent', - 'PrintJobOrientation', 'PrintJobOptions', 'PrintJob', 'Point', - 'PixelSnapping', 'ObjectEncoding', 'Object', 'Number', 'NetStream', - 'NetStatusEvent', 'NetConnection', 'Namespace', 'MovieClip', - 'MouseEvent', 'Mouse', 'MorphShape', 'Microphone', 'MemoryError', - 'Matrix', 'Math', 'LocalConnection', 'LoaderInfo', 'LoaderContext', - 'Loader', 'LineScaleMode', 'KeyboardEvent', 'Keyboard', - 'KeyLocation', 'JointStyle', 'InvalidSWFError', - 'InterpolationMethod', 'InteractiveObject', 'IllegalOperationError', - 'IOErrorEvent', 'IOError', 'IMEEvent', 'IMEConversionMode', 'IME', - 'IExternalizable', 'IEventDispatcher', 'IDynamicPropertyWriter', - 'IDynamicPropertyOutput', 'IDataOutput', 'IDataInput', 'ID3Info', - 'IBitmapDrawable', 'HTTPStatusEvent', 'GridFitType', 'Graphics', - 'GradientType', 'GradientGlowFilter', 'GradientBevelFilter', - 'GlowFilter', 'Function', 'FrameLabel', 'FontType', 'FontStyle', - 'Font', 'FocusEvent', 'FileReferenceList', 'FileReference', - 'FileFilter', 'ExternalInterface', 'EventPhase', 'EventDispatcher', - 'Event', 'EvalError', 'ErrorEvent', 'Error', 'Endian', 'EOFError', - 'DropShadowFilter', 'DisplayObjectContainer', 'DisplayObject', - 'DisplacementMapFilterMode', 'DisplacementMapFilter', 'Dictionary', - 'DefinitionError', 'Date', 'DataEvent', 'ConvolutionFilter', - 'ContextMenuItem', 'ContextMenuEvent', 'ContextMenuBuiltInItems', - 'ContextMenu', 'ColorTransform', 'ColorMatrixFilter', 'Class', - 'CapsStyle', 'Capabilities', 'Camera', 'CSMSettings', 'ByteArray', - 'Boolean', 'BlurFilter', 'BlendMode', 'BitmapFilterType', - 'BitmapFilterQuality', 'BitmapFilter', 'BitmapDataChannel', - 'BitmapData', 'Bitmap', 'BevelFilter', 'AsyncErrorEvent', 'Array', - 'ArgumentError', 'ApplicationDomain', 'AntiAliasType', - 'ActivityEvent', 'ActionScriptVersion', 'AccessibilityProperties', - 'Accessibility', 'AVM1Movie' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '%', '&', '*', '|', '/', '<', '>', '^', '-', '+', '~', '?', ':', ';', '.', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0033ff; font-weight: bold;', - 2 => 'color: #6699cc; font-weight: bold;', - 3 => 'color: #339966; font-weight: bold;', - 4 => 'color: #9900cc; font-weight: bold;', - 5 => 'color: #004993;', - 6 => 'color: #004993;', - 7 => 'color: #004993;', - 8 => 'color: #004993;' - ), - 'COMMENTS' => array( - 1 => 'color: #009900; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 'MULTI' => 'color: #3f5fbf;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #990000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000; font-weight:bold;' - ), - 'METHODS' => array( - 0 => 'color: #000000;', - ), - 'SYMBOLS' => array( - 0 => 'color: #000066; font-weight: bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => 'http://www.google.com/search?q={FNAMEL}%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:{FNAMEL}.html', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => false,//Save some time as OO identifiers aren't used - 'OBJECT_SPLITTERS' => array( - // commented out because it's not very relevant for AS, as all properties, methods and constants are dot-accessed. - // I believe it's preferable to have package highlighting for example, which is not possible with this enabled. - // 0 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/ada.php b/system/application/libraries/geshi/ada.php deleted file mode 100644 index 4c112f0db..000000000 --- a/system/application/libraries/geshi/ada.php +++ /dev/null @@ -1,135 +0,0 @@ -<?php -/************************************************************************************* - * ada.php - * ------- - * Author: Tux (tux@inmail.cz) - * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/29 - * - * Ada language file for GeSHi. - * Words are from SciTe configuration file - * - * CHANGES - * ------- - * 2004/11/27 (1.0.2) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.1) - * - Removed apostrophe as string delimiter - * - Added URL support - * 2004/08/05 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Ada', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'begin', 'declare', 'do', 'else', 'elsif', 'exception', 'for', 'if', - 'is', 'loop', 'while', 'then', 'end', 'select', 'case', 'until', - 'goto', 'return' - ), - 2 => array( - 'abs', 'and', 'at', 'mod', 'not', 'or', 'rem', 'xor' - ), - 3 => array( - 'abort', 'abstract', 'accept', 'access', 'aliased', 'all', 'array', - 'body', 'constant', 'delay', 'delta', 'digits', 'entry', 'exit', - 'function', 'generic', 'in', 'interface', 'limited', 'new', 'null', - 'of', 'others', 'out', 'overriding', 'package', 'pragma', 'private', - 'procedure', 'protected', 'raise', 'range', 'record', 'renames', - 'requeue', 'reverse', 'separate', 'subtype', 'synchronized', - 'tagged', 'task', 'terminate', 'type', 'use', 'when', 'with' - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f;', - 2 => 'color: #0000ff;', - 3 => 'color: #46aa03; font-weight:bold;', - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - 1 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/apache.php b/system/application/libraries/geshi/apache.php deleted file mode 100644 index a5b651bb6..000000000 --- a/system/application/libraries/geshi/apache.php +++ /dev/null @@ -1,480 +0,0 @@ -<?php -/************************************************************************************* - * apache.php - * ---------- - * Author: Tux (tux@inmail.cz) - * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/29/07 - * - * Apache language file for GeSHi. - * Words are from SciTe configuration file - * - * CHANGES - * ------- - * 2008/17/06 (1.0.8) - * - Added support for apache configuration sections (milian) - * - Added missing php keywords (milian) - * - Added some more keywords - * - Disabled highlighting of brackets by default - * 2004/11/27 (1.0.2) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.1) - * - Added support for URLs - * 2004/08/05 (1.0.0) - * - First Release - * - * TODO (updated 2004/07/29) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Apache configuration', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /*keywords*/ - 1 => array( - //core.c - 'AcceptFilter','AcceptPathInfo','AccessConfig','AccessFileName', - 'AddDefaultCharset','AddOutputFilterByType','AllowEncodedSlashes', - 'AllowOverride','AuthName','AuthType','ContentDigest', - 'CoreDumpDirectory','DefaultType','DocumentRoot','EnableMMAP', - 'EnableSendfile','ErrorDocument','ErrorLog','FileETag','ForceType', - 'HostnameLookups','Include','LimitInternalRecursion', - 'LimitRequestBody','LimitRequestFields','LimitRequestFieldsize', - 'LimitRequestLine','LimitXMLRequestBody','LogLevel','MaxMemFree', - 'MaxRequestsPerChild','NameVirtualHost','Options','PidFile','Port', - 'Protocol','Require','RLimitCPU','RLimitMEM','RLimitNPROC', - 'Satisfy','ScoreBoardFile','ServerAdmin','ServerAlias','ServerName', - 'ServerPath','ServerRoot','ServerSignature','ServerTokens', - 'SetHandler','SetInputFilter','SetOutputFilter','ThreadStackSize', - 'Timeout','TraceEnable','UseCanonicalName', - 'UseCanonicalPhysicalPort', - - //http_core.c - 'KeepAlive','KeepAliveTimeout','MaxKeepAliveRequests', - - //mod_actions.c - 'Action','Script', - - //mod_alias.c - 'Alias','AliasMatch','Redirect','RedirectMatch','RedirectPermanent', - 'RedirectTemp','ScriptAlias','ScriptAliasMatch', - - //mod_asis.c - - //mod_auth_basic.c - 'AuthBasicAuthoritative','AuthBasicProvider', - - //mod_auth_digest.c - 'AuthDigestAlgorithm','AuthDigestDomain','AuthDigestNcCheck', - 'AuthDigestNonceFormat','AuthDigestNonceLifetime', - 'AuthDigestProvider','AuthDigestQop','AuthDigestShmemSize', - - //mod_authn_alias.c - - //mod_authn_anon.c - 'Anonymous','Anonymous_LogEmail','Anonymous_MustGiveEmail', - 'Anonymous_NoUserId','Anonymous_VerifyEmail', - - //mod_authn_dbd.c - 'AuthDBDUserPWQuery','AuthDBDUserRealmQuery', - - //mod_authn_dbm.c - 'AuthDBMType','AuthDBMUserFile', - - //mod_authn_default.c - 'AuthDefaultAuthoritative', - - //mod_authn_file.c - 'AuthUserFile', - - //mod_authnz_ldap.c - 'AuthLDAPBindDN','AuthLDAPBindPassword','AuthLDAPCharsetConfig', - 'AuthLDAPCompareDNOnServer','AuthLDAPDereferenceAliases', - 'AuthLDAPGroupAttribute','AuthLDAPGroupAttributeIsDN', - 'AuthLDAPRemoteUserAttribute','AuthLDAPRemoteUserIsDN', - 'AuthLDAPURL','AuthzLDAPAuthoritative', - - //mod_authz_dbm.c - 'AuthDBMGroupFile','AuthzDBMAuthoritative','AuthzDBMType', - - //mod_authz_default.c - 'AuthzDefaultAuthoritative', - - //mod_authz_groupfile.c - 'AuthGroupFile','AuthzGroupFileAuthoritative', - - //mod_authz_host.c - 'Allow','Deny','Order', - - //mod_authz_owner.c - 'AuthzOwnerAuthoritative', - - //mod_authz_svn.c - 'AuthzForceUsernameCase','AuthzSVNAccessFile','AuthzSVNAnonymous', - 'AuthzSVNAuthoritative','AuthzSVNNoAuthWhenAnonymousAllowed', - - //mod_authz_user.c - 'AuthzUserAuthoritative', - - //mod_autoindex.c - 'AddAlt','AddAltByEncoding','AddAltByType','AddDescription', - 'AddIcon','AddIconByEncoding','AddIconByType','DefaultIcon', - 'FancyIndexing','HeaderName','IndexHeadInsert','IndexIgnore', - 'IndexOptions','IndexOrderDefault','IndexStyleSheet','ReadmeName', - - //mod_bt.c - 'Tracker','TrackerDetailURL','TrackerFlags','TrackerHashMaxAge', - 'TrackerHashMinAge','TrackerHashWatermark','TrackerHome', - 'TrackerReturnInterval','TrackerReturnMax', - 'TrackerReturnPeerFactor','TrackerReturnPeers','TrackerRootInclude', - 'TrackerStyleSheet', - - //mod_bw.c - 'BandWidth','BandWidthError','BandWidthModule','BandWidthPacket', - 'ForceBandWidthModule','LargeFileLimit','MaxConnection', - 'MinBandWidth', - - //mod_cache.c - 'CacheDefaultExpire','CacheDisable','CacheEnable', - 'CacheIgnoreCacheControl','CacheIgnoreHeaders', - 'CacheIgnoreNoLastMod','CacheIgnoreQueryString', - 'CacheLastModifiedFactor','CacheMaxExpire','CacheStoreNoStore', - 'CacheStorePrivate', - - //mod_cern_meta.c - 'MetaDir','MetaFiles','MetaSuffix', - - //mod_cgi.c - 'ScriptLog','ScriptLogBuffer','ScriptLogLength', - - //mod_charset_lite.c - 'CharsetDefault','CharsetOptions','CharsetSourceEnc', - - //mod_dav.c - 'DAV','DAVDepthInfinity','DAVMinTimeout', - - //mod_dav_fs.c - 'DAVLockDB', - - //mod_dav_lock.c - 'DAVGenericLockDB', - - //mod_dav_svn.c - 'SVNActivitiesDB','SVNAllowBulkUpdates','SVNAutoversioning', - 'SVNIndexXSLT','SVNListParentPath','SVNMasterURI','SVNParentPath', - 'SVNPath','SVNPathAuthz','SVNReposName','SVNSpecialURI', - - //mod_dbd.c - 'DBDExptime','DBDKeep','DBDMax','DBDMin','DBDParams','DBDPersist', - 'DBDPrepareSQL','DBDriver', - - //mod_deflate.c - 'DeflateBufferSize','DeflateCompressionLevel','DeflateFilterNote', - 'DeflateMemLevel','DeflateWindowSize', - - //mod_dir.c - 'DirectoryIndex','DirectorySlash', - - //mod_disk_cache.c - 'CacheDirLength','CacheDirLevels','CacheMaxFileSize', - 'CacheMinFileSize','CacheRoot', - - //mod_dumpio.c - 'DumpIOInput','DumpIOLogLevel','DumpIOOutput', - - //mod_env.c - 'PassEnv','SetEnv','UnsetEnv', - - //mod_expires.c - 'ExpiresActive','ExpiresByType','ExpiresDefault', - - //mod_ext_filter.c - 'ExtFilterDefine','ExtFilterOptions', - - //mod_file_cache.c - 'cachefile','mmapfile', - - //mod_filter.c - 'FilterChain','FilterDeclare','FilterProtocol','FilterProvider', - 'FilterTrace', - - //mod_gnutls.c - 'GnuTLSCache','GnuTLSCacheTimeout','GnuTLSCertificateFile', - 'GnuTLSKeyFile','GnuTLSPGPCertificateFile','GnuTLSPGPKeyFile', - 'GnuTLSClientVerify','GnuTLSClientCAFile','GnuTLSPGPKeyringFile', - 'GnuTLSEnable','GnuTLSDHFile','GnuTLSRSAFile','GnuTLSSRPPasswdFile', - 'GnuTLSSRPPasswdConfFile','GnuTLSPriorities', - 'GnuTLSExportCertificates', - - //mod_headers.c - 'Header','RequestHeader', - - //mod_imagemap.c - 'ImapBase','ImapDefault','ImapMenu', - - //mod_include.c - 'SSIAccessEnable','SSIEndTag','SSIErrorMsg','SSIStartTag', - 'SSITimeFormat','SSIUndefinedEcho','XBitHack', - - //mod_ident.c - 'IdentityCheck','IdentityCheckTimeout', - - //mod_info.c - 'AddModuleInfo', - - //mod_isapi.c - 'ISAPIAppendLogToErrors','ISAPIAppendLogToQuery','ISAPICacheFile', - 'ISAPIFakeAsync','ISAPILogNotSupported','ISAPIReadAheadBuffer', - - //mod_log_config.c - 'BufferedLogs','CookieLog','CustomLog','LogFormat','TransferLog', - - //mod_log_forensic.c - 'ForensicLog', - - //mod_log_rotate.c - 'RotateInterval','RotateLogs','RotateLogsLocalTime', - - //mod_logio.c - - //mod_mem_cache.c - 'MCacheMaxObjectCount','MCacheMaxObjectSize', - 'MCacheMaxStreamingBuffer','MCacheMinObjectSize', - 'MCacheRemovalAlgorithm','MCacheSize', - - //mod_mime.c - 'AddCharset','AddEncoding','AddHandler','AddInputFilter', - 'AddLanguage','AddOutputFilter','AddType','DefaultLanguage', - 'ModMimeUsePathInfo','MultiviewsMatch','RemoveCharset', - 'RemoveEncoding','RemoveHandler','RemoveInputFilter', - 'RemoveLanguage','RemoveOutputFilter','RemoveType','TypesConfig', - - //mod_mime_magic.c - 'MimeMagicFile', - - //mod_negotiation.c - 'CacheNegotiatedDocs','ForceLanguagePriority','LanguagePriority', - - //mod_php5.c - 'php_admin_flag','php_admin_value','php_flag','php_value', - 'PHPINIDir', - - //mod_proxy.c - 'AllowCONNECT','BalancerMember','NoProxy','ProxyBadHeader', - 'ProxyBlock','ProxyDomain','ProxyErrorOverride', - 'ProxyFtpDirCharset','ProxyIOBufferSize','ProxyMaxForwards', - 'ProxyPass','ProxyPassInterpolateEnv','ProxyPassMatch', - 'ProxyPassReverse','ProxyPassReverseCookieDomain', - 'ProxyPassReverseCookiePath','ProxyPreserveHost', - 'ProxyReceiveBufferSize','ProxyRemote','ProxyRemoteMatch', - 'ProxyRequests','ProxySet','ProxyStatus','ProxyTimeout','ProxyVia', - - //mod_proxy_ajp.c - - //mod_proxy_balancer.c - - //mod_proxy_connect.c - - //mod_proxy_ftp.c - - //mod_proxy_http.c - - //mod_rewrite.c - 'RewriteBase','RewriteCond','RewriteEngine','RewriteLock', - 'RewriteLog','RewriteLogLevel','RewriteMap','RewriteOptions', - 'RewriteRule', - - //mod_setenvif.c - 'BrowserMatch','BrowserMatchNoCase','SetEnvIf','SetEnvIfNoCase', - - //mod_so.c - 'LoadFile','LoadModule', - - //mod_speling.c - 'CheckCaseOnly','CheckSpelling', - - //mod_ssl.c - 'SSLCACertificateFile','SSLCACertificatePath','SSLCADNRequestFile', - 'SSLCADNRequestPath','SSLCARevocationFile','SSLCARevocationPath', - 'SSLCertificateChainFile','SSLCertificateFile', - 'SSLCertificateKeyFile','SSLCipherSuite','SSLCryptoDevice', - 'SSLEngine','SSLHonorCipherOrder','SSLMutex','SSLOptions', - 'SSLPassPhraseDialog','SSLProtocol','SSLProxyCACertificateFile', - 'SSLProxyCACertificatePath','SSLProxyCARevocationFile', - 'SSLProxyCARevocationPath','SSLProxyCipherSuite','SSLProxyEngine', - 'SSLProxyMachineCertificateFile','SSLProxyMachineCertificatePath', - 'SSLProxyProtocol','SSLProxyVerify','SSLProxyVerifyDepth', - 'SSLRandomSeed','SSLRenegBufferSize','SSLRequire','SSLRequireSSL', - 'SSLSessionCache','SSLSessionCacheTimeout','SSLUserName', - 'SSLVerifyClient','SSLVerifyDepth', - - //mod_status.c - 'ExtendedStatus','SeeRequestTail', - - //mod_substitute.c - 'Substitute', - - //mod_suexec.c - 'SuexecUserGroup', - - //mod_unique_id.c - - //mod_userdir.c - 'UserDir', - - //mod_usertrack.c - 'CookieDomain','CookieExpires','CookieName','CookieStyle', - 'CookieTracking', - - //mod_version.c - - //mod_vhost_alias.c - 'VirtualDocumentRoot','VirtualDocumentRootIP', - 'VirtualScriptAlias','VirtualScriptAliasIP', - - //mod_view.c - 'ViewEnable', - - //mod_win32.c - 'ScriptInterpreterSource', - - //mpm_winnt.c - 'Listen','ListenBacklog','ReceiveBufferSize','SendBufferSize', - 'ThreadLimit','ThreadsPerChild','Win32DisableAcceptEx', - - //mpm_common.c - 'AcceptMutex','AddModule','ClearModuleList','EnableExceptionHook', - 'Group','LockFile','MaxClients','MaxSpareServers','MaxSpareThreads', - 'MinSpareServers','MinSpareThreads','ServerLimit','StartServers', - 'StartThreads','User', - - //util_ldap.c - 'LDAPCacheEntries','LDAPCacheTTL','LDAPConnectionTimeout', - 'LDAPOpCacheEntries','LDAPOpCacheTTL','LDAPSharedCacheFile', - 'LDAPSharedCacheSize','LDAPTrustedClientCert', - 'LDAPTrustedGlobalCert','LDAPTrustedMode','LDAPVerifyServerCert', - - //Unknown Mods ... - 'AgentLog','BindAddress','bs2000account','CacheForceCompletion', - 'CacheGCInterval','CacheSize','NoCache','qsc','RefererIgnore', - 'RefererLog','Resourceconfig','ServerType','SingleListen' - ), - /*keywords 2*/ - 2 => array( - 'all','on','off','standalone','inetd','indexes', - 'force-response-1.0','downgrade-1.0','nokeepalive', - 'includes','followsymlinks','none', - 'x-compress','x-gzip' - ), - /*keywords 3*/ - 3 => array( - //core.c - 'Directory','DirectoryMatch','Files','FilesMatch','IfDefine', - 'IfModule','Limit','LimitExcept','Location','LocationMatch', - 'VirtualHost', - - //mod_authn_alias.c - 'AuthnProviderAlias', - - //mod_proxy.c - 'Proxy','ProxyMatch', - - //mod_version.c - 'IfVersion' - ) - ), - 'SYMBOLS' => array( - '+', '-' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f;', - 2 => 'color: #0000ff;', - 3 => 'color: #000000; font-weight:bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #339933;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/applescript.php b/system/application/libraries/geshi/applescript.php deleted file mode 100644 index 8a07d00b5..000000000 --- a/system/application/libraries/geshi/applescript.php +++ /dev/null @@ -1,157 +0,0 @@ -<?php -/************************************************************************************* - * applescript.php - * -------- - * Author: Stephan Klimek (http://www.initware.org) - * Copyright: Stephan Klimek (http://www.initware.org) - * Release Version: 1.0.8.6 - * Date Started: 2005/07/20 - * - * AppleScript language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * - * TODO - * ------------------------- - * URL settings to references - * - ************************************************************************************** - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'AppleScript', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array( '(*' => '*)'), - 'COMMENT_REGEXP' => array( - 2 => '/(?<=[a-z])\'/i', - 3 => '/(?<![a-z])\'.*?\'/i', - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'application','close','count','delete','duplicate','exists','launch','make','move','open', - 'print','quit','reopen','run','save','saving', 'idle', 'path to', 'number', 'alias', 'list', 'text', 'string', - 'integer', 'it','me','version','pi','result','space','tab','anything','case','diacriticals','expansion', - 'hyphens','punctuation','bold','condensed','expanded','hidden','italic','outline','plain', - 'shadow','strikethrough','subscript','superscript','underline','ask','no','yes','false', 'id', - 'true','weekday','monday','mon','tuesday','tue','wednesday','wed','thursday','thu','friday', - 'fri','saturday','sat','sunday','sun','month','january','jan','february','feb','march', - 'mar','april','apr','may','june','jun','july','jul','august','aug','september', 'quote', 'do JavaScript', - 'sep','october','oct','november','nov','december','dec','minutes','hours', 'name', 'default answer', - 'days','weeks', 'folder', 'folders', 'file', 'files', 'window', 'eject', 'disk', 'reveal', 'sleep', - 'shut down', 'restart', 'display dialog', 'buttons', 'invisibles', 'item', 'items', 'delimiters', 'offset of', - 'AppleScript\'s', 'choose file', 'choose folder', 'choose from list', 'beep', 'contents', 'do shell script', - 'paragraph', 'paragraphs', 'missing value', 'quoted form', 'desktop', 'POSIX path', 'POSIX file', - 'activate', 'document', 'adding', 'receiving', 'content', 'new', 'properties', 'info for', 'bounds', - 'selection', 'extension', 'into', 'onto', 'by', 'between', 'against', 'set the clipboard to', 'the clipboard' - ), - 2 => array( - 'each','some','every','whose','where','index','first','second','third','fourth', - 'fifth','sixth','seventh','eighth','ninth','tenth','last','front','back','st','nd', - 'rd','th','middle','named','through','thru','before','after','beginning','the', 'as', - 'div','mod','and','not','or','contains','equal','equals','isnt', 'less', 'greater' - ), - 3 => array( - 'script','property','prop','end','to','set','global','local','on','of', - 'in','given','with','without','return','continue','tell','if','then','else','repeat', - 'times','while','until','from','exit','try','error','considering','ignoring','timeout', - 'transaction','my','get','put','is', 'copy' - ) - ), - 'SYMBOLS' => array( - ')','+','-','^','*','/','&','<','>=','<','<=','=','�' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0066ff;', - 2 => 'color: #ff0033;', - 3 => 'color: #ff0033; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => '', - 3 => 'color: #ff0000;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'REGEXPS' => array( - 0 => 'color: #339933;', - 4 => 'color: #0066ff;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => ',+-=<>/?^&*' - ), - 'REGEXPS' => array( - //Variables - 0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*', - //File descriptors - 4 => '<[a-zA-Z_][a-zA-Z0-9_]*>', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'SPACE_AS_WHITESPACE' => true - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/apt_sources.php b/system/application/libraries/geshi/apt_sources.php deleted file mode 100644 index fe1711fdd..000000000 --- a/system/application/libraries/geshi/apt_sources.php +++ /dev/null @@ -1,144 +0,0 @@ -<?php -/************************************************************************************* - * apt_sources.php - * ---------- - * Author: Milian Wolff (mail@milianw.de) - * Copyright: (c) 2008 Milian Wolff (http://milianw.de) - * Release Version: 1.0.8.6 - * Date Started: 2008/06/17 - * - * Apt sources.list language file for GeSHi. - * - * CHANGES - * ------- - * 2008/06/17 (1.0.8) - * - Initial import - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Apt sources', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /*keywords*/ - 1 => array( - 'deb-src', 'deb' - ), - 2 => array( - //Generic - 'stable', 'old-stable', 'testing', 'testing-proposed-updates', - 'unstable', 'unstable-proposed-updates', 'experimental', - 'non-US', 'security', 'volatile', 'volatile-sloppy', - 'apt-build', - 'stable/updates', - //Debian - 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', 'woody', 'sarge', - 'etch', 'lenny', 'sid', - //Ubuntu - 'warty', 'warty-updates', 'warty-security', 'warty-proposed', 'warty-backports', - 'hoary', 'hoary-updates', 'hoary-security', 'hoary-proposed', 'hoary-backports', - 'breezy', 'breezy-updates', 'breezy-security', 'breezy-proposed', 'breezy-backports', - 'dapper', 'dapper-updates', 'dapper-security', 'dapper-proposed', 'dapper-backports', - 'edgy', 'edgy-updates', 'edgy-security', 'edgy-proposed', 'edgy-backports', - 'feisty', 'feisty-updates', 'feisty-security', 'feisty-proposed', 'feisty-backports', - 'gutsy', 'gutsy-updates', 'gutsy-security', 'gutsy-proposed', 'gutsy-backports', - 'hardy', 'hardy-updates', 'hardy-security', 'hardy-proposed', 'hardy-backports', - 'intrepid', 'intrepid-updates', 'intrepid-security', 'intrepid-proposed', 'intrepid-backports' - ), - 3 => array( - 'main', 'restricted', 'preview', 'contrib', 'non-free', - 'commercial', 'universe', 'multiverse' - ) - ), - 'REGEXPS' => array( - 0 => "(((http|ftp):\/\/|file:\/)[^\s]+)|(cdrom:\[[^\]]*\][^\s]*)", - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => true, - 3 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f;', - 2 => 'color: #b1b100;', - 3 => 'color: #b16000;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - ), - 'STRINGS' => array( - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #009900;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER, - 'METHODS' => GESHI_NEVER, - 'SCRIPT' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER, - 'ESCAPE_CHAR' => GESHI_NEVER, - 'BRACKETS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^\/])', - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])' - ) - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/asm.php b/system/application/libraries/geshi/asm.php deleted file mode 100644 index 49699b900..000000000 --- a/system/application/libraries/geshi/asm.php +++ /dev/null @@ -1,225 +0,0 @@ -<?php -/************************************************************************************* - * asm.php - * ------- - * Author: Tux (tux@inmail.cz) - * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/27 - * - * x86 Assembler language file for GeSHi. - * Words are from SciTe configuration file (based on NASM syntax) - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/27 (1.0.2) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.1) - * - Added support for URLs - * - Added binary and hexadecimal regexps - * 2004/08/05 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'ASM', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - //Line address prefix suppression - 'COMMENT_REGEXP' => array(2 => "/^(?:[0-9a-f]{0,4}:)?[0-9a-f]{4}(?:[0-9a-f]{4})?/mi"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*CPU*/ - 1 => array( - 'aaa','aad','aam','aas','adc','add','and','call','cbw','clc','cld','cli','cmc','cmp', - 'cmps','cmpsb','cmpsw','cwd','daa','das','dec','div','esc','hlt','idiv','imul','in','inc', - 'int','into','iret','ja','jae','jb','jbe','jc','jcxz','je','jg','jge','jl','jle','jmp', - 'jna','jnae','jnb','jnbe','jnc','jne','jng','jnge','jnl','jnle','jno','jnp','jns','jnz', - 'jo','jp','jpe','jpo','js','jz','lahf','lds','lea','les','lods','lodsb','lodsw','loop', - 'loope','loopew','loopne','loopnew','loopnz','loopnzw','loopw','loopz','loopzw','mov', - 'movs','movsb','movsw','mul','neg','nop','not','or','out','pop','popf','push','pushf', - 'rcl','rcr','ret','retf','retn','rol','ror','sahf','sal','sar','sbb','scas','scasb','scasw', - 'shl','shr','stc','std','sti','stos','stosb','stosw','sub','test','wait','xchg','xlat', - 'xlatb','xor','bound','enter','ins','insb','insw','leave','outs','outsb','outsw','popa','pusha','pushw', - 'arpl','lar','lsl','sgdt','sidt','sldt','smsw','str','verr','verw','clts','lgdt','lidt','lldt','lmsw','ltr', - 'bsf','bsr','bt','btc','btr','bts','cdq','cmpsd','cwde','insd','iretd','iretdf','iretf', - 'jecxz','lfs','lgs','lodsd','loopd','looped','loopned','loopnzd','loopzd','lss','movsd', - 'movsx','movzx','outsd','popad','popfd','pushad','pushd','pushfd','scasd','seta','setae', - 'setb','setbe','setc','sete','setg','setge','setl','setle','setna','setnae','setnb','setnbe', - 'setnc','setne','setng','setnge','setnl','setnle','setno','setnp','setns','setnz','seto','setp', - 'setpe','setpo','sets','setz','shld','shrd','stosd','bswap','cmpxchg','invd','invlpg','wbinvd','xadd','lock', - 'rep','repe','repne','repnz','repz' - ), - /*FPU*/ - 2 => array( - 'f2xm1','fabs','fadd','faddp','fbld','fbstp','fchs','fclex','fcom','fcomp','fcompp','fdecstp', - 'fdisi','fdiv','fdivp','fdivr','fdivrp','feni','ffree','fiadd','ficom','ficomp','fidiv', - 'fidivr','fild','fimul','fincstp','finit','fist','fistp','fisub','fisubr','fld','fld1', - 'fldcw','fldenv','fldenvw','fldl2e','fldl2t','fldlg2','fldln2','fldpi','fldz','fmul', - 'fmulp','fnclex','fndisi','fneni','fninit','fnop','fnsave','fnsavew','fnstcw','fnstenv', - 'fnstenvw','fnstsw','fpatan','fprem','fptan','frndint','frstor','frstorw','fsave', - 'fsavew','fscale','fsqrt','fst','fstcw','fstenv','fstenvw','fstp','fstsw','fsub','fsubp', - 'fsubr','fsubrp','ftst','fwait','fxam','fxch','fxtract','fyl2x','fyl2xp1', - 'fsetpm','fcos','fldenvd','fnsaved','fnstenvd','fprem1','frstord','fsaved','fsin','fsincos', - 'fstenvd','fucom','fucomp','fucompp' - ), - /*registers*/ - 3 => array( - 'ah','al','ax','bh','bl','bp','bx','ch','cl','cr0','cr2','cr3','cs','cx','dh','di','dl', - 'dr0','dr1','dr2','dr3','dr6','dr7','ds','dx','eax','ebp','ebx','ecx','edi','edx', - 'es','esi','esp','fs','gs','si','sp','ss','st','tr3','tr4','tr5','tr6','tr7' - ), - /*Directive*/ - 4 => array( - '186','286','286c','286p','287','386','386c','386p','387','486','486p', - '8086','8087','alpha','break','code','const','continue','cref','data','data?', - 'dosseg','else','elseif','endif','endw','err','err1','err2','errb', - 'errdef','errdif','errdifi','erre','erridn','erridni','errnb','errndef', - 'errnz','exit','fardata','fardata?','if','lall','lfcond','list','listall', - 'listif','listmacro','listmacroall',' model','no87','nocref','nolist', - 'nolistif','nolistmacro','radix','repeat','sall','seq','sfcond','stack', - 'startup','tfcond','type','until','untilcxz','while','xall','xcref', - 'xlist','alias','align','assume','catstr','comm','comment','db','dd','df','dq', - 'dt','dup','dw','echo','elseif1','elseif2','elseifb','elseifdef','elseifdif', - 'elseifdifi','elseife','elseifidn','elseifidni','elseifnb','elseifndef','end', - 'endm','endp','ends','eq',' equ','even','exitm','extern','externdef','extrn','for', - 'forc','ge','goto','group','high','highword','if1','if2','ifb','ifdef','ifdif', - 'ifdifi','ife',' ifidn','ifidni','ifnb','ifndef','include','includelib','instr','invoke', - 'irp','irpc','label','le','length','lengthof','local','low','lowword','lroffset', - 'macro','mask','mod','msfloat','name','ne','offset','opattr','option','org','%out', - 'page','popcontext','private','proc','proto','ptr','public','purge','pushcontext','record', - 'rept','seg','segment','short','size','sizeof','sizestr','struc','struct', - 'substr','subtitle','subttl','textequ','this','title','typedef','union','width', - '.model', '.stack', '.code', '.data' - ), - /*Operands*/ - 5 => array( - '@b','@f','addr','basic','byte','c','carry?','dword', - 'far','far16','fortran','fword','near','near16','overflow?','parity?','pascal','qword', - 'real4',' real8','real10','sbyte','sdword','sign?','stdcall','sword','syscall','tbyte', - 'vararg','word','zero?','flat','near32','far32', - 'abs','all','assumes','at','casemap','common','compact', - 'cpu','dotname','emulator','epilogue','error','export','expr16','expr32','farstack', - 'forceframe','huge','language','large','listing','ljmp','loadds','m510','medium','memory', - 'nearstack','nodotname','noemulator','nokeyword','noljmp','nom510','none','nonunique', - 'nooldmacros','nooldstructs','noreadonly','noscoped','nosignextend','nothing', - 'notpublic','oldmacros','oldstructs','os_dos','para','prologue', - 'readonly','req','scoped','setif2','smallstack','tiny','use16','use32','uses' - ) - ), - 'SYMBOLS' => array( - '[', ']', '(', ')', - '+', '-', '*', '/', '%', - '.', ',', ';', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f; font-weight: bold;', - 2 => 'color: #0000ff; font-weight: bold;', - 3 => 'color: #00007f;', - 4 => 'color: #000000; font-weight: bold;', - 5 => 'color: #000000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( -// 0 => 'color: #0000ff;', -// 1 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'NUMBERS' => - GESHI_NUMBER_BIN_PREFIX_PERCENT | - GESHI_NUMBER_BIN_SUFFIX | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_HEX_SUFFIX | - GESHI_NUMBER_OCT_SUFFIX | - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | - GESHI_NUMBER_FLT_SCI_ZERO, - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers -// 0 => /* */ "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))(?:[0-9][0-9a-fA-F]{0,31}[hH]|0x[0-9a-fA-F]{1,32})(?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))", - //Binary numbers -// 1 => "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))[01]{1,64}[bB](?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])" - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/asp.php b/system/application/libraries/geshi/asp.php deleted file mode 100644 index 6e799a802..000000000 --- a/system/application/libraries/geshi/asp.php +++ /dev/null @@ -1,164 +0,0 @@ -<?php -/************************************************************************************* - * asp.php - * -------- - * Author: Amit Gupta (http://blog.igeek.info/) - * Copyright: (c) 2004 Amit Gupta (http://blog.igeek.info/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/13 - * - * ASP language file for GeSHi. - * - * CHANGES - * ------- - * 2005/12/30 (1.0.3) - * - Strings only delimited by ", comments by ' - * 2004/11/27 (1.0.2) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.1) - * - Added support for URLs - * 2004/08/13 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * Include all the functions, keywords etc that I have missed - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'ASP', - 'COMMENT_SINGLE' => array(1 => "'", 2 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'include', 'file', 'Const', 'Dim', 'Option', 'Explicit', 'Implicit', 'Set', 'Select', 'ReDim', 'Preserve', - 'ByVal', 'ByRef', 'End', 'Private', 'Public', 'If', 'Then', 'Else', 'ElseIf', 'Case', 'With', 'NOT', - 'While', 'Wend', 'For', 'Loop', 'Do', 'Request', 'Response', 'Server', 'ADODB', 'Session', 'Application', - 'Each', 'In', 'Get', 'Next', 'INT', 'CINT', 'CBOOL', 'CDATE', 'CBYTE', 'CCUR', 'CDBL', 'CLNG', 'CSNG', - 'CSTR', 'Fix', 'Is', 'Sgn', 'String', 'Boolean', 'Currency', 'Me', 'Single', 'Long', 'Integer', 'Byte', - 'Variant', 'Double', 'To', 'Let', 'Xor', 'Resume', 'On', 'Error', 'Imp', 'GoTo', 'Call', 'Global' - ), - 2 => array( - 'Null', 'Nothing', 'And', - 'False', - 'True', 'var', 'Or', 'BOF', 'EOF', 'xor', - 'Function', 'Class', 'New', 'Sub' - ), - 3 => array( - 'CreateObject', 'Write', 'Redirect', 'Cookies', 'BinaryRead', 'ClientCertificate', 'Form', 'QueryString', - 'ServerVariables', 'TotalBytes', 'AddHeader', 'AppendToLog', 'BinaryWrite', 'Buffer', 'CacheControl', - 'Charset', 'Clear', 'ContentType', 'End()', 'Expires', 'ExpiresAbsolute', 'Flush()', 'IsClientConnected', - 'PICS', 'Status', 'Connection', 'Recordset', 'Execute', 'Abandon', 'Lock', 'UnLock', 'Command', 'Fields', - 'Properties', 'Property', 'Send', 'Replace', 'InStr', 'TRIM', 'NOW', 'Day', 'Month', 'Hour', 'Minute', 'Second', - 'Year', 'MonthName', 'LCase', 'UCase', 'Abs', 'Array', 'As', 'LEN', 'MoveFirst', 'MoveLast', 'MovePrevious', - 'MoveNext', 'LBound', 'UBound', 'Transfer', 'Open', 'Close', 'MapPath', 'FileExists', 'OpenTextFile', 'ReadAll' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<%', '%>' - ), - 0 => array( - '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', - ';', ':', '?', '='), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990099; font-weight: bold;', - 2 => 'color: #0000ff; font-weight: bold;', - 3 => 'color: #330066;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;', - 2 => 'color: #ff6600;', - 'MULTI' => 'color: #008000;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #006600; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color: #cc0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #800000;' - ), - 'METHODS' => array( - 1 => 'color: #9900cc;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006600; font-weight: bold;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<%' => '%>' - ), - 1 => array( - '<script language="vbscript" runat="server">' => '</script>' - ), - 2 => array( - '<script language="javascript" runat="server">' => '</script>' - ), - 3 => "/(?P<start><%=?)(?:\"[^\"]*?\"|\/\*(?!\*\/).*?\*\/|.)*?(?P<end>%>|\Z)/sm" - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/autohotkey.php b/system/application/libraries/geshi/autohotkey.php deleted file mode 100644 index 1a6346340..000000000 --- a/system/application/libraries/geshi/autohotkey.php +++ /dev/null @@ -1,373 +0,0 @@ -<?php -/************************************************************************************* - * autohotkey.php - * -------- - * Author: Naveen Garg (naveen.garg@gmail.com) - * Copyright: (c) 2009 Naveen Garg and GeSHi - * Release Version: 1.0.8.6 - * Date Started: 2009/06/11 - * - * Autohotkey language file for GeSHi. - * - * CHANGES - * ------- - * Release 1.0.8.5 (2009/06/11) - * - First Release - * - * TODO - * ---- - * Reference: http://www.autohotkey.com/docs/ - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Autohotkey', - 'COMMENT_SINGLE' => array( - 1 => ';' - ), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'while','if','and','or','else','return' - ), - 2 => array( - // built in variables - 'A_AhkPath','A_AhkVersion','A_AppData','A_AppDataCommon', - 'A_AutoTrim','A_BatchLines','A_CaretX','A_CaretY', - 'A_ComputerName','A_ControlDelay','A_Cursor','A_DD', - 'A_DDD','A_DDDD','A_DefaultMouseSpeed','A_Desktop', - 'A_DesktopCommon','A_DetectHiddenText','A_DetectHiddenWindows','A_EndChar', - 'A_EventInfo','A_ExitReason','A_FormatFloat','A_FormatInteger', - 'A_Gui','A_GuiEvent','A_GuiControl','A_GuiControlEvent', - 'A_GuiHeight','A_GuiWidth','A_GuiX','A_GuiY', - 'A_Hour','A_IconFile','A_IconHidden','A_IconNumber', - 'A_IconTip','A_Index','A_IPAddress1','A_IPAddress2', - 'A_IPAddress3','A_IPAddress4','A_ISAdmin','A_IsCompiled', - 'A_IsCritical','A_IsPaused','A_IsSuspended','A_KeyDelay', - 'A_Language','A_LastError','A_LineFile','A_LineNumber', - 'A_LoopField','A_LoopFileAttrib','A_LoopFileDir','A_LoopFileExt', - 'A_LoopFileFullPath','A_LoopFileLongPath','A_LoopFileName','A_LoopFileShortName', - 'A_LoopFileShortPath','A_LoopFileSize','A_LoopFileSizeKB','A_LoopFileSizeMB', - 'A_LoopFileTimeAccessed','A_LoopFileTimeCreated','A_LoopFileTimeModified','A_LoopReadLine', - 'A_LoopRegKey','A_LoopRegName','A_LoopRegSubkey','A_LoopRegTimeModified', - 'A_LoopRegType','A_MDAY','A_Min','A_MM', - 'A_MMM','A_MMMM','A_Mon','A_MouseDelay', - 'A_MSec','A_MyDocuments','A_Now','A_NowUTC', - 'A_NumBatchLines','A_OSType','A_OSVersion','A_PriorHotkey', - 'A_ProgramFiles','A_Programs','A_ProgramsCommon','A_ScreenHeight', - 'A_ScreenWidth','A_ScriptDir','A_ScriptFullPath','A_ScriptName', - 'A_Sec','A_Space','A_StartMenu','A_StartMenuCommon', - 'A_Startup','A_StartupCommon','A_StringCaseSense','A_Tab', - 'A_Temp','A_ThisFunc','A_ThisHotkey','A_ThisLabel', - 'A_ThisMenu','A_ThisMenuItem','A_ThisMenuItemPos','A_TickCount', - 'A_TimeIdle','A_TimeIdlePhysical','A_TimeSincePriorHotkey','A_TimeSinceThisHotkey', - 'A_TitleMatchMode','A_TitleMatchModeSpeed','A_UserName','A_WDay', - 'A_WinDelay','A_WinDir','A_WorkingDir','A_YDay', - 'A_YEAR','A_YWeek','A_YYYY','Clipboard', - 'ClipboardAll','ComSpec','ErrorLevel','ProgramFiles', - ), - 3 => array( - 'AutoTrim', - 'BlockInput','Break','Click', - 'ClipWait','Continue','Control', - 'ControlClick','ControlFocus','ControlGet', - 'ControlGetFocus','ControlGetPos','ControlGetText', - 'ControlMove','ControlSend','ControlSendRaw', - 'ControlSetText','CoordMode','Critical', - 'DetectHiddenText','DetectHiddenWindows','DllCall','Drive', - 'DriveGet','DriveSpaceFree', - 'Else','EnvAdd','EnvDiv', - 'EnvGet','EnvMult','EnvSet', - 'EnvSub','EnvUpdate','Exit', - 'ExitApp','FileAppend','FileCopy', - 'FileCopyDir','FileCreateDir','FileCreateShortcut', - 'FileDelete','FileGetAttrib','FileGetShortcut', - 'FileGetSize','FileGetTime','FileGetVersion', - 'FileInstall','FileMove','FileMoveDir', - 'FileRead','FileReadLine','FileRecycle', - 'FileRecycleEmpty','FileRemoveDir','FileSelectFile', - 'FileSelectFolder','FileSetAttrib','FileSetTime', - 'FormatTime','Gosub', - 'Goto','GroupActivate','GroupAdd', - 'GroupClose','GroupDeactivate','Gui', - 'GuiControl','GuiControlGet','Hotkey', - 'IfExist','IfGreater','IfGreaterOrEqual', - 'IfInString','IfLess','IfLessOrEqual', - 'IfMsgBox','IfNotEqual','IfNotExist', - 'IfNotInString','IfWinActive','IfWinExist', - 'IfWinNotActive','IfWinNotExist','ImageSearch', - 'IniDelete','IniRead','IniWrite', - 'Input','InputBox','KeyHistory', - 'KeyWait','ListHotkeys','ListLines', - 'ListVars','Loop', - 'Menu','MouseClick','MouseClickDrag', - 'MouseGetPos','MouseMove','MsgBox', - 'OnMessage','OnExit','OutputDebug', - 'PixelGetColor','PixelSearch','PostMessage', - 'Process','Progress','Random', - 'RegExMatch','RegExReplace','RegisterCallback', - 'RegDelete','RegRead','RegWrite', - 'Reload','Repeat','Return', - 'Run','RunAs','RunWait', - 'Send','SendEvent','SendInput', - 'SendMessage','SendMode','SendPlay', - 'SendRaw','SetBatchLines','SetCapslockState', - 'SetControlDelay','SetDefaultMouseSpeed','SetEnv', - 'SetFormat','SetKeyDelay','SetMouseDelay', - 'SetNumlockState','SetScrollLockState','SetStoreCapslockMode', - 'SetTimer','SetTitleMatchMode','SetWinDelay', - 'SetWorkingDir','Shutdown','Sleep', - 'Sort','SoundBeep','SoundGet', - 'SoundGetWaveVolume','SoundPlay','SoundSet', - 'SoundSetWaveVolume','SplashImage','SplashTextOff', - 'SplashTextOn','SplitPath','StatusBarGetText', - 'StatusBarWait','StringCaseSense','StringGetPos', - 'StringLeft','StringLen','StringLower', - 'StringMid','StringReplace','StringRight', - 'StringSplit','StringTrimLeft','StringTrimRight', - 'StringUpper','Suspend','SysGet', - 'Thread','ToolTip','Transform', - 'TrayTip','URLDownloadToFile','While', - 'VarSetCapacity', - 'WinActivate','WinActivateBottom','WinClose', - 'WinGet','WinGetActiveStats','WinGetActiveTitle', - 'WinGetClass','WinGetPos','WinGetText', - 'WinGetTitle','WinHide','WinKill', - 'WinMaximize','WinMenuSelectItem','WinMinimize', - 'WinMinimizeAll','WinMinimizeAllUndo','WinMove', - 'WinRestore','WinSet','WinSetTitle', - 'WinShow','WinWait','WinWaitActive', - 'WinWaitClose','WinWaitNotActive' - ), - 4 => array( - 'Abs','ACos','Asc','ASin', - 'ATan','Ceil','Chr','Cos', - 'Exp','FileExist','Floor', - 'GetKeyState','IL_Add','IL_Create','IL_Destroy', - 'InStr','IsFunc','IsLabel','Ln', - 'Log','LV_Add','LV_Delete','LV_DeleteCol', - 'LV_GetCount','LV_GetNext','LV_GetText','LV_Insert', - 'LV_InsertCol','LV_Modify','LV_ModifyCol','LV_SetImageList', - 'Mod','NumGet','NumPut', - 'Round', - 'SB_SetIcon','SB_SetParts','SB_SetText','Sin', - 'Sqrt','StrLen','SubStr','Tan', - 'TV_Add','TV_Delete','TV_GetChild','TV_GetCount', - 'TV_GetNext','TV_Get','TV_GetParent','TV_GetPrev', - 'TV_GetSelection','TV_GetText','TV_Modify', - 'WinActive','WinExist' - ), - 5 => array( - // #Directives - 'AllowSameLineComments','ClipboardTimeout','CommentFlag', - 'ErrorStdOut','EscapeChar','HotkeyInterval', - 'HotkeyModifierTimeout','Hotstring','IfWinActive', - 'IfWinExist','IfWinNotActive','IfWinNotExist', - 'Include','IncludeAgain','InstallKeybdHook', - 'InstallMouseHook','KeyHistory','LTrim', - 'MaxHotkeysPerInterval','MaxMem','MaxThreads', - 'MaxThreadsBuffer','MaxThreadsPerHotkey','NoEnv', - 'NoTrayIcon','Persistent','SingleInstance', - 'UseHook','WinActivateForce' - ), - 6 => array( - 'Shift','LShift','RShift', - 'Alt','LAlt','RAlt', - 'LControl','RControl', - 'Ctrl','LCtrl','RCtrl', - 'LWin','RWin','AppsKey', - 'AltDown','AltUp','ShiftDown', - 'ShiftUp','CtrlDown','CtrlUp', - 'LWinDown','LWinUp','RWinDown', - 'RWinUp','LButton','RButton', - 'MButton','WheelUp','WheelDown', - 'WheelLeft','WheelRight','XButton1', - 'XButton2','Joy1','Joy2', - 'Joy3','Joy4','Joy5', - 'Joy6','Joy7','Joy8', - 'Joy9','Joy10','Joy11', - 'Joy12','Joy13','Joy14', - 'Joy15','Joy16','Joy17', - 'Joy18','Joy19','Joy20', - 'Joy21','Joy22','Joy23', - 'Joy24','Joy25','Joy26', - 'Joy27','Joy28','Joy29', - 'Joy30','Joy31','Joy32', - 'JoyX','JoyY','JoyZ', - 'JoyR','JoyU','JoyV', - 'JoyPOV','JoyName','JoyButtons', - 'JoyAxes','JoyInfo','Space', - 'Tab','Enter', - 'Escape','Esc','BackSpace', - 'BS','Delete','Del', - 'Insert','Ins','PGUP', - 'PGDN','Home','End', - 'Up','Down','Left', - 'Right','PrintScreen','CtrlBreak', - 'Pause','ScrollLock','CapsLock', - 'NumLock','Numpad0','Numpad1', - 'Numpad2','Numpad3','Numpad4', - 'Numpad5','Numpad6','Numpad7', - 'Numpad8','Numpad9','NumpadMult', - 'NumpadAdd','NumpadSub','NumpadDiv', - 'NumpadDot','NumpadDel','NumpadIns', - 'NumpadClear','NumpadUp','NumpadDown', - 'NumpadLeft','NumpadRight','NumpadHome', - 'NumpadEnd','NumpadPgup','NumpadPgdn', - 'NumpadEnter','F1','F2', - 'F3','F4','F5', - 'F6','F7','F8', - 'F9','F10','F11', - 'F12','F13','F14', - 'F15','F16','F17', - 'F18','F19','F20', - 'F21','F22','F23', - 'F24','Browser_Back','Browser_Forward', - 'Browser_Refresh','Browser_Stop','Browser_Search', - 'Browser_Favorites','Browser_Home','Volume_Mute', - 'Volume_Down','Volume_Up','Media_Next', - 'Media_Prev','Media_Stop','Media_Play_Pause', - 'Launch_Mail','Launch_Media','Launch_App1', - 'Launch_App2' - ), - 7 => array( - // Gui commands - 'Add', - 'Show', 'Submit', 'Cancel', 'Destroy', - 'Font', 'Color', 'Margin', 'Flash', 'Default', - 'GuiEscape','GuiClose','GuiSize','GuiContextMenu','GuiDropFilesTabStop', - ), - 8 => array( - // Gui Controls - 'Button', - 'Checkbox','Radio','DropDownList','DDL', - 'ComboBox','ListBox','ListView', - 'Text', 'Edit', 'UpDown', 'Picture', - 'TreeView','DateTime', 'MonthCal', - 'Slider' - ) - ), - 'SYMBOLS' => array( - '(',')','[',']', - '+','-','*','/','&','^', - '=','+=','-=','*=','/=','&=', - '==','<','<=','>','>=',':=', - ',','.' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #AAAAFF; font-weight: bold;', // reserved #blue - 2 => 'color: #88FF88;', // BIV yellow - 3 => 'color: #FF00FF; font-style: italic;', // commands purple - 4 => 'color: #888844; font-weight: bold;', // functions #0080FF - 5 => 'color: #000000; font-style: italic;', // directives #black - 6 => 'color: #FF0000; font-style: italic;', // hotkeys #red - 7 => 'color: #000000; font-style: italic;', // gui commands #black - 8 => 'color: #000000; font-style: italic;' // gui controls - ), - 'COMMENTS' => array( - 'MULTI' => 'font-style: italic; color: #669900;', - 1 => 'font-style: italic; color: #009933;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #00FF00; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'font-weight: bold; color: #008080;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF; font-style: italic; font-weight: italic;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: italic;' - ), - 'REGEXPS' => array( - 0 => 'font-weight: italic; color: #A00A0;', - 1 => 'color: #CC0000; font-style: italic;', - 2 => 'color: #DD0000; font-style: italic;', - 3 => 'color: #88FF88;' - ), - 'SCRIPT' => array( - ) - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '_' - ), - 'REGEXPS' => array( - //Variables - 0 => '%[a-zA-Z_][a-zA-Z0-9_]*%', - //hotstrings - 1 => '::[\w\d]+::', - //labels - 2 => '\w[\w\d]+:\s', - //Built-in Variables - 3 => '\bA_\w+\b(?![^<]*>)' - ), - 'URLS' => array( - 1 => '', - 2 => 'http://www.autohotkey.com/docs/Variables.htm#{FNAME}', - 3 => 'http://www.autohotkey.com/docs/commands/{FNAME}.htm', - 4 => 'http://www.autohotkey.com/docs/Functions.htm#BuiltIn', - 5 => 'http://www.autohotkey.com/docs/commands/_{FNAME}.htm', - 6 => '', - 7 => 'http://www.autohotkey.com/docs/commands/Gui.htm#{FNAME}', - 8 => 'http://www.autohotkey.com/docs/commands/GuiControls.htm#{FNAME}' - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 5 => array( - 'DISALLOWED_BEFORE' => '(?<!\w)\#' - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/autoit.php b/system/application/libraries/geshi/autoit.php deleted file mode 100644 index e3185d063..000000000 --- a/system/application/libraries/geshi/autoit.php +++ /dev/null @@ -1,1171 +0,0 @@ -<?php -/************************************************************************************* - * autoit.php - * -------- - * Author: big_daddy (robert.i.anthony@gmail.com) - * Copyright: (c) 2006 and to GESHi ;) - * Release Version: 1.0.8.6 - * Date Started: 2006/01/26 - * - * AutoIT language file for GeSHi. - * - * CHANGES - * ------- - * Release 1.0.8.1 (2008/09/15) - * - Updated on 22.03.2008 By Tlem (tlem@tuxolem.fr) - * - The link on functions will now correctly re-direct to - * - http://www.autoitscript.com/autoit3/docs/functions/{FNAME}.htm - * - Updated whith au3.api (09.02.2008). - * - Updated - 16 Mai 2008 - v3.2.12.0 - * - Updated - 12 June 2008 - v3.2.12.1 - * Release 1.0.7.20 (2006/01/26) - * - First Release - * - * Current bugs & todo: - * ---------- - * - not sure how to get sendkeys to work " {!}, {SPACE} etc... " - * - just copyied the regexp for variable from php so this HAVE to be checked and fixed to a better one ;) - * - * Reference: http://www.autoitscript.com/autoit3/docs/ - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, -or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, -write to the Free Software - * Foundation, -Inc., -59 Temple Place, -Suite 330, -Boston, -MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'AutoIt', - 'COMMENT_SINGLE' => array(';'), - 'COMMENT_MULTI' => array( - '#comments-start' => '#comments-end', - '#cs' => '#ce'), - 'COMMENT_REGEXP' => array(0 => '/(?<!#)#(\s.*)?$/m'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'And','ByRef','Case','Const','ContinueCase','ContinueLoop', - 'Default','Dim','Do','Else','ElseIf','EndFunc','EndIf','EndSelect', - 'EndSwitch','EndWith','Enum','Exit','ExitLoop','False','For','Func', - 'Global','If','In','Local','Next','Not','Or','ReDim','Return', - 'Select','Step','Switch','Then','To','True','Until','WEnd','While', - 'With' - ), - 2 => array( - '@AppDataCommonDir','@AppDataDir','@AutoItExe','@AutoItPID', - '@AutoItUnicode','@AutoItVersion','@AutoItX64','@COM_EventObj', - '@CommonFilesDir','@Compiled','@ComputerName','@ComSpec','@CR', - '@CRLF','@DesktopCommonDir','@DesktopDepth','@DesktopDir', - '@DesktopHeight','@DesktopRefresh','@DesktopWidth', - '@DocumentsCommonDir','@error','@exitCode','@exitMethod', - '@extended','@FavoritesCommonDir','@FavoritesDir','@GUI_CtrlHandle', - '@GUI_CtrlId','@GUI_DragFile','@GUI_DragId','@GUI_DropId', - '@GUI_WinHandle','@HomeDrive','@HomePath','@HomeShare', - '@HotKeyPressed','@HOUR','@InetGetActive','@InetGetBytesRead', - '@IPAddress1','@IPAddress2','@IPAddress3','@IPAddress4','@KBLayout', - '@LF','@LogonDNSDomain','@LogonDomain','@LogonServer','@MDAY', - '@MIN','@MON','@MyDocumentsDir','@NumParams','@OSBuild','@OSLang', - '@OSServicePack','@OSTYPE','@OSVersion','@ProcessorArch', - '@ProgramFilesDir','@ProgramsCommonDir','@ProgramsDir','@ScriptDir', - '@ScriptFullPath','@ScriptLineNumber','@ScriptName','@SEC', - '@StartMenuCommonDir','@StartMenuDir','@StartupCommonDir', - '@StartupDir','@SW_DISABLE','@SW_ENABLE','@SW_HIDE','@SW_LOCK', - '@SW_MAXIMIZE','@SW_MINIMIZE','@SW_RESTORE','@SW_SHOW', - '@SW_SHOWDEFAULT','@SW_SHOWMAXIMIZED','@SW_SHOWMINIMIZED', - '@SW_SHOWMINNOACTIVE','@SW_SHOWNA','@SW_SHOWNOACTIVATE', - '@SW_SHOWNORMAL','@SW_UNLOCK','@SystemDir','@TAB','@TempDir', - '@TRAY_ID','@TrayIconFlashing','@TrayIconVisible','@UserName', - '@UserProfileDir','@WDAY','@WindowsDir','@WorkingDir','@YDAY', - '@YEAR' - ), - 3 => array( - 'Abs','ACos','AdlibDisable','AdlibEnable','Asc','AscW','ASin', - 'Assign','ATan','AutoItSetOption','AutoItWinGetTitle', - 'AutoItWinSetTitle','Beep','Binary','BinaryLen','BinaryMid', - 'BinaryToString','BitAND','BitNOT','BitOR','BitRotate','BitShift', - 'BitXOR','BlockInput','Break','Call','CDTray','Ceiling','Chr', - 'ChrW','ClipGet','ClipPut','ConsoleRead','ConsoleWrite', - 'ConsoleWriteError','ControlClick','ControlCommand', - 'ControlDisable','ControlEnable','ControlFocus','ControlGetFocus', - 'ControlGetHandle','ControlGetPos','ControlGetText','ControlHide', - 'ControlListView','ControlMove','ControlSend','ControlSetText', - 'ControlShow','ControlTreeView','Cos','Dec','DirCopy','DirCreate', - 'DirGetSize','DirMove','DirRemove','DllCall','DllCallbackFree', - 'DllCallbackGetPtr','DllCallbackRegister','DllClose','DllOpen', - 'DllStructCreate','DllStructGetData','DllStructGetPtr', - 'DllStructGetSize','DllStructSetData','DriveGetDrive', - 'DriveGetFileSystem','DriveGetLabel','DriveGetSerial', - 'DriveGetType','DriveMapAdd','DriveMapDel','DriveMapGet', - 'DriveSetLabel','DriveSpaceFree','DriveSpaceTotal','DriveStatus', - 'EnvGet','EnvSet','EnvUpdate','Eval','Execute','Exp', - 'FileChangeDir','FileClose','FileCopy','FileCreateNTFSLink', - 'FileCreateShortcut','FileDelete','FileExists','FileFindFirstFile', - 'FileFindNextFile','FileGetAttrib','FileGetLongName', - 'FileGetShortcut','FileGetShortName','FileGetSize','FileGetTime', - 'FileGetVersion','FileInstall','FileMove','FileOpen', - 'FileOpenDialog','FileRead','FileReadLine','FileRecycle', - 'FileRecycleEmpty','FileSaveDialog','FileSelectFolder', - 'FileSetAttrib','FileSetTime','FileWrite','FileWriteLine','Floor', - 'FtpSetProxy','GUICreate','GUICtrlCreateAvi','GUICtrlCreateButton', - 'GUICtrlCreateCheckbox','GUICtrlCreateCombo', - 'GUICtrlCreateContextMenu','GUICtrlCreateDate','GUICtrlCreateDummy', - 'GUICtrlCreateEdit','GUICtrlCreateGraphic','GUICtrlCreateGroup', - 'GUICtrlCreateIcon','GUICtrlCreateInput','GUICtrlCreateLabel', - 'GUICtrlCreateList','GUICtrlCreateListView', - 'GUICtrlCreateListViewItem','GUICtrlCreateMenu', - 'GUICtrlCreateMenuItem','GUICtrlCreateMonthCal','GUICtrlCreateObj', - 'GUICtrlCreatePic','GUICtrlCreateProgress','GUICtrlCreateRadio', - 'GUICtrlCreateSlider','GUICtrlCreateTab','GUICtrlCreateTabItem', - 'GUICtrlCreateTreeView','GUICtrlCreateTreeViewItem', - 'GUICtrlCreateUpdown','GUICtrlDelete','GUICtrlGetHandle', - 'GUICtrlGetState','GUICtrlRead','GUICtrlRecvMsg', - 'GUICtrlRegisterListViewSort','GUICtrlSendMsg','GUICtrlSendToDummy', - 'GUICtrlSetBkColor','GUICtrlSetColor','GUICtrlSetCursor', - 'GUICtrlSetData','GUICtrlSetFont','GUICtrlSetDefColor', - 'GUICtrlSetDefBkColor','GUICtrlSetGraphic','GUICtrlSetImage', - 'GUICtrlSetLimit','GUICtrlSetOnEvent','GUICtrlSetPos', - 'GUICtrlSetResizing','GUICtrlSetState','GUICtrlSetStyle', - 'GUICtrlSetTip','GUIDelete','GUIGetCursorInfo','GUIGetMsg', - 'GUIGetStyle','GUIRegisterMsg','GUISetAccelerators()', - 'GUISetBkColor','GUISetCoord','GUISetCursor','GUISetFont', - 'GUISetHelp','GUISetIcon','GUISetOnEvent','GUISetState', - 'GUISetStyle','GUIStartGroup','GUISwitch','Hex','HotKeySet', - 'HttpSetProxy','HWnd','InetGet','InetGetSize','IniDelete','IniRead', - 'IniReadSection','IniReadSectionNames','IniRenameSection', - 'IniWrite','IniWriteSection','InputBox','Int','IsAdmin','IsArray', - 'IsBinary','IsBool','IsDeclared','IsDllStruct','IsFloat','IsHWnd', - 'IsInt','IsKeyword','IsNumber','IsObj','IsPtr','IsString','Log', - 'MemGetStats','Mod','MouseClick','MouseClickDrag','MouseDown', - 'MouseGetCursor','MouseGetPos','MouseMove','MouseUp','MouseWheel', - 'MsgBox','Number','ObjCreate','ObjEvent','ObjGet','ObjName','Opt', - 'Ping','PixelChecksum','PixelGetColor','PixelSearch','PluginClose', - 'PluginOpen','ProcessClose','ProcessExists','ProcessGetStats', - 'ProcessList','ProcessSetPriority','ProcessWait','ProcessWaitClose', - 'ProgressOff','ProgressOn','ProgressSet','Ptr','Random','RegDelete', - 'RegEnumKey','RegEnumVal','RegRead','RegWrite','Round','Run', - 'RunAs','RunAsWait','RunWait','Send','SendKeepActive','SetError', - 'SetExtended','ShellExecute','ShellExecuteWait','Shutdown','Sin', - 'Sleep','SoundPlay','SoundSetWaveVolume','SplashImageOn', - 'SplashOff','SplashTextOn','Sqrt','SRandom','StatusbarGetText', - 'StderrRead','StdinWrite','StdioClose','StdoutRead','String', - 'StringAddCR','StringCompare','StringFormat','StringInStr', - 'StringIsAlNum','StringIsAlpha','StringIsASCII','StringIsDigit', - 'StringIsFloat','StringIsInt','StringIsLower','StringIsSpace', - 'StringIsUpper','StringIsXDigit','StringLeft','StringLen', - 'StringLower','StringMid','StringRegExp','StringRegExpReplace', - 'StringReplace','StringRight','StringSplit','StringStripCR', - 'StringStripWS','StringToBinary','StringTrimLeft','StringTrimRight', - 'StringUpper','Tan','TCPAccept','TCPCloseSocket','TCPConnect', - 'TCPListen','TCPNameToIP','TCPRecv','TCPSend','TCPShutdown', - 'TCPStartup','TimerDiff','TimerInit','ToolTip','TrayCreateItem', - 'TrayCreateMenu','TrayGetMsg','TrayItemDelete','TrayItemGetHandle', - 'TrayItemGetState','TrayItemGetText','TrayItemSetOnEvent', - 'TrayItemSetState','TrayItemSetText','TraySetClick','TraySetIcon', - 'TraySetOnEvent','TraySetPauseIcon','TraySetState','TraySetToolTip', - 'TrayTip','UBound','UDPBind','UDPCloseSocket','UDPOpen','UDPRecv', - 'UDPSend','UDPShutdown','UDPStartup','VarGetType','WinActivate', - 'WinActive','WinClose','WinExists','WinFlash','WinGetCaretPos', - 'WinGetClassList','WinGetClientSize','WinGetHandle','WinGetPos', - 'WinGetProcess','WinGetState','WinGetText','WinGetTitle','WinKill', - 'WinList','WinMenuSelectItem','WinMinimizeAll','WinMinimizeAllUndo', - 'WinMove','WinSetOnTop','WinSetState','WinSetTitle','WinSetTrans', - 'WinWait','WinWaitActive','WinWaitClose','WinWaitNotActive' - ), - 4 => array( - 'ArrayAdd','ArrayBinarySearch','ArrayConcatenate','ArrayDelete', - 'ArrayDisplay','ArrayFindAll','ArrayInsert','ArrayMax', - 'ArrayMaxIndex','ArrayMin','ArrayMinIndex','ArrayPop','ArrayPush', - 'ArrayReverse','ArraySearch','ArraySort','ArraySwap','ArrayToClip', - 'ArrayToString','ArrayTrim','ChooseColor','ChooseFont', - 'ClipBoard_ChangeChain','ClipBoard_Close','ClipBoard_CountFormats', - 'ClipBoard_Empty','ClipBoard_EnumFormats','ClipBoard_FormatStr', - 'ClipBoard_GetData','ClipBoard_GetDataEx','ClipBoard_GetFormatName', - 'ClipBoard_GetOpenWindow','ClipBoard_GetOwner', - 'ClipBoard_GetPriorityFormat','ClipBoard_GetSequenceNumber', - 'ClipBoard_GetViewer','ClipBoard_IsFormatAvailable', - 'ClipBoard_Open','ClipBoard_RegisterFormat','ClipBoard_SetData', - 'ClipBoard_SetDataEx','ClipBoard_SetViewer','ClipPutFile', - 'ColorConvertHSLtoRGB','ColorConvertRGBtoHSL','ColorGetBlue', - 'ColorGetGreen','ColorGetRed','Date_Time_CompareFileTime', - 'Date_Time_DOSDateTimeToArray','Date_Time_DOSDateTimeToFileTime', - 'Date_Time_DOSDateTimeToStr','Date_Time_DOSDateToArray', - 'Date_Time_DOSDateToStr','Date_Time_DOSTimeToArray', - 'Date_Time_DOSTimeToStr','Date_Time_EncodeFileTime', - 'Date_Time_EncodeSystemTime','Date_Time_FileTimeToArray', - 'Date_Time_FileTimeToDOSDateTime', - 'Date_Time_FileTimeToLocalFileTime','Date_Time_FileTimeToStr', - 'Date_Time_FileTimeToSystemTime','Date_Time_GetFileTime', - 'Date_Time_GetLocalTime','Date_Time_GetSystemTime', - 'Date_Time_GetSystemTimeAdjustment', - 'Date_Time_GetSystemTimeAsFileTime', - 'Date_Time_GetSystemTimes','Date_Time_GetTickCount', - 'Date_Time_GetTimeZoneInformation', - 'Date_Time_LocalFileTimeToFileTime','Date_Time_SetFileTime', - 'Date_Time_SetLocalTime','Date_Time_SetSystemTime', - 'Date_Time_SetSystemTimeAdjustment', - 'Date_Time_SetTimeZoneInformation','Date_Time_SystemTimeToArray', - 'Date_Time_SystemTimeToDateStr','Date_Time_SystemTimeToDateTimeStr', - 'Date_Time_SystemTimeToFileTime','Date_Time_SystemTimeToTimeStr', - 'Date_Time_SystemTimeToTzSpecificLocalTime', - 'Date_Time_TzSpecificLocalTimeToSystemTime','DateAdd', - 'DateDayOfWeek','DateDaysInMonth','DateDiff','DateIsLeapYear', - 'DateIsValid','DateTimeFormat','DateTimeSplit','DateToDayOfWeek', - 'DateToDayOfWeekISO','DateToDayValue','DateToMonth', - 'DayValueToDate','DebugBugReportEnv','DebugOut','DebugSetup', - 'Degree','EventLog__Backup','EventLog__Clear','EventLog__Close', - 'EventLog__Count','EventLog__DeregisterSource','EventLog__Full', - 'EventLog__Notify','EventLog__Oldest','EventLog__Open', - 'EventLog__OpenBackup','EventLog__Read','EventLog__RegisterSource', - 'EventLog__Report','FileCountLines','FileCreate','FileListToArray', - 'FilePrint','FileReadToArray','FileWriteFromArray', - 'FileWriteLog','FileWriteToLine','GDIPlus_ArrowCapCreate', - 'GDIPlus_ArrowCapDispose','GDIPlus_ArrowCapGetFillState', - 'GDIPlus_ArrowCapGetHeight','GDIPlus_ArrowCapGetMiddleInset', - 'GDIPlus_ArrowCapGetWidth','GDIPlus_ArrowCapSetFillState', - 'GDIPlus_ArrowCapSetHeight','GDIPlus_ArrowCapSetMiddleInset', - 'GDIPlus_ArrowCapSetWidth','GDIPlus_BitmapCloneArea', - 'GDIPlus_BitmapCreateFromFile','GDIPlus_BitmapCreateFromGraphics', - 'GDIPlus_BitmapCreateFromHBITMAP', - 'GDIPlus_BitmapCreateHBITMAPFromBitmap','GDIPlus_BitmapDispose', - 'GDIPlus_BitmapLockBits','GDIPlus_BitmapUnlockBits', - 'GDIPlus_BrushClone','GDIPlus_BrushCreateSolid', - 'GDIPlus_BrushDispose','GDIPlus_BrushGetType', - 'GDIPlus_CustomLineCapDispose','GDIPlus_Decoders', - 'GDIPlus_DecodersGetCount','GDIPlus_DecodersGetSize', - 'GDIPlus_Encoders','GDIPlus_EncodersGetCLSID', - 'GDIPlus_EncodersGetCount','GDIPlus_EncodersGetParamList', - 'GDIPlus_EncodersGetParamListSize','GDIPlus_EncodersGetSize', - 'GDIPlus_FontCreate','GDIPlus_FontDispose', - 'GDIPlus_FontFamilyCreate','GDIPlus_FontFamilyDispose', - 'GDIPlus_GraphicsClear','GDIPlus_GraphicsCreateFromHDC', - 'GDIPlus_GraphicsCreateFromHWND','GDIPlus_GraphicsDispose', - 'GDIPlus_GraphicsDrawArc','GDIPlus_GraphicsDrawBezier', - 'GDIPlus_GraphicsDrawClosedCurve','GDIPlus_GraphicsDrawCurve', - 'GDIPlus_GraphicsDrawEllipse','GDIPlus_GraphicsDrawImage', - 'GDIPlus_GraphicsDrawImageRect','GDIPlus_GraphicsDrawImageRectRect', - 'GDIPlus_GraphicsDrawLine','GDIPlus_GraphicsDrawPie', - 'GDIPlus_GraphicsDrawPolygon','GDIPlus_GraphicsDrawRect', - 'GDIPlus_GraphicsDrawString','GDIPlus_GraphicsDrawStringEx', - 'GDIPlus_GraphicsFillClosedCurve','GDIPlus_GraphicsFillEllipse', - 'GDIPlus_GraphicsFillPie','GDIPlus_GraphicsFillRect', - 'GDIPlus_GraphicsGetDC','GDIPlus_GraphicsGetSmoothingMode', - 'GDIPlus_GraphicsMeasureString','GDIPlus_GraphicsReleaseDC', - 'GDIPlus_GraphicsSetSmoothingMode','GDIPlus_GraphicsSetTransform', - 'GDIPlus_ImageDispose','GDIPlus_ImageGetGraphicsContext', - 'GDIPlus_ImageGetHeight','GDIPlus_ImageGetWidth', - 'GDIPlus_ImageLoadFromFile','GDIPlus_ImageSaveToFile', - 'GDIPlus_ImageSaveToFileEx','GDIPlus_MatrixCreate', - 'GDIPlus_MatrixDispose','GDIPlus_MatrixRotate','GDIPlus_ParamAdd', - 'GDIPlus_ParamInit','GDIPlus_PenCreate','GDIPlus_PenDispose', - 'GDIPlus_PenGetAlignment','GDIPlus_PenGetColor', - 'GDIPlus_PenGetCustomEndCap','GDIPlus_PenGetDashCap', - 'GDIPlus_PenGetDashStyle','GDIPlus_PenGetEndCap', - 'GDIPlus_PenGetWidth','GDIPlus_PenSetAlignment', - 'GDIPlus_PenSetColor','GDIPlus_PenSetCustomEndCap', - 'GDIPlus_PenSetDashCap','GDIPlus_PenSetDashStyle', - 'GDIPlus_PenSetEndCap','GDIPlus_PenSetWidth','GDIPlus_RectFCreate', - 'GDIPlus_Shutdown','GDIPlus_Startup','GDIPlus_StringFormatCreate', - 'GDIPlus_StringFormatDispose','GetIP','GUICtrlAVI_Close', - 'GUICtrlAVI_Create','GUICtrlAVI_Destroy','GUICtrlAVI_Open', - 'GUICtrlAVI_OpenEx','GUICtrlAVI_Play','GUICtrlAVI_Seek', - 'GUICtrlAVI_Show','GUICtrlAVI_Stop','GUICtrlButton_Click', - 'GUICtrlButton_Create','GUICtrlButton_Destroy', - 'GUICtrlButton_Enable','GUICtrlButton_GetCheck', - 'GUICtrlButton_GetFocus','GUICtrlButton_GetIdealSize', - 'GUICtrlButton_GetImage','GUICtrlButton_GetImageList', - 'GUICtrlButton_GetState','GUICtrlButton_GetText', - 'GUICtrlButton_GetTextMargin','GUICtrlButton_SetCheck', - 'GUICtrlButton_SetFocus','GUICtrlButton_SetImage', - 'GUICtrlButton_SetImageList','GUICtrlButton_SetSize', - 'GUICtrlButton_SetState','GUICtrlButton_SetStyle', - 'GUICtrlButton_SetText','GUICtrlButton_SetTextMargin', - 'GUICtrlButton_Show','GUICtrlComboBox_AddDir', - 'GUICtrlComboBox_AddString','GUICtrlComboBox_AutoComplete', - 'GUICtrlComboBox_BeginUpdate','GUICtrlComboBox_Create', - 'GUICtrlComboBox_DeleteString','GUICtrlComboBox_Destroy', - 'GUICtrlComboBox_EndUpdate','GUICtrlComboBox_FindString', - 'GUICtrlComboBox_FindStringExact','GUICtrlComboBox_GetComboBoxInfo', - 'GUICtrlComboBox_GetCount','GUICtrlComboBox_GetCurSel', - 'GUICtrlComboBox_GetDroppedControlRect', - 'GUICtrlComboBox_GetDroppedControlRectEx', - 'GUICtrlComboBox_GetDroppedState','GUICtrlComboBox_GetDroppedWidth', - 'GUICtrlComboBox_GetEditSel','GUICtrlComboBox_GetEditText', - 'GUICtrlComboBox_GetExtendedUI', - 'GUICtrlComboBox_GetHorizontalExtent', - 'GUICtrlComboBox_GetItemHeight','GUICtrlComboBox_GetLBText', - 'GUICtrlComboBox_GetLBTextLen','GUICtrlComboBox_GetList', - 'GUICtrlComboBox_GetListArray','GUICtrlComboBox_GetLocale', - 'GUICtrlComboBox_GetLocaleCountry','GUICtrlComboBox_GetLocaleLang', - 'GUICtrlComboBox_GetLocalePrimLang', - 'GUICtrlComboBox_GetLocaleSubLang','GUICtrlComboBox_GetMinVisible', - 'GUICtrlComboBox_GetTopIndex','GUICtrlComboBox_InitStorage', - 'GUICtrlComboBox_InsertString','GUICtrlComboBox_LimitText', - 'GUICtrlComboBox_ReplaceEditSel','GUICtrlComboBox_ResetContent', - 'GUICtrlComboBox_SelectString','GUICtrlComboBox_SetCurSel', - 'GUICtrlComboBox_SetDroppedWidth','GUICtrlComboBox_SetEditSel', - 'GUICtrlComboBox_SetEditText','GUICtrlComboBox_SetExtendedUI', - 'GUICtrlComboBox_SetHorizontalExtent', - 'GUICtrlComboBox_SetItemHeight','GUICtrlComboBox_SetMinVisible', - 'GUICtrlComboBox_SetTopIndex','GUICtrlComboBox_ShowDropDown', - 'GUICtrlComboBoxEx_AddDir','GUICtrlComboBoxEx_AddString', - 'GUICtrlComboBoxEx_BeginUpdate','GUICtrlComboBoxEx_Create', - 'GUICtrlComboBoxEx_CreateSolidBitMap', - 'GUICtrlComboBoxEx_DeleteString','GUICtrlComboBoxEx_Destroy', - 'GUICtrlComboBoxEx_EndUpdate','GUICtrlComboBoxEx_FindStringExact', - 'GUICtrlComboBoxEx_GetComboBoxInfo', - 'GUICtrlComboBoxEx_GetComboControl','GUICtrlComboBoxEx_GetCount', - 'GUICtrlComboBoxEx_GetCurSel', - 'GUICtrlComboBoxEx_GetDroppedControlRect', - 'GUICtrlComboBoxEx_GetDroppedControlRectEx', - 'GUICtrlComboBoxEx_GetDroppedState', - 'GUICtrlComboBoxEx_GetDroppedWidth', - 'GUICtrlComboBoxEx_GetEditControl','GUICtrlComboBoxEx_GetEditSel', - 'GUICtrlComboBoxEx_GetEditText', - 'GUICtrlComboBoxEx_GetExtendedStyle', - 'GUICtrlComboBoxEx_GetExtendedUI','GUICtrlComboBoxEx_GetImageList', - 'GUICtrlComboBoxEx_GetItem','GUICtrlComboBoxEx_GetItemEx', - 'GUICtrlComboBoxEx_GetItemHeight','GUICtrlComboBoxEx_GetItemImage', - 'GUICtrlComboBoxEx_GetItemIndent', - 'GUICtrlComboBoxEx_GetItemOverlayImage', - 'GUICtrlComboBoxEx_GetItemParam', - 'GUICtrlComboBoxEx_GetItemSelectedImage', - 'GUICtrlComboBoxEx_GetItemText','GUICtrlComboBoxEx_GetItemTextLen', - 'GUICtrlComboBoxEx_GetList','GUICtrlComboBoxEx_GetListArray', - 'GUICtrlComboBoxEx_GetLocale','GUICtrlComboBoxEx_GetLocaleCountry', - 'GUICtrlComboBoxEx_GetLocaleLang', - 'GUICtrlComboBoxEx_GetLocalePrimLang', - 'GUICtrlComboBoxEx_GetLocaleSubLang', - 'GUICtrlComboBoxEx_GetMinVisible','GUICtrlComboBoxEx_GetTopIndex', - 'GUICtrlComboBoxEx_InitStorage','GUICtrlComboBoxEx_InsertString', - 'GUICtrlComboBoxEx_LimitText','GUICtrlComboBoxEx_ReplaceEditSel', - 'GUICtrlComboBoxEx_ResetContent','GUICtrlComboBoxEx_SetCurSel', - 'GUICtrlComboBoxEx_SetDroppedWidth','GUICtrlComboBoxEx_SetEditSel', - 'GUICtrlComboBoxEx_SetEditText', - 'GUICtrlComboBoxEx_SetExtendedStyle', - 'GUICtrlComboBoxEx_SetExtendedUI','GUICtrlComboBoxEx_SetImageList', - 'GUICtrlComboBoxEx_SetItem','GUICtrlComboBoxEx_SetItemEx', - 'GUICtrlComboBoxEx_SetItemHeight','GUICtrlComboBoxEx_SetItemImage', - 'GUICtrlComboBoxEx_SetItemIndent', - 'GUICtrlComboBoxEx_SetItemOverlayImage', - 'GUICtrlComboBoxEx_SetItemParam', - 'GUICtrlComboBoxEx_SetItemSelectedImage', - 'GUICtrlComboBoxEx_SetMinVisible','GUICtrlComboBoxEx_SetTopIndex', - 'GUICtrlComboBoxEx_ShowDropDown','GUICtrlDTP_Create', - 'GUICtrlDTP_Destroy','GUICtrlDTP_GetMCColor','GUICtrlDTP_GetMCFont', - 'GUICtrlDTP_GetMonthCal','GUICtrlDTP_GetRange', - 'GUICtrlDTP_GetRangeEx','GUICtrlDTP_GetSystemTime', - 'GUICtrlDTP_GetSystemTimeEx','GUICtrlDTP_SetFormat', - 'GUICtrlDTP_SetMCColor','GUICtrlDTP_SetMCFont', - 'GUICtrlDTP_SetRange','GUICtrlDTP_SetRangeEx', - 'GUICtrlDTP_SetSystemTime','GUICtrlDTP_SetSystemTimeEx', - 'GUICtrlEdit_AppendText','GUICtrlEdit_BeginUpdate', - 'GUICtrlEdit_CanUndo','GUICtrlEdit_CharFromPos', - 'GUICtrlEdit_Create','GUICtrlEdit_Destroy', - 'GUICtrlEdit_EmptyUndoBuffer','GUICtrlEdit_EndUpdate', - 'GUICtrlEdit_Find','GUICtrlEdit_FmtLines', - 'GUICtrlEdit_GetFirstVisibleLine','GUICtrlEdit_GetLimitText', - 'GUICtrlEdit_GetLine','GUICtrlEdit_GetLineCount', - 'GUICtrlEdit_GetMargins','GUICtrlEdit_GetModify', - 'GUICtrlEdit_GetPasswordChar','GUICtrlEdit_GetRECT', - 'GUICtrlEdit_GetRECTEx','GUICtrlEdit_GetSel','GUICtrlEdit_GetText', - 'GUICtrlEdit_GetTextLen','GUICtrlEdit_HideBalloonTip', - 'GUICtrlEdit_InsertText','GUICtrlEdit_LineFromChar', - 'GUICtrlEdit_LineIndex','GUICtrlEdit_LineLength', - 'GUICtrlEdit_LineScroll','GUICtrlEdit_PosFromChar', - 'GUICtrlEdit_ReplaceSel','GUICtrlEdit_Scroll', - 'GUICtrlEdit_SetLimitText','GUICtrlEdit_SetMargins', - 'GUICtrlEdit_SetModify','GUICtrlEdit_SetPasswordChar', - 'GUICtrlEdit_SetReadOnly','GUICtrlEdit_SetRECT', - 'GUICtrlEdit_SetRECTEx','GUICtrlEdit_SetRECTNP', - 'GUICtrlEdit_SetRectNPEx','GUICtrlEdit_SetSel', - 'GUICtrlEdit_SetTabStops','GUICtrlEdit_SetText', - 'GUICtrlEdit_ShowBalloonTip','GUICtrlEdit_Undo', - 'GUICtrlHeader_AddItem','GUICtrlHeader_ClearFilter', - 'GUICtrlHeader_ClearFilterAll','GUICtrlHeader_Create', - 'GUICtrlHeader_CreateDragImage','GUICtrlHeader_DeleteItem', - 'GUICtrlHeader_Destroy','GUICtrlHeader_EditFilter', - 'GUICtrlHeader_GetBitmapMargin','GUICtrlHeader_GetImageList', - 'GUICtrlHeader_GetItem','GUICtrlHeader_GetItemAlign', - 'GUICtrlHeader_GetItemBitmap','GUICtrlHeader_GetItemCount', - 'GUICtrlHeader_GetItemDisplay','GUICtrlHeader_GetItemFlags', - 'GUICtrlHeader_GetItemFormat','GUICtrlHeader_GetItemImage', - 'GUICtrlHeader_GetItemOrder','GUICtrlHeader_GetItemParam', - 'GUICtrlHeader_GetItemRect','GUICtrlHeader_GetItemRectEx', - 'GUICtrlHeader_GetItemText','GUICtrlHeader_GetItemWidth', - 'GUICtrlHeader_GetOrderArray','GUICtrlHeader_GetUnicodeFormat', - 'GUICtrlHeader_HitTest','GUICtrlHeader_InsertItem', - 'GUICtrlHeader_Layout','GUICtrlHeader_OrderToIndex', - 'GUICtrlHeader_SetBitmapMargin', - 'GUICtrlHeader_SetFilterChangeTimeout', - 'GUICtrlHeader_SetHotDivider','GUICtrlHeader_SetImageList', - 'GUICtrlHeader_SetItem','GUICtrlHeader_SetItemAlign', - 'GUICtrlHeader_SetItemBitmap','GUICtrlHeader_SetItemDisplay', - 'GUICtrlHeader_SetItemFlags','GUICtrlHeader_SetItemFormat', - 'GUICtrlHeader_SetItemImage','GUICtrlHeader_SetItemOrder', - 'GUICtrlHeader_SetItemParam','GUICtrlHeader_SetItemText', - 'GUICtrlHeader_SetItemWidth','GUICtrlHeader_SetOrderArray', - 'GUICtrlHeader_SetUnicodeFormat','GUICtrlIpAddress_ClearAddress', - 'GUICtrlIpAddress_Create','GUICtrlIpAddress_Destroy', - 'GUICtrlIpAddress_Get','GUICtrlIpAddress_GetArray', - 'GUICtrlIpAddress_GetEx','GUICtrlIpAddress_IsBlank', - 'GUICtrlIpAddress_Set','GUICtrlIpAddress_SetArray', - 'GUICtrlIpAddress_SetEx','GUICtrlIpAddress_SetFocus', - 'GUICtrlIpAddress_SetFont','GUICtrlIpAddress_SetRange', - 'GUICtrlIpAddress_ShowHide','GUICtrlListBox_AddFile', - 'GUICtrlListBox_AddString','GUICtrlListBox_BeginUpdate', - 'GUICtrlListBox_Create','GUICtrlListBox_DeleteString', - 'GUICtrlListBox_Destroy','GUICtrlListBox_Dir', - 'GUICtrlListBox_EndUpdate','GUICtrlListBox_FindInText', - 'GUICtrlListBox_FindString','GUICtrlListBox_GetAnchorIndex', - 'GUICtrlListBox_GetCaretIndex','GUICtrlListBox_GetCount', - 'GUICtrlListBox_GetCurSel','GUICtrlListBox_GetHorizontalExtent', - 'GUICtrlListBox_GetItemData','GUICtrlListBox_GetItemHeight', - 'GUICtrlListBox_GetItemRect','GUICtrlListBox_GetItemRectEx', - 'GUICtrlListBox_GetListBoxInfo','GUICtrlListBox_GetLocale', - 'GUICtrlListBox_GetLocaleCountry','GUICtrlListBox_GetLocaleLang', - 'GUICtrlListBox_GetLocalePrimLang', - 'GUICtrlListBox_GetLocaleSubLang','GUICtrlListBox_GetSel', - 'GUICtrlListBox_GetSelCount','GUICtrlListBox_GetSelItems', - 'GUICtrlListBox_GetSelItemsText','GUICtrlListBox_GetText', - 'GUICtrlListBox_GetTextLen','GUICtrlListBox_GetTopIndex', - 'GUICtrlListBox_InitStorage','GUICtrlListBox_InsertString', - 'GUICtrlListBox_ItemFromPoint','GUICtrlListBox_ReplaceString', - 'GUICtrlListBox_ResetContent','GUICtrlListBox_SelectString', - 'GUICtrlListBox_SelItemRange','GUICtrlListBox_SelItemRangeEx', - 'GUICtrlListBox_SetAnchorIndex','GUICtrlListBox_SetCaretIndex', - 'GUICtrlListBox_SetColumnWidth','GUICtrlListBox_SetCurSel', - 'GUICtrlListBox_SetHorizontalExtent','GUICtrlListBox_SetItemData', - 'GUICtrlListBox_SetItemHeight','GUICtrlListBox_SetLocale', - 'GUICtrlListBox_SetSel','GUICtrlListBox_SetTabStops', - 'GUICtrlListBox_SetTopIndex','GUICtrlListBox_Sort', - 'GUICtrlListBox_SwapString','GUICtrlListBox_UpdateHScroll', - 'GUICtrlListView_AddArray','GUICtrlListView_AddColumn', - 'GUICtrlListView_AddItem','GUICtrlListView_AddSubItem', - 'GUICtrlListView_ApproximateViewHeight', - 'GUICtrlListView_ApproximateViewRect', - 'GUICtrlListView_ApproximateViewWidth','GUICtrlListView_Arrange', - 'GUICtrlListView_BeginUpdate','GUICtrlListView_CancelEditLabel', - 'GUICtrlListView_ClickItem','GUICtrlListView_CopyItems', - 'GUICtrlListView_Create','GUICtrlListView_CreateDragImage', - 'GUICtrlListView_CreateSolidBitMap', - 'GUICtrlListView_DeleteAllItems','GUICtrlListView_DeleteColumn', - 'GUICtrlListView_DeleteItem','GUICtrlListView_DeleteItemsSelected', - 'GUICtrlListView_Destroy','GUICtrlListView_DrawDragImage', - 'GUICtrlListView_EditLabel','GUICtrlListView_EnableGroupView', - 'GUICtrlListView_EndUpdate','GUICtrlListView_EnsureVisible', - 'GUICtrlListView_FindInText','GUICtrlListView_FindItem', - 'GUICtrlListView_FindNearest','GUICtrlListView_FindParam', - 'GUICtrlListView_FindText','GUICtrlListView_GetBkColor', - 'GUICtrlListView_GetBkImage','GUICtrlListView_GetCallbackMask', - 'GUICtrlListView_GetColumn','GUICtrlListView_GetColumnCount', - 'GUICtrlListView_GetColumnOrder', - 'GUICtrlListView_GetColumnOrderArray', - 'GUICtrlListView_GetColumnWidth','GUICtrlListView_GetCounterPage', - 'GUICtrlListView_GetEditControl', - 'GUICtrlListView_GetExtendedListViewStyle', - 'GUICtrlListView_GetGroupInfo', - 'GUICtrlListView_GetGroupViewEnabled','GUICtrlListView_GetHeader', - 'GUICtrlListView_GetHotCursor','GUICtrlListView_GetHotItem', - 'GUICtrlListView_GetHoverTime','GUICtrlListView_GetImageList', - 'GUICtrlListView_GetISearchString','GUICtrlListView_GetItem', - 'GUICtrlListView_GetItemChecked','GUICtrlListView_GetItemCount', - 'GUICtrlListView_GetItemCut','GUICtrlListView_GetItemDropHilited', - 'GUICtrlListView_GetItemEx','GUICtrlListView_GetItemFocused', - 'GUICtrlListView_GetItemGroupID','GUICtrlListView_GetItemImage', - 'GUICtrlListView_GetItemIndent','GUICtrlListView_GetItemParam', - 'GUICtrlListView_GetItemPosition', - 'GUICtrlListView_GetItemPositionX', - 'GUICtrlListView_GetItemPositionY','GUICtrlListView_GetItemRect', - 'GUICtrlListView_GetItemRectEx','GUICtrlListView_GetItemSelected', - 'GUICtrlListView_GetItemSpacing','GUICtrlListView_GetItemSpacingX', - 'GUICtrlListView_GetItemSpacingY','GUICtrlListView_GetItemState', - 'GUICtrlListView_GetItemStateImage','GUICtrlListView_GetItemText', - 'GUICtrlListView_GetItemTextArray', - 'GUICtrlListView_GetItemTextString','GUICtrlListView_GetNextItem', - 'GUICtrlListView_GetNumberOfWorkAreas','GUICtrlListView_GetOrigin', - 'GUICtrlListView_GetOriginX','GUICtrlListView_GetOriginY', - 'GUICtrlListView_GetOutlineColor', - 'GUICtrlListView_GetSelectedColumn', - 'GUICtrlListView_GetSelectedCount', - 'GUICtrlListView_GetSelectedIndices', - 'GUICtrlListView_GetSelectionMark','GUICtrlListView_GetStringWidth', - 'GUICtrlListView_GetSubItemRect','GUICtrlListView_GetTextBkColor', - 'GUICtrlListView_GetTextColor','GUICtrlListView_GetToolTips', - 'GUICtrlListView_GetTopIndex','GUICtrlListView_GetUnicodeFormat', - 'GUICtrlListView_GetView','GUICtrlListView_GetViewDetails', - 'GUICtrlListView_GetViewLarge','GUICtrlListView_GetViewList', - 'GUICtrlListView_GetViewRect','GUICtrlListView_GetViewSmall', - 'GUICtrlListView_GetViewTile','GUICtrlListView_HideColumn', - 'GUICtrlListView_HitTest','GUICtrlListView_InsertColumn', - 'GUICtrlListView_InsertGroup','GUICtrlListView_InsertItem', - 'GUICtrlListView_JustifyColumn','GUICtrlListView_MapIDToIndex', - 'GUICtrlListView_MapIndexToID','GUICtrlListView_RedrawItems', - 'GUICtrlListView_RegisterSortCallBack', - 'GUICtrlListView_RemoveAllGroups','GUICtrlListView_RemoveGroup', - 'GUICtrlListView_Scroll','GUICtrlListView_SetBkColor', - 'GUICtrlListView_SetBkImage','GUICtrlListView_SetCallBackMask', - 'GUICtrlListView_SetColumn','GUICtrlListView_SetColumnOrder', - 'GUICtrlListView_SetColumnOrderArray', - 'GUICtrlListView_SetColumnWidth', - 'GUICtrlListView_SetExtendedListViewStyle', - 'GUICtrlListView_SetGroupInfo','GUICtrlListView_SetHotItem', - 'GUICtrlListView_SetHoverTime','GUICtrlListView_SetIconSpacing', - 'GUICtrlListView_SetImageList','GUICtrlListView_SetItem', - 'GUICtrlListView_SetItemChecked','GUICtrlListView_SetItemCount', - 'GUICtrlListView_SetItemCut','GUICtrlListView_SetItemDropHilited', - 'GUICtrlListView_SetItemEx','GUICtrlListView_SetItemFocused', - 'GUICtrlListView_SetItemGroupID','GUICtrlListView_SetItemImage', - 'GUICtrlListView_SetItemIndent','GUICtrlListView_SetItemParam', - 'GUICtrlListView_SetItemPosition', - 'GUICtrlListView_SetItemPosition32', - 'GUICtrlListView_SetItemSelected','GUICtrlListView_SetItemState', - 'GUICtrlListView_SetItemStateImage','GUICtrlListView_SetItemText', - 'GUICtrlListView_SetOutlineColor', - 'GUICtrlListView_SetSelectedColumn', - 'GUICtrlListView_SetSelectionMark','GUICtrlListView_SetTextBkColor', - 'GUICtrlListView_SetTextColor','GUICtrlListView_SetToolTips', - 'GUICtrlListView_SetUnicodeFormat','GUICtrlListView_SetView', - 'GUICtrlListView_SetWorkAreas','GUICtrlListView_SimpleSort', - 'GUICtrlListView_SortItems','GUICtrlListView_SubItemHitTest', - 'GUICtrlListView_UnRegisterSortCallBack', - 'GUICtrlMenu_AddMenuItem','GUICtrlMenu_AppendMenu', - 'GUICtrlMenu_CheckMenuItem','GUICtrlMenu_CheckRadioItem', - 'GUICtrlMenu_CreateMenu','GUICtrlMenu_CreatePopup', - 'GUICtrlMenu_DeleteMenu','GUICtrlMenu_DestroyMenu', - 'GUICtrlMenu_DrawMenuBar','GUICtrlMenu_EnableMenuItem', - 'GUICtrlMenu_FindItem','GUICtrlMenu_FindParent', - 'GUICtrlMenu_GetItemBmp','GUICtrlMenu_GetItemBmpChecked', - 'GUICtrlMenu_GetItemBmpUnchecked','GUICtrlMenu_GetItemChecked', - 'GUICtrlMenu_GetItemCount','GUICtrlMenu_GetItemData', - 'GUICtrlMenu_GetItemDefault','GUICtrlMenu_GetItemDisabled', - 'GUICtrlMenu_GetItemEnabled','GUICtrlMenu_GetItemGrayed', - 'GUICtrlMenu_GetItemHighlighted','GUICtrlMenu_GetItemID', - 'GUICtrlMenu_GetItemInfo','GUICtrlMenu_GetItemRect', - 'GUICtrlMenu_GetItemRectEx','GUICtrlMenu_GetItemState', - 'GUICtrlMenu_GetItemStateEx','GUICtrlMenu_GetItemSubMenu', - 'GUICtrlMenu_GetItemText','GUICtrlMenu_GetItemType', - 'GUICtrlMenu_GetMenu','GUICtrlMenu_GetMenuBackground', - 'GUICtrlMenu_GetMenuBarInfo','GUICtrlMenu_GetMenuContextHelpID', - 'GUICtrlMenu_GetMenuData','GUICtrlMenu_GetMenuDefaultItem', - 'GUICtrlMenu_GetMenuHeight','GUICtrlMenu_GetMenuInfo', - 'GUICtrlMenu_GetMenuStyle','GUICtrlMenu_GetSystemMenu', - 'GUICtrlMenu_InsertMenuItem','GUICtrlMenu_InsertMenuItemEx', - 'GUICtrlMenu_IsMenu','GUICtrlMenu_LoadMenu', - 'GUICtrlMenu_MapAccelerator','GUICtrlMenu_MenuItemFromPoint', - 'GUICtrlMenu_RemoveMenu','GUICtrlMenu_SetItemBitmaps', - 'GUICtrlMenu_SetItemBmp','GUICtrlMenu_SetItemBmpChecked', - 'GUICtrlMenu_SetItemBmpUnchecked','GUICtrlMenu_SetItemChecked', - 'GUICtrlMenu_SetItemData','GUICtrlMenu_SetItemDefault', - 'GUICtrlMenu_SetItemDisabled','GUICtrlMenu_SetItemEnabled', - 'GUICtrlMenu_SetItemGrayed','GUICtrlMenu_SetItemHighlighted', - 'GUICtrlMenu_SetItemID','GUICtrlMenu_SetItemInfo', - 'GUICtrlMenu_SetItemState','GUICtrlMenu_SetItemSubMenu', - 'GUICtrlMenu_SetItemText','GUICtrlMenu_SetItemType', - 'GUICtrlMenu_SetMenu','GUICtrlMenu_SetMenuBackground', - 'GUICtrlMenu_SetMenuContextHelpID','GUICtrlMenu_SetMenuData', - 'GUICtrlMenu_SetMenuDefaultItem','GUICtrlMenu_SetMenuHeight', - 'GUICtrlMenu_SetMenuInfo','GUICtrlMenu_SetMenuStyle', - 'GUICtrlMenu_TrackPopupMenu','GUICtrlMonthCal_Create', - 'GUICtrlMonthCal_Destroy','GUICtrlMonthCal_GetColor', - 'GUICtrlMonthCal_GetColorArray','GUICtrlMonthCal_GetCurSel', - 'GUICtrlMonthCal_GetCurSelStr','GUICtrlMonthCal_GetFirstDOW', - 'GUICtrlMonthCal_GetFirstDOWStr','GUICtrlMonthCal_GetMaxSelCount', - 'GUICtrlMonthCal_GetMaxTodayWidth', - 'GUICtrlMonthCal_GetMinReqHeight','GUICtrlMonthCal_GetMinReqRect', - 'GUICtrlMonthCal_GetMinReqRectArray', - 'GUICtrlMonthCal_GetMinReqWidth','GUICtrlMonthCal_GetMonthDelta', - 'GUICtrlMonthCal_GetMonthRange','GUICtrlMonthCal_GetMonthRangeMax', - 'GUICtrlMonthCal_GetMonthRangeMaxStr', - 'GUICtrlMonthCal_GetMonthRangeMin', - 'GUICtrlMonthCal_GetMonthRangeMinStr', - 'GUICtrlMonthCal_GetMonthRangeSpan','GUICtrlMonthCal_GetRange', - 'GUICtrlMonthCal_GetRangeMax','GUICtrlMonthCal_GetRangeMaxStr', - 'GUICtrlMonthCal_GetRangeMin','GUICtrlMonthCal_GetRangeMinStr', - 'GUICtrlMonthCal_GetSelRange','GUICtrlMonthCal_GetSelRangeMax', - 'GUICtrlMonthCal_GetSelRangeMaxStr', - 'GUICtrlMonthCal_GetSelRangeMin', - 'GUICtrlMonthCal_GetSelRangeMinStr','GUICtrlMonthCal_GetToday', - 'GUICtrlMonthCal_GetTodayStr','GUICtrlMonthCal_GetUnicodeFormat', - 'GUICtrlMonthCal_HitTest','GUICtrlMonthCal_SetColor', - 'GUICtrlMonthCal_SetCurSel','GUICtrlMonthCal_SetDayState', - 'GUICtrlMonthCal_SetFirstDOW','GUICtrlMonthCal_SetMaxSelCount', - 'GUICtrlMonthCal_SetMonthDelta','GUICtrlMonthCal_SetRange', - 'GUICtrlMonthCal_SetSelRange','GUICtrlMonthCal_SetToday', - 'GUICtrlMonthCal_SetUnicodeFormat','GUICtrlRebar_AddBand', - 'GUICtrlRebar_AddToolBarBand','GUICtrlRebar_BeginDrag', - 'GUICtrlRebar_Create','GUICtrlRebar_DeleteBand', - 'GUICtrlRebar_Destroy','GUICtrlRebar_DragMove', - 'GUICtrlRebar_EndDrag','GUICtrlRebar_GetBandBackColor', - 'GUICtrlRebar_GetBandBorders','GUICtrlRebar_GetBandBordersEx', - 'GUICtrlRebar_GetBandChildHandle','GUICtrlRebar_GetBandChildSize', - 'GUICtrlRebar_GetBandCount','GUICtrlRebar_GetBandForeColor', - 'GUICtrlRebar_GetBandHeaderSize','GUICtrlRebar_GetBandID', - 'GUICtrlRebar_GetBandIdealSize','GUICtrlRebar_GetBandLength', - 'GUICtrlRebar_GetBandLParam','GUICtrlRebar_GetBandMargins', - 'GUICtrlRebar_GetBandMarginsEx','GUICtrlRebar_GetBandRect', - 'GUICtrlRebar_GetBandRectEx','GUICtrlRebar_GetBandStyle', - 'GUICtrlRebar_GetBandStyleBreak', - 'GUICtrlRebar_GetBandStyleChildEdge', - 'GUICtrlRebar_GetBandStyleFixedBMP', - 'GUICtrlRebar_GetBandStyleFixedSize', - 'GUICtrlRebar_GetBandStyleGripperAlways', - 'GUICtrlRebar_GetBandStyleHidden', - 'GUICtrlRebar_GetBandStyleHideTitle', - 'GUICtrlRebar_GetBandStyleNoGripper', - 'GUICtrlRebar_GetBandStyleTopAlign', - 'GUICtrlRebar_GetBandStyleUseChevron', - 'GUICtrlRebar_GetBandStyleVariableHeight', - 'GUICtrlRebar_GetBandText','GUICtrlRebar_GetBarHeight', - 'GUICtrlRebar_GetBKColor','GUICtrlRebar_GetColorScheme', - 'GUICtrlRebar_GetRowCount','GUICtrlRebar_GetRowHeight', - 'GUICtrlRebar_GetTextColor','GUICtrlRebar_GetToolTips', - 'GUICtrlRebar_GetUnicodeFormat','GUICtrlRebar_HitTest', - 'GUICtrlRebar_IDToIndex','GUICtrlRebar_MaximizeBand', - 'GUICtrlRebar_MinimizeBand','GUICtrlRebar_MoveBand', - 'GUICtrlRebar_SetBandBackColor','GUICtrlRebar_SetBandForeColor', - 'GUICtrlRebar_SetBandHeaderSize','GUICtrlRebar_SetBandID', - 'GUICtrlRebar_SetBandIdealSize','GUICtrlRebar_SetBandLength', - 'GUICtrlRebar_SetBandLParam','GUICtrlRebar_SetBandStyle', - 'GUICtrlRebar_SetBandStyleBreak', - 'GUICtrlRebar_SetBandStyleChildEdge', - 'GUICtrlRebar_SetBandStyleFixedBMP', - 'GUICtrlRebar_SetBandStyleFixedSize', - 'GUICtrlRebar_SetBandStyleGripperAlways', - 'GUICtrlRebar_SetBandStyleHidden', - 'GUICtrlRebar_SetBandStyleHideTitle', - 'GUICtrlRebar_SetBandStyleNoGripper', - 'GUICtrlRebar_SetBandStyleTopAlign', - 'GUICtrlRebar_SetBandStyleUseChevron', - 'GUICtrlRebar_SetBandStyleVariableHeight', - 'GUICtrlRebar_SetBandText','GUICtrlRebar_SetBKColor', - 'GUICtrlRebar_SetColorScheme','GUICtrlRebar_SetTextColor', - 'GUICtrlRebar_SetToolTips','GUICtrlRebar_SetUnicodeFormat', - 'GUICtrlRebar_ShowBand','GUICtrlSlider_ClearSel', - 'GUICtrlSlider_ClearTics','GUICtrlSlider_Create', - 'GUICtrlSlider_Destroy','GUICtrlSlider_GetBuddy', - 'GUICtrlSlider_GetChannelRect','GUICtrlSlider_GetLineSize', - 'GUICtrlSlider_GetNumTics','GUICtrlSlider_GetPageSize', - 'GUICtrlSlider_GetPos','GUICtrlSlider_GetPTics', - 'GUICtrlSlider_GetRange','GUICtrlSlider_GetRangeMax', - 'GUICtrlSlider_GetRangeMin','GUICtrlSlider_GetSel', - 'GUICtrlSlider_GetSelEnd','GUICtrlSlider_GetSelStart', - 'GUICtrlSlider_GetThumbLength','GUICtrlSlider_GetThumbRect', - 'GUICtrlSlider_GetThumbRectEx','GUICtrlSlider_GetTic', - 'GUICtrlSlider_GetTicPos','GUICtrlSlider_GetToolTips', - 'GUICtrlSlider_GetUnicodeFormat','GUICtrlSlider_SetBuddy', - 'GUICtrlSlider_SetLineSize','GUICtrlSlider_SetPageSize', - 'GUICtrlSlider_SetPos','GUICtrlSlider_SetRange', - 'GUICtrlSlider_SetRangeMax','GUICtrlSlider_SetRangeMin', - 'GUICtrlSlider_SetSel','GUICtrlSlider_SetSelEnd', - 'GUICtrlSlider_SetSelStart','GUICtrlSlider_SetThumbLength', - 'GUICtrlSlider_SetTic','GUICtrlSlider_SetTicFreq', - 'GUICtrlSlider_SetTipSide','GUICtrlSlider_SetToolTips', - 'GUICtrlSlider_SetUnicodeFormat','GUICtrlStatusBar_Create', - 'GUICtrlStatusBar_Destroy','GUICtrlStatusBar_EmbedControl', - 'GUICtrlStatusBar_GetBorders','GUICtrlStatusBar_GetBordersHorz', - 'GUICtrlStatusBar_GetBordersRect','GUICtrlStatusBar_GetBordersVert', - 'GUICtrlStatusBar_GetCount','GUICtrlStatusBar_GetHeight', - 'GUICtrlStatusBar_GetIcon','GUICtrlStatusBar_GetParts', - 'GUICtrlStatusBar_GetRect','GUICtrlStatusBar_GetRectEx', - 'GUICtrlStatusBar_GetText','GUICtrlStatusBar_GetTextFlags', - 'GUICtrlStatusBar_GetTextLength','GUICtrlStatusBar_GetTextLengthEx', - 'GUICtrlStatusBar_GetTipText','GUICtrlStatusBar_GetUnicodeFormat', - 'GUICtrlStatusBar_GetWidth','GUICtrlStatusBar_IsSimple', - 'GUICtrlStatusBar_Resize','GUICtrlStatusBar_SetBkColor', - 'GUICtrlStatusBar_SetIcon','GUICtrlStatusBar_SetMinHeight', - 'GUICtrlStatusBar_SetParts','GUICtrlStatusBar_SetSimple', - 'GUICtrlStatusBar_SetText','GUICtrlStatusBar_SetTipText', - 'GUICtrlStatusBar_SetUnicodeFormat','GUICtrlStatusBar_ShowHide', - 'GUICtrlTab_Create','GUICtrlTab_DeleteAllItems', - 'GUICtrlTab_DeleteItem','GUICtrlTab_DeselectAll', - 'GUICtrlTab_Destroy','GUICtrlTab_FindTab','GUICtrlTab_GetCurFocus', - 'GUICtrlTab_GetCurSel','GUICtrlTab_GetDisplayRect', - 'GUICtrlTab_GetDisplayRectEx','GUICtrlTab_GetExtendedStyle', - 'GUICtrlTab_GetImageList','GUICtrlTab_GetItem', - 'GUICtrlTab_GetItemCount','GUICtrlTab_GetItemImage', - 'GUICtrlTab_GetItemParam','GUICtrlTab_GetItemRect', - 'GUICtrlTab_GetItemRectEx','GUICtrlTab_GetItemState', - 'GUICtrlTab_GetItemText','GUICtrlTab_GetRowCount', - 'GUICtrlTab_GetToolTips','GUICtrlTab_GetUnicodeFormat', - 'GUICtrlTab_HighlightItem','GUICtrlTab_HitTest', - 'GUICtrlTab_InsertItem','GUICtrlTab_RemoveImage', - 'GUICtrlTab_SetCurFocus','GUICtrlTab_SetCurSel', - 'GUICtrlTab_SetExtendedStyle','GUICtrlTab_SetImageList', - 'GUICtrlTab_SetItem','GUICtrlTab_SetItemImage', - 'GUICtrlTab_SetItemParam','GUICtrlTab_SetItemSize', - 'GUICtrlTab_SetItemState','GUICtrlTab_SetItemText', - 'GUICtrlTab_SetMinTabWidth','GUICtrlTab_SetPadding', - 'GUICtrlTab_SetToolTips','GUICtrlTab_SetUnicodeFormat', - 'GUICtrlToolbar_AddBitmap','GUICtrlToolbar_AddButton', - 'GUICtrlToolbar_AddButtonSep','GUICtrlToolbar_AddString', - 'GUICtrlToolbar_ButtonCount','GUICtrlToolbar_CheckButton', - 'GUICtrlToolbar_ClickAccel','GUICtrlToolbar_ClickButton', - 'GUICtrlToolbar_ClickIndex','GUICtrlToolbar_CommandToIndex', - 'GUICtrlToolbar_Create','GUICtrlToolbar_Customize', - 'GUICtrlToolbar_DeleteButton','GUICtrlToolbar_Destroy', - 'GUICtrlToolbar_EnableButton','GUICtrlToolbar_FindToolbar', - 'GUICtrlToolbar_GetAnchorHighlight','GUICtrlToolbar_GetBitmapFlags', - 'GUICtrlToolbar_GetButtonBitmap','GUICtrlToolbar_GetButtonInfo', - 'GUICtrlToolbar_GetButtonInfoEx','GUICtrlToolbar_GetButtonParam', - 'GUICtrlToolbar_GetButtonRect','GUICtrlToolbar_GetButtonRectEx', - 'GUICtrlToolbar_GetButtonSize','GUICtrlToolbar_GetButtonState', - 'GUICtrlToolbar_GetButtonStyle','GUICtrlToolbar_GetButtonText', - 'GUICtrlToolbar_GetColorScheme', - 'GUICtrlToolbar_GetDisabledImageList', - 'GUICtrlToolbar_GetExtendedStyle','GUICtrlToolbar_GetHotImageList', - 'GUICtrlToolbar_GetHotItem','GUICtrlToolbar_GetImageList', - 'GUICtrlToolbar_GetInsertMark','GUICtrlToolbar_GetInsertMarkColor', - 'GUICtrlToolbar_GetMaxSize','GUICtrlToolbar_GetMetrics', - 'GUICtrlToolbar_GetPadding','GUICtrlToolbar_GetRows', - 'GUICtrlToolbar_GetString','GUICtrlToolbar_GetStyle', - 'GUICtrlToolbar_GetStyleAltDrag', - 'GUICtrlToolbar_GetStyleCustomErase','GUICtrlToolbar_GetStyleFlat', - 'GUICtrlToolbar_GetStyleList','GUICtrlToolbar_GetStyleRegisterDrop', - 'GUICtrlToolbar_GetStyleToolTips', - 'GUICtrlToolbar_GetStyleTransparent', - 'GUICtrlToolbar_GetStyleWrapable','GUICtrlToolbar_GetTextRows', - 'GUICtrlToolbar_GetToolTips','GUICtrlToolbar_GetUnicodeFormat', - 'GUICtrlToolbar_HideButton','GUICtrlToolbar_HighlightButton', - 'GUICtrlToolbar_HitTest','GUICtrlToolbar_IndexToCommand', - 'GUICtrlToolbar_InsertButton','GUICtrlToolbar_InsertMarkHitTest', - 'GUICtrlToolbar_IsButtonChecked','GUICtrlToolbar_IsButtonEnabled', - 'GUICtrlToolbar_IsButtonHidden', - 'GUICtrlToolbar_IsButtonHighlighted', - 'GUICtrlToolbar_IsButtonIndeterminate', - 'GUICtrlToolbar_IsButtonPressed','GUICtrlToolbar_LoadBitmap', - 'GUICtrlToolbar_LoadImages','GUICtrlToolbar_MapAccelerator', - 'GUICtrlToolbar_MoveButton','GUICtrlToolbar_PressButton', - 'GUICtrlToolbar_SetAnchorHighlight','GUICtrlToolbar_SetBitmapSize', - 'GUICtrlToolbar_SetButtonBitMap','GUICtrlToolbar_SetButtonInfo', - 'GUICtrlToolbar_SetButtonInfoEx','GUICtrlToolbar_SetButtonParam', - 'GUICtrlToolbar_SetButtonSize','GUICtrlToolbar_SetButtonState', - 'GUICtrlToolbar_SetButtonStyle','GUICtrlToolbar_SetButtonText', - 'GUICtrlToolbar_SetButtonWidth','GUICtrlToolbar_SetCmdID', - 'GUICtrlToolbar_SetColorScheme', - 'GUICtrlToolbar_SetDisabledImageList', - 'GUICtrlToolbar_SetDrawTextFlags','GUICtrlToolbar_SetExtendedStyle', - 'GUICtrlToolbar_SetHotImageList','GUICtrlToolbar_SetHotItem', - 'GUICtrlToolbar_SetImageList','GUICtrlToolbar_SetIndent', - 'GUICtrlToolbar_SetIndeterminate','GUICtrlToolbar_SetInsertMark', - 'GUICtrlToolbar_SetInsertMarkColor','GUICtrlToolbar_SetMaxTextRows', - 'GUICtrlToolbar_SetMetrics','GUICtrlToolbar_SetPadding', - 'GUICtrlToolbar_SetParent','GUICtrlToolbar_SetRows', - 'GUICtrlToolbar_SetStyle','GUICtrlToolbar_SetStyleAltDrag', - 'GUICtrlToolbar_SetStyleCustomErase','GUICtrlToolbar_SetStyleFlat', - 'GUICtrlToolbar_SetStyleList','GUICtrlToolbar_SetStyleRegisterDrop', - 'GUICtrlToolbar_SetStyleToolTips', - 'GUICtrlToolbar_SetStyleTransparent', - 'GUICtrlToolbar_SetStyleWrapable','GUICtrlToolbar_SetToolTips', - 'GUICtrlToolbar_SetUnicodeFormat','GUICtrlToolbar_SetWindowTheme', - 'GUICtrlTreeView_Add','GUICtrlTreeView_AddChild', - 'GUICtrlTreeView_AddChildFirst','GUICtrlTreeView_AddFirst', - 'GUICtrlTreeView_BeginUpdate','GUICtrlTreeView_ClickItem', - 'GUICtrlTreeView_Create','GUICtrlTreeView_CreateDragImage', - 'GUICtrlTreeView_CreateSolidBitMap','GUICtrlTreeView_Delete', - 'GUICtrlTreeView_DeleteAll','GUICtrlTreeView_DeleteChildren', - 'GUICtrlTreeView_Destroy','GUICtrlTreeView_DisplayRect', - 'GUICtrlTreeView_DisplayRectEx','GUICtrlTreeView_EditText', - 'GUICtrlTreeView_EndEdit','GUICtrlTreeView_EndUpdate', - 'GUICtrlTreeView_EnsureVisible','GUICtrlTreeView_Expand', - 'GUICtrlTreeView_ExpandedOnce','GUICtrlTreeView_FindItem', - 'GUICtrlTreeView_FindItemEx','GUICtrlTreeView_GetBkColor', - 'GUICtrlTreeView_GetBold','GUICtrlTreeView_GetChecked', - 'GUICtrlTreeView_GetChildCount','GUICtrlTreeView_GetChildren', - 'GUICtrlTreeView_GetCount','GUICtrlTreeView_GetCut', - 'GUICtrlTreeView_GetDropTarget','GUICtrlTreeView_GetEditControl', - 'GUICtrlTreeView_GetExpanded','GUICtrlTreeView_GetFirstChild', - 'GUICtrlTreeView_GetFirstItem','GUICtrlTreeView_GetFirstVisible', - 'GUICtrlTreeView_GetFocused','GUICtrlTreeView_GetHeight', - 'GUICtrlTreeView_GetImageIndex', - 'GUICtrlTreeView_GetImageListIconHandle', - 'GUICtrlTreeView_GetIndent','GUICtrlTreeView_GetInsertMarkColor', - 'GUICtrlTreeView_GetISearchString','GUICtrlTreeView_GetItemByIndex', - 'GUICtrlTreeView_GetItemHandle','GUICtrlTreeView_GetItemParam', - 'GUICtrlTreeView_GetLastChild','GUICtrlTreeView_GetLineColor', - 'GUICtrlTreeView_GetNext','GUICtrlTreeView_GetNextChild', - 'GUICtrlTreeView_GetNextSibling','GUICtrlTreeView_GetNextVisible', - 'GUICtrlTreeView_GetNormalImageList', - 'GUICtrlTreeView_GetParentHandle','GUICtrlTreeView_GetParentParam', - 'GUICtrlTreeView_GetPrev','GUICtrlTreeView_GetPrevChild', - 'GUICtrlTreeView_GetPrevSibling','GUICtrlTreeView_GetPrevVisible', - 'GUICtrlTreeView_GetScrollTime','GUICtrlTreeView_GetSelected', - 'GUICtrlTreeView_GetSelectedImageIndex', - 'GUICtrlTreeView_GetSelection','GUICtrlTreeView_GetSiblingCount', - 'GUICtrlTreeView_GetState','GUICtrlTreeView_GetStateImageIndex', - 'GUICtrlTreeView_GetStateImageList','GUICtrlTreeView_GetText', - 'GUICtrlTreeView_GetTextColor','GUICtrlTreeView_GetToolTips', - 'GUICtrlTreeView_GetTree','GUICtrlTreeView_GetUnicodeFormat', - 'GUICtrlTreeView_GetVisible','GUICtrlTreeView_GetVisibleCount', - 'GUICtrlTreeView_HitTest','GUICtrlTreeView_HitTestEx', - 'GUICtrlTreeView_HitTestItem','GUICtrlTreeView_Index', - 'GUICtrlTreeView_InsertItem','GUICtrlTreeView_IsFirstItem', - 'GUICtrlTreeView_IsParent','GUICtrlTreeView_Level', - 'GUICtrlTreeView_SelectItem','GUICtrlTreeView_SelectItemByIndex', - 'GUICtrlTreeView_SetBkColor','GUICtrlTreeView_SetBold', - 'GUICtrlTreeView_SetChecked','GUICtrlTreeView_SetCheckedByIndex', - 'GUICtrlTreeView_SetChildren','GUICtrlTreeView_SetCut', - 'GUICtrlTreeView_SetDropTarget','GUICtrlTreeView_SetFocused', - 'GUICtrlTreeView_SetHeight','GUICtrlTreeView_SetIcon', - 'GUICtrlTreeView_SetImageIndex','GUICtrlTreeView_SetIndent', - 'GUICtrlTreeView_SetInsertMark', - 'GUICtrlTreeView_SetInsertMarkColor', - 'GUICtrlTreeView_SetItemHeight','GUICtrlTreeView_SetItemParam', - 'GUICtrlTreeView_SetLineColor','GUICtrlTreeView_SetNormalImageList', - 'GUICtrlTreeView_SetScrollTime','GUICtrlTreeView_SetSelected', - 'GUICtrlTreeView_SetSelectedImageIndex','GUICtrlTreeView_SetState', - 'GUICtrlTreeView_SetStateImageIndex', - 'GUICtrlTreeView_SetStateImageList','GUICtrlTreeView_SetText', - 'GUICtrlTreeView_SetTextColor','GUICtrlTreeView_SetToolTips', - 'GUICtrlTreeView_SetUnicodeFormat','GUICtrlTreeView_Sort', - 'GUIImageList_Add','GUIImageList_AddBitmap','GUIImageList_AddIcon', - 'GUIImageList_AddMasked','GUIImageList_BeginDrag', - 'GUIImageList_Copy','GUIImageList_Create','GUIImageList_Destroy', - 'GUIImageList_DestroyIcon','GUIImageList_DragEnter', - 'GUIImageList_DragLeave','GUIImageList_DragMove', - 'GUIImageList_Draw','GUIImageList_DrawEx','GUIImageList_Duplicate', - 'GUIImageList_EndDrag','GUIImageList_GetBkColor', - 'GUIImageList_GetIcon','GUIImageList_GetIconHeight', - 'GUIImageList_GetIconSize','GUIImageList_GetIconSizeEx', - 'GUIImageList_GetIconWidth','GUIImageList_GetImageCount', - 'GUIImageList_GetImageInfoEx','GUIImageList_Remove', - 'GUIImageList_ReplaceIcon','GUIImageList_SetBkColor', - 'GUIImageList_SetIconSize','GUIImageList_SetImageCount', - 'GUIImageList_Swap','GUIScrollBars_EnableScrollBar', - 'GUIScrollBars_GetScrollBarInfoEx','GUIScrollBars_GetScrollBarRect', - 'GUIScrollBars_GetScrollBarRGState', - 'GUIScrollBars_GetScrollBarXYLineButton', - 'GUIScrollBars_GetScrollBarXYThumbBottom', - 'GUIScrollBars_GetScrollBarXYThumbTop', - 'GUIScrollBars_GetScrollInfo','GUIScrollBars_GetScrollInfoEx', - 'GUIScrollBars_GetScrollInfoMax','GUIScrollBars_GetScrollInfoMin', - 'GUIScrollBars_GetScrollInfoPage','GUIScrollBars_GetScrollInfoPos', - 'GUIScrollBars_GetScrollInfoTrackPos','GUIScrollBars_GetScrollPos', - 'GUIScrollBars_GetScrollRange','GUIScrollBars_Init', - 'GUIScrollBars_ScrollWindow','GUIScrollBars_SetScrollInfo', - 'GUIScrollBars_SetScrollInfoMax','GUIScrollBars_SetScrollInfoMin', - 'GUIScrollBars_SetScrollInfoPage','GUIScrollBars_SetScrollInfoPos', - 'GUIScrollBars_SetScrollRange','GUIScrollBars_ShowScrollBar', - 'GUIToolTip_Activate','GUIToolTip_AddTool','GUIToolTip_AdjustRect', - 'GUIToolTip_BitsToTTF','GUIToolTip_Create','GUIToolTip_DelTool', - 'GUIToolTip_Destroy','GUIToolTip_EnumTools', - 'GUIToolTip_GetBubbleHeight','GUIToolTip_GetBubbleSize', - 'GUIToolTip_GetBubbleWidth','GUIToolTip_GetCurrentTool', - 'GUIToolTip_GetDelayTime','GUIToolTip_GetMargin', - 'GUIToolTip_GetMarginEx','GUIToolTip_GetMaxTipWidth', - 'GUIToolTip_GetText','GUIToolTip_GetTipBkColor', - 'GUIToolTip_GetTipTextColor','GUIToolTip_GetTitleBitMap', - 'GUIToolTip_GetTitleText','GUIToolTip_GetToolCount', - 'GUIToolTip_GetToolInfo','GUIToolTip_HitTest', - 'GUIToolTip_NewToolRect','GUIToolTip_Pop','GUIToolTip_PopUp', - 'GUIToolTip_SetDelayTime','GUIToolTip_SetMargin', - 'GUIToolTip_SetMaxTipWidth','GUIToolTip_SetTipBkColor', - 'GUIToolTip_SetTipTextColor','GUIToolTip_SetTitle', - 'GUIToolTip_SetToolInfo','GUIToolTip_SetWindowTheme', - 'GUIToolTip_ToolExists','GUIToolTip_ToolToArray', - 'GUIToolTip_TrackActivate','GUIToolTip_TrackPosition', - 'GUIToolTip_TTFToBits','GUIToolTip_Update', - 'GUIToolTip_UpdateTipText','HexToString','IE_Example', - 'IE_Introduction','IE_VersionInfo','IEAction','IEAttach', - 'IEBodyReadHTML','IEBodyReadText','IEBodyWriteHTML','IECreate', - 'IECreateEmbedded','IEDocGetObj','IEDocInsertHTML', - 'IEDocInsertText','IEDocReadHTML','IEDocWriteHTML', - 'IEErrorHandlerDeRegister','IEErrorHandlerRegister','IEErrorNotify', - 'IEFormElementCheckBoxSelect','IEFormElementGetCollection', - 'IEFormElementGetObjByName','IEFormElementGetValue', - 'IEFormElementOptionSelect','IEFormElementRadioSelect', - 'IEFormElementSetValue','IEFormGetCollection','IEFormGetObjByName', - 'IEFormImageClick','IEFormReset','IEFormSubmit', - 'IEFrameGetCollection','IEFrameGetObjByName','IEGetObjById', - 'IEGetObjByName','IEHeadInsertEventScript','IEImgClick', - 'IEImgGetCollection','IEIsFrameSet','IELinkClickByIndex', - 'IELinkClickByText','IELinkGetCollection','IELoadWait', - 'IELoadWaitTimeout','IENavigate','IEPropertyGet','IEPropertySet', - 'IEQuit','IETableGetCollection','IETableWriteToArray', - 'IETagNameAllGetCollection','IETagNameGetCollection','Iif', - 'INetExplorerCapable','INetGetSource','INetMail','INetSmtpMail', - 'IsPressed','MathCheckDiv','Max','MemGlobalAlloc','MemGlobalFree', - 'MemGlobalLock','MemGlobalSize','MemGlobalUnlock','MemMoveMemory', - 'MemMsgBox','MemShowError','MemVirtualAlloc','MemVirtualAllocEx', - 'MemVirtualFree','MemVirtualFreeEx','Min','MouseTrap', - 'NamedPipes_CallNamedPipe','NamedPipes_ConnectNamedPipe', - 'NamedPipes_CreateNamedPipe','NamedPipes_CreatePipe', - 'NamedPipes_DisconnectNamedPipe', - 'NamedPipes_GetNamedPipeHandleState','NamedPipes_GetNamedPipeInfo', - 'NamedPipes_PeekNamedPipe','NamedPipes_SetNamedPipeHandleState', - 'NamedPipes_TransactNamedPipe','NamedPipes_WaitNamedPipe', - 'Net_Share_ConnectionEnum','Net_Share_FileClose', - 'Net_Share_FileEnum','Net_Share_FileGetInfo','Net_Share_PermStr', - 'Net_Share_ResourceStr','Net_Share_SessionDel', - 'Net_Share_SessionEnum','Net_Share_SessionGetInfo', - 'Net_Share_ShareAdd','Net_Share_ShareCheck','Net_Share_ShareDel', - 'Net_Share_ShareEnum','Net_Share_ShareGetInfo', - 'Net_Share_ShareSetInfo','Net_Share_StatisticsGetSvr', - 'Net_Share_StatisticsGetWrk','Now','NowCalc','NowCalcDate', - 'NowDate','NowTime','PathFull','PathMake','PathSplit', - 'ProcessGetName','ProcessGetPriority','Radian', - 'ReplaceStringInFile','RunDOS','ScreenCapture_Capture', - 'ScreenCapture_CaptureWnd','ScreenCapture_SaveImage', - 'ScreenCapture_SetBMPFormat','ScreenCapture_SetJPGQuality', - 'ScreenCapture_SetTIFColorDepth','ScreenCapture_SetTIFCompression', - 'Security__AdjustTokenPrivileges','Security__GetAccountSid', - 'Security__GetLengthSid','Security__GetTokenInformation', - 'Security__ImpersonateSelf','Security__IsValidSid', - 'Security__LookupAccountName','Security__LookupAccountSid', - 'Security__LookupPrivilegeValue','Security__OpenProcessToken', - 'Security__OpenThreadToken','Security__OpenThreadTokenEx', - 'Security__SetPrivilege','Security__SidToStringSid', - 'Security__SidTypeStr','Security__StringSidToSid','SendMessage', - 'SendMessageA','SetDate','SetTime','Singleton','SoundClose', - 'SoundLength','SoundOpen','SoundPause','SoundPlay','SoundPos', - 'SoundResume','SoundSeek','SoundStatus','SoundStop', - 'SQLite_Changes','SQLite_Close','SQLite_Display2DResult', - 'SQLite_Encode','SQLite_ErrCode','SQLite_ErrMsg','SQLite_Escape', - 'SQLite_Exec','SQLite_FetchData','SQLite_FetchNames', - 'SQLite_GetTable','SQLite_GetTable2d','SQLite_LastInsertRowID', - 'SQLite_LibVersion','SQLite_Open','SQLite_Query', - 'SQLite_QueryFinalize','SQLite_QueryReset','SQLite_QuerySingleRow', - 'SQLite_SaveMode','SQLite_SetTimeout','SQLite_Shutdown', - 'SQLite_SQLiteExe','SQLite_Startup','SQLite_TotalChanges', - 'StringAddComma','StringBetween','StringEncrypt','StringInsert', - 'StringProper','StringRepeat','StringReverse','StringSplit', - 'StringToHex','TCPIpToName','TempFile','TicksToTime','Timer_Diff', - 'Timer_GetTimerID','Timer_Init','Timer_KillAllTimers', - 'Timer_KillTimer','Timer_SetTimer','TimeToTicks','VersionCompare', - 'viClose','viExecCommand','viFindGpib','viGpibBusReset','viGTL', - 'viOpen','viSetAttribute','viSetTimeout','WeekNumberISO', - 'WinAPI_AttachConsole','WinAPI_AttachThreadInput','WinAPI_Beep', - 'WinAPI_BitBlt','WinAPI_CallNextHookEx','WinAPI_Check', - 'WinAPI_ClientToScreen','WinAPI_CloseHandle', - 'WinAPI_CommDlgExtendedError','WinAPI_CopyIcon', - 'WinAPI_CreateBitmap','WinAPI_CreateCompatibleBitmap', - 'WinAPI_CreateCompatibleDC','WinAPI_CreateEvent', - 'WinAPI_CreateFile','WinAPI_CreateFont','WinAPI_CreateFontIndirect', - 'WinAPI_CreateProcess','WinAPI_CreateSolidBitmap', - 'WinAPI_CreateSolidBrush','WinAPI_CreateWindowEx', - 'WinAPI_DefWindowProc','WinAPI_DeleteDC','WinAPI_DeleteObject', - 'WinAPI_DestroyIcon','WinAPI_DestroyWindow','WinAPI_DrawEdge', - 'WinAPI_DrawFrameControl','WinAPI_DrawIcon','WinAPI_DrawIconEx', - 'WinAPI_DrawText','WinAPI_EnableWindow','WinAPI_EnumDisplayDevices', - 'WinAPI_EnumWindows','WinAPI_EnumWindowsPopup', - 'WinAPI_EnumWindowsTop','WinAPI_ExpandEnvironmentStrings', - 'WinAPI_ExtractIconEx','WinAPI_FatalAppExit','WinAPI_FillRect', - 'WinAPI_FindExecutable','WinAPI_FindWindow','WinAPI_FlashWindow', - 'WinAPI_FlashWindowEx','WinAPI_FloatToInt', - 'WinAPI_FlushFileBuffers','WinAPI_FormatMessage','WinAPI_FrameRect', - 'WinAPI_FreeLibrary','WinAPI_GetAncestor','WinAPI_GetAsyncKeyState', - 'WinAPI_GetClassName','WinAPI_GetClientHeight', - 'WinAPI_GetClientRect','WinAPI_GetClientWidth', - 'WinAPI_GetCurrentProcess','WinAPI_GetCurrentProcessID', - 'WinAPI_GetCurrentThread','WinAPI_GetCurrentThreadId', - 'WinAPI_GetCursorInfo','WinAPI_GetDC','WinAPI_GetDesktopWindow', - 'WinAPI_GetDeviceCaps','WinAPI_GetDIBits','WinAPI_GetDlgCtrlID', - 'WinAPI_GetDlgItem','WinAPI_GetFileSizeEx','WinAPI_GetFocus', - 'WinAPI_GetForegroundWindow','WinAPI_GetIconInfo', - 'WinAPI_GetLastError','WinAPI_GetLastErrorMessage', - 'WinAPI_GetModuleHandle','WinAPI_GetMousePos','WinAPI_GetMousePosX', - 'WinAPI_GetMousePosY','WinAPI_GetObject','WinAPI_GetOpenFileName', - 'WinAPI_GetOverlappedResult','WinAPI_GetParent', - 'WinAPI_GetProcessAffinityMask','WinAPI_GetSaveFileName', - 'WinAPI_GetStdHandle','WinAPI_GetStockObject','WinAPI_GetSysColor', - 'WinAPI_GetSysColorBrush','WinAPI_GetSystemMetrics', - 'WinAPI_GetTextExtentPoint32','WinAPI_GetWindow', - 'WinAPI_GetWindowDC','WinAPI_GetWindowHeight', - 'WinAPI_GetWindowLong','WinAPI_GetWindowRect', - 'WinAPI_GetWindowText','WinAPI_GetWindowThreadProcessId', - 'WinAPI_GetWindowWidth','WinAPI_GetXYFromPoint', - 'WinAPI_GlobalMemStatus','WinAPI_GUIDFromString', - 'WinAPI_GUIDFromStringEx','WinAPI_HiWord','WinAPI_InProcess', - 'WinAPI_IntToFloat','WinAPI_InvalidateRect','WinAPI_IsClassName', - 'WinAPI_IsWindow','WinAPI_IsWindowVisible','WinAPI_LoadBitmap', - 'WinAPI_LoadImage','WinAPI_LoadLibrary','WinAPI_LoadLibraryEx', - 'WinAPI_LoadShell32Icon','WinAPI_LoadString','WinAPI_LocalFree', - 'WinAPI_LoWord','WinAPI_MakeDWord','WinAPI_MAKELANGID', - 'WinAPI_MAKELCID','WinAPI_MakeLong','WinAPI_MessageBeep', - 'WinAPI_Mouse_Event','WinAPI_MoveWindow','WinAPI_MsgBox', - 'WinAPI_MulDiv','WinAPI_MultiByteToWideChar', - 'WinAPI_MultiByteToWideCharEx','WinAPI_OpenProcess', - 'WinAPI_PointFromRect','WinAPI_PostMessage','WinAPI_PrimaryLangId', - 'WinAPI_PtInRect','WinAPI_ReadFile','WinAPI_ReadProcessMemory', - 'WinAPI_RectIsEmpty','WinAPI_RedrawWindow', - 'WinAPI_RegisterWindowMessage','WinAPI_ReleaseCapture', - 'WinAPI_ReleaseDC','WinAPI_ScreenToClient','WinAPI_SelectObject', - 'WinAPI_SetBkColor','WinAPI_SetCapture','WinAPI_SetCursor', - 'WinAPI_SetDefaultPrinter','WinAPI_SetDIBits','WinAPI_SetEvent', - 'WinAPI_SetFocus','WinAPI_SetFont','WinAPI_SetHandleInformation', - 'WinAPI_SetLastError','WinAPI_SetParent', - 'WinAPI_SetProcessAffinityMask','WinAPI_SetSysColors', - 'WinAPI_SetTextColor','WinAPI_SetWindowLong','WinAPI_SetWindowPos', - 'WinAPI_SetWindowsHookEx','WinAPI_SetWindowText', - 'WinAPI_ShowCursor','WinAPI_ShowError','WinAPI_ShowMsg', - 'WinAPI_ShowWindow','WinAPI_StringFromGUID','WinAPI_SubLangId', - 'WinAPI_SystemParametersInfo','WinAPI_TwipsPerPixelX', - 'WinAPI_TwipsPerPixelY','WinAPI_UnhookWindowsHookEx', - 'WinAPI_UpdateLayeredWindow','WinAPI_UpdateWindow', - 'WinAPI_ValidateClassName','WinAPI_WaitForInputIdle', - 'WinAPI_WaitForMultipleObjects','WinAPI_WaitForSingleObject', - 'WinAPI_WideCharToMultiByte','WinAPI_WindowFromPoint', - 'WinAPI_WriteConsole','WinAPI_WriteFile', - 'WinAPI_WriteProcessMemory','WinNet_AddConnection', - 'WinNet_AddConnection2','WinNet_AddConnection3', - 'WinNet_CancelConnection','WinNet_CancelConnection2', - 'WinNet_CloseEnum','WinNet_ConnectionDialog', - 'WinNet_ConnectionDialog1','WinNet_DisconnectDialog', - 'WinNet_DisconnectDialog1','WinNet_EnumResource', - 'WinNet_GetConnection','WinNet_GetConnectionPerformance', - 'WinNet_GetLastError','WinNet_GetNetworkInformation', - 'WinNet_GetProviderName','WinNet_GetResourceInformation', - 'WinNet_GetResourceParent','WinNet_GetUniversalName', - 'WinNet_GetUser','WinNet_OpenEnum','WinNet_RestoreConnection', - 'WinNet_UseConnection','Word_VersionInfo','WordAttach','WordCreate', - 'WordDocAdd','WordDocAddLink','WordDocAddPicture','WordDocClose', - 'WordDocFindReplace','WordDocGetCollection', - 'WordDocLinkGetCollection','WordDocOpen','WordDocPrint', - 'WordDocPropertyGet','WordDocPropertySet','WordDocSave', - 'WordDocSaveAs','WordErrorHandlerDeRegister', - 'WordErrorHandlerRegister','WordErrorNotify','WordMacroRun', - 'WordPropertyGet','WordPropertySet','WordQuit' - ), - 5 => array( - 'ce','comments-end','comments-start','cs','include','include-once', - 'NoTrayIcon','RequireAdmin' - ), - 6 => array( - 'AutoIt3Wrapper_Au3Check_Parameters', - 'AutoIt3Wrapper_Au3Check_Stop_OnWarning', - 'AutoIt3Wrapper_Change2CUI','AutoIt3Wrapper_Compression', - 'AutoIt3Wrapper_cvsWrapper_Parameters','AutoIt3Wrapper_Icon', - 'AutoIt3Wrapper_Outfile','AutoIt3Wrapper_Outfile_Type', - 'AutoIt3Wrapper_Plugin_Funcs','AutoIt3Wrapper_Res_Comment', - 'AutoIt3Wrapper_Res_Description','AutoIt3Wrapper_Res_Field', - 'AutoIt3Wrapper_Res_File_Add','AutoIt3Wrapper_Res_Fileversion', - 'AutoIt3Wrapper_Res_FileVersion_AutoIncrement', - 'AutoIt3Wrapper_Res_Icon_Add','AutoIt3Wrapper_Res_Language', - 'AutoIt3Wrapper_Res_LegalCopyright', - 'AutoIt3Wrapper_res_requestedExecutionLevel', - 'AutoIt3Wrapper_Res_SaveSource','AutoIt3Wrapper_Run_After', - 'AutoIt3Wrapper_Run_Au3check','AutoIt3Wrapper_Run_Before', - 'AutoIt3Wrapper_Run_cvsWrapper','AutoIt3Wrapper_Run_Debug_Mode', - 'AutoIt3Wrapper_Run_Obfuscator','AutoIt3Wrapper_Run_Tidy', - 'AutoIt3Wrapper_Tidy_Stop_OnError','AutoIt3Wrapper_UseAnsi', - 'AutoIt3Wrapper_UseUpx','AutoIt3Wrapper_UseX64', - 'AutoIt3Wrapper_Version','EndRegion','forceref', - 'Obfuscator_Ignore_Funcs','Obfuscator_Ignore_Variables', - 'Obfuscator_Parameters','Region','Tidy_Parameters' - ) - ), - 'SYMBOLS' => array( - '(',')','[',']', - '+','-','*','/','&','^', - '=','+=','-=','*=','/=','&=', - '==','<','<=','>','>=', - ',','.' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #800000; font-weight: bold;', - 3 => 'color: #000080; font-style: italic; font-weight: bold;', - 4 => 'color: #0080FF; font-style: italic; font-weight: bold;', - 5 => 'color: #F000FF; font-style: italic;', - 6 => 'color: #A00FF0; font-style: italic;' - ), - 'COMMENTS' => array( - 0 => 'font-style: italic; color: #009933;', - 'MULTI' => 'font-style: italic; color: #669900;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #FF0000; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'font-weight: bold; color: #008080;' - ), - 'NUMBERS' => array( - 0 => 'color: #AC00A9; font-style: italic; font-weight: bold;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF; font-style: italic; font-weight: bold;' - ), - 'SYMBOLS' => array( - 0 => 'color: #FF0000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'font-weight: bold; color: #AA0000;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.autoitscript.com/autoit3/docs/keywords.htm', - 2 => 'http://www.autoitscript.com/autoit3/docs/macros.htm', - 3 => 'http://www.autoitscript.com/autoit3/docs/functions/{FNAME}.htm', - 4 => '', - 5 => '', - 6 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - //Variables - 0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*' - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 4 => array( - 'DISALLOWED_BEFORE' => '(?<!\w)\_' - ), - 5 => array( - 'DISALLOWED_BEFORE' => '(?<!\w)\#' - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?<!\w)\#' - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/avisynth.php b/system/application/libraries/geshi/avisynth.php deleted file mode 100644 index 9031e8caa..000000000 --- a/system/application/libraries/geshi/avisynth.php +++ /dev/null @@ -1,194 +0,0 @@ -<?php -/************************************************************************************* - * avisynth.php - * -------- - * Author: Ryan Jones (sciguyryan@gmail.com) - * Copyright: (c) 2008 Ryan Jones - * Release Version: 1.0.8.6 - * Date Started: 2008/10/08 - * - * AviSynth language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/08 (1.0.8.1) - * - First Release - * - * TODO (updated 2008/10/08) - * ------------------------- - * * There are also some special words that can't currently be specified directly in GeSHi as they may - * also be used as variables which would really mess things up. - * * Also there is an issue with the escape character as this language uses a muti-character escape system. Escape char should be """ but has been left - * as empty due to this restiction. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'AviSynth', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/', '[*' => '*]'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - // Reserved words. - 1 => array( - 'try', 'cache', 'function', 'global', 'return' - ), - // Constants / special variables. - 2 => array( - 'true', 'yes', 'false', 'no', '__END__' - ), - // Internal Filters. - 3 => array( - 'AviSource', 'AviFileSource', 'AddBorders', 'AlignedSplice', 'AssumeFPS', 'AssumeScaledFPS', - 'AssumeFrameBased', 'AssumeFieldBased', 'AssumeBFF', 'AssumeTFF', 'Amplify', 'AmplifydB', - 'AssumeSampleRate', 'AudioDub', 'AudioDubEx', 'Animate', 'ApplyRange', - 'BicubicResize', 'BilinearResize', 'BlackmanResize', 'Blur', 'Bob', 'BlankClip', 'Blackness', - 'ColorYUV', 'ConvertBackToYUY2', 'ConvertToRGB', 'ConvertToRGB24', 'ConvertToRGB32', - 'ConvertToYUY2', 'ConvertToY8', 'ConvertToYV411', 'ConvertToYV12', 'ConvertToYV16', 'ConvertToYV24', - 'ColorKeyMask', 'Crop', 'CropBottom', 'ChangeFPS', 'ConvertFPS', 'ComplementParity', 'ConvertAudioTo8bit', - 'ConvertAudioTo16bit', 'ConvertAudioTo24bit', 'ConvertAudioTo32bit', 'ConvertAudioToFloat', 'ConvertToMono', - 'ConditionalFilter', 'ConditionalReader', 'ColorBars', 'Compare', - 'DirectShowSource', 'DeleteFrame', 'Dissolve', 'DuplicateFrame', 'DoubleWeave', 'DelayAudio', - 'EnsureVBRMP3Sync', - 'FixLuminance', 'FlipHorizontal', 'FlipVertical', 'FixBrokenChromaUpsampling', 'FadeIn0', 'FadeIn', - 'FadeIn2', 'FadeOut0', 'FadeOut', 'FadeOut2', 'FadeIO0', 'FadeIO', 'FadeIO2', 'FreezeFrame', 'FrameEvaluate', - 'GreyScale', 'GaussResize', 'GeneralConvolution', 'GetChannel', 'GetLeftChannel', 'GetRightChannel', - 'HorizontalReduceBy2', 'Histogram', - 'ImageReader', 'ImageSource', 'ImageWriter', 'Invert', 'Interleave', 'Info', - 'KillAudio', 'KillVideo', - 'Levels', 'Limiter', 'Layer', 'Letterbox', 'LanczosResize', 'Lanczos4Resize', 'Loop', - 'MergeARGB', 'MergeRGB', 'MergeChroma', 'MergeLuma', 'Merge', 'Mask', 'MaskHS', 'MergeChannels', 'MixAudio', - 'MonoToStereo', 'MessageClip', - 'Normalize', - 'OpenDMLSource', 'Overlay', - 'PointResize', 'PeculiarBlend', 'Pulldown', - 'RGBAdjust', 'ResetMask', 'Reverse', 'ResampleAudio', 'ReduceBy2', - 'SegmentedAviSource', 'SegmentedDirectShowSource', 'SoundOut', 'ShowAlpha', 'ShowRed', 'ShowGreen', - 'ShowBlue', 'SwapUV', 'Subtract', 'SincResize', 'Spline16Resize', 'Spline36Resize', 'Spline64Resize', - 'SelectEven', 'SelectOdd', 'SelectEvery', 'SelectRangeEvery', 'Sharpen', 'SpatialSoften', 'SeparateFields', - 'ShowFiveVersions', 'ShowFrameNumber', 'ShowSMPTE', 'ShowTime', 'StackHorizontal', 'StackVertical', 'Subtitle', - 'SwapFields', 'SuperEQ', 'SSRC', 'ScriptClip', - 'Tweak', 'TurnLeft', 'TurnRight', 'Turn180', 'TemporalSoften', 'TimeStretch', 'TCPServer', 'TCPSource', 'Trim', - 'Tone', - 'UToY', 'UToY8', 'UnalignedSplice', - 'VToY', 'VToY8', 'VerticalReduceBy2', 'Version', - 'WavSource', 'Weave', 'WriteFile', 'WriteFileIf', 'WriteFileStart', 'WriteFileEnd', - 'YToUV' - ), - // Internal functions. - 4 => array( - 'Abs', 'Apply', 'Assert', 'AverageLuma', 'AverageChromaU', 'AverageChromaV', - 'Ceil', 'Cos', 'Chr', 'ChromaUDifference', 'ChromaVDifference', - 'Defined', 'Default', - 'Exp', 'Exist', 'Eval', - 'Floor', 'Frac', 'Float', 'Findstr', 'GetMTMode', - 'HexValue', - 'Int', 'IsBool', 'IsClip', 'IsFloat', 'IsInt', 'IsString', 'Import', - 'LoadPlugin', 'Log', 'LCase', 'LeftStr', 'LumaDifference', 'LoadVirtualDubPlugin', 'LoadVFAPIPlugin', - 'LoadCPlugin', 'Load_Stdcall_Plugin', - 'Max', 'MulDiv', 'MidStr', - 'NOP', - 'OPT_AllowFloatAudio', 'OPT_UseWaveExtensible', - 'Pi', 'Pow', - 'Round', 'Rand', 'RevStr', 'RightStr', 'RGBDifference', 'RGBDifferenceFromPrevious', 'RGBDifferenceToNext', - 'Sin', 'Sqrt', 'Sign', 'Spline', 'StrLen', 'String', 'Select', 'SetMemoryMax', 'SetWorkingDir', 'SetMTMode', - 'SetPlanarLegacyAlignment', - 'Time', - 'UCase', 'UDifferenceFromPrevious', 'UDifferenceToNext', 'UPlaneMax', 'UPlaneMin', 'UPlaneMedian', - 'UPlaneMinMaxDifference', - 'Value', 'VersionNumber', 'VersionString', 'VDifferenceFromPrevious', 'VDifferenceToNext', 'VPlaneMax', - 'VPlaneMin', 'VPlaneMedian', 'VPlaneMinMaxDifference', - 'YDifferenceFromPrevious', 'YDifferenceToNext', 'YPlaneMax', 'YPlaneMin', 'YPlaneMedian', - 'YPlaneMinMaxDifference' - ) - ), - 'SYMBOLS' => array( - '+', '++', '-', '--', '/', '*', '%', - '=', '==', '<', '<=', '>', '>=', '<>', '!=', - '!', '?', ':', - '|', '||', '&&', - '\\', - '(', ')', '{', '}', - '.', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:#9966CC; font-weight:bold;', - 2 => 'color:#0000FF; font-weight:bold;', - 3 => 'color:#CC3300; font-weight:bold;', - 4 => 'color:#660000; font-weight:bold;' - ), - 'COMMENTS' => array( - 1 => 'color:#008000; font-style:italic;', - 'MULTI' => 'color:#000080; font-style:italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color:#000099;' - ), - 'BRACKETS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color:#996600;' - ), - 'NUMBERS' => array( - 0 => 'color:#006666;' - ), - 'METHODS' => array( - 1 => 'color:#9900CC;' - ), - 'SYMBOLS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://avisynth.org/mediawiki/{FNAME}', - 4 => '' - ), - 'REGEXPS' => array( - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); -?> diff --git a/system/application/libraries/geshi/awk.php b/system/application/libraries/geshi/awk.php deleted file mode 100644 index abecf72b5..000000000 --- a/system/application/libraries/geshi/awk.php +++ /dev/null @@ -1,158 +0,0 @@ -<?php -/************************************************ - * awk.php - * ------- - * Author: George Pollard (porges@porg.es) - * Copyright: (c) 2009 George Pollard - * Release Version: 1.0.8.6 - * Date Started: 2009/01/28 - * - * Awk language file for GeSHi. - * - * CHANGES - * ------- - * 2009/01/28 (1.0.8.5) - * - First Release - * - * TODO (updated 2009/01/28) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'awk', - 'COMMENT_SINGLE' => array( - 1 => '#' - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array ( - 1 => array( - 'for', 'in', 'if', 'else', 'while', 'do', 'continue', 'break' - ), - 2 => array( - 'BEGIN', 'END' - ), - 3 => array( - 'ARGC', 'ARGV', 'CONVFMT', 'ENVIRON', - 'FILENAME', 'FNR', 'FS', 'NF', 'NR', 'OFMT', - 'OFS','ORS','RLENGTH','RS','RSTART','SUBSEP' - ), - 4 => array( - 'gsub','index','length','match','split', - 'sprintf','sub','substr','tolower','toupper', - 'atan2','cos','exp','int','log','rand', - 'sin','sqrt','srand' - ), - 5 => array( - 'print','printf','getline','close','fflush','system' - ), - 6 => array( - 'function', 'return' - ) - ), - 'SYMBOLS' => array ( - 0 => array( - '(',')','[',']','{','}' - ), - 1 => array( - '!','||','&&' - ), - 2 => array( - '<','>','<=','>=','==','!=' - ), - 3 => array( - '+','-','*','/','%','^','++','--' - ), - 4 => array( - '~','!~' - ), - 5 => array( - '?',':' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #C20CB9; font-weight: bold;', - 3 => 'color: #4107D5; font-weight: bold;', - 4 => 'color: #07D589; font-weight: bold;', - 5 => 'color: #0BD507; font-weight: bold;', - 6 => 'color: #078CD5; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color:#808080;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'SYMBOLS' => array( - 0 => 'color:black;', - 1 => 'color:black;', - 2 => 'color:black;', - 3 => 'color:black;', - 4 => 'color:#C4C364;', - 5 => 'color:black;font-weight:bold;'), - 'SCRIPT' => array(), - 'REGEXPS' => array( - 0 => 'color:#000088;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'BRACKETS' => array( - 0 => 'color: #7a0874; font-weight: bold;' - ), - 'METHODS' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array (), - 'REGEXPS' => array( - 0 => "\\$[a-zA-Z0-9_]+" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array (), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> diff --git a/system/application/libraries/geshi/bash.php b/system/application/libraries/geshi/bash.php deleted file mode 100644 index 0b1583b7b..000000000 --- a/system/application/libraries/geshi/bash.php +++ /dev/null @@ -1,324 +0,0 @@ -<?php -/************************************************************************************* - * bash.php - * -------- - * Author: Andreas Gohr (andi@splitbrain.org) - * Copyright: (c) 2004 Andreas Gohr, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/20 - * - * BASH language file for GeSHi. - * - * CHANGES - * ------- - * 2008/06/21 (1.0.8) - * - Added loads of keywords and commands of GNU/Linux - * - Added support for parameters starting with a dash - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2007/09/05 (1.0.7.21) - * - PARSER_CONTROL patch using SF #1788408 (BenBE) - * 2007/06/11 (1.0.7.20) - * - Added a lot of keywords (BenBE / Jan G) - * 2004/11/27 (1.0.2) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.1) - * - Added support for URLs - * 2004/08/20 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * Get symbols working - * * Highlight builtin vars - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Bash', - // Bash DOES have single line comments with # markers. But bash also has - // the $# variable, so comments need special handling (see sf.net - // 1564839) - 'COMMENT_SINGLE' => array('#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Variables - 1 => "/\\$\\{[^\\n\\}]*?\\}/i", - //BASH-style Heredoc - 2 => '/<<-?\s*?(\'?)([a-zA-Z0-9]+)\1\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - //Escaped String Starters - 3 => "/\\\\['\"]/siU" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("\'"), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[nfrtv\\$\\\"\n]#i", - // $var - 2 => "#\\$[a-z_][a-z0-9_]*#i", - // ${...} - 3 => "/\\$\\{[^\\n\\}]*?\\}/i", - // $(...) - 4 => "/\\$\\([^\\n\\)]*?\\)/i", - // `...` - 5 => "/`[^`]*`/" - ), - 'KEYWORDS' => array( - 1 => array( - 'case', 'do', 'done', 'elif', 'else', 'esac', 'fi', 'for', 'function', - 'if', 'in', 'select', 'set', 'then', 'until', 'while', 'time' - ), - 2 => array( - 'aclocal', 'aconnect', 'aplay', 'apm', 'apmsleep', 'apropos', - 'apt-cache', 'apt-get', 'apt-key', 'aptitude', - 'ar', 'arch', 'arecord', 'as', 'as86', 'ash', 'autoconf', - 'autoheader', 'automake', 'awk', - - 'basename', 'bash', 'bc', 'bison', 'bunzip2', 'bzcat', - 'bzcmp', 'bzdiff', 'bzegrep', 'bzfgrep', 'bzgrep', - 'bzip2', 'bzip2recover', 'bzless', 'bzmore', - - 'c++', 'cal', 'cat', 'chattr', 'cc', 'cdda2wav', 'cdparanoia', - 'cdrdao', 'cd-read', 'cdrecord', 'chfn', 'chgrp', 'chmod', - 'chown', 'chroot', 'chsh', 'chvt', 'clear', 'cmp', 'comm', 'co', - 'col', 'cp', 'cpio', 'cpp', 'csh', 'cut', 'cvs', 'cvs-pserver', - - 'dash', 'date', 'dd', 'dc', 'dcop', 'deallocvt', 'df', 'dialog', - 'diff', 'diff3', 'dir', 'dircolors', 'directomatic', 'dirname', - 'dmesg', 'dnsdomainname', 'domainname', 'dpkg', 'dselect', 'du', - 'dumpkeys', - - 'ed', 'egrep', 'env', 'expr', - - 'false', 'fbset', 'ffmpeg', 'fgconsole','fgrep', 'file', 'find', - 'flex', 'flex++', 'fmt', 'free', 'ftp', 'funzip', 'fuser', - - 'g++', 'gawk', 'gc','gcc', 'gdb', 'getent', 'getkeycodes', - 'getopt', 'gettext', 'gettextize', 'gimp', 'gimp-remote', - 'gimptool', 'gmake', 'gocr', 'grep', 'groups', 'gs', 'gunzip', - 'gzexe', 'gzip', - - 'git', 'gitaction', 'git-add', 'git-add--interactive', 'git-am', - 'git-annotate', 'git-apply', 'git-archive', 'git-bisect', - 'git-bisect--helper', 'git-blame', 'git-branch', 'git-bundle', - 'git-cat-file', 'git-check-attr', 'git-checkout', - 'git-checkout-index', 'git-check-ref-format', 'git-cherry', - 'git-cherry-pick', 'git-clean', 'git-clone', 'git-commit', - 'git-commit-tree', 'git-config', 'git-count-objects', 'git-daemon', - 'git-describe', 'git-diff', 'git-diff-files', 'git-diff-index', - 'git-difftool', 'git-difftool--helper', 'git-diff-tree', - 'gitdpkgname', 'git-fast-export', 'git-fast-import', 'git-fetch', - 'git-fetch-pack', 'git-fetch--tool', 'git-filter-branch', 'gitfm', - 'git-fmt-merge-msg', 'git-for-each-ref', 'git-format-patch', - 'git-fsck', 'git-fsck-objects', 'git-gc', 'git-get-tar-commit-id', - 'git-grep', 'git-hash-object', 'git-help', 'git-http-fetch', - 'git-http-push', 'git-imap-send', 'git-index-pack', 'git-init', - 'git-init-db', 'git-instaweb', 'gitkeys', 'git-log', - 'git-lost-found', 'git-ls-files', 'git-ls-remote', 'git-ls-tree', - 'git-mailinfo', 'git-mailsplit', 'git-merge', 'git-merge-base', - 'git-merge-file', 'git-merge-index', 'git-merge-octopus', - 'git-merge-one-file', 'git-merge-ours', 'git-merge-recursive', - 'git-merge-resolve', 'git-merge-subtree', 'git-mergetool', - 'git-mergetool--lib', 'git-merge-tree', 'gitmkdirs', 'git-mktag', - 'git-mktree', 'gitmount', 'git-mv', 'git-name-rev', - 'git-pack-objects', 'git-pack-redundant', 'git-pack-refs', - 'git-parse-remote', 'git-patch-id', 'git-peek-remote', 'git-prune', - 'git-prune-packed', 'gitps', 'git-pull', 'git-push', - 'git-quiltimport', 'git-read-tree', 'git-rebase', - 'git-rebase--interactive', 'git-receive-pack', 'git-reflog', - 'gitregrep', 'git-relink', 'git-remote', 'git-repack', - 'git-repo-config', 'git-request-pull', 'git-rerere', 'git-reset', - 'git-revert', 'git-rev-list', 'git-rev-parse', 'gitrfgrep', - 'gitrgrep', 'git-rm', 'git-send-pack', 'git-shell', 'git-shortlog', - 'git-show', 'git-show-branch', 'git-show-index', 'git-show-ref', - 'git-sh-setup', 'git-stage', 'git-stash', 'git-status', - 'git-stripspace', 'git-submodule', 'git-svn', 'git-symbolic-ref', - 'git-tag', 'git-tar-tree', 'gitunpack', 'git-unpack-file', - 'git-unpack-objects', 'git-update-index', 'git-update-ref', - 'git-update-server-info', 'git-upload-archive', 'git-upload-pack', - 'git-var', 'git-verify-pack', 'git-verify-tag', 'gitview', - 'git-web--browse', 'git-whatchanged', 'gitwhich', 'gitwipe', - 'git-write-tree', 'gitxgrep', - - 'head', 'hexdump', 'hostname', - - 'id', 'ifconfig', 'ifdown', 'ifup', 'igawk', 'install', - - 'join', - - 'kbd_mode','kbdrate', 'kdialog', 'kfile', 'kill', 'killall', - - 'lame', 'last', 'lastb', 'ld', 'ld86', 'ldd', 'less', 'lex', 'link', - 'ln', 'loadkeys', 'loadunimap', 'locate', 'lockfile', 'login', - 'logname', 'lp', 'lpr', 'ls', 'lsattr', 'lsmod', 'lsmod.old', - 'lspci', 'ltrace', 'lynx', - - 'm4', 'make', 'man', 'mapscrn', 'mesg', 'mkdir', 'mkfifo', - 'mknod', 'mktemp', 'more', 'mount', 'mplayer', 'msgfmt', 'mv', - - 'namei', 'nano', 'nasm', 'nawk', 'netstat', 'nice', - 'nisdomainname', 'nl', 'nm', 'nm86', 'nmap', 'nohup', 'nop', - - 'od', 'openvt', - - 'passwd', 'patch', 'pcregrep', 'pcretest', 'perl', 'perror', - 'pgawk', 'pidof', 'ping', 'pr', 'procmail', 'prune', 'ps', 'pstree', - 'ps2ascii', 'ps2epsi', 'ps2frag', 'ps2pdf', 'ps2ps', 'psbook', - 'psmerge', 'psnup', 'psresize', 'psselect', 'pstops', - - 'rbash', 'rcs', 'rcs2log', 'read', 'readlink', 'red', 'resizecons', - 'rev', 'rm', 'rmdir', 'rsh', 'run-parts', - - 'sash', 'scp', 'screen', 'sed', 'seq', 'sendmail', 'setfont', - 'setkeycodes', 'setleds', 'setmetamode', 'setserial', 'setterm', - 'sh', 'showkey', 'shred', 'size', 'size86', 'skill', 'sleep', - 'slogin', 'snice', 'sort', 'sox', 'split', 'ssed', 'ssh', 'ssh-add', - 'ssh-agent', 'ssh-keygen', 'ssh-keyscan', 'stat', 'strace', - 'strings', 'strip', 'stty', 'su', 'sudo', 'suidperl', 'sum', 'svn', - 'svnadmin', 'svndumpfilter', 'svnlook', 'svnmerge', 'svnmucc', - 'svnserve', 'svnshell', 'svnsync', 'svnversion', 'svnwrap', 'sync', - - 'tac', 'tail', 'tar', 'tee', 'tempfile', 'touch', 'tr', 'tree', - 'true', - - 'umount', 'uname', 'unicode_start', 'unicode_stop', 'uniq', - 'unlink', 'unzip', 'updatedb', 'updmap', 'uptime', 'users', - 'utmpdump', 'uuidgen', - - 'valgrind', 'vdir', 'vi', 'vim', 'vmstat', - - 'w', 'wall', 'wc', 'wget', 'whatis', 'whereis', 'which', 'whiptail', - 'who', 'whoami', 'write', - - 'xargs', 'xhost', 'xmodmap', 'xset', - - 'yacc', 'yes', 'ypdomainname', - - 'zcat', 'zcmp', 'zdiff', 'zdump', 'zegrep', 'zfgrep', 'zforce', - 'zgrep', 'zip', 'zipgrep', 'zipinfo', 'zless', 'zmore', 'znew', - 'zsh', 'zsoelim' - ), - 3 => array( - 'alias', 'bg', 'bind', 'break', 'builtin', 'cd', 'command', - 'compgen', 'complete', 'continue', 'declare', 'dirs', 'disown', - 'echo', 'enable', 'eval', 'exec', 'exit', 'export', 'fc', - 'fg', 'getopts', 'hash', 'help', 'history', 'jobs', 'let', - 'local', 'logout', 'popd', 'printf', 'pushd', 'pwd', 'readonly', - 'return', 'shift', 'shopt', 'source', 'suspend', 'test', 'times', - 'trap', 'type', 'typeset', 'ulimit', 'umask', 'unalias', 'unset', - 'wait' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '!', '@', '%', '&', '*', '|', '/', '<', '>', ';;', '`' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #c20cb9; font-weight: bold;', - 3 => 'color: #7a0874; font-weight: bold;' - ), - 'COMMENTS' => array( - 0 => 'color: #666666; font-style: italic;', - 1 => 'color: #800000;', - 2 => 'color: #cc0000; font-style: italic;', - 3 => 'color: #000000; font-weight: bold;' - ), - 'ESCAPE_CHAR' => array( - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #007800;', - 3 => 'color: #007800;', - 4 => 'color: #007800;', - 5 => 'color: #780078;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #7a0874; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #007800;', - 1 => 'color: #007800;', - 2 => 'color: #007800;', - 4 => 'color: #007800;', - 5 => 'color: #660033;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Variables (will be handled by comment_regexps) - 0 => "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*?\\}", - //Variables without braces - 1 => "\\$[a-zA-Z_][a-zA-Z0-9_]*", - //Variable assignment - 2 => "(?<![\.a-zA-Z_\-])([a-zA-Z_][a-zA-Z0-9_]*?)(?==)", - //Shorthand shell variables - 4 => "\\$[*#\$\\-\\?!\d]", - //Parameters of commands - 5 => "(?<=\s)--?[0-9a-zA-Z\-]+(?=[\s=]|$)" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '$' - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![\.\-a-zA-Z0-9_\$\#])", - 'DISALLOWED_AFTER' => "(?![\.\-a-zA-Z0-9_%=\\/])" - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/basic4gl.php b/system/application/libraries/geshi/basic4gl.php deleted file mode 100644 index 55be6dc34..000000000 --- a/system/application/libraries/geshi/basic4gl.php +++ /dev/null @@ -1,341 +0,0 @@ -<?php -/************************************************************************************* - * basic4gl.php - * --------------------------------- - * Author: Matthew Webb (bmatthew1@blueyonder.co.uk) - * Copyright: (c) 2004 Matthew Webb (http://matthew-4gl.wikispaces.com) - * Release Version: 1.0.8.6 - * Date Started: 2007/09/15 - * - * Basic4GL language file for GeSHi. - * - * You can find the Basic4GL Website at (http://www.basic4gl.net/) - * - * CHANGES - * ------- - * 2007/09/17 (1.0.0) - * - First Release - * - * TODO (updated 2007/09/17) - * ------------------------- - * Make sure all the OpenGL and Basic4GL commands have been added and are complete. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Basic4GL', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - - // Navy Blue Bold Keywords - - 'true','rnd_max','m_pi','m_e','false','VK_ZOOM','VK_UP','VK_TAB','VK_SUBTRACT','VK_SPACE','VK_SNAPSHOT', - 'VK_SHIFT','VK_SEPARATOR','VK_SELECT','VK_SCROLL','VK_RWIN','VK_RSHIFT','VK_RMENU','VK_RIGHT','VK_RETURN', - 'VK_RCONTROL','VK_RBUTTON','VK_PROCESSKEY','VK_PRIOR','VK_PRINT','VK_PLAY','VK_PAUSE','VK_NUMPAD9','VK_NUMPAD8', - 'VK_NUMPAD7','VK_NUMPAD6','VK_NUMPAD5','VK_NUMPAD4','VK_NUMPAD3','VK_NUMPAD2','VK_NUMPAD1','VK_NUMPAD0', - 'VK_NUMLOCK','VK_NONCONVERT','VK_NEXT','VK_MULTIPLY','VK_MODECHANGE','VK_MENU','VK_MBUTTON','VK_LWIN', - 'VK_LSHIFT','VK_LMENU','VK_LEFT','VK_LCONTROL','VK_LBUTTON','VK_KANJI','VK_KANA','VK_JUNJA','VK_INSERT', - 'VK_HOME','VK_HELP','VK_HANJA','VK_HANGUL','VK_HANGEUL','VK_FINAL','VK_F9','VK_F8','VK_F7','VK_F6','VK_F5', - 'VK_F4','VK_F3','VK_F24','VK_F23','VK_F22','VK_F21','VK_F20','VK_F2','VK_F19','VK_F18','VK_F17','VK_F16', - 'VK_F15','VK_F14','VK_F13','VK_F12','VK_F11','VK_F10','VK_F1','VK_EXSEL','VK_EXECUTE','VK_ESCAPE','VK_EREOF', - 'VK_END','VK_DOWN','VK_DIVIDE','VK_DELETE','VK_DECIMAL','VK_CRSEL','VK_CONVERT','VK_CONTROL','VK_CLEAR', - 'VK_CAPITAL','VK_CANCEL','VK_BACK','VK_ATTN','VK_APPS','VK_ADD','VK_ACCEPT','TEXT_SIMPLE','TEXT_OVERLAID', - 'TEXT_BUFFERED','SPR_TILEMAP','SPR_SPRITE','SPR_INVALID','MOUSE_RBUTTON','MOUSE_MBUTTON','MOUSE_LBUTTON', - 'GL_ZOOM_Y','GL_ZOOM_X','GL_ZERO','GL_XOR','GL_WIN_swap_hint','GL_WIN_draw_range_elements','GL_VIEWPORT_BIT', - 'GL_VIEWPORT','GL_VERTEX_ARRAY_TYPE_EXT','GL_VERTEX_ARRAY_TYPE','GL_VERTEX_ARRAY_STRIDE_EXT','GL_VERTEX_ARRAY_STRIDE', - 'GL_VERTEX_ARRAY_SIZE_EXT','GL_VERTEX_ARRAY_SIZE','GL_VERTEX_ARRAY_POINTER_EXT','GL_VERTEX_ARRAY_POINTER', - 'GL_VERTEX_ARRAY_EXT','GL_VERTEX_ARRAY_COUNT_EXT','GL_VERTEX_ARRAY','GL_VERSION_1_1','GL_VERSION','GL_VENDOR', - 'GL_V3F','GL_V2F','GL_UNSIGNED_SHORT','GL_UNSIGNED_INT','GL_UNSIGNED_BYTE','GL_UNPACK_SWAP_BYTES','GL_UNPACK_SKIP_ROWS', - 'GL_UNPACK_SKIP_PIXELS','GL_UNPACK_ROW_LENGTH','GL_UNPACK_LSB_FIRST','GL_UNPACK_ALIGNMENT','GL_TRUE','GL_TRIANGLE_STRIP', - 'GL_TRIANGLE_FAN','GL_TRIANGLES','GL_TRANSFORM_BIT','GL_TEXTURE_WRAP_T','GL_TEXTURE_WRAP_S','GL_TEXTURE_WIDTH', - 'GL_TEXTURE_STACK_DEPTH','GL_TEXTURE_RESIDENT','GL_TEXTURE_RED_SIZE','GL_TEXTURE_PRIORITY','GL_TEXTURE_MIN_FILTER', - 'GL_TEXTURE_MATRIX','GL_TEXTURE_MAG_FILTER','GL_TEXTURE_LUMINANCE_SIZE','GL_TEXTURE_INTERNAL_FORMAT','GL_TEXTURE_INTENSITY_SIZE', - 'GL_TEXTURE_HEIGHT','GL_TEXTURE_GREEN_SIZE','GL_TEXTURE_GEN_T','GL_TEXTURE_GEN_S','GL_TEXTURE_GEN_R','GL_TEXTURE_GEN_Q', - 'GL_TEXTURE_GEN_MODE','GL_TEXTURE_ENV_MODE','GL_TEXTURE_ENV_COLOR','GL_TEXTURE_ENV','GL_TEXTURE_COORD_ARRAY_TYPE_EXT', - 'GL_TEXTURE_COORD_ARRAY_TYPE','GL_TEXTURE_COORD_ARRAY_STRIDE_EXT','GL_TEXTURE_COORD_ARRAY_STRIDE','GL_TEXTURE_COORD_ARRAY_SIZE_EXT', - 'GL_TEXTURE_COORD_ARRAY_SIZE','GL_TEXTURE_COORD_ARRAY_POINTER_EXT','GL_TEXTURE_COORD_ARRAY_POINTER','GL_TEXTURE_COORD_ARRAY_EXT', - 'GL_TEXTURE_COORD_ARRAY_COUNT_EXT','GL_TEXTURE_COORD_ARRAY','GL_TEXTURE_COMPONENTS','GL_TEXTURE_BORDER_COLOR','GL_TEXTURE_BORDER', - 'GL_TEXTURE_BLUE_SIZE','GL_TEXTURE_BIT','GL_TEXTURE_BINDING_2D','GL_TEXTURE_BINDING_1D','GL_TEXTURE_ALPHA_SIZE', - 'GL_TEXTURE_2D','GL_TEXTURE_1D','GL_TEXTURE9_ARB','GL_TEXTURE9','GL_TEXTURE8_ARB','GL_TEXTURE8','GL_TEXTURE7_ARB', - 'GL_TEXTURE7','GL_TEXTURE6_ARB','GL_TEXTURE6','GL_TEXTURE5_ARB','GL_TEXTURE5','GL_TEXTURE4_ARB','GL_TEXTURE4', - 'GL_TEXTURE3_ARB','GL_TEXTURE31_ARB','GL_TEXTURE31','GL_TEXTURE30_ARB','GL_TEXTURE30','GL_TEXTURE3','GL_TEXTURE2_ARB', - 'GL_TEXTURE29_ARB','GL_TEXTURE29','GL_TEXTURE28_ARB','GL_TEXTURE28','GL_TEXTURE27_ARB','GL_TEXTURE27','GL_TEXTURE26_ARB', - 'GL_TEXTURE26','GL_TEXTURE25_ARB','GL_TEXTURE25','GL_TEXTURE24_ARB','GL_TEXTURE24','GL_TEXTURE23_ARB','GL_TEXTURE23', - 'GL_TEXTURE22_ARB','GL_TEXTURE22','GL_TEXTURE21_ARB','GL_TEXTURE21','GL_TEXTURE20_ARB','GL_TEXTURE20','GL_TEXTURE2', - 'GL_TEXTURE1_ARB','GL_TEXTURE19_ARB','GL_TEXTURE19','GL_TEXTURE18_ARB','GL_TEXTURE18','GL_TEXTURE17_ARB', - 'GL_TEXTURE17','GL_TEXTURE16_ARB','GL_TEXTURE16','GL_TEXTURE15_ARB','GL_TEXTURE15','GL_TEXTURE14_ARB','GL_TEXTURE14', - 'GL_TEXTURE13_ARB','GL_TEXTURE13','GL_TEXTURE12_ARB','GL_TEXTURE12','GL_TEXTURE11_ARB','GL_TEXTURE11','GL_TEXTURE10_ARB', - 'GL_TEXTURE10','GL_TEXTURE1','GL_TEXTURE0_ARB','GL_TEXTURE0','GL_TEXTURE','GL_T4F_V4F','GL_T4F_C4F_N3F_V4F','GL_T2F_V3F', - 'GL_T2F_N3F_V3F','GL_T2F_C4UB_V3F','GL_T2F_C4F_N3F_V3F','GL_T2F_C3F_V3F','GL_T','GL_SUBPIXEL_BITS','GL_STEREO', - 'GL_STENCIL_WRITEMASK','GL_STENCIL_VALUE_MASK','GL_STENCIL_TEST','GL_STENCIL_REF','GL_STENCIL_PASS_DEPTH_PASS', - 'GL_STENCIL_PASS_DEPTH_FAIL','GL_STENCIL_INDEX','GL_STENCIL_FUNC','GL_STENCIL_FAIL','GL_STENCIL_CLEAR_VALUE', - 'GL_STENCIL_BUFFER_BIT','GL_STENCIL_BITS','GL_STENCIL','GL_STACK_UNDERFLOW','GL_STACK_OVERFLOW','GL_SRC_COLOR', - 'GL_SRC_ALPHA_SATURATE','GL_SRC_ALPHA','GL_SPOT_EXPONENT','GL_SPOT_DIRECTION','GL_SPOT_CUTOFF','GL_SPHERE_MAP', - 'GL_SPECULAR','GL_SOURCE2_RGB_EXT','GL_SOURCE2_RGB','GL_SOURCE2_ALPHA_EXT','GL_SOURCE2_ALPHA','GL_SOURCE1_RGB_EXT', - 'GL_SOURCE1_RGB','GL_SOURCE1_ALPHA_EXT','GL_SOURCE1_ALPHA','GL_SOURCE0_RGB_EXT','GL_SOURCE0_RGB','GL_SOURCE0_ALPHA_EXT', - 'GL_SOURCE0_ALPHA','GL_SMOOTH','GL_SHORT','GL_SHININESS','GL_SHADE_MODEL','GL_SET','GL_SELECTION_BUFFER_SIZE', - 'GL_SELECTION_BUFFER_POINTER','GL_SELECT','GL_SCISSOR_TEST','GL_SCISSOR_BOX','GL_SCISSOR_BIT','GL_S','GL_RIGHT', - 'GL_RGB_SCALE_EXT','GL_RGB_SCALE','GL_RGBA_MODE','GL_RGBA8','GL_RGBA4','GL_RGBA2','GL_RGBA16','GL_RGBA12','GL_RGBA', - 'GL_RGB8','GL_RGB5_A1','GL_RGB5','GL_RGB4','GL_RGB16','GL_RGB12','GL_RGB10_A2','GL_RGB10','GL_RGB','GL_RETURN', - 'GL_REPLACE','GL_REPEAT','GL_RENDER_MODE','GL_RENDERER','GL_RENDER','GL_RED_SCALE','GL_RED_BITS','GL_RED_BIAS', - 'GL_RED','GL_READ_BUFFER','GL_R3_G3_B2','GL_R','GL_QUAD_STRIP','GL_QUADS','GL_QUADRATIC_ATTENUATION','GL_Q', - 'GL_PROXY_TEXTURE_2D','GL_PROXY_TEXTURE_1D','GL_PROJECTION_STACK_DEPTH','GL_PROJECTION_MATRIX','GL_PROJECTION', - 'GL_PRIMARY_COLOR_EXT','GL_PRIMARY_COLOR','GL_PREVIOUS_EXT','GL_PREVIOUS','GL_POSITION','GL_POLYGON_TOKEN', - 'GL_POLYGON_STIPPLE_BIT','GL_POLYGON_STIPPLE','GL_POLYGON_SMOOTH_HINT','GL_POLYGON_SMOOTH','GL_POLYGON_OFFSET_UNITS', - 'GL_POLYGON_OFFSET_POINT','GL_POLYGON_OFFSET_LINE','GL_POLYGON_OFFSET_FILL','GL_POLYGON_OFFSET_FACTOR','GL_POLYGON_MODE', - 'GL_POLYGON_BIT','GL_POLYGON','GL_POINT_TOKEN','GL_POINT_SMOOTH_HINT','GL_POINT_SMOOTH','GL_POINT_SIZE_RANGE', - 'GL_POINT_SIZE_GRANULARITY','GL_POINT_SIZE','GL_POINT_BIT','GL_POINTS','GL_POINT','GL_PIXEL_MODE_BIT', - 'GL_PIXEL_MAP_S_TO_S_SIZE','GL_PIXEL_MAP_S_TO_S','GL_PIXEL_MAP_R_TO_R_SIZE','GL_PIXEL_MAP_R_TO_R','GL_PIXEL_MAP_I_TO_R_SIZE', - 'GL_PIXEL_MAP_I_TO_R','GL_PIXEL_MAP_I_TO_I_SIZE','GL_PIXEL_MAP_I_TO_I','GL_PIXEL_MAP_I_TO_G_SIZE','GL_PIXEL_MAP_I_TO_G', - 'GL_PIXEL_MAP_I_TO_B_SIZE','GL_PIXEL_MAP_I_TO_B','GL_PIXEL_MAP_I_TO_A_SIZE','GL_PIXEL_MAP_I_TO_A','GL_PIXEL_MAP_G_TO_G_SIZE', - 'GL_PIXEL_MAP_G_TO_G','GL_PIXEL_MAP_B_TO_B_SIZE','GL_PIXEL_MAP_B_TO_B','GL_PIXEL_MAP_A_TO_A_SIZE','GL_PIXEL_MAP_A_TO_A', - 'GL_PHONG_WIN','GL_PHONG_HINT_WIN','GL_PERSPECTIVE_CORRECTION_HINT','GL_PASS_THROUGH_TOKEN','GL_PACK_SWAP_BYTES', - 'GL_PACK_SKIP_ROWS','GL_PACK_SKIP_PIXELS','GL_PACK_ROW_LENGTH','GL_PACK_LSB_FIRST','GL_PACK_ALIGNMENT','GL_OUT_OF_MEMORY', - 'GL_OR_REVERSE','GL_OR_INVERTED','GL_ORDER','GL_OR','GL_OPERAND2_RGB_EXT','GL_OPERAND2_RGB','GL_OPERAND2_ALPHA_EXT', - 'GL_OPERAND2_ALPHA','GL_OPERAND1_RGB_EXT','GL_OPERAND1_RGB','GL_OPERAND1_ALPHA_EXT','GL_OPERAND1_ALPHA','GL_OPERAND0_RGB_EXT', - 'GL_OPERAND0_RGB','GL_OPERAND0_ALPHA_EXT','GL_OPERAND0_ALPHA','GL_ONE_MINUS_SRC_COLOR','GL_ONE_MINUS_SRC_ALPHA', - 'GL_ONE_MINUS_DST_COLOR','GL_ONE_MINUS_DST_ALPHA','GL_ONE','GL_OBJECT_PLANE','GL_OBJECT_LINEAR','GL_NO_ERROR', - 'GL_NOTEQUAL','GL_NORMAL_ARRAY_TYPE_EXT','GL_NORMAL_ARRAY_TYPE','GL_NORMAL_ARRAY_STRIDE_EXT','GL_NORMAL_ARRAY_STRIDE', - 'GL_NORMAL_ARRAY_POINTER_EXT','GL_NORMAL_ARRAY_POINTER','GL_NORMAL_ARRAY_EXT','GL_NORMAL_ARRAY_COUNT_EXT', - 'GL_NORMAL_ARRAY','GL_NORMALIZE','GL_NOR','GL_NOOP','GL_NONE','GL_NICEST','GL_NEVER','GL_NEAREST_MIPMAP_NEAREST','GL_NEAREST_MIPMAP_LINEAR', - 'GL_NEAREST','GL_NAND','GL_NAME_STACK_DEPTH','GL_N3F_V3F','GL_MULT','GL_MODULATE','GL_MODELVIEW_STACK_DEPTH','GL_MODELVIEW_MATRIX', - 'GL_MODELVIEW','GL_MAX_VIEWPORT_DIMS','GL_MAX_TEXTURE_UNITS_ARB','GL_MAX_TEXTURE_UNITS','GL_MAX_TEXTURE_STACK_DEPTH', - 'GL_MAX_TEXTURE_SIZE','GL_MAX_PROJECTION_STACK_DEPTH','GL_MAX_PIXEL_MAP_TABLE','GL_MAX_NAME_STACK_DEPTH','GL_MAX_MODELVIEW_STACK_DEPTH', - 'GL_MAX_LIST_NESTING','GL_MAX_LIGHTS','GL_MAX_EVAL_ORDER','GL_MAX_ELEMENTS_VERTICES_WIN','GL_MAX_ELEMENTS_INDICES_WIN', - 'GL_MAX_CLIP_PLANES','GL_MAX_CLIENT_ATTRIB_STACK_DEPTH','GL_MAX_ATTRIB_STACK_DEPTH','GL_MATRIX_MODE','GL_MAP_STENCIL', - 'GL_MAP_COLOR','GL_MAP2_VERTEX_4','GL_MAP2_VERTEX_3','GL_MAP2_TEXTURE_COORD_4','GL_MAP2_TEXTURE_COORD_3','GL_MAP2_TEXTURE_COORD_2', - 'GL_MAP2_TEXTURE_COORD_1','GL_MAP2_NORMAL','GL_MAP2_INDEX','GL_MAP2_GRID_SEGMENTS','GL_MAP2_GRID_DOMAIN','GL_MAP2_COLOR_4', - 'GL_MAP1_VERTEX_4','GL_MAP1_VERTEX_3','GL_MAP1_TEXTURE_COORD_4','GL_MAP1_TEXTURE_COORD_3','GL_MAP1_TEXTURE_COORD_2', - 'GL_MAP1_TEXTURE_COORD_1','GL_MAP1_NORMAL','GL_MAP1_INDEX','GL_MAP1_GRID_SEGMENTS','GL_MAP1_GRID_DOMAIN', - 'GL_MAP1_COLOR_4','GL_LUMINANCE_ALPHA','GL_LUMINANCE8_ALPHA8','GL_LUMINANCE8','GL_LUMINANCE6_ALPHA2','GL_LUMINANCE4_ALPHA4', - 'GL_LUMINANCE4','GL_LUMINANCE16_ALPHA16','GL_LUMINANCE16','GL_LUMINANCE12_ALPHA4','GL_LUMINANCE12_ALPHA12','GL_LUMINANCE12', - 'GL_LUMINANCE','GL_LOGIC_OP_MODE','GL_LOGIC_OP','GL_LOAD','GL_LIST_MODE','GL_LIST_INDEX','GL_LIST_BIT', - 'GL_LIST_BASE','GL_LINE_WIDTH_RANGE','GL_LINE_WIDTH_GRANULARITY','GL_LINE_WIDTH','GL_LINE_TOKEN','GL_LINE_STRIP','GL_LINE_STIPPLE_REPEAT', - 'GL_LINE_STIPPLE_PATTERN','GL_LINE_STIPPLE','GL_LINE_SMOOTH_HINT','GL_LINE_SMOOTH','GL_LINE_RESET_TOKEN','GL_LINE_LOOP', - 'GL_LINE_BIT','GL_LINES','GL_LINEAR_MIPMAP_NEAREST','GL_LINEAR_MIPMAP_LINEAR','GL_LINEAR_ATTENUATION','GL_LINEAR', - 'GL_LINE','GL_LIGHT_MODEL_TWO_SIDE','GL_LIGHT_MODEL_LOCAL_VIEWER','GL_LIGHT_MODEL_AMBIENT','GL_LIGHTING_BIT', - 'GL_LIGHTING','GL_LIGHT7','GL_LIGHT6','GL_LIGHT5','GL_LIGHT4','GL_LIGHT3','GL_LIGHT2','GL_LIGHT1','GL_LIGHT0', - 'GL_LESS','GL_LEQUAL','GL_LEFT','GL_KEEP','GL_INVERT','GL_INVALID_VALUE','GL_INVALID_OPERATION','GL_INVALID_ENUM','GL_INTERPOLATE_EXT', - 'GL_INTERPOLATE','GL_INTENSITY8','GL_INTENSITY4','GL_INTENSITY16','GL_INTENSITY12','GL_INTENSITY','GL_INT', - 'GL_INDEX_WRITEMASK','GL_INDEX_SHIFT','GL_INDEX_OFFSET','GL_INDEX_MODE','GL_INDEX_LOGIC_OP','GL_INDEX_CLEAR_VALUE','GL_INDEX_BITS', - 'GL_INDEX_ARRAY_TYPE_EXT','GL_INDEX_ARRAY_TYPE','GL_INDEX_ARRAY_STRIDE_EXT','GL_INDEX_ARRAY_STRIDE','GL_INDEX_ARRAY_POINTER_EXT', - 'GL_INDEX_ARRAY_POINTER','GL_INDEX_ARRAY_EXT','GL_INDEX_ARRAY_COUNT_EXT','GL_INDEX_ARRAY','GL_INCR','GL_HINT_BIT', - 'GL_GREEN_SCALE','GL_GREEN_BITS','GL_GREEN_BIAS','GL_GREEN','GL_GREATER','GL_GEQUAL','GL_FRONT_RIGHT','GL_FRONT_LEFT', - 'GL_FRONT_FACE','GL_FRONT_AND_BACK','GL_FRONT','GL_FOG_START','GL_FOG_SPECULAR_TEXTURE_WIN','GL_FOG_MODE','GL_FOG_INDEX', - 'GL_FOG_HINT','GL_FOG_END','GL_FOG_DENSITY','GL_FOG_COLOR','GL_FOG_BIT','GL_FOG','GL_FLOAT','GL_FLAT','GL_FILL', - 'GL_FEEDBACK_BUFFER_TYPE','GL_FEEDBACK_BUFFER_SIZE','GL_FEEDBACK_BUFFER_POINTER','GL_FEEDBACK','GL_FASTEST','GL_FALSE', - 'GL_EYE_PLANE','GL_EYE_LINEAR','GL_EXT_vertex_array','GL_EXT_paletted_texture','GL_EXT_bgra','GL_EXTENSIONS','GL_EXP2', - 'GL_EXP','GL_EVAL_BIT','GL_EQUIV','GL_EQUAL','GL_ENABLE_BIT','GL_EMISSION','GL_EDGE_FLAG_ARRAY_STRIDE_EXT','GL_EDGE_FLAG_ARRAY_STRIDE', - 'GL_EDGE_FLAG_ARRAY_POINTER_EXT','GL_EDGE_FLAG_ARRAY_POINTER','GL_EDGE_FLAG_ARRAY_EXT','GL_EDGE_FLAG_ARRAY_COUNT_EXT','GL_EDGE_FLAG_ARRAY', - 'GL_EDGE_FLAG','GL_DST_COLOR','GL_DST_ALPHA','GL_DRAW_PIXEL_TOKEN','GL_DRAW_BUFFER','GL_DOUBLE_EXT','GL_DOUBLEBUFFER', - 'GL_DOUBLE','GL_DONT_CARE','GL_DOMAIN','GL_DITHER','GL_DIFFUSE','GL_DEPTH_WRITEMASK','GL_DEPTH_TEST','GL_DEPTH_SCALE', - 'GL_DEPTH_RANGE','GL_DEPTH_FUNC','GL_DEPTH_COMPONENT','GL_DEPTH_CLEAR_VALUE','GL_DEPTH_BUFFER_BIT','GL_DEPTH_BITS', - 'GL_DEPTH_BIAS','GL_DEPTH','GL_DECR','GL_DECAL','GL_CW','GL_CURRENT_TEXTURE_COORDS','GL_CURRENT_RASTER_TEXTURE_COORDS','GL_CURRENT_RASTER_POSITION_VALID', - 'GL_CURRENT_RASTER_POSITION','GL_CURRENT_RASTER_INDEX','GL_CURRENT_RASTER_DISTANCE','GL_CURRENT_RASTER_COLOR','GL_CURRENT_NORMAL', - 'GL_CURRENT_INDEX','GL_CURRENT_COLOR','GL_CURRENT_BIT','GL_CULL_FACE_MODE','GL_CULL_FACE','GL_COPY_PIXEL_TOKEN', - 'GL_COPY_INVERTED','GL_COPY','GL_CONSTANT_EXT','GL_CONSTANT_ATTENUATION','GL_CONSTANT','GL_COMPILE_AND_EXECUTE','GL_COMPILE','GL_COMBINE_RGB_EXT', - 'GL_COMBINE_RGB','GL_COMBINE_EXT','GL_COMBINE_ALPHA_EXT','GL_COMBINE_ALPHA','GL_COMBINE','GL_COLOR_WRITEMASK', - 'GL_COLOR_TABLE_WIDTH_EXT','GL_COLOR_TABLE_RED_SIZE_EXT','GL_COLOR_TABLE_LUMINANCE_SIZE_EXT','GL_COLOR_TABLE_INTENSITY_SIZE_EXT', - 'GL_COLOR_TABLE_GREEN_SIZE_EXT','GL_COLOR_TABLE_FORMAT_EXT','GL_COLOR_TABLE_BLUE_SIZE_EXT','GL_COLOR_TABLE_ALPHA_SIZE_EXT', - 'GL_COLOR_MATERIAL_PARAMETER','GL_COLOR_MATERIAL_FACE','GL_COLOR_MATERIAL','GL_COLOR_LOGIC_OP','GL_COLOR_INDEXES', - 'GL_COLOR_INDEX8_EXT','GL_COLOR_INDEX4_EXT','GL_COLOR_INDEX2_EXT','GL_COLOR_INDEX1_EXT','GL_COLOR_INDEX16_EXT', - 'GL_COLOR_INDEX12_EXT','GL_COLOR_INDEX','GL_COLOR_CLEAR_VALUE','GL_COLOR_BUFFER_BIT','GL_COLOR_ARRAY_TYPE_EXT', - 'GL_COLOR_ARRAY_TYPE','GL_COLOR_ARRAY_STRIDE_EXT','GL_COLOR_ARRAY_STRIDE','GL_COLOR_ARRAY_SIZE_EXT','GL_COLOR_ARRAY_SIZE', - 'GL_COLOR_ARRAY_POINTER_EXT','GL_COLOR_ARRAY_POINTER','GL_COLOR_ARRAY_EXT','GL_COLOR_ARRAY_COUNT_EXT','GL_COLOR_ARRAY', - 'GL_COLOR','GL_COEFF','GL_CLIP_PLANE5','GL_CLIP_PLANE4','GL_CLIP_PLANE3','GL_CLIP_PLANE2','GL_CLIP_PLANE1','GL_CLIP_PLANE0', - 'GL_CLIENT_VERTEX_ARRAY_BIT','GL_CLIENT_PIXEL_STORE_BIT','GL_CLIENT_ATTRIB_STACK_DEPTH','GL_CLIENT_ALL_ATTRIB_BITS', - 'GL_CLIENT_ACTIVE_TEXTURE_ARB','GL_CLIENT_ACTIVE_TEXTURE','GL_CLEAR','GL_CLAMP','GL_CCW','GL_C4UB_V3F','GL_C4UB_V2F', - 'GL_C4F_N3F_V3F','GL_C3F_V3F','GL_BYTE','GL_BLUE_SCALE','GL_BLUE_BITS','GL_BLUE_BIAS','GL_BLUE','GL_BLEND_SRC','GL_BLEND_DST', - 'GL_BLEND','GL_BITMAP_TOKEN','GL_BITMAP','GL_BGR_EXT','GL_BGRA_EXT','GL_BACK_RIGHT','GL_BACK_LEFT','GL_BACK', - 'GL_AUX_BUFFERS','GL_AUX3','GL_AUX2','GL_AUX1','GL_AUX0','GL_AUTO_NORMAL','GL_ATTRIB_STACK_DEPTH','GL_AND_REVERSE', - 'GL_AND_INVERTED','GL_AND','GL_AMBIENT_AND_DIFFUSE','GL_AMBIENT','GL_ALWAYS','GL_ALPHA_TEST_REF','GL_ALPHA_TEST_FUNC', - 'GL_ALPHA_TEST','GL_ALPHA_SCALE','GL_ALPHA_BITS','GL_ALPHA_BIAS','GL_ALPHA8','GL_ALPHA4','GL_ALPHA16','GL_ALPHA12', - 'GL_ALPHA','GL_ALL_ATTRIB_BITS','GL_ADD_SIGNED_EXT','GL_ADD_SIGNED','GL_ADD','GL_ACTIVE_TEXTURE_ARB','GL_ACTIVE_TEXTURE', - 'GL_ACCUM_RED_BITS','GL_ACCUM_GREEN_BITS','GL_ACCUM_CLEAR_VALUE','GL_ACCUM_BUFFER_BIT','GL_ACCUM_BLUE_BITS','GL_ACCUM_ALPHA_BITS', - 'GL_ACCUM','GL_4_BYTES','GL_4D_COLOR_TEXTURE','GL_3_BYTES','GL_3D_COLOR_TEXTURE','GL_3D_COLOR','GL_3D','GL_2_BYTES', - 'GL_2D','GLU_V_STEP','GLU_VERTEX','GLU_VERSION_1_2','GLU_VERSION_1_1','GLU_VERSION','GLU_U_STEP','GLU_UNKNOWN','GLU_TRUE', - 'GLU_TESS_WINDING_RULE','GLU_TESS_WINDING_POSITIVE','GLU_TESS_WINDING_ODD','GLU_TESS_WINDING_NONZERO','GLU_TESS_WINDING_NEGATIVE', - 'GLU_TESS_WINDING_ABS_GEQ_TWO','GLU_TESS_VERTEX_DATA','GLU_TESS_VERTEX','GLU_TESS_TOLERANCE','GLU_TESS_NEED_COMBINE_CALLBACK','GLU_TESS_MISSING_END_POLYGON', - 'GLU_TESS_MISSING_END_CONTOUR','GLU_TESS_MISSING_BEGIN_POLYGON','GLU_TESS_MISSING_BEGIN_CONTOUR','GLU_TESS_ERROR_DATA', - 'GLU_TESS_ERROR8','GLU_TESS_ERROR7','GLU_TESS_ERROR6','GLU_TESS_ERROR5','GLU_TESS_ERROR4','GLU_TESS_ERROR3','GLU_TESS_ERROR2', - 'GLU_TESS_ERROR1','GLU_TESS_ERROR','GLU_TESS_END_DATA','GLU_TESS_END','GLU_TESS_EDGE_FLAG_DATA','GLU_TESS_EDGE_FLAG', - 'GLU_TESS_COORD_TOO_LARGE','GLU_TESS_COMBINE_DATA','GLU_TESS_COMBINE','GLU_TESS_BOUNDARY_ONLY','GLU_TESS_BEGIN_DATA', - 'GLU_TESS_BEGIN','GLU_SMOOTH','GLU_SILHOUETTE','GLU_SAMPLING_TOLERANCE','GLU_SAMPLING_METHOD','GLU_POINT','GLU_PATH_LENGTH', - 'GLU_PARAMETRIC_TOLERANCE','GLU_PARAMETRIC_ERROR','GLU_OUT_OF_MEMORY','GLU_OUTSIDE','GLU_OUTLINE_POLYGON','GLU_OUTLINE_PATCH', - 'GLU_NURBS_ERROR9','GLU_NURBS_ERROR8','GLU_NURBS_ERROR7','GLU_NURBS_ERROR6','GLU_NURBS_ERROR5','GLU_NURBS_ERROR4', - 'GLU_NURBS_ERROR37','GLU_NURBS_ERROR36','GLU_NURBS_ERROR35','GLU_NURBS_ERROR34','GLU_NURBS_ERROR33','GLU_NURBS_ERROR32', - 'GLU_NURBS_ERROR31','GLU_NURBS_ERROR30','GLU_NURBS_ERROR3','GLU_NURBS_ERROR29','GLU_NURBS_ERROR28','GLU_NURBS_ERROR27','GLU_NURBS_ERROR26', - 'GLU_NURBS_ERROR25','GLU_NURBS_ERROR24','GLU_NURBS_ERROR23','GLU_NURBS_ERROR22','GLU_NURBS_ERROR21','GLU_NURBS_ERROR20', - 'GLU_NURBS_ERROR2','GLU_NURBS_ERROR19','GLU_NURBS_ERROR18','GLU_NURBS_ERROR17','GLU_NURBS_ERROR16','GLU_NURBS_ERROR15','GLU_NURBS_ERROR14', - 'GLU_NURBS_ERROR13','GLU_NURBS_ERROR12','GLU_NURBS_ERROR11','GLU_NURBS_ERROR10','GLU_NURBS_ERROR1','GLU_NONE', - 'GLU_MAP1_TRIM_3','GLU_MAP1_TRIM_2','GLU_LINE','GLU_INVALID_VALUE','GLU_INVALID_ENUM','GLU_INTERIOR','GLU_INSIDE','GLU_INCOMPATIBLE_GL_VERSION', - 'GLU_FLAT','GLU_FILL','GLU_FALSE','GLU_EXTERIOR','GLU_EXTENSIONS','GLU_ERROR','GLU_END','GLU_EDGE_FLAG','GLU_DOMAIN_DISTANCE', - 'GLU_DISPLAY_MODE','GLU_CW','GLU_CULLING','GLU_CCW','GLU_BEGIN','GLU_AUTO_LOAD_MATRIX','CHANNEL_UNORDERED','CHANNEL_ORDERED', - 'CHANNEL_MAX' - ), - 2 => array( - - // Red Lowercase Keywords - - 'WriteWord','WriteString','WriteReal','WriteLine','WriteInt','WriteFloat','WriteDouble','WriteChar','WriteByte', - 'windowwidth','windowheight','waittimer','Vec4','Vec3','Vec2','val','UpdateJoystick','ucase$','Transpose','tickcount', - 'textscroll','textrows','textmode','textcols','tanh','tand','tan','synctimercatchup','synctimer','swapbuffers', - 'str$','stopsoundvoice','stopsounds','stopmusic','sqrt','sqr','sprzorder','spryvel','sprytiles','sprysize','spryrepeat', - 'spryflip','sprycentre','spry','sprxvel','sprxtiles','sprxsize','sprxrepeat','sprxflip','sprxcentre','sprx', - 'sprvisible','sprvel','sprtype','sprtop','sprspin','sprsolid','sprsetzorder','sprsetyvel','sprsetysize','sprsetyrepeat', - 'sprsetyflip','sprsetycentre','sprsety','sprsetxvel','sprsetxsize','sprsetxrepeat','sprsetxflip','sprsetxcentre', - 'sprsetx','sprsetvisible','sprsetvel','sprsettiles','sprsettextures','sprsettexture','sprsetspin','sprsetsolid', - 'sprsetsize','sprsetscale','sprsetpos','sprsetparallax','sprsetframe','sprsetcolor','sprsetanimspeed','sprsetanimloop', - 'sprsetangle','sprsetalpha','sprscale','sprright','sprpos','sprparallax','sprleft','spriteareawidth','spriteareaheight', - 'sprframe','sprcolor','sprcameraz','sprcameray','sprcamerax','sprcamerasetz','sprcamerasety','sprcamerasetx', - 'sprcamerasetpos','sprcamerasetfov','sprcamerasetangle','sprcamerapos','sprcamerafov','sprcameraangle', - 'sprbottom','spranimspeed','spranimloop','spranimdone','sprangle','spralpha','spraddtextures','spraddtexture', - 'sounderror','sleep','sind','sin','showcursor','sgn','settextscroll','setmusicvolume','SendMessage','Seek', - 'scankeydown','RTInvert','rnd','right$','resizetext','resizespritearea','RejectConnection','ReceiveMessage','ReadWord', - 'ReadText','ReadReal','ReadLine','ReadInt','ReadFloat','ReadDouble','ReadChar','ReadByte','randomize','printr', - 'print','pow','playsound','playmusic','performancecounter','Orthonormalize','OpenFileWrite','OpenFileRead','Normalize', - 'newtilemap','newsprite','NewServer','NewConnection','musicplaying','mouse_yd','mouse_y','mouse_xd','mouse_x', - 'mouse_wheel','mouse_button','mid$','MessageSmoothed','MessageReliable','MessagePending','MessageChannel','maxtextureunits', - 'MatrixZero','MatrixTranslate','MatrixScale','MatrixRotateZ','MatrixRotateY','MatrixRotateX','MatrixRotate','MatrixIdentity', - 'MatrixCrossProduct','MatrixBasis','log','locate','loadtexture','loadsound','loadmipmaptexture','loadmipmapimagestrip', - 'loadimagestrip','loadimage','Length','len','left$','lcase$','keydown','Joy_Y','Joy_X','Joy_Up','Joy_Right','Joy_Left', - 'Joy_Keys','Joy_Down','Joy_Button','Joy_3','Joy_2','Joy_1','Joy_0','int','inscankey','input$','inkey$','inittimer', - 'imagewidth','imagestripframes','imageheight','imageformat','imagedatatype','hidecursor','glViewport','glVertex4sv', - 'glVertex4s','glVertex4iv','glVertex4i','glVertex4fv','glVertex4f','glVertex4dv','glVertex4d','glVertex3sv','glVertex3s', - 'glVertex3iv','glVertex3i','glVertex3fv','glVertex3f','glVertex3dv','glVertex3d','glVertex2sv','glVertex2s','glVertex2iv', - 'glVertex2i','glVertex2fv','glVertex2f','glVertex2dv','glVertex2d','gluPerspective','gluOrtho2D','gluLookAt', - 'glubuild2dmipmaps','glTranslatef','glTranslated','gltexsubimage2d','glTexParameteriv','glTexParameteri', - 'glTexParameterfv','glTexParameterf','glteximage2d','glTexGeniv','glTexGeni','glTexGenfv','glTexGenf','glTexGendv', - 'glTexGend','glTexEnviv','glTexEnvi','glTexEnvfv','glTexEnvf','glTexCoord4sv','glTexCoord4s','glTexCoord4iv','glTexCoord4i', - 'glTexCoord4fv','glTexCoord4f','glTexCoord4dv','glTexCoord4d','glTexCoord3sv','glTexCoord3s','glTexCoord3iv','glTexCoord3i', - 'glTexCoord3fv','glTexCoord3f','glTexCoord3dv','glTexCoord3d','glTexCoord2sv','glTexCoord2s','glTexCoord2iv','glTexCoord2i', - 'glTexCoord2fv','glTexCoord2f','glTexCoord2dv','glTexCoord2d','glTexCoord1sv','glTexCoord1s','glTexCoord1iv','glTexCoord1i','glTexCoord1fv', - 'glTexCoord1f','glTexCoord1dv','glTexCoord1d','glStencilOp','glStencilMask','glStencilFunc','glShadeModel','glSelectBuffer', - 'glScissor','glScalef','glScaled','glRotatef','glRotated','glRenderMode','glRectsv','glRects','glRectiv','glRecti', - 'glRectfv','glRectf','glRectdv','glRectd','glReadBuffer','glRasterPos4sv','glRasterPos4s','glRasterPos4iv', - 'glRasterPos4i','glRasterPos4fv','glRasterPos4f','glRasterPos4dv','glRasterPos4d','glRasterPos3sv','glRasterPos3s', - 'glRasterPos3iv','glRasterPos3i','glRasterPos3fv','glRasterPos3f','glRasterPos3dv','glRasterPos3d','glRasterPos2sv', - 'glRasterPos2s','glRasterPos2iv','glRasterPos2i','glRasterPos2fv','glRasterPos2f','glRasterPos2dv','glRasterPos2d', - 'glPushName','glPushMatrix','glPushClientAttrib','glPushAttrib','glPrioritizeTextures','glPopName','glPopMatrix', - 'glPopClientAttrib','glPopAttrib','glpolygonstipple','glPolygonOffset','glPolygonMode','glPointSize','glPixelZoom', - 'glPixelTransferi','glPixelTransferf','glPixelStorei','glPixelStoref','glPassThrough','glOrtho','glNormal3sv','glNormal3s', - 'glNormal3iv','glNormal3i','glNormal3fv','glNormal3f','glNormal3dv','glNormal3d','glNormal3bv','glNormal3b','glNewList', - 'glMultMatrixf','glMultMatrixd','glmultitexcoord2f','glmultitexcoord2d','glMatrixMode','glMaterialiv','glMateriali', - 'glMaterialfv','glMaterialf','glMapGrid2f','glMapGrid2d','glMapGrid1f','glMapGrid1d','glLogicOp','glLoadName','glLoadMatrixf', - 'glLoadMatrixd','glLoadIdentity','glListBase','glLineWidth','glLineStipple','glLightModeliv','glLightModeli','glLightModelfv', - 'glLightModelf','glLightiv','glLighti','glLightfv','glLightf','glIsTexture','glIsList','glIsEnabled','glInitNames', - 'glIndexubv','glIndexub','glIndexsv','glIndexs','glIndexMask','glIndexiv','glIndexi','glIndexfv','glIndexf','glIndexdv', - 'glIndexd','glHint','glGetTexParameteriv','glGetTexParameterfv','glGetTexLevelParameteriv','glGetTexLevelParameterfv', - 'glGetTexGeniv','glGetTexGenfv','glGetTexGendv','glGetTexEnviv','glGetTexEnvfv','glgetstring','glgetpolygonstipple','glGetPixelMapuiv', - 'glGetMaterialiv','glGetMaterialfv','glGetLightiv','glGetLightfv','glGetIntegerv','glGetFloatv', - 'glGetError','glGetDoublev','glGetClipPlane','glGetBooleanv','glgentextures','glgentexture', - 'glgenlists','glFrustum','glFrontFace','glFogiv','glFogi','glFogfv','glFogf','glFlush','glFinish','glFeedbackBuffer', - 'glEvalPoint2','glEvalPoint1','glEvalMesh2','glEvalMesh1','glEvalCoord2fv','glEvalCoord2f','glEvalCoord2dv','glEvalCoord2d', - 'glEvalCoord1fv','glEvalCoord1f','glEvalCoord1dv','glEvalCoord1d','glEndList','glEnd','glEnableClientState','glEnable', - 'glEdgeFlagv','glEdgeFlag','glDrawBuffer','glDrawArrays','glDisableClientState','glDisable','glDepthRange','glDepthMask', - 'glDepthFunc','gldeletetextures','gldeletetexture','gldeletelists','glCullFace','glCopyTexSubImage2D','glCopyTexSubImage1D', - 'glCopyTexImage2D','glCopyTexImage1D','glColorMaterial','glColorMask','glColor4usv','glColor4us','glColor4uiv','glColor4ui', - 'glColor4ubv','glColor4ub','glColor4sv','glColor4s','glColor4iv','glColor4i','glColor4fv','glColor4f','glColor4dv', - 'glColor4d','glColor4bv','glColor4b','glColor3usv','glColor3us','glColor3uiv','glColor3ui','glColor3ubv','glColor3ub', - 'glColor3sv','glColor3s','glColor3iv','glColor3i','glColor3fv','glColor3f','glColor3dv','glColor3d','glColor3bv', - 'glColor3b','glClipPlane','glClearStencil','glClearIndex','glClearDepth','glClearColor','glClearAccum','glClear', - 'glcalllists','glCallList','glBlendFunc','glBindTexture','glBegin','glArrayElement','glAreTexturesResident', - 'glAlphaFunc','glactivetexture','glAccum','font','FindNextFile','FindFirstFile','FindClose','FileError', - 'extensionsupported','exp','execute','EndOfFile','drawtext','divbyzero','Determinant','deletesprite','deletesound', - 'DeleteServer','deleteimage','DeleteConnection','defaultfont','CrossProduct','cosd','cos','copysprite','ConnectionPending', - 'ConnectionHandShaking','ConnectionConnected','ConnectionAddress','compilererrorline','compilererrorcol','compilererror', - 'compilefile','compile','color','cls','CloseFile','clearregion','clearline','clearkeys','chr$','charat$','bindsprite', - 'beep','atnd','atn2d','atn2','atn','atand','asc','argcount','arg','animatesprites','AcceptConnection','abs' - ), - 3 => array( - - // Blue Lowercase Keywords - - 'xor','while','wend','until','type','traditional_print','traditional','to','then','struc','string','step','single', - 'run','return','reset','read','or','null','not','next','lor','loop','language','land','integer','input','if', - 'goto','gosub','for','endstruc','endif','end','elseif','else','double','do','dim','data','const','basic4gl','as', - 'and','alloc' - ) - - ), - 'SYMBOLS' => array( - '=', '<', '>', '>=', '<=', '+', '-', '*', '/', '%', '(', ')', '{', '}', '[', ']', '&', ';', ':', '$' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #FF0000;', - 3 => 'color: #0000FF;' - ), - 'COMMENTS' => array( - 1 => 'color: #657CC4; font-style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #000080;' - ), - 'STRINGS' => array( - 0 => 'color: #008000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000080; font-weight: bold;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #0000FF;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/bf.php b/system/application/libraries/geshi/bf.php deleted file mode 100644 index c69155e88..000000000 --- a/system/application/libraries/geshi/bf.php +++ /dev/null @@ -1,114 +0,0 @@ -<?php -/************************************************************************************* - * bf.php - * ---------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2009/10/31 - * - * Brainfuck language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/31 (1.0.8.1) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ -$language_data = array ( - 'LANG_NAME' => 'Brainfuck', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(1 => '/[^\n+\-<>\[\]\.\,Y]+/s'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - 0 => array('+', '-'), - 1 => array('[', ']'), - 2 => array('<', '>'), - 3 => array('.', ','), - 4 => array('Y') //Brainfork Extension ;-) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #006600;', - 1 => 'color: #660000;', - 2 => 'color: #000066;', - 3 => 'color: #660066;', - 4 => 'color: #666600;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'STRINGS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 'DISALLOW_BEFORE' => '', - 'DISALLOW_AFTER' => '' - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/bibtex.php b/system/application/libraries/geshi/bibtex.php deleted file mode 100644 index 82c13b8bc..000000000 --- a/system/application/libraries/geshi/bibtex.php +++ /dev/null @@ -1,183 +0,0 @@ -<?php -/******************************************************************************** - * bibtex.php - * ----- - * Author: Quinn Taylor (quinntaylor@mac.com) - * Copyright: (c) 2009 Quinn Taylor (quinntaylor@mac.com), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2009/04/29 - * - * BibTeX language file for GeSHi. - * - * CHANGES - * ------- - * 2009/04/29 (1.0.8.4) - * - First Release - * - * TODO - * ------------------------- - * - Add regex for matching and replacing URLs with corresponding hyperlinks - * - Add regex for matching more LaTeX commands that may be embedded in BibTeX - * (Someone who understands regex better than I should borrow from latex.php) - ******************************************************************************** - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * -*******************************************************************************/ - -// http://en.wikipedia.org/wiki/BibTeX -// http://www.fb10.uni-bremen.de/anglistik/langpro/bibliographies/jacobsen-bibtex.html - -$language_data = array ( - 'LANG_NAME' => 'BibTeX', - 'OOLANG' => false, - 'COMMENT_SINGLE' => array( - 1 => '%%' - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 0 => array( - '@comment','@preamble','@string' - ), - // Standard entry types - 1 => array( - '@article','@book','@booklet','@conference','@inbook', - '@incollection','@inproceedings','@manual','@mastersthesis', - '@misc','@phdthesis','@proceedings','@techreport','@unpublished' - ), - // Custom entry types - 2 => array( - '@collection','@patent','@webpage' - ), - // Standard entry field names - 3 => array( - 'address','annote','author','booktitle','chapter','crossref', - 'edition','editor','howpublished','institution','journal','key', - 'month','note','number','organization','pages','publisher','school', - 'series','title','type','volume','year' - ), - // Custom entry field names - 4 => array( - 'abstract','affiliation','chaptername','cited-by','cites', - 'contents','copyright','date-added','date-modified','doi','eprint', - 'isbn','issn','keywords','language','lccn','lib-congress', - 'location','price','rating','read','size','source','url' - ) - ), - 'URLS' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'SYMBOLS' => array( - '{', '}', '#', '=', ',' - ), - 'CASE_SENSITIVE' => array( - 1 => false, - 2 => false, - 3 => false, - 4 => false, - GESHI_COMMENTS => false, - ), - // Define the colors for the groups listed above - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #C02020;', // Standard entry types - 2 => 'color: #C02020;', // Custom entry types - 3 => 'color: #C08020;', // Standard entry field names - 4 => 'color: #C08020;' // Custom entry field names - ), - 'COMMENTS' => array( - 1 => 'color: #2C922C; font-style: italic;' - ), - 'STRINGS' => array( - 0 => 'color: #2020C0;' - ), - 'SYMBOLS' => array( - 0 => 'color: #E02020;' - ), - 'REGEXPS' => array( - 1 => 'color: #2020C0;', // {...} - 2 => 'color: #C08020;', // BibDesk fields - 3 => 'color: #800000;' // LaTeX commands - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #E02020;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'REGEXPS' => array( - // {parameters} - 1 => array( - GESHI_SEARCH => "(?<=\\{)(?:\\{(?R)\\}|[^\\{\\}])*(?=\\})", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 's', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 2 => array( - GESHI_SEARCH => "\bBdsk-(File|Url)-\d+", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 3 => array( - GESHI_SEARCH => "\\\\[A-Za-z0-9]*+", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'OBJECT_SPLITTERS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_AFTER' => '(?=\s*=)' - ), - 4 => array( - 'DISALLOWED_AFTER' => '(?=\s*=)' - ), - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/blitzbasic.php b/system/application/libraries/geshi/blitzbasic.php deleted file mode 100644 index c3871a21e..000000000 --- a/system/application/libraries/geshi/blitzbasic.php +++ /dev/null @@ -1,185 +0,0 @@ -<?php -/************************************************************************************* - * blitzbasic.php - * -------------- - * Author: P�draig O`Connel (info@moonsword.info) - * Copyright: (c) 2005 P�draig O`Connel (http://moonsword.info) - * Release Version: 1.0.8.6 - * Date Started: 16.10.2005 - * - * BlitzBasic language file for GeSHi. - * - * It is a simple Basic dialect. Released for Games and Network Connections. - * In this Language File are all functions included (2D BB and 3D BB) - * - * - * CHANGES - * ------- - * 2005/12/28 (1.0.1) - * - Remove unnecessary style index for regexps - * 2005/10/22 (1.0.0) - * - First Release - * - * TODO (updated 2005/10/22) - * ------------------------- - * * Sort out the Basic commands for splitting up. - * * To set up the right colors. - * (the colors are ok, but not the correct ones) - * * Split to BlitzBasic 2D and BlitzBasic 3D. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'BlitzBasic', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'If','EndIf','ElseIf','Else If','Else','While','Wend','Return','Next','Include','End Type','End Select','End If','End Function','End','Select', - 'Type','Forever','For','Or','And','AppTitle','Case','Goto','Gosub','Step','Stop','Int','Last','False','Then','To','True','Until','Float', - 'String','Before','Not' - ), - 2 => array( - // All Functions - 2D BB and 3D BB - 'Xor','WriteString','WriteShort','WritePixelFast','WritePixel','WriteLine','WriteInt','WriteFloat','WriteFile','WriteBytes', - 'WriteByte','Write','WaitTimer','WaitMouse','WaitKey','WaitJoy','VWait','Viewport', - 'Upper','UpdateGamma','UnlockBuffer','UDPTimeouts','UDPStreamPort','UDPStreamIP','UDPMsgPort','UDPMsgIP', - 'Trim','TotalVidMem','TileImage','TileBlock','TFormImage','TFormFilter','Text', - 'TCPTimeouts','TCPStreamPort','TCPStreamIP','Tan','SystemProperty','StringWidth','StringHeight','Str','StopNetGame', - 'StopChannel','StartNetGame','Sqr','SoundVolume','SoundPitch','SoundPan','Sin','Shr', - 'ShowPointer','Shl','Sgn','SetGfxDriver','SetGamma','SetFont','SetEnv','SetBuffer','SendUDPMsg','SendNetMsg', - 'SeekFile','SeedRnd','ScanLine','ScaleImage','SaveImage','SaveBuffer','Sar','RuntimeError','RSet', - 'RotateImage','RndSeed','Rnd','Right','ResumeChannel','Restore','ResizeImage','ResizeBank','Replace', - 'Repeat','RecvUDPMsg','RecvNetMsg','RectsOverlap','Rect','ReadString','ReadShort','ReadPixelFast','ReadPixel','ReadLine', - 'ReadInt','ReadFloat','ReadFile','ReadDir','ReadBytes','ReadByte','ReadAvail','Read','Rand','Print', - 'PokeShort','PokeInt','PokeFloat','PokeByte','Plot','PlaySound','PlayMusic','PlayCDTrack','Pi','PeekShort', - 'PeekInt','PeekFloat','PeekByte','PauseChannel','Oval','Origin','OpenTCPStream','OpenMovie','OpenFile', - 'Null','NextFile','New','NetPlayerName','NetPlayerLocal','NetMsgType','NetMsgTo','NetMsgFrom', - 'NetMsgData','MovieWidth','MoviePlaying','MovieHeight','MoveMouse','MouseZSpeed','MouseZ','MouseYSpeed','MouseY','MouseXSpeed', - 'MouseX','MouseHit','MouseDown','Mod','Millisecs','MidHandle','Mid','MaskImage','LSet','Lower', - 'LoopSound','Log10','Log','LockBuffer','Locate','Local','LoadSound','LoadImage','LoadFont','LoadBuffer', - 'LoadAnimImage','Line','Len','Left','KeyHit','KeyDown','JoyZDir','JoyZ','JoyYDir', - 'JoyYaw','JoyY','JoyXDir','JoyX','JoyVDir','JoyV','JoyUDir','JoyU','JoyType','JoyRoll', - 'JoyPitch','JoyHit','JoyHat','JoyDown','JoinNetGame','Instr','Insert','Input', - 'ImageYHandle','ImageXHandle','ImageWidth','ImagesOverlap','ImagesCollide','ImageRectOverlap','ImageRectCollide','ImageHeight','ImageBuffer', - 'HostNetGame','HostIP','HidePointer','Hex','HandleImage','GraphicsWidth','GraphicsHeight','GraphicsDepth','GraphicsBuffer','Graphics', - 'GrabImage','Global','GFXModeWidth','GFXModeHeight','GfxModeExists','GFXModeDepth','GfxDriverName','GetMouse', - 'GetKey','GetJoy','GetEnv','GetColor','GammaRed','GammaGreen','GammaBlue','Function','FrontBuffer','FreeTimer', - 'FreeSound','FreeImage','FreeFont','FreeBank','FontWidth','FontHeight','FlushMouse','FlushKeys', - 'FlushJoy','Floor','Flip','First','FileType','FileSize','FilePos','Field', - 'Exp','Exit','ExecFile','Eof','EndGraphics','Each','DrawMovie','DrawImageRect','DrawImage','DrawBlockRect','DrawBlock', - 'DottedIP','Dim','DeleteNetPlayer','DeleteFile','DeleteDir','Delete','Delay','Default','DebugLog','Data', - 'CurrentTime','CurrentDir','CurrentDate','CreateUDPStream','CreateTimer','CreateTCPServer','CreateNetPlayer','CreateImage','CreateDir','CreateBank', - 'CountHostIPs','CountGFXModes','CountGfxDrivers','Cos','CopyStream','CopyRect','CopyPixelFast','CopyPixel','CopyImage','CopyFile', - 'CopyBank','Const','CommandLine','ColorRed','ColorGreen','ColorBlue','Color','ClsColor','Cls','CloseUDPStream', - 'CloseTCPStream','CloseTCPServer','CloseMovie','CloseFile','CloseDir','Chr','ChannelVolume','ChannelPlaying','ChannelPitch','ChannelPan', - 'ChangeDir','Ceil','CallDLL','Bin','BankSize','BackBuffer','AvailVidMem','AutoMidHandle', - 'ATan2','ATan','ASin','Asc','After','ACos','AcceptTCPStream','Abs', - // 3D Commands - 'Wireframe','Windowed3D','WBuffer','VertexZ','VertexY', - 'VertexX','VertexW','VertexV','VertexU','VertexTexCoords','VertexRed','VertexNZ','VertexNY','VertexNX','VertexNormal', - 'VertexGreen','VertexCoords','VertexColor','VertexBlue','VertexAlpha','VectorYaw','VectorPitch','UpdateWorld','UpdateNormals','TurnEntity', - 'TrisRendered','TriangleVertex','TranslateEntity','TFormVector','TFormPoint','TFormNormal','TFormedZ','TFormedY','TFormedX','TextureWidth', - 'TextureName','TextureHeight','TextureFilter','TextureCoords','TextureBuffer','TextureBlend','TerrainZ','TerrainY','TerrainX','TerrainSize', - 'TerrainShading','TerrainHeight','TerrainDetail','SpriteViewMode','ShowEntity','SetCubeFace','SetAnimTime','SetAnimKey','ScaleTexture','ScaleSprite', - 'ScaleMesh','ScaleEntity','RotateTexture','RotateSprite','RotateMesh','RotateEntity','ResetEntity','RenderWorld','ProjectedZ','ProjectedY', - 'ProjectedX','PositionTexture','PositionMesh','PositionEntity','PointEntity','PickedZ','PickedY','PickedX','PickedTriangle','PickedTime', - 'PickedSurface','PickedNZ','PickedNY','PickedNX','PickedEntity','PaintSurface','PaintMesh','PaintEntity','NameEntity','MoveEntity', - 'ModifyTerrain','MeshWidth','MeshHeight','MeshesIntersect','MeshDepth','MD2AnimTime','MD2AnimLength','MD2Animating','LoadTexture','LoadTerrain', - 'LoadSprite','LoadMesh','LoadMD2','LoaderMatrix','LoadBSP','LoadBrush','LoadAnimTexture','LoadAnimSeq','LoadAnimMesh','Load3DSound', - 'LinePick','LightRange','LightMesh','LightConeAngles','LightColor','HWMultiTex','HideEntity','HandleSprite','Graphics3D','GfxMode3DExists', - 'GfxMode3D','GfxDriverCaps3D','GfxDriver3D','GetSurfaceBrush','GetSurface','GetParent','GetMatElement','GetEntityType','GetEntityBrush','GetChild', - 'GetBrushTexture','FreeTexture','FreeEntity','FreeBrush','FlipMesh','FitMesh','FindSurface','FindChild','ExtractAnimSeq','EntityZ', - 'EntityYaw','EntityY','EntityX','EntityVisible','EntityType','EntityTexture','EntityShininess','EntityRoll','EntityRadius','EntityPitch', - 'EntityPickMode','EntityPick','EntityParent','EntityOrder','EntityName','EntityInView','EntityFX','EntityDistance','EntityColor','EntityCollided', - 'EntityBox','EntityBlend','EntityAutoFade','EntityAlpha','EmitSound','Dither','DeltaYaw','DeltaPitch','CreateTexture','CreateTerrain', - 'CreateSurface','CreateSprite','CreateSphere','CreatePlane','CreatePivot','CreateMirror','CreateMesh','CreateListener','CreateLight','CreateCylinder', - 'CreateCube','CreateCone','CreateCamera','CreateBrush','CountVertices','CountTriangles','CountSurfaces','CountGfxModes3D','CountCollisions','CountChildren', - 'CopyMesh','CopyEntity','CollisionZ','CollisionY','CollisionX','CollisionTriangle','CollisionTime','CollisionSurface','Collisions','CollisionNZ', - 'CollisionNY','CollisionNX','CollisionEntity','ClearWorld','ClearTextureFilters','ClearSurface','ClearCollisions','CaptureWorld','CameraZoom','CameraViewport', - 'CameraRange','CameraProjMode','CameraProject','CameraPick','CameraFogRange','CameraFogMode','CameraFogColor','CameraClsMode','CameraClsColor','BSPLighting', - 'BSPAmbientLight','BrushTexture','BrushShininess','BrushFX','BrushColor','BrushBlend','BrushAlpha','AntiAlias','AnimTime','AnimSeq', - 'AnimLength','Animating','AnimateMD2','Animate','AmbientLight','AlignToVector','AddVertex','AddTriangle','AddMesh','AddAnimSeq', - ) - ), - 'SYMBOLS' => array( - '(',')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #D9D100; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '\\' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => false - ) -); - -?> diff --git a/system/application/libraries/geshi/bnf.php b/system/application/libraries/geshi/bnf.php deleted file mode 100644 index db5cdb59d..000000000 --- a/system/application/libraries/geshi/bnf.php +++ /dev/null @@ -1,110 +0,0 @@ -<?php -/************************************************************************************* - * bnf.php - * -------- - * Author: Rowan Rodrik van der Molen (rowan@bigsmoke.us) - * Copyright: (c) 2006 Rowan Rodrik van der Molen (http://www.bigsmoke.us/) - * Release Version: 1.0.8.6 - * Date Started: 2006/09/28 - * - * BNF (Backus-Naur form) language file for GeSHi. - * - * See http://en.wikipedia.org/wiki/Backus-Naur_form for more info on BNF. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * - Removed superflicious regexps - * 2006/09/18 (1.0.0) - * - First Release - * - * TODO (updated 2006/09/18) - * ------------------------- - * * Nothing I can think of - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'bnf', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array(), - 'SYMBOLS' => array( - '(', ')', '<', '>', '::=', '|' - ), - 'CASE_SENSITIVE' => array( - //GESHI_COMMENTS => false - ), - 'STYLES' => array( - 'KEYWORDS' => array(), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #a00;', - 1 => 'color: #a00;' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066; font-weight: bold;', // Unused - ), - 'REGEXPS' => array( - 0 => 'color: #007;', - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array(), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - //terminal symbols - 0 => array( - GESHI_SEARCH => '(<)([^&]+?)(>)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/boo.php b/system/application/libraries/geshi/boo.php deleted file mode 100644 index df843797d..000000000 --- a/system/application/libraries/geshi/boo.php +++ /dev/null @@ -1,217 +0,0 @@ -<?php -/************************************************************************************* - * boo.php - * -------- - * Author: Marcus Griep (neoeinstein+GeSHi@gmail.com) - * Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us) - * Release Version: 1.0.8.6 - * Date Started: 2007/09/10 - * - * Boo language file for GeSHi. - * - * CHANGES - * ------- - * 2004/09/10 (1.0.8) - * - First Release - * - * TODO (updated 2007/09/10) - * ------------------------- - * Regular Expression Literal matching - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Boo', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'''", "'", '"""', '"'), - 'HARDQUOTE' => array('"""', '"""'), - 'HARDESCAPE' => array('\"""'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array(//Namespace - 'namespace', 'import', 'from' - ), - 2 => array(//Jump - 'yield', 'return', 'goto', 'continue', 'break' - ), - 3 => array(//Conditional - 'while', 'unless', 'then', 'in', 'if', 'for', 'else', 'elif' - ), - 4 => array(//Property - 'set', 'get' - ), - 5 => array(//Exception - 'try', 'raise', 'failure', 'except', 'ensure' - ), - 6 => array(//Visibility - 'public', 'private', 'protected', 'internal' - ), - 7 => array(//Define - 'struct', 'ref', 'of', 'interface', 'event', 'enum', 'do', 'destructor', 'def', 'constructor', 'class' - ), - 8 => array(//Cast - 'typeof', 'cast', 'as' - ), - 9 => array(//BiMacro - 'yieldAll', 'using', 'unchecked', 'rawArayIndexing', 'print', 'normalArrayIndexing', 'lock', - 'debug', 'checked', 'assert' - ), - 10 => array(//BiAttr - 'required', 'property', 'meta', 'getter', 'default' - ), - 11 => array(//BiFunc - 'zip', 'shellp', 'shellm', 'shell', 'reversed', 'range', 'prompt', - 'matrix', 'map', 'len', 'join', 'iterator', 'gets', 'enumerate', 'cat', 'array' - ), - 12 => array(//HiFunc - '__switch__', '__initobj__', '__eval__', '__addressof__', 'quack' - ), - 13 => array(//Primitive - 'void', 'ushort', 'ulong', 'uint', 'true', 'timespan', 'string', 'single', - 'short', 'sbyte', 'regex', 'object', 'null', 'long', 'int', 'false', 'duck', - 'double', 'decimal', 'date', 'char', 'callable', 'byte', 'bool' - ), - 14 => array(//Operator - 'not', 'or', 'and', 'is', 'isa', - ), - 15 => array(//Modifier - 'virtual', 'transient', 'static', 'partial', 'override', 'final', 'abstract' - ), - 16 => array(//Access - 'super', 'self' - ), - 17 => array(//Pass - 'pass' - ) - ), - 'SYMBOLS' => array( - '[|', '|]', '${', '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>', '+', '-', ';' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true, - 10 => true, - 11 => true, - 12 => true, - 13 => true, - 14 => true, - 15 => true, - 16 => true, - 17 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:green;font-weight:bold;', - 2 => 'color:navy;', - 3 => 'color:blue;font-weight:bold;', - 4 => 'color:#8B4513;', - 5 => 'color:teal;font-weight:bold;', - 6 => 'color:blue;font-weight:bold;', - 7 => 'color:blue;font-weight:bold;', - 8 => 'color:blue;font-weight:bold;', - 9 => 'color:maroon;', - 10 => 'color:maroon;', - 11 => 'color:purple;', - 12 => 'color:#4B0082;', - 13 => 'color:purple;font-weight:bold;', - 14 => 'color:#008B8B;font-weight:bold;', - 15 => 'color:brown;', - 16 => 'color:black;font-weight:bold;', - 17 => 'color:gray;' - ), - 'COMMENTS' => array( - 1 => 'color: #999999; font-style: italic;', - 2 => 'color: #999999; font-style: italic;', - 'MULTI' => 'color: #008000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #0000FF; font-weight: bold;', - 'HARD' => 'color: #0000FF; font-weight: bold;', - ), - 'BRACKETS' => array( - 0 => 'color: #006400;' - ), - 'STRINGS' => array( - 0 => 'color: #008000;', - 'HARD' => 'color: #008000;' - ), - 'NUMBERS' => array( - 0 => 'color: #00008B;' - ), - 'METHODS' => array( - 0 => 'color: 000000;', - 1 => 'color: 000000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006400;' - ), - 'REGEXPS' => array( - #0 => 'color: #0066ff;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '', - 10 => '', - 11 => '', - 12 => '', - 13 => '', - 14 => '', - 15 => '', - 16 => '', - 17 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 0 => '.', - 1 => '::' - ), - 'REGEXPS' => array( - #0 => '%(@)?\/(?:(?(1)[^\/\\\\\r\n]+|[^\/\\\\\r\n \t]+)|\\\\[\/\\\\\w+()|.*?$^[\]{}\d])+\/%' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/c.php b/system/application/libraries/geshi/c.php deleted file mode 100644 index bb6be43e1..000000000 --- a/system/application/libraries/geshi/c.php +++ /dev/null @@ -1,188 +0,0 @@ -<?php -/************************************************************************************* - * c.php - * ----- - * Author: Nigel McNie (nigel@geshi.org) - * Contributors: - * - Jack Lloyd (lloyd@randombit.net) - * - Michael Mol (mikemol@gmail.com) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * C language file for GeSHi. - * - * CHANGES - * ------- - * 2009/01/22 (1.0.8.3) - * - Made keywords case-sensitive. - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/XX/XX (1.0.4) - * - Added a couple of new keywords (Jack Lloyd) - * 2004/11/27 (1.0.3) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.2) - * - Added support for URLs - * 2004/08/05 (1.0.1) - * - Added support for symbols - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2009/02/08) - * ------------------------- - * - Get a list of inbuilt functions to add (and explore C more - * to complete this rather bare language file - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'C', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'if', 'return', 'while', 'case', 'continue', 'default', - 'do', 'else', 'for', 'switch', 'goto' - ), - 2 => array( - 'null', 'false', 'break', 'true', 'function', 'enum', 'extern', 'inline' - ), - 3 => array( - 'printf', 'cout' - ), - 4 => array( - 'auto', 'char', 'const', 'double', 'float', 'int', 'long', - 'register', 'short', 'signed', 'sizeof', 'static', 'string', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'wchar_t' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', - '+', '-', '*', '/', '%', - '=', '<', '>', - '!', '^', '&', '|', - '?', ':', - ';', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #993333;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #339933;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/c_mac.php b/system/application/libraries/geshi/c_mac.php deleted file mode 100644 index 6ead4ae15..000000000 --- a/system/application/libraries/geshi/c_mac.php +++ /dev/null @@ -1,212 +0,0 @@ -<?php -/************************************************************************************* - * c_mac.php - * --------- - * Author: M. Uli Kusterer (witness.of.teachtext@gmx.net) - * Copyright: (c) 2004 M. Uli Kusterer, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * C for Macs language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/27 - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'C (Mac)', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'if', 'return', 'while', 'case', 'continue', 'default', - 'do', 'else', 'for', 'switch', 'goto' - ), - 2 => array( - 'NULL', 'false', 'break', 'true', 'enum', 'errno', 'EDOM', - 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', - 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', - 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', - 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', - 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', - 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', - 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', - 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', - 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', - 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr', - 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC', - // Mac-specific constants: - 'kCFAllocatorDefault' - ), - 3 => array( - 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', - 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', - 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', - 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', - 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', - 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', - 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', - 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', - 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', - 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', - 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', - 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', - 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', - 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', - 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', - 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', - 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', - 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', - 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' - ), - 4 => array( - 'auto', 'char', 'const', 'double', 'float', 'int', 'long', - 'register', 'short', 'signed', 'static', 'string', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf', - 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', - 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', - // Mac-specific types: - 'CFArrayRef', 'CFDictionaryRef', 'CFMutableDictionaryRef', 'CFBundleRef', 'CFSetRef', 'CFStringRef', - 'CFURLRef', 'CFLocaleRef', 'CFDateFormatterRef', 'CFNumberFormatterRef', 'CFPropertyListRef', - 'CFTreeRef', 'CFWriteStreamRef', 'CFCharacterSetRef', 'CFMutableStringRef', 'CFNotificationRef', - 'CFReadStreamRef', 'CFNull', 'CFAllocatorRef', 'CFBagRef', 'CFBinaryHeapRef', - 'CFBitVectorRef', 'CFBooleanRef', 'CFDataRef', 'CFDateRef', 'CFMachPortRef', 'CFMessagePortRef', - 'CFMutableArrayRef', 'CFMutableBagRef', 'CFMutableBitVectorRef', 'CFMutableCharacterSetRef', - 'CFMutableDataRef', 'CFMutableSetRef', 'CFNumberRef', 'CFPlugInRef', 'CFPlugInInstanceRef', - 'CFRunLoopRef', 'CFRunLoopObserverRef', 'CFRunLoopSourceRef', 'CFRunLoopTimerRef', 'CFSocketRef', - 'CFTimeZoneRef', 'CFTypeRef', 'CFUserNotificationRef', 'CFUUIDRef', 'CFXMLNodeRef', 'CFXMLParserRef', - 'CFXMLTreeRef' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #0000ff;', - 3 => 'color: #0000dd;', - 4 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #ff0000;', - 2 => 'color: #339900;', - 'MULTI' => 'color: #ff0000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #666666;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #00eeff;', - 2 => 'color: #00eeff;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/caddcl.php b/system/application/libraries/geshi/caddcl.php deleted file mode 100644 index 27474627e..000000000 --- a/system/application/libraries/geshi/caddcl.php +++ /dev/null @@ -1,126 +0,0 @@ -<?php -/************************************************************************************* - * caddcl.php - * ---------- - * Author: Roberto Rossi (rsoftware@altervista.org) - * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/30 - * - * CAD DCL (Dialog Control Language) language file for GeSHi. - * - * DCL for AutoCAD 12 or later and IntelliCAD all versions. - * - * CHANGES - * ------- - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/1!/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'CAD DCL', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'boxed_column','boxed_radio_column','boxed_radio_row','boxed_row', - 'column','concatenation','button','dialog','edit_box','image','image_button', - 'errtile','list_box','ok_cancel','ok_cancel_help','ok_cancel_help_errtile', - 'ok_cancel_help_info','ok_only','paragraph','popup_list','radio_button', - 'radio_column','radio_row','row','slider','spacer','spacer_0','spacer_1','text', - 'text_part','toggle', - 'action','alignment','allow_accept','aspect_ratio','big_increment', - 'children_alignment','children_fixed_height', - 'children_fixed_width','color', - 'edit_limit','edit_width','fixed_height','fixed_width', - 'height','initial_focus','is_cancel','is_default', - 'is_enabled','is_tab_stop','is-bold','key','label','layout','list', - 'max_value','min_value','mnemonic','multiple_select','password_char', - 'small_increment','tabs','tab_truncate','value','width', - 'false','true','left','right','centered','top','bottom', - 'dialog_line','dialog_foreground','dialog_background', - 'graphics_background','black','red','yellow','green','cyan', - 'blue','magenta','whitegraphics_foreground', - 'horizontal','vertical' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/cadlisp.php b/system/application/libraries/geshi/cadlisp.php deleted file mode 100644 index 5061c79e4..000000000 --- a/system/application/libraries/geshi/cadlisp.php +++ /dev/null @@ -1,186 +0,0 @@ -<?php -/************************************************************************************* - * cadlisp.php - * ----------- - * Author: Roberto Rossi (rsoftware@altervista.org) - * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/blog) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/30 - * - * AutoCAD/IntelliCAD Lisp language file for GeSHi. - * - * For AutoCAD V.12..2005 and IntelliCAD all versions. - * - * CHANGES - * ------- - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'CAD Lisp', - 'COMMENT_SINGLE' => array(1 => ";"), - 'COMMENT_MULTI' => array(";|" => "|;"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'abs','acad_colordlg','acad_helpdlg','acad_strlsort','action_tile', - 'add_list','alert','alloc','and','angle','angtof','angtos','append','apply', - 'arx','arxload','arxunload','ascii','assoc','atan','atof','atoi','atom', - 'atoms-family','autoarxload','autoload','Boole','boundp','caddr', - 'cadr','car','cdr','chr','client_data_tile','close','command','cond', - 'cons','cos','cvunit','defun','defun-q','defun-q-list-ref', - 'defun-q-list-set','dictadd','dictnext','dictremove','dictrename', - 'dictsearch','dimx_tile','dimy_tile','distance','distof','done_dialog', - 'end_image','end_list','entdel','entget','entlast','entmake', - 'entmakex','entmod','entnext','entsel','entupd','eq','equal','eval','exit', - 'exp','expand','expt','fill_image','findfile','fix','float','foreach','function', - 'gc','gcd','get_attr','get_tile','getangle','getcfg','getcname','getcorner', - 'getdist','getenv','getfiled','getint','getkword','getorient','getpoint', - 'getreal','getstring','getvar','graphscr','grclear','grdraw','grread','grtext', - 'grvecs','handent','help','if','initdia','initget','inters','itoa','lambda','last', - 'layoutlist','length','list','listp','load','load_dialog','log','logand','logior', - 'lsh','mapcar','max','mem','member','menucmd','menugroup','min','minusp','mode_tile', - 'namedobjdict','nentsel','nentselp','new_dialog','nil','not','nth','null', - 'numberp','open','or','osnap','polar','prin1','princ','print','progn','prompt', - 'quit','quote','read','read-char','read-line','redraw','regapp','rem','repeat', - 'reverse','rtos','set','set_tile','setcfg','setenv','setfunhelp','setq','setvar', - 'setview','sin','slide_image','snvalid','sqrt','ssadd','ssdel','ssget','ssgetfirst', - 'sslength','ssmemb','ssname','ssnamex','sssetfirst','start_dialog','start_image', - 'start_list','startapp','strcase','strcat','strlen','subst','substr','t','tablet', - 'tblnext','tblobjname','tblsearch','term_dialog','terpri','textbox','textpage', - 'textscr','trace','trans','type','unload_dialog','untrace','vector_image','ver', - 'vports','wcmatch','while','write-char','write-line','xdroom','xdsize','zerop', - 'vl-acad-defun','vl-acad-undefun','vl-arx-import','vlax-3D-point', - 'vlax-add-cmd','vlax-create-object','vlax-curve-getArea', - 'vlax-curve-getClosestPointTo','vlax-curve-getClosestPointToProjection', - 'vlax-curve-getDistAtParam','vlax-curve-getDistAtPoint', - 'vlax-curve-getEndParam','vlax-curve-getEndPoint', - 'vlax-curve-getFirstDeriv','vlax-curve-getParamAtDist', - 'vlax-curve-getParamAtPoint','vlax-curve-getPointAtDist', - 'vlax-curve-getPointAtParam','vlax-curve-getSecondDeriv', - 'vlax-curve-getStartParam','vlax-curve-getStartPoint', - 'vlax-curve-isClosed','vlax-curve-isPeriodic','vlax-curve-isPlanar', - 'vlax-dump-object','vlax-erased-p','vlax-for','vlax-get-acad-object', - 'vlax-get-object','vlax-get-or-create-object','vlax-get-property', - 'vlax-import-type-library','vlax-invoke-method','vlax-ldata-delete', - 'vlax-ldata-get','vlax-ldata-list','vlax-ldata-put','vlax-ldata-test', - 'vlax-make-safearray','vlax-make-variant','vlax-map-collection', - 'vlax-method-applicable-p','vlax-object-released-p','vlax-product-key', - 'vlax-property-available-p','vlax-put-property','vlax-read-enabled-p', - 'vlax-release-object','vlax-remove-cmd','vlax-safearray-fill', - 'vlax-safearray-get-dim','vlax-safearray-get-element', - 'vlax-safearray-get-l-bound','vlax-safearray-get-u-bound', - 'vlax-safearray-put-element','vlax-safearray-type','vlax-tmatrix', - 'vlax-typeinfo-available-p','vlax-variant-change-type', - 'vlax-variant-type','vlax-variant-value','vlax-write-enabled-p', - 'vl-bb-ref','vl-bb-set','vl-catch-all-apply','vl-catch-all-error-message', - 'vl-catch-all-error-p','vl-cmdf','vl-consp','vl-directory-files','vl-doc-export', - 'vl-doc-import','vl-doc-ref','vl-doc-set','vl-every','vl-exit-with-error', - 'vl-exit-with-value','vl-file-copy','vl-file-delete','vl-file-directory-p', - 'vl-filename-base','vl-filename-directory','vl-filename-extension', - 'vl-filename-mktemp','vl-file-rename','vl-file-size','vl-file-systime', - 'vl-get-resource','vlisp-compile','vl-list-exported-functions', - 'vl-list-length','vl-list-loaded-vlx','vl-load-all','vl-load-com', - 'vl-load-reactors','vl-member-if','vl-member-if-not','vl-position', - 'vl-prin1-to-string','vl-princ-to-string','vl-propagate','vlr-acdb-reactor', - 'vlr-add','vlr-added-p','vlr-beep-reaction','vlr-command-reactor', - 'vlr-current-reaction-name','vlr-data','vlr-data-set', - 'vlr-deepclone-reactor','vlr-docmanager-reactor','vlr-dwg-reactor', - 'vlr-dxf-reactor','vlr-editor-reactor','vl-registry-delete', - 'vl-registry-descendents','vl-registry-read','vl-registry-write', - 'vl-remove','vl-remove-if','vl-remove-if-not','vlr-insert-reactor', - 'vlr-linker-reactor','vlr-lisp-reactor','vlr-miscellaneous-reactor', - 'vlr-mouse-reactor','vlr-notification','vlr-object-reactor', - 'vlr-owner-add','vlr-owner-remove','vlr-owners','vlr-pers','vlr-pers-list', - 'vlr-pers-p','vlr-pers-release','vlr-reaction-names','vlr-reactions', - 'vlr-reaction-set','vlr-reactors','vlr-remove','vlr-remove-all', - 'vlr-set-notification','vlr-sysvar-reactor','vlr-toolbar-reactor', - 'vlr-trace-reaction','vlr-type','vlr-types','vlr-undo-reactor', - 'vlr-wblock-reactor','vlr-window-reactor','vlr-xref-reactor', - 'vl-some','vl-sort','vl-sort-i','vl-string-elt','vl-string-left-trim', - 'vl-string-mismatch','vl-string-position','vl-string-right-trim', - 'vl-string-search','vl-string-subst','vl-string-translate','vl-string-trim', - 'vl-symbol-name','vl-symbolp','vl-symbol-value','vl-unload-vlx','vl-vbaload', - 'vl-vbarun','vl-vlx-loaded-p' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/cfdg.php b/system/application/libraries/geshi/cfdg.php deleted file mode 100644 index 8d03b89df..000000000 --- a/system/application/libraries/geshi/cfdg.php +++ /dev/null @@ -1,124 +0,0 @@ -<?php -/************************************************************************************* - * cfdg.php - * -------- - * Author: John Horigan <john@glyphic.com> - * Copyright: (c) 2006 John Horigan http://www.ozonehouse.com/john/ - * Release Version: 1.0.8.6 - * Date Started: 2006/03/11 - * - * CFDG language file for GeSHi. - * - * CHANGES - * ------- - * 2006/03/11 (1.0.0) - * - First Release - * - * TODO (updated 2006/03/11) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'CFDG', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'include', 'startshape', 'rule', 'background' - ), - 2 => array( - 'SQUARE', 'CIRCLE', 'TRIANGLE', - ), - 3 => array( - 'b','brightness','h','hue','sat','saturation', - 'a','alpha','x','y','z','s','size', - 'r','rotate','f','flip','skew','xml_set_object' - ) - ), - 'SYMBOLS' => array( - '[', ']', '{', '}', '*', '|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #717100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #006666;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/cfm.php b/system/application/libraries/geshi/cfm.php deleted file mode 100644 index cdb7bf32c..000000000 --- a/system/application/libraries/geshi/cfm.php +++ /dev/null @@ -1,299 +0,0 @@ -<?php -/************************************************************************************* - * cfm.php - * ------- - * Author: Diego - * Copyright: (c) 2006 Diego - * Release Version: 1.0.8.6 - * Date Started: 2006/02/25 - * - * ColdFusion language file for GeSHi. - * - * CHANGES - * ------- - * 2006/02/25 (1.0.0) - * - First Release - * - * TODO (updated 2006/02/25) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'ColdFusion', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /* CFM Tags */ - 1 => array( - 'cfabort', 'cfapplet', 'cfapplication', 'cfargument', 'cfassociate', - 'cfbreak', 'cfcache', 'cfcase', 'cfcatch', 'cfchart', 'cfchartdata', - 'cfchartseries', 'cfcol', 'cfcollection', 'cfcomponent', - 'cfcontent', 'cfcookie', 'cfdefaultcase', 'cfdirectory', - 'cfdocument', 'cfdocumentitem', 'cfdocumentsection', 'cfdump', - 'cfelse', 'cfelseif', 'cferror', 'cfexecute', 'cfexit', 'cffile', - 'cfflush', 'cfform', 'cfformgroup', 'cfformitem', 'cfftp', - 'cffunction', 'cfgrid', 'cfgridcolumn', 'cfgridrow', 'cfgridupdate', - 'cfheader', 'cfhtmlhead', 'cfhttp', 'cfhttpparam', 'cfif', - 'cfimport', 'cfinclude', 'cfindex', 'cfinput', 'cfinsert', - 'cfinvoke', 'cfinvokeargument', 'cfldap', 'cflocation', 'cflock', - 'cflog', 'cflogin', 'cfloginuser', 'cflogout', 'cfloop', 'cfmail', - 'cfmailparam', 'cfmailpart', 'cfmodule', 'cfNTauthenticate', - 'cfobject', 'cfobjectcache', 'cfoutput', 'cfparam', 'cfpop', - 'cfprocessingdirective', 'cfprocparam', - 'cfprocresult', 'cfproperty', 'cfquery', 'cfqueryparam', - 'cfregistry', 'cfreport', 'cfreportparam', 'cfrethrow', 'cfreturn', - 'cfsavecontent', 'cfschedule', 'cfscript', 'cfsearch', 'cfselect', - 'cfset', 'cfsetting', 'cfsilent', 'cfstoredproc', - 'cfswitch', 'cftable', 'cftextarea', 'cfthrow', 'cftimer', - 'cftrace', 'cftransaction', 'cftree', 'cftreeitem', 'cftry', - 'cfupdate', 'cfwddx' - ), - /* HTML Tags */ - 2 => array( - 'a', 'abbr', 'acronym', 'address', 'applet', - - 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', - - 'caption', 'center', 'cite', 'code', 'colgroup', 'col', - - 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', - - 'em', - - 'fieldset', 'font', 'form', 'frame', 'frameset', - - 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', - - 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', - - 'kbd', - - 'label', 'legend', 'link', 'li', - - 'map', 'meta', - - 'noframes', 'noscript', - - 'object', 'ol', 'optgroup', 'option', - - 'param', 'pre', 'p', - - 'q', - - 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', - - 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', - - 'ul', 'u', - - 'var', - ), - /* HTML attributes */ - 3 => array( - 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', - 'background', 'bgcolor', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', - 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', - 'enctype', - 'face', 'for', 'frame', 'frameborder', - 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', - 'id', 'ismap', - 'label', 'lang', 'language', 'link', 'longdesc', - 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', - 'name', 'nohref', 'noresize', 'noshade', 'nowrap', - 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', - 'profile', 'prompt', - 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', - 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', - 'tabindex', 'target', 'text', 'title', 'type', - 'usemap', - 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', - 'width' - ), - /* CFM Script delimeters */ - 4 => array( - 'var', 'function', 'while', 'if','else' - ), - /* CFM Functions */ - 5 => array( - 'Abs', 'GetFunctionList', 'LSTimeFormat','ACos','GetGatewayHelper','LTrim','AddSOAPRequestHeader','GetHttpRequestData', - 'Max','AddSOAPResponseHeader','GetHttpTimeString','Mid','ArrayAppend','GetLocale','Min','ArrayAvg','GetLocaleDisplayName', - 'Minute','ArrayClear','GetMetaData','Month','ArrayDeleteAt','GetMetricData','MonthAsString','ArrayInsertAt','GetPageContext', - 'Now','ArrayIsEmpty','GetProfileSections','NumberFormat','ArrayLen','GetProfileString','ParagraphFormat','ArrayMax', - 'GetLocalHostIP','ParseDateTime','ArrayMin','GetSOAPRequest','Pi','ArrayNew','GetSOAPRequestHeader','PreserveSingleQuotes', - 'ArrayPrepend','GetSOAPResponse','Quarter','ArrayResize','GetSOAPResponseHeader','QueryAddColumn','ArraySet', - 'GetTempDirectory','QueryAddRow','ArraySort','QueryNew','ArraySum','GetTempFile','QuerySetCell', - 'ArraySwap','GetTickCount','QuotedValueList','ArrayToList','GetTimeZoneInfo','Rand','Asc','GetToken','Randomize', - 'ASin','Hash','RandRange','Atn','Hour','REFind','BinaryDecode','HTMLCodeFormat','REFindNoCase','BinaryEncode', - 'HTMLEditFormat','ReleaseComObject','BitAnd','IIf','RemoveChars','BitMaskClear','IncrementValue','RepeatString', - 'BitMaskRead','InputBaseN','Replace','BitMaskSet','Insert','ReplaceList','BitNot','Int','ReplaceNoCase','BitOr', - 'IsArray','REReplace','BitSHLN','IsBinary','REReplaceNoCase','BitSHRN','IsBoolean','Reverse','BitXor','IsCustomFunction', - 'Right','Ceiling','IsDate','RJustify','CharsetDecode','IsDebugMode','Round','CharsetEncode','IsDefined','RTrim', - 'Chr','IsLeapYear','Second','CJustify','IsLocalHost','SendGatewayMessage','Compare','IsNumeric','SetEncoding', - 'CompareNoCase','IsNumericDate','SetLocale','Cos','IsObject','SetProfileString','CreateDate','IsQuery','SetVariable', - 'CreateDateTime','IsSimpleValue','Sgn','CreateObject','IsSOAPRequest','Sin','CreateODBCDate','IsStruct','SpanExcluding', - 'CreateODBCDateTime','IsUserInRole','SpanIncluding','CreateODBCTime','IsValid','Sqr','CreateTime','IsWDDX','StripCR', - 'CreateTimeSpan','IsXML','StructAppend','CreateUUID','IsXmlAttribute','StructClear','DateAdd','IsXmlDoc','StructCopy', - 'DateCompare','IsXmlElem','StructCount','DateConvert','IsXmlNode','StructDelete','DateDiff','IsXmlRoot','StructFind', - 'DateFormat','JavaCast','StructFindKey','DatePart','JSStringFormat','StructFindValue','Day','LCase','StructGet', - 'DayOfWeek','Left','StructInsert','DayOfWeekAsString','Len','StructIsEmpty','DayOfYear','ListAppend','StructKeyArray', - 'DaysInMonth','ListChangeDelims','StructKeyExists','DaysInYear','ListContains','StructKeyList','DE','ListContainsNoCase', - 'StructNew','DecimalFormat','ListDeleteAt','StructSort','DecrementValue','ListFind','StructUpdate','Decrypt','ListFindNoCase', - 'Tan','DecryptBinary','ListFirst','TimeFormat','DeleteClientVariable','ListGetAt','ToBase64','DirectoryExists', - 'ListInsertAt','ToBinary','DollarFormat','ListLast','ToScript','Duplicate','ListLen','ToString','Encrypt','ListPrepend', - 'Trim','EncryptBinary','ListQualify','UCase','Evaluate','ListRest','URLDecode','Exp','ListSetAt','URLEncodedFormat', - 'ExpandPath','ListSort','URLSessionFormat','FileExists','ListToArray','Val','Find','ListValueCount','ValueList', - 'FindNoCase','ListValueCountNoCase','Week','FindOneOf','LJustify','Wrap','FirstDayOfMonth','Log','WriteOutput', - 'Fix','Log10','XmlChildPos','FormatBaseN','LSCurrencyFormat','XmlElemNew','GetAuthUser','LSDateFormat','XmlFormat', - 'GetBaseTagData','LSEuroCurrencyFormat','XmlGetNodeType','GetBaseTagList','LSIsCurrency','XmlNew','GetBaseTemplatePath', - 'LSIsDate','XmlParse','GetClientVariablesList','LSIsNumeric','XmlSearch','GetCurrentTemplatePath','LSNumberFormat', - 'XmlTransform','GetDirectoryFromPath','LSParseCurrency','XmlValidate','GetEncoding','LSParseDateTime','Year', - 'GetException','LSParseEuroCurrency','YesNoFormat','GetFileFromPath','LSParseNumber' - ), - /* CFM Attributes */ - 6 => array( - 'dbtype','connectstring','datasource','username','password','query','delimeter','description','required','hint','default','access','from','to','list','index' - ), - 7 => array( - 'EQ', 'GT', 'LT', 'GTE', 'LTE', 'IS', 'LIKE', 'NEQ' - ) - ), - 'SYMBOLS' => array( - '/', '=', '{', '}', '(', ')', '[', ']', '<', '>', '&' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #0000FF;', - 4 => 'color: #000000; font-weight: bold;', - 5 => 'color: #0000FF;', - 6 => 'color: #0000FF;', - 7 => 'color: #0000FF;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #0000FF;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #0000FF;' - ), - 'SCRIPT' => array( - 0 => 'color: #808080; font-style: italic;', - 1 => 'color: #00bbdd;', - 2 => 'color: #0000FF;', - 3 => 'color: #000099;', - 4 => 'color: #333333;', - 5 => 'color: #333333;' - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => 'http://december.com/html/4/element/{FNAMEL}.html', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<!--' => '-->' - ), - 1 => array( - '<!DOCTYPE' => '>' - ), - 2 => "/(?!<#)(?:(?:##)*)(#)[a-zA-Z0-9_\.\(\)]+(#)/", - 3 => array( - '<cfscript>' => '</cfscript>' - ), - 4 => array( - '<' => '>' - ), - 5 => '/((?!<!)<)(?:"[^"]*"|\'[^\']*\'|(?R)|[^">])+?(>)/si' - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => false, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ), - 2 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ), - 3 => array( - 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^])', // allow ; before keywords - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords - ), - 7 => array( - 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>&|^])', // allow ; before keywords - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-])', // allow & after keywords - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/cil.php b/system/application/libraries/geshi/cil.php deleted file mode 100644 index 4ca93ecb0..000000000 --- a/system/application/libraries/geshi/cil.php +++ /dev/null @@ -1,196 +0,0 @@ -<?php -/************************************************************************************* - * cil.php - * -------- - * Author: Marcus Griep (neoeinstein+GeSHi@gmail.com) - * Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us) - * Release Version: 1.0.8.6 - * Date Started: 2007/10/24 - * - * CIL (Common Intermediate Language) language file for GeSHi. - * - * CHANGES - * ------- - * 2004/10/24 (1.0.8) - * - First Release - * - * TODO (updated 2007/10/24) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'CIL', - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'COMMENT_SINGLE' => array('//'), - 'COMMENT_MULTI' => array(), - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array(//Dotted - '.zeroinit', '.vtfixup', '.vtentry', '.vtable', '.ver', '.try', '.subsystem', '.size', '.set', '.removeon', - '.publickeytoken', '.publickey', '.property', '.permissionset', '.permission', '.pdirect', '.param', '.pack', - '.override', '.other', '.namespace', '.mresource', '.module', '.method', '.maxstack', '.manifestres', '.locals', - '.localized', '.locale', '.line', '.language', '.import', '.imagebase', '.hash', '.get', '.fire', '.file', '.field', - '.export', '.event', '.entrypoint', '.emitbyte', '.data', '.custom', '.culture', '.ctor', '.corflags', '.class', - '.cctor', '.assembly', '.addon' - ), - 2 => array(//Attributes - 'wrapper', 'with', 'winapi', 'virtual', 'vector', 'vararg', 'value', 'userdefined', 'unused', 'unmanagedexp', - 'unmanaged', 'unicode', 'to', 'tls', 'thiscall', 'synchronized', 'struct', 'strict', 'storage', 'stdcall', - 'static', 'specialname', 'special', 'serializable', 'sequential', 'sealed', 'runtime', 'rtspecialname', 'request', - 'reqsecobj', 'reqrefuse', 'reqopt', 'reqmin', 'record', 'public', 'privatescope', 'private', 'preservesig', - 'prejitgrant', 'prejitdeny', 'platformapi', 'pinvokeimpl', 'pinned', 'permitonly', 'out', 'optil', 'opt', - 'notserialized', 'notremotable', 'not_in_gc_heap', 'noprocess', 'noncaslinkdemand', 'noncasinheritance', - 'noncasdemand', 'nometadata', 'nomangle', 'nomachine', 'noinlining', 'noappdomain', 'newslot', 'nested', 'native', - 'modreq', 'modopt', 'marshal', 'managed', 'literal', 'linkcheck', 'lcid', 'lasterr', 'internalcall', 'interface', - 'instance', 'initonly', 'init', 'inheritcheck', 'in', 'import', 'implicitres', 'implicitcom', 'implements', - 'illegal', 'il', 'hidebysig', 'handler', 'fromunmanaged', 'forwardref', 'fixed', 'finally', 'final', 'filter', - 'filetime', 'field', 'fault', 'fastcall', 'famorassem', 'family', 'famandassem', 'extern', 'extends', 'explicit', - 'error', 'enum', 'endmac', 'deny', 'demand', 'default', 'custom', 'compilercontrolled', 'clsid', 'class', 'cil', - 'cf', 'cdecl', 'catch', 'beforefieldinit', 'autochar', 'auto', 'at', 'assert', 'assembly', 'as', 'any', 'ansi', - 'alignment', 'algorithm', 'abstract' - ), - 3 => array(//Types - 'wchar', 'void', 'variant', 'unsigned', 'valuetype', 'typedref', 'tbstr', 'sysstring', 'syschar', 'string', - 'streamed_object', 'stream', 'stored_object', 'safearray', 'objectref', 'object', 'nullref', 'method', 'lpwstr', - 'lpvoid', 'lptstr', 'lpstruct', 'lpstr', 'iunknown', 'int64', 'int32', 'int16', 'int8', 'int', 'idispatch', - 'hresult', 'float64', 'float32', 'float', 'decimal', 'date', 'currency', 'char', 'carray', 'byvalstr', - 'bytearray', 'boxed', 'bool', 'blob_object', 'blob', 'array' - ), - 4 => array(//Prefix - 'volatile', 'unaligned', 'tail', 'readonly', 'no', 'constrained' - ), - 5 => array(//Suffix - 'un', 'u8', 'u4', 'u2', 'u1', 'u', 's', 'ref', 'r8', 'r4', 'm1', 'i8', 'i4', 'i2', 'i1', 'i'#, '.8', '.7', '.6', '.5', '.4', '.3', '.2', '.1', '.0' - ), - 6 => array(//Base - 'xor', 'switch', 'sub', 'stloc', - 'stind', 'starg', - 'shr', 'shl', 'ret', 'rem', 'pop', 'or', 'not', 'nop', 'neg', 'mul', - 'localloc', 'leave', 'ldnull', 'ldloca', - 'ldloc', 'ldind', 'ldftn', 'ldc', 'ldarga', - 'ldarg', 'jmp', 'initblk', 'endfinally', 'endfilter', - 'endfault', 'dup', 'div', 'cpblk', 'conv', 'clt', 'ckfinite', 'cgt', 'ceq', 'calli', - 'call', 'brzero', 'brtrue', 'brnull', 'brinst', - 'brfalse', 'break', 'br', 'bne', 'blt', 'ble', 'bgt', 'bge', 'beq', 'arglist', - 'and', 'add' - ), - 7 => array(//Object - 'unbox.any', 'unbox', 'throw', 'stsfld', 'stobj', 'stfld', 'stelem', 'sizeof', 'rethrow', 'refanyval', 'refanytype', 'newobj', - 'newarr', 'mkrefany', 'ldvirtftn', 'ldtoken', 'ldstr', 'ldsflda', 'ldsfld', 'ldobj', 'ldlen', 'ldflda', 'ldfld', - 'ldelema', 'ldelem', 'isinst', 'initobj', 'cpobj', 'castclass', - 'callvirt', 'callmostderived', 'box' - ), - 8 => array(//Other - 'prefixref', 'prefix7', 'prefix6', 'prefix5', 'prefix4', 'prefix3', 'prefix2', 'prefix1', 'prefix0' - ), - 9 => array(//Literal - 'true', 'null', 'false' - ), - 10 => array(//Comment-like - '#line', '^THE_END^' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '!!' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true, - 10 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:maroon;font-weight:bold;', - 2 => 'color:blue;font-weight:bold;', - 3 => 'color:purple;font-weight:bold;', - 4 => 'color:teal;', - 5 => 'color:blue;', - 6 => 'color:blue;', - 7 => 'color:blue;', - 8 => 'color:blue;', - 9 => 'color:00008B', - 10 => 'color:gray' - ), - 'COMMENTS' => array( - 0 => 'color:gray;font-style:italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #006400;' - ), - 'STRINGS' => array( - 0 => 'color: #008000;' - ), - 'NUMBERS' => array( - 0 => 'color: #00008B;' - ), - 'METHODS' => array( - 1 => 'color: #000033;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006400;' - ), - 'REGEXPS' => array( - 0 => 'color:blue;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '', - 10 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '::' - ), - 'REGEXPS' => array( - 0 => '(?<=ldc\\.i4\\.)[0-8]|(?<=(?:ldarg|ldloc|stloc)\\.)[0-3]' # Pickup the opcodes that end with integers - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/clojure.php b/system/application/libraries/geshi/clojure.php deleted file mode 100644 index b970deea8..000000000 --- a/system/application/libraries/geshi/clojure.php +++ /dev/null @@ -1,134 +0,0 @@ -<?php -/************************************************************************************* - * clojure.php - * -------- - * Author: Jess Johnson (jess@grok-code.com) - * Copyright: (c) 2009 Jess Johnson (http://grok-code.com) - * Release Version: 1.0.8.6 - * Date Started: 2009/09/20 - * - * Clojure language file for GeSHi. - * - * This file borrows significantly from the lisp language file for GeSHi - * - * CHANGES - * ------- - * 2009/09/20 (1.0.8.6) - * - First Release - * - * TODO (updated 2009/09/20) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Clojure', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(';|' => '|;'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'defn', 'defn-', 'defmulti', 'defmethod', 'defmacro', 'deftest', - 'defstruct', 'def', 'defonce', 'let', 'letfn', 'do', 'cond', 'condp', - 'for', 'loop', 'recur', 'when', 'when-not', 'when-let', 'when-first', - 'if', 'if-let', 'if-not', 'doto', 'and', 'or', - 'dosync', 'doseq', 'dotimes', 'dorun', 'doall', - 'load', 'import', 'unimport', 'ns', 'in-ns', 'refer', - 'try', 'catch', 'finally', 'throw', - 'with-open', 'with-local-vars', 'binding', - 'gen-class', 'gen-and-load-class', 'gen-and-save-class', - 'implement', 'proxy', 'lazy-cons', 'with-meta', - 'struct', 'struct-map', 'delay', 'locking', 'sync', 'time', 'apply', - 'remove', 'merge', 'interleave', 'interpose', 'distinct', - 'cons', 'concat', 'lazy-cat', 'cycle', 'rest', 'frest', 'drop', - 'drop-while', 'nthrest', 'take', 'take-while', 'take-nth', 'butlast', - 'reverse', 'sort', 'sort-by', 'split-at', 'partition', 'split-with', - 'first', 'ffirst', 'rfirst', 'zipmap', 'into', 'set', 'vec', - 'to-array-2d', 'not-empty', 'seq?', 'not-every?', 'every?', 'not-any?', - 'map', 'mapcat', 'vector?', 'list?', 'hash-map', 'reduce', 'filter', - 'vals', 'keys', 'rseq', 'subseq', 'rsubseq', 'count', 'empty?', - 'fnseq', 'repeatedly', 'iterate', 'drop-last', - 'repeat', 'replicate', 'range', 'into-array', - 'line-seq', 'resultset-seq', 're-seq', 're-find', 'tree-seq', 'file-seq', - 'iterator-seq', 'enumeration-seq', 'declare', 'xml-seq', - 'symbol?', 'string?', 'vector', 'conj', 'str', - 'pos?', 'neg?', 'zero?', 'nil?', 'inc', 'format', - 'alter', 'commute', 'ref-set', 'floor', 'assoc', 'send', 'send-off' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|', '.', '..', '->', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #555;', - 1 => 'color: #555;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - '::', ':' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/cmake.php b/system/application/libraries/geshi/cmake.php deleted file mode 100644 index a9cfaafdc..000000000 --- a/system/application/libraries/geshi/cmake.php +++ /dev/null @@ -1,181 +0,0 @@ -<?php -/************************************************************************************* - * cmake.php - * ------- - * Author: Daniel Nelson (danieln@eng.utah.edu) - * Copyright: (c) 2009 Daniel Nelson - * Release Version: 1.0.8.6 - * Date Started: 2009/04/06 - * - * CMake language file for GeSHi. - * - * Keyword list generated using CMake 2.6.3. - * - * CHANGES - * ------- - * <date-of-release> (<GeSHi release>) - * - First Release - * - * TODO (updated <date-of-release>) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'CMake', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'ESCAPE_REGEXP' => array( - // Quoted variables ${...} - 1 => "/\\$(ENV)?\\{[^\\n\\}]*?\\}/i", - // Quoted registry keys [...] - 2 => "/\\[HKEY[^\n\\]]*?]/i" - ), - 'KEYWORDS' => array( - 1 => array( - 'add_custom_command', 'add_custom_target', 'add_definitions', - 'add_dependencies', 'add_executable', 'add_library', - 'add_subdirectory', 'add_test', 'aux_source_directory', 'break', - 'build_command', 'cmake_minimum_required', 'cmake_policy', - 'configure_file', 'create_test_sourcelist', 'define_property', - 'else', 'elseif', 'enable_language', 'enable_testing', - 'endforeach', 'endfunction', 'endif', 'endmacro', - 'endwhile', 'execute_process', 'export', 'file', 'find_file', - 'find_library', 'find_package', 'find_path', 'find_program', - 'fltk_wrap_ui', 'foreach', 'function', 'get_cmake_property', - 'get_directory_property', 'get_filename_component', 'get_property', - 'get_source_file_property', 'get_target_property', - 'get_test_property', 'if', 'include', 'include_directories', - 'include_external_msproject', 'include_regular_expression', - 'install', 'link_directories', 'list', 'load_cache', - 'load_command', 'macro', 'mark_as_advanced', 'math', 'message', - 'option', 'output_required_files', 'project', 'qt_wrap_cpp', - 'qt_wrap_ui', 'remove_definitions', 'return', 'separate_arguments', - 'set', 'set_directory_properties', 'set_property', - 'set_source_files_properties', 'set_target_properties', - 'set_tests_properties', 'site_name', 'source_group', 'string', - 'target_link_libraries', 'try_compile', 'try_run', 'unset', - 'variable_watch', 'while' - ), - 2 => array( - // Deprecated commands - 'build_name', 'exec_program', 'export_library_dependencies', - 'install_files', 'install_programs', 'install_targets', - 'link_libraries', 'make_directory', 'remove', 'subdir_depends', - 'subdirs', 'use_mangled_mesa', 'utility_source', - 'variable_requires', 'write_file' - ), - 3 => array( - // Special command arguments, this list is not comprehesive. - 'AND', 'APPEND', 'ASCII', 'BOOL', 'CACHE', 'COMMAND', 'COMMENT', - 'COMPARE', 'CONFIGURE', 'DEFINED', 'DEPENDS', 'DIRECTORY', - 'EQUAL', 'EXCLUDE_FROM_ALL', 'EXISTS', 'FALSE', 'FATAL_ERROR', - 'FILEPATH', 'FIND', 'FORCE', 'GET', 'GLOBAL', 'GREATER', - 'IMPLICIT_DEPENDS', 'INSERT', 'INTERNAL', 'IS_ABSOLUTE', - 'IS_DIRECTORY', 'IS_NEWER_THAN', 'LENGTH', 'LESS', - 'MAIN_DEPENDENCY', 'MATCH', 'MATCHALL', 'MATCHES', 'MODULE', 'NOT', - 'NOTFOUND', 'OFF', 'ON', 'OR', 'OUTPUT', 'PARENT_SCOPE', 'PATH', - 'POLICY', 'POST_BUILD', 'PRE_BUILD', 'PRE_LINK', 'PROPERTY', - 'RANDOM', 'REGEX', 'REMOVE_AT', 'REMOVE_DUPLICATES', 'REMOVE_ITEM', - 'REPLACE', 'REVERSE', 'SEND_ERROR', 'SHARED', 'SORT', 'SOURCE', - 'STATIC', 'STATUS', 'STREQUAL', 'STRGREATER', 'STRING', 'STRIP', - 'STRLESS', 'SUBSTRING', 'TARGET', 'TEST', 'TOLOWER', 'TOUPPER', - 'TRUE', 'VERBATIM', 'VERSION', 'VERSION_EQUAL', 'VERSION_GREATOR', - 'VERSION_LESS', 'WORKING_DIRECTORY', - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => true - ), - 'SYMBOLS' => array( - 0 => array('(', ')') - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #1f3f81; font-style: bold;', - 2 => 'color: #1f3f81;', - 3 => 'color: #077807; font-sytle: italic;' - ), - 'BRACKETS' => array(), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #b08000;', - 2 => 'color: #0000cd;' - ), - 'STRINGS' => array( - 0 => 'color: #912f11;', - ), - 'SYMBOLS' => array( - 0 => 'color: #197d8b;' - ), - 'NUMBERS' => array(), - 'METHODS' => array(), - 'REGEXPS' => array( - 0 => 'color: #b08000;', - 1 => 'color: #0000cd;' - ), - 'SCRIPT' => array() - ), - 'URLS' => array( - 1 => 'http://www.cmake.org/cmake/help/cmake2.6docs.html#command:{FNAMEL}', - 2 => 'http://www.cmake.org/cmake/help/cmake2.6docs.html#command:{FNAMEL}', - 3 => '', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - // Unquoted variables - 0 => "\\$(ENV)?\\{[^\\n}]*?\\}", - // Unquoted registry keys - 1 => "\\[HKEY[^\n\\]]*?]" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - // These keywords cannot come after a open paren - 1 => array( - 'DISALLOWED_AFTER' => '(?= *\()' - ), - 2 => array( - 'DISALLOWED_AFTER' => '(?= *\()' - ) - ), - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'METHODS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/cobol.php b/system/application/libraries/geshi/cobol.php deleted file mode 100644 index 63abf3f09..000000000 --- a/system/application/libraries/geshi/cobol.php +++ /dev/null @@ -1,244 +0,0 @@ -<?php -/************************************************************************************* - * cobol.php - * ---------- - * Author: BenBE (BenBE@omorphia.org) - * Copyright: (c) 2007-2008 BenBE (http://www.omorphia.de/) - * Release Version: 1.0.8.6 - * Date Started: 2007/07/02 - * - * COBOL language file for GeSHi. - * - * CHANGES - * ------- - * - * TODO (updated 2007/07/02) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'COBOL', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(1 => '/^\*.*?$/m'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_SCI_SHORT | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( //Compiler Directives - 'ANSI', 'BLANK', 'NOBLANK', 'CALL-SHARED', 'CANCEL', 'NOCANCEL', - 'CHECK', 'CODE', 'NOCODE', 'COLUMNS', 'COMPACT', 'NOCOMPACT', - 'COMPILE', 'CONSULT', 'NOCONSULT', 'CROSSREF', 'NOCROSSREF', - 'DIAGNOSE-74', 'NODIAGNOSE-74', 'DIAGNOSE-85', 'NODIAGNOSE-85', - 'DIAGNOSEALL', 'NODIAGNOSEALL', 'ENDIF', 'ENDUNIT', 'ENV', - 'ERRORFILE', 'ERRORS', 'FIPS', 'NOFIPS', 'FMAP', 'HEADING', 'HEAP', - 'HIGHPIN', 'HIGHREQUESTERS', 'ICODE', 'NOICODE', 'IF', 'IFNOT', - 'INNERLIST', 'NOINNERLIST', 'INSPECT', 'NOINSPECT', 'LARGEDATA', - 'LD', 'LESS-CODE', 'LIBRARY', 'LINES', 'LIST', 'NOLIST', 'LMAP', - 'NOLMAP', 'MAIN', 'MAP', 'NOMAP', 'NLD', 'NONSTOP', 'NON-SHARED', - 'OPTIMIZE', 'PERFORM-TRACE', 'PORT', 'NOPORT', 'RESETTOG', - 'RUNNABLE', 'RUNNAMED', 'SAVE', 'SAVEABEND', 'NOSAVEABEND', - 'SEARCH', 'NOSEARCH', 'SECTION', 'SETTOG', 'SHARED', 'SHOWCOPY', - 'NOSHOWCOPY', 'SHOWFILE', 'NOSHOWFILE', 'SOURCE', 'SQL', 'NOSQL', - 'SQLMEM', 'SUBSET', 'SUBTYPE', 'SUPPRESS', 'NOSUPPRESS', 'SYMBOLS', - 'NOSYMBOLS', 'SYNTAX', 'TANDEM', 'TRAP2', 'NOTRAP2', 'TRAP2-74', - 'NOTRAP2-74', 'UL', 'WARN', 'NOWARN' - ), - 2 => array( //Statement Keywords - 'ACCEPT', 'ADD', 'TO', 'GIVING', 'CORRESPONDING', 'ALTER', 'CALL', - 'CHECKPOINT', 'CLOSE', 'COMPUTE', 'CONTINUE', 'COPY', - 'DELETE', 'DISPLAY', 'DIVIDE', 'INTO', 'REMAINDER', 'ENTER', - 'COBOL', 'EVALUATE', 'EXIT', 'GO', 'INITIALIZE', - 'TALLYING', 'REPLACING', 'CONVERTING', 'LOCKFILE', 'MERGE', 'MOVE', - 'MULTIPLY', 'OPEN', 'PERFORM', 'TIMES', - 'UNTIL', 'VARYING', 'RETURN', - ), - 3 => array( //Reserved in some contexts - 'ACCESS', 'ADDRESS', 'ADVANCING', 'AFTER', 'ALL', - 'ALPHABET', 'ALPHABETIC', 'ALPHABETIC-LOWER', 'ALPHABETIC-UPPER', - 'ALPHANUMERIC', 'ALPHANUMERIC-EDITED', 'ALSO', 'ALTERNATE', - 'AND', 'ANY', 'APPROXIMATE', 'AREA', 'AREAS', 'ASCENDING', 'ASSIGN', - 'AT', 'AUTHOR', 'BEFORE', 'BINARY', 'BLOCK', 'BOTTOM', 'BY', - 'CD', 'CF', 'CH', 'CHARACTER', 'CHARACTERS', - 'CHARACTER-SET', 'CLASS', 'CLOCK-UNITS', - 'CODE-SET', 'COLLATING', 'COLUMN', 'COMMA', - 'COMMON', 'COMMUNICATION', 'COMP', 'COMP-3', 'COMP-5', - 'COMPUTATIONAL', 'COMPUTATIONAL-3', 'COMPUTATIONAL-5', - 'CONFIGURATION', 'CONTAINS', 'CONTENT', 'CONTROL', - 'CONTROLS', 'CORR', 'COUNT', - 'CURRENCY', 'DATA', 'DATE', 'DATE-COMPILED', 'DATE-WRITTEN', 'DAY', - 'DAY-OF-WEEK', 'DE', 'DEBUG-CONTENTS', 'DEBUG-ITEM', 'DEBUG-LINE', - 'DEBUG-SUB-2', 'DEBUG-SUB-3', 'DEBUGGING', 'DECIMAL-POINT', - 'DECLARATIVES', 'DEBUG-NAME', 'DEBUG-SUB-1', 'DELIMITED', - 'DELIMITER', 'DEPENDING', 'DESCENDING', 'DESTINATION', 'DETAIL', - 'DISABLE', 'DIVISION', 'DOWN', 'DUPLICATES', - 'DYNAMIC', 'EGI', 'ELSE', 'EMI', 'ENABLE', 'END', 'END-ADD', - 'END-COMPUTE', 'END-DELETE', 'END-DIVIDE', 'END-EVALUATE', 'END-IF', - 'END-MULTIPLY', 'END-OF-PAGE', 'END-PERFORM', 'END-READ', - 'END-RECEIVE', 'END-RETURN', 'END-REWRITE', 'END-SEARCH', - 'END-START', 'END-STRING', 'END-SUBTRACT', 'END-UNSTRING', - 'END-WRITE', 'EOP', 'EQUAL', 'ERROR', 'ESI', - 'EVERY', 'EXCEPTION', 'EXCLUSIVE', 'EXTEND', - 'EXTENDED-STORAGE', 'EXTERNAL', 'FALSE', 'FD', 'FILE', - 'FILE-CONTROL', 'FILLER', 'FINAL', 'FIRST', 'FOOTING', 'FOR', - 'FROM', 'FUNCTION', 'GENERATE', 'GENERIC', 'GLOBAL', - 'GREATER', 'GROUP', 'GUARDIAN-ERR', 'HIGH-VALUE', - 'HIGH-VALUES', 'I-O', 'I-O-CONTROL', 'IDENTIFICATION', 'IN', - 'INDEX', 'INDEXED', 'INDICATE', 'INITIAL', 'INITIATE', - 'INPUT', 'INPUT-OUTPUT', 'INSTALLATION', - 'INVALID', 'IS', 'JUST', 'JUSTIFIED', 'KEY', 'LABEL', 'LAST', - 'LEADING', 'LEFT', 'LESS', 'LIMIT', 'LIMITS', 'LINAGE', - 'LINAGE-COUNTER', 'LINE', 'LINE-COUNTER', 'LINKAGE', 'LOCK', - 'LOW-VALUE', 'LOW-VALUES', 'MEMORY', 'MESSAGE', - 'MODE', 'MODULES', 'MULTIPLE', 'NATIVE', - 'NEGATIVE', 'NEXT', 'NO', 'NOT', 'NULL', 'NULLS', 'NUMBER', - 'NUMERIC', 'NUMERIC-EDITED', 'OBJECT-COMPUTER', 'OCCURS', 'OF', - 'OFF', 'OMITTED', 'ON', 'OPTIONAL', 'OR', 'ORDER', - 'ORGANIZATION', 'OTHER', 'OUTPUT', 'OVERFLOW', 'PACKED-DECIMAL', - 'PADDING', 'PAGE', 'PAGE-COUNTER', 'PF', 'PH', 'PIC', - 'PICTURE', 'PLUS', 'POINTER', 'POSITION', 'POSITIVE', 'PRINTING', - 'PROCEDURE', 'PROCEDURES', 'PROCEED', 'PROGRAM', 'PROGRAM-ID', - 'PROGRAM-STATUS', 'PROGRAM-STATUS-1', 'PROGRAM-STATUS-2', 'PROMPT', - 'PROTECTED', 'PURGE', 'QUEUE', 'QUOTE', 'QUOTES', 'RD', - 'RECEIVE', 'RECEIVE-CONTROL', 'RECORD', 'RECORDS', - 'REDEFINES', 'REEL', 'REFERENCE', 'REFERENCES', 'RELATIVE', - 'REMOVAL', 'RENAMES', 'REPLACE', - 'REPLY', 'REPORT', 'REPORTING', 'REPORTS', 'RERUN', - 'RESERVE', 'RESET', 'REVERSED', 'REWIND', 'REWRITE', 'RF', - 'RH', 'RIGHT', 'ROUNDED', 'RUN', 'SAME', 'SD', - 'SECURITY', 'SEGMENT', 'SEGMENT-LIMIT', 'SELECT', 'SEND', - 'SENTENCE', 'SEPARATE', 'SEQUENCE', 'SEQUENTIAL', 'SET', - 'SIGN', 'SIZE', 'SORT', 'SORT-MERGE', 'SOURCE-COMPUTER', - 'SPACE', 'SPACES', 'SPECIAL-NAMES', 'STANDARD', 'STANDARD-1', - 'STANDARD-2', 'START', 'STARTBACKUP', 'STATUS', 'STOP', 'STRING', - 'SUB-QUEUE-1', 'SUB-QUEUE-2', 'SUB-QUEUE-3', 'SUBTRACT', - 'SYMBOLIC', 'SYNC', 'SYNCDEPTH', 'SYNCHRONIZED', - 'TABLE', 'TAL', 'TAPE', 'TERMINAL', 'TERMINATE', 'TEST', - 'TEXT', 'THAN', 'THEN', 'THROUGH', 'THRU', 'TIME', - 'TOP', 'TRAILING', 'TRUE', 'TYPE', 'UNIT', 'UNLOCK', 'UNLOCKFILE', - 'UNLOCKRECORD', 'UNSTRING', 'UP', 'UPON', 'USAGE', 'USE', - 'USING', 'VALUE', 'VALUES', 'WHEN', 'WITH', 'WORDS', - 'WORKING-STORAGE', 'WRITE', 'ZERO', 'ZEROES' - ), - 4 => array( //Standard functions - 'ACOS', 'ANNUITY', 'ASIN', 'ATAN', 'CHAR', 'COS', 'CURRENT-DATE', - 'DATE-OF-INTEGER', 'DAY-OF-INTEGER', 'FACTORIAL', 'INTEGER', - 'INTEGER-OF-DATE', 'INTEGER-OF-DAY', 'INTEGER-PART', 'LENGTH', - 'LOG', 'LOG10', 'LOWER-CASE', 'MAX', 'MEAN', 'MEDIAN', 'MIDRANGE', - 'MIN', 'MOD', 'NUMVAL', 'NUMVAL-C', 'ORD', 'ORD-MAX', 'ORD-MIN', - 'PRESENT-VALUE', 'RANDOM', 'RANGE', 'REM', 'REVERSE', 'SIN', 'SQRT', - 'STANDARD-DEVIATION', 'SUM', 'TAN', 'UPPER-CASE', 'VARIANCE', - 'WHEN-COMPILED' - ), - 5 => array( //Privileged Built-in Functions - '#IN', '#OUT', '#TERM', '#TEMP', '#DYNAMIC', 'COBOL85^ARMTRAP', - 'COBOL85^COMPLETION', 'COBOL_COMPLETION_', 'COBOL_CONTROL_', - 'COBOL_GETENV_', 'COBOL_PUTENV_', 'COBOL85^RETURN^SORT^ERRORS', - 'COBOL_RETURN_SORT_ERRORS_', 'COBOL85^REWIND^SEQUENTIAL', - 'COBOL_REWIND_SEQUENTIAL_', 'COBOL85^SET^SORT^PARAM^TEXT', - 'COBOL_SET_SORT_PARAM_TEXT_', 'COBOL85^SET^SORT^PARAM^VALUE', - 'COBOL_SET_SORT_PARAM_VALUE_', 'COBOL_SET_MAX_RECORD_', - 'COBOL_SETMODE_', 'COBOL85^SPECIAL^OPEN', 'COBOL_SPECIAL_OPEN_', - 'COBOLASSIGN', 'COBOL_ASSIGN_', 'COBOLFILEINFO', 'COBOL_FILE_INFO_', - 'COBOLSPOOLOPEN', 'CREATEPROCESS', 'ALTERPARAMTEXT', - 'CHECKLOGICALNAME', 'CHECKMESSAGE', 'DELETEASSIGN', 'DELETEPARAM', - 'DELETESTARTUP', 'GETASSIGNTEXT', 'GETASSIGNVALUE', 'GETBACKUPCPU', - 'GETPARAMTEXT', 'GETSTARTUPTEXT', 'PUTASSIGNTEXT', 'PUTASSIGNVALUE', - 'PUTPARAMTEXT', 'PUTSTARTUPTEXT' - ) - ), - 'SYMBOLS' => array( - //Avoid having - in identifiers marked as symbols - ' + ', ' - ', ' * ', ' / ', ' ** ', - '.', ',', - '=', - '(', ')', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #008000; font-weight: bold;', - 4 => 'color: #000080;', - 5 => 'color: #008000;', - ), - 'COMMENTS' => array( - 1 => 'color: #a0a0a0; font-style: italic;', - 'MULTI' => 'color: #a0a0a0; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #339933;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #993399;' - ), - 'METHODS' => array( - 1 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 - ); - -?> diff --git a/system/application/libraries/geshi/cpp-qt.php b/system/application/libraries/geshi/cpp-qt.php deleted file mode 100644 index a96cd38af..000000000 --- a/system/application/libraries/geshi/cpp-qt.php +++ /dev/null @@ -1,550 +0,0 @@ -<?php -/************************************************************************************* - * cpp.php - * ------- - * Author: Iulian M - * Copyright: (c) 2006 Iulian M - * Release Version: 1.0.8.6 - * Date Started: 2004/09/27 - * - * C++ (with QT extensions) language file for GeSHi. - * - * CHANGES - * ------- - * 2009/06/28 (1.0.8.4) - * - Updated list of Keywords from Qt 4.5 - * - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'C++ (QT)', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'case', 'continue', 'default', 'do', 'else', 'for', 'goto', 'if', 'return', - 'switch', 'while', 'delete', 'new', 'this' - ), - 2 => array( - 'NULL', 'false', 'break', 'true', 'enum', 'errno', 'EDOM', - 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', - 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', - 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', - 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', - 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', - 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', - 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', - 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', - 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', - 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr', - 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC', - 'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace', - 'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast', - 'static_cast', 'explicit', 'friend', 'wchar_t', 'typename', 'typeid', 'class' , - 'foreach','connect', 'Q_OBJECT' , 'slots' , 'signals', 'Q_SIGNALS', 'Q_SLOTS', - 'Q_FOREACH', 'QCOMPARE', 'QVERIFY', 'qDebug', 'kDebug', 'QBENCHMARK' - ), - 3 => array( - 'cin', 'cerr', 'clog', 'cout', - 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', - 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', - 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', - 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', - 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', - 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', - 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', - 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', - 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', - 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', - 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', - 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', - 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', - 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', - 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', - 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', - 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', - 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', - 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' - ), - 4 => array( - 'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint', - 'register', 'short', 'shortint', 'signed', 'static', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf', - 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', - 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', - ), - 5 => array( - "Q_UINT16", "Q_UINT32", "Q_UINT64", "Q_UINT8", "Q_ULLONG", - "Q_ULONG", "Q3Accel", "Q3Action", "Q3ActionGroup", "Q3AsciiBucket", - "Q3AsciiCache", "Q3AsciiCacheIterator", "Q3AsciiDict", - "Q3AsciiDictIterator", "Q3BaseBucket", "Q3BoxLayout", "Q3Button", - "Q3ButtonGroup", "Q3Cache", "Q3CacheIterator", "Q3Canvas", - "Q3CanvasEllipse", "Q3CanvasItem", "Q3CanvasItemList", - "Q3CanvasLine", "Q3CanvasPixmap", "Q3CanvasPixmapArray", - "Q3CanvasPolygon", "Q3CanvasPolygonalItem", "Q3CanvasRectangle", - "Q3CanvasSpline", "Q3CanvasSprite", "Q3CanvasText", "Q3CanvasView", - "Q3CheckListItem", "Q3CheckTableItem", "Q3CleanupHandler", - "Q3ColorDrag", "Q3ComboBox", "Q3ComboTableItem", "Q3CString", - "Q3DataBrowser", "Q3DataTable", "Q3DataView", "Q3DateEdit", - "Q3DateTimeEdit", "Q3DateTimeEditBase", "Q3DeepCopy", "Q3Dict", - "Q3DictIterator", "Q3Dns", "Q3DnsSocket", "Q3DockArea", - "Q3DockAreaLayout", "Q3DockWindow", "Q3DragObject", "Q3DropSite", - "Q3EditorFactory", "Q3FileDialog", "Q3FileIconProvider", - "Q3FilePreview", "Q3Frame", "Q3Ftp", "Q3GArray", "Q3GCache", - "Q3GCacheIterator", "Q3GDict", "Q3GDictIterator", "Q3GList", - "Q3GListIterator", "Q3GListStdIterator", "Q3Grid", "Q3GridLayout", - "Q3GridView", "Q3GroupBox", "Q3GVector", "Q3HBox", "Q3HBoxLayout", - "Q3HButtonGroup", "Q3Header", "Q3HGroupBox", "Q3Http", - "Q3HttpHeader", "Q3HttpRequestHeader", "Q3HttpResponseHeader", - "Q3IconDrag", "Q3IconDragItem", "Q3IconView", "Q3IconViewItem", - "Q3ImageDrag", "Q3IntBucket", "Q3IntCache", "Q3IntCacheIterator", - "Q3IntDict", "Q3IntDictIterator", "Q3ListBox", "Q3ListBoxItem", - "Q3ListBoxPixmap", "Q3ListBoxText", "Q3ListView", "Q3ListViewItem", - "Q3ListViewItemIterator", "Q3LNode", "Q3LocalFs", "Q3MainWindow", - "Q3MemArray", "Q3MimeSourceFactory", "Q3MultiLineEdit", - "Q3NetworkOperation", "Q3NetworkProtocol", "Q3NetworkProtocolDict", - "Q3NetworkProtocolFactory", "Q3NetworkProtocolFactoryBase", - "Q3ObjectDictionary", "Q3PaintDeviceMetrics", "Q3Painter", - "Q3Picture", "Q3PointArray", "Q3PolygonScanner", "Q3PopupMenu", - "Q3Process", "Q3ProgressBar", "Q3ProgressDialog", "Q3PtrBucket", - "Q3PtrCollection", "Q3PtrDict", "Q3PtrDictIterator", "Q3PtrList", - "Q3PtrListIterator", "Q3PtrListStdIterator", "Q3PtrQueue", - "Q3PtrStack", "Q3PtrVector", "Q3RangeControl", "Q3ScrollView", - "Q3Semaphore", "Q3ServerSocket", "Q3Shared", "Q3Signal", - "Q3SimpleRichText", "Q3SingleCleanupHandler", "Q3Socket", - "Q3SocketDevice", "Q3SortedList", "Q3SpinWidget", "Q3SqlCursor", - "Q3SqlEditorFactory", "Q3SqlFieldInfo", "Q3SqlFieldInfoList", - "Q3SqlForm", "Q3SqlPropertyMap", "Q3SqlRecordInfo", - "Q3SqlSelectCursor", "Q3StoredDrag", "Q3StrIList", "Q3StringBucket", - "Q3StrIVec", "Q3StrList", "Q3StrListIterator", "Q3StrVec", - "Q3StyleSheet", "Q3StyleSheetItem", "Q3SyntaxHighlighter", - "Q3TabDialog", "Q3Table", "Q3TableItem", "Q3TableSelection", - "Q3TextBrowser", "Q3TextDrag", "Q3TextEdit", - "Q3TextEditOptimPrivate", "Q3TextStream", "Q3TextView", - "Q3TimeEdit", "Q3ToolBar", "Q3TSFUNC", "Q3UriDrag", "Q3Url", - "Q3UrlOperator", "Q3ValueList", "Q3ValueListConstIterator", - "Q3ValueListIterator", "Q3ValueStack", "Q3ValueVector", "Q3VBox", - "Q3VBoxLayout", "Q3VButtonGroup", "Q3VGroupBox", "Q3WhatsThis", - "Q3WidgetStack", "Q3Wizard", "QAbstractButton", - "QAbstractEventDispatcher", "QAbstractExtensionFactory", - "QAbstractExtensionManager", "QAbstractFileEngine", - "QAbstractFileEngineHandler", "QAbstractFileEngineIterator", - "QAbstractFormBuilder", "QAbstractGraphicsShapeItem", - "QAbstractItemDelegate", "QAbstractItemModel", "QAbstractItemView", - "QAbstractListModel", "QAbstractMessageHandler", - "QAbstractNetworkCache", "QAbstractPageSetupDialog", - "QAbstractPrintDialog", "QAbstractProxyModel", - "QAbstractScrollArea", "QAbstractSlider", "QAbstractSocket", - "QAbstractSpinBox", "QAbstractTableModel", - "QAbstractTextDocumentLayout", "QAbstractUndoItem", - "QAbstractUriResolver", "QAbstractXmlNodeModel", - "QAbstractXmlReceiver", "QAccessible", "QAccessible2Interface", - "QAccessibleApplication", "QAccessibleBridge", - "QAccessibleBridgeFactoryInterface", "QAccessibleBridgePlugin", - "QAccessibleEditableTextInterface", "QAccessibleEvent", - "QAccessibleFactoryInterface", "QAccessibleInterface", - "QAccessibleInterfaceEx", "QAccessibleObject", - "QAccessibleObjectEx", "QAccessiblePlugin", - "QAccessibleSimpleEditableTextInterface", - "QAccessibleTableInterface", "QAccessibleTextInterface", - "QAccessibleValueInterface", "QAccessibleWidget", - "QAccessibleWidgetEx", "QAction", "QActionEvent", "QActionGroup", - "QApplication", "QArgument", "QAssistantClient", "QAtomicInt", - "QAtomicPointer", "QAuthenticator", "QBasicAtomicInt", - "QBasicAtomicPointer", "QBasicTimer", "QBitArray", "QBitmap", - "QBitRef", "QBool", "QBoxLayout", "QBrush", "QBrushData", "QBuffer", - "QButtonGroup", "QByteArray", "QByteArrayMatcher", "QByteRef", - "QCache", "QCalendarWidget", "QCDEStyle", "QChar", "QCharRef", - "QCheckBox", "QChildEvent", "QCleanlooksStyle", "QClipboard", - "QClipboardEvent", "QCloseEvent", "QColor", "QColorDialog", - "QColorGroup", "QColormap", "QColumnView", "QComboBox", - "QCommandLinkButton", "QCommonStyle", "QCompleter", - "QConicalGradient", "QConstString", "QContextMenuEvent", "QCOORD", - "QCoreApplication", "QCryptographicHash", "QCursor", "QCursorShape", - "QCustomEvent", "QDataStream", "QDataWidgetMapper", "QDate", - "QDateEdit", "QDateTime", "QDateTimeEdit", "QDB2Driver", - "QDB2Result", "QDBusAbstractAdaptor", "QDBusAbstractInterface", - "QDBusArgument", "QDBusConnection", "QDBusConnectionInterface", - "QDBusContext", "QDBusError", "QDBusInterface", "QDBusMessage", - "QDBusMetaType", "QDBusObjectPath", "QDBusPendingCall", - "QDBusPendingCallWatcher", "QDBusPendingReply", - "QDBusPendingReplyData", "QDBusReply", "QDBusServer", - "QDBusSignature", "QDBusVariant", "QDebug", - "QDesignerActionEditorInterface", "QDesignerBrushManagerInterface", - "QDesignerComponents", "QDesignerContainerExtension", - "QDesignerCustomWidgetCollectionInterface", - "QDesignerCustomWidgetInterface", "QDesignerDnDItemInterface", - "QDesignerDynamicPropertySheetExtension", "QDesignerExportWidget", - "QDesignerExtraInfoExtension", "QDesignerFormEditorInterface", - "QDesignerFormEditorPluginInterface", "QDesignerFormWindowCursorInterface", - "QDesignerFormWindowInterface", "QDesignerFormWindowManagerInterface", - "QDesignerFormWindowToolInterface", - "QDesignerIconCacheInterface", "QDesignerIntegrationInterface", - "QDesignerLanguageExtension", "QDesignerLayoutDecorationExtension", - "QDesignerMemberSheetExtension", "QDesignerMetaDataBaseInterface", - "QDesignerMetaDataBaseItemInterface", - "QDesignerObjectInspectorInterface", "QDesignerPromotionInterface", - "QDesignerPropertyEditorInterface", - "QDesignerPropertySheetExtension", "QDesignerResourceBrowserInterface", - "QDesignerTaskMenuExtension", "QDesignerWidgetBoxInterface", - "QDesignerWidgetDataBaseInterface", "QDesignerWidgetDataBaseItemInterface", - "QDesignerWidgetFactoryInterface", "QDesktopServices", - "QDesktopWidget", "QDial", "QDialog", "QDialogButtonBox", "QDir", - "QDirIterator", "QDirModel", "QDockWidget", "QDomAttr", - "QDomCDATASection", "QDomCharacterData", "QDomComment", - "QDomDocument", "QDomDocumentFragment", "QDomDocumentType", - "QDomElement", "QDomEntity", "QDomEntityReference", - "QDomImplementation", "QDomNamedNodeMap", "QDomNode", - "QDomNodeList", "QDomNotation", "QDomProcessingInstruction", - "QDomText", "QDoubleSpinBox", "QDoubleValidator", "QDrag", - "QDragEnterEvent", "QDragLeaveEvent", "QDragMoveEvent", - "QDragResponseEvent", "QDropEvent", "QDynamicPropertyChangeEvent", - "QErrorMessage", "QEvent", "QEventLoop", "QEventSizeOfChecker", - "QExplicitlySharedDataPointer", "QExtensionFactory", - "QExtensionManager", "QFactoryInterface", "QFile", "QFileDialog", - "QFileIconProvider", "QFileInfo", "QFileInfoList", - "QFileInfoListIterator", "QFileOpenEvent", "QFileSystemModel", - "QFileSystemWatcher", "QFlag", "QFlags", "QFocusEvent", - "QFocusFrame", "QFont", "QFontComboBox", "QFontDatabase", - "QFontDialog", "QFontInfo", "QFontMetrics", "QFontMetricsF", - "QForeachContainer", "QForeachContainerBase", "QFormBuilder", - "QFormLayout", "QFrame", "QFSFileEngine", "QFtp", "QFuture", - "QFutureInterface", "QFutureInterfaceBase", "QFutureIterator", - "QFutureSynchronizer", "QFutureWatcher", "QFutureWatcherBase", - "QGenericArgument", "QGenericReturnArgument", "QGLColormap", - "QGLContext", "QGLFormat", "QGLFramebufferObject", "QGlobalStatic", - "QGlobalStaticDeleter", "QGLPixelBuffer", "QGLWidget", "QGradient", - "QGradientStop", "QGradientStops", "QGraphicsEllipseItem", - "QGraphicsGridLayout", "QGraphicsItem", "QGraphicsItemAnimation", - "QGraphicsItemGroup", "QGraphicsLayout", "QGraphicsLayoutItem", - "QGraphicsLinearLayout", "QGraphicsLineItem", "QGraphicsPathItem", - "QGraphicsPixmapItem", "QGraphicsPolygonItem", - "QGraphicsProxyWidget", "QGraphicsRectItem", "QGraphicsScene", - "QGraphicsSceneContextMenuEvent", "QGraphicsSceneDragDropEvent", - "QGraphicsSceneEvent", "QGraphicsSceneHelpEvent", - "QGraphicsSceneHoverEvent", "QGraphicsSceneMouseEvent", - "QGraphicsSceneMoveEvent", "QGraphicsSceneResizeEvent", - "QGraphicsSceneWheelEvent", "QGraphicsSimpleTextItem", - "QGraphicsSvgItem", "QGraphicsTextItem", "QGraphicsView", - "QGraphicsWidget", "QGridLayout", "QGroupBox", "QGtkStyle", "QHash", - "QHashData", "QHashDummyNode", "QHashDummyValue", "QHashIterator", - "QHashNode", "QHBoxLayout", "QHeaderView", "QHelpContentItem", - "QHelpContentModel", "QHelpContentWidget", "QHelpEngine", - "QHelpEngineCore", "QHelpEvent", "QHelpGlobal", "QHelpIndexModel", - "QHelpIndexWidget", "QHelpSearchEngine", "QHelpSearchQuery", - "QHelpSearchQueryWidget", "QHelpSearchResultWidget", "QHideEvent", - "QHostAddress", "QHostInfo", "QHoverEvent", "QHttp", "QHttpHeader", - "QHttpRequestHeader", "QHttpResponseHeader", "QIBaseDriver", - "QIBaseResult", "QIcon", "QIconDragEvent", "QIconEngine", - "QIconEngineFactoryInterface", "QIconEngineFactoryInterfaceV2", - "QIconEnginePlugin", "QIconEnginePluginV2", "QIconEngineV2", - "QIconSet", "QImage", "QImageIOHandler", - "QImageIOHandlerFactoryInterface", "QImageIOPlugin", "QImageReader", - "QImageTextKeyLang", "QImageWriter", "QIncompatibleFlag", - "QInputContext", "QInputContextFactory", - "QInputContextFactoryInterface", "QInputContextPlugin", - "QInputDialog", "QInputEvent", "QInputMethodEvent", "Q_INT16", - "Q_INT32", "Q_INT64", "Q_INT8", "QInternal", "QIntForSize", - "QIntForType", "QIntValidator", "QIODevice", "Q_IPV6ADDR", - "QIPv6Address", "QItemDelegate", "QItemEditorCreator", - "QItemEditorCreatorBase", "QItemEditorFactory", "QItemSelection", - "QItemSelectionModel", "QItemSelectionRange", "QKeyEvent", - "QKeySequence", "QLabel", "QLatin1Char", "QLatin1String", "QLayout", - "QLayoutItem", "QLayoutIterator", "QLCDNumber", "QLibrary", - "QLibraryInfo", "QLine", "QLinearGradient", "QLineEdit", "QLineF", - "QLinkedList", "QLinkedListData", "QLinkedListIterator", - "QLinkedListNode", "QList", "QListData", "QListIterator", - "QListView", "QListWidget", "QListWidgetItem", "Q_LLONG", "QLocale", - "QLocalServer", "QLocalSocket", "Q_LONG", "QMacCompatGLenum", - "QMacCompatGLint", "QMacCompatGLuint", "QMacGLCompatTypes", - "QMacMime", "QMacPasteboardMime", "QMainWindow", "QMap", "QMapData", - "QMapIterator", "QMapNode", "QMapPayloadNode", "QMatrix", - "QMdiArea", "QMdiSubWindow", "QMenu", "QMenuBar", - "QMenubarUpdatedEvent", "QMenuItem", "QMessageBox", - "QMetaClassInfo", "QMetaEnum", "QMetaMethod", "QMetaObject", - "QMetaObjectExtraData", "QMetaProperty", "QMetaType", "QMetaTypeId", - "QMetaTypeId2", "QMimeData", "QMimeSource", "QModelIndex", - "QModelIndexList", "QMotifStyle", "QMouseEvent", "QMoveEvent", - "QMovie", "QMultiHash", "QMultiMap", "QMutableFutureIterator", - "QMutableHashIterator", "QMutableLinkedListIterator", - "QMutableListIterator", "QMutableMapIterator", - "QMutableSetIterator", "QMutableStringListIterator", - "QMutableVectorIterator", "QMutex", "QMutexLocker", "QMYSQLDriver", - "QMYSQLResult", "QNetworkAccessManager", "QNetworkAddressEntry", - "QNetworkCacheMetaData", "QNetworkCookie", "QNetworkCookieJar", - "QNetworkDiskCache", "QNetworkInterface", "QNetworkProxy", - "QNetworkProxyFactory", "QNetworkProxyQuery", "QNetworkReply", - "QNetworkRequest", "QNoDebug", "QNoImplicitBoolCast", "QObject", - "QObjectCleanupHandler", "QObjectData", "QObjectList", - "QObjectUserData", "QOCIDriver", "QOCIResult", "QODBCDriver", - "QODBCResult", "QPageSetupDialog", "QPaintDevice", "QPaintEngine", - "QPaintEngineState", "QPainter", "QPainterPath", - "QPainterPathPrivate", "QPainterPathStroker", "QPaintEvent", - "QPair", "QPalette", "QPen", "QPersistentModelIndex", "QPicture", - "QPictureFormatInterface", "QPictureFormatPlugin", "QPictureIO", - "Q_PID", "QPixmap", "QPixmapCache", "QPlainTextDocumentLayout", - "QPlainTextEdit", "QPlastiqueStyle", "QPluginLoader", "QPoint", - "QPointer", "QPointF", "QPolygon", "QPolygonF", "QPrintDialog", - "QPrintEngine", "QPrinter", "QPrinterInfo", "QPrintPreviewDialog", - "QPrintPreviewWidget", "QProcess", "QProgressBar", - "QProgressDialog", "QProxyModel", "QPSQLDriver", "QPSQLResult", - "QPushButton", "QQueue", "QRadialGradient", "QRadioButton", - "QReadLocker", "QReadWriteLock", "QRect", "QRectF", "QRegExp", - "QRegExpValidator", "QRegion", "QResizeEvent", "QResource", - "QReturnArgument", "QRgb", "QRubberBand", "QRunnable", - "QScriptable", "QScriptClass", "QScriptClassPropertyIterator", - "QScriptContext", "QScriptContextInfo", "QScriptContextInfoList", - "QScriptEngine", "QScriptEngineAgent", "QScriptEngineDebugger", - "QScriptExtensionInterface", "QScriptExtensionPlugin", - "QScriptString", "QScriptSyntaxCheckResult", "QScriptValue", - "QScriptValueIterator", "QScriptValueList", "QScrollArea", - "QScrollBar", "QSemaphore", "QSessionManager", "QSet", - "QSetIterator", "QSettings", "QSharedData", "QSharedDataPointer", - "QSharedMemory", "QSharedPointer", "QShortcut", "QShortcutEvent", - "QShowEvent", "QSignalMapper", "QSignalSpy", "QSimpleXmlNodeModel", - "QSize", "QSizeF", "QSizeGrip", "QSizePolicy", "QSlider", - "QSocketNotifier", "QSortFilterProxyModel", "QSound", - "QSourceLocation", "QSpacerItem", "QSpinBox", "QSplashScreen", - "QSplitter", "QSplitterHandle", "QSpontaneKeyEvent", "QSqlDatabase", - "QSqlDriver", "QSqlDriverCreator", "QSqlDriverCreatorBase", - "QSqlDriverFactoryInterface", "QSqlDriverPlugin", "QSqlError", - "QSqlField", "QSqlIndex", "QSQLite2Driver", "QSQLite2Result", - "QSQLiteDriver", "QSQLiteResult", "QSqlQuery", "QSqlQueryModel", - "QSqlRecord", "QSqlRelation", "QSqlRelationalDelegate", - "QSqlRelationalTableModel", "QSqlResult", "QSqlTableModel", "QSsl", - "QSslCertificate", "QSslCipher", "QSslConfiguration", "QSslError", - "QSslKey", "QSslSocket", "QStack", "QStackedLayout", - "QStackedWidget", "QStandardItem", "QStandardItemEditorCreator", - "QStandardItemModel", "QStatusBar", "QStatusTipEvent", - "QStdWString", "QString", "QStringList", "QStringListIterator", - "QStringListModel", "QStringMatcher", "QStringRef", "QStyle", - "QStyledItemDelegate", "QStyleFactory", "QStyleFactoryInterface", - "QStyleHintReturn", "QStyleHintReturnMask", - "QStyleHintReturnVariant", "QStyleOption", "QStyleOptionButton", - "QStyleOptionComboBox", "QStyleOptionComplex", - "QStyleOptionDockWidget", "QStyleOptionDockWidgetV2", - "QStyleOptionFocusRect", "QStyleOptionFrame", "QStyleOptionFrameV2", - "QStyleOptionFrameV3", "QStyleOptionGraphicsItem", - "QStyleOptionGroupBox", "QStyleOptionHeader", - "QStyleOptionMenuItem", "QStyleOptionProgressBar", - "QStyleOptionProgressBarV2", "QStyleOptionQ3DockWindow", - "QStyleOptionQ3ListView", "QStyleOptionQ3ListViewItem", - "QStyleOptionRubberBand", "QStyleOptionSizeGrip", - "QStyleOptionSlider", "QStyleOptionSpinBox", "QStyleOptionTab", - "QStyleOptionTabBarBase", "QStyleOptionTabBarBaseV2", - "QStyleOptionTabV2", "QStyleOptionTabV3", - "QStyleOptionTabWidgetFrame", "QStyleOptionTitleBar", - "QStyleOptionToolBar", "QStyleOptionToolBox", - "QStyleOptionToolBoxV2", "QStyleOptionToolButton", - "QStyleOptionViewItem", "QStyleOptionViewItemV2", - "QStyleOptionViewItemV3", "QStyleOptionViewItemV4", "QStylePainter", - "QStylePlugin", "QSvgGenerator", "QSvgRenderer", "QSvgWidget", - "QSyntaxHighlighter", "QSysInfo", "QSystemLocale", - "QSystemSemaphore", "QSystemTrayIcon", "Qt", "Qt3Support", - "QTabBar", "QTabletEvent", "QTableView", "QTableWidget", - "QTableWidgetItem", "QTableWidgetSelectionRange", "QTabWidget", - "QtAlgorithms", "QtAssistant", "QtCleanUpFunction", - "QtConcurrentFilter", "QtConcurrentMap", "QtConcurrentRun", - "QtContainerFwd", "QtCore", "QTcpServer", "QTcpSocket", "QtDBus", - "QtDebug", "QtDesigner", "QTDSDriver", "QTDSResult", - "QTemporaryFile", "QtEndian", "QTest", "QTestAccessibility", - "QTestAccessibilityEvent", "QTestData", "QTestDelayEvent", - "QTestEvent", "QTestEventList", "QTestEventLoop", - "QTestKeyClicksEvent", "QTestKeyEvent", "QTestMouseEvent", - "QtEvents", "QTextBlock", "QTextBlockFormat", "QTextBlockGroup", - "QTextBlockUserData", "QTextBoundaryFinder", "QTextBrowser", - "QTextCharFormat", "QTextCodec", "QTextCodecFactoryInterface", - "QTextCodecPlugin", "QTextCursor", "QTextDecoder", "QTextDocument", - "QTextDocumentFragment", "QTextDocumentWriter", "QTextEdit", - "QTextEncoder", "QTextFormat", "QTextFragment", "QTextFrame", - "QTextFrameFormat", "QTextFrameLayoutData", "QTextImageFormat", - "QTextInlineObject", "QTextIStream", "QTextItem", "QTextLayout", - "QTextLength", "QTextLine", "QTextList", "QTextListFormat", - "QTextObject", "QTextObjectInterface", "QTextOption", - "QTextOStream", "QTextStream", "QTextStreamFunction", - "QTextStreamManipulator", "QTextTable", "QTextTableCell", - "QTextTableCellFormat", "QTextTableFormat", "QtGlobal", "QtGui", - "QtHelp", "QThread", "QThreadPool", "QThreadStorage", - "QThreadStorageData", "QTime", "QTimeEdit", "QTimeLine", "QTimer", - "QTimerEvent", "QtMsgHandler", "QtNetwork", "QToolBar", - "QToolBarChangeEvent", "QToolBox", "QToolButton", "QToolTip", - "QtOpenGL", "QtPlugin", "QtPluginInstanceFunction", "QTransform", - "QTranslator", "QTreeView", "QTreeWidget", "QTreeWidgetItem", - "QTreeWidgetItemIterator", "QTS", "QtScript", "QtScriptTools", - "QtSql", "QtSvg", "QtTest", "QtUiTools", "QtWebKit", "QtXml", - "QtXmlPatterns", "QTypeInfo", "QUdpSocket", "QUiLoader", - "QUintForSize", "QUintForType", "QUndoCommand", "QUndoGroup", - "QUndoStack", "QUndoView", "QUnixPrintWidget", "QUpdateLaterEvent", - "QUrl", "QUrlInfo", "QUuid", "QValidator", "QVariant", - "QVariantComparisonHelper", "QVariantHash", "QVariantList", - "QVariantMap", "QVarLengthArray", "QVBoxLayout", "QVector", - "QVectorData", "QVectorIterator", "QVectorTypedData", - "QWaitCondition", "QWeakPointer", "QWebDatabase", "QWebFrame", - "QWebHistory", "QWebHistoryInterface", "QWebHistoryItem", - "QWebHitTestResult", "QWebPage", "QWebPluginFactory", - "QWebSecurityOrigin", "QWebSettings", "QWebView", "QWhatsThis", - "QWhatsThisClickedEvent", "QWheelEvent", "QWidget", "QWidgetAction", - "QWidgetData", "QWidgetItem", "QWidgetItemV2", "QWidgetList", - "QWidgetMapper", "QWidgetSet", "QWindowsCEStyle", "QWindowsMime", - "QWindowsMobileStyle", "QWindowsStyle", "QWindowStateChangeEvent", - "QWindowsVistaStyle", "QWindowsXPStyle", "QWizard", "QWizardPage", - "QWMatrix", "QWorkspace", "QWriteLocker", "QX11EmbedContainer", - "QX11EmbedWidget", "QX11Info", "QXmlAttributes", - "QXmlContentHandler", "QXmlDeclHandler", "QXmlDefaultHandler", - "QXmlDTDHandler", "QXmlEntityResolver", "QXmlErrorHandler", - "QXmlFormatter", "QXmlInputSource", "QXmlItem", - "QXmlLexicalHandler", "QXmlLocator", "QXmlName", "QXmlNamePool", - "QXmlNamespaceSupport", "QXmlNodeModelIndex", "QXmlParseException", - "QXmlQuery", "QXmlReader", "QXmlResultItems", "QXmlSerializer", - "QXmlSimpleReader", "QXmlStreamAttribute", "QXmlStreamAttributes", - "QXmlStreamEntityDeclaration", "QXmlStreamEntityDeclarations", - "QXmlStreamEntityResolver", "QXmlStreamNamespaceDeclaration", - "QXmlStreamNamespaceDeclarations", "QXmlStreamNotationDeclaration", - "QXmlStreamNotationDeclarations", "QXmlStreamReader", - "QXmlStreamStringRef", "QXmlStreamWriter" - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':', ',', ';', '|', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight:bold;', - 2 => 'color: #0057AE;', - 3 => 'color: #2B74C7;', - 4 => 'color: #0057AE;', - 5 => 'color: #22aadd;' - ), - 'COMMENTS' => array( - 1 => 'color: #888888;', - 2 => 'color: #006E28;', - 'MULTI' => 'color: #888888; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #006E28;' - ), - 'STRINGS' => array( - 0 => 'color: #BF0303;' - ), - 'NUMBERS' => array( - 0 => 'color: #B08000;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #2B74C7;', - 2 => 'color: #2B74C7;', - 3 => 'color: #2B74C7;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006E28;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => 'http://doc.trolltech.com/latest/{FNAMEL}.html' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::', - 3 => '->', - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" - ), - 'OOLANG' => array( - 'MATCH_AFTER' => '~?[a-zA-Z][a-zA-Z0-9_]*', - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/cpp.php b/system/application/libraries/geshi/cpp.php deleted file mode 100644 index 7fb1da360..000000000 --- a/system/application/libraries/geshi/cpp.php +++ /dev/null @@ -1,226 +0,0 @@ -<?php -/************************************************************************************* - * cpp.php - * ------- - * Author: Dennis Bayer (Dennis.Bayer@mnifh-giessen.de) - * Contributors: - * - M. Uli Kusterer (witness.of.teachtext@gmx.net) - * - Jack Lloyd (lloyd@randombit.net) - * Copyright: (c) 2004 Dennis Bayer, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/09/27 - * - * C++ language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/XX/XX (1.0.2) - * - Added several new keywords (Jack Lloyd) - * 2004/11/27 (1.0.1) - * - Added StdCLib function and constant names, changed color scheme to - * a cleaner one. (M. Uli Kusterer) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'C++', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'break', 'case', 'continue', 'default', 'do', 'else', 'for', 'goto', 'if', 'return', - 'switch', 'throw', 'while' - ), - 2 => array( - 'NULL', 'false', 'true', 'enum', 'errno', 'EDOM', - 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', - 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', - 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', - 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', - 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', - 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', - 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', - 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', - 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', - 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr', - 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC', - 'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace', - 'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast', - 'static_cast', 'explicit', 'friend', 'wchar_t', 'typename', 'typeid', 'class' - ), - 3 => array( - 'cin', 'cerr', 'clog', 'cout', 'delete', 'new', 'this', - 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', - 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', - 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', - 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', - 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', - 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', - 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', - 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', - 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', - 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', - 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', - 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', - 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', - 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', - 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', - 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', - 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', - 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', - 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' - ), - 4 => array( - 'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint', - 'register', 'short', 'shortint', 'signed', 'static', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf', - 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', - 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', - ), - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '{', '}', '[', ']'), - 1 => array('<', '>','='), - 2 => array('+', '-', '*', '/', '%'), - 3 => array('!', '^', '&', '|'), - 4 => array('?', ':', ';') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #0000ff;', - 3 => 'color: #0000dd;', - 4 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666;', - 2 => 'color: #339900;', - 'MULTI' => 'color: #ff0000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #008000;' - ), - 'STRINGS' => array( - 0 => 'color: #FF0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #007788;', - 2 => 'color: #007788;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;', - 1 => 'color: #000080;', - 2 => 'color: #000040;', - 3 => 'color: #000040;', - 4 => 'color: #008080;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_\|%\\-])" - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/csharp.php b/system/application/libraries/geshi/csharp.php deleted file mode 100644 index aa166801d..000000000 --- a/system/application/libraries/geshi/csharp.php +++ /dev/null @@ -1,253 +0,0 @@ -<?php -/************************************************************************************* - * csharp.php - * ---------- - * Author: Alan Juden (alan@judenware.org) - * Revised by: Michael Mol (mikemol@gmail.com) - * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * C# language file for GeSHi. - * - * CHANGES - * ------- - * 2009/04/03 (1.0.8.6) - * - Added missing keywords identified by Rosetta Code users. - * 2008/05/25 (1.0.7.22) - * - Added highlighting of using and namespace directives as non-OOP - * 2005/01/05 (1.0.1) - * - Used hardquote support for @"..." strings (Cliff Stanford) - * 2004/11/27 (1.0.0) - * - Initial release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'C#', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Using and Namespace directives (basic support) - //Please note that the alias syntax for using is not supported - 3 => '/(?:(?<=using[\\n\\s])|(?<=namespace[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*[a-zA-Z0-9_]+[\n\s]*(?=[;=])/i'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'HARDQUOTE' => array('@"', '"'), - 'HARDESCAPE' => array('"'), - 'HARDCHAR' => '"', - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'as', 'auto', 'base', 'break', 'case', 'catch', 'const', 'continue', - 'default', 'do', 'else', 'event', 'explicit', 'extern', 'false', - 'finally', 'fixed', 'for', 'foreach', 'from', 'goto', 'if', - 'implicit', 'in', 'internal', 'lock', 'namespace', 'null', - 'operator', 'out', 'override', 'params', 'partial', 'private', - 'protected', 'public', 'readonly', 'ref', 'return', 'sealed', - 'select', 'stackalloc', 'static', 'switch', 'this', 'throw', 'true', - 'try', 'unsafe', 'using', 'virtual', 'where', 'while', 'yield' - ), - 2 => array( - '#elif', '#endif', '#endregion', '#else', '#error', '#define', '#if', - '#line', '#region', '#undef', '#warning' - ), - 3 => array( - 'checked', 'is', 'new', 'sizeof', 'typeof', 'unchecked' - ), - 4 => array( - 'bool', 'byte', 'char', 'class', 'decimal', 'delegate', 'double', - 'enum', 'float', 'int', 'interface', 'long', 'object', 'sbyte', - 'short', 'string', 'struct', 'uint', 'ulong', 'ushort', 'void' - ), - 5 => array( - 'Microsoft.Win32', - 'System', - 'System.CodeDOM', - 'System.CodeDOM.Compiler', - 'System.Collections', - 'System.Collections.Bases', - 'System.ComponentModel', - 'System.ComponentModel.Design', - 'System.ComponentModel.Design.CodeModel', - 'System.Configuration', - 'System.Configuration.Assemblies', - 'System.Configuration.Core', - 'System.Configuration.Install', - 'System.Configuration.Interceptors', - 'System.Configuration.Schema', - 'System.Configuration.Web', - 'System.Core', - 'System.Data', - 'System.Data.ADO', - 'System.Data.Design', - 'System.Data.Internal', - 'System.Data.SQL', - 'System.Data.SQLTypes', - 'System.Data.XML', - 'System.Data.XML.DOM', - 'System.Data.XML.XPath', - 'System.Data.XML.XSLT', - 'System.Diagnostics', - 'System.Diagnostics.SymbolStore', - 'System.DirectoryServices', - 'System.Drawing', - 'System.Drawing.Design', - 'System.Drawing.Drawing2D', - 'System.Drawing.Imaging', - 'System.Drawing.Printing', - 'System.Drawing.Text', - 'System.Globalization', - 'System.IO', - 'System.IO.IsolatedStorage', - 'System.Messaging', - 'System.Net', - 'System.Net.Sockets', - 'System.NewXml', - 'System.NewXml.XPath', - 'System.NewXml.Xsl', - 'System.Reflection', - 'System.Reflection.Emit', - 'System.Resources', - 'System.Runtime.InteropServices', - 'System.Runtime.InteropServices.Expando', - 'System.Runtime.Remoting', - 'System.Runtime.Serialization', - 'System.Runtime.Serialization.Formatters', - 'System.Runtime.Serialization.Formatters.Binary', - 'System.Security', - 'System.Security.Cryptography', - 'System.Security.Cryptography.X509Certificates', - 'System.Security.Permissions', - 'System.Security.Policy', - 'System.Security.Principal', - 'System.ServiceProcess', - 'System.Text', - 'System.Text.RegularExpressions', - 'System.Threading', - 'System.Timers', - 'System.Web', - 'System.Web.Caching', - 'System.Web.Configuration', - 'System.Web.Security', - 'System.Web.Services', - 'System.Web.Services.Description', - 'System.Web.Services.Discovery', - 'System.Web.Services.Protocols', - 'System.Web.UI', - 'System.Web.UI.Design', - 'System.Web.UI.Design.WebControls', - 'System.Web.UI.Design.WebControls.ListControls', - 'System.Web.UI.HtmlControls', - 'System.Web.UI.WebControls', - 'System.WinForms', - 'System.WinForms.ComponentModel', - 'System.WinForms.Design', - 'System.Xml', - 'System.Xml.Serialization', - 'System.Xml.Serialization.Code', - 'System.Xml.Serialization.Schema' - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';', - '(', ')', '{', '}', '[', ']', '|', '.' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF; font-weight: bold;', - 2 => 'color: #FF8000; font-weight: bold;', - 3 => 'color: #008000;', - 4 => 'color: #6666cc; font-weight: bold;', - 5 => 'color: #000000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 2 => 'color: #008080;', - 3 => 'color: #008080;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;', - 'HARD' => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #008000;' - ), - 'STRINGS' => array( - 0 => 'color: #666666;', - 'HARD' => 'color: #666666;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.google.com/search?q={FNAMEL}+msdn.microsoft.com', - 4 => '', - 5 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_%\\-])" - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/css.php b/system/application/libraries/geshi/css.php deleted file mode 100644 index 04313d6d8..000000000 --- a/system/application/libraries/geshi/css.php +++ /dev/null @@ -1,212 +0,0 @@ -<?php -/************************************************************************************* - * css.php - * ------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/18 - * - * CSS language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/27 (1.0.3) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.2) - * - Changed regexps to catch "-" symbols - * - Added support for URLs - * 2004/08/05 (1.0.1) - * - Added support for symbols - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * Improve or drop regexps for class/id/psuedoclass highlighting - * * Re-look at keywords - possibly to make several CSS language - * files, all with different versions of CSS in them - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'CSS', - 'COMMENT_SINGLE' => array(1 => '@'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - 2 => "/(?<=\\()\\s*(?:(?:[a-z0-9]+?:\\/\\/)?[a-z0-9_\\-\\.\\/:]+?)?[a-z]+?\\.[a-z]+?(\\?[^\)]+?)?\\s*?(?=\\))/i" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'aqua', 'azimuth', 'background-attachment', 'background-color', - 'background-image', 'background-position', 'background-repeat', - 'background', 'black', 'blue', 'border-bottom-color', - 'border-bottom-style', 'border-bottom-width', 'border-left-color', - 'border-left-style', 'border-left-width', 'border-right', - 'border-right-color', 'border-right-style', 'border-right-width', - 'border-top-color', 'border-top-style', - 'border-top-width','border-bottom', 'border-collapse', - 'border-left', 'border-width', 'border-color', 'border-spacing', - 'border-style', 'border-top', 'border', 'caption-side', 'clear', - 'clip', 'color', 'content', 'counter-increment', 'counter-reset', - 'cue-after', 'cue-before', 'cue', 'cursor', 'direction', 'display', - 'elevation', 'empty-cells', 'float', 'font-family', 'font-size', - 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', - 'font-weight', 'font', 'line-height', 'letter-spacing', - 'list-style', 'list-style-image', 'list-style-position', - 'list-style-type', 'margin-bottom', 'margin-left', 'margin-right', - 'margin-top', 'margin', 'marker-offset', 'marks', 'max-height', - 'max-width', 'min-height', 'min-width', 'orphans', 'outline', - 'outline-color', 'outline-style', 'outline-width', 'overflow', - 'padding-bottom', 'padding-left', 'padding-right', 'padding-top', - 'padding', 'page', 'page-break-after', 'page-break-before', - 'page-break-inside', 'pause-after', 'pause-before', 'pause', - 'pitch', 'pitch-range', 'play-during', 'position', 'quotes', - 'richness', 'right', 'size', 'speak-header', 'speak-numeral', - 'speak-punctuation', 'speak', 'speech-rate', 'stress', - 'table-layout', 'text-align', 'text-decoration', 'text-indent', - 'text-shadow', 'text-transform', 'top', 'unicode-bidi', - 'vertical-align', 'visibility', 'voice-family', 'volume', - 'white-space', 'widows', 'width', 'word-spacing', 'z-index', - 'bottom', 'left', 'height' - ), - 2 => array( - 'above', 'absolute', 'always', 'armenian', 'aural', 'auto', - 'avoid', 'baseline', 'behind', 'below', 'bidi-override', 'blink', - 'block', 'bold', 'bolder', 'both', 'capitalize', 'center-left', - 'center-right', 'center', 'circle', 'cjk-ideographic', - 'close-quote', 'collapse', 'condensed', 'continuous', 'crop', - 'crosshair', 'cross', 'cursive', 'dashed', 'decimal-leading-zero', - 'decimal', 'default', 'digits', 'disc', 'dotted', 'double', - 'e-resize', 'embed', 'extra-condensed', 'extra-expanded', - 'expanded', 'fantasy', 'far-left', 'far-right', 'faster', 'fast', - 'fixed', 'fuchsia', 'georgian', 'gray', 'green', 'groove', - 'hebrew', 'help', 'hidden', 'hide', 'higher', 'high', - 'hiragana-iroha', 'hiragana', 'icon', 'inherit', 'inline-table', - 'inline', 'inset', 'inside', 'invert', 'italic', 'justify', - 'katakana-iroha', 'katakana', 'landscape', 'larger', 'large', - 'left-side', 'leftwards', 'level', 'lighter', 'lime', - 'line-through', 'list-item', 'loud', 'lower-alpha', 'lower-greek', - 'lower-roman', 'lowercase', 'ltr', 'lower', 'low', 'maroon', - 'medium', 'message-box', 'middle', 'mix', 'monospace', 'n-resize', - 'narrower', 'navy', 'ne-resize', 'no-close-quote', - 'no-open-quote', 'no-repeat', 'none', 'normal', 'nowrap', - 'nw-resize', 'oblique', 'olive', 'once', 'open-quote', 'outset', - 'outside', 'overline', 'pointer', 'portrait', 'purple', 'px', - 'red', 'relative', 'repeat-x', 'repeat-y', 'repeat', 'rgb', - 'ridge', 'right-side', 'rightwards', 's-resize', 'sans-serif', - 'scroll', 'se-resize', 'semi-condensed', 'semi-expanded', - 'separate', 'serif', 'show', 'silent', 'silver', 'slow', 'slower', - 'small-caps', 'small-caption', 'smaller', 'soft', 'solid', - 'spell-out', 'square', 'static', 'status-bar', 'super', - 'sw-resize', 'table-caption', 'table-cell', 'table-column', - 'table-column-group', 'table-footer-group', 'table-header-group', - 'table-row', 'table-row-group', 'teal', 'text', 'text-bottom', - 'text-top', 'thick', 'thin', 'transparent', 'ultra-condensed', - 'ultra-expanded', 'underline', 'upper-alpha', 'upper-latin', - 'upper-roman', 'uppercase', 'url', 'visible', 'w-resize', 'wait', - 'white', 'wider', 'x-fast', 'x-high', 'x-large', 'x-loud', - 'x-low', 'x-small', 'x-soft', 'xx-large', 'xx-small', 'yellow', - 'yes' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', ':', ';', - '>', '+', '*', ',', '^', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #993333;' - ), - 'COMMENTS' => array( - 1 => 'color: #a1a100;', - 2 => 'color: #ff0000; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #00AA00;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #00AA00;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #cc00cc;', - 1 => 'color: #6666ff;', - 2 => 'color: #3333ff;', - 3 => 'color: #933;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //DOM Node ID - 0 => '\#[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*', - //CSS classname - 1 => '\.(?!\d)[a-zA-Z0-9\-_]+(?:\\\\:[a-zA-Z0-9\-_]+)*\b(?=[\{\.#\s,:].|<\|)', - //CSS Pseudo classes - //note: & is needed for > (i.e. > ) - 2 => '(?<!\\\\):(?!\d)[a-zA-Z0-9\-]+\b(?:\s*(?=[\{\.#a-zA-Z,:+*&](.|\n)|<\|))', - //Measurements - 3 => '[+\-]?(\d+|(\d*\.\d+))(em|ex|pt|px|cm|in|%)', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\.])' - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/cuesheet.php b/system/application/libraries/geshi/cuesheet.php deleted file mode 100644 index 2fd610c15..000000000 --- a/system/application/libraries/geshi/cuesheet.php +++ /dev/null @@ -1,138 +0,0 @@ -<?php -/************************************************************************************* - * cuesheet.php - * ---------- - * Author: Benny Baumann (benbe@geshi.org) - * Copyright: (c) 2009 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2009/12/21 - * - * Cuesheet language file for GeSHi. - * - * CHANGES - * ------- - * 2009/12/21 (1.0.8.6) - * - First Release - * - * TODO (updated 2009/12/21) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Cuesheet', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Single-Line Comments using REM command - 1 => "/(?<=\bREM\b).*?$/im", - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'CATALOG','CDTEXTFILE','FILE','FLAGS','INDEX','ISRC','PERFORMER', - 'POSTGAP','PREGAP','REM','SONGWRITER','TITLE','TRACK' - ), - 2 => array( - 'AIFF', 'BINARY', 'MOTOROLA', 'MP3', 'WAVE' - ), - 3 => array( - '4CH', 'DCP', 'PRE', 'SCMS' - ), - 4 => array( - 'AUDIO', 'CDG', 'MODE1/2048', 'MODE1/2336', 'MODE2/2336', - 'MODE2/2352', 'CDI/2336', 'CDI/2352' - ) - ), - 'SYMBOLS' => array( - ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000066; font-weight: bold;', - 3 => 'color: #000066; font-weight: bold;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - ), - 'BRACKETS' => array( - 0 => 'color: #0000ff;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #006600;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #000099;', - 2 => 'color: #009900;', - ) - ), - 'URLS' => array( - 1 => 'http://digitalx.org/cuesheetsyntax.php#{FNAMEL}', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 2 => '\b[A-Za-z0-9]{5}\d{7}\b', - 1 => '(?<=[\s:]|^)\d+(?=[\s:]|$)', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(?<![\w\.])', - 'DISALLOWED_AFTER' => '(?![\w\.])', - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/d.php b/system/application/libraries/geshi/d.php deleted file mode 100644 index f9157a514..000000000 --- a/system/application/libraries/geshi/d.php +++ /dev/null @@ -1,272 +0,0 @@ -<?php -/************************************************************************************* - * d.php - * ----- - * Author: Thomas Kuehne (thomas@kuehne.cn) - * Copyright: (c) 2005 Thomas Kuehne (http://thomas.kuehne.cn/) - * Release Version: 1.0.8.6 - * Date Started: 2005/04/22 - * - * D language file for GeSHi. - * - * CHANGES - * ------- - * 2005/04/22 (0.0.2) - * - added _d_* and sizeof/ptrdiff_t - * 2005/04/20 (0.0.1) - * - First release - * - * TODO (updated 2005/04/22) - * ------------------------- - * * nested comments - * * correct handling of r"" and `` - * * correct handling of ... and .. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'D', - 'COMMENT_SINGLE' => array(2 => '///', 1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - // doxygen comments - 3 => '#/\*\*(?![\*\/]).*\*/#sU', - // raw strings - 4 => '#r"[^"]*"#s', - // Script Style interpreter comment - 5 => "/\A#!(?=\\/).*?$/m" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[abfnrtv\\'\"?\n\\\\]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{2}#", - //Hexadecimal Char Specs - 3 => "#\\\\u[\da-fA-F]{4}#", - //Hexadecimal Char Specs - 4 => "#\\\\U[\da-fA-F]{8}#", - //Octal Char Specs - 5 => "#\\\\[0-7]{1,3}#", - //Named entity escapes - /*6 => "#\\\\&(?:quot|amp|lt|gt|OElig|oelig|Scaron|scaron|Yuml|circ|tilde|". - "ensp|emsp|thinsp|zwnj|zwj|lrm|rlm|ndash|mdash|lsquo|rsquo|sbquo|". - "ldquo|rdquo|bdquo|dagger|Dagger|permil|lsaquo|rsaquo|euro|nbsp|". - "iexcl|cent|pound|curren|yen|brvbar|sect|uml|copy|ordf|laquo|not|". - "shy|reg|macr|deg|plusmn|sup2|sup3|acute|micro|para|middot|cedil|". - "sup1|ordm|raquo|frac14|frac12|frac34|iquest|Agrave|Aacute|Acirc|". - "Atilde|Auml|Aring|AElig|Ccedil|Egrave|Eacute|Ecirc|Euml|Igrave|". - "Iacute|Icirc|Iuml|ETH|Ntilde|Ograve|Oacute|Ocirc|Otilde|Ouml|". - "times|Oslash|Ugrave|Uacute|Ucirc|Uuml|Yacute|THORN|szlig|agrave|". - "aacute|acirc|atilde|auml|aring|aelig|ccedil|egrave|eacute|ecirc|". - "euml|igrave|iacute|icirc|iuml|eth|ntilde|ograve|oacute|ocirc|". - "otilde|ouml|divide|oslash|ugrave|uacute|ucirc|uuml|yacute|thorn|". - "yuml|fnof|Alpha|Beta|Gamma|Delta|Epsilon|Zeta|Eta|Theta|Iota|". - "Kappa|Lambda|Mu|Nu|Xi|Omicron|Pi|Rho|Sigma|Tau|Upsilon|Phi|Chi|". - "Psi|Omega|alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|". - "kappa|lambda|mu|nu|xi|omicron|pi|rho|sigmaf|sigma|tau|upsilon|". - "phi|chi|psi|omega|thetasym|upsih|piv|bull|hellip|prime|Prime|". - "oline|frasl|weierp|image|real|trade|alefsym|larr|uarr|rarr|darr|". - "harr|crarr|lArr|uArr|rArr|dArr|hArr|forall|part|exist|empty|". - "nabla|isin|notin|ni|prod|sum|minus|lowast|radic|prop|infin|ang|". - "and|or|cap|cup|int|there4|sim|cong|asymp|ne|equiv|le|ge|sub|sup|". - "nsub|sube|supe|oplus|otimes|perp|sdot|lceil|rceil|lfloor|rfloor|". - "lang|rang|loz|spades|clubs|hearts|diams);#",*/ - // optimized: - 6 => "#\\\\&(?:A(?:Elig|acute|circ|grave|lpha|ring|tilde|uml)|Beta|". - "C(?:cedil|hi)|D(?:agger|elta)|E(?:TH|acute|circ|grave|psilon|ta|uml)|". - "Gamma|I(?:acute|circ|grave|ota|uml)|Kappa|Lambda|Mu|N(?:tilde|u)|". - "O(?:Elig|acute|circ|grave|m(?:ega|icron)|slash|tilde|uml)|". - "P(?:hi|i|rime|si)|Rho|S(?:caron|igma)|T(?:HORN|au|heta)|". - "U(?:acute|circ|grave|psilon|uml)|Xi|Y(?:acute|uml)|Zeta|". - "a(?:acute|c(?:irc|ute)|elig|grave|l(?:efsym|pha)|mp|n[dg]|ring|". - "symp|tilde|uml)|b(?:dquo|eta|rvbar|ull)|c(?:ap|cedil|e(?:dil|nt)|". - "hi|irc|lubs|o(?:ng|py)|rarr|u(?:p|rren))|d(?:Arr|a(?:gger|rr)|". - "e(?:g|lta)|i(?:ams|vide))|e(?:acute|circ|grave|m(?:pty|sp)|nsp|". - "psilon|quiv|t[ah]|u(?:ml|ro)|xist)|f(?:nof|orall|ra(?:c(?:1[24]|34)|sl))|". - "g(?:amma|e|t)|h(?:Arr|arr|e(?:arts|llip))|i(?:acute|circ|excl|grave|mage|". - "n(?:fin|t)|ota|quest|sin|uml)|kappa|l(?:Arr|a(?:mbda|ng|quo|rr)|ceil|". - "dquo|e|floor|o(?:wast|z)|rm|s(?:aquo|quo)|t)|m(?:acr|dash|". - "i(?:cro|ddot|nus)|u)|n(?:abla|bsp|dash|e|i|ot(?:in)?|sub|tilde|u)|". - "o(?:acute|circ|elig|grave|line|m(?:ega|icron)|plus|r(?:d[fm])?|". - "slash|ti(?:lde|mes)|uml)|p(?:ar[at]|er(?:mil|p)|hi|iv?|lusmn|ound|". - "r(?:ime|o[dp])|si)|quot|r(?:Arr|a(?:dic|ng|quo|rr)|ceil|dquo|e(?:al|g)|". - "floor|ho|lm|s(?:aquo|quo))|s(?:bquo|caron|dot|ect|hy|i(?:gmaf?|m)|". - "pades|u(?:be?|m|p[123e]?)|zlig)|t(?:au|h(?:e(?:re4|ta(?:sym)?)|insp|". - "orn)|i(?:lde|mes)|rade)|u(?:Arr|a(?:cute|rr)|circ|grave|ml|". - "psi(?:h|lon)|uml)|weierp|xi|y(?:acute|en|uml)|z(?:eta|w(?:j|nj)));#", - ), - 'HARDQUOTE' => array('`', '`'), - 'HARDESCAPE' => array(), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'break', 'case', 'continue', 'do', 'else', - 'for', 'foreach', 'goto', 'if', 'return', - 'switch', 'while' - ), - 2 => array( - 'alias', 'asm', 'assert', 'body', 'cast', - 'catch', 'default', 'delegate', 'delete', - 'extern', 'false', 'finally', 'function', - 'import', 'in', 'inout', 'interface', - 'invariant', 'is', 'mixin', 'module', 'new', - 'null', 'out', 'pragma', 'ref', 'super', 'this', - 'throw', 'true', 'try', 'typedef', 'typeid', - 'typeof', 'union', 'with' - ), - 3 => array( - 'ArrayBoundsError', 'AssertError', - 'ClassInfo', 'Error', 'Exception', - 'Interface', 'ModuleInfo', 'Object', - 'OutOfMemoryException', 'SwitchError', - 'TypeInfo', '_d_arrayappend', - '_d_arrayappendb', '_d_arrayappendc', - '_d_arrayappendcb', '_d_arraycast', - '_d_arraycast_frombit', '_d_arraycat', - '_d_arraycatb', '_d_arraycatn', - '_d_arraycopy', '_d_arraycopybit', - '_d_arraysetbit', '_d_arraysetbit2', - '_d_arraysetlength', '_d_arraysetlengthb', - '_d_callfinalizer', - '_d_create_exception_object', - '_d_criticalenter', '_d_criticalexit', - '_d_delarray', '_d_delclass', - '_d_delinterface', '_d_delmemory', - '_d_dynamic_cast', '_d_exception', - '_d_exception_filter', '_d_framehandler', - '_d_interface_cast', '_d_interface_vtbl', - '_d_invariant', '_d_isbaseof', - '_d_isbaseof2', '_d_local_unwind', - '_d_monitorenter', '_d_monitorexit', - '_d_monitorrelease', '_d_monitor_epilog', - '_d_monitor_handler', '_d_monitor_prolog', - '_d_new', '_d_newarrayi', '_d_newbitarray', - '_d_newclass', '_d_obj_cmp', '_d_obj_eq', - '_d_OutOfMemory', '_d_switch_dstring', - '_d_switch_string', '_d_switch_ustring', - '_d_throw', - ), - 4 => array( - 'abstract', 'align', 'auto', 'bit', 'bool', - 'byte', 'cdouble', 'cent', 'cfloat', 'char', - 'class', 'const', 'creal', 'dchar', 'debug', - 'deprecated', 'double', 'enum', 'export', - 'final', 'float', 'idouble', 'ifloat', 'int', - 'ireal', 'long', 'override', 'package', - 'private', 'protected', 'ptrdiff_t', - 'public', 'real', 'short', 'size_t', - 'static', 'struct', 'synchronized', - 'template', 'ubyte', 'ucent', 'uint', - 'ulong', 'unittest', 'ushort', 'version', - 'void', 'volatile', 'wchar' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '?', '!', ';', ':', ',', '...', '..', - '+', '-', '*', '/', '%', '&', '|', '^', '<', '>', '=', '~', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #aaaadd; font-weight: bold;', - 4 => 'color: #993333;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #009933; font-style: italic;', - 3 => 'color: #009933; font-style: italic;', - 4 => 'color: #ff0000;', - 5 => 'color: #0040ff;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #660099; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold;', - 6 => 'color: #666699; font-weight: bold; font-style: italic;', - 'HARD' => '', - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;', - GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;', - GESHI_NUMBER_FLT_NONSCI => 'color:#800080;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/dcs.php b/system/application/libraries/geshi/dcs.php deleted file mode 100644 index daad329c3..000000000 --- a/system/application/libraries/geshi/dcs.php +++ /dev/null @@ -1,182 +0,0 @@ -<?php -/************************************************************************************* - * dcs.php - * --------------------------------- - * Author: Stelio Passaris (GeSHi@stelio.net) - * Copyright: (c) 2009 Stelio Passaris (http://stelio.net/stiki/GeSHi) - * Release Version: 1.0.8.6 - * Date Started: 2009/01/20 - * - * DCS language file for GeSHi. - * - * DCS (Data Conversion System) is part of Sungard iWorks' Prophet suite and is used - * to convert external data files into a format that Prophet and Glean can read. - * See http://www.prophet-web.com/Products/DCS for product information. - * This language file is current for DCS version 7.3.2. - * - * Note that the DCS IDE does not handle escape characters correctly. The IDE thinks - * that a backslash '\' is an escape character, but in practice the backslash does - * not escape the string delimiter character '"' when the program runs. A '\\' is - * escaped to '\' when the program runs, but '\"' is treated as '\' at the end of a - * string. Therefore in this language file, we do not recognise the backslash as an - * escape character. For the purposes of GeSHi, there is no character escaping. - * - * CHANGES - * ------- - * 2009/02/21 (1.0.8.3) - * - First Release - * - * TODO (updated 2009/02/21) - * ------------------------- - * * Add handling for embedded C code. Note that the DCS IDE does not highlight C code - * correctly, but that doesn't mean that we can't! This will be included for a - * stable release of GeSHi of version 1.1.x (or later) that allows for highlighting - * embedded code using that code's appropriate language file. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - *************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'DCS', - 'COMMENT_SINGLE' => array( - 1 => ';' - ), - 'COMMENT_MULTI' => array( - ), - 'COMMENT_REGEXP' => array( - // Highlight embedded C code in a separate color: - 2 => '/\bINSERT_C_CODE\b.*?\bEND_C_CODE\b/ims' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array( - '"' - ), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => '', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'abs', 'ascii_value', 'bit_value', 'blank_date', 'calc_unit_values', 'cm', - 'complete_months', 'complete_years', 'correct', 'create_input_file', 'cy', - 'date_convert', 'day', 'del_output_separator', - 'delete_existing_output_files', 'div', 'ex', 'exact_years', 'exp', - 'extract_date', 'failed_validation', 'file_number', 'first_record', - 'fract', 'fund_fac_a', 'fund_fac_b', 'fund_fac_c', 'fund_fac_d', - 'fund_fac_e', 'fund_fac_f', 'fund_fac_g', 'fund_fac_h', 'fund_fac_i', - 'fund_fac_j', 'fund_fac_k', 'fund_fac_l', 'fund_fac_m', 'fund_fac_n', - 'fund_fac_o', 'fund_fac_p', 'fund_fac_q', 'fund_fac_r', 'fund_fac_s', - 'fund_fac_t', 'fund_fac_u', 'fund_fac_v', 'fund_fac_w', 'fund_fac_x', - 'fund_fac_y', 'fund_fac_z', 'group', 'group_record', - 'input_file_date_time', 'input_file_extension', 'input_file_location', - 'input_file_name', 'int', 'invalid', 'last_record', 'leap_year', 'len', - 'ln', 'log', 'main_format_name', 'max', 'max_num_subrecords', 'message', - 'min', 'mod', 'month', 'months_add', 'months_sub', 'nearest_months', - 'nearest_years', 'next_record', 'nm', 'no_of_current_records', - 'no_of_records', 'numval', 'ny', 'output', 'output_array_as_constants', - 'output_file_path', 'output_record', 'pmdf_output', 'previous', 'rand', - 're_start', 'read_generic_table', 'read_generic_table_text', - 'read_input_footer', 'read_input_footer_text', 'read_input_header', - 'read_input_header_text', 'record_count', 'record_suppressed', 'round', - 'round_down', 'round_near', 'round_up', 'run_dcs_program', 'run_parameter', - 'run_parameter_text', 'set_main_record', 'set_num_subrecords', - 'sort_array', 'sort_current_records', 'sort_input', 'strval', 'substr', - 'summarise', 'summarise_record', 'summarise_units', - 'summarise_units_record', 'suppress_record', 'table_correct', - 'table_validate', 'terminate', 'time', 'today', 'trim', 'ubound', 'year', - 'years_add', 'years_sub' - ), - 2 => array( - 'and', 'as', 'begin', 'boolean', 'byref', 'byval', 'call', 'case', 'date', - 'default', 'do', 'else', 'elseif', 'end_c_code', 'endfor', 'endfunction', - 'endif', 'endproc', 'endswitch', 'endwhile', 'eq', - 'explicit_declarations', 'false', 'for', 'from', 'function', 'ge', 'gt', - 'if', 'insert_c_code', 'integer', 'le', 'loop', 'lt', 'ne', 'not', - 'number', 'or', 'private', 'proc', 'public', 'quitloop', 'return', - 'short', 'step', 'switch', 'text', 'then', 'to', 'true', 'while' - ), - 3 => array( - // These keywords are not highlighted by the DCS IDE but we may as well - // keep track of them anyway: - 'mp_file', 'odbc_file' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', - '=', '<', '>', - '+', '-', '*', '/', '^', - ':', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: red;', - 2 => 'color: blue;', - 3 => 'color: black;' - ), - 'COMMENTS' => array( - 1 => 'color: black; background-color: silver;', - // Colors for highlighting embedded C code: - 2 => 'color: maroon; background-color: pink;' - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: black;' - ), - 'STRINGS' => array( - 0 => 'color: green;' - ), - 'NUMBERS' => array( - 0 => 'color: green;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: black;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ), - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/delphi.php b/system/application/libraries/geshi/delphi.php deleted file mode 100644 index 2b758d7db..000000000 --- a/system/application/libraries/geshi/delphi.php +++ /dev/null @@ -1,289 +0,0 @@ -<?php -/************************************************************************************* - * delphi.php - * ---------- - * Author: J�rja Norbert (jnorbi@vipmail.hu), Benny Baumann (BenBE@omorphia.de) - * Copyright: (c) 2004 J�rja Norbert, Benny Baumann (BenBE@omorphia.de), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/26 - * - * Delphi (Object Pascal) language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2005/11/19 (1.0.3) - * - Updated the very incomplete keyword and type lists - * 2005/09/03 (1.0.2) - * - Added support for hex numbers and string entities - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Delphi', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('(*' => '*)', '{' => '}'), - //Compiler directives - 'COMMENT_REGEXP' => array(2 => '/\\{\\$.*?}|\\(\\*\\$.*?\\*\\)/U'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array("'"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'Abstract', 'And', 'Array', 'As', 'Asm', 'At', 'Begin', 'Case', - 'Class', 'Const', 'Constructor', 'Contains', 'Destructor', - 'DispInterface', 'Div', 'Do', 'DownTo', 'Else', 'End', 'Except', - 'Export', 'Exports', 'External', 'File', 'Finalization', 'Finally', - 'For', 'Function', 'Goto', 'If', 'Implementation', 'In', 'Inherited', - 'Initialization', 'Inline', 'Interface', 'Is', 'Label', 'Library', - 'Mod', 'Not', 'Object', 'Of', 'On', 'Or', 'Overload', 'Override', - 'Package', 'Packed', 'Private', 'Procedure', 'Program', 'Property', - 'Protected', 'Public', 'Published', 'Raise', 'Record', 'Register', - 'Repeat', 'Requires', 'Resourcestring', 'Set', 'Shl', 'Shr', 'Then', - 'ThreadVar', 'To', 'Try', 'Type', 'Unit', 'Until', 'Uses', 'Var', - 'Virtual', 'While', 'With', 'Xor', 'assembler', 'far', - 'near', 'pascal', 'cdecl', 'safecall', 'stdcall', 'varargs' - ), - 2 => array( - 'nil', 'false', 'self', 'true', 'var', 'type', 'const' - ), - 3 => array( - 'Abs', 'AcquireExceptionObject', 'Addr', 'AnsiToUtf8', 'Append', 'ArcTan', - 'Assert', 'AssignFile', 'Assigned', 'BeginThread', 'BlockRead', - 'BlockWrite', 'Break', 'ChDir', 'Chr', 'Close', 'CloseFile', - 'CompToCurrency', 'CompToDouble', 'Concat', 'Continue', 'Copy', 'Cos', - 'Dec', 'Delete', 'Dispose', 'DoubleToComp', 'EndThread', 'EnumModules', - 'EnumResourceModules', 'Eof', 'Eoln', 'Erase', 'ExceptAddr', - 'ExceptObject', 'Exclude', 'Exit', 'Exp', 'FilePos', 'FileSize', - 'FillChar', 'Finalize', 'FindClassHInstance', 'FindHInstance', - 'FindResourceHInstance', 'Flush', 'Frac', 'FreeMem', 'Get8087CW', - 'GetDir', 'GetLastError', 'GetMem', 'GetMemoryManager', - 'GetModuleFileName', 'GetVariantManager', 'Halt', 'Hi', 'High', - 'IOResult', 'Inc', 'Include', 'Initialize', 'Insert', 'Int', - 'IsMemoryManagerSet', 'IsVariantManagerSet', 'Length', 'Ln', 'Lo', 'Low', - 'MkDir', 'Move', 'New', 'Odd', 'OleStrToStrVar', 'OleStrToString', 'Ord', - 'PUCS4Chars', 'ParamCount', 'ParamStr', 'Pi', 'Pos', 'Pred', 'Ptr', - 'Random', 'Randomize', 'Read', 'ReadLn', 'ReallocMem', - 'ReleaseExceptionObject', 'Rename', 'Reset', 'Rewrite', 'RmDir', 'Round', - 'RunError', 'Seek', 'SeekEof', 'SeekEoln', 'Set8087CW', 'SetLength', - 'SetLineBreakStyle', 'SetMemoryManager', 'SetString', 'SetTextBuf', - 'SetVariantManager', 'Sin', 'SizeOf', 'Slice', 'Sqr', 'Sqrt', 'Str', - 'StringOfChar', 'StringToOleStr', 'StringToWideChar', 'Succ', 'Swap', - 'Trunc', 'Truncate', 'TypeInfo', 'UCS4StringToWideString', 'UTF8Decode', - 'UTF8Encode', 'UnicodeToUtf8', 'UniqueString', 'UpCase', 'Utf8ToAnsi', - 'Utf8ToUnicode', 'Val', 'VarArrayRedim', 'VarClear', - 'WideCharLenToStrVar', 'WideCharLenToString', 'WideCharToStrVar', - 'WideCharToString', 'WideStringToUCS4String', 'Write', 'WriteLn', - - 'Abort', 'AddExitProc', 'AddTerminateProc', 'AdjustLineBreaks', 'AllocMem', - 'AnsiCompareFileName', 'AnsiCompareStr', 'AnsiCompareText', - 'AnsiDequotedStr', 'AnsiExtractQuotedStr', 'AnsiLastChar', - 'AnsiLowerCase', 'AnsiLowerCaseFileName', 'AnsiPos', 'AnsiQuotedStr', - 'AnsiSameStr', 'AnsiSameText', 'AnsiStrComp', 'AnsiStrIComp', - 'AnsiStrLComp', 'AnsiStrLIComp', 'AnsiStrLastChar', 'AnsiStrLower', - 'AnsiStrPos', 'AnsiStrRScan', 'AnsiStrScan', 'AnsiStrUpper', - 'AnsiUpperCase', 'AnsiUpperCaseFileName', 'AppendStr', 'AssignStr', - 'Beep', 'BoolToStr', 'ByteToCharIndex', 'ByteToCharLen', 'ByteType', - 'CallTerminateProcs', 'ChangeFileExt', 'CharLength', 'CharToByteIndex', - 'CharToByteLen', 'CompareMem', 'CompareStr', 'CompareText', 'CreateDir', - 'CreateGUID', 'CurrToStr', 'CurrToStrF', 'CurrentYear', 'Date', - 'DateTimeToFileDate', 'DateTimeToStr', 'DateTimeToString', - 'DateTimeToSystemTime', 'DateTimeToTimeStamp', 'DateToStr', 'DayOfWeek', - 'DecodeDate', 'DecodeDateFully', 'DecodeTime', 'DeleteFile', - 'DirectoryExists', 'DiskFree', 'DiskSize', 'DisposeStr', 'EncodeDate', - 'EncodeTime', 'ExceptionErrorMessage', 'ExcludeTrailingBackslash', - 'ExcludeTrailingPathDelimiter', 'ExpandFileName', 'ExpandFileNameCase', - 'ExpandUNCFileName', 'ExtractFileDir', 'ExtractFileDrive', - 'ExtractFileExt', 'ExtractFileName', 'ExtractFilePath', - 'ExtractRelativePath', 'ExtractShortPathName', 'FileAge', 'FileClose', - 'FileCreate', 'FileDateToDateTime', 'FileExists', 'FileGetAttr', - 'FileGetDate', 'FileIsReadOnly', 'FileOpen', 'FileRead', 'FileSearch', - 'FileSeek', 'FileSetAttr', 'FileSetDate', 'FileSetReadOnly', 'FileWrite', - 'FinalizePackage', 'FindClose', 'FindCmdLineSwitch', 'FindFirst', - 'FindNext', 'FloatToCurr', 'FloatToDateTime', 'FloatToDecimal', - 'FloatToStr', 'FloatToStrF', 'FloatToText', 'FloatToTextFmt', - 'FmtLoadStr', 'FmtStr', 'ForceDirectories', 'Format', 'FormatBuf', - 'FormatCurr', 'FormatDateTime', 'FormatFloat', 'FreeAndNil', - 'GUIDToString', 'GetCurrentDir', 'GetEnvironmentVariable', - 'GetFileVersion', 'GetFormatSettings', 'GetLocaleFormatSettings', - 'GetModuleName', 'GetPackageDescription', 'GetPackageInfo', 'GetTime', - 'IncAMonth', 'IncMonth', 'IncludeTrailingBackslash', - 'IncludeTrailingPathDelimiter', 'InitializePackage', 'IntToHex', - 'IntToStr', 'InterlockedDecrement', 'InterlockedExchange', - 'InterlockedExchangeAdd', 'InterlockedIncrement', 'IsDelimiter', - 'IsEqualGUID', 'IsLeapYear', 'IsPathDelimiter', 'IsValidIdent', - 'Languages', 'LastDelimiter', 'LoadPackage', 'LoadStr', 'LowerCase', - 'MSecsToTimeStamp', 'NewStr', 'NextCharIndex', 'Now', 'OutOfMemoryError', - 'QuotedStr', 'RaiseLastOSError', 'RaiseLastWin32Error', 'RemoveDir', - 'RenameFile', 'ReplaceDate', 'ReplaceTime', 'SafeLoadLibrary', - 'SameFileName', 'SameText', 'SetCurrentDir', 'ShowException', 'Sleep', - 'StrAlloc', 'StrBufSize', 'StrByteType', 'StrCat', 'StrCharLength', - 'StrComp', 'StrCopy', 'StrDispose', 'StrECopy', 'StrEnd', 'StrFmt', - 'StrIComp', 'StrLCat', 'StrLComp', 'StrLCopy', 'StrLFmt', 'StrLIComp', - 'StrLen', 'StrLower', 'StrMove', 'StrNew', 'StrNextChar', 'StrPCopy', - 'StrPLCopy', 'StrPas', 'StrPos', 'StrRScan', 'StrScan', 'StrToBool', - 'StrToBoolDef', 'StrToCurr', 'StrToCurrDef', 'StrToDate', 'StrToDateDef', - 'StrToDateTime', 'StrToDateTimeDef', 'StrToFloat', 'StrToFloatDef', - 'StrToInt', 'StrToInt64', 'StrToInt64Def', 'StrToIntDef', 'StrToTime', - 'StrToTimeDef', 'StrUpper', 'StringReplace', 'StringToGUID', 'Supports', - 'SysErrorMessage', 'SystemTimeToDateTime', 'TextToFloat', 'Time', - 'TimeStampToDateTime', 'TimeStampToMSecs', 'TimeToStr', 'Trim', - 'TrimLeft', 'TrimRight', 'TryEncodeDate', 'TryEncodeTime', - 'TryFloatToCurr', 'TryFloatToDateTime', 'TryStrToBool', 'TryStrToCurr', - 'TryStrToDate', 'TryStrToDateTime', 'TryStrToFloat', 'TryStrToInt', - 'TryStrToInt64', 'TryStrToTime', 'UnloadPackage', 'UpperCase', - 'WideCompareStr', 'WideCompareText', 'WideFmtStr', 'WideFormat', - 'WideFormatBuf', 'WideLowerCase', 'WideSameStr', 'WideSameText', - 'WideUpperCase', 'Win32Check', 'WrapText', - - 'ActivateClassGroup', 'AllocateHwnd', 'BinToHex', 'CheckSynchronize', - 'CollectionsEqual', 'CountGenerations', 'DeallocateHwnd', 'EqualRect', - 'ExtractStrings', 'FindClass', 'FindGlobalComponent', 'GetClass', - 'GroupDescendantsWith', 'HexToBin', 'IdentToInt', - 'InitInheritedComponent', 'IntToIdent', 'InvalidPoint', - 'IsUniqueGlobalComponentName', 'LineStart', 'ObjectBinaryToText', - 'ObjectResourceToText', 'ObjectTextToBinary', 'ObjectTextToResource', - 'PointsEqual', 'ReadComponentRes', 'ReadComponentResEx', - 'ReadComponentResFile', 'Rect', 'RegisterClass', 'RegisterClassAlias', - 'RegisterClasses', 'RegisterComponents', 'RegisterIntegerConsts', - 'RegisterNoIcon', 'RegisterNonActiveX', 'SmallPoint', 'StartClassGroup', - 'TestStreamFormat', 'UnregisterClass', 'UnregisterClasses', - 'UnregisterIntegerConsts', 'UnregisterModuleClasses', - 'WriteComponentResFile', - - 'ArcCos', 'ArcCosh', 'ArcCot', 'ArcCotH', 'ArcCsc', 'ArcCscH', 'ArcSec', - 'ArcSecH', 'ArcSin', 'ArcSinh', 'ArcTan2', 'ArcTanh', 'Ceil', - 'CompareValue', 'Cosecant', 'Cosh', 'Cot', 'CotH', 'Cotan', 'Csc', 'CscH', - 'CycleToDeg', 'CycleToGrad', 'CycleToRad', 'DegToCycle', 'DegToGrad', - 'DegToRad', 'DivMod', 'DoubleDecliningBalance', 'EnsureRange', 'Floor', - 'Frexp', 'FutureValue', 'GetExceptionMask', 'GetPrecisionMode', - 'GetRoundMode', 'GradToCycle', 'GradToDeg', 'GradToRad', 'Hypot', - 'InRange', 'IntPower', 'InterestPayment', 'InterestRate', - 'InternalRateOfReturn', 'IsInfinite', 'IsNan', 'IsZero', 'Ldexp', 'LnXP1', - 'Log10', 'Log2', 'LogN', 'Max', 'MaxIntValue', 'MaxValue', 'Mean', - 'MeanAndStdDev', 'Min', 'MinIntValue', 'MinValue', 'MomentSkewKurtosis', - 'NetPresentValue', 'Norm', 'NumberOfPeriods', 'Payment', 'PeriodPayment', - 'Poly', 'PopnStdDev', 'PopnVariance', 'Power', 'PresentValue', - 'RadToCycle', 'RadToDeg', 'RadToGrad', 'RandG', 'RandomRange', 'RoundTo', - 'SLNDepreciation', 'SYDDepreciation', 'SameValue', 'Sec', 'SecH', - 'Secant', 'SetExceptionMask', 'SetPrecisionMode', 'SetRoundMode', 'Sign', - 'SimpleRoundTo', 'SinCos', 'Sinh', 'StdDev', 'Sum', 'SumInt', - 'SumOfSquares', 'SumsAndSquares', 'Tan', 'Tanh', 'TotalVariance', - 'Variance' - ), - 4 => array( - 'AnsiChar', 'AnsiString', 'Bool', 'Boolean', 'Byte', 'ByteBool', 'Cardinal', 'Char', - 'Comp', 'Currency', 'DWORD', 'Double', 'Extended', 'Int64', 'Integer', 'IUnknown', - 'LongBool', 'LongInt', 'LongWord', 'PAnsiChar', 'PAnsiString', 'PBool', 'PBoolean', 'PByte', - 'PByteArray', 'PCardinal', 'PChar', 'PComp', 'PCurrency', 'PDWORD', 'PDate', 'PDateTime', - 'PDouble', 'PExtended', 'PInt64', 'PInteger', 'PLongInt', 'PLongWord', 'Pointer', 'PPointer', - 'PShortInt', 'PShortString', 'PSingle', 'PSmallInt', 'PString', 'PHandle', 'PVariant', 'PWord', - 'PWordArray', 'PWordBool', 'PWideChar', 'PWideString', 'Real', 'Real48', 'ShortInt', 'ShortString', - 'Single', 'SmallInt', 'String', 'TClass', 'TDate', 'TDateTime', 'TextFile', 'THandle', - 'TObject', 'TTime', 'Variant', 'WideChar', 'WideString', 'Word', 'WordBool' - ), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']'), - 1 => array('.', ',', ':', ';'), - 2 => array('@', '^'), - 3 => array('=', '+', '-', '*', '/') - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #008000; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #ff0000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'REGEXPS' => array( - 0 => 'color: #9ac;', - 1 => 'color: #ff0000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;', - 1 => 'color: #000066;', - 2 => 'color: #000066;', - 3 => 'color: #000066;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '\$[0-9a-fA-F]+', - //Characters - 1 => '\#(?:\$[0-9a-fA-F]{1,2}|\d{1,3})' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/diff.php b/system/application/libraries/geshi/diff.php deleted file mode 100644 index f1a4baf65..000000000 --- a/system/application/libraries/geshi/diff.php +++ /dev/null @@ -1,196 +0,0 @@ -<?php -/************************************************************************************* - * diff.php - * -------- - * Author: Conny Brunnkvist (conny@fuchsia.se), W. Tasin (tasin@fhm.edu) - * Copyright: (c) 2004 Fuchsia Open Source Solutions (http://www.fuchsia.se/) - * Release Version: 1.0.8.6 - * Date Started: 2004/12/29 - * - * Diff-output language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2006/02/27 - * - changing language file to use matching of start (^) and end ($) (wt) - * 2004/12/29 (1.0.0) - * - First Release - * - * TODO (updated 2006/02/27) - * ------------------------- - * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - - -$language_data = array ( - 'LANG_NAME' => 'Diff', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => ' ', - 'KEYWORDS' => array( - 1 => array( - '\ No newline at end of file' - ), -// 2 => array( -// '***************' /* This only seems to works in some cases? */ -// ), - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - 1 => false, -// 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #aaaaaa; font-style: italic;', -// 2 => 'color: #dd6611;', - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => '' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => '' - ), - 'SCRIPT' => array( - 0 => '' - ), - 'REGEXPS' => array( - 0 => 'color: #440088;', - 1 => 'color: #991111;', - 2 => 'color: #00b000;', - 3 => 'color: #888822;', - 4 => 'color: #888822;', - 5 => 'color: #0011dd;', - 6 => 'color: #440088;', - 7 => 'color: #991111;', - 8 => 'color: #00b000;', - 9 => 'color: #888822;', - ), - ), - 'URLS' => array( - 1 => '', -// 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - 0 => "[0-9,]+[acd][0-9,]+", - //Removed lines - 1 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\<.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Inserted lines - 2 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\>.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Location line - 3 => array( - GESHI_SEARCH => '(^|(?<=\A\s))-{3}\\s.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Inserted line - 4 => array( - GESHI_SEARCH => '(^|(?<=\A\s))(\\+){3}\\s.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Modified line - 5 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\!.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //File specification - 6 => array( - GESHI_SEARCH => '(^|(?<=\A\s))[\\@]{2}.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Removed line - 7 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\-.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Inserted line - 8 => array( - GESHI_SEARCH => '(^|(?<=\A\s))\\+.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //File specification - 9 => array( - GESHI_SEARCH => '(^|(?<=\A\s))(\\*){3}\\s.*$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/div.php b/system/application/libraries/geshi/div.php deleted file mode 100644 index 5804bb727..000000000 --- a/system/application/libraries/geshi/div.php +++ /dev/null @@ -1,126 +0,0 @@ -<?php -/************************************************************************************* - * div.php - * --------------------------------- - * Author: Gabriel Lorenzo (ermakina@gmail.com) - * Copyright: (c) 2005 Gabriel Lorenzo (http://ermakina.gazpachito.net) - * Release Version: 1.0.8.6 - * Date Started: 2005/06/19 - * - * DIV language file for GeSHi. - * - * CHANGES - * ------- - * 2005/06/22 (1.0.0) - * - First Release, includes "2nd gen" ELSEIF statement - * - * TODO (updated 2005/06/22) - * ------------------------- - * - I'm pretty satisfied with this, so nothing for now... :P - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'DIV', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'while','until','to','switch','step','return','repeat','loop','if','from','frame','for','end','elseif', - 'else','default','debug','continue','clone','case','break','begin' - ), - 2 => array( - 'xor','whoami','type','sizeof','pointer','or','offset','not','neg','mod','id','dup','and','_ne','_lt', - '_le','_gt','_ge','_eq' - ), - 3 => array( - 'setup_program','program','process','private','local','import','global','function','const', - 'compiler_options' - ), - 4 => array( - 'word','struct','string','int','byte' - ), - ), - 'SYMBOLS' => array( - '(',')','[',']','=','+','-','*','/','!','%','^','&',':',';',',','<','>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0040b1;', - 2 => 'color: #000000;', - 3 => 'color: #000066; font-weight: bold;', - 4 => 'color: #993333;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #44aa44;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #202020;', - ), - 'SYMBOLS' => array( - 0 => 'color: #44aa44;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/dos.php b/system/application/libraries/geshi/dos.php deleted file mode 100644 index c111e1b5e..000000000 --- a/system/application/libraries/geshi/dos.php +++ /dev/null @@ -1,198 +0,0 @@ -<?php -/************************************************************************************* - * dos.php - * ------- - * Author: Alessandro Staltari (staltari@geocities.com) - * Copyright: (c) 2005 Alessandro Staltari (http://www.geocities.com/SiliconValley/Vista/8155/) - * Release Version: 1.0.8.6 - * Date Started: 2005/07/05 - * - * DOS language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2005/07/05 (1.0.0) - * - First Release - * - * TODO (updated 2005/07/05) - * ------------------------- - * - * - Highlight pipes and redirection (do we really need this?) - * - Add missing keywords. - * - Find a good hyperlink for keywords. - * - Improve styles. - * - * KNOWN ISSUES (updated 2005/07/07) - * --------------------------------- - * - * - Doesn't even try to handle spaces in variables name or labels (I can't - * find a reliable way to establish if a sting is a name or not, in some - * cases it depends on the contex or enviroment status). - * - Doesn't handle %%[letter] pseudo variable used inside FOR constructs - * (it should be done only into its scope: how to handle variable it?). - * - Doesn't handle %~[something] pseudo arguments. - * - If the same keyword is placed at the end of the line and the - * beginning of the next, the second occourrence is not highlighted - * (this should be a GeSHi bug, not related to the language definition). - * - I can't avoid to have keyword highlighted even when they are not used - * as keywords but, for example, as arguments to the echo command. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'DOS', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - //DOS comment lines - 'COMMENT_REGEXP' => array(1 => "/^\s*@?REM.*$/mi"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /* Flow control keywords */ - 1 => array( - 'if', 'else', 'goto', 'shift', - 'for', 'in', 'do', - 'call', 'exit' - ), - /* IF statement keywords */ - 2 => array( - 'not', 'exist', 'errorlevel', - 'defined', - 'equ', 'neq', 'lss', 'leq', 'gtr', 'geq' - ), - /* Internal commands */ - 3 => array( - 'cd', 'md', 'rd', 'chdir', 'mkdir', 'rmdir', 'dir', - 'del', 'copy', 'move', 'ren', 'rename', - 'echo', - 'setlocal', 'endlocal', 'set', - 'pause', - 'pushd', 'popd', 'title', 'verify' - ), - /* Special files */ - 4 => array( - 'prn', 'nul', 'lpt3', 'lpt2', 'lpt1', 'con', - 'com4', 'com3', 'com2', 'com1', 'aux' - ) - ), - 'SYMBOLS' => array( - '(', ')', '@', '%' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00b100; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #b1b100; font-weight: bold;', - 4 => 'color: #0000ff; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #ff0000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #33cc33;', - 1 => 'color: #33cc33;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #b100b1; font-weight: bold;', - 1 => 'color: #448844;', - 2 => 'color: #448888;' - ) - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'URLS' => array( - 1 => 'http://www.ss64.com/nt/{FNAMEL}.html', - 2 => 'http://www.ss64.com/nt/{FNAMEL}.html', - 3 => 'http://www.ss64.com/nt/{FNAMEL}.html', - 4 => 'http://www.ss64.com/nt/{FNAMEL}.html' - ), - 'REGEXPS' => array( - /* Label */ - 0 => array( -/* GESHI_SEARCH => '((?si:[@\s]+GOTO\s+|\s+:)[\s]*)((?<!\n)[^\s\n]*)',*/ - GESHI_SEARCH => '((?si:[@\s]+GOTO\s+|\s+:)[\s]*)((?<!\n)[^\n]*)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'si', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - /* Variable assignement */ - 1 => array( -/* GESHI_SEARCH => '(SET[\s]+(?si:\/A[\s]+|\/P[\s]+|))([^=\s\n]+)([\s]*=)',*/ - GESHI_SEARCH => '(SET[\s]+(?si:\/A[\s]+|\/P[\s]+|))([^=\n]+)([\s]*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'si', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - /* Arguments or variable evaluation */ - 2 => array( -/* GESHI_SEARCH => '(%)([\d*]|[^%\s]*(?=%))((?<!%\d)%|)',*/ - GESHI_SEARCH => '(%(?:%(?=[a-z0-9]))?)([\d*]|(?:~[adfnpstxz]*(?:$\w+:)?)?[a-z0-9](?!\w)|[^%\n]*(?=%))((?<!%\d)%|)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'si', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 4 => array( - 'DISALLOWED_BEFORE' => '(?<!\w)' - ) - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/dot.php b/system/application/libraries/geshi/dot.php deleted file mode 100644 index 6e4df2fff..000000000 --- a/system/application/libraries/geshi/dot.php +++ /dev/null @@ -1,164 +0,0 @@ -<?php -/************************************************************************************* - * dot.php - * --------------------------------- - * Author: Adrien Friggeri (adrien@friggeri.net) - * Copyright: (c) 2007 Adrien Friggeri (http://www.friggeri.net) - * Release Version: 1.0.8.6 - * Date Started: 2007/05/30 - * - * dot language file for GeSHi. - * - * CHANGES - * ------- - * 2007/05/30 (1.0.0) - * - First Release - * - * TODO (updated 2007/05/30) - * ------------------------- - * Everything - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'dot', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'URL', 'arrowhead', 'arrowsize', 'arrowtail', 'bb', 'bgcolor', 'bottomlabel', - 'center', 'clusterrank', 'color', 'comment', 'constraint', 'decorate', - 'dir', 'distortion', 'fillcolor', 'fixedsize', 'fontcolor', - 'fontname', 'fontsize', 'group', 'headclip', 'headlabel', 'headport', - 'height', 'id', 'label', 'labelangle', 'labeldistance', 'labelfontcolor', - 'labelfontname', 'labelfontsize', 'layer', 'layers', 'margin', 'mclimit', - 'minlen', 'nodesep', 'nslimit', 'ordering', 'orientation', 'page', - 'pagedir', 'peripheries', 'port_label_distance', 'quantum', 'rank', 'rankdir', - 'ranksep', 'ratio', 'regular', 'rotate', 'samehead', 'sametail', 'searchsize', - 'shape', 'shapefile', 'showboxes', 'sides', 'size', 'skew', 'style', - 'tailclip', 'taillabel', 'tailport', 'toplabel', 'weight', 'width' - ), - 2 => array( - 'node', 'graph', 'digraph', 'strict', 'edge', 'subgraph' - ), - 3 => array( - 'Mcircle', 'Mdiamond', 'Mrecord', 'Msquare', 'auto', 'back', 'bold', - 'both', 'box', 'circle', 'compress', 'dashed', 'diamond', 'dot', - 'dotted', 'doublecircle', 'doubleoctagon', 'egg', 'ellipse', 'epsf', - 'false', 'fill', 'filled', 'forward', 'global', 'hexagon', 'house', - 'inv', 'invdot', 'invhouse', 'invis', 'invodot', 'invtrapezium', - 'invtriangle', 'local', 'max', 'min', 'none', 'normal', 'octagon', - 'odot', 'out', 'parallelogram', 'plaintext', 'polygon', 'record', - 'same', 'solid', 'trapezium', 'triangle', 'tripleoctagon', 'true' - ), - 4 => array( - 'aliceblue', 'antiquewhite', 'aquamarine', 'azure', 'beige', 'bisque', 'black', - 'blanchedalmond', 'blue', 'blueviolet', 'brown', 'burlywood', 'cadetblue', - 'chartreuse', 'chocolate', 'coral', 'cornflowerblue', 'cornsilk', 'crimson', - 'cyan', 'darkgoldenrod', 'darkgreen', 'darkkhaki', 'darkolivegreen', - 'darkorange', 'darkorchid', 'darksalmon', 'darkseagreen', 'darkslateblue', - 'darkslategray', 'darkturquoise', 'darkviolet', 'deeppink', 'deepskyblue', - 'dimgray', 'dodgerblue', 'firebrick', 'forestgreen', 'gainsboro', 'ghostwhite', - 'gold', 'goldenrod', 'gray', 'green', 'greenyellow', 'honeydew', 'hotpink', - 'indianred', 'indigo', 'ivory', 'khaki', 'lavender', 'lavenderblush', - 'lawngreen', 'lemonchiffon', 'lightblue', 'lightcyan', 'lightgoldenrod', - 'lightgoldenrodyellow', 'lightgray', 'lightpink', 'lightsalmon', - 'lightseagreen', 'lightskyblue', 'lightslateblue', 'lightslategray', - 'lightyellow', 'limegreen', 'linen', 'magenta', 'maroon', 'mediumaquamarine', - 'mediumblue', 'mediumorchid', 'mediumpurple', 'mediumseagreen', - 'mediumslateblue', 'mediumspringgreen', 'mediumturquoise', 'mediumvioletred', - 'midnightblue', 'mintcream', 'mistyrose', 'moccasin', 'navajowhite', 'navy', - 'navyblue', 'oldlace', 'olivedrab', 'oralwhite', 'orange', 'orangered', - 'orchid', 'palegoldenrod', 'palegreen', 'paleturquoise', 'palevioletred', - 'papayawhip', 'peachpuff', 'peru', 'pink', 'plum', 'powderblue', 'purple', - 'red', 'rosybrown', 'royalblue', 'saddlebrown', 'salmon', 'salmon2', 'sandybrown', - 'seagreen', 'seashell', 'sienna', 'skyblue', 'slateblue', 'slategray', 'snow', - 'springgreen', 'steelblue', 'tan', 'thistle', 'tomato', 'turquoise', 'violet', - 'violetred', 'wheat', 'white', 'whitesmoke', 'yellow', 'yellowgreen' - ) - ), - 'SYMBOLS' => array( - '[', ']', '{', '}', '-', '+', '*', '/', '<', '>', '!', '~', '%', '&', '|', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #993333;', - 4 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #339933;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #af624d; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'METHODS' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ), - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/eiffel.php b/system/application/libraries/geshi/eiffel.php deleted file mode 100644 index fa293c074..000000000 --- a/system/application/libraries/geshi/eiffel.php +++ /dev/null @@ -1,395 +0,0 @@ -<?php -/************************************************************************************* - * eiffel.php - * ---------- - * Author: Zoran Simic (zsimic@axarosenberg.com) - * Copyright: (c) 2005 Zoran Simic - * Release Version: 1.0.8.6 - * Date Started: 2005/06/30 - * - * Eiffel language file for GeSHi. - * - * CHANGES - * ------- - * 2005/06/30 (1.0.7) - * - Initial release - * - * TODO (updated 2005/06/30) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Eiffel', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '%', - 'KEYWORDS' => array( - 1 => array( - 'separate', - 'invariant', - 'inherit', - 'indexing', - 'feature', - 'expanded', - 'deferred', - 'class' - ), - 2 => array( - 'xor', - 'when', - 'variant', - 'until', - 'unique', - 'undefine', - 'then', - 'strip', - 'select', - 'retry', - 'rescue', - 'require', - 'rename', - 'reference', - 'redefine', - 'prefix', - 'or', - 'once', - 'old', - 'obsolete', - 'not', - 'loop', - 'local', - 'like', - 'is', - 'inspect', - 'infix', - 'include', - 'implies', - 'if', - 'frozen', - 'from', - 'external', - 'export', - 'ensure', - 'end', - 'elseif', - 'else', - 'do', - 'creation', - 'create', - 'check', - 'as', - 'and', - 'alias', - 'agent' - ), - 3 => array( - 'Void', - 'True', - 'Result', - 'Precursor', - 'False', - 'Current' - ), - 4 => array( - 'UNIX_SIGNALS', - 'UNIX_FILE_INFO', - 'UNBOUNDED', - 'TWO_WAY_TREE_CURSOR', - 'TWO_WAY_TREE', - 'TWO_WAY_SORTED_SET', - 'TWO_WAY_LIST', - 'TWO_WAY_CURSOR_TREE', - 'TWO_WAY_CIRCULAR', - 'TWO_WAY_CHAIN_ITERATOR', - 'TUPLE', - 'TREE', - 'TRAVERSABLE', - 'TO_SPECIAL', - 'THREAD_CONTROL', - 'THREAD_ATTRIBUTES', - 'THREAD', - 'TABLE', - 'SUBSET', - 'STRING_HANDLER', - 'STRING', - 'STREAM', - 'STORABLE', - 'STD_FILES', - 'STACK', - 'SPECIAL', - 'SORTED_TWO_WAY_LIST', - 'SORTED_STRUCT', - 'SORTED_LIST', - 'SINGLE_MATH', - 'SET', - 'SEQUENCE', - 'SEQ_STRING', - 'SEMAPHORE', - 'ROUTINE', - 'RESIZABLE', - 'RECURSIVE_TREE_CURSOR', - 'RECURSIVE_CURSOR_TREE', - 'REAL_REF', - 'REAL', - 'RAW_FILE', - 'RANDOM', - 'QUEUE', - 'PROXY', - 'PROFILING_SETTING', - 'PROCEDURE', - 'PRIORITY_QUEUE', - 'PRIMES', - 'PRECOMP', - 'POINTER_REF', - 'POINTER', - 'PLATFORM', - 'PLAIN_TEXT_FILE', - 'PATH_NAME', - 'PART_SORTED_TWO_WAY_LIST', - 'PART_SORTED_SET', - 'PART_SORTED_LIST', - 'PART_COMPARABLE', - 'OPERATING_ENVIRONMENT', - 'ONCE_CONTROL', - 'OBJECT_OWNER', - 'OBJECT_CONTROL', - 'NUMERIC', - 'NONE', - 'MUTEX', - 'MULTI_ARRAY_LIST', - 'MULTAR_LIST_CURSOR', - 'MEMORY', - 'MEM_INFO', - 'MEM_CONST', - 'MATH_CONST', - 'LIST', - 'LINKED_TREE_CURSOR', - 'LINKED_TREE', - 'LINKED_STACK', - 'LINKED_SET', - 'LINKED_QUEUE', - 'LINKED_PRIORITY_QUEUE', - 'LINKED_LIST_CURSOR', - 'LINKED_LIST', - 'LINKED_CURSOR_TREE', - 'LINKED_CIRCULAR', - 'LINKABLE', - 'LINEAR_ITERATOR', - 'LINEAR', - 'ITERATOR', - 'IO_MEDIUM', - 'INTERNAL', - 'INTEGER_REF', - 'INTEGER_INTERVAL', - 'INTEGER', - 'INFINITE', - 'INDEXABLE', - 'IDENTIFIED_CONTROLLER', - 'IDENTIFIED', - 'HIERARCHICAL', - 'HEAP_PRIORITY_QUEUE', - 'HASHABLE', - 'HASH_TABLE_CURSOR', - 'HASH_TABLE', - 'GENERAL', - 'GC_INFO', - 'FUNCTION', - 'FORMAT_INTEGER', - 'FORMAT_DOUBLE', - 'FIXED_TREE', - 'FIXED_LIST', - 'FIXED', - 'FINITE', - 'FILE_NAME', - 'FILE', - 'FIBONACCI', - 'EXECUTION_ENVIRONMENT', - 'EXCEPTIONS', - 'EXCEP_CONST', - 'DYNAMIC_TREE', - 'DYNAMIC_LIST', - 'DYNAMIC_CIRCULAR', - 'DYNAMIC_CHAIN', - 'DOUBLE_REF', - 'DOUBLE_MATH', - 'DOUBLE', - 'DISPENSER', - 'DIRECTORY_NAME', - 'DIRECTORY', - 'DECLARATOR', - 'DEBUG_OUTPUT', - 'CURSOR_TREE_ITERATOR', - 'CURSOR_TREE', - 'CURSOR_STRUCTURE', - 'CURSOR', - 'COUNTABLE_SEQUENCE', - 'COUNTABLE', - 'CONTAINER', - 'CONSOLE', - 'CONDITION_VARIABLE', - 'COMPARABLE_STRUCT', - 'COMPARABLE_SET', - 'COMPARABLE', - 'COMPACT_TREE_CURSOR', - 'COMPACT_CURSOR_TREE', - 'COLLECTION', - 'CIRCULAR_CURSOR', - 'CIRCULAR', - 'CHARACTER_REF', - 'CHARACTER', - 'CHAIN', - 'CELL', - 'BOX', - 'BOUNDED_STACK', - 'BOUNDED_QUEUE', - 'BOUNDED', - 'BOOLEAN_REF', - 'BOOLEAN', - 'BOOL_STRING', - 'BIT_REF', - 'BINARY_TREE', - 'BINARY_SEARCH_TREE_SET', - 'BINARY_SEARCH_TREE', - 'BILINEAR', - 'BI_LINKABLE', - 'BASIC_ROUTINES', - 'BAG', - 'ASCII', - 'ARRAYED_TREE', - 'ARRAYED_STACK', - 'ARRAYED_QUEUE', - 'ARRAYED_LIST_CURSOR', - 'ARRAYED_LIST', - 'ARRAYED_CIRCULAR', - 'ARRAY2', - 'ARRAY', - 'ARGUMENTS', - 'ANY', - 'ACTIVE' - ), - 5 => array( - 'yes', - 'visible', - 'trace', - 'system', - 'root', - 'profile', - 'override_cluster', - 'object', - 'no', - 'multithreaded', - 'msil_generation_type', - 'line_generation', - 'library', - 'inlining_size', - 'inlining', - 'include_path', - 'il_verifiable', - 'exclude', - 'exception_trace', - 'dynamic_runtime', - 'dotnet_naming_convention', - 'disabled_debug', - 'default', - 'debug', - 'dead_code_removal', - 'console_application', - 'cluster', - 'cls_compliant', - 'check_vape', - 'assertion', - 'array_optimization', - 'all', - 'address_expression' - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', '|', ':', - '(', ')', '{', '}', '[', ']', '#' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => true, - 5 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF; font-weight: bold;', - 2 => 'color: #0600FF; font-weight: bold;', - 3 => 'color: #800080;', - 4 => 'color: #800000', - 5 => 'color: #603000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000; font-style: italic;', - 'MULTI' => '' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #005070; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #FF0000;' - ), - 'STRINGS' => array( - 0 => 'color: #0080A0;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #000060;', - 2 => 'color: #000050;' - ), - 'SYMBOLS' => array( - 0 => 'color: #600000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => 'http://www.google.com/search?q=site%3Ahttp%3A%2F%2Fdocs.eiffel.com%2Feiffelstudio%2Flibraries+{FNAMEL}&btnI=I%27m+Feeling+Lucky', - 5 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/email.php b/system/application/libraries/geshi/email.php deleted file mode 100644 index a902433bf..000000000 --- a/system/application/libraries/geshi/email.php +++ /dev/null @@ -1,210 +0,0 @@ -<?php -/************************************************************************************* - * email.php - * --------------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2008/10/19 - * - * Email (mbox \ eml \ RFC format) language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/19 (1.0.8.1) - * - First Release - * - * TODO (updated 2008/10/19) - * ------------------------- - * * Better checks when a header field should be expected - * * Fix the bound checks for kw groups 2 and 3, as well as rx group 1 - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'eMail (mbox)', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'HTTP', 'SMTP', 'ASMTP', 'ESMTP' - ), - 2 => array( - 'Authentication-Results','Content-Description','Content-Type', - 'Content-Disposition','Content-Transfer-Encoding','Delivered-To', - 'Dkim-Signature','Domainkey-Signature','In-Reply-To','Message-Id', - 'MIME-Version','OpenPGP','Received','Received-SPF','References', - 'Resend-From','Resend-To','Return-Path','User-Agent' - ), - 3 => array( - 'Date','From','Subject','To', - ), - 4 => array( - 'by', 'for', 'from', 'id', 'with' - ) - ), - 'SYMBOLS' => array( - ':', ';', '<', '>', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => false, - 3 => false, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #800000; font-weight: bold;', - 4 => 'font-weight: bold;', - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - 0 => 'color: #000040;', - ), - 'REGEXPS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #0000FF;', - 3 => 'color: #008000;', - 4 => 'color: #0000FF; font-weight: bold;', - 5 => 'font-weight: bold;', - 6 => 'color: #400080;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // Non-Standard-Header - 1 => array( - GESHI_SEARCH => "(?<=\A\x20|\n)x-[a-z0-9\-]*(?=\s*:|\s*<)", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "smi", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //Email-Adresses or Mail-IDs - 2 => array( - GESHI_SEARCH => "\b[\w\.\-]+@\w+(?:(?:\.\w+)*\.\w{2,4})?", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "mi", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //Date values in RFC format - 3 => array( - GESHI_SEARCH => "\b(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s+\d\d?\s+" . - "(?:Jan|Feb|Mar|apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+" . - "\d{4}\s+\d\d?:\d\d:\d\d\s+[+\-]\d{4}(?:\s+\(\w+\))?", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "mi", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //IP addresses - 4 => array( - GESHI_SEARCH => "(?<=\s)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=\s)|". - "(?<=\[)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=\])|". - "(?<==)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(?=<)", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "i", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //Field-Assignments - 5 => array( - GESHI_SEARCH => "(?<=\s)[A-Z0-9\-\.]+(?==(?:$|\s$|[^\s=]))", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "mi", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - //MIME type - 6 => array( - GESHI_SEARCH => "(?<=\s)(?:audio|application|image|multipart|text|". - "video|x-[a-z0-9\-]+)\/[a-z0-9][a-z0-9\-]*(?=\s|<|$)", - GESHI_REPLACE => "\\0", - GESHI_MODIFIERS => "m", - GESHI_BEFORE => "", - GESHI_AFTER => "" - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - 0 => "/(?P<start>^)[A-Z][a-zA-Z0-9\-]*\s*:\s*(?:.|(?=\n\s)\n)*(?P<end>$)/m" - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 2 => array( - 'DISALLOWED_BEFORE' => '(?<=\A\x20|\n)', - 'DISALLOWED_AFTER' => '(?=\s*:)', - ), - 3 => array( - 'DISALLOWED_BEFORE' => '(?<=\A\x20|\n)', - 'DISALLOWED_AFTER' => '(?=\s*:)', - ), - 4 => array( - 'DISALLOWED_BEFORE' => '(?<=\s)', - 'DISALLOWED_AFTER' => '(?=\s|\b)', - ) - ), - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'COMMENTS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/erlang.php b/system/application/libraries/geshi/erlang.php deleted file mode 100644 index cb7f25bf8..000000000 --- a/system/application/libraries/geshi/erlang.php +++ /dev/null @@ -1,441 +0,0 @@ -<?php -/************************************************************************************* - * erlang.php - * -------- - * Author: Benny Baumann (BenBE@geshi.org) - * Contributions: - * - Uwe Dauernheim (uwe@dauernheim.net) - * - Dan Forest-Barbier (dan@twisted.in) - * Copyright: (c) 2008 Uwe Dauernheim (http://www.kreisquadratur.de/) - * Release Version: 1.0.8.6 - * Date Started: 2008-09-27 - * - * Erlang language file for GeSHi. - * - * CHANGES - * ------- - * 2009/05/02 (1.0.8.3) - * - Now using 'PARSER_CONTROL' instead of huge rexgexps, better and cleaner - * - * 2009/04/26 (1.0.8.3) - * - Only link to existing docs / Fixes - * - * 2008-09-28 (1.0.0.1) - * [!] Bug fixed with keyword module. - * [+] Added more function names - * - * 2008-09-27 (1.0.0) - * [ ] First Release - * - * TODO (updated 2008-09-27) - * ------------------------- - * [!] Stop ';' from being transformed to '<SEMI>' - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'Erlang', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("'", "\\"), - 'HARDCHAR' => "\\", - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - //Control flow keywrods - 1 => array( - 'after', 'andalso', 'begin', 'case', 'catch', 'end', 'fun', 'if', - 'of', 'orelse', 'receive', 'try', 'when', 'query' - ), - //Binary operators - 2 => array( - 'and', 'band', 'bnot', 'bor', 'bsl', 'bsr', 'bxor', 'div', 'not', - 'or', 'rem', 'xor' - ), - 3 => array( - 'abs', 'alive', 'apply', 'atom_to_list', 'binary_to_list', - 'binary_to_term', 'concat_binary', 'date', 'disconnect_node', - 'element', 'erase', 'exit', 'float', 'float_to_list', 'get', - 'get_keys', 'group_leader', 'halt', 'hd', 'integer_to_list', - 'is_alive', 'length', 'link', 'list_to_atom', 'list_to_binary', - 'list_to_float', 'list_to_integer', 'list_to_pid', 'list_to_tuple', - 'load_module', 'make_ref', 'monitor_node', 'node', 'nodes', 'now', - 'open_port', 'pid_to_list', 'process_flag', 'process_info', - 'process', 'put', 'register', 'registered', 'round', 'self', - 'setelement', 'size', 'spawn', 'spawn_link', 'split_binary', - 'statistics', 'term_to_binary', 'throw', 'time', 'tl', 'trunc', - 'tuple_to_list', 'unlink', 'unregister', 'whereis' - ), - // Built-In Functions - 4 => array( - 'atom', 'binary', 'constant', 'function', 'integer', 'is_atom', - 'is_binary', 'is_constant', 'is_function', 'is_integer', 'is_list', - 'is_number', 'is_pid', 'is_reference', 'is_record', 'list', - 'number', 'pid', 'ports', 'port_close', 'port_info', 'reference' - ), - // Erlang/OTP internal modules (scary one) - 5 => array( - 'alarm_handler', 'any', 'app', 'application', 'appmon', 'appup', - 'array', 'asn1ct', 'asn1rt', 'auth', 'base64', 'beam_lib', 'c', - 'calendar', 'code', 'common_test_app', 'compile', 'config', - 'corba', 'corba_object', 'cosEventApp', 'CosEventChannelAdmin', - 'CosEventChannelAdmin_ConsumerAdmin', - 'CosEventChannelAdmin_EventChannel', - 'CosEventChannelAdmin_ProxyPullConsumer', - 'CosEventChannelAdmin_ProxyPullSupplier', - 'CosEventChannelAdmin_ProxyPushConsumer', - 'CosEventChannelAdmin_ProxyPushSupplier', - 'CosEventChannelAdmin_SupplierAdmin', 'CosEventDomainAdmin', - 'CosEventDomainAdmin_EventDomain', - 'CosEventDomainAdmin_EventDomainFactory', - 'cosEventDomainApp', 'CosFileTransfer_Directory', - 'CosFileTransfer_File', 'CosFileTransfer_FileIterator', - 'CosFileTransfer_FileTransferSession', - 'CosFileTransfer_VirtualFileSystem', - 'cosFileTransferApp', 'CosNaming', 'CosNaming_BindingIterator', - 'CosNaming_NamingContext', 'CosNaming_NamingContextExt', - 'CosNotification', 'CosNotification_AdminPropertiesAdmin', - 'CosNotification_QoSAdmin', 'cosNotificationApp', - 'CosNotifyChannelAdmin_ConsumerAdmin', - 'CosNotifyChannelAdmin_EventChannel', - 'CosNotifyChannelAdmin_EventChannelFactory', - 'CosNotifyChannelAdmin_ProxyConsumer', - 'CosNotifyChannelAdmin_ProxyPullConsumer', - 'CosNotifyChannelAdmin_ProxyPullSupplier', - 'CosNotifyChannelAdmin_ProxyPushConsumer', - 'CosNotifyChannelAdmin_ProxyPushSupplier', - 'CosNotifyChannelAdmin_ProxySupplier', - 'CosNotifyChannelAdmin_SequenceProxyPullConsumer', - 'CosNotifyChannelAdmin_SequenceProxyPullSupplier', - 'CosNotifyChannelAdmin_SequenceProxyPushConsumer', - 'CosNotifyChannelAdmin_SequenceProxyPushSupplier', - 'CosNotifyChannelAdmin_StructuredProxyPullConsumer', - 'CosNotifyChannelAdmin_StructuredProxyPullSupplier', - 'CosNotifyChannelAdmin_StructuredProxyPushConsumer', - 'CosNotifyChannelAdmin_StructuredProxyPushSupplier', - 'CosNotifyChannelAdmin_SupplierAdmin', - 'CosNotifyComm_NotifyPublish', 'CosNotifyComm_NotifySubscribe', - 'CosNotifyFilter_Filter', 'CosNotifyFilter_FilterAdmin', - 'CosNotifyFilter_FilterFactory', 'CosNotifyFilter_MappingFilter', - 'cosProperty', 'CosPropertyService_PropertiesIterator', - 'CosPropertyService_PropertyNamesIterator', - 'CosPropertyService_PropertySet', - 'CosPropertyService_PropertySetDef', - 'CosPropertyService_PropertySetDefFactory', - 'CosPropertyService_PropertySetFactory', 'cosTime', - 'CosTime_TimeService', 'CosTime_TIO', 'CosTime_UTO', - 'CosTimerEvent_TimerEventHandler', - 'CosTimerEvent_TimerEventService', 'cosTransactions', - 'CosTransactions_Control', 'CosTransactions_Coordinator', - 'CosTransactions_RecoveryCoordinator', 'CosTransactions_Resource', - 'CosTransactions_SubtransactionAwareResource', - 'CosTransactions_Terminator', 'CosTransactions_TransactionFactory', - 'cover', 'cprof', 'cpu_sup', 'crashdump', 'crypto', 'crypto_app', - 'ct', 'ct_cover', 'ct_ftp', 'ct_master', 'ct_rpc', 'ct_snmp', - 'ct_ssh', 'ct_telnet', 'dbg', 'debugger', 'dets', 'dialyzer', - 'dict', 'digraph', 'digraph_utils', 'disk_log', 'disksup', - 'docb_gen', 'docb_transform', 'docb_xml_check', 'docbuilder_app', - 'driver_entry', 'edoc', 'edoc_doclet', 'edoc_extract', - 'edoc_layout', 'edoc_lib', 'edoc_run', 'egd', 'ei', 'ei_connect', - 'epmd', 'epp', 'epp_dodger', 'eprof', 'erl', 'erl_boot_server', - 'erl_call', 'erl_comment_scan', 'erl_connect', 'erl_ddll', - 'erl_driver', 'erl_error', 'erl_eterm', 'erl_eval', - 'erl_expand_records', 'erl_format', 'erl_global', 'erl_id_trans', - 'erl_internal', 'erl_lint', 'erl_malloc', 'erl_marshal', - 'erl_parse', 'erl_pp', 'erl_prettypr', 'erl_prim_loader', - 'erl_prim_loader_stub', 'erl_recomment', 'erl_scan', - 'erl_set_memory_block', 'erl_syntax', 'erl_syntax_lib', 'erl_tar', - 'erl_tidy', 'erlang', 'erlang_mode', 'erlang_stub', 'erlc', - 'erlsrv', 'error_handler', 'error_logger', 'erts_alloc', - 'erts_alloc_config', 'escript', 'et', 'et_collector', - 'et_selector', 'et_viewer', 'etop', 'ets', 'eunit', 'file', - 'file_sorter', 'filelib', 'filename', 'fixed', 'fprof', 'ftp', - 'gb_sets', 'gb_trees', 'gen_event', 'gen_fsm', 'gen_sctp', - 'gen_server', 'gen_tcp', 'gen_udp', 'gl', 'global', 'global_group', - 'glu', 'gs', 'heart', 'http', 'httpd', 'httpd_conf', - 'httpd_socket', 'httpd_util', 'i', 'ic', 'ic_c_protocol', - 'ic_clib', 'igor', 'inet', 'inets', 'init', 'init_stub', - 'instrument', 'int', 'interceptors', 'inviso', 'inviso_as_lib', - 'inviso_lfm', 'inviso_lfm_tpfreader', 'inviso_rt', - 'inviso_rt_meta', 'io', 'io_lib', 'kernel_app', 'lib', 'lists', - 'lname', 'lname_component', 'log_mf_h', 'make', 'math', 'megaco', - 'megaco_codec_meas', 'megaco_codec_transform', - 'megaco_edist_compress', 'megaco_encoder', 'megaco_flex_scanner', - 'megaco_tcp', 'megaco_transport', 'megaco_udp', 'megaco_user', - 'memsup', 'mnesia', 'mnesia_frag_hash', 'mnesia_registry', - 'mod_alias', 'mod_auth', 'mod_esi', 'mod_security', - 'Module_Interface', 'ms_transform', 'net_adm', 'net_kernel', - 'new_ssl', 'nteventlog', 'observer_app', 'odbc', 'orber', - 'orber_acl', 'orber_diagnostics', 'orber_ifr', 'orber_tc', - 'orddict', 'ordsets', 'os', 'os_mon', 'os_mon_mib', 'os_sup', - 'otp_mib', 'overload', 'packages', 'percept', 'percept_profile', - 'pg', 'pg2', 'pman', 'pool', 'prettypr', 'proc_lib', 'proplists', - 'public_key', 'qlc', 'queue', 'random', 'rb', 're', 'regexp', - 'registry', 'rel', 'release_handler', 'reltool', 'relup', 'rpc', - 'run_erl', 'run_test', 'runtime_tools_app', 'sasl_app', 'script', - 'seq_trace', 'sets', 'shell', 'shell_default', 'slave', 'snmp', - 'snmp_app', 'snmp_community_mib', 'snmp_framework_mib', - 'snmp_generic', 'snmp_index', 'snmp_notification_mib', 'snmp_pdus', - 'snmp_standard_mib', 'snmp_target_mib', 'snmp_user_based_sm_mib', - 'snmp_view_based_acm_mib', 'snmpa', 'snmpa_conf', 'snmpa_error', - 'snmpa_error_io', 'snmpa_error_logger', 'snmpa_error_report', - 'snmpa_local_db', 'snmpa_mpd', 'snmpa_network_interface', - 'snmpa_network_interface_filter', - 'snmpa_notification_delivery_info_receiver', - 'snmpa_notification_filter', 'snmpa_supervisor', 'snmpc', 'snmpm', - 'snmpm_conf', 'snmpm_mpd', 'snmpm_network_interface', 'snmpm_user', - 'sofs', 'ssh', 'ssh_channel', 'ssh_connection', 'ssh_sftp', - 'ssh_sftpd', 'ssl', 'ssl_app', 'ssl_pkix', 'start', 'start_erl', - 'start_webtool', 'stdlib_app', 'string', 'supervisor', - 'supervisor_bridge', 'sys', 'systools', 'tags', 'test_server', - 'test_server_app', 'test_server_ctrl', 'tftp', 'timer', 'toolbar', - 'ttb', 'tv', 'unicode', 'unix_telnet', 'user', 'webtool', 'werl', - 'win32reg', 'wrap_log_reader', 'wx', 'wx_misc', 'wx_object', - 'wxAcceleratorEntry', 'wxAcceleratorTable', 'wxArtProvider', - 'wxAuiDockArt', 'wxAuiManager', 'wxAuiNotebook', 'wxAuiPaneInfo', - 'wxAuiTabArt', 'wxBitmap', 'wxBitmapButton', 'wxBitmapDataObject', - 'wxBoxSizer', 'wxBrush', 'wxBufferedDC', 'wxBufferedPaintDC', - 'wxButton', 'wxCalendarCtrl', 'wxCalendarDateAttr', - 'wxCalendarEvent', 'wxCaret', 'wxCheckBox', 'wxCheckListBox', - 'wxChildFocusEvent', 'wxChoice', 'wxClientDC', 'wxClipboard', - 'wxCloseEvent', 'wxColourData', 'wxColourDialog', - 'wxColourPickerCtrl', 'wxColourPickerEvent', 'wxComboBox', - 'wxCommandEvent', 'wxContextMenuEvent', 'wxControl', - 'wxControlWithItems', 'wxCursor', 'wxDataObject', 'wxDateEvent', - 'wxDatePickerCtrl', 'wxDC', 'wxDialog', 'wxDirDialog', - 'wxDirPickerCtrl', 'wxDisplayChangedEvent', 'wxEraseEvent', - 'wxEvent', 'wxEvtHandler', 'wxFileDataObject', 'wxFileDialog', - 'wxFileDirPickerEvent', 'wxFilePickerCtrl', 'wxFindReplaceData', - 'wxFindReplaceDialog', 'wxFlexGridSizer', 'wxFocusEvent', 'wxFont', - 'wxFontData', 'wxFontDialog', 'wxFontPickerCtrl', - 'wxFontPickerEvent', 'wxFrame', 'wxGauge', 'wxGBSizerItem', - 'wxGenericDirCtrl', 'wxGLCanvas', 'wxGraphicsBrush', - 'wxGraphicsContext', 'wxGraphicsFont', 'wxGraphicsMatrix', - 'wxGraphicsObject', 'wxGraphicsPath', 'wxGraphicsPen', - 'wxGraphicsRenderer', 'wxGrid', 'wxGridBagSizer', 'wxGridCellAttr', - 'wxGridCellEditor', 'wxGridCellRenderer', 'wxGridEvent', - 'wxGridSizer', 'wxHelpEvent', 'wxHtmlEasyPrinting', 'wxIcon', - 'wxIconBundle', 'wxIconizeEvent', 'wxIdleEvent', 'wxImage', - 'wxImageList', 'wxJoystickEvent', 'wxKeyEvent', - 'wxLayoutAlgorithm', 'wxListBox', 'wxListCtrl', 'wxListEvent', - 'wxListItem', 'wxListView', 'wxMask', 'wxMaximizeEvent', - 'wxMDIChildFrame', 'wxMDIClientWindow', 'wxMDIParentFrame', - 'wxMemoryDC', 'wxMenu', 'wxMenuBar', 'wxMenuEvent', 'wxMenuItem', - 'wxMessageDialog', 'wxMiniFrame', 'wxMirrorDC', - 'wxMouseCaptureChangedEvent', 'wxMouseEvent', 'wxMoveEvent', - 'wxMultiChoiceDialog', 'wxNavigationKeyEvent', 'wxNcPaintEvent', - 'wxNotebook', 'wxNotebookEvent', 'wxNotifyEvent', - 'wxPageSetupDialog', 'wxPageSetupDialogData', 'wxPaintDC', - 'wxPaintEvent', 'wxPalette', 'wxPaletteChangedEvent', 'wxPanel', - 'wxPasswordEntryDialog', 'wxPen', 'wxPickerBase', 'wxPostScriptDC', - 'wxPreviewCanvas', 'wxPreviewControlBar', 'wxPreviewFrame', - 'wxPrintData', 'wxPrintDialog', 'wxPrintDialogData', 'wxPrinter', - 'wxPrintout', 'wxPrintPreview', 'wxProgressDialog', - 'wxQueryNewPaletteEvent', 'wxRadioBox', 'wxRadioButton', - 'wxRegion', 'wxSashEvent', 'wxSashLayoutWindow', 'wxSashWindow', - 'wxScreenDC', 'wxScrollBar', 'wxScrolledWindow', 'wxScrollEvent', - 'wxScrollWinEvent', 'wxSetCursorEvent', 'wxShowEvent', - 'wxSingleChoiceDialog', 'wxSizeEvent', 'wxSizer', 'wxSizerFlags', - 'wxSizerItem', 'wxSlider', 'wxSpinButton', 'wxSpinCtrl', - 'wxSpinEvent', 'wxSplashScreen', 'wxSplitterEvent', - 'wxSplitterWindow', 'wxStaticBitmap', 'wxStaticBox', - 'wxStaticBoxSizer', 'wxStaticLine', 'wxStaticText', 'wxStatusBar', - 'wxStdDialogButtonSizer', 'wxStyledTextCtrl', 'wxStyledTextEvent', - 'wxSysColourChangedEvent', 'wxTextAttr', 'wxTextCtrl', - 'wxTextDataObject', 'wxTextEntryDialog', 'wxToggleButton', - 'wxToolBar', 'wxToolTip', 'wxTopLevelWindow', 'wxTreeCtrl', - 'wxTreeEvent', 'wxUpdateUIEvent', 'wxWindow', 'wxWindowCreateEvent', - 'wxWindowDC', 'wxWindowDestroyEvent', 'wxXmlResource', 'xmerl', - 'xmerl_eventp', 'xmerl_scan', 'xmerl_xpath', 'xmerl_xs', - 'xmerl_xsd', 'xref', 'yecc', 'zip', 'zlib', 'zlib_stub' - ), - //Â Binary modifiers - 6 => array( - 'big', 'binary', 'float', 'integer', 'little', 'signed', 'unit', 'unsigned' - ) - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']', '{', '}'), - 1 => array('->', ',', ';', '.'), - 2 => array('<<', '>>'), - 3 => array('=', '||', '-', '+', '*', '/', '++', '--', '!', '<', '>', '>=', - '=<', '==', '/=', '=:=', '=/=') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #186895;', - 2 => 'color: #014ea4;', - 3 => 'color: #fa6fff;', - 4 => 'color: #fa6fff;', - 5 => 'color: #ff4e18;', - 6 => 'color: #9d4f37;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #109ab8;' - ), - 'STRINGS' => array( - 0 => 'color: #ff7800;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff9600;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #004866;', - 1 => 'color: #6bb810;', - 2 => 'color: #ee3800;', - 3 => 'color: #014ea4;' - ), - 'REGEXPS' => array( - 0 => 'color: #6941fd;', - 1 => 'color: #d400ed;', - 2 => 'color: #5400b3;', - 3 => 'color: #ff3c00;', - 4 => 'color: #6941fd;', - 5 => 'color: #45b3e6;', - 6 => 'color: #ff9600;', - 7 => 'color: #d400ed;', - 8 => 'color: #ff9600;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => 'http://erlang.org/doc/man/{FNAME}.html', - 6 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => ':' - ), - 'REGEXPS' => array( - // Macro definitions - 0 => array( - GESHI_SEARCH => '(-define\s*\()([a-zA-Z0-9_]+)(\(|,)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Record definitions - 1 => array( - GESHI_SEARCH => '(-record\s*\()([a-zA-Z0-9_]+)(,)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Precompiler directives - 2 => array( - GESHI_SEARCH => '(-)([a-z][a-zA-Z0-9_]*)(\()', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Functions - 3 => array( - GESHI_SEARCH => '([a-z][a-zA-Z0-9_]*|\'[a-zA-Z0-9_]*\')\s*(\()', - GESHI_REPLACE => '\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '\2' - ), - // Macros - 4 => array( - GESHI_SEARCH => '(\?)([a-zA-Z0-9_]+)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '' - ), - // Variables - With hack to avoid interfering wish GeSHi internals - 5 => array( - GESHI_SEARCH => '([([{,<+*-\/=\s!]|<)(?!(?:PIPE|SEMI|DOT|NUM|REG3XP\d*)[^a-zA-Z0-9_])([A-Z_][a-zA-Z0-9_]*)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '' - ), - // ASCII codes - 6 => '(\$[a-zA-Z0-9_])', - // Records - 7 => array( - GESHI_SEARCH => '(#)([a-z][a-zA-Z0-9_]*)(\.|\{)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Numbers with a different radix - 8 => '(?<=>)(#[a-zA-Z0-9]*)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_BEFORE' => '', - 'DISALLOWED_AFTER' => '(?=\s*\()' - ), - 5 => array( - 'DISALLOWED_BEFORE' => '(?<=\'|)', - 'DISALLOWED_AFTER' => '(?=(\'|):)' - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?<=\/|-)', - 'DISALLOWED_AFTER' => '' - ) - ) - ), -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/fo.php b/system/application/libraries/geshi/fo.php deleted file mode 100644 index aa4567961..000000000 --- a/system/application/libraries/geshi/fo.php +++ /dev/null @@ -1,327 +0,0 @@ -<?php -/************************************************************************************* - * fo.php - * -------- - * Author: Tan-Vinh Nguyen (tvnguyen@web.de) - * Copyright: (c) 2009 Tan-Vinh Nguyen - * Release Version: 1.0.8.6 - * Date Started: 2009/03/23 - * - * fo language file for GeSHi. - * - * FO stands for "Flexible Oberflaechen" (Flexible Surfaces) and - * is part of the abas-ERP. - * - * CHANGES - * ------- - * 2009/03/23 (1.0.0) - * - First Release - * Basic commands in German and English - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'FO (abas-ERP)', - 'COMMENT_SINGLE' => array(1 => '..'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - //Control Flow - 1 => array( - /* see http://www.abas.de/sub_de/kunden/help/hd/html/9.html */ - - /* fo keywords, part 1: control flow */ - '.weiter', '.continue' - - /* this language works with goto's only*/ - ), - - //FO Keywords - 2 => array( - /* fo keywords, part 2 */ - '.fo', '.formel', '.formula', - '.zuweisen', '.assign', - '.fehler', '.error', - '.ende', '.end' - ), - - //Java Keywords - 3 => array( - /* Java keywords, part 3: primitive data types */ - '.art', '.type', - 'integer', 'real', 'bool', 'text', 'datum', 'woche', 'termin', 'zeit', - 'mehr', 'MEHR' - ), - - //Reserved words in fo literals - 4 => array( - /* other reserved words in fo literals */ - /* should be styled to look similar to numbers and Strings */ - 'false', 'null', 'true', - 'OBJEKT', - 'VORGANG', 'PROCESS', - 'OFFEN', 'OPEN', - 'ABORT', - 'AN', 'ADDEDTO', - 'AUF', 'NEW', - 'BILDSCHIRM', 'TERMINAL', - 'PC', - 'MASKE', 'SCREEN', - 'ZEILE', 'LINE' - ), - - // interpreter settings - 5 => array ( - '..!INTERPRETER', 'DEBUG' - ), - - // database commands - 6 => array ( - '.hole', '.hol', '.select', - '.lade', '.load', - '.aktion', '.action', - '.belegen', '.occupy', - '.bringe', '.rewrite', - '.dazu', '.add', - '.löschen', '.delete', - '.mache', '.make', - '.merke', '.reserve', - '.setze', '.set', - 'SPERREN', 'LOCK', - 'TEIL', 'PART', - 'KEINESPERRE', - 'AMASKE', 'ASCREEN', - 'BETRIEB', 'WORK-ORDER', - 'NUMERISCH', 'NUMERICAL', - 'VORSCHLAG', 'SUGGESTION', - 'OBLIGO', 'OUTSTANDING', - 'LISTE', 'LIST', - 'DRUCK', 'PRINT', - 'ÜBERNAHME', 'TAGEOVER', - 'ABLAGE', 'FILINGSYSTEM', - 'BDE', 'PDC', - 'BINDUNG', 'ALLOCATION', - 'BUCHUNG', 'ENTRY', - 'COLLI', 'SERIAL', - 'DATEI', 'FILE', - 'VERKAUF', 'SALES', - 'EINKAUF', 'PURCHASING', - 'EXEMPLAR', 'EXAMPLE', - 'FERTIGUNG', 'PRODUCTION', - 'FIFO', - 'GRUPPE', 'GROUP', - 'JAHR', 'YEAR', - 'JOURNAL', - 'KOPF', 'HEADER', - 'KOSTEN', - 'LIFO', - 'LMENGE', 'SQUANTITY', - 'LOHNFERTIGUNG', 'SUBCONTRACTING', - 'LPLATZ', 'LOCATION', - 'MBELEGUNG', 'MACHLOADING', - 'MONAT', 'MONTH', 'MZ', - 'NACHRICHT', 'MESSAGE', - 'PLAN', 'TARGET', - 'REGIONEN', 'REGIONS', - 'SERVICEANFRAGE', 'SERVICEREQUEST', - 'VERWENDUNG', 'APPLICATION', - 'WEITER', 'CONTINUE', - 'ABBRUCH', 'CANCEL', - 'ABLAGEKENNZEICHEN', 'FILLINGCODE', - 'ALLEIN', 'SINGLEUSER', - 'AUFZAEHLTYP', 'ENUMERATION-TYPE', - 'AUSGABE', 'OUTPUT', - 'DEZPUNKT', 'DECPOINT' - ), - - // output settings - 7 => array ( - '.absatz', '.para', - '.blocksatz', '.justified', - '.flattersatz', '.unjustified', - '.format', - '.box', - '.drucken', '.print', - '.gedruckt', '.printed', - '.länge', '.length', - '.links', '.left', - '.rechts', '.right', - '.oben', '.up', - '.unten', '.down', - '.seite', '.page', - '.tabellensatz', '.tablerecord', - '.trenner', '.separator', - 'ARCHIV' - ), - - // text commands - 8 => array ( - '.text', - '.atext', - '.println', - '.uebersetzen', '.translate' - ), - - // I/O commands - 9 => array ( - '.aus', '.ausgabe', '.output', - '.ein', '.eingabe', '.input', - '.datei', '.file', - '.lesen', '.read', - '.sortiere', '.sort', - '-ÖFFNEN', '-OPEN', - '-TEST', - '-LESEN', '-READ', - 'VON', 'FROM' - ), - - //system - 10 => array ( - '.browser', - '.kommando', '.command', - '.system', '.dde', - '.editiere', '.edit', - '.hilfe', '.help', - '.kopieren', '.copy', - '.pc.clip', - '.pc.copy', - '.pc.dll', - '.pc.exec', - '.pc.open', - 'DIAGNOSE', 'ERRORREPORT', - 'DOPPELPUNKT', 'COLON', - 'ERSETZUNG', 'REPLACEMENT', - 'WARTEN', 'PARALLEL' - ), - - //fibu/accounting specific commands - 11 => array ( - '.budget', - '.chart', - 'VKZ', - 'KONTO', 'ACCOUNT', - 'AUSZUG', 'STATEMENT', - 'WAEHRUNG', 'CURRENCY', - 'WAEHRUNGSKURS', 'EXCHANGERATE', - 'AUSWAEHR', 'FORCURR', - 'BUCHUNGSKREIS', 'SET OF BOOKS' - ), - - // efop - extended flexible surface - 12 => array ( - '.cursor', - '.farbe', '.colour', - '.fenster', '.window', - '.hinweis', '.note', - '.menue', '.menu', - '.schutz', '.protection', - '.zeigen', '.view', - '.zeile', '.line', - 'VORDERGRUND', 'FOREGROUND', - 'HINTERGRUND', 'BACKGROUND', - 'SOFORT', 'IMMEDIATELY', - 'AKTUALISIEREN', 'UPDATE', - 'FENSTERSCHLIESSEN', 'CLOSEWINDOWS' - ), - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']', '{', '}', '*', '&', '%', ';', '<', '>'), - 1 => array('?', '!') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - /* all fo keywords are case sensitive, don't have to but I like this type of coding */ - 1 => true, 2 => true, 3 => true, 4 => true, - 5 => true, 6 => true, 7 => true, 8 => true, 9 => true, - 10 => true, 11 => true, 12 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #006600; font-weight: bold;', - 4 => 'color: #006600; font-weight: bold;', - 5 => 'color: #003399; font-weight: bold;', - 6 => 'color: #003399; font-weight: bold;', - 7 => 'color: #003399; font-weight: bold;', - 8 => 'color: #003399; font-weight: bold;', - 9 => 'color: #003399; font-weight: bold;', - 10 => 'color: #003399; font-weight: bold;', - 11 => 'color: #003399; font-weight: bold;', - 12 => 'color: #003399; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - //2 => 'color: #006699;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006633;', - 2 => 'color: #006633;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '', - 10 => '', - 11 => '', - 12 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/fortran.php b/system/application/libraries/geshi/fortran.php deleted file mode 100644 index 7b390eda7..000000000 --- a/system/application/libraries/geshi/fortran.php +++ /dev/null @@ -1,160 +0,0 @@ -<?php -/************************************************************************************* - * fortran.php - * ----------- - * Author: Cedric Arrabie (cedric.arrabie@univ-pau.fr) - * Copyright: (C) 2006 Cetric Arrabie - * Release Version: 1.0.8.6 - * Date Started: 2006/04/22 - * - * Fortran language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2006/04/20 (1.0.0) - * - First Release - * - * TODO - * ------------------------- - * - Get a list of inbuilt functions to add (and explore fortran more - * to complete this rather bare language file) - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME'=>'Fortran', - 'COMMENT_SINGLE'=> array(1 =>'!',2=>'Cf2py'), - 'COMMENT_MULTI'=> array(), - //Fortran Comments - 'COMMENT_REGEXP' => array(1 => '/^C.*?$/mi'), - 'CASE_KEYWORDS'=> GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS'=> array("'",'"'), - 'ESCAPE_CHAR'=>'\\', - 'KEYWORDS'=> array( - 1 => array( - 'allocate','block','call','case','contains','continue','cycle','deallocate', - 'default','do','else','elseif','elsewhere','end','enddo','endif','endwhere', - 'entry','exit','function','go','goto','if','interface','module','nullify','only', - 'operator','procedure','program','recursive','return','select','stop', - 'subroutine','then','to','where','while', - 'access','action','advance','blank','blocksize','carriagecontrol', - 'delim','direct','eor','err','exist','file','flen','fmt','form','formatted', - 'iostat','name','named','nextrec','nml','number','opened','pad','position', - 'readwrite','recl','sequential','status','unformatted','unit' - ), - 2 => array( - '.AND.','.EQ.','.EQV.','.GE.','.GT.','.LE.','.LT.','.NE.','.NEQV.','.NOT.', - '.OR.','.TRUE.','.FALSE.' - ), - 3 => array( - 'allocatable','character','common','complex','data','dimension','double', - 'equivalence','external','implicit','in','inout','integer','intent','intrinsic', - 'kind','logical','namelist','none','optional','out','parameter','pointer', - 'private','public','real','result','save','sequence','target','type','use' - ), - 4 => array( - 'abs','achar','acos','adjustl','adjustr','aimag','aint','all','allocated', - 'anint','any','asin','atan','atan2','bit_size','break','btest','carg', - 'ceiling','char','cmplx','conjg','cos','cosh','cpu_time','count','cshift', - 'date_and_time','dble','digits','dim','dot_product','dprod dvchk', - 'eoshift','epsilon','error','exp','exponent','floor','flush','fraction', - 'getcl','huge','iachar','iand','ibclr','ibits','ibset','ichar','ieor','index', - 'int','intrup','invalop','ior','iostat_msg','ishft','ishftc','lbound', - 'len','len_trim','lge','lgt','lle','llt','log','log10','matmul','max','maxexponent', - 'maxloc','maxval','merge','min','minexponent','minloc','minval','mod','modulo', - 'mvbits','nbreak','ndperr','ndpexc','nearest','nint','not','offset','ovefl', - 'pack','precfill','precision','present','product','prompt','radix', - 'random_number','random_seed','range','repeat','reshape','rrspacing', - 'scale','scan','segment','selected_int_kind','selected_real_kind', - 'set_exponent','shape','sign','sin','sinh','size','spacing','spread','sqrt', - 'sum system','system_clock','tan','tanh','timer','tiny','transfer','transpose', - 'trim','ubound','undfl','unpack','val','verify' - ), - ), - 'SYMBOLS'=> array( - '(',')','{','}','[',']','=','+','-','*','/','!','%','^','&',':' - ), - 'CASE_SENSITIVE'=> array( - GESHI_COMMENTS => true, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES'=> array( - 'KEYWORDS'=> array( - 1 =>'color: #b1b100;', - 2 =>'color: #000000; font-weight: bold;', - 3 =>'color: #000066;', - 4 =>'color: #993333;' - ), - 'COMMENTS'=> array( - 1 =>'color: #666666; font-style: italic;', - 2 =>'color: #339933;', - 'MULTI'=>'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR'=> array( - 0 =>'color: #000099; font-weight: bold;' - ), - 'BRACKETS'=> array( - 0 =>'color: #009900;' - ), - 'STRINGS'=> array( - 0 =>'color: #ff0000;' - ), - 'NUMBERS'=> array( - 0 =>'color: #cc66cc;' - ), - 'METHODS'=> array( - 1 =>'color: #202020;', - 2 =>'color: #202020;' - ), - 'SYMBOLS'=> array( - 0 =>'color: #339933;' - ), - 'REGEXPS'=> array( - ), - 'SCRIPT'=> array( - ) - ), - 'URLS'=> array( - 1 =>'', - 2 =>'', - 3 =>'', - 4 =>'' - ), - 'OOLANG'=> true, - 'OBJECT_SPLITTERS'=> array( - 1 =>'.', - 2 =>'::' - ), - 'REGEXPS'=> array( - ), - 'STRICT_MODE_APPLIES'=> GESHI_NEVER, - 'SCRIPT_DELIMITERS'=> array( - ), - 'HIGHLIGHT_STRICT_BLOCK'=> array( - ) -); - -?> diff --git a/system/application/libraries/geshi/freebasic.php b/system/application/libraries/geshi/freebasic.php deleted file mode 100644 index faeee92f9..000000000 --- a/system/application/libraries/geshi/freebasic.php +++ /dev/null @@ -1,141 +0,0 @@ -<?php -/************************************************************************************* - * freebasic.php - * ------------- - * Author: Roberto Rossi - * Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org) - * Release Version: 1.0.8.6 - * Date Started: 2005/08/19 - * - * FreeBasic (http://www.freebasic.net/) language file for GeSHi. - * - * CHANGES - * ------- - * 2005/08/19 (1.0.0) - * - First Release - * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'FreeBasic', - 'COMMENT_SINGLE' => array(1 => "'", 2 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - "append", "as", "asc", "asin", "asm", "atan2", "atn", "beep", "bin", "binary", "bit", - "bitreset", "bitset", "bload", "bsave", "byref", "byte", "byval", "call", - "callocate", "case", "cbyte", "cdbl", "cdecl", "chain", "chdir", "chr", "cint", - "circle", "clear", "clng", "clngint", "close", "cls", "color", "command", - "common", "cons", "const", "continue", "cos", "cshort", "csign", "csng", - "csrlin", "cubyte", "cuint", "culngint", "cunsg", "curdir", "cushort", "custom", - "cvd", "cvi", "cvl", "cvlongint", "cvs", "cvshort", "data", "date", - "deallocate", "declare", "defbyte", "defdbl", "defined", "defint", "deflng", - "deflngint", "defshort", "defsng", "defstr", "defubyte", "defuint", - "defulngint", "defushort", "dim", "dir", "do", "double", "draw", "dylibload", - "dylibsymbol", "else", "elseif", "end", "enum", "environ", 'environ$', "eof", - "eqv", "erase", "err", "error", "exec", "exepath", "exit", "exp", "export", - "extern", "field", "fix", "flip", "for", "fre", "freefile", "function", "get", - "getjoystick", "getkey", "getmouse", "gosub", "goto", "hex", "hibyte", "hiword", - "if", "iif", "imagecreate", "imagedestroy", "imp", "inkey", "inp", "input", - "instr", "int", "integer", "is", "kill", "lbound", "lcase", "left", "len", - "let", "lib", "line", "lobyte", "loc", "local", "locate", "lock", "lof", "log", - "long", "longint", "loop", "loword", "lset", "ltrim", "mid", "mkd", "mkdir", - "mki", "mkl", "mklongint", "mks", "mkshort", "mod", "multikey", "mutexcreate", - "mutexdestroy", "mutexlock", "mutexunlock", "name", "next", "not", "oct", "on", - "once", "open", "option", "or", "out", "output", "overload", "paint", "palette", - "pascal", "pcopy", "peek", "peeki", "peeks", "pipe", "pmap", "point", "pointer", - "poke", "pokei", "pokes", "pos", "preserve", "preset", "print", "private", - "procptr", "pset", "ptr", "public", "put", "random", "randomize", "read", - "reallocate", "redim", "rem", "reset", "restore", "resume", - "return", "rgb", "rgba", "right", "rmdir", "rnd", "rset", "rtrim", "run", - "sadd", "screen", "screencopy", "screeninfo", "screenlock", "screenptr", - "screenres", "screenset", "screensync", "screenunlock", "seek", "statement", - "selectcase", "setdate", "setenviron", "setmouse", - "settime", "sgn", "shared", "shell", "shl", "short", "shr", "sin", "single", - "sizeof", "sleep", "space", "spc", "sqr", "static", "stdcall", "step", "stop", - "str", "string", "strptr", "sub", "swap", "system", "tab", "tan", - "then", "threadcreate", "threadwait", "time", "timer", "to", "trans", - "trim", "type", "ubound", "ubyte", "ucase", "uinteger", "ulongint", "union", - "unlock", "unsigned", "until", "ushort", "using", "va_arg", "va_first", - "va_next", "val", "val64", "valint", "varptr", "view", "viewprint", "wait", - "wend", "while", "width", "window", "windowtitle", "with", "write", "xor", - "zstring", "explicit", "escape", "true", "false" - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #339933;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/fsharp.php b/system/application/libraries/geshi/fsharp.php deleted file mode 100644 index 7743d3643..000000000 --- a/system/application/libraries/geshi/fsharp.php +++ /dev/null @@ -1,211 +0,0 @@ -<?php -/************************************************************************************* - * fsharp.php - * ---------- - * Author: julien ortin (jo_spam-divers@yahoo.fr) - * Copyright: (c) 2009 julien ortin - * Release Version: 1.0.8.6 - * Date Started: 2009/09/20 - * - * F# language file for GeSHi. - * - * CHANGES - * ------- - * 2009/09/22 (1.0.1) - * - added rules for single char handling (generics ['a] vs char ['x']) - * - added symbols and keywords - * 2009/09/20 (1.0.0) - * - Initial release - * - * TODO - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'F#', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('(*' => '*)', '/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'HARDQUOTE' => array('@"', '"'), - 'HARDESCAPE' => array('"'), - 'HARDCHAR' => '"', - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /* main F# keywords */ - /* section 3.4 */ - 1 => array( - 'abstract', 'and', 'as', 'assert', 'base', 'begin', 'class', 'default', 'delegate', 'do', 'done', - 'downcast', 'downto', 'elif', 'else', 'end', 'exception', 'extern', 'false', 'finally', 'for', - 'fun', 'function', 'if', 'in', 'inherit', 'inline', 'interface', 'internal', 'lazy', 'let', - 'match', 'member', 'module', 'mutable', 'namespace', 'new', 'not', 'null', 'of', 'open', 'or', - 'override', 'private', 'public', 'rec', 'return', 'sig', 'static', 'struct', 'then', 'to', - 'true', 'try', 'type', 'upcast', 'use', 'val', 'void', 'when', 'while', 'with', 'yield', - 'asr', 'land', 'lor', 'lsl', 'lsr', 'lxor', 'mod', - /* identifiers are reserved for future use by F# */ - 'atomic', 'break', 'checked', 'component', 'const', 'constraint', 'constructor', - 'continue', 'eager', 'fixed', 'fori', 'functor', 'global', 'include', 'method', 'mixin', - 'object', 'parallel', 'params', 'process', 'protected', 'pure', 'sealed', 'tailcall', - 'trait', 'virtual', 'volatile', - /* take monads into account */ - 'let!', 'yield!' - ), - /* define names of main libraries in F# Core, so we can link to it - * http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/namespaces.html - */ - 2 => array( - 'Array', 'Array2D', 'Array3D', 'Array4D', 'ComparisonIdentity', 'HashIdentity', 'List', - 'Map', 'Seq', 'SequenceExpressionHelpers', 'Set', 'CommonExtensions', 'Event', - 'ExtraTopLevelOperators', 'LanguagePrimitives', 'NumericLiterals', 'Operators', - 'OptimizedClosures', 'Option', 'String', 'NativePtr', 'Printf' - ), - /* 17.2 & 17.3 */ - 3 => array( - 'abs', 'acos', 'asin', 'atan', 'atan2', 'ceil', 'cos', 'cosh', 'exp', - 'floor', 'log', 'log10', 'pown', 'round', 'sign', 'sin', 'sinh', 'sqrt', - 'tan', 'tanh', - 'ignore', - 'fst', 'snd', - 'stdin', 'stdout', 'stderr', - 'KeyValue', - 'max', 'min' - ), - /* Pervasives Types & Overloaded Conversion Functions */ - 4 => array( - 'bool', 'byref', 'byte', 'char', 'decimal', 'double', 'exn', 'float', 'float32', - 'FuncConvert', 'ilsigptr', 'int', 'int16', 'int32', 'int64', 'int8', - 'nativeint', 'nativeptr', 'obj', 'option', 'ref', 'sbyte', 'single', 'string', 'uint16', - 'uint32', 'uint64', 'uint8', 'unativeint', 'unit', - 'enum', - 'async', 'seq', 'dict' - ), - /* 17.2 Exceptions */ - 5 => array ( - 'failwith', 'invalidArg', 'raise', 'rethrow' - ), - /* 3.3 Conditional compilation & 13.3 Compiler Directives + light / light off */ - 6 => array( - '(*IF-FSHARP', 'ENDIF-FSHARP*)', '(*F#', 'F#*)', '(*IF-OCAML', 'ENDIF-OCAML*)', - '#light', - '#if', '#else', '#endif', '#indent', '#nowarn', '#r', '#reference', - '#I', '#Include', '#load', '#time', '#help', '#q', '#quit', - ), - /* 3.11 Pre-processor Declarations / Identifier Replacements */ - 7 => array( - '__SOURCE_DIRECTORY__', '__SOURCE_FILE__', '__LINE__' - ), - /* 17.2 Object Transformation Operators */ - 8 => array( - 'box', 'hash', 'sizeof', 'typeof', 'typedefof', 'unbox' - ) - ), - /* 17.2 basic operators + the yield and yield! arrows */ - 'SYMBOLS' => array( - 1 => array('+', '-', '/', '*', '**', '%', '~-'), - 2 => array('<', '<=', '>', '<=', '=', '<>'), - 3 => array('<<<', '>>>', '^^^', '&&&', '|||', '~~~'), - 4 => array('|>', '>>', '<|', '<<'), - 5 => array('!', '->', '->>'), - 6 => array('[',']','(',')','{','}', '[|', '|]', '(|', '|)'), - 7 => array(':=', ';', ';;') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, /* keywords */ - 2 => true, /* modules */ - 3 => true, /* pervasives functions */ - 4 => true, /* types and overloaded conversion operators */ - 5 => true, /* exceptions */ - 6 => true, /* conditional compilation & compiler Directives */ - 7 => true, /* pre-processor declarations / identifier replacements */ - 8 => true /* object transformation operators */ - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #06c; font-weight: bold;', /* nice blue */ - 2 => 'color: #06c; font-weight: bold;', /* nice blue */ - 3 => 'color: #06c; font-weight: bold;', /* nice blue */ - 4 => 'color: #06c; font-weight: bold;', /* nice blue */ - 5 => 'color: #06c; font-weight: bold;', /* nice blue */ - 6 => 'color: #06c; font-weight: bold;', /* nice blue */ - 7 => 'color: #06c; font-weight: bold;', /* nice blue */ - 8 => 'color: #06c; font-weight: bold;' /* nice blue */ - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #5d478b; font-style: italic;', /* light purple */ - 1 => 'color: #5d478b; font-style: italic;', - 2 => 'color: #5d478b; font-style: italic;' /* light purple */ - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #6c6;' - ), - 'STRINGS' => array( - 0 => 'color: #3cb371;' /* nice green */ - ), - 'NUMBERS' => array( - 0 => 'color: #c6c;' /* pink */ - ), - 'METHODS' => array( - 1 => 'color: #060;' /* dark green */ - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #a52a2a;' /* maroon */ - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - /* some of keywords are Pervasives functions (land, lxor, asr, ...) */ - 1 => '', - 2 => 'http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/namespaces.html', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/gambas.php b/system/application/libraries/geshi/gambas.php deleted file mode 100644 index a848440df..000000000 --- a/system/application/libraries/geshi/gambas.php +++ /dev/null @@ -1,214 +0,0 @@ -<?php -/************************************************************************************* - * gambas.php - * --------- - * Author: Jesus Guardon (jguardon@telefonica.net) - * Copyright: (c) 2009 Jesus Guardon (http://gambas-es.org), - * Benny Baumann (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/20 - * - * GAMBAS language file for GeSHi. - * GAMBAS Official Site: http://gambas.sourceforge.net - * - * CHANGES - * ------- - * 2009/09/26 (1.0.1) - * - Splitted dollar-ended keywords in another group to match with or without '$' - * - Modified URL for object/components keywords search through Google "I'm feeling lucky" - * 2009/09/23 (1.0.0) - * - Initial release - * - * TODO (updated 2009/09/26) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'GAMBAS', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - //keywords - 1 => array( - 'APPEND', 'AS', 'BREAK', 'BYREF', 'CASE', 'CATCH', 'CLASS', 'CLOSE', 'CONST', 'CONTINUE', 'COPY', - 'CREATE', 'DEBUG', 'DEC', 'DEFAULT', 'DIM', 'DO', 'EACH', 'ELSE', 'END', 'ENDIF', 'ERROR', 'EVENT', 'EXEC', - 'EXPORT', 'EXTERN', 'FALSE', 'FINALLY', 'FLUSH', 'FOR', 'FUNCTION', 'GOTO', 'IF', 'IN', 'INC', 'INHERITS', - 'INPUT', 'FROM', 'IS', 'KILL', 'LAST', 'LIBRARY', 'LIKE', 'LINE INPUT', 'LINK', 'LOCK', 'LOOP', 'ME', - 'MKDIR', 'MOVE', 'NEW', 'NEXT', 'NULL', 'OPEN', 'OPTIONAL', 'OUTPUT', 'PIPE', 'PRINT', 'PRIVATE', - 'PROCEDURE', 'PROPERTY', 'PUBLIC', 'QUIT', 'RAISE', 'RANDOMIZE', 'READ', 'REPEAT', 'RETURN', 'RMDIR', - 'SEEK', 'SELECT', 'SHELL', 'SLEEP', 'STATIC', 'STEP', 'STOP', 'SUB', 'SUPER', 'SWAP', 'THEN', 'TO', - 'TRUE', 'TRY', 'UNLOCK', 'UNTIL', 'WAIT', 'WATCH', 'WEND', 'WHILE', 'WITH', 'WRITE' - ), - //functions - 2 => array( - 'Abs', 'Access', 'Acos', 'Acosh', 'Alloc', 'Ang', 'Asc', 'ASin', 'ASinh', 'Asl', 'Asr', 'Assign', 'Atan', - 'ATan2', 'ATanh', - 'BChg', 'BClr', 'Bin', 'BSet', 'BTst', - 'CBool', 'Cbr', 'CByte', 'CDate', 'CFloat', 'Choose', 'Chr', 'CInt', 'CLong', 'Comp', 'Conv', 'Cos', - 'Cosh', 'CShort', 'CSng', 'CStr', - 'DateAdd', 'DateDiff', 'Day', 'DConv', 'Deg', 'DFree', 'Dir', - 'Eof', 'Eval', 'Exist', 'Exp', 'Exp10', 'Exp2', 'Expm', - 'Fix', 'Format', 'Frac', 'Free', - 'Hex', 'Hour', 'Hyp', - 'Iif', 'InStr', 'Int', 'IsAscii', 'IsBlank', 'IsBoolean', 'IsByte', 'IsDate', 'IsDigit', 'IsDir', - 'IsFloat', 'IsHexa', 'IsInteger', 'IsLCase', 'IsLetter', 'IsLong', 'IsNull', 'IsNumber', 'IsObject', - 'IsPunct', 'IsShort', 'IsSingle', 'IsSpace', 'IsString', 'IsUCase', 'IsVariant', - 'LCase', 'Left', 'Len', 'Lof', 'Log', 'Log10', 'Log2', 'Logp', 'Lsl', 'Lsr', 'LTrim', - 'Mag', 'Max', 'Mid', 'Min', 'Minute', 'Month', 'Now', 'Quote', - 'Rad', 'RDir', 'Realloc', 'Replace', 'Right', 'RInStr', 'Rnd', 'Rol', 'Ror', 'Round', 'RTrim', - 'Scan', 'SConv', 'Second', 'Seek', 'Sgn', 'Shl', 'Shr', 'Sin', 'Sinh', 'Space', 'Split', 'Sqr', - 'Stat', 'Str', 'StrPtr', 'Subst', - 'Tan', 'Tanh', 'Temp$', 'Time', 'Timer', 'Tr', 'Trim', 'TypeOf', - 'UCase', 'Unquote', 'Val', 'VarPtr', 'Week', 'WeekDay', 'Year' - ), - //string functions - 3 => array( - 'Bin$', 'Chr$', 'Conv$', 'DConv$', 'Format$', 'Hex$', 'LCase$', 'Left$', 'LTrim$', 'Mid$', 'Quote$', - 'Replace$', 'Right$', 'SConv$', 'Space$', 'Str$', 'String$', 'Subst$', 'Tr$', 'Trim$', 'UCase$', - 'Unquote$' - ), - //datatypes - 4 => array( - 'Boolean', 'Byte', 'Short', 'Integer', 'Long', 'Single', 'Float', 'Date', 'String', 'Variant', 'Object', - 'Pointer', 'File' - ), - //operators - 5 => array( - 'AND', 'DIV', 'MOD', 'NOT', 'OR', 'XOR' - ), - //objects/classes - 6 => array( - 'Application', 'Array', 'Byte[]', 'Collection', 'Component', 'Enum', 'Observer', 'Param', 'Process', - 'Stream', 'System', 'User', 'Chart', 'Compress', 'Crypt', 'Blob', 'Connection', 'DB', 'Database', - 'DatabaseUser', 'Field', 'Index', 'Result', 'ResultField', 'Table', 'DataBrowser', 'DataCombo', - 'DataControl', 'DataSource', 'DataView', 'Desktop', 'DesktopFile', 'Balloon', 'ColorButton', - 'ColorChooser', 'DateChooser', 'DirChooser', 'DirView', 'Expander', 'FileChooser', 'FileView', - 'FontChooser', 'InputBox', 'ListContainer', 'SidePanel', 'Stock', 'TableView', 'ToolPanel', 'ValueBox', - 'Wizard', 'Dialog', 'ToolBar', 'WorkSpace', 'DnsClient', 'SerialPort', 'ServerSocket', 'Socket', - 'UdpSocket', 'FtpClient', 'HttpClient', 'SmtpClient', 'Regexp', 'Action', 'Button', 'CheckBox', - 'ColumnView', 'ComboBox', 'Draw', 'Container', 'Control', 'Cursor', 'DrawingArea', 'Embedder', - 'Font', 'Form', 'Frame', 'GridView', 'HBox', 'HPanel', 'HSplit', 'IconView', 'Image', 'Key', 'Label', - 'Line', 'ListBox', 'ListView', 'Menu', 'Message', 'Mouse', 'MovieBox', 'Panel', 'Picture', 'PictureBox', - 'ProgressBar', 'RadioButton', 'ScrollBar', 'ScrollView', 'Separator', 'Slider', 'SpinBox', 'TabStrip', - 'TextArea', 'TextBox', 'TextLabel', 'ToggleButton', 'TrayIcon', 'TreeView', 'VBox', 'VPanel', 'VSplit', - 'Watcher', 'Window', 'Dial', 'Editor', 'LCDNumber', 'Printer', 'TextEdit', 'WebBrowser', 'GLarea', - 'Report', 'ReportCloner', 'ReportContainer', 'ReportControl', 'ReportDrawing', 'ReportField', 'ReportHBox', - 'ReportImage', 'ReportLabel', 'ReportSection', 'ReportSpecialField', 'ReportTextLabel', 'ReportVBox', - 'CDRom', 'Channel', 'Music', 'Sound', 'Settings', 'VideoDevice', 'Vb', 'CGI', 'HTML', 'Request', 'Response', - 'Session', 'XmlDocument', 'XmlNode', 'XmlReader', 'XmlReaderNodeType', 'XmlWriter', 'RpcArray', 'RpcClient', - 'RpcFunction', 'RpcServer', 'RpcStruct', 'RpcType', 'XmlRpc', 'Xslt' - ), - //constants - 7 => array( - 'Pi' - ), - ), - 'SYMBOLS' => array( - '&', '&=', '&/', '*', '*=', '+', '+=', '-', '-=', '//', '/', '/=', '=', '==', '\\', '\\=', - '^', '^=', '[', ']', '{', '}', '<', '>', '<>', '<=', '>=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF; font-weight: bold;', // Keywords - 2 => 'color: #8B1433;', // Functions - 3 => 'color: #8B1433;', // String Functions - 4 => 'color: #0600FF;', // Data Types - 5 => 'color: #1E90FF;', // Operators - 6 => 'color: #0600FF;', // Objects/Components - 7 => 'color: #0600FF;' // Constants - ), - 'COMMENTS' => array( - 1 => 'color: #1A5B1A; font-style: italic;', - 'MULTI' => 'color: #1A5B1A; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080;' - ), - 'BRACKETS' => array( - 0 => 'color: #612188;' - ), - 'STRINGS' => array( - 0 => 'color: #7E4B05;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;', - GESHI_NUMBER_INT_BASIC => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #6132B2;' - ), - 'REGEXPS' => array( - //3 => 'color: #8B1433;' //fakes '$' colour matched by REGEXP - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://gambasdoc.org/help/lang/{FNAMEL}', - 2 => 'http://gambasdoc.org/help/lang/{FNAMEL}', - 3 => 'http://www.google.com/search?hl=en&q={FNAMEL}+site:http://gambasdoc.org/help/lang/&btnI=I%27m%20Feeling%20Lucky', - 4 => 'http://gambasdoc.org/help/lang/type/{FNAMEL}', - 5 => 'http://gambasdoc.org/help/lang/{FNAMEL}', - 6 => 'http://www.google.com/search?hl=en&q={FNAMEL}+site:http://gambasdoc.org/&btnI=I%27m%20Feeling%20Lucky', - 7 => 'http://gambasdoc.org/help/lang/{FNAMEL}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 =>'.' - ), - 'REGEXPS' => array( - //3 => "\\$(?!\\w)" //matches '$' at the end of Keyword - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 2 => array( - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_\|%\\-&;\$])" - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/gdb.php b/system/application/libraries/geshi/gdb.php deleted file mode 100644 index 10a35cd38..000000000 --- a/system/application/libraries/geshi/gdb.php +++ /dev/null @@ -1,175 +0,0 @@ -<?php -/************************************************************************************* - * gdb.php - * -------- - * Author: Milian Wolff (mail@milianw.de) - * Copyright: (c) 2009 Milian Wolff - * Release Version: 1.0.8.6 - * Date Started: 2009/06/24 - * - * GDB language file for GeSHi. - * - * CHANGES - * ------- - * 2009/06/24 (1.0.0) - * - First Release - * - * TODO (updated 2009/06/24) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'GDB', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 0 => array( - 'Application', - 'signal', - ), - 1 => array( - 'Segmentation fault', - '[KCrash Handler]', - ), - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC, - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - 0 => true, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 0 => 'font-weight:bold;', - 1 => 'font-weight:bold; color: #ff0000;' - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color: #933;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #000066; font-weight:bold;', - 1 => 'color: #006600;', - 2 => 'color: #000066;', - 3 => 'color: #0066FF; text-style:italic;', - 4 => 'color: #80B5FF; text-style:italic;', - 5 => 'color: #A3007D;', - 6 => 'color: #FF00BF;', - 7 => 'font-weight: bold;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 0 => '', - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //[Current Thread...], [KCrash Handler] etc. - 0 => array( - GESHI_SEARCH => '^\[.+\]', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //stack number - 1 => array( - GESHI_SEARCH => '^#\d+', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Thread X (Thread...) - 2 => array( - GESHI_SEARCH => '^Thread \d.+$', - GESHI_REPLACE => '\\0', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - //Files with linenumbers - 3 => array( - GESHI_SEARCH => '(at )(.+)(:\d+\s*)$', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Libs without linenumbers - 4 => array( - GESHI_SEARCH => '(from )(.+)(\s*)$', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Hex mem address - 5 => '0x[a-f0-9]+', - //Line numbers - 6 => array( - GESHI_SEARCH => '(:)(\d+)(\s*)$', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Location - 7 => array( - GESHI_SEARCH => '( in )([^ \(\)]+)( \()', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/genero.php b/system/application/libraries/geshi/genero.php deleted file mode 100644 index 0b5611627..000000000 --- a/system/application/libraries/geshi/genero.php +++ /dev/null @@ -1,463 +0,0 @@ -<?php -/************************************************************************************* - * genero.php - * ---------- - * Author: Lars Gersmann (lars.gersmann@gmail.com) - * Copyright: (c) 2007 Lars Gersmann, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2007/07/01 - * - * Genero (FOURJ's Genero 4GL) language file for GeSHi. - * - * CHANGES - * ------- - * 2007/07/01 (1.0.0) - * - Initial release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'genero', - 'COMMENT_SINGLE' => array(1 => '--', 2 => '#'), - 'COMMENT_MULTI' => array('{' => '}'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - "ABSOLUTE", - "ACCEPT", - "ACTION", - "ADD", - "AFTER", - "ALL", - "ALTER", - "AND", - "ANY", - "APPEND", - "APPLICATION", - "AS", - "AT", - "ATTRIBUTE", - "ATTRIBUTES", - "AUDIT", - "AVG", - "BEFORE", - "BEGIN", - "BETWEEN", - "BORDER", - "BOTTOM", - "BREAKPOINT", - "BUFFER", - "BUFFERED", - "BY", - "CALL", - "CANCEL", - "CASE", - "CENTURY", - "CHANGE", - "CHECK", - "CLEAR", - "CLIPPED", - "CLOSE", - "CLUSTER", - "COLUMN", - "COLUMNS", - "COMMAND", - "COMMENT", - "COMMIT", - "COMMITTED", - "CONCURRENT ", - "CONNECT", - "CONNECTION", - "CONSTANT", - "CONSTRAINED", - "CONSTRAINT", - "CONSTRUCT", - "CONTINUE", - "CONTROL", - "COUNT", - "CREATE", - "CROSS", - "CURRENT", - "DATABASE", - "DBA", - "DEC", - "DECLARE", - "DEFAULT", - "DEFAULTS", - "DEFER", - "DEFINE", - "DELETE", - "DELIMITER", - "DESCRIBE", - "DESTINATION", - "DIM", - "DIALOG", - "DIMENSION", - "DIRTY", - "DISCONNECT", - "DISPLAY", - "DISTINCT", - "DORMANT", - "DOWN", - "DROP", - "DYNAMIC", - "ELSE", - "END", - "ERROR", - "ESCAPE", - "EVERY", - "EXCLUSIVE", - "EXECUTE", - "EXISTS", - "EXIT", - "EXPLAIN", - "EXTEND", - "EXTENT", - "EXTERNAL", - "FETCH", - "FGL_DRAWBOX", - "FIELD", - "FIELD_TOUCHED", - "FILE", - "FILL", - "FINISH", - "FIRST", - "FLOAT", - "FLUSH", - "FOR", - "FOREACH", - "FORM", - "FORMAT", - "FOUND", - "FRACTION", - "FREE", - "FROM", - "FULL", - "FUNCTION", - "GET_FLDBUF", - "GLOBALS", - "GO", - "GOTO", - "GRANT", - "GROUP", - "HAVING", - "HEADER", - "HELP", - "HIDE", - "HOLD", - "HOUR", - "IDLE", - "IF", - "IMAGE", - "IMMEDIATE", - "IN", - "INDEX", - "INFIELD", - "INITIALIZE", - "INNER", - "INPUT", - "INSERT", - "INTERRUPT", - "INTERVAL", - "INTO", - "INVISIBLE", - "IS", - "ISOLATION", - "JOIN", - "KEEP", - "KEY", - "LABEL", - "LAST", - "LEFT", - "LENGTH", - "LET", - "LIKE", - "LINE", - "LINENO", - "LINES", - "LOAD", - "LOCATE", - "LOCK", - "LOG", - "LSTR", - "MAIN", - "MARGIN", - "MATCHES", - "MAX", - "MAXCOUNT", - "MDY", - "MEMORY", - "MENU", - "MESSAGE", - "MIN", - "MINUTE", - "MOD", - "MODE", - "MODIFY", - "MONEY", - "NAME", - "NEED", - "NEXT", - "NO", - "NORMAL", - "NOT", - "NOTFOUND", - "NULL", - "NUMERIC", - "OF", - "ON", - "OPEN", - "OPTION", - "OPTIONS", - "OR", - "ORDER", - "OTHERWISE", - "OUTER", - "OUTPUT", - "PAGE", - "PAGENO", - "PAUSE", - "PERCENT", - "PICTURE", - "PIPE", - "PRECISION", - "PREPARE", - "PREVIOUS", - "PRINT", - "PRINTER", - "PRINTX", - "PRIOR", - "PRIVILEGES", - "PROCEDURE", - "PROGRAM", - "PROMPT", - "PUBLIC", - "PUT", - "QUIT", - "READ", - "REAL", - "RECORD", - "RECOVER", - "RED ", - "RELATIVE", - "RENAME", - "REOPTIMIZATION", - "REPEATABLE", - "REPORT", - "RESOURCE", - "RETURN", - "RETURNING", - "REVERSE", - "REVOKE", - "RIGHT", - "ROLLBACK", - "ROLLFORWARD", - "ROW", - "ROWS", - "RUN", - "SCHEMA", - "SCREEN", - "SCROLL", - "SECOND", - "SELECT", - "SERIAL", - "SET", - "SFMT", - "SHARE", - "SHIFT", - "SHOW", - "SIGNAL ", - "SIZE", - "SKIP", - "SLEEP", - "SOME", - "SPACE", - "SPACES", - "SQL", - "SQLERRMESSAGE", - "SQLERROR", - "SQLSTATE", - "STABILITY", - "START", - "STATISTICS", - "STEP", - "STOP", - "STYLE", - "SUM", - "SYNONYM", - "TABLE", - "TEMP", - "TERMINATE", - "TEXT", - "THEN", - "THROUGH", - "THRU", - "TO", - "TODAY", - "TOP", - "TRAILER", - "TRANSACTION ", - "UNBUFFERED", - "UNCONSTRAINED", - "UNDERLINE", - "UNION", - "UNIQUE", - "UNITS", - "UNLOAD", - "UNLOCK", - "UP", - "UPDATE", - "USE", - "USER", - "USING", - "VALIDATE", - "VALUE", - "VALUES", - "VARCHAR", - "VIEW", - "WAIT", - "WAITING", - "WARNING", - "WHEN", - "WHENEVER", - "WHERE", - "WHILE", - "WINDOW", - "WITH", - "WITHOUT", - "WORDWRAP", - "WORK", - "WRAP" - ), - 2 => array( - '&IFDEF', '&ENDIF' - ), - 3 => array( - "ARRAY", - "BYTE", - "CHAR", - "CHARACTER", - "CURSOR", - "DATE", - "DATETIME", - "DECIMAL", - "DOUBLE", - "FALSE", - "INT", - "INTEGER", - "SMALLFLOAT", - "SMALLINT", - "STRING", - "TIME", - "TRUE" - ), - 4 => array( - "BLACK", - "BLINK", - "BLUE", - "BOLD", - "ANSI", - "ASC", - "ASCENDING", - "ASCII", - "CYAN", - "DESC", - "DESCENDING", - "GREEN", - "MAGENTA", - "OFF", - "WHITE", - "YELLOW", - "YEAR", - "DAY", - "MONTH", - "WEEKDAY" - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '>', '<', '^', '!', '|', ':', - '(', ')', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', - 2 => 'color: #0000FF; font-weight: bold;', - 3 => 'color: #008000;', - 4 => 'color: #FF0000;', - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 2 => 'color: #008080;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #808080;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/gettext.php b/system/application/libraries/geshi/gettext.php deleted file mode 100644 index 10201bd1a..000000000 --- a/system/application/libraries/geshi/gettext.php +++ /dev/null @@ -1,97 +0,0 @@ -<?php -/************************************************************************************* - * gettext.php - * -------- - * Author: Milian Wolff (mail@milianw.de) - * Copyright: (c) 2008 Milian Wolff - * Release Version: 1.0.8.6 - * Date Started: 2008/05/25 - * - * GNU Gettext .po/.pot language file for GeSHi. - * - * CHANGES - * ------- - * 2008/08/02 (1.0.8) - * - New comments: flags and previous-fields - * - New keywords: msgctxt, msgid_plural - * - Msgstr array indices - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'GNU Gettext', - 'COMMENT_SINGLE' => array('#:', '#.', '#,', '#|', '#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array('msgctxt', 'msgid_plural', 'msgid', 'msgstr'), - ), - 'SYMBOLS' => array(), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;' - ), - 'COMMENTS' => array( - 0 => 'color: #000099;', - 1 => 'color: #000099;', - 2 => 'color: #000099;', - 3 => 'color: #006666;', - 4 => 'color: #666666; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'REGEXPS' => array(), - 'SYMBOLS' => array(), - 'NUMBERS' => array( - 0 => 'color: #000099;' - ), - 'METHODS' => array(), - 'SCRIPT' => array(), - 'BRACKETS' => array( - 0 => 'color: #000099;' - ), - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, -); - -?> diff --git a/system/application/libraries/geshi/glsl.php b/system/application/libraries/geshi/glsl.php deleted file mode 100644 index 8f521bfc1..000000000 --- a/system/application/libraries/geshi/glsl.php +++ /dev/null @@ -1,205 +0,0 @@ -<?php -/************************************************************************************* - * glsl.php - * ----- - * Author: Benny Baumann (BenBE@omorphia.de) - * Copyright: (c) 2008 Benny Baumann (BenBE@omorphia.de) - * Release Version: 1.0.8.6 - * Date Started: 2008/03/20 - * - * glSlang language file for GeSHi. - * - * CHANGES - * ------- - * 2008/03/20 (1.0.7.21) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'glSlang', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline-continued single-line comments - 1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Multiline-continued preprocessor define - 2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'if', 'else', 'for', 'while', 'do', 'break', 'continue', 'asm', - 'switch', 'case', 'default', 'return', 'discard', - 'namespace', 'using', 'sizeof', 'cast' - ), - 2 => array( - 'const', 'uniform', 'attribute', 'centroid', 'varying', 'invariant', - 'in', 'out', 'inout', 'input', 'output', 'typedef', 'volatile', - 'public', 'static', 'extern', 'external', 'packed', - 'inline', 'noinline', 'noperspective', 'flat' - ), - 3 => array( - 'void', 'bool', 'int', 'long', 'short', 'float', 'half', 'fixed', - 'unsigned', 'lowp', 'mediump', 'highp', 'precision', - 'vec2', 'vec3', 'vec4', 'bvec2', 'bvec3', 'bvec4', - 'dvec2', 'dvec3', 'dvec4', 'fvec2', 'fvec3', 'fvec4', - 'hvec2', 'hvec3', 'hvec4', 'ivec2', 'ivec3', 'ivec4', - 'mat2', 'mat3', 'mat4', 'mat2x2', 'mat3x2', 'mat4x2', - 'mat2x3', 'mat3x3', 'mat4x3', 'mat2x4', 'mat3x4', 'mat4x4', - 'sampler1D', 'sampler2D', 'sampler3D', 'samplerCube', - 'sampler1DShadow', 'sampler2DShadow', - 'struct', 'class', 'union', 'enum', 'interface', 'template' - ), - 4 => array( - 'this', 'false', 'true' - ), - 5 => array( - 'radians', 'degrees', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', - 'pow', 'exp2', 'log2', 'sqrt', 'inversesqrt', 'abs', 'sign', 'ceil', - 'floor', 'fract', 'mod', 'min', 'max', 'clamp', 'mix', 'step', - 'smoothstep', 'length', 'distance', 'dot', 'cross', 'normalize', - 'ftransform', 'faceforward', 'reflect', 'matrixCompMult', 'equal', - 'lessThan', 'lessThanEqual', 'greaterThan', 'greaterThanEqual', - 'notEqual', 'any', 'all', 'not', 'texture1D', 'texture1DProj', - 'texture1DLod', 'texture1DProjLod', 'texture2D', 'texture2DProj', - 'texture2DLod', 'texture2DProjLod', 'texture3D', 'texture3DProj', - 'texture3DLod', 'texture3DProjLod', 'textureCube', 'textureCubeLod', - 'shadow1D', 'shadow1DProj', 'shadow1DLod', 'shadow1DProjLod', - 'shadow2D', 'shadow2DProj', 'shadow2DLod', 'shadow2DProjLod', - 'noise1', 'noise2', 'noise3', 'noise4' - ), - 6 => array( - 'gl_Position', 'gl_PointSize', 'gl_ClipVertex', 'gl_FragColor', - 'gl_FragData', 'gl_FragDepth', 'gl_FragCoord', 'gl_FrontFacing', - 'gl_Color', 'gl_SecondaryColor', 'gl_Normal', 'gl_Vertex', - 'gl_MultiTexCoord0', 'gl_MultiTexCoord1', 'gl_MultiTexCoord2', - 'gl_MultiTexCoord3', 'gl_MultiTexCoord4', 'gl_MultiTexCoord5', - 'gl_MultiTexCoord6', 'gl_MultiTexCoord7', 'gl_FogCoord', - 'gl_MaxLights', 'gl_MaxClipPlanes', 'gl_MaxTextureUnits', - 'gl_MaxTextureCoords', 'gl_MaxVertexAttribs', 'gl_MaxVaryingFloats', - 'gl_MaxVertexUniformComponents', 'gl_MaxVertexTextureImageUnits', - 'gl_MaxCombinedTextureImageUnits', 'gl_MaxTextureImageUnits', - 'gl_MaxFragmentUniformComponents', 'gl_MaxDrawBuffers', 'gl_Point', - 'gl_ModelViewMatrix', 'gl_ProjectionMatrix', 'gl_FrontMaterial', - 'gl_ModelViewProjectionMatrix', 'gl_TextureMatrix', 'gl_ClipPlane', - 'gl_NormalMatrix', 'gl_ModelViewMatrixInverse', 'gl_BackMaterial', - 'gl_ProjectionMatrixInverse', 'gl_ModelViewProjectionMatrixInverse', - 'gl_TextureMatrixInverse', 'gl_ModelViewMatrixTranspose', 'gl_Fog', - 'gl_ProjectionMatrixTranspose', 'gl_NormalScale', 'gl_DepthRange', - 'gl_odelViewProjectionMatrixTranspose', 'gl_TextureMatrixTranspose', - 'gl_ModelViewMatrixInverseTranspose', 'gl_LightSource', - 'gl_ProjectionMatrixInverseTranspose', 'gl_LightModel', - 'gl_ModelViewProjectionMatrixInverseTranspose', 'gl_TexCoord', - 'gl_TextureMatrixInverseTranspose', 'gl_TextureEnvColor', - 'gl_FrontLightModelProduct', 'gl_BackLightModelProduct', - 'gl_FrontLightProduct', 'gl_BackLightProduct', 'gl_ObjectPlaneS', - 'gl_ObjectPlaneT', 'gl_ObjectPlaneR', 'gl_ObjectPlaneQ', - 'gl_EyePlaneS', 'gl_EyePlaneT', 'gl_EyePlaneR', 'gl_EyePlaneQ', - 'gl_FrontColor', 'gl_BackColor', 'gl_FrontSecondaryColor', - 'gl_BackSecondaryColor', 'gl_FogFragCoord', 'gl_PointCoord' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', - '&', '?', ':', '.', '|', ';', ',', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #333399; font-weight: bold;', - 3 => 'color: #000066; font-weight: bold;', - 4 => 'color: #333399; font-weight: bold;', - 5 => 'color: #993333; font-weight: bold;', - 6 => 'color: #551111;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #009900;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'OOLANG' => array( - 'MATCH_BEFORE' => '', - 'MATCH_AFTER' => '[a-zA-Z_][a-zA-Z0-9_]*', - 'MATCH_SPACES' => '[\s]*' - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/gml.php b/system/application/libraries/geshi/gml.php deleted file mode 100644 index ec7cb5512..000000000 --- a/system/application/libraries/geshi/gml.php +++ /dev/null @@ -1,506 +0,0 @@ -<?php -/************************************************************************************* - * gml.php - * -------- - * Author: Jos� Jorge Enr�quez (jenriquez@users.sourceforge.net) - * Copyright: (c) 2005 Jos� Jorge Enr�quez Rodr�guez (http://www.zonamakers.com) - * Release Version: 1.0.8.6 - * Date Started: 2005/06/21 - * - * GML language file for GeSHi. - * - * GML (Game Maker Language) is a script language that is built-in into Game Maker, - * a game creation program, more info about Game Maker can be found at - * http://www.gamemaker.nl/ - * All GML keywords were extracted from the Game Maker HTML Help file using a PHP - * script (one section at a time). I love PHP for saving me that bunch of work :P!. - * I think all GML functions have been indexed here, but I'm not sure about it, so - * please let me know of any issue you may find. - * - * CHANGES - * ------- - * 2005/11/11 - * - Changed 'CASE_KEYWORDS' fom 'GESHI_CAPS_LOWER' to 'GESHI_CAPS_NO_CHANGE', - * so that MCI_command appears correctly (the only GML function using capitals). - * - Changed 'CASE_SENSITIVE' options, 'GESHI_COMMENTS' from true to false and all - * of the others from false to true. - * - Deleted repeated entries. - * - div and mod are language keywords, moved (from symbols) to the appropiate section (1). - * - Moved self, other, all, noone and global identifiers to language keywords section 1. - * - Edited this file lines to a maximum width of 100 characters (as stated in - * the GeSHi docs). Well, not strictly to 100 but around it. - * - Corrected some minor issues (the vk_f1...vk_f12 keys and similar). - * - Deleted the KEYWORDS=>5 and KEYWORDS=>6 sections (actually, they were empty). - * I was planning of using those for the GML functions available only in the - * registered version of the program, but not anymore. - * - * 2005/06/26 (1.0.3) - * - First Release. - * - * TODO (updated 2005/11/11) - * ------------------------- - * - Test it for a while and make the appropiate corrections. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'GML', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - // language keywords - 1 => array( - 'break', 'continue', 'do', 'until', 'if', 'else', - 'exit', 'for', 'repeat', 'return', 'switch', - 'case', 'default', 'var', 'while', 'with', 'div', 'mod', - // GML Language overview - 'self', 'other', 'all', 'noone', 'global', - ), - // modifiers and built-in variables - 2 => array( - // Game play - 'x','y','xprevious','yprevious','xstart','ystart','hspeed','vspeed','direction','speed', - 'friction','gravity','gravity_direction', - 'path_index','path_position','path_positionprevious','path_speed','path_orientation', - 'path_endaction', - 'object_index','id','mask_index','solid','persistent','instance_count','instance_id', - 'room_speed','fps','current_time','current_year','current_month','current_day','current_weekday', - 'current_hour','current_minute','current_second','alarm','timeline_index','timeline_position', - 'timeline_speed', - 'room','room_first','room_last','room_width','room_height','room_caption','room_persistent', - 'score','lives','health','show_score','show_lives','show_health','caption_score','caption_lives', - 'caption_health', - 'event_type','event_number','event_object','event_action', - 'error_occurred','error_last', - // User interaction - 'keyboard_lastkey','keyboard_key','keyboard_lastchar','keyboard_string', - 'mouse_x','mouse_y','mouse_button','mouse_lastbutton', - // Game Graphics - 'sprite_index','sprite_width','sprite_height','sprite_xoffset','sprite_yoffset', - 'image_number','image_index','image_speed','image_xscale','image_yscale','image_angle', - 'image_alpha','image_blend','bbox_left','bbox_right','bbox_top','bbox_bottom', - 'background_color','background_showcolor','background_visible','background_foreground', - 'background_index','background_x','background_y','background_width','background_height', - 'background_htiled','background_vtiled','background_xscale','background_yscale', - 'background_hspeed','background_vspeed','background_blend','background_alpha', - 'background','left, top, width, height','depth','visible','xscale','yscale','blend','alpha', - 'view_enabled','view_current','view_visible','view_yview','view_wview','view_hview','view_xport', - 'view_yport','view_wport','view_hport','view_angle','view_hborder','view_vborder','view_hspeed', - 'view_vspeed','view_object', - 'transition_kind', - // Files, registry and executing programs - 'game_id','working_directory','temp_directory', - 'secure_mode', - // Creating particles - 'xmin', 'xmax', 'ymin', 'ymax','shape','distribution','particle type','number', - 'force','dist','kind','additive', 'parttype1', 'parttype2' - ), - // functions - 3 => array( - // Computing things - 'random','choose','abs','sign','round','floor','ceil','frac','sqrt','sqr','power','exp','ln', - 'log2','log10','logn','sin','cos','tan','arcsin','arccos','arctan','arctan2','degtorad', - 'radtodeg','min','max','mean','median','point_distance','point_direction','lengthdir_x', - 'lengthdir_y','is_real','is_string', - 'chr','ord','real','string','string_format','string_length','string_pos','string_copy', - 'string_char_at','string_delete','string_insert','string_replace','string_replace_all', - 'string_count','string_lower','string_upper','string_repeat','string_letters','string_digits', - 'string_lettersdigits','clipboard_has_text','clipboard_get_text','clipboard_set_text', - 'date_current_datetime','date_current_date','date_current_time','date_create_datetime', - 'date_create_date','date_create_time','date_valid_datetime','date_valid_date','date_valid_time', - 'date_inc_year','date_inc_month','date_inc_week','date_inc_day','date_inc_hour', - 'date_inc_minute','date_inc_second','date_get_year','date_get_month','date_get_week', - 'date_get_day','date_get_hour', 'date_get_minute','date_get_second','date_get_weekday', - 'date_get_day_of_year','date_get_hour_of_year','date_get_minute_of_year', - 'date_get_second_of_year','date_year_span','date_month_span','date_week_span','date_day_span', - 'date_hour_span','date_minute_span','date_second_span','date_compare_datetime', - 'date_compare_date','date_compare_time','date_date_of','date_time_of','date_datetime_string', - 'date_date_string','date_time_string','date_days_in_month','date_days_in_year','date_leap_year', - 'date_is_today', - // Game play - 'motion_set','motion_add','place_free','place_empty','place_meeting','place_snapped', - 'move_random','move_snap','move_wrap','move_towards_point','move_bounce_solid','move_bounce_all', - 'move_contact_solid','move_contact_all','move_outside_solid','move_outside_all', - 'distance_to_point','distance_to_object','position_empty','position_meeting', - 'path_start','path_end', - 'mp_linear_step','mp_linear_step_object','mp_potential_step','mp_potential_step_object', - 'mp_potential_settings','mp_linear_path','mp_linear_path_object', 'mp_potential_path', - 'mp_potential_path_object','mp_grid_create','mp_grid_destroy','mp_grid_clear_all', - 'mp_grid_clear_cell','mp_grid_clear_rectangle','mp_grid_add_cell','mp_grid_add_rectangle', - 'mp_grid_add_instances','mp_grid_path','mp_grid_draw', - 'collision_point','collision_rectangle','collision_circle','collision_ellipse','collision_line', - 'instance_find','instance_exists','instance_number','instance_position','instance_nearest', - 'instance_furthest','instance_place','instance_create','instance_copy','instance_destroy', - 'instance_change','position_destroy','position_change', - 'instance_deactivate_all','instance_deactivate_object','instance_deactivate_region', - 'instance_activate_all','instance_activate_object','instance_activate_region', - 'sleep', - 'room_goto','room_goto_previous','room_goto_next','room_restart','room_previous','room_next', - 'game_end','game_restart','game_save','game_load', - 'event_perform', 'event_perform_object','event_user','event_inherited', - 'show_debug_message','variable_global_exists','variable_local_exists','variable_global_get', - 'variable_global_array_get','variable_global_array2_get','variable_local_get', - 'variable_local_array_get','variable_local_array2_get','variable_global_set', - 'variable_global_array_set','variable_global_array2_set','variable_local_set', - 'variable_local_array_set','variable_local_array2_set','set_program_priority', - // User interaction - 'keyboard_set_map','keyboard_get_map','keyboard_unset_map','keyboard_check', - 'keyboard_check_pressed','keyboard_check_released','keyboard_check_direct', - 'keyboard_get_numlock','keyboard_set_numlock','keyboard_key_press','keyboard_key_release', - 'keyboard_clear','io_clear','io_handle','keyboard_wait', - 'mouse_check_button','mouse_check_button_pressed','mouse_check_button_released','mouse_clear', - 'mouse_wait', - 'joystick_exists','joystick_name','joystick_axes','joystick_buttons','joystick_has_pov', - 'joystick_direction','joystick_check_button','joystick_xpos','joystick_ypos','joystick_zpos', - 'joystick_rpos','joystick_upos','joystick_vpos','joystick_pov', - // Game Graphics - 'draw_sprite','draw_sprite_stretched','draw_sprite_tiled','draw_sprite_part','draw_background', - 'draw_background_stretched','draw_background_tiled','draw_background_part','draw_sprite_ext', - 'draw_sprite_stretched_ext','draw_sprite_tiled_ext','draw_sprite_part_ext','draw_sprite_general', - 'draw_background_ext','draw_background_stretched_ext','draw_background_tiled_ext', - 'draw_background_part_ext','draw_background_general', - 'draw_clear','draw_clear_alpha','draw_point','draw_line','draw_rectangle','draw_roundrect', - 'draw_triangle','draw_circle','draw_ellipse','draw_arrow','draw_button','draw_path', - 'draw_healthbar','draw_set_color','draw_set_alpha','draw_get_color','draw_get_alpha', - 'make_color_rgb','make_color_hsv','color_get_red','color_get_green','color_get_blue', - 'color_get_hue','color_get_saturation','color_get_value','merge_color','draw_getpixel', - 'screen_save','screen_save_part', - 'draw_set_font','draw_set_halign','draw_set_valign','draw_text','draw_text_ext','string_width', - 'string_height','string_width_ext','string_height_ext','draw_text_transformed', - 'draw_text_ext_transformed','draw_text_color','draw_text_ext_color', - 'draw_text_transformed_color','draw_text_ext_transformed_color', - 'draw_point_color','draw_line_color','draw_rectangle_color','draw_roundrect_color', - 'draw_triangle_color','draw_circle_color','draw_ellipse_color','draw_primitive_begin', - 'draw_vertex','draw_vertex_color','draw_primitive_end','sprite_get_texture', - 'background_get_texture','texture_preload','texture_set_priority', - 'texture_get_width','texture_get_height','draw_primitive_begin_texture','draw_vertex_texture', - 'draw_vertex_texture_color','texture_set_interpolation', - 'texture_set_blending','texture_set_repeat','draw_set_blend_mode','draw_set_blend_mode_ext', - 'surface_create','surface_free','surface_exists','surface_get_width','surface_get_height', - 'surface_get_texture','surface_set_target','surface_reset_target','surface_getpixel', - 'surface_save','surface_save_part','draw_surface','draw_surface_stretched','draw_surface_tiled', - 'draw_surface_part','draw_surface_ext','draw_surface_stretched_ext','draw_surface_tiled_ext', - 'draw_surface_part_ext','draw_surface_general','surface_copy','surface_copy_part', - 'tile_add','tile_delete','tile_exists','tile_get_x','tile_get_y','tile_get_left','tile_get_top', - 'tile_get_width','tile_get_height','tile_get_depth','tile_get_visible','tile_get_xscale', - 'tile_get_yscale','tile_get_background','tile_get_blend','tile_get_alpha','tile_set_position', - 'tile_set_region','tile_set_background','tile_set_visible','tile_set_depth','tile_set_scale', - 'tile_set_blend','tile_set_alpha','tile_layer_hide','tile_layer_show','tile_layer_delete', - 'tile_layer_shift','tile_layer_find','tile_layer_delete_at','tile_layer_depth', - 'display_get_width','display_get_height','display_get_colordepth','display_get_frequency', - 'display_set_size','display_set_colordepth','display_set_frequency','display_set_all', - 'display_test_all','display_reset','display_mouse_get_x','display_mouse_get_y','display_mouse_set', - 'window_set_visible','window_get_visible','window_set_fullscreen','window_get_fullscreen', - 'window_set_showborder','window_get_showborder','window_set_showicons','window_get_showicons', - 'window_set_stayontop','window_get_stayontop','window_set_sizeable','window_get_sizeable', - 'window_set_caption','window_get_caption','window_set_cursor', 'window_get_cursor', - 'window_set_color','window_get_color','window_set_region_scale','window_get_region_scale', - 'window_set_position','window_set_size','window_set_rectangle','window_center','window_default', - 'window_get_x','window_get_y','window_get_width','window_get_height','window_mouse_get_x', - 'window_mouse_get_y','window_mouse_set', - 'window_set_region_size','window_get_region_width','window_get_region_height', - 'window_view_mouse_get_x','window_view_mouse_get_y','window_view_mouse_set', - 'window_views_mouse_get_x','window_views_mouse_get_y','window_views_mouse_set', - 'screen_redraw','screen_refresh','set_automatic_draw','set_synchronization','screen_wait_vsync', - // Sound and music) - 'sound_play','sound_loop','sound_stop','sound_stop_all','sound_isplaying','sound_volume', - 'sound_global_volume','sound_fade','sound_pan','sound_background_tempo','sound_set_search_directory', - 'sound_effect_set','sound_effect_chorus','sound_effect_echo', 'sound_effect_flanger', - 'sound_effect_gargle','sound_effect_reverb','sound_effect_compressor','sound_effect_equalizer', - 'sound_3d_set_sound_position','sound_3d_set_sound_velocity','sound_3d_set_sound_distance', - 'sound_3d_set_sound_cone', - 'cd_init','cd_present','cd_number','cd_playing','cd_paused','cd_track','cd_length', - 'cd_track_length','cd_position','cd_track_position','cd_play','cd_stop','cd_pause','cd_resume', - 'cd_set_position','cd_set_track_position','cd_open_door','cd_close_door','MCI_command', - // Splash screens, highscores, and other pop-ups - 'show_text','show_image','show_video','show_info','load_info', - 'show_message','show_message_ext','show_question','get_integer','get_string', - 'message_background','message_alpha','message_button','message_text_font','message_button_font', - 'message_input_font','message_mouse_color','message_input_color','message_caption', - 'message_position','message_size','show_menu','show_menu_pos','get_color','get_open_filename', - 'get_save_filename','get_directory','get_directory_alt','show_error', - 'highscore_show','highscore_set_background','highscore_set_border','highscore_set_font', - 'highscore_set_colors','highscore_set_strings','highscore_show_ext','highscore_clear', - 'highscore_add','highscore_add_current','highscore_value','highscore_name','draw_highscore', - // Resources - 'sprite_exists','sprite_get_name','sprite_get_number','sprite_get_width','sprite_get_height', - 'sprite_get_transparent','sprite_get_smooth','sprite_get_preload','sprite_get_xoffset', - 'sprite_get_yoffset','sprite_get_bbox_left','sprite_get_bbox_right','sprite_get_bbox_top', - 'sprite_get_bbox_bottom','sprite_get_bbox_mode','sprite_get_precise', - 'sound_exists','sound_get_name','sound_get_kind','sound_get_preload','sound_discard', - 'sound_restore', - 'background_exists','background_get_name','background_get_width','background_get_height', - 'background_get_transparent','background_get_smooth','background_get_preload', - 'font_exists','font_get_name','font_get_fontname','font_get_bold','font_get_italic', - 'font_get_first','font_get_last', - 'path_exists','path_get_name','path_get_length','path_get_kind','path_get_closed', - 'path_get_precision','path_get_number','path_get_point_x','path_get_point_y', - 'path_get_point_speed','path_get_x','path_get_y','path_get_speed', - 'script_exists','script_get_name','script_get_text', - 'timeline_exists','timeline_get_name', - 'object_exists','object_get_name','object_get_sprite','object_get_solid','object_get_visible', - 'object_get_depth','object_get_persistent','object_get_mask','object_get_parent', - 'object_is_ancestor', - 'room_exists','room_get_name', - // Changing resources - 'sprite_set_offset','sprite_set_bbox_mode','sprite_set_bbox','sprite_set_precise', - 'sprite_duplicate','sprite_assign','sprite_merge','sprite_add','sprite_replace', - 'sprite_create_from_screen','sprite_add_from_screen','sprite_create_from_surface', - 'sprite_add_from_surface','sprite_delete','sprite_set_alpha_from_sprite', - 'sound_add','sound_replace','sound_delete', - 'background_duplicate','background_assign','background_add','background_replace', - 'background_create_color','background_create_gradient','background_create_from_screen', - 'background_create_from_surface','background_delete','background_set_alpha_from_background', - 'font_add','font_add_sprite','font_replace_sprite','font_delete', - 'path_set_kind','path_set_closed','path_set_precision','path_add','path_delete','path_duplicate', - 'path_assign','path_append','path_add_point','path_insert_point','path_change_point', - 'path_delete_point','path_clear_points','path_reverse','path_mirror','path_flip','path_rotate', - 'path_scale','path_shift', - 'execute_string','execute_file','script_execute', - 'timeline_add','timeline_delete','timeline_moment_add','timeline_moment_clear', - 'object_set_sprite','object_set_solid','object_set_visible','object_set_depth', - 'object_set_persistent','object_set_mask','object_set_parent','object_add','object_delete', - 'object_event_add','object_event_clear', - 'room_set_width','room_set_height','room_set_caption','room_set_persistent','room_set_code', - 'room_set_background_color','room_set_background','room_set_view','room_set_view_enabled', - 'room_add','room_duplicate','room_assign','room_instance_add','room_instance_clear', - 'room_tile_add','room_tile_add_ext','room_tile_clear', - // Files, registry and executing programs - 'file_text_open_read','file_text_open_write','file_text_open_append','file_text_close', - 'file_text_write_string','file_text_write_real','file_text_writeln','file_text_read_string', - 'file_text_read_real','file_text_readln','file_text_eof','file_exists','file_delete', - 'file_rename','file_copy','directory_exists','directory_create','file_find_first', - 'file_find_next','file_find_close','file_attributes', 'filename_name','filename_path', - 'filename_dir','filename_drive','filename_ext','filename_change_ext','file_bin_open', - 'file_bin_rewrite','file_bin_close','file_bin_size','file_bin_position','file_bin_seek', - 'file_bin_write_byte','file_bin_read_byte','parameter_count','parameter_string', - 'environment_get_variable', - 'registry_write_string','registry_write_real','registry_read_string','registry_read_real', - 'registry_exists','registry_write_string_ext','registry_write_real_ext', - 'registry_read_string_ext','registry_read_real_ext','registry_exists_ext','registry_set_root', - 'ini_open','ini_close','ini_read_string','ini_read_real','ini_write_string','ini_write_real', - 'ini_key_exists','ini_section_exists','ini_key_delete','ini_section_delete', - 'execute_program','execute_shell', - // Data structures - 'ds_stack_create','ds_stack_destroy','ds_stack_clear','ds_stack_size','ds_stack_empty', - 'ds_stack_push','ds_stack_pop','ds_stack_top', - 'ds_queue_create','ds_queue_destroy','ds_queue_clear','ds_queue_size','ds_queue_empty', - 'ds_queue_enqueue','ds_queue_dequeue','ds_queue_head','ds_queue_tail', - 'ds_list_create','ds_list_destroy','ds_list_clear','ds_list_size','ds_list_empty','ds_list_add', - 'ds_list_insert','ds_list_replace','ds_list_delete','ds_list_find_index','ds_list_find_value', - 'ds_list_sort', - 'ds_map_create','ds_map_destroy','ds_map_clear','ds_map_size','ds_map_empty','ds_map_add', - 'ds_map_replace','ds_map_delete','ds_map_exists','ds_map_find_value','ds_map_find_previous', - 'ds_map_find_next','ds_map_find_first','ds_map_find_last', - 'ds_priority_create','ds_priority_destroy','ds_priority_clear','ds_priority_size', - 'ds_priority_empty','ds_priority_add','ds_priority_change_priority','ds_priority_find_priority', - 'ds_priority_delete_value','ds_priority_delete_min','ds_priority_find_min', - 'ds_priority_delete_max','ds_priority_find_max', - 'ds_grid_create','ds_grid_destroy','ds_grid_resize','ds_grid_width','ds_grid_height', - 'ds_grid_clear','ds_grid_set','ds_grid_add','ds_grid_multiply','ds_grid_set_region', - 'ds_grid_add_region','ds_grid_multiply_region','ds_grid_set_disk','ds_grid_add_disk', - 'ds_grid_multiply_disk','ds_grid_get','ds_grid_get_sum','ds_grid_get_max','ds_grid_get_min', - 'ds_grid_get_mean','ds_grid_get_disk_sum','ds_grid_get_disk_min','ds_grid_get_disk_max', - 'ds_grid_get_disk_mean','ds_grid_value_exists','ds_grid_value_x','ds_grid_value_y', - 'ds_grid_value_disk_exists','ds_grid_value_disk_x','ds_grid_value_disk_y', - // Creating particles - 'effect_create_below','effect_create_above','effect_clear', - 'part_type_create','part_type_destroy','part_type_exists','part_type_clear','part_type_shape', - 'part_type_sprite','part_type_size','part_type_scale', - 'part_type_orientation','part_type_color1','part_type_color2','part_type_color3', - 'part_type_color_mix','part_type_color_rgb','part_type_color_hsv', - 'part_type_alpha1','part_type_alpha2','part_type_alpha3','part_type_blend','part_type_life', - 'part_type_step','part_type_death','part_type_speed','part_type_direction','part_type_gravity', - 'part_system_create','part_system_destroy','part_system_exists','part_system_clear', - 'part_system_draw_order','part_system_depth','part_system_position', - 'part_system_automatic_update','part_system_automatic_draw','part_system_update', - 'part_system_drawit','part_particles_create','part_particles_create_color', - 'part_particles_clear','part_particles_count', - 'part_emitter_create','part_emitter_destroy','part_emitter_destroy_all','part_emitter_exists', - 'part_emitter_clear','part_emitter_region','part_emitter_burst','part_emitter_stream', - 'part_attractor_create','part_attractor_destroy','part_attractor_destroy_all', - 'part_attractor_exists','part_attractor_clear','part_attractor_position','part_attractor_force', - 'part_destroyer_create','part_destroyer_destroy','part_destroyer_destroy_all', - 'part_destroyer_exists','part_destroyer_clear','part_destroyer_region', - 'part_deflector_create','part_deflector_destroy','part_deflector_destroy_all', - 'part_deflector_exists','part_deflector_clear','part_deflector_region','part_deflector_kind', - 'part_deflector_friction', - 'part_changer_create','part_changer_destroy','part_changer_destroy_all','part_changer_exists', - 'part_changer_clear','part_changer_region','part_changer_types','part_changer_kind', - // Multiplayer games - 'mplay_init_ipx','mplay_init_tcpip','mplay_init_modem','mplay_init_serial', - 'mplay_connect_status','mplay_end','mplay_ipaddress', - 'mplay_session_create','mplay_session_find','mplay_session_name','mplay_session_join', - 'mplay_session_mode','mplay_session_status','mplay_session_end', - 'mplay_player_find','mplay_player_name','mplay_player_id', - 'mplay_data_write','mplay_data_read','mplay_data_mode', - 'mplay_message_send','mplay_message_send_guaranteed','mplay_message_receive','mplay_message_id', - 'mplay_message_value','mplay_message_player','mplay_message_name','mplay_message_count', - 'mplay_message_clear', - // Using DLL's - 'external_define','external_call','external_free','window_handle', - // 3D Graphics - 'd3d_start','d3d_end','d3d_set_hidden','d3d_set_perspective', - 'd3d_set_depth', - 'd3d_primitive_begin','d3d_vertex','d3d_vertex_color','d3d_primitive_end', - 'd3d_primitive_begin_texture','d3d_vertex_texture','d3d_vertex_texture_color','d3d_set_culling', - 'd3d_draw_block','d3d_draw_cylinder','d3d_draw_cone','d3d_draw_ellipsoid','d3d_draw_wall', - 'd3d_draw_floor', - 'd3d_set_projection','d3d_set_projection_ext','d3d_set_projection_ortho', - 'd3d_set_projection_perspective', - 'd3d_transform_set_identity','d3d_transform_set_translation','d3d_transform_set_scaling', - 'd3d_transform_set_rotation_x','d3d_transform_set_rotation_y','d3d_transform_set_rotation_z', - 'd3d_transform_set_rotation_axis','d3d_transform_add_translation','d3d_transform_add_scaling', - 'd3d_transform_add_rotation_x','d3d_transform_add_rotation_y','d3d_transform_add_rotation_z', - 'd3d_transform_add_rotation_axis','d3d_transform_stack_clear','d3d_transform_stack_empty', - 'd3d_transform_stack_push','d3d_transform_stack_pop','d3d_transform_stack_top', - 'd3d_transform_stack_discard', - 'd3d_set_fog', - 'd3d_set_lighting','d3d_set_shading','d3d_light_define_direction','d3d_light_define_point', - 'd3d_light_enable','d3d_vertex_normal','d3d_vertex_normal_color','d3d_vertex_normal_texture', - 'd3d_vertex_normal_texture_color', - 'd3d_model_create','d3d_model_destroy','d3d_model_clear','d3d_model_save','d3d_model_load', - 'd3d_model_draw','d3d_model_primitive_begin','d3d_model_vertex','d3d_model_vertex_color', - 'd3d_model_vertex_texture','d3d_model_vertex_texture_color','d3d_model_vertex_normal', - 'd3d_model_vertex_normal_color','d3d_model_vertex_normal_texture', - 'd3d_model_vertex_normal_texture_color','d3d_model_primitive_end','d3d_model_block', - 'd3d_model_cylinder','d3d_model_cone','d3d_model_ellipsoid','d3d_model_wall','d3d_model_floor' - ), - // constants - 4 => array( - 'true', 'false', 'pi', - 'ev_destroy','ev_step','ev_alarm','ev_keyboard','ev_mouse','ev_collision','ev_other','ev_draw', - 'ev_keypress','ev_keyrelease','ev_left_button','ev_right_button','ev_middle_button', - 'ev_no_button','ev_left_press','ev_right_press','ev_middle_press','ev_left_release', - 'ev_right_release','ev_middle_release','ev_mouse_enter','ev_mouse_leave','ev_mouse_wheel_up', - 'ev_mouse_wheel_down','ev_global_left_button','ev_global_right_button','ev_global_middle_button', - 'ev_global_left_press','ev_global_right_press','ev_global_middle_press','ev_global_left_release', - 'ev_global_right_release','ev_global_middle_release','ev_joystick1_left','ev_joystick1_right', - 'ev_joystick1_up','ev_joystick1_down','ev_joystick1_button1','ev_joystick1_button2', - 'ev_joystick1_button3','ev_joystick1_button4','ev_joystick1_button5','ev_joystick1_button6', - 'ev_joystick1_button7','ev_joystick1_button8','ev_joystick2_left','ev_joystick2_right', - 'ev_joystick2_up','ev_joystick2_down','ev_joystick2_button1','ev_joystick2_button2', - 'ev_joystick2_button3','ev_joystick2_button4','ev_joystick2_button5','ev_joystick2_button6', - 'ev_joystick2_button7','ev_joystick2_button8', - 'ev_outside','ev_boundary','ev_game_start','ev_game_end','ev_room_start','ev_room_end', - 'ev_no_more_lives','ev_no_more_health','ev_animation_end','ev_end_of_path','ev_user0','ev_user1', - 'ev_user2','ev_user3','ev_user4','ev_user5','ev_user6','ev_user7','ev_user8','ev_user9', - 'ev_user10','ev_user11','ev_user12','ev_user13','ev_user14','ev_user15','ev_step_normal', - 'ev_step_begin','ev_step_end', - 'vk_nokey','vk_anykey','vk_left','vk_right','vk_up','vk_down','vk_enter','vk_escape','vk_space', - 'vk_shift','vk_control','vk_alt','vk_backspace','vk_tab','vk_home','vk_end','vk_delete', - 'vk_insert','vk_pageup','vk_pagedown','vk_pause','vk_printscreen', - 'vk_f1','vk_f2','vk_f3','vk_f4','vk_f5','vk_f6','vk_f7','vk_f8','vk_f9','vk_f10','vk_f11','vk_f12', - 'vk_numpad0','vk_numpad1','vk_numpad2','vk_numpad3','vk_numpad4','vk_numpad5','vk_numpad6', - 'vk_numpad7','vk_numpad8','vk_numpad9', 'vk_multiply','vk_divide','vk_add','vk_subtract', - 'vk_decimal','vk_lshift','vk_lcontrol','vk_lalt','vk_rshift','vk_rcontrol','vk_ralt', - 'c_aqua','c_black','c_blue','c_dkgray','c_fuchsia','c_gray','c_green','c_lime','c_ltgray', - 'c_maroon','c_navy','c_olive','c_purple','c_red','c_silver','c_teal','c_white','c_yellow', - 'fa_left', 'fa_center','fa_right','fa_top','fa_middle','fa_bottom', - 'pr_pointlist','pr_linelist','pr_linestrip','pr_trianglelist','pr_trianglestrip', - 'pr_trianglefan', - 'cr_none','cr_arrow','cr_cross','cr_beam','cr_size_nesw','cr_size_ns','cr_size_nwse', - 'cr_size_we','cr_uparrow','cr_hourglass','cr_drag','cr_nodrop','cr_hsplit','cr_vsplit', - 'cr_multidrag','cr_sqlwait','cr_no','cr_appstart','cr_help','cr_handpoint','cr_size_all', - 'se_chorus','se_echo','se_flanger','se_gargle','se_reverb','se_compressor','se_equalizer', - 'fa_readonly','fa_hidden','fa_sysfile','fa_volumeid','fa_directory','fa_archive', - 'pt_shape_pixel','pt_shape_disk','pt_shape_square','pt_shape_line','pt_shape_star', - 'pt_shape_circle','pt_shape_ring','pt_shape_sphere','pt_shape_flare','pt_shape_spark', - 'pt_shape_explosion','pt_shape_cloud','pt_shape_smoke','pt_shape_snow', - 'ps_shape_rectangle','ps_shape_ellipse ','ps_shape_diamond','ps_shape_line', - 'ps_distr_linear','ps_distr_gaussian','ps_force_constant','ps_force_linear','ps_force_quadratic', - 'ps_deflect_horizontal', 'ps_deflect_vertical', - 'ps_change_motion','ps_change_shape','ps_change_all' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', - '&&', '||', '^^', '&', '|', '^', - '<', '<=', '==', '!=', '>', '>=', '=', - '<<', '>>', - '+=', '-=', '*=', '/=', - '+', '-', '*', '/', - '!', '~', ',', ';' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'font-weight: bold; color: #000000;', - 2 => 'font-weight: bold; color: #000000;', - 3 => 'color: navy;', - 4 => 'color: #663300;', - ), - 'COMMENTS' => array( - 1 => 'font-style: italic; color: green;', - 'MULTI' => 'font-style: italic; color: green;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' //'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66; font-weight: bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/gnuplot.php b/system/application/libraries/geshi/gnuplot.php deleted file mode 100644 index b4762156c..000000000 --- a/system/application/libraries/geshi/gnuplot.php +++ /dev/null @@ -1,296 +0,0 @@ -<?php -/************************************************************************************* - * gnuplot.php - * ---------- - * Author: Milian Wolff (mail@milianw.de) - * Copyright: (c) 2008 Milian Wolff (http://milianw.de) - * Release Version: 1.0.8.6 - * Date Started: 2008/07/07 - * - * Gnuplot script language file for GeSHi. - * - * CHANGES - * ------- - * 2008/07/07 (1.0.8) - * - Initial import - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Gnuplot', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('`', '"', "'"), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_SCI_SHORT | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - // copy output of help command, indent properly and use this replace regexp: - // ([a-z0-9_\-]+)(( )+|$) => '\1',\3 - - // commands as found in `help commands` - 1 => array( - 'bind', 'call', 'cd', 'clear', - 'exit', 'fit', 'help', 'history', - 'if', 'load', 'lower', 'pause', - 'plot', 'print', 'pwd', 'quit', - 'raise', 'replot', 'reread', 'reset', - 'save', 'set', 'shell', 'show', - 'splot', 'system', 'test', 'unset', - 'update' - ), - 2 => array( - // set commands as returned by `help set` - 'angles', 'arrow', 'autoscale', 'bars', - 'bmargin', 'border', 'boxwidth', 'cbdata', - 'cbdtics', 'cblabel', 'cbmtics', 'cbrange', - 'cbtics', 'clabel', 'clip', 'cntrparam', - 'colorbox', 'contour', 'datafile', 'date_specifiers', - 'decimalsign', 'dgrid3d', 'dummy', 'encoding', - 'fontpath', 'format', 'grid', - 'hidden3d', 'historysize', 'isosamples', 'key', - 'label', 'lmargin', 'loadpath', 'locale', - 'log', 'logscale', 'macros', 'mapping', - 'margin', 'missing', 'mouse', 'multiplot', - 'mx2tics', 'mxtics', 'my2tics', 'mytics', - 'mztics', 'object', 'offsets', 'origin', - 'output', 'palette', 'parametric', 'pm3d', - 'pointsize', 'polar', 'rmargin', - 'rrange', 'samples', 'size', 'style', - 'surface', 'table', 'term', 'terminal', - 'termoption', 'tics', 'ticscale', 'ticslevel', - 'time_specifiers', 'timefmt', 'timestamp', 'title', - 'trange', 'urange', 'view', - 'vrange', 'x2data', 'x2dtics', 'x2label', - 'x2mtics', 'x2range', 'x2tics', 'x2zeroaxis', - 'xdata', 'xdtics', 'xlabel', 'xmtics', - 'xrange', 'xtics', 'xyplane', 'xzeroaxis', - 'y2data', 'y2dtics', 'y2label', 'y2mtics', - 'y2range', 'y2tics', 'y2zeroaxis', 'ydata', - 'ydtics', 'ylabel', 'ymtics', 'yrange', - 'ytics', 'yzeroaxis', 'zdata', 'zdtics', - 'zero', 'zeroaxis', 'zlabel', 'zmtics', - 'zrange', 'ztics', 'zzeroaxis', - // same but with leading no - 'noangles', 'noarrow', 'noautoscale', 'nobars', - 'nobmargin', 'noborder', 'noboxwidth', 'nocbdata', - 'nocbdtics', 'nocblabel', 'nocbmtics', 'nocbrange', - 'nocbtics', 'noclabel', 'noclip', 'nocntrparam', - 'nocolorbox', 'nocontour', 'nodatafile', 'nodate_specifiers', - 'nodecimalsign', 'nodgrid3d', 'nodummy', 'noencoding', - 'nofit', 'nofontpath', 'noformat', 'nogrid', - 'nohidden3d', 'nohistorysize', 'noisosamples', 'nokey', - 'nolabel', 'nolmargin', 'noloadpath', 'nolocale', - 'nolog', 'nologscale', 'nomacros', 'nomapping', - 'nomargin', 'nomissing', 'nomouse', 'nomultiplot', - 'nomx2tics', 'nomxtics', 'nomy2tics', 'nomytics', - 'nomztics', 'noobject', 'nooffsets', 'noorigin', - 'nooutput', 'nopalette', 'noparametric', 'nopm3d', - 'nopointsize', 'nopolar', 'noprint', 'normargin', - 'norrange', 'nosamples', 'nosize', 'nostyle', - 'nosurface', 'notable', 'noterm', 'noterminal', - 'notermoption', 'notics', 'noticscale', 'noticslevel', - 'notime_specifiers', 'notimefmt', 'notimestamp', 'notitle', - 'notmargin', 'notrange', 'nourange', 'noview', - 'novrange', 'nox2data', 'nox2dtics', 'nox2label', - 'nox2mtics', 'nox2range', 'nox2tics', 'nox2zeroaxis', - 'noxdata', 'noxdtics', 'noxlabel', 'noxmtics', - 'noxrange', 'noxtics', 'noxyplane', 'noxzeroaxis', - 'noy2data', 'noy2dtics', 'noy2label', 'noy2mtics', - 'noy2range', 'noy2tics', 'noy2zeroaxis', 'noydata', - 'noydtics', 'noylabel', 'noymtics', 'noyrange', - 'noytics', 'noyzeroaxis', 'nozdata', 'nozdtics', - 'nozero', 'nozeroaxis', 'nozlabel', 'nozmtics', - 'nozrange', 'noztics', 'nozzeroaxis', - ), - 3 => array( - // predefined variables - 'pi', 'NaN', 'GNUTERM', - 'GPVAL_X_MIN', 'GPVAL_X_MAX', 'GPVAL_Y_MIN', 'GPVAL_Y_MAX', - 'GPVAL_TERM', 'GPVAL_TERMOPTIONS', 'GPVAL_OUTPUT', - 'GPVAL_VERSION', 'GPVAL_PATcHLEVEL', 'GPVAL_COMPILE_OPTIONS', - 'MOUSE_KEY', 'MOUSE_X', 'MOUSE_X2', 'MOUSE_Y', 'MOUSE_Y2', - 'MOUSE_BUTTON', 'MOUSE_SHIFT', 'MOUSE_ALT', 'MOUSE_CTRL' - ), - 4 => array( - // predefined functions `help functions` - 'abs', 'acos', 'acosh', 'arg', - 'asin', 'asinh', 'atan', 'atan2', - 'atanh', 'besj0', 'besj1', 'besy0', - 'besy1', 'ceil', 'column', 'cos', - 'cosh', 'defined', 'erf', 'erfc', - 'exists', 'exp', 'floor', 'gamma', - 'gprintf', 'ibeta', 'igamma', 'imag', - 'int', 'inverf', 'invnorm', 'lambertw', - 'lgamma', 'log10', 'norm', - 'rand', 'random', 'real', 'sgn', - 'sin', 'sinh', 'sprintf', 'sqrt', - 'stringcolumn', 'strlen', 'strstrt', 'substr', - 'tan', 'tanh', 'timecolumn', - 'tm_hour', 'tm_mday', 'tm_min', 'tm_mon', - 'tm_sec', 'tm_wday', 'tm_yday', 'tm_year', - 'valid', 'word', 'words', - ), - 5 => array( - // mixed arguments - // there is no sane way to get these ones easily... - 'autofreq', 'x', 'y', 'z', - 'lt', 'linetype', 'lw', 'linewidth', 'ls', 'linestyle', - 'out', 'rotate by', 'screen', - 'enhanced', 'via', - // `help set key` - 'on', 'off', 'default', 'inside', 'outside', 'tmargin', - 'at', 'left', 'right', 'center', 'top', 'bottom', 'vertical', 'horizontal', 'Left', 'Right', - 'noreverse', 'reverse', 'noinvert', 'invert', 'samplen', 'spacing', 'width', 'height', - 'noautotitle', 'autotitle', 'noenhanced', 'nobox', 'box', - - // help set terminal postscript - 'landscape', 'portrait', 'eps', 'defaultplex', 'simplex', 'duplex', - 'fontfile', 'add', 'delete', 'nofontfiles', 'level1', 'leveldefault', - 'color', 'colour', 'monochrome', 'solid', 'dashed', 'dashlength', 'dl', - 'rounded', 'butt', 'palfuncparam', 'blacktext', 'colortext', 'colourtext', - 'font', - - // help set terminal png - 'notransparent', 'transparent', 'nointerlace', 'interlace', - 'notruecolor', 'truecolor', 'tiny', 'small', 'medium', 'large', 'giant', - 'nocrop', 'crop', - - // `help plot` - 'acsplines', 'bezier', 'binary', 'csplines', - 'every', - 'example', 'frequency', 'index', 'matrix', - 'ranges', 'sbezier', 'smooth', - 'special-filenames', 'thru', - 'unique', 'using', 'with', - - // `help plotting styles` - 'boxerrorbars', 'boxes', 'boxxyerrorbars', 'candlesticks', - 'dots', 'errorbars', 'errorlines', 'filledcurves', - 'financebars', 'fsteps', 'histeps', 'histograms', - 'image', 'impulses', 'labels', 'lines', - 'linespoints', 'points', 'rgbimage', 'steps', - 'vectors', 'xerrorbars', 'xerrorlines', 'xyerrorbars', - 'xyerrorlines', 'yerrorbars', 'yerrorlines', - - - // terminals `help terminals` - 'aed512', 'aed767', 'aifm', 'bitgraph', - 'cgm', 'corel', 'dumb', 'dxf', - 'eepic', 'emf', 'emtex', 'epslatex', - 'epson-180dpi', 'epson-60dpi', 'epson-lx800', 'fig', - 'gif', 'gpic', 'hp2623a', 'hp2648', - 'hp500c', 'hpdj', 'hpgl', 'hpljii', - 'hppj', 'imagen', 'jpeg', 'kc-tek40xx', - 'km-tek40xx', 'latex', 'mf', 'mif', - 'mp', 'nec-cp6', 'okidata', 'pbm', - 'pcl5', 'png', 'pop', 'postscript', - 'pslatex', 'pstex', 'pstricks', 'push', - 'qms', 'regis', 'selanar', 'starc', - 'svg', 'tandy-60dpi', 'tek40xx', 'tek410x', - 'texdraw', 'tgif', 'tkcanvas', 'tpic', - 'vttek', 'x11', 'xlib', - ) - ), - 'REGEXPS' => array( - //Variable assignment - 0 => "(?<![?;>\w])([a-zA-Z_][a-zA-Z0-9_]*)\s*=", - //Numbers with unit - 1 => "(?<=^|\s)([0-9]*\.?[0-9]+\s*cm)" - ), - 'SYMBOLS' => array( - '-', '+', '~', '!', '$', - '*', '/', '%', '=', '<', '>', '&', - '^', '|', '.', 'eq', 'ne', '?:', ':', '`', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #990000;', - 3 => 'color: #550000;', - 4 => 'color: #7a0874;', - 5 => 'color: #448888;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight:bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000099; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #007800;', - 1 => 'color: #cc66cc;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => 'http://www.google.com/search?q=%22set+{FNAME}%22+site%3Ahttp%3A%2F%2Fwww.gnuplot.info%2Fdocs%2F&btnI=lucky', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 4 => array( - 'DISALLOWED_AFTER' => "(?![\.\-a-zA-Z0-9_%])" - ) - ) - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/groovy.php b/system/application/libraries/geshi/groovy.php deleted file mode 100644 index 0270d0135..000000000 --- a/system/application/libraries/geshi/groovy.php +++ /dev/null @@ -1,1011 +0,0 @@ -<?php -/************************************************************************************* - * groovy.php - * ---------- - * Author: Ivan F. Villanueva B. (geshi_groovy@artificialidea.com) - * Copyright: (c) 2006 Ivan F. Villanueva B.(http://www.artificialidea.com) - * Release Version: 1.0.8.6 - * Date Started: 2006/04/29 - * - * Groovy language file for GeSHi. - * - * Keywords from http: http://docs.codehaus.org/download/attachments/2715/groovy-reference-card.pdf?version=1 - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2006/04/29 (1.0.0) - * - First Release - * - * TODO (updated 2006/04/29) - * ------------------------- - * Testing - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Groovy', - 'COMMENT_SINGLE' => array(1 => '//', 3 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Import and Package directives (Basic Support only) - 2 => '/(?:(?<=import[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i', - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'''", '"""', "'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'case', 'do', 'else', 'for', 'foreach', 'if', 'in', 'switch', - 'while', - ), - 2 => array( - 'abstract', 'as', 'assert', 'break', 'catch', 'class', 'const', - 'continue', 'def', 'default', 'enum', 'extends', - 'false', 'final', 'finally', 'goto', 'implements', 'import', - 'instanceof', 'interface', 'native', 'new', 'null', - 'package', 'private', 'property', 'protected', - 'public', 'return', 'static', 'strictfp', 'super', - 'synchronized', 'this', 'throw', 'throws', - 'transient', 'true', 'try', 'volatile' - ), - 3 => array( - 'AbstractAction', 'AbstractBorder', 'AbstractButton', - 'AbstractCellEditor', 'AbstractCollection', - 'AbstractColorChooserPanel', 'AbstractDocument', - 'AbstractDocument.AttributeContext', - 'AbstractDocument.Content', - 'AbstractDocument.ElementEdit', - 'AbstractLayoutCache', - 'AbstractLayoutCache.NodeDimensions', 'AbstractList', - 'AbstractListModel', 'AbstractMap', - 'AbstractMethodError', 'AbstractSequentialList', - 'AbstractSet', 'AbstractTableModel', - 'AbstractUndoableEdit', 'AbstractWriter', - 'AccessControlContext', 'AccessControlException', - 'AccessController', 'AccessException', 'Accessible', - 'AccessibleAction', 'AccessibleBundle', - 'AccessibleComponent', 'AccessibleContext', - 'AccessibleHyperlink', 'AccessibleHypertext', - 'AccessibleIcon', 'AccessibleObject', - 'AccessibleRelation', 'AccessibleRelationSet', - 'AccessibleResourceBundle', 'AccessibleRole', - 'AccessibleSelection', 'AccessibleState', - 'AccessibleStateSet', 'AccessibleTable', - 'AccessibleTableModelChange', 'AccessibleText', - 'AccessibleValue', 'Acl', 'AclEntry', - 'AclNotFoundException', 'Action', 'ActionEvent', - 'ActionListener', 'ActionMap', 'ActionMapUIResource', - 'Activatable', 'ActivateFailedException', - 'ActivationDesc', 'ActivationException', - 'ActivationGroup', 'ActivationGroupDesc', - 'ActivationGroupDesc.CommandEnvironment', - 'ActivationGroupID', 'ActivationID', - 'ActivationInstantiator', 'ActivationMonitor', - 'ActivationSystem', 'Activator', 'ActiveEvent', - 'Adjustable', 'AdjustmentEvent', - 'AdjustmentListener', 'Adler32', 'AffineTransform', - 'AffineTransformOp', 'AlgorithmParameterGenerator', - 'AlgorithmParameterGeneratorSpi', - 'AlgorithmParameters', 'AlgorithmParameterSpec', - 'AlgorithmParametersSpi', 'AllPermission', - 'AlphaComposite', 'AlreadyBound', - 'AlreadyBoundException', 'AlreadyBoundHelper', - 'AlreadyBoundHolder', 'AncestorEvent', - 'AncestorListener', 'Annotation', 'Any', 'AnyHolder', - 'AnySeqHelper', 'AnySeqHolder', 'Applet', - 'AppletContext', 'AppletInitializer', 'AppletStub', - 'ApplicationException', 'Arc2D', 'Arc2D.Double', - 'Arc2D.Float', 'Area', 'AreaAveragingScaleFilter', - 'ARG_IN', 'ARG_INOUT', 'ARG_OUT', - 'ArithmeticException', 'Array', - 'ArrayIndexOutOfBoundsException', 'ArrayList', - 'Arrays', 'ArrayStoreException', 'AsyncBoxView', - 'Attribute', 'AttributedCharacterIterator', - 'AttributedCharacterIterator.Attribute', - 'AttributedString', 'AttributeInUseException', - 'AttributeList', 'AttributeModificationException', - 'Attributes', 'Attributes.Name', 'AttributeSet', - 'AttributeSet.CharacterAttribute', - 'AttributeSet.ColorAttribute', - 'AttributeSet.FontAttribute', - 'AttributeSet.ParagraphAttribute', 'AudioClip', - 'AudioFileFormat', 'AudioFileFormat.Type', - 'AudioFileReader', 'AudioFileWriter', 'AudioFormat', - 'AudioFormat.Encoding', 'AudioInputStream', - 'AudioPermission', 'AudioSystem', - 'AuthenticationException', - 'AuthenticationNotSupportedException', - 'Authenticator', 'Autoscroll', 'AWTError', - 'AWTEvent', 'AWTEventListener', - 'AWTEventMulticaster', 'AWTException', - 'AWTPermission', 'BadKind', 'BadLocationException', - 'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION', - 'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE', - 'BAD_POLICY_VALUE', 'BAD_TYPECODE', 'BandCombineOp', - 'BandedSampleModel', 'BasicArrowButton', - 'BasicAttribute', 'BasicAttributes', 'BasicBorders', - 'BasicBorders.ButtonBorder', - 'BasicBorders.FieldBorder', - 'BasicBorders.MarginBorder', - 'BasicBorders.MenuBarBorder', - 'BasicBorders.RadioButtonBorder', - 'BasicBorders.SplitPaneBorder', - 'BasicBorders.ToggleButtonBorder', - 'BasicButtonListener', 'BasicButtonUI', - 'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI', - 'BasicColorChooserUI', 'BasicComboBoxEditor', - 'BasicComboBoxEditor.UIResource', - 'BasicComboBoxRenderer', - 'BasicComboBoxRenderer.UIResource', - 'BasicComboBoxUI', 'BasicComboPopup', - 'BasicDesktopIconUI', 'BasicDesktopPaneUI', - 'BasicDirectoryModel', 'BasicEditorPaneUI', - 'BasicFileChooserUI', 'BasicGraphicsUtils', - 'BasicHTML', 'BasicIconFactory', - 'BasicInternalFrameTitlePane', - 'BasicInternalFrameUI', 'BasicLabelUI', - 'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI', - 'BasicMenuItemUI', 'BasicMenuUI', - 'BasicOptionPaneUI', - 'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI', - 'BasicPasswordFieldUI', 'BasicPermission', - 'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI', - 'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI', - 'BasicRadioButtonUI', 'BasicRootPaneUI', - 'BasicScrollBarUI', 'BasicScrollPaneUI', - 'BasicSeparatorUI', 'BasicSliderUI', - 'BasicSplitPaneDivider', 'BasicSplitPaneUI', - 'BasicStroke', 'BasicTabbedPaneUI', - 'BasicTableHeaderUI', 'BasicTableUI', - 'BasicTextAreaUI', 'BasicTextFieldUI', - 'BasicTextPaneUI', 'BasicTextUI', - 'BasicTextUI.BasicCaret', - 'BasicTextUI.BasicHighlighter', - 'BasicToggleButtonUI', 'BasicToolBarSeparatorUI', - 'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI', - 'BasicViewportUI', 'BatchUpdateException', - 'BeanContext', 'BeanContextChild', - 'BeanContextChildComponentProxy', - 'BeanContextChildSupport', - 'BeanContextContainerProxy', 'BeanContextEvent', - 'BeanContextMembershipEvent', - 'BeanContextMembershipListener', 'BeanContextProxy', - 'BeanContextServiceAvailableEvent', - 'BeanContextServiceProvider', - 'BeanContextServiceProviderBeanInfo', - 'BeanContextServiceRevokedEvent', - 'BeanContextServiceRevokedListener', - 'BeanContextServices', 'BeanContextServicesListener', - 'BeanContextServicesSupport', - 'BeanContextServicesSupport.BCSSServiceProvider', - 'BeanContextSupport', - 'BeanContextSupport.BCSIterator', 'BeanDescriptor', - 'BeanInfo', 'Beans', 'BevelBorder', 'BigDecimal', - 'BigInteger', 'BinaryRefAddr', 'BindException', - 'Binding', 'BindingHelper', 'BindingHolder', - 'BindingIterator', 'BindingIteratorHelper', - 'BindingIteratorHolder', 'BindingIteratorOperations', - 'BindingListHelper', 'BindingListHolder', - 'BindingType', 'BindingTypeHelper', - 'BindingTypeHolder', 'BitSet', 'Blob', 'BlockView', - 'Book', 'Boolean', 'BooleanControl', - 'BooleanControl.Type', 'BooleanHolder', - 'BooleanSeqHelper', 'BooleanSeqHolder', 'Border', - 'BorderFactory', 'BorderLayout', 'BorderUIResource', - 'BorderUIResource.BevelBorderUIResource', - 'BorderUIResource.CompoundBorderUIResource', - 'BorderUIResource.EmptyBorderUIResource', - 'BorderUIResource.EtchedBorderUIResource', - 'BorderUIResource.LineBorderUIResource', - 'BorderUIResource.MatteBorderUIResource', - 'BorderUIResource.TitledBorderUIResource', - 'BoundedRangeModel', 'Bounds', 'Box', 'Box.Filler', - 'BoxedValueHelper', 'BoxLayout', 'BoxView', - 'BreakIterator', 'BufferedImage', - 'BufferedImageFilter', 'BufferedImageOp', - 'BufferedInputStream', 'BufferedOutputStream', - 'BufferedReader', 'BufferedWriter', 'Button', - 'ButtonGroup', 'ButtonModel', 'ButtonUI', 'Byte', - 'ByteArrayInputStream', 'ByteArrayOutputStream', - 'ByteHolder', 'ByteLookupTable', 'Calendar', - 'CallableStatement', 'CannotProceed', - 'CannotProceedException', 'CannotProceedHelper', - 'CannotProceedHolder', 'CannotRedoException', - 'CannotUndoException', 'Canvas', 'CardLayout', - 'Caret', 'CaretEvent', 'CaretListener', 'CellEditor', - 'CellEditorListener', 'CellRendererPane', - 'Certificate', 'Certificate.CertificateRep', - 'CertificateEncodingException', - 'CertificateException', - 'CertificateExpiredException', 'CertificateFactory', - 'CertificateFactorySpi', - 'CertificateNotYetValidException', - 'CertificateParsingException', - 'ChangedCharSetException', 'ChangeEvent', - 'ChangeListener', 'Character', 'Character.Subset', - 'Character.UnicodeBlock', 'CharacterIterator', - 'CharArrayReader', 'CharArrayWriter', - 'CharConversionException', 'CharHolder', - 'CharSeqHelper', 'CharSeqHolder', 'Checkbox', - 'CheckboxGroup', 'CheckboxMenuItem', - 'CheckedInputStream', 'CheckedOutputStream', - 'Checksum', 'Choice', 'ChoiceFormat', 'Class', - 'ClassCastException', 'ClassCircularityError', - 'ClassDesc', 'ClassFormatError', 'ClassLoader', - 'ClassNotFoundException', 'Clip', 'Clipboard', - 'ClipboardOwner', 'Clob', 'Cloneable', - 'CloneNotSupportedException', 'CMMException', - 'CodeSource', 'CollationElementIterator', - 'CollationKey', 'Collator', 'Collection', - 'Collections', 'Color', - 'ColorChooserComponentFactory', 'ColorChooserUI', - 'ColorConvertOp', 'ColorModel', - 'ColorSelectionModel', 'ColorSpace', - 'ColorUIResource', 'ComboBoxEditor', 'ComboBoxModel', - 'ComboBoxUI', 'ComboPopup', 'CommunicationException', - 'COMM_FAILURE', 'Comparable', 'Comparator', - 'Compiler', 'CompletionStatus', - 'CompletionStatusHelper', 'Component', - 'ComponentAdapter', 'ComponentColorModel', - 'ComponentEvent', 'ComponentInputMap', - 'ComponentInputMapUIResource', 'ComponentListener', - 'ComponentOrientation', 'ComponentSampleModel', - 'ComponentUI', 'ComponentView', 'Composite', - 'CompositeContext', 'CompositeName', 'CompositeView', - 'CompoundBorder', 'CompoundControl', - 'CompoundControl.Type', 'CompoundEdit', - 'CompoundName', 'ConcurrentModificationException', - 'ConfigurationException', 'ConnectException', - 'ConnectIOException', 'Connection', 'Constructor', - 'Container', 'ContainerAdapter', 'ContainerEvent', - 'ContainerListener', 'ContentHandler', - 'ContentHandlerFactory', 'ContentModel', 'Context', - 'ContextList', 'ContextNotEmptyException', - 'ContextualRenderedImageFactory', 'Control', - 'Control.Type', 'ControlFactory', - 'ControllerEventListener', 'ConvolveOp', 'CRC32', - 'CRL', 'CRLException', 'CropImageFilter', 'CSS', - 'CSS.Attribute', 'CTX_RESTRICT_SCOPE', - 'CubicCurve2D', 'CubicCurve2D.Double', - 'CubicCurve2D.Float', 'Current', 'CurrentHelper', - 'CurrentHolder', 'CurrentOperations', 'Cursor', - 'Customizer', 'CustomMarshal', 'CustomValue', - 'DatabaseMetaData', 'DataBuffer', 'DataBufferByte', - 'DataBufferInt', 'DataBufferShort', - 'DataBufferUShort', 'DataFlavor', - 'DataFormatException', 'DatagramPacket', - 'DatagramSocket', 'DatagramSocketImpl', - 'DatagramSocketImplFactory', 'DataInput', - 'DataInputStream', 'DataLine', 'DataLine.Info', - 'DataOutput', 'DataOutputStream', 'DataTruncation', - 'DATA_CONVERSION', 'Date', 'DateFormat', - 'DateFormatSymbols', 'DebugGraphics', - 'DecimalFormat', 'DecimalFormatSymbols', - 'DefaultBoundedRangeModel', 'DefaultButtonModel', - 'DefaultCaret', 'DefaultCellEditor', - 'DefaultColorSelectionModel', 'DefaultComboBoxModel', - 'DefaultDesktopManager', 'DefaultEditorKit', - 'DefaultEditorKit.BeepAction', - 'DefaultEditorKit.CopyAction', - 'DefaultEditorKit.CutAction', - 'DefaultEditorKit.DefaultKeyTypedAction', - 'DefaultEditorKit.InsertBreakAction', - 'DefaultEditorKit.InsertContentAction', - 'DefaultEditorKit.InsertTabAction', - 'DefaultEditorKit.PasteAction,', - 'DefaultFocusManager', 'DefaultHighlighter', - 'DefaultHighlighter.DefaultHighlightPainter', - 'DefaultListCellRenderer', - 'DefaultListCellRenderer.UIResource', - 'DefaultListModel', 'DefaultListSelectionModel', - 'DefaultMenuLayout', 'DefaultMetalTheme', - 'DefaultMutableTreeNode', - 'DefaultSingleSelectionModel', - 'DefaultStyledDocument', - 'DefaultStyledDocument.AttributeUndoableEdit', - 'DefaultStyledDocument.ElementSpec', - 'DefaultTableCellRenderer', - 'DefaultTableCellRenderer.UIResource', - 'DefaultTableColumnModel', 'DefaultTableModel', - 'DefaultTextUI', 'DefaultTreeCellEditor', - 'DefaultTreeCellRenderer', 'DefaultTreeModel', - 'DefaultTreeSelectionModel', 'DefinitionKind', - 'DefinitionKindHelper', 'Deflater', - 'DeflaterOutputStream', 'Delegate', 'DesignMode', - 'DesktopIconUI', 'DesktopManager', 'DesktopPaneUI', - 'DGC', 'Dialog', 'Dictionary', 'DigestException', - 'DigestInputStream', 'DigestOutputStream', - 'Dimension', 'Dimension2D', 'DimensionUIResource', - 'DirContext', 'DirectColorModel', 'DirectoryManager', - 'DirObjectFactory', 'DirStateFactory', - 'DirStateFactory.Result', 'DnDConstants', 'Document', - 'DocumentEvent', 'DocumentEvent.ElementChange', - 'DocumentEvent.EventType', 'DocumentListener', - 'DocumentParser', 'DomainCombiner', 'DomainManager', - 'DomainManagerOperations', 'Double', 'DoubleHolder', - 'DoubleSeqHelper', 'DoubleSeqHolder', - 'DragGestureEvent', 'DragGestureListener', - 'DragGestureRecognizer', 'DragSource', - 'DragSourceContext', 'DragSourceDragEvent', - 'DragSourceDropEvent', 'DragSourceEvent', - 'DragSourceListener', 'Driver', 'DriverManager', - 'DriverPropertyInfo', 'DropTarget', - 'DropTarget.DropTargetAutoScroller', - 'DropTargetContext', 'DropTargetDragEvent', - 'DropTargetDropEvent', 'DropTargetEvent', - 'DropTargetListener', 'DSAKey', - 'DSAKeyPairGenerator', 'DSAParameterSpec', - 'DSAParams', 'DSAPrivateKey', 'DSAPrivateKeySpec', - 'DSAPublicKey', 'DSAPublicKeySpec', 'DTD', - 'DTDConstants', 'DynamicImplementation', 'DynAny', - 'DynArray', 'DynEnum', 'DynFixed', 'DynSequence', - 'DynStruct', 'DynUnion', 'DynValue', 'EditorKit', - 'Element', 'ElementIterator', 'Ellipse2D', - 'Ellipse2D.Double', 'Ellipse2D.Float', 'EmptyBorder', - 'EmptyStackException', 'EncodedKeySpec', 'Entity', - 'EnumControl', 'EnumControl.Type', 'Enumeration', - 'Environment', 'EOFException', 'Error', - 'EtchedBorder', 'Event', 'EventContext', - 'EventDirContext', 'EventListener', - 'EventListenerList', 'EventObject', 'EventQueue', - 'EventSetDescriptor', 'Exception', - 'ExceptionInInitializerError', 'ExceptionList', - 'ExpandVetoException', 'ExportException', - 'ExtendedRequest', 'ExtendedResponse', - 'Externalizable', 'FeatureDescriptor', 'Field', - 'FieldNameHelper', 'FieldPosition', 'FieldView', - 'File', 'FileChooserUI', 'FileDescriptor', - 'FileDialog', 'FileFilter', 'FileInputStream', - 'FilenameFilter', 'FileNameMap', - 'FileNotFoundException', 'FileOutputStream', - 'FilePermission', 'FileReader', 'FileSystemView', - 'FileView', 'FileWriter', 'FilteredImageSource', - 'FilterInputStream', 'FilterOutputStream', - 'FilterReader', 'FilterWriter', - 'FixedHeightLayoutCache', 'FixedHolder', - 'FlatteningPathIterator', 'FlavorMap', 'Float', - 'FloatControl', 'FloatControl.Type', 'FloatHolder', - 'FloatSeqHelper', 'FloatSeqHolder', 'FlowLayout', - 'FlowView', 'FlowView.FlowStrategy', 'FocusAdapter', - 'FocusEvent', 'FocusListener', 'FocusManager', - 'Font', 'FontFormatException', 'FontMetrics', - 'FontRenderContext', 'FontUIResource', 'Format', - 'FormatConversionProvider', 'FormView', 'Frame', - 'FREE_MEM', 'GapContent', 'GeneralPath', - 'GeneralSecurityException', 'GlyphJustificationInfo', - 'GlyphMetrics', 'GlyphVector', 'GlyphView', - 'GlyphView.GlyphPainter', 'GradientPaint', - 'GraphicAttribute', 'Graphics', 'Graphics2D', - 'GraphicsConfigTemplate', 'GraphicsConfiguration', - 'GraphicsDevice', 'GraphicsEnvironment', - 'GrayFilter', 'GregorianCalendar', - 'GridBagConstraints', 'GridBagLayout', 'GridLayout', - 'Group', 'Guard', 'GuardedObject', 'GZIPInputStream', - 'GZIPOutputStream', 'HasControls', 'HashMap', - 'HashSet', 'Hashtable', 'HierarchyBoundsAdapter', - 'HierarchyBoundsListener', 'HierarchyEvent', - 'HierarchyListener', 'Highlighter', - 'Highlighter.Highlight', - 'Highlighter.HighlightPainter', 'HTML', - 'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag', - 'HTMLDocument', 'HTMLDocument.Iterator', - 'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory', - 'HTMLEditorKit.HTMLTextAction', - 'HTMLEditorKit.InsertHTMLTextAction', - 'HTMLEditorKit.LinkController', - 'HTMLEditorKit.Parser', - 'HTMLEditorKit.ParserCallback', - 'HTMLFrameHyperlinkEvent', 'HTMLWriter', - 'HttpURLConnection', 'HyperlinkEvent', - 'HyperlinkEvent.EventType', 'HyperlinkListener', - 'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray', - 'ICC_ProfileRGB', 'Icon', 'IconUIResource', - 'IconView', 'IdentifierHelper', 'Identity', - 'IdentityScope', 'IDLEntity', 'IDLType', - 'IDLTypeHelper', 'IDLTypeOperations', - 'IllegalAccessError', 'IllegalAccessException', - 'IllegalArgumentException', - 'IllegalComponentStateException', - 'IllegalMonitorStateException', - 'IllegalPathStateException', 'IllegalStateException', - 'IllegalThreadStateException', 'Image', - 'ImageConsumer', 'ImageFilter', - 'ImageGraphicAttribute', 'ImageIcon', - 'ImageObserver', 'ImageProducer', - 'ImagingOpException', 'IMP_LIMIT', - 'IncompatibleClassChangeError', - 'InconsistentTypeCode', 'IndexColorModel', - 'IndexedPropertyDescriptor', - 'IndexOutOfBoundsException', 'IndirectionException', - 'InetAddress', 'Inflater', 'InflaterInputStream', - 'InheritableThreadLocal', 'InitialContext', - 'InitialContextFactory', - 'InitialContextFactoryBuilder', 'InitialDirContext', - 'INITIALIZE', 'Initializer', 'InitialLdapContext', - 'InlineView', 'InputContext', 'InputEvent', - 'InputMap', 'InputMapUIResource', 'InputMethod', - 'InputMethodContext', 'InputMethodDescriptor', - 'InputMethodEvent', 'InputMethodHighlight', - 'InputMethodListener', 'InputMethodRequests', - 'InputStream', 'InputStreamReader', 'InputSubset', - 'InputVerifier', 'Insets', 'InsetsUIResource', - 'InstantiationError', 'InstantiationException', - 'Instrument', 'InsufficientResourcesException', - 'Integer', 'INTERNAL', 'InternalError', - 'InternalFrameAdapter', 'InternalFrameEvent', - 'InternalFrameListener', 'InternalFrameUI', - 'InterruptedException', 'InterruptedIOException', - 'InterruptedNamingException', 'INTF_REPOS', - 'IntHolder', 'IntrospectionException', - 'Introspector', 'Invalid', - 'InvalidAlgorithmParameterException', - 'InvalidAttributeIdentifierException', - 'InvalidAttributesException', - 'InvalidAttributeValueException', - 'InvalidClassException', - 'InvalidDnDOperationException', - 'InvalidKeyException', 'InvalidKeySpecException', - 'InvalidMidiDataException', 'InvalidName', - 'InvalidNameException', 'InvalidNameHelper', - 'InvalidNameHolder', 'InvalidObjectException', - 'InvalidParameterException', - 'InvalidParameterSpecException', - 'InvalidSearchControlsException', - 'InvalidSearchFilterException', 'InvalidSeq', - 'InvalidTransactionException', 'InvalidValue', - 'INVALID_TRANSACTION', 'InvocationEvent', - 'InvocationHandler', 'InvocationTargetException', - 'InvokeHandler', 'INV_FLAG', 'INV_IDENT', - 'INV_OBJREF', 'INV_POLICY', 'IOException', - 'IRObject', 'IRObjectOperations', 'IstringHelper', - 'ItemEvent', 'ItemListener', 'ItemSelectable', - 'Iterator', 'JApplet', 'JarEntry', 'JarException', - 'JarFile', 'JarInputStream', 'JarOutputStream', - 'JarURLConnection', 'JButton', 'JCheckBox', - 'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox', - 'JComboBox.KeySelectionManager', 'JComponent', - 'JDesktopPane', 'JDialog', 'JEditorPane', - 'JFileChooser', 'JFrame', 'JInternalFrame', - 'JInternalFrame.JDesktopIcon', 'JLabel', - 'JLayeredPane', 'JList', 'JMenu', 'JMenuBar', - 'JMenuItem', 'JobAttributes', - 'JobAttributes.DefaultSelectionType', - 'JobAttributes.DestinationType', - 'JobAttributes.DialogType', - 'JobAttributes.MultipleDocumentHandlingType', - 'JobAttributes.SidesType', 'JOptionPane', 'JPanel', - 'JPasswordField', 'JPopupMenu', - 'JPopupMenu.Separator', 'JProgressBar', - 'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane', - 'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider', - 'JSplitPane', 'JTabbedPane', 'JTable', - 'JTableHeader', 'JTextArea', 'JTextComponent', - 'JTextComponent.KeyBinding', 'JTextField', - 'JTextPane', 'JToggleButton', - 'JToggleButton.ToggleButtonModel', 'JToolBar', - 'JToolBar.Separator', 'JToolTip', 'JTree', - 'JTree.DynamicUtilTreeNode', - 'JTree.EmptySelectionModel', 'JViewport', 'JWindow', - 'Kernel', 'Key', 'KeyAdapter', 'KeyEvent', - 'KeyException', 'KeyFactory', 'KeyFactorySpi', - 'KeyListener', 'KeyManagementException', 'Keymap', - 'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi', - 'KeySpec', 'KeyStore', 'KeyStoreException', - 'KeyStoreSpi', 'KeyStroke', 'Label', 'LabelUI', - 'LabelView', 'LastOwnerException', - 'LayeredHighlighter', - 'LayeredHighlighter.LayerPainter', 'LayoutManager', - 'LayoutManager2', 'LayoutQueue', 'LdapContext', - 'LdapReferralException', 'Lease', - 'LimitExceededException', 'Line', 'Line.Info', - 'Line2D', 'Line2D.Double', 'Line2D.Float', - 'LineBorder', 'LineBreakMeasurer', 'LineEvent', - 'LineEvent.Type', 'LineListener', 'LineMetrics', - 'LineNumberInputStream', 'LineNumberReader', - 'LineUnavailableException', 'LinkageError', - 'LinkedList', 'LinkException', 'LinkLoopException', - 'LinkRef', 'List', 'ListCellRenderer', - 'ListDataEvent', 'ListDataListener', 'ListIterator', - 'ListModel', 'ListResourceBundle', - 'ListSelectionEvent', 'ListSelectionListener', - 'ListSelectionModel', 'ListUI', 'ListView', - 'LoaderHandler', 'Locale', 'LocateRegistry', - 'LogStream', 'Long', 'LongHolder', - 'LongLongSeqHelper', 'LongLongSeqHolder', - 'LongSeqHelper', 'LongSeqHolder', 'LookAndFeel', - 'LookupOp', 'LookupTable', 'MalformedLinkException', - 'MalformedURLException', 'Manifest', 'Map', - 'Map.Entry', 'MARSHAL', 'MarshalException', - 'MarshalledObject', 'Math', 'MatteBorder', - 'MediaTracker', 'Member', 'MemoryImageSource', - 'Menu', 'MenuBar', 'MenuBarUI', 'MenuComponent', - 'MenuContainer', 'MenuDragMouseEvent', - 'MenuDragMouseListener', 'MenuElement', 'MenuEvent', - 'MenuItem', 'MenuItemUI', 'MenuKeyEvent', - 'MenuKeyListener', 'MenuListener', - 'MenuSelectionManager', 'MenuShortcut', - 'MessageDigest', 'MessageDigestSpi', 'MessageFormat', - 'MetaEventListener', 'MetalBorders', - 'MetalBorders.ButtonBorder', - 'MetalBorders.Flush3DBorder', - 'MetalBorders.InternalFrameBorder', - 'MetalBorders.MenuBarBorder', - 'MetalBorders.MenuItemBorder', - 'MetalBorders.OptionDialogBorder', - 'MetalBorders.PaletteBorder', - 'MetalBorders.PopupMenuBorder', - 'MetalBorders.RolloverButtonBorder', - 'MetalBorders.ScrollPaneBorder', - 'MetalBorders.TableHeaderBorder', - 'MetalBorders.TextFieldBorder', - 'MetalBorders.ToggleButtonBorder', - 'MetalBorders.ToolBarBorder', 'MetalButtonUI', - 'MetalCheckBoxIcon', 'MetalCheckBoxUI', - 'MetalComboBoxButton', 'MetalComboBoxEditor', - 'MetalComboBoxEditor.UIResource', - 'MetalComboBoxIcon', 'MetalComboBoxUI', - 'MetalDesktopIconUI', 'MetalFileChooserUI', - 'MetalIconFactory', 'MetalIconFactory.FileIcon16', - 'MetalIconFactory.FolderIcon16', - 'MetalIconFactory.PaletteCloseIcon', - 'MetalIconFactory.TreeControlIcon', - 'MetalIconFactory.TreeFolderIcon', - 'MetalIconFactory.TreeLeafIcon', - 'MetalInternalFrameTitlePane', - 'MetalInternalFrameUI', 'MetalLabelUI', - 'MetalLookAndFeel', 'MetalPopupMenuSeparatorUI', - 'MetalProgressBarUI', 'MetalRadioButtonUI', - 'MetalScrollBarUI', 'MetalScrollButton', - 'MetalScrollPaneUI', 'MetalSeparatorUI', - 'MetalSliderUI', 'MetalSplitPaneUI', - 'MetalTabbedPaneUI', 'MetalTextFieldUI', - 'MetalTheme', 'MetalToggleButtonUI', - 'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI', - 'MetaMessage', 'Method', 'MethodDescriptor', - 'MidiChannel', 'MidiDevice', 'MidiDevice.Info', - 'MidiDeviceProvider', 'MidiEvent', 'MidiFileFormat', - 'MidiFileReader', 'MidiFileWriter', 'MidiMessage', - 'MidiSystem', 'MidiUnavailableException', - 'MimeTypeParseException', 'MinimalHTMLWriter', - 'MissingResourceException', 'Mixer', 'Mixer.Info', - 'MixerProvider', 'ModificationItem', 'Modifier', - 'MouseAdapter', 'MouseDragGestureRecognizer', - 'MouseEvent', 'MouseInputAdapter', - 'MouseInputListener', 'MouseListener', - 'MouseMotionAdapter', 'MouseMotionListener', - 'MultiButtonUI', 'MulticastSocket', - 'MultiColorChooserUI', 'MultiComboBoxUI', - 'MultiDesktopIconUI', 'MultiDesktopPaneUI', - 'MultiFileChooserUI', 'MultiInternalFrameUI', - 'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel', - 'MultiMenuBarUI', 'MultiMenuItemUI', - 'MultiOptionPaneUI', 'MultiPanelUI', - 'MultiPixelPackedSampleModel', 'MultipleMaster', - 'MultiPopupMenuUI', 'MultiProgressBarUI', - 'MultiScrollBarUI', 'MultiScrollPaneUI', - 'MultiSeparatorUI', 'MultiSliderUI', - 'MultiSplitPaneUI', 'MultiTabbedPaneUI', - 'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI', - 'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI', - 'MultiViewportUI', 'MutableAttributeSet', - 'MutableComboBoxModel', 'MutableTreeNode', 'Name', - 'NameAlreadyBoundException', 'NameClassPair', - 'NameComponent', 'NameComponentHelper', - 'NameComponentHolder', 'NamedValue', 'NameHelper', - 'NameHolder', 'NameNotFoundException', 'NameParser', - 'NamespaceChangeListener', 'NameValuePair', - 'NameValuePairHelper', 'Naming', 'NamingContext', - 'NamingContextHelper', 'NamingContextHolder', - 'NamingContextOperations', 'NamingEnumeration', - 'NamingEvent', 'NamingException', - 'NamingExceptionEvent', 'NamingListener', - 'NamingManager', 'NamingSecurityException', - 'NegativeArraySizeException', 'NetPermission', - 'NoClassDefFoundError', 'NoInitialContextException', - 'NoninvertibleTransformException', - 'NoPermissionException', 'NoRouteToHostException', - 'NoSuchAlgorithmException', - 'NoSuchAttributeException', 'NoSuchElementException', - 'NoSuchFieldError', 'NoSuchFieldException', - 'NoSuchMethodError', 'NoSuchMethodException', - 'NoSuchObjectException', 'NoSuchProviderException', - 'NotActiveException', 'NotBoundException', - 'NotContextException', 'NotEmpty', 'NotEmptyHelper', - 'NotEmptyHolder', 'NotFound', 'NotFoundHelper', - 'NotFoundHolder', 'NotFoundReason', - 'NotFoundReasonHelper', 'NotFoundReasonHolder', - 'NotOwnerException', 'NotSerializableException', - 'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION', - 'NO_RESOURCES', 'NO_RESPONSE', - 'NullPointerException', 'Number', 'NumberFormat', - 'NumberFormatException', 'NVList', 'Object', - 'ObjectChangeListener', 'ObjectFactory', - 'ObjectFactoryBuilder', 'ObjectHelper', - 'ObjectHolder', 'ObjectImpl', 'ObjectInput', - 'ObjectInputStream', 'ObjectInputStream.GetField', - 'ObjectInputValidation', 'ObjectOutput', - 'ObjectOutputStream', 'ObjectOutputStream.PutField', - 'ObjectStreamClass', 'ObjectStreamConstants', - 'ObjectStreamException', 'ObjectStreamField', - 'ObjectView', 'OBJECT_NOT_EXIST', 'ObjID', - 'OBJ_ADAPTER', 'Observable', 'Observer', - 'OctetSeqHelper', 'OctetSeqHolder', 'OMGVMCID', - 'OpenType', 'Operation', - 'OperationNotSupportedException', 'Option', - 'OptionalDataException', 'OptionPaneUI', 'ORB', - 'OutOfMemoryError', 'OutputStream', - 'OutputStreamWriter', 'OverlayLayout', 'Owner', - 'Package', 'PackedColorModel', 'Pageable', - 'PageAttributes', 'PageAttributes.ColorType', - 'PageAttributes.MediaType', - 'PageAttributes.OrientationRequestedType', - 'PageAttributes.OriginType', - 'PageAttributes.PrintQualityType', 'PageFormat', - 'Paint', 'PaintContext', 'PaintEvent', 'Panel', - 'PanelUI', 'Paper', 'ParagraphView', - 'ParameterBlock', 'ParameterDescriptor', - 'ParseException', 'ParsePosition', 'Parser', - 'ParserDelegator', 'PartialResultException', - 'PasswordAuthentication', 'PasswordView', 'Patch', - 'PathIterator', 'Permission', 'PermissionCollection', - 'Permissions', 'PERSIST_STORE', 'PhantomReference', - 'PipedInputStream', 'PipedOutputStream', - 'PipedReader', 'PipedWriter', 'PixelGrabber', - 'PixelInterleavedSampleModel', 'PKCS8EncodedKeySpec', - 'PlainDocument', 'PlainView', 'Point', 'Point2D', - 'Point2D.Double', 'Point2D.Float', 'Policy', - 'PolicyError', 'PolicyHelper', 'PolicyHolder', - 'PolicyListHelper', 'PolicyListHolder', - 'PolicyOperations', 'PolicyTypeHelper', 'Polygon', - 'PopupMenu', 'PopupMenuEvent', 'PopupMenuListener', - 'PopupMenuUI', 'Port', 'Port.Info', - 'PortableRemoteObject', - 'PortableRemoteObjectDelegate', 'Position', - 'Position.Bias', 'PreparedStatement', 'Principal', - 'PrincipalHolder', 'Printable', - 'PrinterAbortException', 'PrinterException', - 'PrinterGraphics', 'PrinterIOException', - 'PrinterJob', 'PrintGraphics', 'PrintJob', - 'PrintStream', 'PrintWriter', 'PrivateKey', - 'PRIVATE_MEMBER', 'PrivilegedAction', - 'PrivilegedActionException', - 'PrivilegedExceptionAction', 'Process', - 'ProfileDataException', 'ProgressBarUI', - 'ProgressMonitor', 'ProgressMonitorInputStream', - 'Properties', 'PropertyChangeEvent', - 'PropertyChangeListener', 'PropertyChangeSupport', - 'PropertyDescriptor', 'PropertyEditor', - 'PropertyEditorManager', 'PropertyEditorSupport', - 'PropertyPermission', 'PropertyResourceBundle', - 'PropertyVetoException', 'ProtectionDomain', - 'ProtocolException', 'Provider', 'ProviderException', - 'Proxy', 'PublicKey', 'PUBLIC_MEMBER', - 'PushbackInputStream', 'PushbackReader', - 'QuadCurve2D', 'QuadCurve2D.Double', - 'QuadCurve2D.Float', 'Random', 'RandomAccessFile', - 'Raster', 'RasterFormatException', 'RasterOp', - 'Reader', 'Receiver', 'Rectangle', 'Rectangle2D', - 'Rectangle2D.Double', 'Rectangle2D.Float', - 'RectangularShape', 'Ref', 'RefAddr', 'Reference', - 'Referenceable', 'ReferenceQueue', - 'ReferralException', 'ReflectPermission', 'Registry', - 'RegistryHandler', 'RemarshalException', 'Remote', - 'RemoteCall', 'RemoteException', 'RemoteObject', - 'RemoteRef', 'RemoteServer', 'RemoteStub', - 'RenderableImage', 'RenderableImageOp', - 'RenderableImageProducer', 'RenderContext', - 'RenderedImage', 'RenderedImageFactory', 'Renderer', - 'RenderingHints', 'RenderingHints.Key', - 'RepaintManager', 'ReplicateScaleFilter', - 'Repository', 'RepositoryIdHelper', 'Request', - 'RescaleOp', 'Resolver', 'ResolveResult', - 'ResourceBundle', 'ResponseHandler', 'ResultSet', - 'ResultSetMetaData', 'ReverbType', 'RGBImageFilter', - 'RMIClassLoader', 'RMIClientSocketFactory', - 'RMIFailureHandler', 'RMISecurityException', - 'RMISecurityManager', 'RMIServerSocketFactory', - 'RMISocketFactory', 'Robot', 'RootPaneContainer', - 'RootPaneUI', 'RoundRectangle2D', - 'RoundRectangle2D.Double', 'RoundRectangle2D.Float', - 'RowMapper', 'RSAKey', 'RSAKeyGenParameterSpec', - 'RSAPrivateCrtKey', 'RSAPrivateCrtKeySpec', - 'RSAPrivateKey', 'RSAPrivateKeySpec', 'RSAPublicKey', - 'RSAPublicKeySpec', 'RTFEditorKit', - 'RuleBasedCollator', 'Runnable', 'Runtime', - 'RunTime', 'RuntimeException', 'RunTimeOperations', - 'RuntimePermission', 'SampleModel', - 'SchemaViolationException', 'Scrollable', - 'Scrollbar', 'ScrollBarUI', 'ScrollPane', - 'ScrollPaneConstants', 'ScrollPaneLayout', - 'ScrollPaneLayout.UIResource', 'ScrollPaneUI', - 'SearchControls', 'SearchResult', - 'SecureClassLoader', 'SecureRandom', - 'SecureRandomSpi', 'Security', 'SecurityException', - 'SecurityManager', 'SecurityPermission', 'Segment', - 'SeparatorUI', 'Sequence', 'SequenceInputStream', - 'Sequencer', 'Sequencer.SyncMode', 'Serializable', - 'SerializablePermission', 'ServantObject', - 'ServerCloneException', 'ServerError', - 'ServerException', 'ServerNotActiveException', - 'ServerRef', 'ServerRequest', - 'ServerRuntimeException', 'ServerSocket', - 'ServiceDetail', 'ServiceDetailHelper', - 'ServiceInformation', 'ServiceInformationHelper', - 'ServiceInformationHolder', - 'ServiceUnavailableException', 'Set', - 'SetOverrideType', 'SetOverrideTypeHelper', 'Shape', - 'ShapeGraphicAttribute', 'Short', 'ShortHolder', - 'ShortLookupTable', 'ShortMessage', 'ShortSeqHelper', - 'ShortSeqHolder', 'Signature', 'SignatureException', - 'SignatureSpi', 'SignedObject', 'Signer', - 'SimpleAttributeSet', 'SimpleBeanInfo', - 'SimpleDateFormat', 'SimpleTimeZone', - 'SinglePixelPackedSampleModel', - 'SingleSelectionModel', 'SizeLimitExceededException', - 'SizeRequirements', 'SizeSequence', 'Skeleton', - 'SkeletonMismatchException', - 'SkeletonNotFoundException', 'SliderUI', 'Socket', - 'SocketException', 'SocketImpl', 'SocketImplFactory', - 'SocketOptions', 'SocketPermission', - 'SocketSecurityException', 'SoftBevelBorder', - 'SoftReference', 'SortedMap', 'SortedSet', - 'Soundbank', 'SoundbankReader', 'SoundbankResource', - 'SourceDataLine', 'SplitPaneUI', 'SQLData', - 'SQLException', 'SQLInput', 'SQLOutput', - 'SQLPermission', 'SQLWarning', 'Stack', - 'StackOverflowError', 'StateEdit', 'StateEditable', - 'StateFactory', 'Statement', 'Streamable', - 'StreamableValue', 'StreamCorruptedException', - 'StreamTokenizer', 'StrictMath', 'String', - 'StringBuffer', 'StringBufferInputStream', - 'StringCharacterIterator', 'StringContent', - 'StringHolder', 'StringIndexOutOfBoundsException', - 'StringReader', 'StringRefAddr', 'StringSelection', - 'StringTokenizer', 'StringValueHelper', - 'StringWriter', 'Stroke', 'Struct', 'StructMember', - 'StructMemberHelper', 'Stub', 'StubDelegate', - 'StubNotFoundException', 'Style', 'StyleConstants', - 'StyleConstants.CharacterConstants', - 'StyleConstants.ColorConstants', - 'StyleConstants.FontConstants', - 'StyleConstants.ParagraphConstants', 'StyleContext', - 'StyledDocument', 'StyledEditorKit', - 'StyledEditorKit.AlignmentAction', - 'StyledEditorKit.BoldAction', - 'StyledEditorKit.FontFamilyAction', - 'StyledEditorKit.FontSizeAction', - 'StyledEditorKit.ForegroundAction', - 'StyledEditorKit.ItalicAction', - 'StyledEditorKit.StyledTextAction', - 'StyledEditorKit.UnderlineAction', 'StyleSheet', - 'StyleSheet.BoxPainter', 'StyleSheet.ListPainter', - 'SwingConstants', 'SwingPropertyChangeSupport', - 'SwingUtilities', 'SyncFailedException', - 'Synthesizer', 'SysexMessage', 'System', - 'SystemColor', 'SystemException', 'SystemFlavorMap', - 'TabableView', 'TabbedPaneUI', 'TabExpander', - 'TableCellEditor', 'TableCellRenderer', - 'TableColumn', 'TableColumnModel', - 'TableColumnModelEvent', 'TableColumnModelListener', - 'TableHeaderUI', 'TableModel', 'TableModelEvent', - 'TableModelListener', 'TableUI', 'TableView', - 'TabSet', 'TabStop', 'TagElement', 'TargetDataLine', - 'TCKind', 'TextAction', 'TextArea', 'TextAttribute', - 'TextComponent', 'TextEvent', 'TextField', - 'TextHitInfo', 'TextLayout', - 'TextLayout.CaretPolicy', 'TextListener', - 'TextMeasurer', 'TextUI', 'TexturePaint', 'Thread', - 'ThreadDeath', 'ThreadGroup', 'ThreadLocal', - 'Throwable', 'Tie', 'TileObserver', 'Time', - 'TimeLimitExceededException', 'Timer', 'TimerTask', - 'Timestamp', 'TimeZone', 'TitledBorder', 'ToolBarUI', - 'Toolkit', 'ToolTipManager', 'ToolTipUI', - 'TooManyListenersException', 'Track', - 'TransactionRequiredException', - 'TransactionRolledbackException', - 'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK', - 'Transferable', 'TransformAttribute', 'TRANSIENT', - 'Transmitter', 'Transparency', 'TreeCellEditor', - 'TreeCellRenderer', 'TreeExpansionEvent', - 'TreeExpansionListener', 'TreeMap', 'TreeModel', - 'TreeModelEvent', 'TreeModelListener', 'TreeNode', - 'TreePath', 'TreeSelectionEvent', - 'TreeSelectionListener', 'TreeSelectionModel', - 'TreeSet', 'TreeUI', 'TreeWillExpandListener', - 'TypeCode', 'TypeCodeHolder', 'TypeMismatch', - 'Types', 'UID', 'UIDefaults', - 'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap', - 'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue', - 'UIManager', 'UIManager.LookAndFeelInfo', - 'UIResource', 'ULongLongSeqHelper', - 'ULongLongSeqHolder', 'ULongSeqHelper', - 'ULongSeqHolder', 'UndeclaredThrowableException', - 'UndoableEdit', 'UndoableEditEvent', - 'UndoableEditListener', 'UndoableEditSupport', - 'UndoManager', 'UnexpectedException', - 'UnicastRemoteObject', 'UnionMember', - 'UnionMemberHelper', 'UNKNOWN', 'UnknownError', - 'UnknownException', 'UnknownGroupException', - 'UnknownHostException', 'UnknownObjectException', - 'UnknownServiceException', 'UnknownUserException', - 'UnmarshalException', 'UnrecoverableKeyException', - 'Unreferenced', 'UnresolvedPermission', - 'UnsatisfiedLinkError', 'UnsolicitedNotification', - 'UnsolicitedNotificationEvent', - 'UnsolicitedNotificationListener', - 'UnsupportedAudioFileException', - 'UnsupportedClassVersionError', - 'UnsupportedEncodingException', - 'UnsupportedFlavorException', - 'UnsupportedLookAndFeelException', - 'UnsupportedOperationException', - 'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE', - 'URL', 'URLClassLoader', 'URLConnection', - 'URLDecoder', 'URLEncoder', 'URLStreamHandler', - 'URLStreamHandlerFactory', 'UserException', - 'UShortSeqHelper', 'UShortSeqHolder', - 'UTFDataFormatException', 'Util', 'UtilDelegate', - 'Utilities', 'ValueBase', 'ValueBaseHelper', - 'ValueBaseHolder', 'ValueFactory', 'ValueHandler', - 'ValueMember', 'ValueMemberHelper', - 'VariableHeightLayoutCache', 'Vector', 'VerifyError', - 'VersionSpecHelper', 'VetoableChangeListener', - 'VetoableChangeSupport', 'View', 'ViewFactory', - 'ViewportLayout', 'ViewportUI', - 'VirtualMachineError', 'Visibility', - 'VisibilityHelper', 'VMID', 'VM_ABSTRACT', - 'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE', - 'VoiceStatus', 'Void', 'WCharSeqHelper', - 'WCharSeqHolder', 'WeakHashMap', 'WeakReference', - 'Window', 'WindowAdapter', 'WindowConstants', - 'WindowEvent', 'WindowListener', 'WrappedPlainView', - 'WritableRaster', 'WritableRenderedImage', - 'WriteAbortedException', 'Writer', - 'WrongTransaction', 'WStringValueHelper', - 'X509Certificate', 'X509CRL', 'X509CRLEntry', - 'X509EncodedKeySpec', 'X509Extension', 'ZipEntry', - 'ZipException', 'ZipFile', 'ZipInputStream', - 'ZipOutputStream', 'ZoneView', - '_BindingIteratorImplBase', '_BindingIteratorStub', - '_IDLTypeStub', '_NamingContextImplBase', - '_NamingContextStub', '_PolicyStub', '_Remote_Stub' - ), - 4 => array( - 'boolean', 'byte', 'char', 'double', 'float', 'int', 'long', - 'short', 'void' - ), - 5 => array( - 'allProperties', 'asImmutable', 'asSynchronized', 'collect', - 'count', 'each', 'eachProperty', 'eachPropertyName', - 'eachWithIndex', 'find', 'findAll', 'findIndexOf', - 'flatten', 'get', 'grep', 'inject', 'intersect', - 'join', 'max', 'min', 'pop', 'reverse', - 'reverseEach', 'size', 'sort', 'subMap', 'toList' - ), - 6 => array( - 'center', 'contains', 'eachMatch', 'padLeft', 'padRight', - 'toCharacter', 'tokenize', 'toLong', 'toURL' - ), - 7 => array( - 'append', 'eachByte', 'eachFile', 'eachFileRecurse', 'eachLine', - 'eachLines', 'encodeBase64', 'filterLine', 'getText', - 'splitEachLine', 'transformChar', 'transformLine', - 'withOutputStream', 'withPrintWriter', 'withReader', - 'withStream', 'withStreams', 'withWriter', - 'withWriterAppend', 'write', 'writeLine' - ), - 8 => array( - 'dump', 'getLastMatcher', 'inspect', 'invokeMethod', 'print', - 'println', 'start', 'startDaemon', 'step', 'times', - 'upto', 'use' - ), - 9 => array( - 'call', 'close', 'eachRow', 'execute', 'executeUpdate', 'Sql' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', '|', '=', - '=>', '||', '-', '+', '<<', '<<<', '&&' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => false, - 2 => false, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #aaaadd; font-weight: bold;', - 4 => 'color: #993333;', - 5 => 'color: #663399;', - 6 => 'color: #CC0099;', - 7 => 'color: #FFCC33;', - 8 => 'color: #993399;', - 9 => 'color: #993399; font-weight: bold;' - ), - 'COMMENTS' => array( - 1=> 'color: #808080; font-style: italic;', - 2=> 'color: #a1a100;', - 3=> 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;' - ) - ), - 'URLS' => array( - 1 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAMEL}', - 2 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAMEL}', - 3 => 'http://www.google.de/search?as_q={FNAME}&num=100&hl=en&as_occt=url&as_sitesearch=java.sun.com%2Fj2se%2F1%2E5%2E0%2Fdocs%2Fapi%2F', - 4 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 5 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 6 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 7 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 8 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}', - 9 => 'http://www.google.de/search?q=site%3Adocs.codehaus.org/%20{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - //Variables - 0 => '\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\}' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/haskell.php b/system/application/libraries/geshi/haskell.php deleted file mode 100644 index 024382deb..000000000 --- a/system/application/libraries/geshi/haskell.php +++ /dev/null @@ -1,198 +0,0 @@ -<?php -/************************************************************************************* - * haskell.php - * ---------- - * Author: Jason Dagit (dagit@codersbase.com) based on ocaml.php by Flaie (fireflaie@gmail.com) - * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2005/08/27 - * - * Haskell language file for GeSHi. - * - * CHANGES - * ------- - * 2005/08/27 (1.0.0) - * - First Release - * - * TODO (updated 2005/08/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Haskell', - 'COMMENT_SINGLE' => array( 1 => '--'), - 'COMMENT_MULTI' => array('{-' => '-}'), - 'COMMENT_REGEXP' => array(2 => "/-->/"), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => "\\", - 'KEYWORDS' => array( - /* main haskell keywords */ - 1 => array( - 'as', - 'case', 'of', 'class', 'data', 'default', - 'deriving', 'do', 'forall', 'hiding', 'if', 'then', - 'else', 'import', 'infix', 'infixl', 'infixr', - 'instance', 'let', 'in', 'module', 'newtype', - 'qualified', 'type', 'where' - ), - /* define names of main librarys, so we can link to it */ - 2 => array( - 'Foreign', 'Numeric', 'Prelude' - ), - /* just link to Prelude functions, cause it's the default opened library when starting Haskell */ - 3 => array( - 'not', 'otherwise', 'maybe', - 'either', 'fst', 'snd', 'curry', 'uncurry', - 'compare', - 'max', 'min', 'succ', 'pred', 'toEnum', 'fromEnum', - 'enumFrom', 'enumFromThen', 'enumFromTo', - 'enumFromThenTo', 'minBound', 'maxBound', - 'negate', 'abs', 'signum', - 'fromInteger', 'toRational', 'quot', 'rem', - 'div', 'mod', 'quotRem', 'divMod', 'toInteger', - 'recip', 'fromRational', 'pi', 'exp', - 'log', 'sqrt', 'logBase', 'sin', 'cos', - 'tan', 'asin', 'acos', 'atan', 'sinh', 'cosh', - 'tanh', 'asinh', 'acosh', 'atanh', - 'properFraction', 'truncate', 'round', 'ceiling', - 'floor', 'floatRadix', 'floatDigits', 'floatRange', - 'decodeFloat', 'encodeFloat', 'exponent', - 'significand', 'scaleFloat', 'isNaN', 'isInfinite', - 'isDenomalized', 'isNegativeZero', 'isIEEE', - 'atan2', 'subtract', 'even', 'odd', 'gcd', - 'lcm', 'fromIntegral', 'realToFrac', - 'return', 'fail', 'fmap', - 'mapM', 'mapM_', 'sequence', 'sequence_', - 'id', 'const','flip', - 'until', 'asTypeOf', 'error', 'undefined', - 'seq','map','filter', 'head', - 'last', 'tail', 'init', 'null', 'length', - 'reverse', 'foldl', 'foldl1', 'foldr', - 'foldr1', 'and', 'or', 'any', 'all', 'sum', - 'product', 'concat', 'concatMap', 'maximum', - 'minimum', 'scanl', 'scanl1', 'scanr', 'scanr1', - 'iterate', 'repeat', 'cycle', 'take', 'drop', - 'splitAt', 'teakWhile', 'dropWhile', 'span', - 'break', 'elem', 'notElem', 'lookup', 'zip', - 'zip3', 'zipWith', 'zipWith3', 'unzip', 'unzip3', - 'lines', 'words', 'unlines', - 'unwords', 'showPrec', 'show', 'showList', - 'shows', 'showChar', 'showString', 'showParen', - 'readsPrec', 'readList', 'reads', 'readParen', - 'read', 'lex', 'putChar', 'putStr', 'putStrLn', - 'print', 'getChar', 'getLine', 'getContents', - 'interact', 'readFile', 'writeFile', 'appendFile', - 'readIO', 'readLn', 'ioError', 'userError', 'catch' - ), - /* here Prelude Types */ - 4 => array ( - 'Bool', 'Maybe', 'Either', 'Ord', 'Ordering', - 'Char', 'String', 'Eq', 'Enum', 'Bounded', - 'Int', 'Integer', 'Float', 'Double', 'Rational', - 'Num', 'Real', 'Integral', 'Fractional', - 'Floating', 'RealFrac', 'RealFloat', 'Monad', - 'Functor', 'Show', 'ShowS', 'Read', 'ReadS', - 'IO' - ), - /* finally Prelude Exceptions */ - 5 => array ( - 'IOError', 'IOException' - ) - ), - /* highlighting symbols is really important in Haskell */ - 'SYMBOLS' => array( - '|', '->', '<-', '@', '!', '::', '_', '~', '=', '?', - '&&', '||', '==', '/=', '<', '<=', '>', - '>=','+', '-', '*','/', '%', '**', '^', '^^', - '>>=', '>>', '=<<', '$', '.', ',', '$!', - '++', '!!' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, /* functions name are case seinsitive */ - 3 => true, /* types name too */ - 4 => true, /* finally exceptions too */ - 5 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #06c; font-weight: bold;', /* nice blue */ - 2 => 'color: #06c; font-weight: bold;', /* blue as well */ - 3 => 'font-weight: bold;', /* make the preduled functions bold */ - 4 => 'color: #cccc00; font-weight: bold;', /* give types a different bg */ - 5 => 'color: maroon;' - ), - 'COMMENTS' => array( - 1 => 'color: #5d478b; font-style: italic;', - 2 => 'color: #339933; font-weight: bold;', - 'MULTI' => 'color: #5d478b; font-style: italic;' /* light purpHle */ - ), - 'ESCAPE_CHAR' => array( - 0 => 'background-color: #3cb371; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: green;' - ), - 'STRINGS' => array( - 0 => 'background-color: #3cb371;' /* nice green */ - ), - 'NUMBERS' => array( - 0 => 'color: red;' /* pink */ - ), - 'METHODS' => array( - 1 => 'color: #060;' /* dark green */ - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #339933; font-weight: bold;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - /* some of keywords are Prelude functions */ - 1 => '', - /* link to the wanted library */ - 2 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/{FNAME}.html', - /* link to Prelude functions */ - 3 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#v:{FNAME}', - /* link to Prelude types */ - 4 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}', - /* link to Prelude exceptions */ - 5 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/hq9plus.php b/system/application/libraries/geshi/hq9plus.php deleted file mode 100644 index 89af3bee8..000000000 --- a/system/application/libraries/geshi/hq9plus.php +++ /dev/null @@ -1,104 +0,0 @@ -<?php -/************************************************************************************* - * hq9plus.php - * ---------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2009/10/31 - * - * HQ9+ language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/31 (1.0.8.1) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ -$language_data = array ( - 'LANG_NAME' => 'HQ9+', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - 'H', 'Q', '9', '+', 'h', 'q' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #a16000;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'KEYWORDS' => GESHI_NEVER, - 'COMMENTS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, - 'REGEXPS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/html4strict.php b/system/application/libraries/geshi/html4strict.php deleted file mode 100644 index 08c7f30c7..000000000 --- a/system/application/libraries/geshi/html4strict.php +++ /dev/null @@ -1,203 +0,0 @@ -<?php -/************************************************************************************* - * html4strict.php - * --------------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/10 - * - * HTML 4.01 strict language file for GeSHi. - * - * CHANGES - * ------- - * 2005/12/28 (1.0.4) - * - Removed escape character for strings - * 2004/11/27 (1.0.3) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.2) - * - Added support for URLs - * 2004/08/05 (1.0.1) - * - Added INS and DEL - * - Removed the background colour from tags' styles - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * Check that only HTML4 strict attributes are highlighted - * * Eliminate empty tags that aren't allowed in HTML4 strict - * * Split to several files - html4trans, xhtml1 etc - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'HTML', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 2 => array( - 'a', 'abbr', 'acronym', 'address', 'applet', - - 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', - - 'caption', 'center', 'cite', 'code', 'colgroup', 'col', - - 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', - - 'em', - - 'fieldset', 'font', 'form', 'frame', 'frameset', - - 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', - - 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', - - 'kbd', - - 'label', 'legend', 'link', 'li', - - 'map', 'meta', - - 'noframes', 'noscript', - - 'object', 'ol', 'optgroup', 'option', - - 'param', 'pre', 'p', - - 'q', - - 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', - - 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', - - 'ul', 'u', - - 'var', - ), - 3 => array( - 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', - 'background', 'bgcolor', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', - 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', - 'enctype', - 'face', 'for', 'frame', 'frameborder', - 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', - 'id', 'ismap', - 'label', 'lang', 'language', 'link', 'longdesc', - 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', - 'name', 'nohref', 'noresize', 'noshade', 'nowrap', - 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', - 'profile', 'prompt', - 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', - 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', - 'tabindex', 'target', 'text', 'title', 'type', - 'usemap', - 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', - 'width' - ) - ), - 'SYMBOLS' => array( - '/', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - -1 => 'color: #808080; font-style: italic;', // comments - 0 => 'color: #00bbdd;', - 1 => 'color: #ddbb00;', - 2 => 'color: #009900;' - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 2 => 'http://december.com/html/4/element/{FNAMEL}.html', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - -1 => array( - '<!--' => '-->' - ), - 0 => array( - '<!DOCTYPE' => '>' - ), - 1 => array( - '&' => ';' - ), - 2 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - -1 => false, - 0 => false, - 1 => false, - 2 => true - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 2 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ) - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/idl.php b/system/application/libraries/geshi/idl.php deleted file mode 100644 index 64472140a..000000000 --- a/system/application/libraries/geshi/idl.php +++ /dev/null @@ -1,123 +0,0 @@ -<?php -/************************************************************************************* - * idl.php - * ------- - * Author: Cedric Bosdonnat (cedricbosdo@openoffice.org) - * Copyright: (c) 2006 Cedric Bosdonnat - * Release Version: 1.0.8.6 - * Date Started: 2006/08/20 - * - * Unoidl language file for GeSHi. - * - * 2006/08/20 (1.0.0) - * - First Release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - - -$language_data = array ( - 'LANG_NAME' => 'Uno Idl', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'published', 'get', 'set', 'service', 'singleton', 'type', 'module', 'interface', 'struct', - 'const', 'constants', 'exception', 'enum', 'raises', 'typedef' - ), - 2 => array( - 'bound', 'maybeambiguous', 'maybedefault', 'maybevoid', 'oneway', 'optional', - 'readonly', 'in', 'out', 'inout', 'attribute', 'transient', 'removable' - ), - 3 => array( - 'True', 'False', 'TRUE', 'FALSE' - ), - 4 => array( - 'string', 'long', 'byte', 'hyper', 'boolean', 'any', 'char', 'double', - 'void', 'sequence', 'unsigned' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':', ';', '...' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990078; font-weight: bold', - 2 => 'color: #36dd1c;', - 3 => 'color: #990078; font-weight: bold', - 4 => 'color: #0000ec;' - ), - 'COMMENTS' => array( - 1 => 'color: #3f7f5f;', - 2 => 'color: #808080;', - 'MULTI' => 'color: #4080ff; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #666666; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #808080;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000dd;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/ini.php b/system/application/libraries/geshi/ini.php deleted file mode 100644 index ae0e81ec4..000000000 --- a/system/application/libraries/geshi/ini.php +++ /dev/null @@ -1,128 +0,0 @@ -<?php -/************************************************************************************* - * ini.php - * -------- - * Author: deguix (cevo_deguix@yahoo.com.br) - * Copyright: (c) 2005 deguix - * Release Version: 1.0.8.6 - * Date Started: 2005/03/27 - * - * INI language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2005/12/28 (1.0.1) - * - Removed unnecessary keyword style index - * - Added support for " strings - * 2005/04/05 (1.0.0) - * - First Release - * - * TODO (updated 2005/03/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'INI', - 'COMMENT_SINGLE' => array(0 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - '[', ']', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 0 => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #933;' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066; font-weight:bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #000066; font-weight:bold;', - 1 => 'color: #000099;', - 2 => 'color: #660066;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Section names - 0 => '\[.+\]', - //Entry names - 1 => array( - GESHI_SEARCH => '^(\s*)([a-zA-Z0-9_\-]+)(\s*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Entry values - 2 => array( - // Evil hackery to get around GeSHi bug: <>" and ; are added so <span>s can be matched - // Explicit match on variable names because if a comment is before the first < of the span - // gets chewed up... - GESHI_SEARCH => '([<>";a-zA-Z0-9_]+\s*)=(.*)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1=', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/inno.php b/system/application/libraries/geshi/inno.php deleted file mode 100644 index 6d1b97965..000000000 --- a/system/application/libraries/geshi/inno.php +++ /dev/null @@ -1,212 +0,0 @@ -<?php -/************************************************************************************* - * Inno.php - * ---------- - * Author: Thomas Klingler (hotline@theratech.de) based on delphi.php from J�rja Norbert (jnorbi@vipmail.hu) - * Copyright: (c) 2004 J�rja Norbert, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2005/07/29 - * - * Inno Script language inkl. Delphi (Object Pascal) language file for GeSHi. - * - * CHANGES - * ------- - * 2005/09/03 - * - First Release - * - * TODO (updated 2005/07/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Inno', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'Setup','Types','Components','Tasks','Dirs','Files','Icons','INI', - 'InstallDelete','Languages','Messages','CustomMessage', - 'LangOptions','Registry','RUN','UninstallDelete','UninstallRun', - 'app','win','sys','syswow64','src','sd','pf','pf32','pf64','cf', - 'cf32','cf64','tmp','fonts','dao','group','localappdata','sendto', - 'userappdata','commonappdata','userdesktop','commondesktop', - 'userdocs','commondocs','userfavorites','commonfavorites', - 'userprograms','commonprograms','userstartmenu','commonstartmenu', - 'userstartup','commonstartup','usertemplates','commontemplates' - ), - 2 => array( - 'nil', 'false', 'true', 'var', 'type', 'const','And', 'Array', 'As', 'Begin', 'Case', 'Class', 'Constructor', 'Destructor', 'Div', 'Do', 'DownTo', 'Else', - 'End', 'Except', 'File', 'Finally', 'For', 'Function', 'Goto', 'If', 'Implementation', 'In', 'Inherited', 'Interface', - 'Is', 'Mod', 'Not', 'Object', 'Of', 'On', 'Or', 'Packed', 'Procedure', 'Property', 'Raise', 'Record', - 'Repeat', 'Set', 'Shl', 'Shr', 'Then', 'ThreadVar', 'To', 'Try', 'Unit', 'Until', 'Uses', 'While', 'With', 'Xor', - - 'HKCC','HKCR','HKCU','HKLM','HKU','alwaysoverwrite','alwaysskipifsameorolder','append', - 'binary','classic','closeonexit','comparetimestamp','confirmoverwrite', - 'createkeyifdoesntexist','createonlyiffileexists','createvalueifdoesntexist', - 'deleteafterinstall','deletekey','deletevalue','dirifempty','dontcloseonexit', - 'dontcopy','dontcreatekey','disablenouninstallwarning','dword','exclusive','expandsz', - 'external','files','filesandordirs','fixed','fontisnttruetype','ignoreversion','iscustom','isreadme', - 'modern','multisz','new','noerror','none','normal','nowait','onlyifdestfileexists', - 'onlyifdoesntexist','onlyifnewer','overwrite','overwritereadonly','postinstall', - 'preservestringtype','promptifolder','regserver','regtypelib','restart','restartreplace', - 'runhidden','runmaximized','runminimized','sharedfile','shellexec','showcheckbox', - 'skipifnotsilent','skipifsilent','silent','skipifdoesntexist', - 'skipifsourcedoesntexist','sortfilesbyextension','unchecked','uninsalwaysuninstall', - 'uninsclearvalue','uninsdeleteentry','uninsdeletekey','uninsdeletekeyifempty', - 'uninsdeletesection','uninsdeletesectionifempty','uninsdeletevalue', - 'uninsneveruninstall','useapppaths','verysilent','waituntilidle' - ), - 3 => array( - 'Abs', 'Addr', 'AnsiCompareStr', 'AnsiCompareText', 'AnsiContainsStr', 'AnsiEndsStr', 'AnsiIndexStr', 'AnsiLeftStr', - 'AnsiLowerCase', 'AnsiMatchStr', 'AnsiMidStr', 'AnsiPos', 'AnsiReplaceStr', 'AnsiReverseString', 'AnsiRightStr', - 'AnsiStartsStr', 'AnsiUpperCase', 'ArcCos', 'ArcSin', 'ArcTan', 'Assigned', 'BeginThread', 'Bounds', 'CelsiusToFahrenheit', - 'ChangeFileExt', 'Chr', 'CompareStr', 'CompareText', 'Concat', 'Convert', 'Copy', 'Cos', 'CreateDir', 'CurrToStr', - 'CurrToStrF', 'Date', 'DateTimeToFileDate', 'DateTimeToStr', 'DateToStr', 'DayOfTheMonth', 'DayOfTheWeek', 'DayOfTheYear', - 'DayOfWeek', 'DaysBetween', 'DaysInAMonth', 'DaysInAYear', 'DaySpan', 'DegToRad', 'DeleteFile', 'DiskFree', 'DiskSize', - 'DupeString', 'EncodeDate', 'EncodeDateTime', 'EncodeTime', 'EndOfADay', 'EndOfAMonth', 'Eof', 'Eoln', 'Exp', 'ExtractFileDir', - 'ExtractFileDrive', 'ExtractFileExt', 'ExtractFileName', 'ExtractFilePath', 'FahrenheitToCelsius', 'FileAge', - 'FileDateToDateTime', 'FileExists', 'FilePos', 'FileSearch', 'FileSetDate', 'FileSize', 'FindClose', 'FindCmdLineSwitch', - 'FindFirst', 'FindNext', 'FloatToStr', 'FloatToStrF', 'Format', 'FormatCurr', 'FormatDateTime', 'FormatFloat', 'Frac', - 'GetCurrentDir', 'GetLastError', 'GetMem', 'High', 'IncDay', 'IncMinute', 'IncMonth', 'IncYear', 'InputBox', - 'InputQuery', 'Int', 'IntToHex', 'IntToStr', 'IOResult', 'IsInfinite', 'IsLeapYear', 'IsMultiThread', 'IsNaN', - 'LastDelimiter', 'Length', 'Ln', 'Lo', 'Log10', 'Low', 'LowerCase', 'Max', 'Mean', 'MessageDlg', 'MessageDlgPos', - 'MonthOfTheYear', 'Now', 'Odd', 'Ord', 'ParamCount', 'ParamStr', 'Pi', 'Point', 'PointsEqual', 'Pos', 'Pred', - 'Printer', 'PromptForFileName', 'PtInRect', 'RadToDeg', 'Random', 'RandomRange', 'RecodeDate', 'RecodeTime', 'Rect', - 'RemoveDir', 'RenameFile', 'Round', 'SeekEof', 'SeekEoln', 'SelectDirectory', 'SetCurrentDir', 'Sin', 'SizeOf', - 'Slice', 'Sqr', 'Sqrt', 'StringOfChar', 'StringReplace', 'StringToWideChar', 'StrToCurr', 'StrToDate', 'StrToDateTime', - 'StrToFloat', 'StrToInt', 'StrToInt64', 'StrToInt64Def', 'StrToIntDef', 'StrToTime', 'StuffString', 'Succ', 'Sum', 'Tan', - 'Time', 'TimeToStr', 'Tomorrow', 'Trunc', 'UpCase', 'UpperCase', 'VarType', 'WideCharToString', 'WrapText', 'Yesterday', - 'Append', 'AppendStr', 'Assign', 'AssignFile', 'AssignPrn', 'Beep', 'BlockRead', 'BlockWrite', 'Break', - 'ChDir', 'Close', 'CloseFile', 'Continue', 'DateTimeToString', 'Dec', 'DecodeDate', 'DecodeDateTime', - 'DecodeTime', 'Delete', 'Dispose', 'EndThread', 'Erase', 'Exclude', 'Exit', 'FillChar', 'Flush', 'FreeAndNil', - 'FreeMem', 'GetDir', 'GetLocaleFormatSettings', 'Halt', 'Inc', 'Include', 'Insert', 'MkDir', 'Move', 'New', - 'ProcessPath', 'Randomize', 'Read', 'ReadLn', 'ReallocMem', 'Rename', 'ReplaceDate', 'ReplaceTime', - 'Reset', 'ReWrite', 'RmDir', 'RunError', 'Seek', 'SetLength', 'SetString', 'ShowMessage', 'ShowMessageFmt', - 'ShowMessagePos', 'Str', 'Truncate', 'Val', 'Write', 'WriteLn', - - 'AdminPrivilegesRequired','AfterInstall','AllowCancelDuringInstall','AllowNoIcons','AllowRootDirectory','AllowUNCPath','AlwaysRestart','AlwaysShowComponentsList','AlwaysShowDirOnReadyPage','AlwaysShowGroupOnReadyPage ','AlwaysUsePersonalGroup','AppComments','AppContact','AppCopyright','AppendDefaultDirName', - 'AppendDefaultGroupName','AppId','AppModifyPath','AppMutex','AppName','AppPublisher', - 'AppPublisherURL','AppReadmeFile','AppSupportURL','AppUpdatesURL','AppVerName','AppVersion', - 'Attribs','BackColor','BackColor2','BackColorDirection','BackSolid','BeforeInstall', - 'ChangesAssociations','ChangesEnvironment','Check','CodeFile','Comment','Compression','CopyMode', - 'CreateAppDir','CreateUninstallRegKey','DefaultDirName','DefaultGroupName', - 'DefaultUserInfoName','DefaultUserInfoOrg','DefaultUserInfoSerial', - 'Description','DestDir','DestName','DirExistsWarning', - 'DisableDirPage','DisableFinishedPage', - 'DisableProgramGroupPage','DisableReadyMemo','DisableReadyPage', - 'DisableStartupPrompt','DiskClusterSize','DiskSliceSize','DiskSpaceMBLabel', - 'DiskSpanning','DontMergeDuplicateFiles','EnableDirDoesntExistWarning','Encryption', - 'Excludes','ExtraDiskSpaceRequired','Filename','Flags','FlatComponentsList','FontInstall', - 'GroupDescription','HotKey','IconFilename','IconIndex','InfoAfterFile','InfoBeforeFile', - 'InternalCompressLevel','Key','LanguageDetectionMethod', - 'LicenseFile','MergeDuplicateFiles','MessagesFile','MinVersion','Name', - 'OnlyBelowVersion','OutputBaseFilename','OutputManifestFile','OutputDir', - 'Parameters','Password','Permissions','PrivilegesRequired','ReserveBytes', - 'RestartIfNeededByRun','Root','RunOnceId','Section','SetupIconFile', - 'ShowComponentSizes','ShowLanguageDialog','ShowTasksTreeLines','SlicesPerDisk', - 'SolidCompression','Source','SourceDir','StatusMsg','Subkey', - 'TimeStampRounding','TimeStampsInUTC','TouchDate','TouchTime','Type', - 'UninstallDisplayIcon','UninstallDisplayName','UninstallFilesDir','UninstallIconFile', - 'UninstallLogMode','UninstallRestartComputer','UninstallStyle','Uninstallable', - 'UpdateUninstallLogAppName','UsePreviousAppDir','UsePreviousGroup', - 'UsePreviousTasks','UsePreviousSetupType','UsePreviousUserInfo', - 'UserInfoPage','UseSetupLdr','ValueData','ValueName','ValueType', - 'VersionInfoVersion','VersionInfoCompany','VersionInfoDescription','VersionInfoTextVersion', - 'WindowResizable','WindowShowCaption','WindowStartMaximized', - 'WindowVisible','WizardImageBackColor','WizardImageFile','WizardImageStretch','WizardSmallImageBackColor','WizardSmallImageFile','WizardStyle','WorkingDir' - ), - 4 => array( - 'AnsiChar', 'AnsiString', 'Boolean', 'Byte', 'Cardinal', 'Char', 'Comp', 'Currency', 'Double', 'Extended', - 'Int64', 'Integer', 'LongInt', 'LongWord', 'PAnsiChar', 'PAnsiString', 'PChar', 'PCurrency', 'PDateTime', - 'PExtended', 'PInt64', 'Pointer', 'PShortString', 'PString', 'PVariant', 'PWideChar', 'PWideString', - 'Real', 'Real48', 'ShortInt', 'ShortString', 'Single', 'SmallInt', 'String', 'TBits', 'TConvType', 'TDateTime', - 'Text', 'TextFile', 'TFloatFormat', 'TFormatSettings', 'TList', 'TObject', 'TOpenDialog', 'TPoint', - 'TPrintDialog', 'TRect', 'TReplaceFlags', 'TSaveDialog', 'TSearchRec', 'TStringList', 'TSysCharSet', - 'TThreadFunc', 'Variant', 'WideChar', 'WideString', 'Word' - ), - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '@', '%', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;',/*bold Black*/ - 2 => 'color: #000000;font-style: italic;',/*Black*/ - 3 => 'color: #0000FF;',/*blue*/ - 4 => 'color: #CC0000;'/*red*/ - ), - 'COMMENTS' => array( - 1 => 'color: #33FF00; font-style: italic;', - 'MULTI' => 'color: #33FF00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: bold;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/intercal.php b/system/application/libraries/geshi/intercal.php deleted file mode 100644 index 958f886ce..000000000 --- a/system/application/libraries/geshi/intercal.php +++ /dev/null @@ -1,122 +0,0 @@ -<?php -/************************************************************************************* - * intercal.php - * ---------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2009/10/31 - * - * INTERCAL language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/31 (1.0.8.1) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ -$language_data = array ( - 'LANG_NAME' => 'INTERCAL', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - //Politeness - 1 => array( - 'DO', 'DOES', 'DONT', 'DON\'T', 'NOT', 'PLEASE', 'PLEASENT', 'PLEASEN\'T', 'MAYBE' - ), - //Statements - 2 => array( - 'STASH', 'RETRIEVE', 'NEXT', 'RESUME', 'FORGET', 'ABSTAIN', 'ABSTAINING', - 'COME', 'FROM', 'CALCULATING', 'REINSTATE', 'IGNORE', 'REMEMBER', - 'WRITE', 'IN', 'READ', 'OUT', 'GIVE', 'UP' - ) - ), - 'SYMBOLS' => array( - '.', ',', ':', ';', '#', - '~', '$', '&', '?', - '\'', '"', '<-' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #000080; font-weight: bold;' - ), - 'COMMENTS' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #808080; font-style: italic;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 1 => '^\(\d+\)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'COMMENTS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/io.php b/system/application/libraries/geshi/io.php deleted file mode 100644 index eb4d8646e..000000000 --- a/system/application/libraries/geshi/io.php +++ /dev/null @@ -1,138 +0,0 @@ -<?php -/************************************************************************************* - * io.php - * ------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2006 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2006/09/23 - * - * Io language file for GeSHi. Thanks to Johnathan Wright for the suggestion and help - * with this language :) - * - * CHANGES - * ------- - * 2006/09/23(1.0.0) - * - First Release - * - * TODO - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Io', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'and', 'break', 'else', 'elseif', 'exit', 'for', 'foreach', 'if', 'ifFalse', 'ifNil', - 'ifTrue', 'or', 'pass', 'raise', 'return', 'then', 'try', 'wait', 'while', 'yield' - ), - 2 => array( - 'activate', 'activeCoroCount', 'asString', 'block', 'catch', 'clone', 'collectGarbage', - 'compileString', 'continue', 'do', 'doFile', 'doMessage', 'doString', 'forward', - 'getSlot', 'getenv', 'hasSlot', 'isActive', 'isNil', 'isResumable', 'list', 'message', - 'method', 'parent', 'pause', 'perform', 'performWithArgList', 'print', 'proto', - 'raiseResumable', 'removeSlot', 'resend', 'resume', 'schedulerSleepSeconds', 'self', - 'sender', 'setSchedulerSleepSeconds', 'setSlot', 'shallowCopy', 'slotNames', 'super', - 'system', 'thisBlock', 'thisContext', 'thisMessage', 'type', 'uniqueId', 'updateSlot', - 'write' - ), - 3 => array( - 'Array', 'AudioDevice', 'AudioMixer', 'Block', 'Box', 'Buffer', 'CFunction', 'CGI', - 'Color', 'Curses', 'DBM', 'DNSResolver', 'DOConnection', 'DOProxy', 'DOServer', - 'Date', 'Directory', 'Duration', 'DynLib', 'Error', 'Exception', 'FFT', 'File', - 'Fnmatch', 'Font', 'Future', 'GL', 'GLE', 'GLScissor', 'GLU', 'GLUCylinder', - 'GLUQuadric', 'GLUSphere', 'GLUT', 'Host', 'Image', 'Importer', 'LinkList', 'List', - 'Lobby', 'Locals', 'MD5', 'MP3Decoder', 'MP3Encoder', 'Map', 'Message', 'Movie', - 'NULL', 'Nil', 'Nop', 'Notifiction', 'Number', 'Object', 'OpenGL', 'Point', 'Protos', - 'Regex', 'SGMLTag', 'SQLite', 'Server', 'ShowMessage', 'SleepyCat', 'SleepyCatCursor', - 'Socket', 'SocketManager', 'Sound', 'Soup', 'Store', 'String', 'Tree', 'UDPSender', - 'UDPReceiver', 'URL', 'User', 'Warning', 'WeakLink' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/java.php b/system/application/libraries/geshi/java.php deleted file mode 100644 index b4080f7ac..000000000 --- a/system/application/libraries/geshi/java.php +++ /dev/null @@ -1,983 +0,0 @@ -<?php -/************************************************************************************* - * java.php - * -------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/10 - * - * Java language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/25 (1.0.7.22) - * - Added highlighting of import and package directives as non-OOP - * 2005/12/28 (1.0.4) - * - Added instanceof keyword - * 2004/11/27 (1.0.3) - * - Added support for multiple object splitters - * 2004/08/05 (1.0.2) - * - Added URL support - * - Added keyword "this", as bugs in GeSHi class ironed out - * 2004/08/05 (1.0.1) - * - Added support for symbols - * - Added extra missed keywords - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * Compact the class names like the first few have been - * and eliminate repeats - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Java', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Import and Package directives (Basic Support only) - 2 => '/(?:(?<=import[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i', - // javadoc comments - 3 => '#/\*\*(?![\*\/]).*\*/#sU' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'for', 'foreach', 'if', 'else', 'while', 'do', - 'switch', 'case', 'return', 'public', - 'private', 'protected', 'extends', 'break', 'class', - 'new', 'try', 'catch', 'throws', 'finally', 'implements', - 'interface', 'throw', 'final', 'native', 'synchronized', 'this', - 'abstract', 'transient', 'instanceof', 'assert', 'continue', - 'default', 'enum', 'package', 'static', 'strictfp', 'super', - 'volatile', 'const', 'goto', 'import' - ), - 2 => array( - 'null', 'false', 'true' - ), - 3 => array( - 'AbstractAction', 'AbstractBorder', 'AbstractButton', - 'AbstractCellEditor', 'AbstractCollection', - 'AbstractColorChooserPanel', 'AbstractDocument', - 'AbstractDocument.AttributeContext', - 'AbstractDocument.Content', - 'AbstractDocument.ElementEdit', - 'AbstractLayoutCache', - 'AbstractLayoutCache.NodeDimensions', 'AbstractList', - 'AbstractListModel', 'AbstractMap', - 'AbstractMethodError', 'AbstractSequentialList', - 'AbstractSet', 'AbstractTableModel', - 'AbstractUndoableEdit', 'AbstractWriter', - 'AccessControlContext', 'AccessControlException', - 'AccessController', 'AccessException', 'Accessible', - 'AccessibleAction', 'AccessibleBundle', - 'AccessibleComponent', 'AccessibleContext', - 'AccessibleHyperlink', 'AccessibleHypertext', - 'AccessibleIcon', 'AccessibleObject', - 'AccessibleRelation', 'AccessibleRelationSet', - 'AccessibleResourceBundle', 'AccessibleRole', - 'AccessibleSelection', 'AccessibleState', - 'AccessibleStateSet', 'AccessibleTable', - 'AccessibleTableModelChange', 'AccessibleText', - 'AccessibleValue', 'Acl', 'AclEntry', - 'AclNotFoundException', 'Action', 'ActionEvent', - 'ActionListener', 'ActionMap', 'ActionMapUIResource', - 'Activatable', 'ActivateFailedException', - 'ActivationDesc', 'ActivationException', - 'ActivationGroup', 'ActivationGroupDesc', - 'ActivationGroupDesc.CommandEnvironment', - 'ActivationGroupID', 'ActivationID', - 'ActivationInstantiator', 'ActivationMonitor', - 'ActivationSystem', 'Activator', 'ActiveEvent', - 'Adjustable', 'AdjustmentEvent', - 'AdjustmentListener', 'Adler32', 'AffineTransform', - 'AffineTransformOp', 'AlgorithmParameterGenerator', - 'AlgorithmParameterGeneratorSpi', - 'AlgorithmParameters', 'AlgorithmParameterSpec', - 'AlgorithmParametersSpi', 'AllPermission', - 'AlphaComposite', 'AlreadyBound', - 'AlreadyBoundException', 'AlreadyBoundHelper', - 'AlreadyBoundHolder', 'AncestorEvent', - 'AncestorListener', 'Annotation', 'Any', 'AnyHolder', - 'AnySeqHelper', 'AnySeqHolder', 'Applet', - 'AppletContext', 'AppletInitializer', 'AppletStub', - 'ApplicationException', 'Arc2D', 'Arc2D.Double', - 'Arc2D.Float', 'Area', 'AreaAveragingScaleFilter', - 'ARG_IN', 'ARG_INOUT', 'ARG_OUT', - 'ArithmeticException', 'Array', - 'ArrayIndexOutOfBoundsException', 'ArrayList', - 'Arrays', 'ArrayStoreException', 'AsyncBoxView', - 'Attribute', 'AttributedCharacterIterator', - 'AttributedCharacterIterator.Attribute', - 'AttributedString', 'AttributeInUseException', - 'AttributeList', 'AttributeModificationException', - 'Attributes', 'Attributes.Name', 'AttributeSet', - 'AttributeSet.CharacterAttribute', - 'AttributeSet.ColorAttribute', - 'AttributeSet.FontAttribute', - 'AttributeSet.ParagraphAttribute', 'AudioClip', - 'AudioFileFormat', 'AudioFileFormat.Type', - 'AudioFileReader', 'AudioFileWriter', 'AudioFormat', - 'AudioFormat.Encoding', 'AudioInputStream', - 'AudioPermission', 'AudioSystem', - 'AuthenticationException', - 'AuthenticationNotSupportedException', - 'Authenticator', 'Autoscroll', 'AWTError', - 'AWTEvent', 'AWTEventListener', - 'AWTEventMulticaster', 'AWTException', - 'AWTPermission', 'BadKind', 'BadLocationException', - 'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION', - 'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE', - 'BAD_POLICY_VALUE', 'BAD_TYPECODE', 'BandCombineOp', - 'BandedSampleModel', 'BasicArrowButton', - 'BasicAttribute', 'BasicAttributes', 'BasicBorders', - 'BasicBorders.ButtonBorder', - 'BasicBorders.FieldBorder', - 'BasicBorders.MarginBorder', - 'BasicBorders.MenuBarBorder', - 'BasicBorders.RadioButtonBorder', - 'BasicBorders.SplitPaneBorder', - 'BasicBorders.ToggleButtonBorder', - 'BasicButtonListener', 'BasicButtonUI', - 'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI', - 'BasicColorChooserUI', 'BasicComboBoxEditor', - 'BasicComboBoxEditor.UIResource', - 'BasicComboBoxRenderer', - 'BasicComboBoxRenderer.UIResource', - 'BasicComboBoxUI', 'BasicComboPopup', - 'BasicDesktopIconUI', 'BasicDesktopPaneUI', - 'BasicDirectoryModel', 'BasicEditorPaneUI', - 'BasicFileChooserUI', 'BasicGraphicsUtils', - 'BasicHTML', 'BasicIconFactory', - 'BasicInternalFrameTitlePane', - 'BasicInternalFrameUI', 'BasicLabelUI', - 'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI', - 'BasicMenuItemUI', 'BasicMenuUI', - 'BasicOptionPaneUI', - 'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI', - 'BasicPasswordFieldUI', 'BasicPermission', - 'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI', - 'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI', - 'BasicRadioButtonUI', 'BasicRootPaneUI', - 'BasicScrollBarUI', 'BasicScrollPaneUI', - 'BasicSeparatorUI', 'BasicSliderUI', - 'BasicSplitPaneDivider', 'BasicSplitPaneUI', - 'BasicStroke', 'BasicTabbedPaneUI', - 'BasicTableHeaderUI', 'BasicTableUI', - 'BasicTextAreaUI', 'BasicTextFieldUI', - 'BasicTextPaneUI', 'BasicTextUI', - 'BasicTextUI.BasicCaret', - 'BasicTextUI.BasicHighlighter', - 'BasicToggleButtonUI', 'BasicToolBarSeparatorUI', - 'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI', - 'BasicViewportUI', 'BatchUpdateException', - 'BeanContext', 'BeanContextChild', - 'BeanContextChildComponentProxy', - 'BeanContextChildSupport', - 'BeanContextContainerProxy', 'BeanContextEvent', - 'BeanContextMembershipEvent', - 'BeanContextMembershipListener', 'BeanContextProxy', - 'BeanContextServiceAvailableEvent', - 'BeanContextServiceProvider', - 'BeanContextServiceProviderBeanInfo', - 'BeanContextServiceRevokedEvent', - 'BeanContextServiceRevokedListener', - 'BeanContextServices', 'BeanContextServicesListener', - 'BeanContextServicesSupport', - 'BeanContextServicesSupport.BCSSServiceProvider', - 'BeanContextSupport', - 'BeanContextSupport.BCSIterator', 'BeanDescriptor', - 'BeanInfo', 'Beans', 'BevelBorder', 'BigDecimal', - 'BigInteger', 'BinaryRefAddr', 'BindException', - 'Binding', 'BindingHelper', 'BindingHolder', - 'BindingIterator', 'BindingIteratorHelper', - 'BindingIteratorHolder', 'BindingIteratorOperations', - 'BindingListHelper', 'BindingListHolder', - 'BindingType', 'BindingTypeHelper', - 'BindingTypeHolder', 'BitSet', 'Blob', 'BlockView', - 'Book', 'Boolean', 'BooleanControl', - 'BooleanControl.Type', 'BooleanHolder', - 'BooleanSeqHelper', 'BooleanSeqHolder', 'Border', - 'BorderFactory', 'BorderLayout', 'BorderUIResource', - 'BorderUIResource.BevelBorderUIResource', - 'BorderUIResource.CompoundBorderUIResource', - 'BorderUIResource.EmptyBorderUIResource', - 'BorderUIResource.EtchedBorderUIResource', - 'BorderUIResource.LineBorderUIResource', - 'BorderUIResource.MatteBorderUIResource', - 'BorderUIResource.TitledBorderUIResource', - 'BoundedRangeModel', 'Bounds', 'Box', 'Box.Filler', - 'BoxedValueHelper', 'BoxLayout', 'BoxView', - 'BreakIterator', 'BufferedImage', - 'BufferedImageFilter', 'BufferedImageOp', - 'BufferedInputStream', 'BufferedOutputStream', - 'BufferedReader', 'BufferedWriter', 'Button', - 'ButtonGroup', 'ButtonModel', 'ButtonUI', 'Byte', - 'ByteArrayInputStream', 'ByteArrayOutputStream', - 'ByteHolder', 'ByteLookupTable', 'Calendar', - 'CallableStatement', 'CannotProceed', - 'CannotProceedException', 'CannotProceedHelper', - 'CannotProceedHolder', 'CannotRedoException', - 'CannotUndoException', 'Canvas', 'CardLayout', - 'Caret', 'CaretEvent', 'CaretListener', 'CellEditor', - 'CellEditorListener', 'CellRendererPane', - 'Certificate', 'Certificate.CertificateRep', - 'CertificateEncodingException', - 'CertificateException', - 'CertificateExpiredException', 'CertificateFactory', - 'CertificateFactorySpi', - 'CertificateNotYetValidException', - 'CertificateParsingException', - 'ChangedCharSetException', 'ChangeEvent', - 'ChangeListener', 'Character', 'Character.Subset', - 'Character.UnicodeBlock', 'CharacterIterator', - 'CharArrayReader', 'CharArrayWriter', - 'CharConversionException', 'CharHolder', - 'CharSeqHelper', 'CharSeqHolder', 'Checkbox', - 'CheckboxGroup', 'CheckboxMenuItem', - 'CheckedInputStream', 'CheckedOutputStream', - 'Checksum', 'Choice', 'ChoiceFormat', 'Class', - 'ClassCastException', 'ClassCircularityError', - 'ClassDesc', 'ClassFormatError', 'ClassLoader', - 'ClassNotFoundException', 'Clip', 'Clipboard', - 'ClipboardOwner', 'Clob', 'Cloneable', - 'CloneNotSupportedException', 'CMMException', - 'CodeSource', 'CollationElementIterator', - 'CollationKey', 'Collator', 'Collection', - 'Collections', 'Color', - 'ColorChooserComponentFactory', 'ColorChooserUI', - 'ColorConvertOp', 'ColorModel', - 'ColorSelectionModel', 'ColorSpace', - 'ColorUIResource', 'ComboBoxEditor', 'ComboBoxModel', - 'ComboBoxUI', 'ComboPopup', 'CommunicationException', - 'COMM_FAILURE', 'Comparable', 'Comparator', - 'Compiler', 'CompletionStatus', - 'CompletionStatusHelper', 'Component', - 'ComponentAdapter', 'ComponentColorModel', - 'ComponentEvent', 'ComponentInputMap', - 'ComponentInputMapUIResource', 'ComponentListener', - 'ComponentOrientation', 'ComponentSampleModel', - 'ComponentUI', 'ComponentView', 'Composite', - 'CompositeContext', 'CompositeName', 'CompositeView', - 'CompoundBorder', 'CompoundControl', - 'CompoundControl.Type', 'CompoundEdit', - 'CompoundName', 'ConcurrentModificationException', - 'ConfigurationException', 'ConnectException', - 'ConnectIOException', 'Connection', 'Constructor', 'Container', - 'ContainerAdapter', 'ContainerEvent', - 'ContainerListener', 'ContentHandler', - 'ContentHandlerFactory', 'ContentModel', 'Context', - 'ContextList', 'ContextNotEmptyException', - 'ContextualRenderedImageFactory', 'Control', - 'Control.Type', 'ControlFactory', - 'ControllerEventListener', 'ConvolveOp', 'CRC32', - 'CRL', 'CRLException', 'CropImageFilter', 'CSS', - 'CSS.Attribute', 'CTX_RESTRICT_SCOPE', - 'CubicCurve2D', 'CubicCurve2D.Double', - 'CubicCurve2D.Float', 'Current', 'CurrentHelper', - 'CurrentHolder', 'CurrentOperations', 'Cursor', - 'Customizer', 'CustomMarshal', 'CustomValue', - 'DatabaseMetaData', 'DataBuffer', 'DataBufferByte', - 'DataBufferInt', 'DataBufferShort', - 'DataBufferUShort', 'DataFlavor', - 'DataFormatException', 'DatagramPacket', - 'DatagramSocket', 'DatagramSocketImpl', - 'DatagramSocketImplFactory', 'DataInput', - 'DataInputStream', 'DataLine', 'DataLine.Info', - 'DataOutput', 'DataOutputStream', - 'DataTruncation', 'DATA_CONVERSION', 'Date', - 'DateFormat', 'DateFormatSymbols', 'DebugGraphics', - 'DecimalFormat', 'DecimalFormatSymbols', - 'DefaultBoundedRangeModel', 'DefaultButtonModel', - 'DefaultCaret', 'DefaultCellEditor', - 'DefaultColorSelectionModel', 'DefaultComboBoxModel', - 'DefaultDesktopManager', 'DefaultEditorKit', - 'DefaultEditorKit.BeepAction', - 'DefaultEditorKit.CopyAction', - 'DefaultEditorKit.CutAction', - 'DefaultEditorKit.DefaultKeyTypedAction', - 'DefaultEditorKit.InsertBreakAction', - 'DefaultEditorKit.InsertContentAction', - 'DefaultEditorKit.InsertTabAction', - 'DefaultEditorKit.PasteAction,', - 'DefaultFocusManager', 'DefaultHighlighter', - 'DefaultHighlighter.DefaultHighlightPainter', - 'DefaultListCellRenderer', - 'DefaultListCellRenderer.UIResource', - 'DefaultListModel', 'DefaultListSelectionModel', - 'DefaultMenuLayout', 'DefaultMetalTheme', - 'DefaultMutableTreeNode', - 'DefaultSingleSelectionModel', - 'DefaultStyledDocument', - 'DefaultStyledDocument.AttributeUndoableEdit', - 'DefaultStyledDocument.ElementSpec', - 'DefaultTableCellRenderer', - 'DefaultTableCellRenderer.UIResource', - 'DefaultTableColumnModel', 'DefaultTableModel', - 'DefaultTextUI', 'DefaultTreeCellEditor', - 'DefaultTreeCellRenderer', 'DefaultTreeModel', - 'DefaultTreeSelectionModel', 'DefinitionKind', - 'DefinitionKindHelper', 'Deflater', - 'DeflaterOutputStream', 'Delegate', 'DesignMode', - 'DesktopIconUI', 'DesktopManager', 'DesktopPaneUI', - 'DGC', 'Dialog', 'Dictionary', 'DigestException', - 'DigestInputStream', 'DigestOutputStream', - 'Dimension', 'Dimension2D', 'DimensionUIResource', - 'DirContext', 'DirectColorModel', 'DirectoryManager', - 'DirObjectFactory', 'DirStateFactory', - 'DirStateFactory.Result', 'DnDConstants', 'Document', - 'DocumentEvent', 'DocumentEvent.ElementChange', - 'DocumentEvent.EventType', 'DocumentListener', - 'DocumentParser', 'DomainCombiner', 'DomainManager', - 'DomainManagerOperations', 'Double', 'DoubleHolder', - 'DoubleSeqHelper', 'DoubleSeqHolder', - 'DragGestureEvent', 'DragGestureListener', - 'DragGestureRecognizer', 'DragSource', - 'DragSourceContext', 'DragSourceDragEvent', - 'DragSourceDropEvent', 'DragSourceEvent', - 'DragSourceListener', 'Driver', 'DriverManager', - 'DriverPropertyInfo', 'DropTarget', - 'DropTarget.DropTargetAutoScroller', - 'DropTargetContext', 'DropTargetDragEvent', - 'DropTargetDropEvent', 'DropTargetEvent', - 'DropTargetListener', 'DSAKey', - 'DSAKeyPairGenerator', 'DSAParameterSpec', - 'DSAParams', 'DSAPrivateKey', 'DSAPrivateKeySpec', - 'DSAPublicKey', 'DSAPublicKeySpec', 'DTD', - 'DTDConstants', 'DynamicImplementation', 'DynAny', - 'DynArray', 'DynEnum', 'DynFixed', 'DynSequence', - 'DynStruct', 'DynUnion', 'DynValue', 'EditorKit', - 'Element', 'ElementIterator', 'Ellipse2D', - 'Ellipse2D.Double', 'Ellipse2D.Float', 'EmptyBorder', - 'EmptyStackException', 'EncodedKeySpec', 'Entity', - 'EnumControl', 'EnumControl.Type', 'Enumeration', - 'Environment', 'EOFException', 'Error', - 'EtchedBorder', 'Event', 'EventContext', - 'EventDirContext', 'EventListener', - 'EventListenerList', 'EventObject', 'EventQueue', - 'EventSetDescriptor', 'Exception', - 'ExceptionInInitializerError', 'ExceptionList', - 'ExpandVetoException', 'ExportException', - 'ExtendedRequest', 'ExtendedResponse', - 'Externalizable', 'FeatureDescriptor', 'Field', - 'FieldNameHelper', 'FieldPosition', 'FieldView', - 'File', 'FileChooserUI', 'FileDescriptor', - 'FileDialog', 'FileFilter', - 'FileInputStream', 'FilenameFilter', 'FileNameMap', - 'FileNotFoundException', 'FileOutputStream', - 'FilePermission', 'FileReader', 'FileSystemView', - 'FileView', 'FileWriter', 'FilteredImageSource', - 'FilterInputStream', 'FilterOutputStream', - 'FilterReader', 'FilterWriter', - 'FixedHeightLayoutCache', 'FixedHolder', - 'FlatteningPathIterator', 'FlavorMap', 'Float', - 'FloatControl', 'FloatControl.Type', 'FloatHolder', - 'FloatSeqHelper', 'FloatSeqHolder', 'FlowLayout', - 'FlowView', 'FlowView.FlowStrategy', 'FocusAdapter', - 'FocusEvent', 'FocusListener', 'FocusManager', - 'Font', 'FontFormatException', 'FontMetrics', - 'FontRenderContext', 'FontUIResource', 'Format', - 'FormatConversionProvider', 'FormView', 'Frame', - 'FREE_MEM', 'GapContent', 'GeneralPath', - 'GeneralSecurityException', 'GlyphJustificationInfo', - 'GlyphMetrics', 'GlyphVector', 'GlyphView', - 'GlyphView.GlyphPainter', 'GradientPaint', - 'GraphicAttribute', 'Graphics', 'Graphics2D', - 'GraphicsConfigTemplate', 'GraphicsConfiguration', - 'GraphicsDevice', 'GraphicsEnvironment', - 'GrayFilter', 'GregorianCalendar', - 'GridBagConstraints', 'GridBagLayout', 'GridLayout', - 'Group', 'Guard', 'GuardedObject', 'GZIPInputStream', - 'GZIPOutputStream', 'HasControls', 'HashMap', - 'HashSet', 'Hashtable', 'HierarchyBoundsAdapter', - 'HierarchyBoundsListener', 'HierarchyEvent', - 'HierarchyListener', 'Highlighter', - 'Highlighter.Highlight', - 'Highlighter.HighlightPainter', 'HTML', - 'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag', - 'HTMLDocument', 'HTMLDocument.Iterator', - 'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory', - 'HTMLEditorKit.HTMLTextAction', - 'HTMLEditorKit.InsertHTMLTextAction', - 'HTMLEditorKit.LinkController', - 'HTMLEditorKit.Parser', - 'HTMLEditorKit.ParserCallback', - 'HTMLFrameHyperlinkEvent', 'HTMLWriter', - 'HttpURLConnection', 'HyperlinkEvent', - 'HyperlinkEvent.EventType', 'HyperlinkListener', - 'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray', - 'ICC_ProfileRGB', 'Icon', 'IconUIResource', - 'IconView', 'IdentifierHelper', 'Identity', - 'IdentityScope', 'IDLEntity', 'IDLType', - 'IDLTypeHelper', 'IDLTypeOperations', - 'IllegalAccessError', 'IllegalAccessException', - 'IllegalArgumentException', - 'IllegalComponentStateException', - 'IllegalMonitorStateException', - 'IllegalPathStateException', 'IllegalStateException', - 'IllegalThreadStateException', 'Image', - 'ImageConsumer', 'ImageFilter', - 'ImageGraphicAttribute', 'ImageIcon', - 'ImageObserver', 'ImageProducer', - 'ImagingOpException', 'IMP_LIMIT', - 'IncompatibleClassChangeError', - 'InconsistentTypeCode', 'IndexColorModel', - 'IndexedPropertyDescriptor', - 'IndexOutOfBoundsException', 'IndirectionException', - 'InetAddress', 'Inflater', 'InflaterInputStream', - 'InheritableThreadLocal', 'InitialContext', - 'InitialContextFactory', - 'InitialContextFactoryBuilder', 'InitialDirContext', - 'INITIALIZE', 'Initializer', 'InitialLdapContext', - 'InlineView', 'InputContext', 'InputEvent', - 'InputMap', 'InputMapUIResource', 'InputMethod', - 'InputMethodContext', 'InputMethodDescriptor', - 'InputMethodEvent', 'InputMethodHighlight', - 'InputMethodListener', 'InputMethodRequests', - 'InputStream', - 'InputStreamReader', 'InputSubset', 'InputVerifier', - 'Insets', 'InsetsUIResource', 'InstantiationError', - 'InstantiationException', 'Instrument', - 'InsufficientResourcesException', 'Integer', - 'INTERNAL', 'InternalError', 'InternalFrameAdapter', - 'InternalFrameEvent', 'InternalFrameListener', - 'InternalFrameUI', 'InterruptedException', - 'InterruptedIOException', - 'InterruptedNamingException', 'INTF_REPOS', - 'IntHolder', 'IntrospectionException', - 'Introspector', 'Invalid', - 'InvalidAlgorithmParameterException', - 'InvalidAttributeIdentifierException', - 'InvalidAttributesException', - 'InvalidAttributeValueException', - 'InvalidClassException', - 'InvalidDnDOperationException', - 'InvalidKeyException', 'InvalidKeySpecException', - 'InvalidMidiDataException', 'InvalidName', - 'InvalidNameException', - 'InvalidNameHelper', 'InvalidNameHolder', - 'InvalidObjectException', - 'InvalidParameterException', - 'InvalidParameterSpecException', - 'InvalidSearchControlsException', - 'InvalidSearchFilterException', 'InvalidSeq', - 'InvalidTransactionException', 'InvalidValue', - 'INVALID_TRANSACTION', 'InvocationEvent', - 'InvocationHandler', 'InvocationTargetException', - 'InvokeHandler', 'INV_FLAG', 'INV_IDENT', - 'INV_OBJREF', 'INV_POLICY', 'IOException', - 'IRObject', 'IRObjectOperations', 'IstringHelper', - 'ItemEvent', 'ItemListener', 'ItemSelectable', - 'Iterator', 'JApplet', 'JarEntry', 'JarException', - 'JarFile', 'JarInputStream', 'JarOutputStream', - 'JarURLConnection', 'JButton', 'JCheckBox', - 'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox', - 'JComboBox.KeySelectionManager', 'JComponent', - 'JDesktopPane', 'JDialog', 'JEditorPane', - 'JFileChooser', 'JFrame', 'JInternalFrame', - 'JInternalFrame.JDesktopIcon', 'JLabel', - 'JLayeredPane', 'JList', 'JMenu', 'JMenuBar', - 'JMenuItem', 'JobAttributes', - 'JobAttributes.DefaultSelectionType', - 'JobAttributes.DestinationType', - 'JobAttributes.DialogType', - 'JobAttributes.MultipleDocumentHandlingType', - 'JobAttributes.SidesType', 'JOptionPane', 'JPanel', - 'JPasswordField', 'JPopupMenu', - 'JPopupMenu.Separator', 'JProgressBar', - 'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane', - 'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider', - 'JSplitPane', 'JTabbedPane', 'JTable', - 'JTableHeader', 'JTextArea', 'JTextComponent', - 'JTextComponent.KeyBinding', 'JTextField', - 'JTextPane', 'JToggleButton', - 'JToggleButton.ToggleButtonModel', 'JToolBar', - 'JToolBar.Separator', 'JToolTip', 'JTree', - 'JTree.DynamicUtilTreeNode', - 'JTree.EmptySelectionModel', 'JViewport', 'JWindow', - 'Kernel', 'Key', 'KeyAdapter', 'KeyEvent', - 'KeyException', 'KeyFactory', 'KeyFactorySpi', - 'KeyListener', 'KeyManagementException', 'Keymap', - 'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi', - 'KeySpec', 'KeyStore', 'KeyStoreException', - 'KeyStoreSpi', 'KeyStroke', 'Label', 'LabelUI', - 'LabelView', 'LastOwnerException', - 'LayeredHighlighter', - 'LayeredHighlighter.LayerPainter', 'LayoutManager', - 'LayoutManager2', 'LayoutQueue', 'LdapContext', - 'LdapReferralException', 'Lease', - 'LimitExceededException', 'Line', 'Line.Info', - 'Line2D', 'Line2D.Double', 'Line2D.Float', - 'LineBorder', 'LineBreakMeasurer', 'LineEvent', - 'LineEvent.Type', 'LineListener', 'LineMetrics', - 'LineNumberInputStream', 'LineNumberReader', - 'LineUnavailableException', 'LinkageError', - 'LinkedList', 'LinkException', 'LinkLoopException', - 'LinkRef', 'List', 'ListCellRenderer', - 'ListDataEvent', 'ListDataListener', 'ListIterator', - 'ListModel', 'ListResourceBundle', - 'ListSelectionEvent', 'ListSelectionListener', - 'ListSelectionModel', 'ListUI', 'ListView', - 'LoaderHandler', 'Locale', 'LocateRegistry', - 'LogStream', 'Long', 'LongHolder', - 'LongLongSeqHelper', 'LongLongSeqHolder', - 'LongSeqHelper', 'LongSeqHolder', 'LookAndFeel', - 'LookupOp', 'LookupTable', 'MalformedLinkException', - 'MalformedURLException', 'Manifest', 'Map', - 'Map.Entry', 'MARSHAL', 'MarshalException', - 'MarshalledObject', 'Math', 'MatteBorder', - 'MediaTracker', 'Member', 'MemoryImageSource', - 'Menu', 'MenuBar', 'MenuBarUI', 'MenuComponent', - 'MenuContainer', 'MenuDragMouseEvent', - 'MenuDragMouseListener', 'MenuElement', 'MenuEvent', - 'MenuItem', 'MenuItemUI', 'MenuKeyEvent', - 'MenuKeyListener', 'MenuListener', - 'MenuSelectionManager', 'MenuShortcut', - 'MessageDigest', 'MessageDigestSpi', 'MessageFormat', - 'MetaEventListener', 'MetalBorders', - 'MetalBorders.ButtonBorder', - 'MetalBorders.Flush3DBorder', - 'MetalBorders.InternalFrameBorder', - 'MetalBorders.MenuBarBorder', - 'MetalBorders.MenuItemBorder', - 'MetalBorders.OptionDialogBorder', - 'MetalBorders.PaletteBorder', - 'MetalBorders.PopupMenuBorder', - 'MetalBorders.RolloverButtonBorder', - 'MetalBorders.ScrollPaneBorder', - 'MetalBorders.TableHeaderBorder', - 'MetalBorders.TextFieldBorder', - 'MetalBorders.ToggleButtonBorder', - 'MetalBorders.ToolBarBorder', 'MetalButtonUI', - 'MetalCheckBoxIcon', 'MetalCheckBoxUI', - 'MetalComboBoxButton', 'MetalComboBoxEditor', - 'MetalComboBoxEditor.UIResource', - 'MetalComboBoxIcon', 'MetalComboBoxUI', - 'MetalDesktopIconUI', 'MetalFileChooserUI', - 'MetalIconFactory', 'MetalIconFactory.FileIcon16', - 'MetalIconFactory.FolderIcon16', - 'MetalIconFactory.PaletteCloseIcon', - 'MetalIconFactory.TreeControlIcon', - 'MetalIconFactory.TreeFolderIcon', - 'MetalIconFactory.TreeLeafIcon', - 'MetalInternalFrameTitlePane', - 'MetalInternalFrameUI', 'MetalLabelUI', - 'MetalLookAndFeel', 'MetalPopupMenuSeparatorUI', - 'MetalProgressBarUI', 'MetalRadioButtonUI', - 'MetalScrollBarUI', 'MetalScrollButton', - 'MetalScrollPaneUI', 'MetalSeparatorUI', - 'MetalSliderUI', 'MetalSplitPaneUI', - 'MetalTabbedPaneUI', 'MetalTextFieldUI', - 'MetalTheme', 'MetalToggleButtonUI', - 'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI', - 'MetaMessage', 'Method', 'MethodDescriptor', - 'MidiChannel', 'MidiDevice', 'MidiDevice.Info', - 'MidiDeviceProvider', 'MidiEvent', 'MidiFileFormat', - 'MidiFileReader', 'MidiFileWriter', 'MidiMessage', - 'MidiSystem', 'MidiUnavailableException', - 'MimeTypeParseException', 'MinimalHTMLWriter', - 'MissingResourceException', 'Mixer', 'Mixer.Info', - 'MixerProvider', 'ModificationItem', 'Modifier', - 'MouseAdapter', 'MouseDragGestureRecognizer', - 'MouseEvent', 'MouseInputAdapter', - 'MouseInputListener', 'MouseListener', - 'MouseMotionAdapter', 'MouseMotionListener', - 'MultiButtonUI', 'MulticastSocket', - 'MultiColorChooserUI', 'MultiComboBoxUI', - 'MultiDesktopIconUI', 'MultiDesktopPaneUI', - 'MultiFileChooserUI', 'MultiInternalFrameUI', - 'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel', - 'MultiMenuBarUI', 'MultiMenuItemUI', - 'MultiOptionPaneUI', 'MultiPanelUI', - 'MultiPixelPackedSampleModel', 'MultipleMaster', - 'MultiPopupMenuUI', 'MultiProgressBarUI', - 'MultiScrollBarUI', 'MultiScrollPaneUI', - 'MultiSeparatorUI', 'MultiSliderUI', - 'MultiSplitPaneUI', 'MultiTabbedPaneUI', - 'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI', - 'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI', - 'MultiViewportUI', 'MutableAttributeSet', - 'MutableComboBoxModel', 'MutableTreeNode', 'Name', - 'NameAlreadyBoundException', 'NameClassPair', - 'NameComponent', 'NameComponentHelper', - 'NameComponentHolder', 'NamedValue', 'NameHelper', - 'NameHolder', 'NameNotFoundException', 'NameParser', - 'NamespaceChangeListener', 'NameValuePair', - 'NameValuePairHelper', 'Naming', 'NamingContext', - 'NamingContextHelper', 'NamingContextHolder', - 'NamingContextOperations', 'NamingEnumeration', - 'NamingEvent', 'NamingException', - 'NamingExceptionEvent', 'NamingListener', - 'NamingManager', 'NamingSecurityException', - 'NegativeArraySizeException', 'NetPermission', - 'NoClassDefFoundError', 'NoInitialContextException', - 'NoninvertibleTransformException', - 'NoPermissionException', 'NoRouteToHostException', - 'NoSuchAlgorithmException', - 'NoSuchAttributeException', 'NoSuchElementException', - 'NoSuchFieldError', 'NoSuchFieldException', - 'NoSuchMethodError', 'NoSuchMethodException', - 'NoSuchObjectException', 'NoSuchProviderException', - 'NotActiveException', 'NotBoundException', - 'NotContextException', 'NotEmpty', 'NotEmptyHelper', - 'NotEmptyHolder', 'NotFound', 'NotFoundHelper', - 'NotFoundHolder', 'NotFoundReason', - 'NotFoundReasonHelper', 'NotFoundReasonHolder', - 'NotOwnerException', 'NotSerializableException', - 'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION', - 'NO_RESOURCES', 'NO_RESPONSE', - 'NullPointerException', 'Number', 'NumberFormat', - 'NumberFormatException', 'NVList', 'Object', - 'ObjectChangeListener', 'ObjectFactory', - 'ObjectFactoryBuilder', 'ObjectHelper', - 'ObjectHolder', 'ObjectImpl', - 'ObjectInput', 'ObjectInputStream', - 'ObjectInputStream.GetField', - 'ObjectInputValidation', 'ObjectOutput', - 'ObjectOutputStream', 'ObjectOutputStream.PutField', - 'ObjectStreamClass', 'ObjectStreamConstants', - 'ObjectStreamException', 'ObjectStreamField', - 'ObjectView', 'OBJECT_NOT_EXIST', 'ObjID', - 'OBJ_ADAPTER', 'Observable', 'Observer', - 'OctetSeqHelper', 'OctetSeqHolder', 'OMGVMCID', - 'OpenType', 'Operation', - 'OperationNotSupportedException', 'Option', - 'OptionalDataException', 'OptionPaneUI', 'ORB', - 'OutOfMemoryError', 'OutputStream', - 'OutputStreamWriter', 'OverlayLayout', 'Owner', - 'Package', 'PackedColorModel', 'Pageable', - 'PageAttributes', 'PageAttributes.ColorType', - 'PageAttributes.MediaType', - 'PageAttributes.OrientationRequestedType', - 'PageAttributes.OriginType', - 'PageAttributes.PrintQualityType', 'PageFormat', - 'Paint', 'PaintContext', 'PaintEvent', 'Panel', - 'PanelUI', 'Paper', 'ParagraphView', - 'ParameterBlock', 'ParameterDescriptor', - 'ParseException', 'ParsePosition', 'Parser', - 'ParserDelegator', 'PartialResultException', - 'PasswordAuthentication', 'PasswordView', 'Patch', - 'PathIterator', 'Permission', - 'PermissionCollection', 'Permissions', - 'PERSIST_STORE', 'PhantomReference', - 'PipedInputStream', 'PipedOutputStream', - 'PipedReader', 'PipedWriter', 'PixelGrabber', - 'PixelInterleavedSampleModel', 'PKCS8EncodedKeySpec', - 'PlainDocument', 'PlainView', 'Point', 'Point2D', - 'Point2D.Double', 'Point2D.Float', 'Policy', - 'PolicyError', 'PolicyHelper', - 'PolicyHolder', 'PolicyListHelper', - 'PolicyListHolder', 'PolicyOperations', - 'PolicyTypeHelper', 'Polygon', 'PopupMenu', - 'PopupMenuEvent', 'PopupMenuListener', 'PopupMenuUI', - 'Port', 'Port.Info', 'PortableRemoteObject', - 'PortableRemoteObjectDelegate', 'Position', - 'Position.Bias', 'PreparedStatement', 'Principal', - 'PrincipalHolder', 'Printable', - 'PrinterAbortException', 'PrinterException', - 'PrinterGraphics', 'PrinterIOException', - 'PrinterJob', 'PrintGraphics', 'PrintJob', - 'PrintStream', 'PrintWriter', 'PrivateKey', - 'PRIVATE_MEMBER', 'PrivilegedAction', - 'PrivilegedActionException', - 'PrivilegedExceptionAction', 'Process', - 'ProfileDataException', 'ProgressBarUI', - 'ProgressMonitor', 'ProgressMonitorInputStream', - 'Properties', 'PropertyChangeEvent', - 'PropertyChangeListener', 'PropertyChangeSupport', - 'PropertyDescriptor', 'PropertyEditor', - 'PropertyEditorManager', 'PropertyEditorSupport', - 'PropertyPermission', 'PropertyResourceBundle', - 'PropertyVetoException', 'ProtectionDomain', - 'ProtocolException', 'Provider', 'ProviderException', - 'Proxy', 'PublicKey', 'PUBLIC_MEMBER', - 'PushbackInputStream', 'PushbackReader', - 'QuadCurve2D', 'QuadCurve2D.Double', - 'QuadCurve2D.Float', 'Random', 'RandomAccessFile', - 'Raster', 'RasterFormatException', 'RasterOp', - 'Reader', 'Receiver', 'Rectangle', 'Rectangle2D', - 'Rectangle2D.Double', 'Rectangle2D.Float', - 'RectangularShape', 'Ref', 'RefAddr', 'Reference', - 'Referenceable', 'ReferenceQueue', - 'ReferralException', 'ReflectPermission', 'Registry', - 'RegistryHandler', 'RemarshalException', 'Remote', - 'RemoteCall', 'RemoteException', 'RemoteObject', - 'RemoteRef', 'RemoteServer', 'RemoteStub', - 'RenderableImage', 'RenderableImageOp', - 'RenderableImageProducer', 'RenderContext', - 'RenderedImage', 'RenderedImageFactory', 'Renderer', - 'RenderingHints', 'RenderingHints.Key', - 'RepaintManager', 'ReplicateScaleFilter', - 'Repository', 'RepositoryIdHelper', 'Request', - 'RescaleOp', 'Resolver', 'ResolveResult', - 'ResourceBundle', 'ResponseHandler', 'ResultSet', - 'ResultSetMetaData', 'ReverbType', 'RGBImageFilter', - 'RMIClassLoader', 'RMIClientSocketFactory', - 'RMIFailureHandler', 'RMISecurityException', - 'RMISecurityManager', 'RMIServerSocketFactory', - 'RMISocketFactory', 'Robot', 'RootPaneContainer', - 'RootPaneUI', 'RoundRectangle2D', - 'RoundRectangle2D.Double', 'RoundRectangle2D.Float', - 'RowMapper', 'RSAKey', 'RSAKeyGenParameterSpec', - 'RSAPrivateCrtKey', 'RSAPrivateCrtKeySpec', - 'RSAPrivateKey', 'RSAPrivateKeySpec', 'RSAPublicKey', - 'RSAPublicKeySpec', 'RTFEditorKit', - 'RuleBasedCollator', 'Runnable', 'RunTime', - 'Runtime', 'RuntimeException', 'RunTimeOperations', - 'RuntimePermission', 'SampleModel', - 'SchemaViolationException', 'Scrollable', - 'Scrollbar', 'ScrollBarUI', 'ScrollPane', - 'ScrollPaneConstants', 'ScrollPaneLayout', - 'ScrollPaneLayout.UIResource', 'ScrollPaneUI', - 'SearchControls', 'SearchResult', - 'SecureClassLoader', 'SecureRandom', - 'SecureRandomSpi', 'Security', 'SecurityException', - 'SecurityManager', 'SecurityPermission', 'Segment', - 'SeparatorUI', 'Sequence', 'SequenceInputStream', - 'Sequencer', 'Sequencer.SyncMode', 'Serializable', - 'SerializablePermission', 'ServantObject', - 'ServerCloneException', 'ServerError', - 'ServerException', 'ServerNotActiveException', - 'ServerRef', 'ServerRequest', - 'ServerRuntimeException', 'ServerSocket', - 'ServiceDetail', 'ServiceDetailHelper', - 'ServiceInformation', 'ServiceInformationHelper', - 'ServiceInformationHolder', - 'ServiceUnavailableException', 'Set', - 'SetOverrideType', 'SetOverrideTypeHelper', 'Shape', - 'ShapeGraphicAttribute', 'Short', 'ShortHolder', - 'ShortLookupTable', 'ShortMessage', 'ShortSeqHelper', - 'ShortSeqHolder', 'Signature', 'SignatureException', - 'SignatureSpi', 'SignedObject', 'Signer', - 'SimpleAttributeSet', 'SimpleBeanInfo', - 'SimpleDateFormat', 'SimpleTimeZone', - 'SinglePixelPackedSampleModel', - 'SingleSelectionModel', 'SizeLimitExceededException', - 'SizeRequirements', 'SizeSequence', 'Skeleton', - 'SkeletonMismatchException', - 'SkeletonNotFoundException', 'SliderUI', 'Socket', - 'SocketException', 'SocketImpl', 'SocketImplFactory', - 'SocketOptions', 'SocketPermission', - 'SocketSecurityException', 'SoftBevelBorder', - 'SoftReference', 'SortedMap', 'SortedSet', - 'Soundbank', 'SoundbankReader', 'SoundbankResource', - 'SourceDataLine', 'SplitPaneUI', 'SQLData', - 'SQLException', 'SQLInput', 'SQLOutput', - 'SQLPermission', 'SQLWarning', 'Stack', - 'StackOverflowError', 'StateEdit', 'StateEditable', - 'StateFactory', 'Statement', 'Streamable', - 'StreamableValue', 'StreamCorruptedException', - 'StreamTokenizer', 'StrictMath', 'String', - 'StringBuffer', 'StringBufferInputStream', - 'StringCharacterIterator', 'StringContent', - 'StringHolder', 'StringIndexOutOfBoundsException', - 'StringReader', 'StringRefAddr', 'StringSelection', - 'StringTokenizer', 'StringValueHelper', - 'StringWriter', 'Stroke', 'Struct', 'StructMember', - 'StructMemberHelper', 'Stub', 'StubDelegate', - 'StubNotFoundException', 'Style', 'StyleConstants', - 'StyleConstants.CharacterConstants', - 'StyleConstants.ColorConstants', - 'StyleConstants.FontConstants', - 'StyleConstants.ParagraphConstants', 'StyleContext', - 'StyledDocument', 'StyledEditorKit', - 'StyledEditorKit.AlignmentAction', - 'StyledEditorKit.BoldAction', - 'StyledEditorKit.FontFamilyAction', - 'StyledEditorKit.FontSizeAction', - 'StyledEditorKit.ForegroundAction', - 'StyledEditorKit.ItalicAction', - 'StyledEditorKit.StyledTextAction', - 'StyledEditorKit.UnderlineAction', 'StyleSheet', - 'StyleSheet.BoxPainter', 'StyleSheet.ListPainter', - 'SwingConstants', 'SwingPropertyChangeSupport', - 'SwingUtilities', 'SyncFailedException', - 'Synthesizer', 'SysexMessage', 'System', - 'SystemColor', 'SystemException', 'SystemFlavorMap', - 'TabableView', 'TabbedPaneUI', 'TabExpander', - 'TableCellEditor', 'TableCellRenderer', - 'TableColumn', 'TableColumnModel', - 'TableColumnModelEvent', 'TableColumnModelListener', - 'TableHeaderUI', 'TableModel', 'TableModelEvent', - 'TableModelListener', 'TableUI', 'TableView', - 'TabSet', 'TabStop', 'TagElement', 'TargetDataLine', - 'TCKind', 'TextAction', 'TextArea', 'TextAttribute', - 'TextComponent', 'TextEvent', 'TextField', - 'TextHitInfo', 'TextLayout', - 'TextLayout.CaretPolicy', 'TextListener', - 'TextMeasurer', 'TextUI', 'TexturePaint', 'Thread', - 'ThreadDeath', 'ThreadGroup', 'ThreadLocal', - 'Throwable', 'Tie', 'TileObserver', 'Time', - 'TimeLimitExceededException', 'Timer', - 'TimerTask', 'Timestamp', 'TimeZone', 'TitledBorder', - 'ToolBarUI', 'Toolkit', 'ToolTipManager', - 'ToolTipUI', 'TooManyListenersException', 'Track', - 'TransactionRequiredException', - 'TransactionRolledbackException', - 'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK', - 'Transferable', 'TransformAttribute', 'TRANSIENT', - 'Transmitter', 'Transparency', 'TreeCellEditor', - 'TreeCellRenderer', 'TreeExpansionEvent', - 'TreeExpansionListener', 'TreeMap', 'TreeModel', - 'TreeModelEvent', 'TreeModelListener', 'TreeNode', - 'TreePath', 'TreeSelectionEvent', - 'TreeSelectionListener', 'TreeSelectionModel', - 'TreeSet', 'TreeUI', 'TreeWillExpandListener', - 'TypeCode', 'TypeCodeHolder', 'TypeMismatch', - 'Types', 'UID', 'UIDefaults', - 'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap', - 'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue', - 'UIManager', 'UIManager.LookAndFeelInfo', - 'UIResource', 'ULongLongSeqHelper', - 'ULongLongSeqHolder', 'ULongSeqHelper', - 'ULongSeqHolder', 'UndeclaredThrowableException', - 'UndoableEdit', 'UndoableEditEvent', - 'UndoableEditListener', 'UndoableEditSupport', - 'UndoManager', 'UnexpectedException', - 'UnicastRemoteObject', 'UnionMember', - 'UnionMemberHelper', 'UNKNOWN', 'UnknownError', - 'UnknownException', 'UnknownGroupException', - 'UnknownHostException', - 'UnknownObjectException', 'UnknownServiceException', - 'UnknownUserException', 'UnmarshalException', - 'UnrecoverableKeyException', 'Unreferenced', - 'UnresolvedPermission', 'UnsatisfiedLinkError', - 'UnsolicitedNotification', - 'UnsolicitedNotificationEvent', - 'UnsolicitedNotificationListener', - 'UnsupportedAudioFileException', - 'UnsupportedClassVersionError', - 'UnsupportedEncodingException', - 'UnsupportedFlavorException', - 'UnsupportedLookAndFeelException', - 'UnsupportedOperationException', - 'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE', - 'URL', 'URLClassLoader', 'URLConnection', - 'URLDecoder', 'URLEncoder', 'URLStreamHandler', - 'URLStreamHandlerFactory', 'UserException', - 'UShortSeqHelper', 'UShortSeqHolder', - 'UTFDataFormatException', 'Util', 'UtilDelegate', - 'Utilities', 'ValueBase', 'ValueBaseHelper', - 'ValueBaseHolder', 'ValueFactory', 'ValueHandler', - 'ValueMember', 'ValueMemberHelper', - 'VariableHeightLayoutCache', 'Vector', 'VerifyError', - 'VersionSpecHelper', 'VetoableChangeListener', - 'VetoableChangeSupport', 'View', 'ViewFactory', - 'ViewportLayout', 'ViewportUI', - 'VirtualMachineError', 'Visibility', - 'VisibilityHelper', 'VMID', 'VM_ABSTRACT', - 'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE', - 'VoiceStatus', 'Void', 'WCharSeqHelper', - 'WCharSeqHolder', 'WeakHashMap', 'WeakReference', - 'Window', 'WindowAdapter', 'WindowConstants', - 'WindowEvent', 'WindowListener', 'WrappedPlainView', - 'WritableRaster', 'WritableRenderedImage', - 'WriteAbortedException', 'Writer', - 'WrongTransaction', 'WStringValueHelper', - 'X509Certificate', 'X509CRL', 'X509CRLEntry', - 'X509EncodedKeySpec', 'X509Extension', 'ZipEntry', - 'ZipException', 'ZipFile', 'ZipInputStream', - 'ZipOutputStream', 'ZoneView', - '_BindingIteratorImplBase', '_BindingIteratorStub', - '_IDLTypeStub', '_NamingContextImplBase', - '_NamingContextStub', '_PolicyStub', '_Remote_Stub' - ), - 4 => array( - 'void', 'double', 'int', 'boolean', 'byte', 'short', 'long', 'char', 'float' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '+', '-', '*', '/', '%', - '!', '&', '|', '^', - '<', '>', '=', - '?', ':', ';', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => true, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000066; font-weight: bold;', - 3 => 'color: #003399;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #006699;', - 3 => 'color: #008000; font-style: italic; font-weight: bold;', - 3 => 'color: #008000; font-style: italic; font-weight: bold;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006633;', - 2 => 'color: #006633;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.google.com/search?hl=en&q=allinurl%3A{FNAMEL}+java.sun.com&btnI=I%27m%20Feeling%20Lucky', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/java5.php b/system/application/libraries/geshi/java5.php deleted file mode 100644 index 4abffc663..000000000 --- a/system/application/libraries/geshi/java5.php +++ /dev/null @@ -1,1031 +0,0 @@ -<?php -/************************************************************************************* - * java.php - * -------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/10 - * - * Java language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/25 (1.0.7.22) - * - Added highlighting of import and package directives as non-OOP - * 2005/12/28 (1.0.4) - * - Added instanceof keyword - * 2004/11/27 (1.0.3) - * - Added support for multiple object splitters - * 2004/08/05 (1.0.2) - * - Added URL support - * - Added keyword "this", as bugs in GeSHi class ironed out - * 2004/08/05 (1.0.1) - * - Added support for symbols - * - Added extra missed keywords - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO - * ------------------------- - * * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Java(TM) 2 Platform Standard Edition 5.0', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Import and Package directives (Basic Support only) - 2 => '/(?:(?<=import[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i', - // javadoc comments - 3 => '#/\*\*(?![\*\/]).*\*/#sU' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - /* see the authoritative list of all 50 Java keywords at */ - /* http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#229308 */ - - /* java keywords, part 1: control flow */ - 'case', 'default', 'do', 'else', 'for', - 'goto', 'if', 'switch', 'while' - - /* IMO 'break', 'continue', 'return' and 'throw' */ - /* should also be added to this group, as they */ - /* also manage the control flow, */ - /* arguably 'try'/'catch'/'finally' as well */ - ), - 2 => array( - /* java keywords, part 2 */ - - 'break', 'continue', 'return', 'throw', - 'try', 'catch', 'finally', - - 'abstract', 'assert', 'class', 'const', 'enum', 'extends', - 'final', 'implements', 'import', 'instanceof', 'interface', - 'native', 'new', 'package', 'private', 'protected', - 'public', 'static', 'strictfp', 'super', 'synchronized', - 'this', 'throws', 'transient', 'volatile' - ), - 3 => array( - /* Java keywords, part 3: primitive data types and 'void' */ - 'boolean', 'byte', 'char', 'double', - 'float', 'int', 'long', 'short', 'void' - ), - 4 => array( - /* other reserved words in Java: literals */ - /* should be styled to look similar to numbers and Strings */ - 'false', 'null', 'true' - ), - 5 => array ( - 'Applet', 'AppletContext', 'AppletStub', 'AudioClip' - ), - 6 => array ( - 'AWTError', 'AWTEvent', 'AWTEventMulticaster', 'AWTException', 'AWTKeyStroke', 'AWTPermission', 'ActiveEvent', 'Adjustable', 'AlphaComposite', 'BasicStroke', 'BorderLayout', 'BufferCapabilities', 'BufferCapabilities.FlipContents', 'Button', 'Canvas', 'CardLayout', 'Checkbox', 'CheckboxGroup', 'CheckboxMenuItem', 'Choice', 'Color', 'Component', 'ComponentOrientation', 'Composite', 'CompositeContext', 'Container', 'ContainerOrderFocusTraversalPolicy', 'Cursor', 'DefaultFocusTraversalPolicy', 'DefaultKeyboardFocusManager', 'Dialog', 'Dimension', 'DisplayMode', 'EventQueue', 'FileDialog', 'FlowLayout', 'FocusTraversalPolicy', 'Font', 'FontFormatException', 'FontMetrics', 'Frame', 'GradientPaint', 'Graphics', 'Graphics2D', 'GraphicsConfigTemplate', 'GraphicsConfiguration', 'GraphicsDevice', 'GraphicsEnvironment', 'GridBagConstraints', 'GridBagLayout', 'GridLayout', 'HeadlessException', 'IllegalComponentStateException', 'Image', 'ImageCapabilities', 'Insets', 'ItemSelectable', 'JobAttributes', - 'JobAttributes.DefaultSelectionType', 'JobAttributes.DestinationType', 'JobAttributes.DialogType', 'JobAttributes.MultipleDocumentHandlingType', 'JobAttributes.SidesType', 'KeyEventDispatcher', 'KeyEventPostProcessor', 'KeyboardFocusManager', 'Label', 'LayoutManager', 'LayoutManager2', 'MediaTracker', 'Menu', 'MenuBar', 'MenuComponent', 'MenuContainer', 'MenuItem', 'MenuShortcut', 'MouseInfo', 'PageAttributes', 'PageAttributes.ColorType', 'PageAttributes.MediaType', 'PageAttributes.OrientationRequestedType', 'PageAttributes.OriginType', 'PageAttributes.PrintQualityType', 'Paint', 'PaintContext', 'Panel', 'Point', 'PointerInfo', 'Polygon', 'PopupMenu', 'PrintGraphics', 'PrintJob', 'Rectangle', 'RenderingHints', 'RenderingHints.Key', 'Robot', 'ScrollPane', 'ScrollPaneAdjustable', 'Scrollbar', 'Shape', 'Stroke', 'SystemColor', 'TextArea', 'TextComponent', 'TextField', 'TexturePaint', 'Toolkit', 'Transparency', 'Window' - ), - 7 => array ( - 'CMMException', 'ColorSpace', 'ICC_ColorSpace', 'ICC_Profile', 'ICC_ProfileGray', 'ICC_ProfileRGB', 'ProfileDataException' - ), - 8 => array ( - 'Clipboard', 'ClipboardOwner', 'DataFlavor', 'FlavorEvent', 'FlavorListener', 'FlavorMap', 'FlavorTable', 'MimeTypeParseException', 'StringSelection', 'SystemFlavorMap', 'Transferable', 'UnsupportedFlavorException' - ), - 9 => array ( - 'Autoscroll', 'DnDConstants', 'DragGestureEvent', 'DragGestureListener', 'DragGestureRecognizer', 'DragSource', 'DragSourceAdapter', 'DragSourceContext', 'DragSourceDragEvent', 'DragSourceDropEvent', 'DragSourceEvent', 'DragSourceListener', 'DragSourceMotionListener', 'DropTarget', 'DropTarget.DropTargetAutoScroller', 'DropTargetAdapter', 'DropTargetContext', 'DropTargetDragEvent', 'DropTargetDropEvent', 'DropTargetEvent', 'DropTargetListener', 'InvalidDnDOperationException', 'MouseDragGestureRecognizer' - ), - 10 => array ( - 'AWTEventListener', 'AWTEventListenerProxy', 'ActionEvent', 'ActionListener', 'AdjustmentEvent', 'AdjustmentListener', 'ComponentAdapter', 'ComponentEvent', 'ComponentListener', 'ContainerAdapter', 'ContainerEvent', 'ContainerListener', 'FocusAdapter', 'FocusEvent', 'FocusListener', 'HierarchyBoundsAdapter', 'HierarchyBoundsListener', 'HierarchyEvent', 'HierarchyListener', 'InputEvent', 'InputMethodEvent', 'InputMethodListener', 'InvocationEvent', 'ItemEvent', 'ItemListener', 'KeyAdapter', 'KeyEvent', 'KeyListener', 'MouseAdapter', 'MouseListener', 'MouseMotionAdapter', 'MouseMotionListener', 'MouseWheelEvent', 'MouseWheelListener', 'PaintEvent', 'TextEvent', 'TextListener', 'WindowAdapter', 'WindowEvent', 'WindowFocusListener', 'WindowListener', 'WindowStateListener' - ), - 11 => array ( - 'FontRenderContext', 'GlyphJustificationInfo', 'GlyphMetrics', 'GlyphVector', 'GraphicAttribute', 'ImageGraphicAttribute', 'LineBreakMeasurer', 'LineMetrics', 'MultipleMaster', 'NumericShaper', 'ShapeGraphicAttribute', 'TextAttribute', 'TextHitInfo', 'TextLayout', 'TextLayout.CaretPolicy', 'TextMeasurer', 'TransformAttribute' - ), - 12 => array ( - 'AffineTransform', 'Arc2D', 'Arc2D.Double', 'Arc2D.Float', 'Area', 'CubicCurve2D', 'CubicCurve2D.Double', 'CubicCurve2D.Float', 'Dimension2D', 'Ellipse2D', 'Ellipse2D.Double', 'Ellipse2D.Float', 'FlatteningPathIterator', 'GeneralPath', 'IllegalPathStateException', 'Line2D', 'Line2D.Double', 'Line2D.Float', 'NoninvertibleTransformException', 'PathIterator', 'Point2D', 'Point2D.Double', 'Point2D.Float', 'QuadCurve2D', 'QuadCurve2D.Double', 'QuadCurve2D.Float', 'Rectangle2D', 'Rectangle2D.Double', 'Rectangle2D.Float', 'RectangularShape', 'RoundRectangle2D', 'RoundRectangle2D.Double', 'RoundRectangle2D.Float' - ), - 13 => array ( - 'InputContext', 'InputMethodHighlight', 'InputMethodRequests', 'InputSubset' - ), - 14 => array ( - 'InputMethod', 'InputMethodContext', 'InputMethodDescriptor' - ), - 15 => array ( - 'AffineTransformOp', 'AreaAveragingScaleFilter', 'BandCombineOp', 'BandedSampleModel', 'BufferStrategy', 'BufferedImage', 'BufferedImageFilter', 'BufferedImageOp', 'ByteLookupTable', 'ColorConvertOp', 'ColorModel', 'ComponentColorModel', 'ComponentSampleModel', 'ConvolveOp', 'CropImageFilter', 'DataBuffer', 'DataBufferByte', 'DataBufferDouble', 'DataBufferFloat', 'DataBufferInt', 'DataBufferShort', 'DataBufferUShort', 'DirectColorModel', 'FilteredImageSource', 'ImageConsumer', 'ImageFilter', 'ImageObserver', 'ImageProducer', 'ImagingOpException', 'IndexColorModel', 'Kernel', 'LookupOp', 'LookupTable', 'MemoryImageSource', 'MultiPixelPackedSampleModel', 'PackedColorModel', 'PixelGrabber', 'PixelInterleavedSampleModel', 'RGBImageFilter', 'Raster', 'RasterFormatException', 'RasterOp', 'RenderedImage', 'ReplicateScaleFilter', 'RescaleOp', 'SampleModel', 'ShortLookupTable', 'SinglePixelPackedSampleModel', 'TileObserver', 'VolatileImage', 'WritableRaster', 'WritableRenderedImage' - ), - 16 => array ( - 'ContextualRenderedImageFactory', 'ParameterBlock', 'RenderContext', 'RenderableImage', 'RenderableImageOp', 'RenderableImageProducer', 'RenderedImageFactory' - ), - 17 => array ( - 'Book', 'PageFormat', 'Pageable', 'Paper', 'Printable', 'PrinterAbortException', 'PrinterException', 'PrinterGraphics', 'PrinterIOException', 'PrinterJob' - ), - 18 => array ( - 'AppletInitializer', 'BeanDescriptor', 'BeanInfo', 'Beans', 'Customizer', 'DefaultPersistenceDelegate', 'DesignMode', 'Encoder', 'EventHandler', 'EventSetDescriptor', 'ExceptionListener', 'Expression', 'FeatureDescriptor', 'IndexedPropertyChangeEvent', 'IndexedPropertyDescriptor', 'Introspector', 'MethodDescriptor', 'ParameterDescriptor', 'PersistenceDelegate', 'PropertyChangeEvent', 'PropertyChangeListener', 'PropertyChangeListenerProxy', 'PropertyChangeSupport', 'PropertyDescriptor', 'PropertyEditor', 'PropertyEditorManager', 'PropertyEditorSupport', 'PropertyVetoException', 'SimpleBeanInfo', 'VetoableChangeListener', 'VetoableChangeListenerProxy', 'VetoableChangeSupport', 'Visibility', 'XMLDecoder', 'XMLEncoder' - ), - 19 => array ( - 'BeanContext', 'BeanContextChild', 'BeanContextChildComponentProxy', 'BeanContextChildSupport', 'BeanContextContainerProxy', 'BeanContextEvent', 'BeanContextMembershipEvent', 'BeanContextMembershipListener', 'BeanContextProxy', 'BeanContextServiceAvailableEvent', 'BeanContextServiceProvider', 'BeanContextServiceProviderBeanInfo', 'BeanContextServiceRevokedEvent', 'BeanContextServiceRevokedListener', 'BeanContextServices', 'BeanContextServicesListener', 'BeanContextServicesSupport', 'BeanContextServicesSupport.BCSSServiceProvider', 'BeanContextSupport', 'BeanContextSupport.BCSIterator' - ), - 20 => array ( - 'BufferedInputStream', 'BufferedOutputStream', 'BufferedReader', 'BufferedWriter', 'ByteArrayInputStream', 'ByteArrayOutputStream', 'CharArrayReader', 'CharArrayWriter', 'CharConversionException', 'Closeable', 'DataInput', 'DataOutput', 'EOFException', 'Externalizable', 'File', 'FileDescriptor', 'FileInputStream', 'FileNotFoundException', 'FileOutputStream', 'FilePermission', 'FileReader', 'FileWriter', 'FilenameFilter', 'FilterInputStream', 'FilterOutputStream', 'FilterReader', 'FilterWriter', 'Flushable', 'IOException', 'InputStreamReader', 'InterruptedIOException', 'InvalidClassException', 'InvalidObjectException', 'LineNumberInputStream', 'LineNumberReader', 'NotActiveException', 'NotSerializableException', 'ObjectInput', 'ObjectInputStream', 'ObjectInputStream.GetField', 'ObjectInputValidation', 'ObjectOutput', 'ObjectOutputStream', 'ObjectOutputStream.PutField', 'ObjectStreamClass', 'ObjectStreamConstants', 'ObjectStreamException', 'ObjectStreamField', 'OptionalDataException', 'OutputStreamWriter', - 'PipedInputStream', 'PipedOutputStream', 'PipedReader', 'PipedWriter', 'PrintStream', 'PrintWriter', 'PushbackInputStream', 'PushbackReader', 'RandomAccessFile', 'Reader', 'SequenceInputStream', 'Serializable', 'SerializablePermission', 'StreamCorruptedException', 'StreamTokenizer', 'StringBufferInputStream', 'StringReader', 'StringWriter', 'SyncFailedException', 'UTFDataFormatException', 'UnsupportedEncodingException', 'WriteAbortedException', 'Writer' - ), - 21 => array ( - 'AbstractMethodError', 'Appendable', 'ArithmeticException', 'ArrayIndexOutOfBoundsException', 'ArrayStoreException', 'AssertionError', 'Boolean', 'Byte', 'CharSequence', 'Character', 'Character.Subset', 'Character.UnicodeBlock', 'Class', 'ClassCastException', 'ClassCircularityError', 'ClassFormatError', 'ClassLoader', 'ClassNotFoundException', 'CloneNotSupportedException', 'Cloneable', 'Comparable', 'Compiler', 'Deprecated', 'Double', 'Enum', 'EnumConstantNotPresentException', 'Error', 'Exception', 'ExceptionInInitializerError', 'Float', 'IllegalAccessError', 'IllegalAccessException', 'IllegalArgumentException', 'IllegalMonitorStateException', 'IllegalStateException', 'IllegalThreadStateException', 'IncompatibleClassChangeError', 'IndexOutOfBoundsException', 'InheritableThreadLocal', 'InstantiationError', 'InstantiationException', 'Integer', 'InternalError', 'InterruptedException', 'Iterable', 'LinkageError', 'Long', 'Math', 'NegativeArraySizeException', 'NoClassDefFoundError', 'NoSuchFieldError', - 'NoSuchFieldException', 'NoSuchMethodError', 'NoSuchMethodException', 'NullPointerException', 'Number', 'NumberFormatException', 'OutOfMemoryError', 'Override', 'Package', 'Process', 'ProcessBuilder', 'Readable', 'Runnable', 'Runtime', 'RuntimeException', 'RuntimePermission', 'SecurityException', 'SecurityManager', 'Short', 'StackOverflowError', 'StackTraceElement', 'StrictMath', 'String', 'StringBuffer', 'StringBuilder', 'StringIndexOutOfBoundsException', 'SuppressWarnings', 'System', 'Thread', 'Thread.State', 'Thread.UncaughtExceptionHandler', 'ThreadDeath', 'ThreadGroup', 'ThreadLocal', 'Throwable', 'TypeNotPresentException', 'UnknownError', 'UnsatisfiedLinkError', 'UnsupportedClassVersionError', 'UnsupportedOperationException', 'VerifyError', 'VirtualMachineError', 'Void' - ), - 22 => array ( - 'AnnotationFormatError', 'AnnotationTypeMismatchException', 'Documented', 'ElementType', 'IncompleteAnnotationException', 'Inherited', 'Retention', 'RetentionPolicy', 'Target' - ), - 23 => array ( - 'ClassDefinition', 'ClassFileTransformer', 'IllegalClassFormatException', 'Instrumentation', 'UnmodifiableClassException' - ), - 24 => array ( - 'ClassLoadingMXBean', 'CompilationMXBean', 'GarbageCollectorMXBean', 'ManagementFactory', 'ManagementPermission', 'MemoryMXBean', 'MemoryManagerMXBean', 'MemoryNotificationInfo', 'MemoryPoolMXBean', 'MemoryType', 'MemoryUsage', 'OperatingSystemMXBean', 'RuntimeMXBean', 'ThreadInfo', 'ThreadMXBean' - ), - 25 => array ( - 'PhantomReference', 'ReferenceQueue', 'SoftReference', 'WeakReference' - ), - 26 => array ( - 'AccessibleObject', 'AnnotatedElement', 'Constructor', 'Field', 'GenericArrayType', 'GenericDeclaration', 'GenericSignatureFormatError', 'InvocationHandler', 'InvocationTargetException', 'MalformedParameterizedTypeException', 'Member', 'Method', 'Modifier', 'ParameterizedType', 'ReflectPermission', 'Type', 'TypeVariable', 'UndeclaredThrowableException', 'WildcardType' - ), - 27 => array ( - 'BigDecimal', 'BigInteger', 'MathContext', 'RoundingMode' - ), - 28 => array ( - 'Authenticator', 'Authenticator.RequestorType', 'BindException', 'CacheRequest', 'CacheResponse', 'ContentHandlerFactory', 'CookieHandler', 'DatagramPacket', 'DatagramSocket', 'DatagramSocketImpl', 'DatagramSocketImplFactory', 'FileNameMap', 'HttpRetryException', 'HttpURLConnection', 'Inet4Address', 'Inet6Address', 'InetAddress', 'InetSocketAddress', 'JarURLConnection', 'MalformedURLException', 'MulticastSocket', 'NetPermission', 'NetworkInterface', 'NoRouteToHostException', 'PasswordAuthentication', 'PortUnreachableException', 'ProtocolException', 'Proxy.Type', 'ProxySelector', 'ResponseCache', 'SecureCacheResponse', 'ServerSocket', 'Socket', 'SocketAddress', 'SocketException', 'SocketImpl', 'SocketImplFactory', 'SocketOptions', 'SocketPermission', 'SocketTimeoutException', 'URI', 'URISyntaxException', 'URL', 'URLClassLoader', 'URLConnection', 'URLDecoder', 'URLEncoder', 'URLStreamHandler', 'URLStreamHandlerFactory', 'UnknownServiceException' - ), - 29 => array ( - 'Buffer', 'BufferOverflowException', 'BufferUnderflowException', 'ByteBuffer', 'ByteOrder', 'CharBuffer', 'DoubleBuffer', 'FloatBuffer', 'IntBuffer', 'InvalidMarkException', 'LongBuffer', 'MappedByteBuffer', 'ReadOnlyBufferException', 'ShortBuffer' - ), - 30 => array ( - 'AlreadyConnectedException', 'AsynchronousCloseException', 'ByteChannel', 'CancelledKeyException', 'Channel', 'Channels', 'ClosedByInterruptException', 'ClosedChannelException', 'ClosedSelectorException', 'ConnectionPendingException', 'DatagramChannel', 'FileChannel', 'FileChannel.MapMode', 'FileLock', 'FileLockInterruptionException', 'GatheringByteChannel', 'IllegalBlockingModeException', 'IllegalSelectorException', 'InterruptibleChannel', 'NoConnectionPendingException', 'NonReadableChannelException', 'NonWritableChannelException', 'NotYetBoundException', 'NotYetConnectedException', 'OverlappingFileLockException', 'Pipe', 'Pipe.SinkChannel', 'Pipe.SourceChannel', 'ReadableByteChannel', 'ScatteringByteChannel', 'SelectableChannel', 'SelectionKey', 'Selector', 'ServerSocketChannel', 'SocketChannel', 'UnresolvedAddressException', 'UnsupportedAddressTypeException', 'WritableByteChannel' - ), - 31 => array ( - 'AbstractInterruptibleChannel', 'AbstractSelectableChannel', 'AbstractSelectionKey', 'AbstractSelector', 'SelectorProvider' - ), - 32 => array ( - 'CharacterCodingException', 'Charset', 'CharsetDecoder', 'CharsetEncoder', 'CoderMalfunctionError', 'CoderResult', 'CodingErrorAction', 'IllegalCharsetNameException', 'MalformedInputException', 'UnmappableCharacterException', 'UnsupportedCharsetException' - ), - 33 => array ( - 'CharsetProvider' - ), - 34 => array ( - 'AccessException', 'AlreadyBoundException', 'ConnectIOException', 'MarshalException', 'MarshalledObject', 'Naming', 'NoSuchObjectException', 'NotBoundException', 'RMISecurityException', 'RMISecurityManager', 'Remote', 'RemoteException', 'ServerError', 'ServerException', 'ServerRuntimeException', 'StubNotFoundException', 'UnexpectedException', 'UnmarshalException' - ), - 35 => array ( - 'Activatable', 'ActivateFailedException', 'ActivationDesc', 'ActivationException', 'ActivationGroup', 'ActivationGroupDesc', 'ActivationGroupDesc.CommandEnvironment', 'ActivationGroupID', 'ActivationGroup_Stub', 'ActivationID', 'ActivationInstantiator', 'ActivationMonitor', 'ActivationSystem', 'Activator', 'UnknownGroupException', 'UnknownObjectException' - ), - 36 => array ( - 'DGC', 'Lease', 'VMID' - ), - 37 => array ( - 'LocateRegistry', 'Registry', 'RegistryHandler' - ), - 38 => array ( - 'ExportException', 'LoaderHandler', 'LogStream', 'ObjID', 'Operation', 'RMIClassLoader', 'RMIClassLoaderSpi', 'RMIClientSocketFactory', 'RMIFailureHandler', 'RMIServerSocketFactory', 'RMISocketFactory', 'RemoteCall', 'RemoteObject', 'RemoteObjectInvocationHandler', 'RemoteRef', 'RemoteServer', 'RemoteStub', 'ServerCloneException', 'ServerNotActiveException', 'ServerRef', 'Skeleton', 'SkeletonMismatchException', 'SkeletonNotFoundException', 'SocketSecurityException', 'UID', 'UnicastRemoteObject', 'Unreferenced' - ), - 39 => array ( - 'AccessControlContext', 'AccessControlException', 'AccessController', 'AlgorithmParameterGenerator', 'AlgorithmParameterGeneratorSpi', 'AlgorithmParameters', 'AlgorithmParametersSpi', 'AllPermission', 'AuthProvider', 'BasicPermission', 'CodeSigner', 'CodeSource', 'DigestException', 'DigestInputStream', 'DigestOutputStream', 'DomainCombiner', 'GeneralSecurityException', 'Guard', 'GuardedObject', 'Identity', 'IdentityScope', 'InvalidAlgorithmParameterException', 'InvalidParameterException', 'Key', 'KeyException', 'KeyFactory', 'KeyFactorySpi', 'KeyManagementException', 'KeyPair', 'KeyPairGenerator', 'KeyPairGeneratorSpi', 'KeyRep', 'KeyRep.Type', 'KeyStore', 'KeyStore.Builder', 'KeyStore.CallbackHandlerProtection', 'KeyStore.Entry', 'KeyStore.LoadStoreParameter', 'KeyStore.PasswordProtection', 'KeyStore.PrivateKeyEntry', 'KeyStore.ProtectionParameter', 'KeyStore.SecretKeyEntry', 'KeyStore.TrustedCertificateEntry', 'KeyStoreException', 'KeyStoreSpi', 'MessageDigest', 'MessageDigestSpi', - 'NoSuchAlgorithmException', 'NoSuchProviderException', 'PermissionCollection', 'Permissions', 'PrivateKey', 'PrivilegedAction', 'PrivilegedActionException', 'PrivilegedExceptionAction', 'ProtectionDomain', 'Provider', 'Provider.Service', 'ProviderException', 'PublicKey', 'SecureClassLoader', 'SecureRandom', 'SecureRandomSpi', 'Security', 'SecurityPermission', 'Signature', 'SignatureException', 'SignatureSpi', 'SignedObject', 'Signer', 'UnrecoverableEntryException', 'UnrecoverableKeyException', 'UnresolvedPermission' - ), - 40 => array ( - 'Acl', 'AclEntry', 'AclNotFoundException', 'Group', 'LastOwnerException', 'NotOwnerException', 'Owner' - ), - 41 => array ( - 'CRL', 'CRLException', 'CRLSelector', 'CertPath', 'CertPath.CertPathRep', 'CertPathBuilder', 'CertPathBuilderException', 'CertPathBuilderResult', 'CertPathBuilderSpi', 'CertPathParameters', 'CertPathValidator', 'CertPathValidatorException', 'CertPathValidatorResult', 'CertPathValidatorSpi', 'CertSelector', 'CertStore', 'CertStoreException', 'CertStoreParameters', 'CertStoreSpi', 'Certificate.CertificateRep', 'CertificateFactory', 'CertificateFactorySpi', 'CollectionCertStoreParameters', 'LDAPCertStoreParameters', 'PKIXBuilderParameters', 'PKIXCertPathBuilderResult', 'PKIXCertPathChecker', 'PKIXCertPathValidatorResult', 'PKIXParameters', 'PolicyNode', 'PolicyQualifierInfo', 'TrustAnchor', 'X509CRL', 'X509CRLEntry', 'X509CRLSelector', 'X509CertSelector', 'X509Extension' - ), - 42 => array ( - 'DSAKey', 'DSAKeyPairGenerator', 'DSAParams', 'DSAPrivateKey', 'DSAPublicKey', 'ECKey', 'ECPrivateKey', 'ECPublicKey', 'RSAKey', 'RSAMultiPrimePrivateCrtKey', 'RSAPrivateCrtKey', 'RSAPrivateKey', 'RSAPublicKey' - ), - 43 => array ( - 'AlgorithmParameterSpec', 'DSAParameterSpec', 'DSAPrivateKeySpec', 'DSAPublicKeySpec', 'ECField', 'ECFieldF2m', 'ECFieldFp', 'ECGenParameterSpec', 'ECParameterSpec', 'ECPoint', 'ECPrivateKeySpec', 'ECPublicKeySpec', 'EllipticCurve', 'EncodedKeySpec', 'InvalidKeySpecException', 'InvalidParameterSpecException', 'KeySpec', 'MGF1ParameterSpec', 'PKCS8EncodedKeySpec', 'PSSParameterSpec', 'RSAKeyGenParameterSpec', 'RSAMultiPrimePrivateCrtKeySpec', 'RSAOtherPrimeInfo', 'RSAPrivateCrtKeySpec', 'RSAPrivateKeySpec', 'RSAPublicKeySpec', 'X509EncodedKeySpec' - ), - 44 => array ( - 'BatchUpdateException', 'Blob', 'CallableStatement', 'Clob', 'Connection', 'DataTruncation', 'DatabaseMetaData', 'Driver', 'DriverManager', 'DriverPropertyInfo', 'ParameterMetaData', 'PreparedStatement', 'Ref', 'ResultSet', 'ResultSetMetaData', 'SQLData', 'SQLException', 'SQLInput', 'SQLOutput', 'SQLPermission', 'SQLWarning', 'Savepoint', 'Struct', 'Time', 'Types' - ), - 45 => array ( - 'AttributedCharacterIterator', 'AttributedCharacterIterator.Attribute', 'AttributedString', 'Bidi', 'BreakIterator', 'CharacterIterator', 'ChoiceFormat', 'CollationElementIterator', 'CollationKey', 'Collator', 'DateFormat', 'DateFormat.Field', 'DateFormatSymbols', 'DecimalFormat', 'DecimalFormatSymbols', 'FieldPosition', 'Format', 'Format.Field', 'MessageFormat', 'MessageFormat.Field', 'NumberFormat', 'NumberFormat.Field', 'ParseException', 'ParsePosition', 'RuleBasedCollator', 'SimpleDateFormat', 'StringCharacterIterator' - ), - 46 => array ( - 'AbstractCollection', 'AbstractList', 'AbstractMap', 'AbstractQueue', 'AbstractSequentialList', 'AbstractSet', 'ArrayList', 'Arrays', 'BitSet', 'Calendar', 'Collection', 'Collections', 'Comparator', 'ConcurrentModificationException', 'Currency', 'Dictionary', 'DuplicateFormatFlagsException', 'EmptyStackException', 'EnumMap', 'EnumSet', 'Enumeration', 'EventListenerProxy', 'EventObject', 'FormatFlagsConversionMismatchException', 'Formattable', 'FormattableFlags', 'Formatter.BigDecimalLayoutForm', 'FormatterClosedException', 'GregorianCalendar', 'HashMap', 'HashSet', 'Hashtable', 'IdentityHashMap', 'IllegalFormatCodePointException', 'IllegalFormatConversionException', 'IllegalFormatException', 'IllegalFormatFlagsException', 'IllegalFormatPrecisionException', 'IllegalFormatWidthException', 'InputMismatchException', 'InvalidPropertiesFormatException', 'Iterator', 'LinkedHashMap', 'LinkedHashSet', 'LinkedList', 'ListIterator', 'ListResourceBundle', 'Locale', 'Map', 'Map.Entry', 'MissingFormatArgumentException', - 'MissingFormatWidthException', 'MissingResourceException', 'NoSuchElementException', 'Observable', 'Observer', 'PriorityQueue', 'Properties', 'PropertyPermission', 'PropertyResourceBundle', 'Queue', 'Random', 'RandomAccess', 'ResourceBundle', 'Scanner', 'Set', 'SimpleTimeZone', 'SortedMap', 'SortedSet', 'Stack', 'StringTokenizer', 'TimeZone', 'TimerTask', 'TooManyListenersException', 'TreeMap', 'TreeSet', 'UUID', 'UnknownFormatConversionException', 'UnknownFormatFlagsException', 'Vector', 'WeakHashMap' - ), - 47 => array ( - 'AbstractExecutorService', 'ArrayBlockingQueue', 'BlockingQueue', 'BrokenBarrierException', 'Callable', 'CancellationException', 'CompletionService', 'ConcurrentHashMap', 'ConcurrentLinkedQueue', 'ConcurrentMap', 'CopyOnWriteArrayList', 'CopyOnWriteArraySet', 'CountDownLatch', 'CyclicBarrier', 'DelayQueue', 'Delayed', 'Exchanger', 'ExecutionException', 'Executor', 'ExecutorCompletionService', 'ExecutorService', 'Executors', 'Future', 'FutureTask', 'LinkedBlockingQueue', 'PriorityBlockingQueue', 'RejectedExecutionException', 'RejectedExecutionHandler', 'ScheduledExecutorService', 'ScheduledFuture', 'ScheduledThreadPoolExecutor', 'Semaphore', 'SynchronousQueue', 'ThreadFactory', 'ThreadPoolExecutor', 'ThreadPoolExecutor.AbortPolicy', 'ThreadPoolExecutor.CallerRunsPolicy', 'ThreadPoolExecutor.DiscardOldestPolicy', 'ThreadPoolExecutor.DiscardPolicy', 'TimeUnit', 'TimeoutException' - ), - 48 => array ( - 'AtomicBoolean', 'AtomicInteger', 'AtomicIntegerArray', 'AtomicIntegerFieldUpdater', 'AtomicLong', 'AtomicLongArray', 'AtomicLongFieldUpdater', 'AtomicMarkableReference', 'AtomicReference', 'AtomicReferenceArray', 'AtomicReferenceFieldUpdater', 'AtomicStampedReference' - ), - 49 => array ( - 'AbstractQueuedSynchronizer', 'Condition', 'Lock', 'LockSupport', 'ReadWriteLock', 'ReentrantLock', 'ReentrantReadWriteLock', 'ReentrantReadWriteLock.ReadLock', 'ReentrantReadWriteLock.WriteLock' - ), - 50 => array ( - 'Attributes.Name', 'JarEntry', 'JarException', 'JarFile', 'JarInputStream', 'JarOutputStream', 'Manifest', 'Pack200', 'Pack200.Packer', 'Pack200.Unpacker' - ), - 51 => array ( - 'ConsoleHandler', 'ErrorManager', 'FileHandler', 'Filter', 'Handler', 'Level', 'LogManager', 'LogRecord', 'Logger', 'LoggingMXBean', 'LoggingPermission', 'MemoryHandler', 'SimpleFormatter', 'SocketHandler', 'StreamHandler', 'XMLFormatter' - ), - 52 => array ( - 'AbstractPreferences', 'BackingStoreException', 'InvalidPreferencesFormatException', 'NodeChangeEvent', 'NodeChangeListener', 'PreferenceChangeEvent', 'PreferenceChangeListener', 'Preferences', 'PreferencesFactory' - ), - 53 => array ( - 'MatchResult', 'Matcher', 'Pattern', 'PatternSyntaxException' - ), - 54 => array ( - 'Adler32', 'CRC32', 'CheckedInputStream', 'CheckedOutputStream', 'Checksum', 'DataFormatException', 'Deflater', 'DeflaterOutputStream', 'GZIPInputStream', 'GZIPOutputStream', 'Inflater', 'InflaterInputStream', 'ZipEntry', 'ZipException', 'ZipFile', 'ZipInputStream', 'ZipOutputStream' - ), - 55 => array ( - 'Accessible', 'AccessibleAction', 'AccessibleAttributeSequence', 'AccessibleBundle', 'AccessibleComponent', 'AccessibleContext', 'AccessibleEditableText', 'AccessibleExtendedComponent', 'AccessibleExtendedTable', 'AccessibleExtendedText', 'AccessibleHyperlink', 'AccessibleHypertext', 'AccessibleIcon', 'AccessibleKeyBinding', 'AccessibleRelation', 'AccessibleRelationSet', 'AccessibleResourceBundle', 'AccessibleRole', 'AccessibleSelection', 'AccessibleState', 'AccessibleStateSet', 'AccessibleStreamable', 'AccessibleTable', 'AccessibleTableModelChange', 'AccessibleText', 'AccessibleTextSequence', 'AccessibleValue' - ), - 56 => array ( - 'ActivityCompletedException', 'ActivityRequiredException', 'InvalidActivityException' - ), - 57 => array ( - 'BadPaddingException', 'Cipher', 'CipherInputStream', 'CipherOutputStream', 'CipherSpi', 'EncryptedPrivateKeyInfo', 'ExemptionMechanism', 'ExemptionMechanismException', 'ExemptionMechanismSpi', 'IllegalBlockSizeException', 'KeyAgreement', 'KeyAgreementSpi', 'KeyGenerator', 'KeyGeneratorSpi', 'Mac', 'MacSpi', 'NoSuchPaddingException', 'NullCipher', 'SealedObject', 'SecretKey', 'SecretKeyFactory', 'SecretKeyFactorySpi', 'ShortBufferException' - ), - 58 => array ( - 'DHKey', 'DHPrivateKey', 'DHPublicKey', 'PBEKey' - ), - 59 => array ( - 'DESKeySpec', 'DESedeKeySpec', 'DHGenParameterSpec', 'DHParameterSpec', 'DHPrivateKeySpec', 'DHPublicKeySpec', 'IvParameterSpec', 'OAEPParameterSpec', 'PBEKeySpec', 'PBEParameterSpec', 'PSource', 'PSource.PSpecified', 'RC2ParameterSpec', 'RC5ParameterSpec', 'SecretKeySpec' - ), - 60 => array ( - 'IIOException', 'IIOImage', 'IIOParam', 'IIOParamController', 'ImageIO', 'ImageReadParam', 'ImageReader', 'ImageTranscoder', 'ImageTypeSpecifier', 'ImageWriteParam', 'ImageWriter' - ), - 61 => array ( - 'IIOReadProgressListener', 'IIOReadUpdateListener', 'IIOReadWarningListener', 'IIOWriteProgressListener', 'IIOWriteWarningListener' - ), - 62 => array ( - 'IIOInvalidTreeException', 'IIOMetadata', 'IIOMetadataController', 'IIOMetadataFormat', 'IIOMetadataFormatImpl', 'IIOMetadataNode' - ), - 63 => array ( - 'BMPImageWriteParam' - ), - 64 => array ( - 'JPEGHuffmanTable', 'JPEGImageReadParam', 'JPEGImageWriteParam', 'JPEGQTable' - ), - 65 => array ( - 'IIORegistry', 'IIOServiceProvider', 'ImageInputStreamSpi', 'ImageOutputStreamSpi', 'ImageReaderSpi', 'ImageReaderWriterSpi', 'ImageTranscoderSpi', 'ImageWriterSpi', 'RegisterableService', 'ServiceRegistry', 'ServiceRegistry.Filter' - ), - 66 => array ( - 'FileCacheImageInputStream', 'FileCacheImageOutputStream', 'FileImageInputStream', 'FileImageOutputStream', 'IIOByteBuffer', 'ImageInputStream', 'ImageInputStreamImpl', 'ImageOutputStream', 'ImageOutputStreamImpl', 'MemoryCacheImageInputStream', 'MemoryCacheImageOutputStream' - ), - 67 => array ( - 'AttributeChangeNotification', 'AttributeChangeNotificationFilter', 'AttributeNotFoundException', 'AttributeValueExp', 'BadAttributeValueExpException', 'BadBinaryOpValueExpException', 'BadStringOperationException', 'Descriptor', 'DescriptorAccess', 'DynamicMBean', 'InstanceAlreadyExistsException', 'InstanceNotFoundException', 'InvalidApplicationException', 'JMException', 'JMRuntimeException', 'ListenerNotFoundException', 'MBeanAttributeInfo', 'MBeanConstructorInfo', 'MBeanException', 'MBeanFeatureInfo', 'MBeanInfo', 'MBeanNotificationInfo', 'MBeanOperationInfo', 'MBeanParameterInfo', 'MBeanPermission', 'MBeanRegistration', 'MBeanRegistrationException', 'MBeanServer', 'MBeanServerBuilder', 'MBeanServerConnection', 'MBeanServerDelegate', 'MBeanServerDelegateMBean', 'MBeanServerFactory', 'MBeanServerInvocationHandler', 'MBeanServerNotification', 'MBeanServerPermission', 'MBeanTrustPermission', 'MalformedObjectNameException', 'NotCompliantMBeanException', 'Notification', 'NotificationBroadcaster', - 'NotificationBroadcasterSupport', 'NotificationEmitter', 'NotificationFilter', 'NotificationFilterSupport', 'NotificationListener', 'ObjectInstance', 'ObjectName', 'OperationsException', 'PersistentMBean', 'Query', 'QueryEval', 'QueryExp', 'ReflectionException', 'RuntimeErrorException', 'RuntimeMBeanException', 'RuntimeOperationsException', 'ServiceNotFoundException', 'StandardMBean', 'StringValueExp', 'ValueExp' - ), - 68 => array ( - 'ClassLoaderRepository', 'MLet', 'MLetMBean', 'PrivateClassLoader', 'PrivateMLet' - ), - 69 => array ( - 'DescriptorSupport', 'InvalidTargetObjectTypeException', 'ModelMBean', 'ModelMBeanAttributeInfo', 'ModelMBeanConstructorInfo', 'ModelMBeanInfo', 'ModelMBeanInfoSupport', 'ModelMBeanNotificationBroadcaster', 'ModelMBeanNotificationInfo', 'ModelMBeanOperationInfo', 'RequiredModelMBean', 'XMLParseException' - ), - 70 => array ( - 'CounterMonitor', 'CounterMonitorMBean', 'GaugeMonitor', 'GaugeMonitorMBean', 'Monitor', 'MonitorMBean', 'MonitorNotification', 'MonitorSettingException', 'StringMonitor', 'StringMonitorMBean' - ), - 71 => array ( - 'ArrayType', 'CompositeData', 'CompositeDataSupport', 'CompositeType', 'InvalidOpenTypeException', 'KeyAlreadyExistsException', 'OpenDataException', 'OpenMBeanAttributeInfo', 'OpenMBeanAttributeInfoSupport', 'OpenMBeanConstructorInfo', 'OpenMBeanConstructorInfoSupport', 'OpenMBeanInfo', 'OpenMBeanInfoSupport', 'OpenMBeanOperationInfo', 'OpenMBeanOperationInfoSupport', 'OpenMBeanParameterInfo', 'OpenMBeanParameterInfoSupport', 'SimpleType', 'TabularData', 'TabularDataSupport', 'TabularType' - ), - 72 => array ( - 'InvalidRelationIdException', 'InvalidRelationServiceException', 'InvalidRelationTypeException', 'InvalidRoleInfoException', 'InvalidRoleValueException', 'MBeanServerNotificationFilter', 'Relation', 'RelationException', 'RelationNotFoundException', 'RelationNotification', 'RelationService', 'RelationServiceMBean', 'RelationServiceNotRegisteredException', 'RelationSupport', 'RelationSupportMBean', 'RelationType', 'RelationTypeNotFoundException', 'RelationTypeSupport', 'Role', 'RoleInfo', 'RoleInfoNotFoundException', 'RoleList', 'RoleNotFoundException', 'RoleResult', 'RoleStatus', 'RoleUnresolved', 'RoleUnresolvedList' - ), - 73 => array ( - 'JMXAuthenticator', 'JMXConnectionNotification', 'JMXConnector', 'JMXConnectorFactory', 'JMXConnectorProvider', 'JMXConnectorServer', 'JMXConnectorServerFactory', 'JMXConnectorServerMBean', 'JMXConnectorServerProvider', 'JMXPrincipal', 'JMXProviderException', 'JMXServerErrorException', 'JMXServiceURL', 'MBeanServerForwarder', 'NotificationResult', 'SubjectDelegationPermission', 'TargetedNotification' - ), - 74 => array ( - 'RMIConnection', 'RMIConnectionImpl', 'RMIConnectionImpl_Stub', 'RMIConnector', 'RMIConnectorServer', 'RMIIIOPServerImpl', 'RMIJRMPServerImpl', 'RMIServer', 'RMIServerImpl', 'RMIServerImpl_Stub' - ), - 75 => array ( - 'TimerAlarmClockNotification', 'TimerMBean', 'TimerNotification' - ), - 76 => array ( - 'AuthenticationNotSupportedException', 'BinaryRefAddr', 'CannotProceedException', 'CommunicationException', 'CompositeName', 'CompoundName', 'ConfigurationException', 'ContextNotEmptyException', 'InitialContext', 'InsufficientResourcesException', 'InterruptedNamingException', 'InvalidNameException', 'LimitExceededException', 'LinkException', 'LinkLoopException', 'LinkRef', 'MalformedLinkException', 'Name', 'NameAlreadyBoundException', 'NameClassPair', 'NameNotFoundException', 'NameParser', 'NamingEnumeration', 'NamingException', 'NamingSecurityException', 'NoInitialContextException', 'NoPermissionException', 'NotContextException', 'OperationNotSupportedException', 'PartialResultException', 'RefAddr', 'Referenceable', 'ReferralException', 'ServiceUnavailableException', 'SizeLimitExceededException', 'StringRefAddr', 'TimeLimitExceededException' - ), - 77 => array ( - 'AttributeInUseException', 'AttributeModificationException', 'BasicAttribute', 'BasicAttributes', 'DirContext', 'InitialDirContext', 'InvalidAttributeIdentifierException', 'InvalidAttributesException', 'InvalidSearchControlsException', 'InvalidSearchFilterException', 'ModificationItem', 'NoSuchAttributeException', 'SchemaViolationException', 'SearchControls', 'SearchResult' - ), - 78 => array ( - 'EventContext', 'EventDirContext', 'NamespaceChangeListener', 'NamingEvent', 'NamingExceptionEvent', 'NamingListener', 'ObjectChangeListener' - ), - 79 => array ( - 'BasicControl', 'ControlFactory', 'ExtendedRequest', 'ExtendedResponse', 'HasControls', 'InitialLdapContext', 'LdapContext', 'LdapName', 'LdapReferralException', 'ManageReferralControl', 'PagedResultsControl', 'PagedResultsResponseControl', 'Rdn', 'SortControl', 'SortKey', 'SortResponseControl', 'StartTlsRequest', 'StartTlsResponse', 'UnsolicitedNotification', 'UnsolicitedNotificationEvent', 'UnsolicitedNotificationListener' - ), - 80 => array ( - 'DirObjectFactory', 'DirStateFactory', 'DirStateFactory.Result', 'DirectoryManager', 'InitialContextFactory', 'InitialContextFactoryBuilder', 'NamingManager', 'ObjectFactory', 'ObjectFactoryBuilder', 'ResolveResult', 'Resolver', 'StateFactory' - ), - 81 => array ( - 'ServerSocketFactory', 'SocketFactory' - ), - 82 => array ( - 'CertPathTrustManagerParameters', 'HandshakeCompletedEvent', 'HandshakeCompletedListener', 'HostnameVerifier', 'HttpsURLConnection', 'KeyManager', 'KeyManagerFactory', 'KeyManagerFactorySpi', 'KeyStoreBuilderParameters', 'ManagerFactoryParameters', 'SSLContext', 'SSLContextSpi', 'SSLEngine', 'SSLEngineResult', 'SSLEngineResult.HandshakeStatus', 'SSLEngineResult.Status', 'SSLException', 'SSLHandshakeException', 'SSLKeyException', 'SSLPeerUnverifiedException', 'SSLPermission', 'SSLProtocolException', 'SSLServerSocket', 'SSLServerSocketFactory', 'SSLSession', 'SSLSessionBindingEvent', 'SSLSessionBindingListener', 'SSLSessionContext', 'SSLSocket', 'SSLSocketFactory', 'TrustManager', 'TrustManagerFactory', 'TrustManagerFactorySpi', 'X509ExtendedKeyManager', 'X509KeyManager', 'X509TrustManager' - ), - 83 => array ( - 'AttributeException', 'CancelablePrintJob', 'Doc', 'DocFlavor', 'DocFlavor.BYTE_ARRAY', 'DocFlavor.CHAR_ARRAY', 'DocFlavor.INPUT_STREAM', 'DocFlavor.READER', 'DocFlavor.SERVICE_FORMATTED', 'DocFlavor.STRING', 'DocFlavor.URL', 'DocPrintJob', 'FlavorException', 'MultiDoc', 'MultiDocPrintJob', 'MultiDocPrintService', 'PrintException', 'PrintService', 'PrintServiceLookup', 'ServiceUI', 'ServiceUIFactory', 'SimpleDoc', 'StreamPrintService', 'StreamPrintServiceFactory', 'URIException' - ), - 84 => array ( - 'AttributeSetUtilities', 'DateTimeSyntax', 'DocAttribute', 'DocAttributeSet', 'EnumSyntax', 'HashAttributeSet', 'HashDocAttributeSet', 'HashPrintJobAttributeSet', 'HashPrintRequestAttributeSet', 'HashPrintServiceAttributeSet', 'IntegerSyntax', 'PrintJobAttribute', 'PrintJobAttributeSet', 'PrintRequestAttribute', 'PrintRequestAttributeSet', 'PrintServiceAttribute', 'PrintServiceAttributeSet', 'ResolutionSyntax', 'SetOfIntegerSyntax', 'Size2DSyntax', 'SupportedValuesAttribute', 'TextSyntax', 'URISyntax', 'UnmodifiableSetException' - ), - 85 => array ( - 'Chromaticity', 'ColorSupported', 'Compression', 'Copies', 'CopiesSupported', 'DateTimeAtCompleted', 'DateTimeAtCreation', 'DateTimeAtProcessing', 'Destination', 'DocumentName', 'Fidelity', 'Finishings', 'JobHoldUntil', 'JobImpressions', 'JobImpressionsCompleted', 'JobImpressionsSupported', 'JobKOctets', 'JobKOctetsProcessed', 'JobKOctetsSupported', 'JobMediaSheets', 'JobMediaSheetsCompleted', 'JobMediaSheetsSupported', 'JobMessageFromOperator', 'JobName', 'JobOriginatingUserName', 'JobPriority', 'JobPrioritySupported', 'JobSheets', 'JobState', 'JobStateReason', 'JobStateReasons', 'Media', 'MediaName', 'MediaPrintableArea', 'MediaSize', 'MediaSize.Engineering', 'MediaSize.ISO', 'MediaSize.JIS', 'MediaSize.NA', 'MediaSize.Other', 'MediaSizeName', 'MediaTray', 'MultipleDocumentHandling', 'NumberOfDocuments', 'NumberOfInterveningJobs', 'NumberUp', 'NumberUpSupported', 'OrientationRequested', 'OutputDeviceAssigned', 'PDLOverrideSupported', 'PageRanges', 'PagesPerMinute', 'PagesPerMinuteColor', - 'PresentationDirection', 'PrintQuality', 'PrinterInfo', 'PrinterIsAcceptingJobs', 'PrinterLocation', 'PrinterMakeAndModel', 'PrinterMessageFromOperator', 'PrinterMoreInfo', 'PrinterMoreInfoManufacturer', 'PrinterName', 'PrinterResolution', 'PrinterState', 'PrinterStateReason', 'PrinterStateReasons', 'PrinterURI', 'QueuedJobCount', 'ReferenceUriSchemesSupported', 'RequestingUserName', 'Severity', 'SheetCollate', 'Sides' - ), - 86 => array ( - 'PrintEvent', 'PrintJobAdapter', 'PrintJobAttributeEvent', 'PrintJobAttributeListener', 'PrintJobEvent', 'PrintJobListener', 'PrintServiceAttributeEvent', 'PrintServiceAttributeListener' - ), - 87 => array ( - 'PortableRemoteObject' - ), - 88 => array ( - 'ClassDesc', 'PortableRemoteObjectDelegate', 'Stub', 'StubDelegate', 'Tie', 'Util', 'UtilDelegate', 'ValueHandler', 'ValueHandlerMultiFormat' - ), - 89 => array ( - 'SslRMIClientSocketFactory', 'SslRMIServerSocketFactory' - ), - 90 => array ( - 'AuthPermission', 'DestroyFailedException', 'Destroyable', 'PrivateCredentialPermission', 'RefreshFailedException', 'Refreshable', 'Subject', 'SubjectDomainCombiner' - ), - 91 => array ( - 'Callback', 'CallbackHandler', 'ChoiceCallback', 'ConfirmationCallback', 'LanguageCallback', 'NameCallback', 'PasswordCallback', 'TextInputCallback', 'TextOutputCallback', 'UnsupportedCallbackException' - ), - 92 => array ( - 'DelegationPermission', 'KerberosKey', 'KerberosPrincipal', 'KerberosTicket', 'ServicePermission' - ), - 93 => array ( - 'AccountException', 'AccountExpiredException', 'AccountLockedException', 'AccountNotFoundException', 'AppConfigurationEntry', 'AppConfigurationEntry.LoginModuleControlFlag', 'Configuration', 'CredentialException', 'CredentialExpiredException', 'CredentialNotFoundException', 'FailedLoginException', 'LoginContext', 'LoginException' - ), - 94 => array ( - 'LoginModule' - ), - 95 => array ( - 'X500Principal', 'X500PrivateCredential' - ), - 96 => array ( - 'AuthorizeCallback', 'RealmCallback', 'RealmChoiceCallback', 'Sasl', 'SaslClient', 'SaslClientFactory', 'SaslException', 'SaslServer', 'SaslServerFactory' - ), - 97 => array ( - 'ControllerEventListener', 'Instrument', 'InvalidMidiDataException', 'MetaEventListener', 'MetaMessage', 'MidiChannel', 'MidiDevice', 'MidiDevice.Info', 'MidiEvent', 'MidiFileFormat', 'MidiMessage', 'MidiSystem', 'MidiUnavailableException', 'Patch', 'Receiver', 'Sequence', 'Sequencer', 'Sequencer.SyncMode', 'ShortMessage', 'Soundbank', 'SoundbankResource', 'Synthesizer', 'SysexMessage', 'Track', 'Transmitter', 'VoiceStatus' - ), - 98 => array ( - 'MidiDeviceProvider', 'MidiFileReader', 'MidiFileWriter', 'SoundbankReader' - ), - 99 => array ( - 'AudioFileFormat', 'AudioFileFormat.Type', 'AudioFormat', 'AudioFormat.Encoding', 'AudioInputStream', 'AudioPermission', 'AudioSystem', 'BooleanControl', 'BooleanControl.Type', 'Clip', 'CompoundControl', 'CompoundControl.Type', 'Control.Type', 'DataLine', 'DataLine.Info', 'EnumControl', 'EnumControl.Type', 'FloatControl', 'FloatControl.Type', 'Line', 'Line.Info', 'LineEvent', 'LineEvent.Type', 'LineListener', 'LineUnavailableException', 'Mixer', 'Mixer.Info', 'Port', 'Port.Info', 'ReverbType', 'SourceDataLine', 'TargetDataLine', 'UnsupportedAudioFileException' - ), - 100 => array ( - 'AudioFileReader', 'AudioFileWriter', 'FormatConversionProvider', 'MixerProvider' - ), - 101 => array ( - 'ConnectionEvent', 'ConnectionEventListener', 'ConnectionPoolDataSource', 'DataSource', 'PooledConnection', 'RowSet', 'RowSetEvent', 'RowSetInternal', 'RowSetListener', 'RowSetMetaData', 'RowSetReader', 'RowSetWriter', 'XAConnection', 'XADataSource' - ), - 102 => array ( - 'BaseRowSet', 'CachedRowSet', 'FilteredRowSet', 'JdbcRowSet', 'JoinRowSet', 'Joinable', 'Predicate', 'RowSetMetaDataImpl', 'RowSetWarning', 'WebRowSet' - ), - 103 => array ( - 'SQLInputImpl', 'SQLOutputImpl', 'SerialArray', 'SerialBlob', 'SerialClob', 'SerialDatalink', 'SerialException', 'SerialJavaObject', 'SerialRef', 'SerialStruct' - ), - 104 => array ( - 'SyncFactory', 'SyncFactoryException', 'SyncProvider', 'SyncProviderException', 'SyncResolver', 'TransactionalWriter', 'XmlReader', 'XmlWriter' - ), - 105 => array ( - 'AbstractAction', 'AbstractButton', 'AbstractCellEditor', 'AbstractListModel', 'AbstractSpinnerModel', 'Action', 'ActionMap', 'BorderFactory', 'BoundedRangeModel', 'Box', 'Box.Filler', 'BoxLayout', 'ButtonGroup', 'ButtonModel', 'CellEditor', 'CellRendererPane', 'ComboBoxEditor', 'ComboBoxModel', 'ComponentInputMap', 'DebugGraphics', 'DefaultBoundedRangeModel', 'DefaultButtonModel', 'DefaultCellEditor', 'DefaultComboBoxModel', 'DefaultDesktopManager', 'DefaultFocusManager', 'DefaultListCellRenderer', 'DefaultListCellRenderer.UIResource', 'DefaultListModel', 'DefaultListSelectionModel', 'DefaultSingleSelectionModel', 'DesktopManager', 'FocusManager', 'GrayFilter', 'Icon', 'ImageIcon', 'InputMap', 'InputVerifier', 'InternalFrameFocusTraversalPolicy', 'JApplet', 'JButton', 'JCheckBox', 'JCheckBoxMenuItem', 'JColorChooser', 'JComboBox', 'JComboBox.KeySelectionManager', 'JComponent', 'JDesktopPane', 'JDialog', 'JEditorPane', 'JFileChooser', 'JFormattedTextField', 'JFormattedTextField.AbstractFormatter', - 'JFormattedTextField.AbstractFormatterFactory', 'JFrame', 'JInternalFrame', 'JInternalFrame.JDesktopIcon', 'JLabel', 'JLayeredPane', 'JList', 'JMenu', 'JMenuBar', 'JMenuItem', 'JOptionPane', 'JPanel', 'JPasswordField', 'JPopupMenu', 'JPopupMenu.Separator', 'JProgressBar', 'JRadioButton', 'JRadioButtonMenuItem', 'JRootPane', 'JScrollBar', 'JScrollPane', 'JSeparator', 'JSlider', 'JSpinner', 'JSpinner.DateEditor', 'JSpinner.DefaultEditor', 'JSpinner.ListEditor', 'JSpinner.NumberEditor', 'JSplitPane', 'JTabbedPane', 'JTable', 'JTable.PrintMode', 'JTextArea', 'JTextField', 'JTextPane', 'JToggleButton', 'JToggleButton.ToggleButtonModel', 'JToolBar', 'JToolBar.Separator', 'JToolTip', 'JTree', 'JTree.DynamicUtilTreeNode', 'JTree.EmptySelectionModel', 'JViewport', 'JWindow', 'KeyStroke', 'LayoutFocusTraversalPolicy', 'ListCellRenderer', 'ListModel', 'ListSelectionModel', 'LookAndFeel', 'MenuElement', 'MenuSelectionManager', 'MutableComboBoxModel', 'OverlayLayout', 'Popup', 'PopupFactory', 'ProgressMonitor', - 'ProgressMonitorInputStream', 'Renderer', 'RepaintManager', 'RootPaneContainer', 'ScrollPaneConstants', 'ScrollPaneLayout', 'ScrollPaneLayout.UIResource', 'Scrollable', 'SingleSelectionModel', 'SizeRequirements', 'SizeSequence', 'SortingFocusTraversalPolicy', 'SpinnerDateModel', 'SpinnerListModel', 'SpinnerModel', 'SpinnerNumberModel', 'Spring', 'SpringLayout', 'SpringLayout.Constraints', 'SwingConstants', 'SwingUtilities', 'ToolTipManager', 'TransferHandler', 'UIDefaults', 'UIDefaults.ActiveValue', 'UIDefaults.LazyInputMap', 'UIDefaults.LazyValue', 'UIDefaults.ProxyLazyValue', 'UIManager', 'UIManager.LookAndFeelInfo', 'UnsupportedLookAndFeelException', 'ViewportLayout', 'WindowConstants' - ), - 106 => array ( - 'AbstractBorder', 'BevelBorder', 'Border', 'CompoundBorder', 'EmptyBorder', 'EtchedBorder', 'LineBorder', 'MatteBorder', 'SoftBevelBorder', 'TitledBorder' - ), - 107 => array ( - 'AbstractColorChooserPanel', 'ColorChooserComponentFactory', 'ColorSelectionModel', 'DefaultColorSelectionModel' - ), - 108 => array ( - 'AncestorEvent', 'AncestorListener', 'CaretEvent', 'CaretListener', 'CellEditorListener', 'ChangeEvent', 'ChangeListener', 'DocumentEvent.ElementChange', 'DocumentEvent.EventType', 'DocumentListener', 'EventListenerList', 'HyperlinkEvent', 'HyperlinkEvent.EventType', 'HyperlinkListener', 'InternalFrameAdapter', 'InternalFrameEvent', 'InternalFrameListener', 'ListDataEvent', 'ListDataListener', 'ListSelectionEvent', 'ListSelectionListener', 'MenuDragMouseEvent', 'MenuDragMouseListener', 'MenuEvent', 'MenuKeyEvent', 'MenuKeyListener', 'MenuListener', 'MouseInputAdapter', 'MouseInputListener', 'PopupMenuEvent', 'PopupMenuListener', 'SwingPropertyChangeSupport', 'TableColumnModelEvent', 'TableColumnModelListener', 'TableModelEvent', 'TableModelListener', 'TreeExpansionEvent', 'TreeExpansionListener', 'TreeModelEvent', 'TreeModelListener', 'TreeSelectionEvent', 'TreeSelectionListener', 'TreeWillExpandListener', 'UndoableEditEvent', 'UndoableEditListener' - ), - 109 => array ( - 'FileSystemView', 'FileView' - ), - 110 => array ( - 'ActionMapUIResource', 'BorderUIResource', 'BorderUIResource.BevelBorderUIResource', 'BorderUIResource.CompoundBorderUIResource', 'BorderUIResource.EmptyBorderUIResource', 'BorderUIResource.EtchedBorderUIResource', 'BorderUIResource.LineBorderUIResource', 'BorderUIResource.MatteBorderUIResource', 'BorderUIResource.TitledBorderUIResource', 'ButtonUI', 'ColorChooserUI', 'ColorUIResource', 'ComboBoxUI', 'ComponentInputMapUIResource', 'ComponentUI', 'DesktopIconUI', 'DesktopPaneUI', 'DimensionUIResource', 'FileChooserUI', 'FontUIResource', 'IconUIResource', 'InputMapUIResource', 'InsetsUIResource', 'InternalFrameUI', 'LabelUI', 'ListUI', 'MenuBarUI', 'MenuItemUI', 'OptionPaneUI', 'PanelUI', 'PopupMenuUI', 'ProgressBarUI', 'RootPaneUI', 'ScrollBarUI', 'ScrollPaneUI', 'SeparatorUI', 'SliderUI', 'SpinnerUI', 'SplitPaneUI', 'TabbedPaneUI', 'TableHeaderUI', 'TableUI', 'TextUI', 'ToolBarUI', 'ToolTipUI', 'TreeUI', 'UIResource', 'ViewportUI' - ), - 111 => array ( - 'BasicArrowButton', 'BasicBorders', 'BasicBorders.ButtonBorder', 'BasicBorders.FieldBorder', 'BasicBorders.MarginBorder', 'BasicBorders.MenuBarBorder', 'BasicBorders.RadioButtonBorder', 'BasicBorders.RolloverButtonBorder', 'BasicBorders.SplitPaneBorder', 'BasicBorders.ToggleButtonBorder', 'BasicButtonListener', 'BasicButtonUI', 'BasicCheckBoxMenuItemUI', 'BasicCheckBoxUI', 'BasicColorChooserUI', 'BasicComboBoxEditor', 'BasicComboBoxEditor.UIResource', 'BasicComboBoxRenderer', 'BasicComboBoxRenderer.UIResource', 'BasicComboBoxUI', 'BasicComboPopup', 'BasicDesktopIconUI', 'BasicDesktopPaneUI', 'BasicDirectoryModel', 'BasicEditorPaneUI', 'BasicFileChooserUI', 'BasicFormattedTextFieldUI', 'BasicGraphicsUtils', 'BasicHTML', 'BasicIconFactory', 'BasicInternalFrameTitlePane', 'BasicInternalFrameUI', 'BasicLabelUI', 'BasicListUI', 'BasicLookAndFeel', 'BasicMenuBarUI', 'BasicMenuItemUI', 'BasicMenuUI', 'BasicOptionPaneUI', 'BasicOptionPaneUI.ButtonAreaLayout', 'BasicPanelUI', 'BasicPasswordFieldUI', - 'BasicPopupMenuSeparatorUI', 'BasicPopupMenuUI', 'BasicProgressBarUI', 'BasicRadioButtonMenuItemUI', 'BasicRadioButtonUI', 'BasicRootPaneUI', 'BasicScrollBarUI', 'BasicScrollPaneUI', 'BasicSeparatorUI', 'BasicSliderUI', 'BasicSpinnerUI', 'BasicSplitPaneDivider', 'BasicSplitPaneUI', 'BasicTabbedPaneUI', 'BasicTableHeaderUI', 'BasicTableUI', 'BasicTextAreaUI', 'BasicTextFieldUI', 'BasicTextPaneUI', 'BasicTextUI', 'BasicTextUI.BasicCaret', 'BasicTextUI.BasicHighlighter', 'BasicToggleButtonUI', 'BasicToolBarSeparatorUI', 'BasicToolBarUI', 'BasicToolTipUI', 'BasicTreeUI', 'BasicViewportUI', 'ComboPopup', 'DefaultMenuLayout' - ), - 112 => array ( - 'DefaultMetalTheme', 'MetalBorders', 'MetalBorders.ButtonBorder', 'MetalBorders.Flush3DBorder', 'MetalBorders.InternalFrameBorder', 'MetalBorders.MenuBarBorder', 'MetalBorders.MenuItemBorder', 'MetalBorders.OptionDialogBorder', 'MetalBorders.PaletteBorder', 'MetalBorders.PopupMenuBorder', 'MetalBorders.RolloverButtonBorder', 'MetalBorders.ScrollPaneBorder', 'MetalBorders.TableHeaderBorder', 'MetalBorders.TextFieldBorder', 'MetalBorders.ToggleButtonBorder', 'MetalBorders.ToolBarBorder', 'MetalButtonUI', 'MetalCheckBoxIcon', 'MetalCheckBoxUI', 'MetalComboBoxButton', 'MetalComboBoxEditor', 'MetalComboBoxEditor.UIResource', 'MetalComboBoxIcon', 'MetalComboBoxUI', 'MetalDesktopIconUI', 'MetalFileChooserUI', 'MetalIconFactory', 'MetalIconFactory.FileIcon16', 'MetalIconFactory.FolderIcon16', 'MetalIconFactory.PaletteCloseIcon', 'MetalIconFactory.TreeControlIcon', 'MetalIconFactory.TreeFolderIcon', 'MetalIconFactory.TreeLeafIcon', 'MetalInternalFrameTitlePane', 'MetalInternalFrameUI', 'MetalLabelUI', - 'MetalLookAndFeel', 'MetalMenuBarUI', 'MetalPopupMenuSeparatorUI', 'MetalProgressBarUI', 'MetalRadioButtonUI', 'MetalRootPaneUI', 'MetalScrollBarUI', 'MetalScrollButton', 'MetalScrollPaneUI', 'MetalSeparatorUI', 'MetalSliderUI', 'MetalSplitPaneUI', 'MetalTabbedPaneUI', 'MetalTextFieldUI', 'MetalTheme', 'MetalToggleButtonUI', 'MetalToolBarUI', 'MetalToolTipUI', 'MetalTreeUI', 'OceanTheme' - ), - 113 => array ( - 'MultiButtonUI', 'MultiColorChooserUI', 'MultiComboBoxUI', 'MultiDesktopIconUI', 'MultiDesktopPaneUI', 'MultiFileChooserUI', 'MultiInternalFrameUI', 'MultiLabelUI', 'MultiListUI', 'MultiLookAndFeel', 'MultiMenuBarUI', 'MultiMenuItemUI', 'MultiOptionPaneUI', 'MultiPanelUI', 'MultiPopupMenuUI', 'MultiProgressBarUI', 'MultiRootPaneUI', 'MultiScrollBarUI', 'MultiScrollPaneUI', 'MultiSeparatorUI', 'MultiSliderUI', 'MultiSpinnerUI', 'MultiSplitPaneUI', 'MultiTabbedPaneUI', 'MultiTableHeaderUI', 'MultiTableUI', 'MultiTextUI', 'MultiToolBarUI', 'MultiToolTipUI', 'MultiTreeUI', 'MultiViewportUI' - ), - 114 => array ( - 'ColorType', 'Region', 'SynthConstants', 'SynthContext', 'SynthGraphicsUtils', 'SynthLookAndFeel', 'SynthPainter', 'SynthStyle', 'SynthStyleFactory' - ), - 115 => array ( - 'AbstractTableModel', 'DefaultTableCellRenderer', 'DefaultTableCellRenderer.UIResource', 'DefaultTableColumnModel', 'DefaultTableModel', 'JTableHeader', 'TableCellEditor', 'TableCellRenderer', 'TableColumn', 'TableColumnModel', 'TableModel' - ), - 116 => array ( - 'AbstractDocument', 'AbstractDocument.AttributeContext', 'AbstractDocument.Content', 'AbstractDocument.ElementEdit', 'AbstractWriter', 'AsyncBoxView', 'AttributeSet.CharacterAttribute', 'AttributeSet.ColorAttribute', 'AttributeSet.FontAttribute', 'AttributeSet.ParagraphAttribute', 'BadLocationException', 'BoxView', 'Caret', 'ChangedCharSetException', 'ComponentView', 'CompositeView', 'DateFormatter', 'DefaultCaret', 'DefaultEditorKit', 'DefaultEditorKit.BeepAction', 'DefaultEditorKit.CopyAction', 'DefaultEditorKit.CutAction', 'DefaultEditorKit.DefaultKeyTypedAction', 'DefaultEditorKit.InsertBreakAction', 'DefaultEditorKit.InsertContentAction', 'DefaultEditorKit.InsertTabAction', 'DefaultEditorKit.PasteAction', 'DefaultFormatter', 'DefaultFormatterFactory', 'DefaultHighlighter', 'DefaultHighlighter.DefaultHighlightPainter', 'DefaultStyledDocument', 'DefaultStyledDocument.AttributeUndoableEdit', 'DefaultStyledDocument.ElementSpec', 'DefaultTextUI', 'DocumentFilter', 'DocumentFilter.FilterBypass', - 'EditorKit', 'ElementIterator', 'FieldView', 'FlowView', 'FlowView.FlowStrategy', 'GapContent', 'GlyphView', 'GlyphView.GlyphPainter', 'Highlighter', 'Highlighter.Highlight', 'Highlighter.HighlightPainter', 'IconView', 'InternationalFormatter', 'JTextComponent', 'JTextComponent.KeyBinding', 'Keymap', 'LabelView', 'LayeredHighlighter', 'LayeredHighlighter.LayerPainter', 'LayoutQueue', 'MaskFormatter', 'MutableAttributeSet', 'NavigationFilter', 'NavigationFilter.FilterBypass', 'NumberFormatter', 'PasswordView', 'PlainDocument', 'PlainView', 'Position', 'Position.Bias', 'Segment', 'SimpleAttributeSet', 'StringContent', 'Style', 'StyleConstants', 'StyleConstants.CharacterConstants', 'StyleConstants.ColorConstants', 'StyleConstants.FontConstants', 'StyleConstants.ParagraphConstants', 'StyleContext', 'StyledDocument', 'StyledEditorKit', 'StyledEditorKit.AlignmentAction', 'StyledEditorKit.BoldAction', 'StyledEditorKit.FontFamilyAction', 'StyledEditorKit.FontSizeAction', 'StyledEditorKit.ForegroundAction', - 'StyledEditorKit.ItalicAction', 'StyledEditorKit.StyledTextAction', 'StyledEditorKit.UnderlineAction', 'TabExpander', 'TabSet', 'TabStop', 'TabableView', 'TableView', 'TextAction', 'Utilities', 'View', 'ViewFactory', 'WrappedPlainView', 'ZoneView' - ), - 117 => array ( - 'BlockView', 'CSS', 'CSS.Attribute', 'FormSubmitEvent', 'FormSubmitEvent.MethodType', 'FormView', 'HTML', 'HTML.Attribute', 'HTML.Tag', 'HTML.UnknownTag', 'HTMLDocument', 'HTMLDocument.Iterator', 'HTMLEditorKit', 'HTMLEditorKit.HTMLFactory', 'HTMLEditorKit.HTMLTextAction', 'HTMLEditorKit.InsertHTMLTextAction', 'HTMLEditorKit.LinkController', 'HTMLEditorKit.Parser', 'HTMLEditorKit.ParserCallback', 'HTMLFrameHyperlinkEvent', 'HTMLWriter', 'ImageView', 'InlineView', 'ListView', 'MinimalHTMLWriter', 'ObjectView', 'Option', 'StyleSheet', 'StyleSheet.BoxPainter', 'StyleSheet.ListPainter' - ), - 118 => array ( - 'ContentModel', 'DTD', 'DTDConstants', 'DocumentParser', 'ParserDelegator', 'TagElement' - ), - 119 => array ( - 'RTFEditorKit' - ), - 120 => array ( - 'AbstractLayoutCache', 'AbstractLayoutCache.NodeDimensions', 'DefaultMutableTreeNode', 'DefaultTreeCellEditor', 'DefaultTreeCellRenderer', 'DefaultTreeModel', 'DefaultTreeSelectionModel', 'ExpandVetoException', 'FixedHeightLayoutCache', 'MutableTreeNode', 'RowMapper', 'TreeCellEditor', 'TreeCellRenderer', 'TreeModel', 'TreeNode', 'TreePath', 'TreeSelectionModel', 'VariableHeightLayoutCache' - ), - 121 => array ( - 'AbstractUndoableEdit', 'CannotRedoException', 'CannotUndoException', 'CompoundEdit', 'StateEdit', 'StateEditable', 'UndoManager', 'UndoableEdit', 'UndoableEditSupport' - ), - 122 => array ( - 'InvalidTransactionException', 'TransactionRequiredException', 'TransactionRolledbackException' - ), - 123 => array ( - 'XAException', 'XAResource', 'Xid' - ), - 124 => array ( - 'XMLConstants' - ), - 125 => array ( - 'DatatypeConfigurationException', 'DatatypeConstants', 'DatatypeConstants.Field', 'DatatypeFactory', 'Duration', 'XMLGregorianCalendar' - ), - 126 => array ( - 'NamespaceContext', 'QName' - ), - 127 => array ( - 'DocumentBuilder', 'DocumentBuilderFactory', 'FactoryConfigurationError', 'ParserConfigurationException', 'SAXParser', 'SAXParserFactory' - ), - 128 => array ( - 'ErrorListener', 'OutputKeys', 'Result', 'Source', 'SourceLocator', 'Templates', 'Transformer', 'TransformerConfigurationException', 'TransformerException', 'TransformerFactory', 'TransformerFactoryConfigurationError', 'URIResolver' - ), - 129 => array ( - 'DOMResult', 'DOMSource' - ), - 130 => array ( - 'SAXResult', 'SAXSource', 'SAXTransformerFactory', 'TemplatesHandler', 'TransformerHandler' - ), - 131 => array ( - 'StreamResult', 'StreamSource' - ), - 132 => array ( - 'Schema', 'SchemaFactory', 'SchemaFactoryLoader', 'TypeInfoProvider', 'Validator', 'ValidatorHandler' - ), - 133 => array ( - 'XPath', 'XPathConstants', 'XPathException', 'XPathExpression', 'XPathExpressionException', 'XPathFactory', 'XPathFactoryConfigurationException', 'XPathFunction', 'XPathFunctionException', 'XPathFunctionResolver', 'XPathVariableResolver' - ), - 134 => array ( - 'ChannelBinding', 'GSSContext', 'GSSCredential', 'GSSException', 'GSSManager', 'GSSName', 'MessageProp', 'Oid' - ), - 135 => array ( - 'ACTIVITY_COMPLETED', 'ACTIVITY_REQUIRED', 'ARG_IN', 'ARG_INOUT', 'ARG_OUT', 'Any', 'AnyHolder', 'AnySeqHolder', 'BAD_CONTEXT', 'BAD_INV_ORDER', 'BAD_OPERATION', 'BAD_PARAM', 'BAD_POLICY', 'BAD_POLICY_TYPE', 'BAD_POLICY_VALUE', 'BAD_QOS', 'BAD_TYPECODE', 'BooleanHolder', 'BooleanSeqHelper', 'BooleanSeqHolder', 'ByteHolder', 'CODESET_INCOMPATIBLE', 'COMM_FAILURE', 'CTX_RESTRICT_SCOPE', 'CharHolder', 'CharSeqHelper', 'CharSeqHolder', 'CompletionStatus', 'CompletionStatusHelper', 'ContextList', 'CurrentHolder', 'CustomMarshal', 'DATA_CONVERSION', 'DefinitionKind', 'DefinitionKindHelper', 'DomainManager', 'DomainManagerOperations', 'DoubleHolder', 'DoubleSeqHelper', 'DoubleSeqHolder', 'Environment', 'ExceptionList', 'FREE_MEM', 'FixedHolder', 'FloatHolder', 'FloatSeqHelper', 'FloatSeqHolder', 'IDLType', 'IDLTypeHelper', 'IDLTypeOperations', 'IMP_LIMIT', 'INITIALIZE', 'INTERNAL', 'INTF_REPOS', 'INVALID_ACTIVITY', 'INVALID_TRANSACTION', 'INV_FLAG', 'INV_IDENT', 'INV_OBJREF', 'INV_POLICY', 'IRObject', - 'IRObjectOperations', 'IdentifierHelper', 'IntHolder', 'LocalObject', 'LongHolder', 'LongLongSeqHelper', 'LongLongSeqHolder', 'LongSeqHelper', 'LongSeqHolder', 'MARSHAL', 'NO_IMPLEMENT', 'NO_MEMORY', 'NO_PERMISSION', 'NO_RESOURCES', 'NO_RESPONSE', 'NVList', 'NamedValue', 'OBJECT_NOT_EXIST', 'OBJ_ADAPTER', 'OMGVMCID', 'ObjectHelper', 'ObjectHolder', 'OctetSeqHelper', 'OctetSeqHolder', 'PERSIST_STORE', 'PRIVATE_MEMBER', 'PUBLIC_MEMBER', 'ParameterMode', 'ParameterModeHelper', 'ParameterModeHolder', 'PolicyError', 'PolicyErrorCodeHelper', 'PolicyErrorHelper', 'PolicyErrorHolder', 'PolicyHelper', 'PolicyHolder', 'PolicyListHelper', 'PolicyListHolder', 'PolicyOperations', 'PolicyTypeHelper', 'PrincipalHolder', 'REBIND', 'RepositoryIdHelper', 'Request', 'ServerRequest', 'ServiceDetail', 'ServiceDetailHelper', 'ServiceInformation', 'ServiceInformationHelper', 'ServiceInformationHolder', 'SetOverrideType', 'SetOverrideTypeHelper', 'ShortHolder', 'ShortSeqHelper', 'ShortSeqHolder', 'StringHolder', - 'StringSeqHelper', 'StringSeqHolder', 'StringValueHelper', 'StructMember', 'StructMemberHelper', 'SystemException', 'TCKind', 'TIMEOUT', 'TRANSACTION_MODE', 'TRANSACTION_REQUIRED', 'TRANSACTION_ROLLEDBACK', 'TRANSACTION_UNAVAILABLE', 'TRANSIENT', 'TypeCode', 'TypeCodeHolder', 'ULongLongSeqHelper', 'ULongLongSeqHolder', 'ULongSeqHelper', 'ULongSeqHolder', 'UNSUPPORTED_POLICY', 'UNSUPPORTED_POLICY_VALUE', 'UShortSeqHelper', 'UShortSeqHolder', 'UnionMember', 'UnionMemberHelper', 'UnknownUserException', 'UnknownUserExceptionHelper', 'UnknownUserExceptionHolder', 'UserException', 'VM_ABSTRACT', 'VM_CUSTOM', 'VM_NONE', 'VM_TRUNCATABLE', 'ValueBaseHelper', 'ValueBaseHolder', 'ValueMember', 'ValueMemberHelper', 'VersionSpecHelper', 'VisibilityHelper', 'WCharSeqHelper', 'WCharSeqHolder', 'WStringSeqHelper', 'WStringSeqHolder', 'WStringValueHelper', 'WrongTransaction', 'WrongTransactionHelper', 'WrongTransactionHolder', '_IDLTypeStub', '_PolicyStub' - ), - 136 => array ( - 'Invalid', 'InvalidSeq' - ), - 137 => array ( - 'BadKind' - ), - 138 => array ( - 'ApplicationException', 'BoxedValueHelper', 'CustomValue', 'IDLEntity', 'IndirectionException', 'InvokeHandler', 'RemarshalException', 'ResponseHandler', 'ServantObject', 'Streamable', 'StreamableValue', 'UnknownException', 'ValueBase', 'ValueFactory', 'ValueInputStream', 'ValueOutputStream' - ), - 139 => array ( - 'BindingHelper', 'BindingHolder', 'BindingIterator', 'BindingIteratorHelper', 'BindingIteratorHolder', 'BindingIteratorOperations', 'BindingIteratorPOA', 'BindingListHelper', 'BindingListHolder', 'BindingType', 'BindingTypeHelper', 'BindingTypeHolder', 'IstringHelper', 'NameComponent', 'NameComponentHelper', 'NameComponentHolder', 'NameHelper', 'NameHolder', 'NamingContext', 'NamingContextExt', 'NamingContextExtHelper', 'NamingContextExtHolder', 'NamingContextExtOperations', 'NamingContextExtPOA', 'NamingContextHelper', 'NamingContextHolder', 'NamingContextOperations', 'NamingContextPOA', '_BindingIteratorImplBase', '_BindingIteratorStub', '_NamingContextExtStub', '_NamingContextImplBase', '_NamingContextStub' - ), - 140 => array ( - 'AddressHelper', 'InvalidAddress', 'InvalidAddressHelper', 'InvalidAddressHolder', 'StringNameHelper', 'URLStringHelper' - ), - 141 => array ( - 'AlreadyBound', 'AlreadyBoundHelper', 'AlreadyBoundHolder', 'CannotProceed', 'CannotProceedHelper', 'CannotProceedHolder', 'InvalidNameHolder', 'NotEmpty', 'NotEmptyHelper', 'NotEmptyHolder', 'NotFound', 'NotFoundHelper', 'NotFoundHolder', 'NotFoundReason', 'NotFoundReasonHelper', 'NotFoundReasonHolder' - ), - 142 => array ( - 'Parameter' - ), - 143 => array ( - 'DynAnyFactory', 'DynAnyFactoryHelper', 'DynAnyFactoryOperations', 'DynAnyHelper', 'DynAnyOperations', 'DynAnySeqHelper', 'DynArrayHelper', 'DynArrayOperations', 'DynEnumHelper', 'DynEnumOperations', 'DynFixedHelper', 'DynFixedOperations', 'DynSequenceHelper', 'DynSequenceOperations', 'DynStructHelper', 'DynStructOperations', 'DynUnionHelper', 'DynUnionOperations', 'DynValueBox', 'DynValueBoxOperations', 'DynValueCommon', 'DynValueCommonOperations', 'DynValueHelper', 'DynValueOperations', 'NameDynAnyPair', 'NameDynAnyPairHelper', 'NameDynAnyPairSeqHelper', 'NameValuePairSeqHelper', '_DynAnyFactoryStub', '_DynAnyStub', '_DynArrayStub', '_DynEnumStub', '_DynFixedStub', '_DynSequenceStub', '_DynStructStub', '_DynUnionStub', '_DynValueStub' - ), - 144 => array ( - 'InconsistentTypeCodeHelper' - ), - 145 => array ( - 'InvalidValueHelper' - ), - 146 => array ( - 'CodeSets', 'Codec', 'CodecFactory', 'CodecFactoryHelper', 'CodecFactoryOperations', 'CodecOperations', 'ComponentIdHelper', 'ENCODING_CDR_ENCAPS', 'Encoding', 'ExceptionDetailMessage', 'IOR', 'IORHelper', 'IORHolder', 'MultipleComponentProfileHelper', 'MultipleComponentProfileHolder', 'ProfileIdHelper', 'RMICustomMaxStreamFormat', 'ServiceContext', 'ServiceContextHelper', 'ServiceContextHolder', 'ServiceContextListHelper', 'ServiceContextListHolder', 'ServiceIdHelper', 'TAG_ALTERNATE_IIOP_ADDRESS', 'TAG_CODE_SETS', 'TAG_INTERNET_IOP', 'TAG_JAVA_CODEBASE', 'TAG_MULTIPLE_COMPONENTS', 'TAG_ORB_TYPE', 'TAG_POLICIES', 'TAG_RMI_CUSTOM_MAX_STREAM_FORMAT', 'TaggedComponent', 'TaggedComponentHelper', 'TaggedComponentHolder', 'TaggedProfile', 'TaggedProfileHelper', 'TaggedProfileHolder', 'TransactionService' - ), - 147 => array ( - 'UnknownEncoding', 'UnknownEncodingHelper' - ), - 148 => array ( - 'FormatMismatch', 'FormatMismatchHelper', 'InvalidTypeForEncoding', 'InvalidTypeForEncodingHelper' - ), - 149 => array ( - 'SYNC_WITH_TRANSPORT', 'SyncScopeHelper' - ), - 150 => array ( - 'ACTIVE', 'AdapterManagerIdHelper', 'AdapterNameHelper', 'AdapterStateHelper', 'ClientRequestInfo', 'ClientRequestInfoOperations', 'ClientRequestInterceptor', 'ClientRequestInterceptorOperations', 'DISCARDING', 'HOLDING', 'INACTIVE', 'IORInfo', 'IORInfoOperations', 'IORInterceptor', 'IORInterceptorOperations', 'IORInterceptor_3_0', 'IORInterceptor_3_0Helper', 'IORInterceptor_3_0Holder', 'IORInterceptor_3_0Operations', 'Interceptor', 'InterceptorOperations', 'InvalidSlot', 'InvalidSlotHelper', 'LOCATION_FORWARD', 'NON_EXISTENT', 'ORBIdHelper', 'ORBInitInfo', 'ORBInitInfoOperations', 'ORBInitializer', 'ORBInitializerOperations', 'ObjectReferenceFactory', 'ObjectReferenceFactoryHelper', 'ObjectReferenceFactoryHolder', 'ObjectReferenceTemplate', 'ObjectReferenceTemplateHelper', 'ObjectReferenceTemplateHolder', 'ObjectReferenceTemplateSeqHelper', 'ObjectReferenceTemplateSeqHolder', 'PolicyFactory', 'PolicyFactoryOperations', 'RequestInfo', 'RequestInfoOperations', 'SUCCESSFUL', 'SYSTEM_EXCEPTION', - 'ServerIdHelper', 'ServerRequestInfo', 'ServerRequestInfoOperations', 'ServerRequestInterceptor', 'ServerRequestInterceptorOperations', 'TRANSPORT_RETRY', 'USER_EXCEPTION' - ), - 151 => array ( - 'DuplicateName', 'DuplicateNameHelper' - ), - 152 => array ( - 'AdapterActivator', 'AdapterActivatorOperations', 'ID_ASSIGNMENT_POLICY_ID', 'ID_UNIQUENESS_POLICY_ID', 'IMPLICIT_ACTIVATION_POLICY_ID', 'IdAssignmentPolicy', 'IdAssignmentPolicyOperations', 'IdAssignmentPolicyValue', 'IdUniquenessPolicy', 'IdUniquenessPolicyOperations', 'IdUniquenessPolicyValue', 'ImplicitActivationPolicy', 'ImplicitActivationPolicyOperations', 'ImplicitActivationPolicyValue', 'LIFESPAN_POLICY_ID', 'LifespanPolicy', 'LifespanPolicyOperations', 'LifespanPolicyValue', 'POA', 'POAHelper', 'POAManager', 'POAManagerOperations', 'POAOperations', 'REQUEST_PROCESSING_POLICY_ID', 'RequestProcessingPolicy', 'RequestProcessingPolicyOperations', 'RequestProcessingPolicyValue', 'SERVANT_RETENTION_POLICY_ID', 'Servant', 'ServantActivator', 'ServantActivatorHelper', 'ServantActivatorOperations', 'ServantActivatorPOA', 'ServantLocator', 'ServantLocatorHelper', 'ServantLocatorOperations', 'ServantLocatorPOA', 'ServantManager', 'ServantManagerOperations', 'ServantRetentionPolicy', - 'ServantRetentionPolicyOperations', 'ServantRetentionPolicyValue', 'THREAD_POLICY_ID', 'ThreadPolicy', 'ThreadPolicyOperations', 'ThreadPolicyValue', '_ServantActivatorStub', '_ServantLocatorStub' - ), - 153 => array ( - 'NoContext', 'NoContextHelper' - ), - 154 => array ( - 'AdapterInactive', 'AdapterInactiveHelper', 'State' - ), - 155 => array ( - 'AdapterAlreadyExists', 'AdapterAlreadyExistsHelper', 'AdapterNonExistent', 'AdapterNonExistentHelper', 'InvalidPolicy', 'InvalidPolicyHelper', 'NoServant', 'NoServantHelper', 'ObjectAlreadyActive', 'ObjectAlreadyActiveHelper', 'ObjectNotActive', 'ObjectNotActiveHelper', 'ServantAlreadyActive', 'ServantAlreadyActiveHelper', 'ServantNotActive', 'ServantNotActiveHelper', 'WrongAdapter', 'WrongAdapterHelper', 'WrongPolicy', 'WrongPolicyHelper' - ), - 156 => array ( - 'CookieHolder' - ), - 157 => array ( - 'RunTime', 'RunTimeOperations' - ), - 158 => array ( - '_Remote_Stub' - ), - 159 => array ( - 'Attr', 'CDATASection', 'CharacterData', 'Comment', 'DOMConfiguration', 'DOMError', 'DOMErrorHandler', 'DOMException', 'DOMImplementation', 'DOMImplementationList', 'DOMImplementationSource', 'DOMStringList', 'DocumentFragment', 'DocumentType', 'EntityReference', 'NameList', 'NamedNodeMap', 'Node', 'NodeList', 'Notation', 'ProcessingInstruction', 'Text', 'TypeInfo', 'UserDataHandler' - ), - 160 => array ( - 'DOMImplementationRegistry' - ), - 161 => array ( - 'EventException', 'EventTarget', 'MutationEvent', 'UIEvent' - ), - 162 => array ( - 'DOMImplementationLS', 'LSException', 'LSInput', 'LSLoadEvent', 'LSOutput', 'LSParser', 'LSParserFilter', 'LSProgressEvent', 'LSResourceResolver', 'LSSerializer', 'LSSerializerFilter' - ), - 163 => array ( - 'DTDHandler', 'DocumentHandler', 'EntityResolver', 'ErrorHandler', 'HandlerBase', 'InputSource', 'Locator', 'SAXException', 'SAXNotRecognizedException', 'SAXNotSupportedException', 'SAXParseException', 'XMLFilter', 'XMLReader' - ), - 164 => array ( - 'Attributes2', 'Attributes2Impl', 'DeclHandler', 'DefaultHandler2', 'EntityResolver2', 'LexicalHandler', 'Locator2', 'Locator2Impl' - ), - 165 => array ( - 'AttributeListImpl', 'AttributesImpl', 'DefaultHandler', 'LocatorImpl', 'NamespaceSupport', 'ParserAdapter', 'ParserFactory', 'XMLFilterImpl', 'XMLReaderAdapter', 'XMLReaderFactory' - ), - /* ambiguous class names (appear in more than one package) */ - 166 => array ( - 'Annotation', 'AnySeqHelper', 'Array', 'Attribute', 'AttributeList', 'AttributeSet', 'Attributes', 'AuthenticationException', 'Binding', 'Bounds', 'Certificate', 'CertificateEncodingException', 'CertificateException', 'CertificateExpiredException', 'CertificateNotYetValidException', 'CertificateParsingException', 'ConnectException', 'ContentHandler', 'Context', 'Control', 'Current', 'CurrentHelper', 'CurrentOperations', 'DOMLocator', 'DataInputStream', 'DataOutputStream', 'Date', 'DefaultLoaderRepository', 'Delegate', 'Document', 'DocumentEvent', 'DynAny', 'DynArray', 'DynEnum', 'DynFixed', 'DynSequence', 'DynStruct', 'DynUnion', 'DynValue', 'DynamicImplementation', 'Element', 'Entity', 'Event', 'EventListener', 'FieldNameHelper', 'FileFilter', 'Formatter', 'ForwardRequest', 'ForwardRequestHelper', 'InconsistentTypeCode', 'InputStream', 'IntrospectionException', 'InvalidAttributeValueException', 'InvalidKeyException', 'InvalidName', 'InvalidNameHelper', 'InvalidValue', 'List', 'MouseEvent', - 'NameValuePair', 'NameValuePairHelper', 'ORB', 'Object', 'ObjectIdHelper', 'ObjectImpl', 'OpenType', 'OutputStream', 'ParagraphView', 'Parser', 'Permission', 'Policy', 'Principal', 'Proxy', 'Reference', 'Statement', 'Timer', 'Timestamp', 'TypeMismatch', 'TypeMismatchHelper', 'UNKNOWN', 'UnknownHostException', 'X509Certificate' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - /* all Java keywords are case sensitive */ - 1 => true, 2 => true, 3 => true, 4 => true, - 5 => true, 6 => true, 7 => true, 8 => true, 9 => true, - 10 => true, 11 => true, 12 => true, 13 => true, 14 => true, - 15 => true, 16 => true, 17 => true, 18 => true, 19 => true, - 20 => true, 21 => true, 22 => true, 23 => true, 24 => true, - 25 => true, 26 => true, 27 => true, 28 => true, 29 => true, - 30 => true, 31 => true, 32 => true, 33 => true, 34 => true, - 35 => true, 36 => true, 37 => true, 38 => true, 39 => true, - 40 => true, 41 => true, 42 => true, 43 => true, 44 => true, - 45 => true, 46 => true, 47 => true, 48 => true, 49 => true, - 50 => true, 51 => true, 52 => true, 53 => true, 54 => true, - 55 => true, 56 => true, 57 => true, 58 => true, 59 => true, - 60 => true, 61 => true, 62 => true, 63 => true, 64 => true, - 65 => true, 66 => true, 67 => true, 68 => true, 69 => true, - 70 => true, 71 => true, 72 => true, 73 => true, 74 => true, - 75 => true, 76 => true, 77 => true, 78 => true, 79 => true, - 80 => true, 81 => true, 82 => true, 83 => true, 84 => true, - 85 => true, 86 => true, 87 => true, 88 => true, 89 => true, - 90 => true, 91 => true, 92 => true, 93 => true, 94 => true, - 95 => true, 96 => true, 97 => true, 98 => true, 99 => true, - 100 => true, 101 => true, 102 => true, 103 => true, 104 => true, - 105 => true, 106 => true, 107 => true, 108 => true, 109 => true, - 110 => true, 111 => true, 112 => true, 113 => true, 114 => true, - 115 => true, 116 => true, 117 => true, 118 => true, 119 => true, - 120 => true, 121 => true, 122 => true, 123 => true, 124 => true, - 125 => true, 126 => true, 127 => true, 128 => true, 129 => true, - 130 => true, 131 => true, 132 => true, 133 => true, 134 => true, - 135 => true, 136 => true, 137 => true, 138 => true, 139 => true, - 140 => true, 141 => true, 142 => true, 143 => true, 144 => true, - 145 => true, 146 => true, 147 => true, 148 => true, 149 => true, - 150 => true, 151 => true, 152 => true, 153 => true, 154 => true, - 155 => true, 156 => true, 157 => true, 158 => true, 159 => true, - 160 => true, 161 => true, 162 => true, 163 => true, 164 => true, - 165 => true, 166 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #006600; font-weight: bold;', - 4 => 'color: #006600; font-weight: bold;', - 5 => 'color: #003399; font-weight: bold;', - 6 => 'color: #003399; font-weight: bold;', - 7 => 'color: #003399; font-weight: bold;', - 8 => 'color: #003399; font-weight: bold;', - 9 => 'color: #003399; font-weight: bold;', - 10 => 'color: #003399; font-weight: bold;', - 11 => 'color: #003399; font-weight: bold;', - 12 => 'color: #003399; font-weight: bold;', - 13 => 'color: #003399; font-weight: bold;', - 14 => 'color: #003399; font-weight: bold;', - 15 => 'color: #003399; font-weight: bold;', - 16 => 'color: #003399; font-weight: bold;', - 17 => 'color: #003399; font-weight: bold;', - 18 => 'color: #003399; font-weight: bold;', - 19 => 'color: #003399; font-weight: bold;', - 20 => 'color: #003399; font-weight: bold;', - 21 => 'color: #003399; font-weight: bold;', - 22 => 'color: #003399; font-weight: bold;', - 23 => 'color: #003399; font-weight: bold;', - 24 => 'color: #003399; font-weight: bold;', - 25 => 'color: #003399; font-weight: bold;', - 26 => 'color: #003399; font-weight: bold;', - 27 => 'color: #003399; font-weight: bold;', - 28 => 'color: #003399; font-weight: bold;', - 29 => 'color: #003399; font-weight: bold;', - 30 => 'color: #003399; font-weight: bold;', - 31 => 'color: #003399; font-weight: bold;', - 32 => 'color: #003399; font-weight: bold;', - 33 => 'color: #003399; font-weight: bold;', - 34 => 'color: #003399; font-weight: bold;', - 35 => 'color: #003399; font-weight: bold;', - 36 => 'color: #003399; font-weight: bold;', - 37 => 'color: #003399; font-weight: bold;', - 38 => 'color: #003399; font-weight: bold;', - 39 => 'color: #003399; font-weight: bold;', - 40 => 'color: #003399; font-weight: bold;', - 41 => 'color: #003399; font-weight: bold;', - 42 => 'color: #003399; font-weight: bold;', - 43 => 'color: #003399; font-weight: bold;', - 44 => 'color: #003399; font-weight: bold;', - 45 => 'color: #003399; font-weight: bold;', - 46 => 'color: #003399; font-weight: bold;', - 47 => 'color: #003399; font-weight: bold;', - 48 => 'color: #003399; font-weight: bold;', - 49 => 'color: #003399; font-weight: bold;', - 50 => 'color: #003399; font-weight: bold;', - 51 => 'color: #003399; font-weight: bold;', - 52 => 'color: #003399; font-weight: bold;', - 53 => 'color: #003399; font-weight: bold;', - 54 => 'color: #003399; font-weight: bold;', - 55 => 'color: #003399; font-weight: bold;', - 56 => 'color: #003399; font-weight: bold;', - 57 => 'color: #003399; font-weight: bold;', - 58 => 'color: #003399; font-weight: bold;', - 59 => 'color: #003399; font-weight: bold;', - 60 => 'color: #003399; font-weight: bold;', - 61 => 'color: #003399; font-weight: bold;', - 62 => 'color: #003399; font-weight: bold;', - 63 => 'color: #003399; font-weight: bold;', - 64 => 'color: #003399; font-weight: bold;', - 65 => 'color: #003399; font-weight: bold;', - 66 => 'color: #003399; font-weight: bold;', - 67 => 'color: #003399; font-weight: bold;', - 68 => 'color: #003399; font-weight: bold;', - 69 => 'color: #003399; font-weight: bold;', - 70 => 'color: #003399; font-weight: bold;', - 71 => 'color: #003399; font-weight: bold;', - 72 => 'color: #003399; font-weight: bold;', - 73 => 'color: #003399; font-weight: bold;', - 74 => 'color: #003399; font-weight: bold;', - 75 => 'color: #003399; font-weight: bold;', - 76 => 'color: #003399; font-weight: bold;', - 77 => 'color: #003399; font-weight: bold;', - 78 => 'color: #003399; font-weight: bold;', - 79 => 'color: #003399; font-weight: bold;', - 80 => 'color: #003399; font-weight: bold;', - 81 => 'color: #003399; font-weight: bold;', - 82 => 'color: #003399; font-weight: bold;', - 83 => 'color: #003399; font-weight: bold;', - 84 => 'color: #003399; font-weight: bold;', - 85 => 'color: #003399; font-weight: bold;', - 86 => 'color: #003399; font-weight: bold;', - 87 => 'color: #003399; font-weight: bold;', - 88 => 'color: #003399; font-weight: bold;', - 89 => 'color: #003399; font-weight: bold;', - 90 => 'color: #003399; font-weight: bold;', - 91 => 'color: #003399; font-weight: bold;', - 92 => 'color: #003399; font-weight: bold;', - 93 => 'color: #003399; font-weight: bold;', - 94 => 'color: #003399; font-weight: bold;', - 95 => 'color: #003399; font-weight: bold;', - 96 => 'color: #003399; font-weight: bold;', - 97 => 'color: #003399; font-weight: bold;', - 98 => 'color: #003399; font-weight: bold;', - 99 => 'color: #003399; font-weight: bold;', - 100 => 'color: #003399; font-weight: bold;', - 101 => 'color: #003399; font-weight: bold;', - 102 => 'color: #003399; font-weight: bold;', - 103 => 'color: #003399; font-weight: bold;', - 104 => 'color: #003399; font-weight: bold;', - 105 => 'color: #003399; font-weight: bold;', - 106 => 'color: #003399; font-weight: bold;', - 107 => 'color: #003399; font-weight: bold;', - 108 => 'color: #003399; font-weight: bold;', - 109 => 'color: #003399; font-weight: bold;', - 110 => 'color: #003399; font-weight: bold;', - 111 => 'color: #003399; font-weight: bold;', - 112 => 'color: #003399; font-weight: bold;', - 113 => 'color: #003399; font-weight: bold;', - 114 => 'color: #003399; font-weight: bold;', - 115 => 'color: #003399; font-weight: bold;', - 116 => 'color: #003399; font-weight: bold;', - 117 => 'color: #003399; font-weight: bold;', - 118 => 'color: #003399; font-weight: bold;', - 119 => 'color: #003399; font-weight: bold;', - 120 => 'color: #003399; font-weight: bold;', - 121 => 'color: #003399; font-weight: bold;', - 122 => 'color: #003399; font-weight: bold;', - 123 => 'color: #003399; font-weight: bold;', - 124 => 'color: #003399; font-weight: bold;', - 125 => 'color: #003399; font-weight: bold;', - 126 => 'color: #003399; font-weight: bold;', - 127 => 'color: #003399; font-weight: bold;', - 128 => 'color: #003399; font-weight: bold;', - 129 => 'color: #003399; font-weight: bold;', - 130 => 'color: #003399; font-weight: bold;', - 131 => 'color: #003399; font-weight: bold;', - 132 => 'color: #003399; font-weight: bold;', - 133 => 'color: #003399; font-weight: bold;', - 134 => 'color: #003399; font-weight: bold;', - 135 => 'color: #003399; font-weight: bold;', - 136 => 'color: #003399; font-weight: bold;', - 137 => 'color: #003399; font-weight: bold;', - 138 => 'color: #003399; font-weight: bold;', - 139 => 'color: #003399; font-weight: bold;', - 140 => 'color: #003399; font-weight: bold;', - 141 => 'color: #003399; font-weight: bold;', - 142 => 'color: #003399; font-weight: bold;', - 143 => 'color: #003399; font-weight: bold;', - 144 => 'color: #003399; font-weight: bold;', - 145 => 'color: #003399; font-weight: bold;', - 146 => 'color: #003399; font-weight: bold;', - 147 => 'color: #003399; font-weight: bold;', - 148 => 'color: #003399; font-weight: bold;', - 149 => 'color: #003399; font-weight: bold;', - 150 => 'color: #003399; font-weight: bold;', - 151 => 'color: #003399; font-weight: bold;', - 152 => 'color: #003399; font-weight: bold;', - 153 => 'color: #003399; font-weight: bold;', - 154 => 'color: #003399; font-weight: bold;', - 155 => 'color: #003399; font-weight: bold;', - 156 => 'color: #003399; font-weight: bold;', - 157 => 'color: #003399; font-weight: bold;', - 158 => 'color: #003399; font-weight: bold;', - 159 => 'color: #003399; font-weight: bold;', - 160 => 'color: #003399; font-weight: bold;', - 161 => 'color: #003399; font-weight: bold;', - 162 => 'color: #003399; font-weight: bold;', - 163 => 'color: #003399; font-weight: bold;', - 164 => 'color: #003399; font-weight: bold;', - 165 => 'color: #003399; font-weight: bold;', - 166 => 'color: #003399; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #006699;', - 3 => 'color: #008000; font-style: italic; font-weight: bold;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006633;', - 2 => 'color: #006633;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/applet/{FNAME}.html', - 6 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/{FNAME}.html', - 7 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/color/{FNAME}.html', - 8 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/datatransfer/{FNAME}.html', - 9 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/dnd/{FNAME}.html', - 10 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/event/{FNAME}.html', - 11 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/font/{FNAME}.html', - 12 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/geom/{FNAME}.html', - 13 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/im/{FNAME}.html', - 14 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/im/spi/{FNAME}.html', - 15 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/image/{FNAME}.html', - 16 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/image/renderable/{FNAME}.html', - 17 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/awt/print/{FNAME}.html', - 18 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/beans/{FNAME}.html', - 19 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/beans/beancontext/{FNAME}.html', - 20 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/io/{FNAME}.html', - 21 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/{FNAME}.html', - 22 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/annotation/{FNAME}.html', - 23 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/instrument/{FNAME}.html', - 24 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/management/{FNAME}.html', - 25 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/ref/{FNAME}.html', - 26 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/lang/reflect/{FNAME}.html', - 27 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/math/{FNAME}.html', - 28 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/net/{FNAME}.html', - 29 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/{FNAME}.html', - 30 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/channels/{FNAME}.html', - 31 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/channels/spi/{FNAME}.html', - 32 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/charset/{FNAME}.html', - 33 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/nio/charset/spi/{FNAME}.html', - 34 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/{FNAME}.html', - 35 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/activation/{FNAME}.html', - 36 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/dgc/{FNAME}.html', - 37 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/registry/{FNAME}.html', - 38 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/rmi/server/{FNAME}.html', - 39 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/{FNAME}.html', - 40 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/acl/{FNAME}.html', - 41 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/cert/{FNAME}.html', - 42 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/interfaces/{FNAME}.html', - 43 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/security/spec/{FNAME}.html', - 44 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/sql/{FNAME}.html', - 45 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/text/{FNAME}.html', - 46 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/{FNAME}.html', - 47 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/{FNAME}.html', - 48 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/atomic/{FNAME}.html', - 49 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/concurrent/locks/{FNAME}.html', - 50 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/jar/{FNAME}.html', - 51 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/logging/{FNAME}.html', - 52 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/prefs/{FNAME}.html', - 53 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/regex/{FNAME}.html', - 54 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/java/util/zip/{FNAME}.html', - 55 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/accessibility/{FNAME}.html', - 56 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/activity/{FNAME}.html', - 57 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/{FNAME}.html', - 58 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/interfaces/{FNAME}.html', - 59 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/crypto/spec/{FNAME}.html', - 60 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/{FNAME}.html', - 61 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/event/{FNAME}.html', - 62 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/metadata/{FNAME}.html', - 63 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/plugins/bmp/{FNAME}.html', - 64 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/plugins/jpeg/{FNAME}.html', - 65 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/spi/{FNAME}.html', - 66 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/imageio/stream/{FNAME}.html', - 67 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/{FNAME}.html', - 68 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/loading/{FNAME}.html', - 69 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/modelmbean/{FNAME}.html', - 70 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/monitor/{FNAME}.html', - 71 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/openmbean/{FNAME}.html', - 72 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/relation/{FNAME}.html', - 73 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/remote/{FNAME}.html', - 74 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/remote/rmi/{FNAME}.html', - 75 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/management/timer/{FNAME}.html', - 76 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/{FNAME}.html', - 77 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/directory/{FNAME}.html', - 78 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/event/{FNAME}.html', - 79 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/ldap/{FNAME}.html', - 80 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/naming/spi/{FNAME}.html', - 81 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/net/{FNAME}.html', - 82 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/net/ssl/{FNAME}.html', - 83 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/{FNAME}.html', - 84 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/attribute/{FNAME}.html', - 85 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/attribute/standard/{FNAME}.html', - 86 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/print/event/{FNAME}.html', - 87 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/{FNAME}.html', - 88 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/CORBA/{FNAME}.html', - 89 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/rmi/ssl/{FNAME}.html', - 90 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/{FNAME}.html', - 91 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/callback/{FNAME}.html', - 92 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/kerberos/{FNAME}.html', - 93 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/login/{FNAME}.html', - 94 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/spi/{FNAME}.html', - 95 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/auth/x500/{FNAME}.html', - 96 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/security/sasl/{FNAME}.html', - 97 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/midi/{FNAME}.html', - 98 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/midi/spi/{FNAME}.html', - 99 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/sampled/{FNAME}.html', - 100 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sound/sampled/spi/{FNAME}.html', - 101 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/{FNAME}.html', - 102 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/{FNAME}.html', - 103 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/serial/{FNAME}.html', - 104 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/sql/rowset/spi/{FNAME}.html', - 105 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/{FNAME}.html', - 106 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/border/{FNAME}.html', - 107 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/colorchooser/{FNAME}.html', - 108 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/event/{FNAME}.html', - 109 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/filechooser/{FNAME}.html', - 110 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/{FNAME}.html', - 111 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/basic/{FNAME}.html', - 112 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/metal/{FNAME}.html', - 113 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/multi/{FNAME}.html', - 114 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/plaf/synth/{FNAME}.html', - 115 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/table/{FNAME}.html', - 116 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/{FNAME}.html', - 117 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/html/{FNAME}.html', - 118 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/html/parser/{FNAME}.html', - 119 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/text/rtf/{FNAME}.html', - 120 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/tree/{FNAME}.html', - 121 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/swing/undo/{FNAME}.html', - 122 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/transaction/{FNAME}.html', - 123 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/transaction/xa/{FNAME}.html', - 124 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/{FNAME}.html', - 125 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/datatype/{FNAME}.html', - 126 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/namespace/{FNAME}.html', - 127 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/parsers/{FNAME}.html', - 128 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/{FNAME}.html', - 129 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/dom/{FNAME}.html', - 130 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/sax/{FNAME}.html', - 131 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/transform/stream/{FNAME}.html', - 132 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/validation/{FNAME}.html', - 133 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/javax/xml/xpath/{FNAME}.html', - 134 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/ietf/jgss/{FNAME}.html', - 135 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/{FNAME}.html', - 136 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/DynAnyPackage/{FNAME}.html', - 137 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/TypeCodePackage/{FNAME}.html', - 138 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CORBA/portable/{FNAME}.html', - 139 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/{FNAME}.html', - 140 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/NamingContextExtPackage/{FNAME}.html', - 141 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/CosNaming/NamingContextPackage/{FNAME}.html', - 142 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/Dynamic/{FNAME}.html', - 143 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/{FNAME}.html', - 144 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/DynAnyFactoryPackage/{FNAME}.html', - 145 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/DynamicAny/DynAnyPackage/{FNAME}.html', - 146 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/{FNAME}.html', - 147 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/CodecFactoryPackage/{FNAME}.html', - 148 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/IOP/CodecPackage/{FNAME}.html', - 149 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/Messaging/{FNAME}.html', - 150 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableInterceptor/{FNAME}.html', - 151 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableInterceptor/ORBInitInfoPackage/{FNAME}.html', - 152 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/{FNAME}.html', - 153 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/CurrentPackage/{FNAME}.html', - 154 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/POAManagerPackage/{FNAME}.html', - 155 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/POAPackage/{FNAME}.html', - 156 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/PortableServer/ServantLocatorPackage/{FNAME}.html', - 157 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/SendingContext/{FNAME}.html', - 158 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/omg/stub/java/rmi/{FNAME}.html', - 159 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/{FNAME}.html', - 160 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/bootstrap/{FNAME}.html', - 161 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/events/{FNAME}.html', - 162 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/w3c/dom/ls/{FNAME}.html', - 163 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/{FNAME}.html', - 164 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/ext/{FNAME}.html', - 165 => 'http://java.sun.com/j2se/1%2E5%2E0/docs/api/org/xml/sax/helpers/{FNAME}.html', - /* ambiguous class names (appear in more than one package) */ - 166 => 'http://www.google.com/search?sitesearch=java.sun.com&q=allinurl%3Aj2se%2F1+5+0%2Fdocs%2Fapi+{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - /* Java does not use '::' */ - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/javascript.php b/system/application/libraries/geshi/javascript.php deleted file mode 100644 index 96c345477..000000000 --- a/system/application/libraries/geshi/javascript.php +++ /dev/null @@ -1,150 +0,0 @@ -<?php -/************************************************************************************* - * javascript.php - * -------------- - * Author: Ben Keen (ben.keen@gmail.com) - * Copyright: (c) 2004 Ben Keen (ben.keen@gmail.com), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/20 - * - * JavaScript language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Javascript', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - //Regular Expressions - 'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'as', 'break', 'case', 'catch', 'continue', 'decodeURI', 'delete', 'do', - 'else', 'encodeURI', 'eval', 'finally', 'for', 'if', 'in', 'is', 'item', - 'instanceof', 'return', 'switch', 'this', 'throw', 'try', 'typeof', 'void', - 'while', 'write', 'with' - ), - 2 => array( - 'class', 'const', 'default', 'debugger', 'export', 'extends', 'false', - 'function', 'import', 'namespace', 'new', 'null', 'package', 'private', - 'protected', 'public', 'super', 'true', 'use', 'var' - ), - 3 => array( - // common functions for Window object - 'alert', 'back', 'blur', 'close', 'confirm', 'focus', 'forward', 'home', - 'name', 'navigate', 'onblur', 'onerror', 'onfocus', 'onload', 'onmove', - 'onresize', 'onunload', 'open', 'print', 'prompt', 'scroll', 'status', - 'stop', - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '+', '-', '*', '/', '%', - '!', '@', '&', '|', '^', - '<', '>', '=', - ',', ';', '?', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #003366; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #006600; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 'MULTI' => 'color: #006600; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #3366CC;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #660066;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<script type="text/javascript">' => '</script>' - ), - 1 => array( - '<script language="javascript">' => '</script>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true - ) -); - -?> diff --git a/system/application/libraries/geshi/jquery.php b/system/application/libraries/geshi/jquery.php deleted file mode 100644 index b4264cb1c..000000000 --- a/system/application/libraries/geshi/jquery.php +++ /dev/null @@ -1,238 +0,0 @@ -<?php -/************************************************************************************* - * jquery.php - * -------------- - * Author: Rob Loach (http://www.robloach.net) - * Copyright: (c) 2009 Rob Loach (http://www.robloach.net) - * Release Version: 1.0.8.6 - * Date Started: 2009/07/20 - * - * jQuery 1.3 language file for GeSHi. - * - * CHANGES - * ------- - * 2009/07/20 (1.0.8.5) - * - First Release - * - * TODO (updated 2009/07/20) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'jQuery', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - //Regular Expressions - 'COMMENT_REGEXP' => array(2 => "/(?<=[\\s^])s\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])m?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[gimsu]*(?=[\\s$\\.\\,\\;\\)])/iU"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'as', 'break', 'case', 'catch', 'continue', 'decodeURI', 'delete', 'do', - 'else', 'encodeURI', 'eval', 'finally', 'for', 'if', 'in', 'is', 'item', - 'instanceof', 'return', 'switch', 'this', 'throw', 'try', 'typeof', 'void', - 'while', 'write', 'with' - ), - 2 => array( - 'class', 'const', 'default', 'debugger', 'export', 'extends', 'false', - 'function', 'import', 'namespace', 'new', 'null', 'package', 'private', - 'protected', 'public', 'super', 'true', 'use', 'var' - ), - 3 => array( - // common functions for Window object - 'alert', 'back', 'close', 'confirm', 'forward', 'home', - 'name', 'navigate', 'onblur', 'onerror', 'onfocus', 'onload', 'onmove', - 'onresize', 'onunload', 'open', 'print', 'prompt', 'status', - //'blur', 'focus', 'scroll', // Duplicate with kw9 - //'stop', //Duplicate with kw10 - ), - 4 => array( - // jQuery Core Functions - 'jQuery', 'each', 'size', 'length', 'selector', 'context', 'eq', - 'index', 'data', 'removeData', 'queue', 'dequeue', 'noConflict' - //'get', //Duplicate with kw11 - ), - 5 => array( - // jQuery Attribute Functions - 'attr', 'removeAttr', 'addClass', 'hasClass', 'removeClass', 'toggleClass', - 'html', 'text', 'val', - ), - 6 => array( - // jQuery Traversing Functions - 'filter', 'not', 'slice', 'add', 'children', 'closest', - 'contents', 'find', 'next', 'nextAll', 'parent', 'parents', - 'prev', 'prevAll', 'siblings', 'andSelf', 'end', - //'is', //Dup with kw1 - //'offsetParent', //Duplicate with kw8 - //'map', //Duplicate with kw12 - ), - 7 => array( - // jQuery Manipulation Functions - 'append', 'appendTo', 'prepend', 'prependTo', 'after', 'before', 'insertAfter', - 'insertBefore', 'wrap', 'wrapAll', 'wrapInner', 'replaceWith', 'replaceAll', - 'empty', 'remove', 'clone', - ), - 8 => array( - // jQuery CSS Functions - 'css', 'offset', 'offsetParent', 'position', 'scrollTop', 'scrollLeft', - 'height', 'width', 'innerHeight', 'innerWidth', 'outerHeight', 'outerWidth', - ), - 9 => array( - // jQuery Events Functions - 'ready', 'bind', 'one', 'trigger', 'triggerHandler', 'unbind', 'live', - 'die', 'hover', 'blur', 'change', 'click', 'dblclick', 'error', - 'focus', 'keydown', 'keypress', 'keyup', 'mousedown', 'mouseenter', - 'mouseleave', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'resize', - 'scroll', 'select', 'submit', 'unload', - //'toggle', //Duplicate with kw10 - //'load', //Duplicate with kw11 - ), - 10 => array( - // jQuery Effects Functions - 'show', 'hide', 'toggle', 'slideDown', 'slideUp', 'slideToggle', 'fadeIn', - 'fadeOut', 'fadeTo', 'animate', 'stop', - ), - 11 => array( - // jQuery Ajax Functions - 'ajax', 'load', 'get', 'getJSON', 'getScript', 'post', 'ajaxComplete', - 'ajaxError', 'ajaxSend', 'ajaxStart', 'ajaxStop', 'ajaxSuccess', 'ajaxSetup', - 'serialize', 'serializeArray', - ), - 12 => array( - // jQuery Utility Functions - 'support', 'browser', 'version', 'boxModal', 'extend', 'grep', 'makeArray', - 'map', 'inArray', 'merge', 'unique', 'isArray', 'isFunction', 'trim', - 'param', - ), - ), - 'SYMBOLS' => array( - 0 => array( - '(', ')', '[', ']', '{', '}', - '+', '-', '*', '/', '%', - '!', '@', '&', '|', '^', - '<', '>', '=', - ',', ';', '?', ':' - ), - 1 => array( - '$' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false, - 10 => false, - 11 => false, - 12 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #003366; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066;', - 5 => 'color: #000066;', - 6 => 'color: #000066;', - 7 => 'color: #000066;', - 8 => 'color: #000066;', - 9 => 'color: #000066;', - 10 => 'color: #000066;', - 11 => 'color: #000066;', - 12 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #006600; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 'MULTI' => 'color: #006600; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #3366CC;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #660066;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => 'http://docs.jquery.com/Core/{FNAME}', - 5 => 'http://docs.jquery.com/Attributes/{FNAME}', - 6 => 'http://docs.jquery.com/Traversing/{FNAME}', - 7 => 'http://docs.jquery.com/Manipulation/{FNAME}', - 8 => 'http://docs.jquery.com/CSS/{FNAME}', - 9 => 'http://docs.jquery.com/Events/{FNAME}', - 10 => 'http://docs.jquery.com/Effects/{FNAME}', - 11 => 'http://docs.jquery.com/Ajax/{FNAME}', - 12 => 'http://docs.jquery.com/Utilities/{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<script type="text/javascript">' => '</script>' - ), - 1 => array( - '<script language="javascript">' => '</script>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/kixtart.php b/system/application/libraries/geshi/kixtart.php deleted file mode 100644 index 3d37f8ce6..000000000 --- a/system/application/libraries/geshi/kixtart.php +++ /dev/null @@ -1,329 +0,0 @@ -<?php -/************************************************************************************* - * kixtart.php - * -------- - * Author: Riley McArdle (riley@glyff.net) - * Copyright: (c) 2007 Riley McArdle (http://www.glyff.net/) - * Release Version: 1.0.8.6 - * Date Started: 2007/08/31 - * - * PHP language file for GeSHi. - * - * CHANGES - * ------- - * 2007/08/31 (1.0.7.22) - * - First Release - * - * TODO (updated 2007/08/31) - * ------------------------- - * * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'KiXtart', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'While', 'Loop', - 'Use', - 'Small', - 'Sleep', - 'Shell', - 'SetTime', - 'SetM', - 'SetL', - 'Set', - 'Select', 'Case', - 'Run', - 'Return', - 'Redim', - 'RD', - 'Quit', - 'Play', - 'Move', - 'MD', - 'Include', - 'If', 'Else', 'Endif', - 'GoTo', - 'GoSub', - 'Go', - 'Global', - 'GetS', - 'Get', - 'Function', 'Endfunction', - 'For', 'Next', - 'Each', - 'FlushKb', - 'Exit', - 'Do', 'Until', - 'Display', - 'Dim', - 'Del', - 'Debug', - 'Copy', - 'Cookie1', - 'Color', - 'CLS', - 'CD', - 'Call', - 'Break', - 'Big', - 'Beep', - ), - 2 => array( - '@Address', - '@Build', - '@Color', - '@Comment', - '@CPU', - '@CRLF', - '@CSD', - '@CurDir', - '@Date', - '@Day', - '@Domain', - '@DOS', - '@Error', - '@FullName', - '@HomeDir', - '@HomeDrive', - '@HomeShr', - '@HostName', - '@InWin', - '@IPaddressX', - '@KiX', - '@LanRoot', - '@LDomain', - '@LDrive', - '@LM', - '@LogonMode', - '@LongHomeDir', - '@LServer', - '@MaxPWAge', - '@MDayNo', - '@MHz', - '@MonthNo', - '@Month', - '@MSecs', - '@OnWoW64', - '@PID', - '@PrimaryGroup', - '@Priv', - '@ProductSuite', - '@ProductType', - '@PWAge', - '@RAS', - '@Result', - '@RServer', - '@ScriptDir', - '@ScriptExe', - '@ScriptName', - '@SError', - '@SID', - '@Site', - '@StartDir', - '@SysLang', - '@Ticks', - '@Time', - '@TsSession', - '@UserID', - '@UserLang', - '@WDayNo', - '@Wksta', - '@WUserID', - '@YDayNo', - '@Year', - ), - 3 => array( - 'WriteValue', - 'WriteProfileString', - 'WriteLine', - 'VarTypeName', - 'VarType', - 'Val', - 'UnloadHive', - 'UCase', - 'Ubound', - 'Trim', - 'Substr', - 'SRnd', - 'Split', - 'SidToName', - 'ShutDown', - 'ShowProgramGroup', - 'SetWallpaper', - 'SetTitle', - 'SetSystemState', - 'SetOption', - 'SetFocus', - 'SetFileAttr', - 'SetDefaultPrinter', - 'SetConsole', - 'SetAscii', - 'SendMessage', - 'SendKeys', - 'SaveKey', - 'RTrim', - 'Round', - 'Rnd', - 'Right', - 'RedirectOutput', - 'ReadValue', - 'ReadType', - 'ReadProfileString', - 'ReadLine', - 'Open', - 'MessageBox', - 'MemorySize', - 'LTrim', - 'Logoff', - 'LogEvent', - 'LoadKey', - 'LoadHive', - 'Len', - 'Left', - 'LCase', - 'KeyExist', - 'KbHit', - 'Join', - 'IsDeclared', - 'Int', - 'InStrRev', - 'InStr', - 'InGroup', - 'IIF', - 'GetObject', - 'GetFileVersion', - 'GetFileTime', - 'GetFileSize', - 'GetFileAttr', - 'GetDiskSpace', - 'FreeFileHandle', - 'FormatNumber', - 'Fix', - 'ExpandEnvironmentVars', - 'Exist', - 'Execute', - 'EnumValue', - 'EnumLocalGroup', - 'EnumKey', - 'EnumIpInfo', - 'EnumGroup', - 'Dir', - 'DelValue', - 'DelTree', - 'DelProgramItem', - 'DelProgramGroup', - 'DelPrinterConnection', - 'DelKey', - 'DecToHex', - 'CStr', - 'CreateObject', - 'CompareFileTimes', - 'Close', - 'ClearEventLog', - 'CInt', - 'Chr', - 'CDbl', - 'Box', - 'BackupEventLog', - 'At', - 'AScan', - 'Asc', - 'AddProgramItem', - 'AddProgramGroup', - 'AddPrinterConnection', - 'AddKey', - 'Abs' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '?', ':', '+', '-', '*', '/', '&', '|', '^', '~', '<', '>', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.kixtart.org/manual/Commands/{FNAMEL}.htm', - 2 => '', - 3 => 'http://www.kixtart.org/manual/Functions/{FNAMEL}.htm' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/klonec.php b/system/application/libraries/geshi/klonec.php deleted file mode 100644 index 24f32dbc3..000000000 --- a/system/application/libraries/geshi/klonec.php +++ /dev/null @@ -1,282 +0,0 @@ -<?php -/************************************************************************************* - * klonec.php - * -------- - * Author: AUGER Mickael - * Copyright: Synchronic - * Release Version: 1.0.8.6 - * Date Started: 2008/04/16 - * - * KLone with C language file for GeSHi. - * - * CHANGES - * ------- - * 2008/04/16 (1.0.8) - * - First Release - * - * TODO (updated 2008/04/16) - * ------------------------- - * A tester et a completer si besoin - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'KLone C', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),//#pour precede les include de C - 'COMMENT_MULTI' => array('/*' => '*/', '<!--' => '-->' ),//comentaires C et KLone suivi de ceux pour HTML - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array(//mots-cles C - 'if', 'return', 'while', 'case', 'class', 'continue', 'default', - 'do', 'else', 'for', 'switch', 'goto', - 'null', 'break', 'true', 'enum', 'extern', 'inline', 'false' - ), - 2 => array(//mots-cles KLone - 'out', 'request', 'response', - ), - 3 => array(//fonctions C usuelles - 'printf', 'malloc', 'fopen', 'fclose', 'free', 'fputs', 'fgets', 'feof', 'fwrite', - 'perror', 'ferror', 'qsort', 'stats', 'sscanf', 'scanf', - 'strdup', 'strcpy', 'strcmp', 'strncpy', 'strcasecmp', 'cat', 'strcat', 'strstr', - 'strlen', 'strtof', 'strtod', 'strtok', 'towlower', 'towupper', - 'cd', 'system', 'exit', 'exec', 'fork', 'vfork', 'kill', 'signal', 'syslog', - 'usleep', 'utime', 'wait', 'waitpid', 'waitid', - 'ceil', 'eval', 'round', 'floor', - 'atoi', 'atol', 'abs', 'cos', 'sin', 'tan', 'acos', 'asin', 'atan', 'exp', - 'time', 'ctime', 'localtime', 'asctime', 'gmtime', 'difftime', 'date' - ), - 4 => array(//fonctions KLone usuelles - 'request_get_cookies', 'request_get_cookie', 'request_get_args', 'request_get_arg', - 'request_io', 'request_get_uri', 'request_get_filename', 'request_get_query_string', 'request_get_path_info', - 'request_get_if_modified_since', 'request_get_http', 'request_get_client_request', - 'request_get_content_length', 'request_get_uploads', 'request_get_uploaded_file', - 'request_get_method', 'request_get_protocol', 'request_get_resolved_filename', - 'request_get_resolved_path_info', 'request_get_addr', 'request_get_peer_addr', - 'request_get_header', 'request_get_field', 'request_get_field_value', - 'response_set_content_encoding', 'response_disable_caching', 'response_enable_caching', - 'response_set_cookie', 'response_set_method', 'response_get_method', - 'response_print_header', 'response_set_field', 'response_del_field', - 'response_set_content_type', 'response_set_date', 'response_set_last_modified', - 'response_set_content_length', 'response_get_status', 'response_get_header', - 'response_io', 'response_redirect', 'response_set_status', - 'session_get_vars', 'session_get', 'session_set', 'session_age', 'session_clean', 'session_del', - 'io_type', 'io_pipe', 'io_dup', 'io_copy', 'io_seek', 'io_tell', 'io_close', - 'io_free', 'io_read', 'io_printf', 'io_flush', 'io_write', 'io_putc', 'io_getc', - 'io_get_until', 'io_gets', 'io_codec_add_head', 'io_codec_add_tail', - 'io_codecs_remove', 'io_name_set', 'io_name_get' - ), - 5 => array(//types C - 'auto', 'char', 'const', 'double', 'float', 'int', 'long', - 'register', 'short', 'signed', 'sizeof', 'static', 'string', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', - 'wchar_t', 'time_t', 'FILE' - ), - 6 => array(//mots-cles HTML - 'a', 'abbr', 'acronym', 'address', 'applet', - - 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', - - 'caption', 'center', 'cite', 'code', 'colgroup', 'col', - - 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', - - 'em', - - 'fieldset', 'font', 'form', 'frame', 'frameset', - - 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', - - 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', - - 'kbd', - - 'label', 'legend', 'link', 'li', - - 'map', 'meta', - - 'noframes', 'noscript', - - 'object', 'ol', 'optgroup', 'option', - - 'param', 'pre', 'p', - - 'q', - - 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', - - 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', - - 'ul', 'u', - - 'var', - ), - 7 => array(//autres mots-cles HTML - 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', - 'background', 'bgcolor', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', - 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', - 'enctype', - 'face', 'for', 'frame', 'frameborder', - 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', - 'id', 'ismap', - 'label', 'lang', 'language', 'link', 'longdesc', - 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', - 'name', 'nohref', 'noresize', 'noshade', 'nowrap', - 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', - 'profile', 'prompt', - 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', - 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', - 'tabindex', 'target', 'text', 'title', 'type', - 'usemap', - 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', - 'width' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<%=', '<%!', '<%', '%>' - ), - 0 => array( - '(', ')', '[', ']', '{', '}', - '!', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';', '^' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100; font-weight: bold;',//pour les mots-cles C - 2 => 'color: #000000; font-weight: bold;',//pour les mots-cles KLone - 3 => 'color: #6600FF;',//pour les fonctions C - 4 => 'color: #6600FF;',//pour les fonctions Klone - 5 => 'color: #0099FF; font-weight: bold;',//pour les types C - 6 => 'color: #990099; font-weight: bold;',//pour les mots-cles HTML - 7 => 'color: #000066;'//pour les autres mots-cles HTML - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;',//commentaire sur une ligne C et KLone - 2 => 'color: #339933;',//pour les #... en C - 'MULTI' => 'color: #808080; font-style: italic;'//commentaire sur plusieurs lignes C et KLone - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array( - 0 => 'background-color:#ffccff; font-weight: bold; color:#000000;', - 1 => '', - 2 => '', - 3 => 'color: #00bbdd; font-weight: bold;', - 4 => 'color: #ddbb00;', - 5 => 'color: #009900;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', - 4 => 'http://www.koanlogic.com/klone/api/html/globals.html', - 5 => '', - 6 => 'http://december.com/html/4/element/{FNAMEL}.html', - 7 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - //delimiteurs pour KLone - 0 => array( - '<%=' => '%>' - ), - 1 => array( - '<%!' => '%>' - ), - 2 => array( - '<%' => '%>' - ), - //delimiteur pour HTML - 3 => array( - '<!DOCTYPE' => '>' - ), - 4 => array( - '&' => ';' - ), - 5 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => true, - 2 => true, - 3 => false, - 4 => false, - 5 => true - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 6 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ), - 7 => array( - 'DISALLOWED_AFTER' => '(?=\s*=)', - ) - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/klonecpp.php b/system/application/libraries/geshi/klonecpp.php deleted file mode 100644 index ad2844c6d..000000000 --- a/system/application/libraries/geshi/klonecpp.php +++ /dev/null @@ -1,310 +0,0 @@ -<?php -/************************************************************************************* - * klonecpp.php - * -------- - * Author: AUGER Mickael - * Copyright: Synchronic - * Release Version: 1.0.8.6 - * Date Started: 2008/04/16 - * - * KLone with C++ language file for GeSHi. - * - * CHANGES - * ------- - * 2008/04/16 (1.0.8) - * - First Release - * - * TODO (updated 2008/04/16) - * ------------------------- - * A tester et a completer si besoin - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'KLone C++', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),//#pour precede les include de C - 'COMMENT_MULTI' => array('/*' => '*/', '<!--' => '-->' ),//comentaires C et KLone suivi de ceux pour HTML - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array(//mots-cles C++ - 'if', 'return', 'while', 'case', 'continue', 'default', - 'do', 'else', 'for', 'switch', 'goto', - 'break', 'true', 'enum', 'extern', 'inline', 'false', - 'errno', 'stdin', 'stdout', 'stderr', - 'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace', - 'try', 'catch', 'dynamic_cast', 'const_cast', 'reinterpret_cast', - 'static_cast', 'explicit', 'friend', 'typename', 'typeid', 'class', - 'EDOM', 'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG', - 'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG', - 'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP', - 'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP', - 'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN', - 'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN', - 'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT', - 'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR', - 'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam', 'NULL', - 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', - 'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC' - ), - 2 => array(//mots-cles KLone - 'out', 'request', 'response', - ), - 3 => array(//fonctions C++ usuelles - 'cin', 'cerr', 'clog', 'cout', 'delete', 'new', 'this', - 'printf', 'fprintf', 'snprintf', 'sprintf', 'assert', - 'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint', - 'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper', - 'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp', - 'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2', - 'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp', - 'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen', - 'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf', - 'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf', - 'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc', - 'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind', - 'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs', - 'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc', - 'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv', - 'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat', - 'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn', - 'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy', - 'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime', - 'asctime', 'ctime', 'gmtime', 'localtime', 'strftime' - ), - 4 => array(//fonctions KLone usuelles - 'request_get_cookies', 'request_get_cookie', 'request_get_args', 'request_get_arg', - 'request_io', 'request_get_uri', 'request_get_filename', 'request_get_query_string', 'request_get_path_info', - 'request_get_if_modified_since', 'request_get_http', 'request_get_client_request', - 'request_get_content_length', 'request_get_uploads', 'request_get_uploaded_file', - 'request_get_method', 'request_get_protocol', 'request_get_resolved_filename', - 'request_get_resolved_path_info', 'request_get_addr', 'request_get_peer_addr', - 'request_get_header', 'request_get_field', 'request_get_field_value', - 'response_set_content_encoding', 'response_disable_caching', 'response_enable_caching', - 'response_set_cookie', 'response_set_method', 'response_get_method', - 'response_print_header', 'response_set_field', 'response_del_field', - 'response_set_content_type', 'response_set_date', 'response_set_last_modified', - 'response_set_content_length', 'response_get_status', 'response_get_header', - 'response_io', 'response_redirect', 'response_set_status', - 'session_get_vars', 'session_get', 'session_set', 'session_age', 'session_clean', 'session_del', - 'io_type', 'io_pipe', 'io_dup', 'io_copy', 'io_seek', 'io_tell', 'io_close', - 'io_free', 'io_read', 'io_printf', 'io_flush', 'io_write', 'io_putc', 'io_getc', - 'io_get_until', 'io_gets', 'io_codec_add_head', 'io_codec_add_tail', - 'io_codecs_remove', 'io_name_set', 'io_name_get' - ), - 5 => array(//types C++ - 'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint', - 'register', 'short', 'shortint', 'signed', 'static', 'struct', - 'typedef', 'union', 'unsigned', 'void', 'volatile', 'jmp_buf', - 'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t', - 'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm', - 'string', 'wchar_t' - ), - 6 => array(//mots-cles HTML - 'a', 'abbr', 'acronym', 'address', 'applet', - - 'base', 'basefont', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'b', - - 'caption', 'center', 'cite', 'code', 'colgroup', 'col', - - 'dd', 'del', 'dfn', 'dir', 'div', 'dl', 'dt', - - 'em', - - 'fieldset', 'font', 'form', 'frame', 'frameset', - - 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'hr', 'html', - - 'iframe', 'ilayer', 'img', 'input', 'ins', 'isindex', 'i', - - 'kbd', - - 'label', 'legend', 'link', 'li', - - 'map', 'meta', - - 'noframes', 'noscript', - - 'object', 'ol', 'optgroup', 'option', - - 'param', 'pre', 'p', - - 'q', - - 'samp', 'script', 'select', 'small', 'span', 'strike', 'strong', 'style', 'sub', 'sup', 's', - - 'table', 'tbody', 'td', 'textarea', 'text', 'tfoot', 'thead', 'th', 'title', 'tr', 'tt', - - 'ul', 'u', - - 'var', - ), - 7 => array(//autres mots-cles HTML - 'abbr', 'accept-charset', 'accept', 'accesskey', 'action', 'align', 'alink', 'alt', 'archive', 'axis', - 'background', 'bgcolor', 'border', - 'cellpadding', 'cellspacing', 'char', 'charoff', 'charset', 'checked', 'cite', 'class', 'classid', 'clear', 'code', 'codebase', 'codetype', 'color', 'cols', 'colspan', 'compact', 'content', 'coords', - 'data', 'datetime', 'declare', 'defer', 'dir', 'disabled', - 'enctype', - 'face', 'for', 'frame', 'frameborder', - 'headers', 'height', 'href', 'hreflang', 'hspace', 'http-equiv', - 'id', 'ismap', - 'label', 'lang', 'language', 'link', 'longdesc', - 'marginheight', 'marginwidth', 'maxlength', 'media', 'method', 'multiple', - 'name', 'nohref', 'noresize', 'noshade', 'nowrap', - 'object', 'onblur', 'onchange', 'onclick', 'ondblclick', 'onfocus', 'onkeydown', 'onkeypress', 'onkeyup', 'onload', 'onmousedown', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onreset', 'onselect', 'onsubmit', 'onunload', - 'profile', 'prompt', - 'readonly', 'rel', 'rev', 'rowspan', 'rows', 'rules', - 'scheme', 'scope', 'scrolling', 'selected', 'shape', 'size', 'span', 'src', 'standby', 'start', 'style', 'summary', - 'tabindex', 'target', 'text', 'title', 'type', - 'usemap', - 'valign', 'value', 'valuetype', 'version', 'vlink', 'vspace', - 'width' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<%=', '<%!', '<%', '%>' - ), - 0 => array( - '(', ')', '[', ']', '{', '}', - '!', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';', '^' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100; font-weight: bold;',//pour les mots-cles C++ - 2 => 'color: #000000; font-weight: bold;',//pour les mots-cles KLone - 3 => 'color: #6600FF;',//pour les fonctions C++ - 4 => 'color: #6600FF;',//pour les fonctions Klone - 5 => 'color: #0099FF; font-weight: bold;',//pour les types C++ - 6 => 'color: #990099; font-weight: bold;',//pour les mots-cles HTML - 7 => 'color: #000066;'//pour les autres mots-cles HTML - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;',//commentaire sur une ligne C++ et KLone - 2 => 'color: #339933;',//pour les #... en C++ - 'MULTI' => 'color: #808080; font-style: italic;'//commentaire sur plusieurs lignes C++ et KLone - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array( - 0 => 'background-color:#ffccff; font-weight: bold; color:#000000;', - 1 => '', - 2 => '', - 3 => 'color: #00bbdd; font-weight: bold;', - 4 => 'color: #ddbb00;', - 5 => 'color: #009900;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAMEL}.html', - 4 => 'http://www.koanlogic.com/klone/api/html/globals.html', - 5 => '', - 6 => 'http://december.com/html/4/element/{FNAMEL}.html', - 7 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - //delimiteurs pour KLone - 0 => array( - '<%=' => '%>' - ), - 1 => array( - '<%!' => '%>' - ), - 2 => array( - '<%' => '%>' - ), - //delimiteur pour HTML - 3 => array( - '<!DOCTYPE' => '>' - ), - 4 => array( - '&' => ';' - ), - 5 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => true, - 2 => true, - 3 => false, - 4 => false, - 5 => true - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 6 => array( - 'DISALLOWED_BEFORE' => '(?<=<|<\/)', - 'DISALLOWED_AFTER' => '(?=\s|\/|>)', - ), - 7 => array( - 'DISALLOWED_AFTER' => '(?=\s*=)', - ) - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/latex.php b/system/application/libraries/geshi/latex.php deleted file mode 100644 index ae7f0b3c5..000000000 --- a/system/application/libraries/geshi/latex.php +++ /dev/null @@ -1,223 +0,0 @@ -<?php -/************************************************************************************* - * latex.php - * ----- - * Author: efi, Matthias Pospiech (matthias@pospiech.eu) - * Copyright: (c) 2006 efi, Matthias Pospiech (matthias@pospiech.eu), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2006/09/23 - * - * LaTeX language file for GeSHi. - * - * CHANGES - * ------- - * 2008/08/18 (1.0.8.1) - * - Changes in color and some additional command recognition - * - No special Color for Brackets, it is only distracting - * if color should be reintroduced it should be less bright - * - Math color changed from green to violett, since green is now used for comments - * - Comments are now colored and the only green. The reason for coloring the comments - * is that often important information is in the comments und was merely unvisible before. - * - New Color for [Options] - * - color for labels not specialised anymore. It makes sence in large documents but less in - * small web examples. - * - \@keyword introduced - * - Fixed \& escaped ampersand - * 2006/09/23 (1.0.0) - * - First Release - * - * TODO - * ------------------------- - * * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'LaTeX', - 'COMMENT_SINGLE' => array( - 1 => '%' - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'addlinespace','and','address','appendix','author','backmatter', - 'bfseries','bibitem','bigskip','blindtext','caption','captionabove', - 'captionbelow','cdot','centering','chapter','cite','color', - 'colorbox','date','dedication','def','definecolor','documentclass', - 'edef','else','email','emph','eqref','extratitle','fbox','fi', - 'flushleft','flushright','footnote','frac','frontmatter', - 'graphicspath','hfill','hline','hspace','huge','ifx','include', - 'includegraphics','infty','input','int','item','itemsep', - 'KOMAoption','KOMAoptions','label','LaTeX','left','let','limits', - 'listfiles','listoffigures','listoftables','lowertitleback', - 'mainmatter','makeatletter','makeatother','makebox','makeindex', - 'maketitle','mbox','mediumskip','newcommand','newenvironment', - 'newpage','nocite','nonumber','pagestyle','par','paragraph', - 'parbox','parident','parskip','partial','publishers','raggedleft', - 'raggedright','raisebox','ref','renewcommand','renewenvironment', - 'right','rule','section','setlength','sffamily','subject', - 'subparagraph','subsection','subsubsection','subtitle','sum', - 'table','tableofcontents','textbf','textcolor','textit', - 'textnormal','textsuperscript','texttt','textwidth','thanks','title', - 'titlehead','today','ttfamily','uppertitleback','urlstyle', - 'usepackage','vspace' - ) - ), - 'SYMBOLS' => array( - "&", "\\", "{", "}", "[", "]" - ), - 'CASE_SENSITIVE' => array( - 1 => true, - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #800000;', - ), - 'COMMENTS' => array( - 1 => 'color: #2C922C; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'BRACKETS' => array( - ), - 'STRINGS' => array( - 0 => 'color: #000000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #E02020; ' - ), - 'REGEXPS' => array( - 1 => 'color: #8020E0; font-weight: normal;', // Math inner - 2 => 'color: #C08020; font-weight: normal;', // [Option] - 3 => 'color: #8020E0; font-weight: normal;', // Maths - 4 => 'color: #800000; font-weight: normal;', // Structure: Labels - 5 => 'color: #00008B; font-weight: bold;', // Structure (\section{->x<-}) - 6 => 'color: #800000; font-weight: normal;', // Structure (\section) - 7 => 'color: #0000D0; font-weight: normal;', // Environment \end or \begin{->x<-} (brighter blue) - 8 => 'color: #C00000; font-weight: normal;', // Structure \end or \begin - 9 => 'color: #2020C0; font-weight: normal;', // {...} - 10 => 'color: #800000; font-weight: normal;', // \%, \& etc. - 11 => 'color: #E00000; font-weight: normal;', // \@keyword - 12 => 'color: #800000; font-weight: normal;', // \keyword - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.golatex.de/wiki/index.php?title=%5C{FNAME}', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // Math inner - 1 => array( - GESHI_SEARCH => "(\\\\begin\\{(equation|displaymath|eqnarray|subeqnarray|math|multline|gather|align|alignat|flalign)\\})(.*)(\\\\end\\{\\2\\})", - GESHI_REPLACE => '\3', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\4' - ), - // [options] - 2 => array( - GESHI_SEARCH => "(?<=\[).+(?=\])", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Math mode with $ ... $ - 3 => array( - GESHI_SEARCH => "\\$.+\\$", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Structure: Label - 4 => "\\\\(?:label|pageref|ref|cite)(?=[^a-zA-Z])", - // Structure: sections - 5 => array( - GESHI_SEARCH => "(\\\\(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph|addpart|addchap|addsec)\*?\\{)(.*)(?=\\})", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'U', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - // Structure: sections - 6 => "\\\\(?:part|chapter|(?:sub){0,2}section|(?:sub)?paragraph|addpart|addchap|addsec)\*?(?=[^a-zA-Z])", - // environment \begin{} and \end{} (i.e. the things inside the {}) - 7 => array( - GESHI_SEARCH => "(\\\\(?:begin|end)\\{)(.*)(?=\\})", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'U', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - // Structure \begin and \end - 8 => "\\\\(?:end|begin)(?=[^a-zA-Z])", - // {parameters} - 9 => array( - GESHI_SEARCH => "(?<=\\{)(?!<\|!REG3XP5!>).*(?=\\})", - GESHI_REPLACE => '\0', - GESHI_MODIFIERS => 'Us', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // \%, \& usw. - 10 => "\\\\(?:[_$%]|&)", - // \@keywords - 11 => "(?<!<\|!REG3XP[8]!>)\\\\@[a-zA-Z]+\*?", - // \keywords - 12 => "(?<!<\|!REG3XP[468]!>)\\\\[a-zA-Z]+\*?", - -// --------------------------------------------- - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '\\' - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<=\\\\)", - 'DISALLOWED_AFTER' => "(?![A-Za-z0-9])" - ), - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER, - 'BRACKETS' => GESHI_NEVER - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/lisp.php b/system/application/libraries/geshi/lisp.php deleted file mode 100644 index 3ca20fdc5..000000000 --- a/system/application/libraries/geshi/lisp.php +++ /dev/null @@ -1,144 +0,0 @@ -<?php -/************************************************************************************* - * lisp.php - * -------- - * Author: Roberto Rossi (rsoftware@altervista.org) - * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter - * Release Version: 1.0.8.6 - * Date Started: 2004/08/30 - * - * Generic Lisp language file for GeSHi. - * - * CHANGES - * ------- - * 2005/12/9 (1.0.2) - * - Added support for :keywords and ::access (Denis Mashkevich) - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/08/30 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Lisp', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(';|' => '|;'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'not','defun','princ','when', - 'eval','apply','funcall','quote','identity','function', - 'complement','backquote','lambda','set','setq','setf', - 'defmacro','gensym','make','symbol','intern', - 'name','value','plist','get', - 'getf','putprop','remprop','hash','array','aref', - 'car','cdr','caar','cadr','cdar','cddr','caaar','caadr','cadar', - 'caddr','cdaar','cdadr','cddar','cdddr','caaaar','caaadr', - 'caadar','caaddr','cadaar','cadadr','caddar','cadddr', - 'cdaaar','cdaadr','cdadar','cdaddr','cddaar','cddadr', - 'cdddar','cddddr','cons','list','append','reverse','last','nth', - 'nthcdr','member','assoc','subst','sublis','nsubst', - 'nsublis','remove','length', - 'mapc','mapcar','mapl','maplist','mapcan','mapcon','rplaca', - 'rplacd','nconc','delete','atom','symbolp','numberp', - 'boundp','null','listp','consp','minusp','zerop','plusp', - 'evenp','oddp','eq','eql','equal','cond','case','and','or', - 'let','l','if','prog','prog1','prog2','progn','go','return', - 'do','dolist','dotimes','catch','throw','error','cerror','break', - 'continue','errset','baktrace','evalhook','truncate','float', - 'rem','min','max','abs','sin','cos','tan','expt','exp','sqrt', - 'random','logand','logior','logxor','lognot','bignums','logeqv', - 'lognand','lognor','logorc2','logtest','logbitp','logcount', - 'integer','nil','parse-integer' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', - '!', '%', '^', '&', - ' + ',' - ',' * ',' / ', - '=','<','>', - '.',':',',',';', - '|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #555;', - 1 => 'color: #555;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - '::', ':' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'OOLANG' => array( - 'MATCH_AFTER' => '[a-zA-Z][a-zA-Z0-9_\-]*' - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/locobasic.php b/system/application/libraries/geshi/locobasic.php deleted file mode 100644 index e0cceea3d..000000000 --- a/system/application/libraries/geshi/locobasic.php +++ /dev/null @@ -1,130 +0,0 @@ -<?php -/************************************************************************************* - * locobasic.php - * ------------- - * Author: Nacho Cabanes - * Copyright: (c) 2009 Nacho Cabanes (http://www.nachocabanes.com) - * Release Version: 1.0.8.6 - * Date Started: 2009/03/22 - * - * Locomotive Basic (Amstrad CPC series) language file for GeSHi. - * - * More details at http://en.wikipedia.org/wiki/Locomotive_BASIC - * - * CHANGES - * ------- - * 2009/03/22 (1.0.8.3) - * - First Release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Locomotive Basic', - 'COMMENT_SINGLE' => array(1 => "'", 2 => 'REM'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - "AFTER", "AND", "AUTO", "BORDER", "BREAK", "CALL", "CAT", "CHAIN", - "CLEAR", "CLG", "CLS", "CLOSEIN", "CLOSEOUT", "CONT", "CURSOR", - "DATA", "DEF", "DEFINT", "DEFREAL", "DEFSTR", "DEG", "DELETE", - "DERR", "DI", "DIM", "DRAW", "DRAWR", "EDIT", "EI", "ELSE", "END", - "ENV", "ENT", "EOF", "ERASE", "ERL", "ERR", "ERROR", "EVERY", - "FILL", "FN", "FOR", "FRAME", "GOSUB", "GOTO", "GRAPHICS", "HIMEM", - "IF", "INK", "INPUT", "KEY", "LET", "LINE", "LIST", "LOAD", - "LOCATE", "MASK", "MEMORY", "MERGE", "MODE", "MOVE", "MOVER", "NEW", - "NEXT", "NOT", "ON", "OPENIN", "OPENOUT", "OR", "ORIGIN", "PAPER", - "PEEK", "PEN", "PLOT", "PLOTR", "POKE", "PRINT", "RAD", "RANDOMIZE", - "READ", "RELEASE", "REMAIN", "RENUM", "RESTORE", "RESUME", "RETURN", - "RUN", "SAVE", "SPEED", "SOUND", "SPC", "SQ", "STEP", "STOP", "SWAP", - "SYMBOL", "TAB", "TAG", "TAGOFF", "TEST", "TESTR", "TIME", "TO", - "THEN", "TRON", "TROFF", "USING", "WAIT", "WEND", "WHILE", "WIDTH", - "WINDOW", "WRITE", "XOR", "ZONE" - ), - 2 => array( - "ABS", "ASC", "ATN", "BIN", "CHR", "CINT", "COPYCHR", "COS", - "CREAL", "DEC", "FIX", "FRE", "EXP", "HEX", "INKEY", "INP", "INSTR", - "INT", "JOY", "LEFT", "LEN", "LOG", "LOG10", "LOWER", "MAX", "MID", - "MIN", "MOD", "OUT", "PI", "POS", "RIGHT", "RND", "ROUND", "SGN", - "SIN", "SPACE", "SQR", "STR", "STRING", "TAN", "UNT", "UPPER", - "VAL", "VPOS", "XPOS", "YPOS" - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000088; font-weight: bold;', - 2 => 'color: #AA00AA; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;' - ), - 'BRACKETS' => array( - 0 => 'color: #ff0000;' - ), - 'STRINGS' => array( - 0 => 'color: #008800;' - ), - 'NUMBERS' => array( - 0 => 'color: #0044ff;' - ), - 'METHODS' => array( - 0 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/logtalk.php b/system/application/libraries/geshi/logtalk.php deleted file mode 100644 index 3321e0de4..000000000 --- a/system/application/libraries/geshi/logtalk.php +++ /dev/null @@ -1,330 +0,0 @@ -<?php -/************************************************************************************* - * logtalk.php - * ----------- - * - * Author: Paulo Moura (pmoura@logtalk.org) - * Copyright: (c) 2009 Paulo Moura (http://logtalk.org/) - * Release Version: 1.0.8.6 - * Date Started: 2009/10/24 - * - * Logtalk language file for GeSHi. - * - * CHANGES - * ------- - * 2009/10/28 (1.0.0) - * - First Release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'Logtalk', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(2 => "/0'./sim"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'"), - 'HARDQUOTE' => array('"', '"'), - 'HARDESCAPE' => array(), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[\\\\abfnrtv\'\"?\n]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]+\\\\#", - //Octal Char Specs - 3 => "#\\\\[0-7]+\\\\#" - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_BIN_PREFIX_0B | - GESHI_NUMBER_OCT_PREFIX_0O | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - // Directives (with arguments) - 1 => array( - // file directives - 'encoding', 'ensure_loaded', - // flag directives - 'set_logtalk_flag', 'set_prolog_flag', - // entity opening directives - 'category', 'object', 'protocol', - // predicate scope directives - 'private', 'protected', 'public', - // conditional compilation directives - 'elif', 'if', - // entity directives - 'calls', 'initialization', 'op', 'uses', - // predicate directives - 'alias', 'discontiguous', 'dynamic', 'mode', 'info', 'meta_predicate', 'multifile', 'synchronized', - // module directives - 'export', 'module', 'reexport', 'use_module' - ), - // Directives (no arguments) - 2 => array( - // entity directives - 'dynamic', - // multi-threading directives - 'synchronized', 'threaded', - // entity closing directives - 'end_category', 'end_object', 'end_protocol', - // conditional compilation directives - 'else', 'endif' - ), - // Entity relations - 3 => array( - 'complements', 'extends', 'imports', 'implements','instantiates', 'specializes' - ), - // Built-in predicates (with arguments) - 4 => array( - // event handlers - 'after', 'before', - // execution-context methods - 'parameter', 'self', 'sender', 'this', - // predicate reflection - 'current_predicate', 'predicate_property', - // DCGs and term expansion - 'expand_goal', 'expand_term', 'goal_expansion', 'phrase', 'term_expansion', - // entity - 'abolish_category', 'abolish_object', 'abolish_protocol', - 'create_category', 'create_object', 'create_protocol', - 'current_category', 'current_object', 'current_protocol', - 'category_property', 'object_property', 'protocol_property', - // entity relations - 'complements_object', - 'extends_category', 'extends_object', 'extends_protocol', - 'implements_protocol', 'imports_category', - 'instantiates_class', 'specializes_class', - // events - 'abolish_events', 'current_event', 'define_events', - // flags - 'current_logtalk_flag', 'set_logtalk_flag', - 'current_prolog_flag', 'set_prolog_flag', - // compiling, loading, and library path - 'logtalk_compile', 'logtalk_library_path', 'logtalk_load', - // database - 'abolish', 'asserta', 'assertz', 'clause', 'retract', 'retractall', - // control - 'call', 'catch', 'once', 'throw', - // all solutions predicates - 'bagof', 'findall', 'forall', 'setof', - // multi-threading meta-predicates - 'threaded', - 'threaded_call', 'threaded_once', 'threaded_ignore', 'threaded_exit', 'threaded_peek', - 'threaded_wait', 'threaded_notify', - // term unification - 'unify_with_occurs_check', - // atomic term processing - 'atom_chars', 'atom_codes', 'atom_concat', 'atom_length', - 'number_chars', 'number_codes', - 'char_code', - // term creation and decomposition - 'arg', 'copy_term', 'functor', - // term testing - 'atom', 'atomic', 'compound', 'float', 'integer', 'nonvar', 'number', 'sub_atom', 'var', - // stream selection and control - 'current_input', 'current_output', 'set_input', 'set_output', - 'open', 'close', 'flush_output', 'stream_property', - 'at_end_of_stream', 'set_stream_position', - // character and byte input/output predicates - 'get_byte', 'get_char', 'get_code', - 'peek_byte', 'peek_char', 'peek_code', - 'put_byte', 'put_char', 'put_code', - 'nl', - // term input/output predicates - 'current_op', 'op', - 'write', 'writeq', 'write_canonical', 'write_term', - 'read', 'read_term', - 'char_conversion', 'current_char_conversion', - // - 'halt' - ), - // Built-in predicates (no arguments) - 5 => array( - // control - 'fail', 'repeat', 'true', - // character and byte input/output predicates - 'nl', - // implementation defined hooks functions - 'halt', - // arithemtic evaluation - 'is', - // stream selection and control - 'at_end_of_stream', 'flush_output' - ), - // Evaluable functors (with arguments) - 6 => array( - 'float_integer_part', 'float_fractional_part', - 'rem', 'mod', 'abs', 'sign', 'floor', 'truncate', 'round', 'ceiling', - 'cos', 'atan', 'exp', 'log', 'sin', 'sqrt' - ), - // Evaluable functors (no arguments) - 7 => array( - 'mod', 'rem' - ), - ), - 'SYMBOLS' => array( - 0 => array( - // external call - '{', '}' - ), - 1 => array( - // arithemtic comparison - '=:=', '=\=', '<', '=<', '>=', '>', - // term comparison - '<<', '>>', '/\\', '\\/', '\\', - // bitwise functors - '==', '\==', '@<', '@=<', '@>=', '@>', - // evaluable functors - '+', '-', '*', '/', '**', - // logic and control - '!', '\\+', ';', - // message sending operators - '::', '^^', ':', - // grammar rule and conditional functors - '-->', '->', - // mode operators - '@', '?', - // term to list predicate - '=..', - // unification - '=', '\\=' - ), - 2 => array( - // clause and directive functors - ':-' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #2e4dc9;', - 2 => 'color: #2e4dc9;', - 3 => 'color: #2e4dc9;', - 4 => 'color: #9d4f37;', - 5 => 'color: #9d4f37;', - 6 => 'color: #9d4f37;', - 7 => 'color: #9d4f37;' - ), - 'NUMBERS' => array( - 0 => 'color: #430000;' - ), - 'COMMENTS' => array( - 1 => 'color: #60a0b0; font-style: italic;', - 2 => 'color: #430000;', - 'MULTI' => 'color: #60a0b0; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #9f0000; font-weight: bold;', - 1 => 'color: #9f0000; font-weight: bold;', - 2 => 'color: #9f0000; font-weight: bold;', - 3 => 'color: #9f0000; font-weight: bold;', - 'HARD' => '', - ), - 'SYMBOLS' => array( - 0 => 'color: #666666;font-weight: bold;', - 1 => 'color: #666666;font-weight: bold;', - 2 => 'color: #000000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #9f0000;', - 'HARD' => 'color: #9f0000;' - ), - 'METHODS' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #848484;' - ), - 'SCRIPT' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '::' - ), - 'REGEXPS' => array( - // variables - 0 => '\b(?!(?:PIPE|SEMI|REG3XP\d*)[^a-zA-Z0-9_])[A-Z_][a-zA-Z0-9_]*(?![a-zA-Z0-9_])' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_BEFORE' => '(?<=:-\s)', - 'DISALLOWED_AFTER' => '(?=\()' - ), - 2 => array( - 'DISALLOWED_BEFORE' => '(?<=:-\s)', - 'DISALLOWED_AFTER' => '(?=\.)' - ), - 3 => array( - 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])', - 'DISALLOWED_AFTER' => '(?=\()' - ), - 4 => array( - 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])', - 'DISALLOWED_AFTER' => '(?=\()' - ), - 5 => array( - 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#>|^&\'"])', - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])' - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^&\'"])', - 'DISALLOWED_AFTER' => '(?=\()' - ), - 7 => array( - 'DISALLOWED_BEFORE' => '(?<![a-zA-Z0-9\$_\|\#;>|^&\'"])', - 'DISALLOWED_AFTER' => '(?![a-zA-Z0-9_\|%\\-&\'"])' - ) - ) - ), -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/lolcode.php b/system/application/libraries/geshi/lolcode.php deleted file mode 100644 index 26e486d3a..000000000 --- a/system/application/libraries/geshi/lolcode.php +++ /dev/null @@ -1,152 +0,0 @@ -<?php -/************************************************************************************* - * lolcode.php - * ---------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2009/10/31 - * - * LOLcode language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/31 (1.0.8.1) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ -$language_data = array ( - 'LANG_NAME' => 'LOLcode', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 1 => "/\bBTW\b.*$/im", - 2 => "/(^|\b)(?:OBTW\b.+?\bTLDR|LOL\b.+?\/LOL)(\b|$)/si" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - 1 => '/:[)>o":]/', - 2 => '/:\([\da-f]+\)/i', - 3 => '/:\{\w+\}/i', - 4 => '/:\[\w+\]/i', - ), - 'KEYWORDS' => array( - //Statements - 1 => array( - 'VISIBLE', 'HAI', 'KTHX', 'KTHXBYE', 'SMOOSH', 'GIMMEH', 'PLZ', - 'ON', 'INVISIBLE', 'R', 'ITZ', 'GTFO', 'COMPLAIN', 'GIMME', - - 'OPEN', 'FILE', 'I HAS A', 'AWSUM THX', 'O NOES', 'CAN', 'HAS', 'HAZ', - 'HOW DOES I', 'IF U SAY SO', 'FOUND YR', 'BORROW', 'OWN', 'ALONG', - 'WITH', 'WIT', 'LOOK', 'AT', 'AWSUM', 'THX' - ), - //Conditionals - 2 => array( - 'IZ', 'YARLY', 'NOWAI', 'WTF?', 'MEBBE', 'OMG', 'OMGWTF', - 'ORLY?', 'OF', 'NOPE', 'SO', 'IM', 'MAI', - - 'O RLY?', 'SUM', 'BOTH SAEM', 'DIFFRINT', 'BOTH', 'EITHER', 'WON', - 'DIFF', 'PRODUKT', 'QUOSHUNT', 'MOD', 'MKAY', 'OK', 'THING', - 'BIGNESS' - ), - //Repetition - 3 => array( - 'IN', 'OUTTA', 'LOOP', 'WHILE' - ), - //Operators \Math - 4 => array( - 'AN', 'AND', 'NOT', 'UP', 'YR', 'UPPIN', 'NERF', 'NERFIN', 'NERFZ', - 'SMASHING', 'UR', 'KINDA', 'LIKE', 'SAEM', 'BIG', 'SMALL', - 'BIGGR', 'SMALLR', 'BIGGER', 'SMALLER', 'GOOD', 'CUTE', 'THAN' - ) - ), - 'SYMBOLS' => array( - '.', ',', '?', - '!!' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #008000;', - 2 => 'color: #000080;', - 3 => 'color: #000080;', - 4 => 'color: #800000;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; style: italic;', - 2 => 'color: #666666; style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'SPACE_AS_WHITESPACE' => true - ) - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/lotusformulas.php b/system/application/libraries/geshi/lotusformulas.php deleted file mode 100644 index 67fd4fa0a..000000000 --- a/system/application/libraries/geshi/lotusformulas.php +++ /dev/null @@ -1,318 +0,0 @@ -<?php -/************************************************************************************* - * lotusformulas.php - * ------------------------ - * Author: Richard Civil (info@richardcivil.net) - * Copyright: (c) 2008 Richard Civil (info@richardcivil.net), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2008/04/12 - * - * @Formula/@Command language file for GeSHi. - * - * @Formula/@Command source: IBM Lotus Notes/Domino 8 Designer Help - * - * CHANGES - * ------- - * 2008/04/12 (1.0.7.22) - * - First Release - * - * TODO (updated 2008/04/12) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Lotus Notes @Formulas', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array('REM' => ';'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array ( - '[ZoomPreview]', '[WorkspaceStackReplicaIcons]', - '[WorkspaceProperties]', '[WindowWorkspace]', - '[WindowTile]', '[WindowRestore]', '[WindowNext]', - '[WindowMinimizeAll]', '[WindowMinimize]', '[WindowMaximizeAll]', - '[WindowMaximize]', '[WindowCascade]', '[ViewSwitchForm]', - '[ViewShowUnread]', '[ViewShowServerNames]', '[ViewShowSearchBar]', - '[ViewShowRuler]', '[ViewShowPageBreaks]', '[ViewShowOnlyUnread]', - '[ViewShowOnlySelected]', '[ViewShowOnlySearchResults]', - '[ViewShowOnlyCategories]', '[ViewShowObject]', - '[ViewShowFieldHelp]', '[ViewRenamePerson]', '[ViewRefreshUnread]', - '[ViewRefreshFields]', '[ViewNavigatorsNone]', - '[ViewNavigatorsFolders]', '[ViewMoveName]', '[ViewHorizScrollbar]', - '[ViewExpandWithChildren]', '[ViewExpandAll]', '[ViewExpand]', - '[ViewCollapseAll]', '[ViewCollapse]', '[ViewChange]', - '[ViewCertify]', '[ViewBesideFolders]', '[ViewBelowFolders]', - '[ViewArrangeIcons]', '[V3EditPrevField]', '[V3EditNextField]', - '[UserIDSwitch]', '[UserIDSetPassword]', '[UserIDMergeCopy]', - '[UserIDInfo]', '[UserIDEncryptionKeys]', '[UserIDCreateSafeCopy]', - '[UserIDClearPassword]', '[UserIDCertificates]', - '[ToolsUserLogoff]', '[ToolsSpellCheck]', '[ToolsSmartIcons]', - '[ToolsSetupUserSetup]', '[ToolsSetupPorts]', '[ToolsSetupMail]', - '[ToolsSetupLocation]', '[ToolsScanUnreadSelected]', - '[ToolsScanUnreadPreferred]', '[ToolsScanUnreadChoose]', - '[ToolsRunMacro]', '[ToolsRunBackgroundMacros]', '[ToolsReplicate]', - '[ToolsRefreshSelectedDocs]', '[ToolsRefreshAllDocs]', - '[ToolsMarkSelectedUnread]', '[ToolsMarkSelectedRead]', - '[ToolsMarkAllUnread]', '[ToolsMarkAllRead]', '[ToolsHangUp]', - '[ToolsCategorize]', '[ToolsCall]', '[TextUnderline]', - '[TextSpacingSingle]', '[TextSpacingOneAndaHalf]', - '[TextSpacingDouble]', '[TextSetFontSize]', '[TextSetFontFace]', - '[TextSetFontColor]', '[TextReduceFont]', '[TextPermanentPen]', - '[TextParagraphStyles]', '[TextParagraph]', '[TextOutdent]', - '[TextNumbers]', '[TextNormal]', '[TextItalic]', '[TextFont]', - '[TextEnlargeFont]', '[TextCycleSpacing]', '[TextBullet]', - '[TextBold]', '[TextAlignRight]', '[TextAlignNone]', - '[TextAlignLeft]', '[TextAlignFull]', '[TextAlignCenter]', - '[SwitchView]', '[SwitchForm]', '[StyleCycleKey]', - '[SmartIconsNextSet]', '[SmartIconsFloating]', '[ShowProperties]', - '[ShowHidePreviewPane]', '[ShowHideParentPreview]', - '[ShowHideLinkPreview]', '[ShowHideIMContactList]', - '[SetCurrentLocation]', '[SendInstantMessage]', - '[SectionRemoveHeader]', '[SectionProperties]', - '[SectionExpandAll]', '[SectionExpand]', '[SectionDefineEditors]', - '[SectionCollapseAll]', '[SectionCollapse]', '[RunScheduledAgents]', - '[RunAgent]', '[ReplicatorStop]', '[ReplicatorStart]', - '[ReplicatorSendReceiveMail]', '[ReplicatorSendMail]', - '[ReplicatorReplicateWithServer]', '[ReplicatorReplicateSelected]', - '[ReplicatorReplicateNext]', '[ReplicatorReplicateHigh]', - '[Replicator]', '[RenameDatabase]', '[RemoveFromFolder]', - '[RemoteDebugLotusScript]', '[ReloadWindow]', '[RefreshWindow]', - '[RefreshParentNote]', '[RefreshHideFormulas]', '[RefreshFrame]', - '[PublishDatabase]', '[PictureProperties]', '[PasteBitmapAsObject]', - '[PasteBitmapAsBackground]', '[OpenView]', '[OpenPage]', - '[OpenNavigator]', '[OpenInNewWindow]', '[OpenHelpDocument]', - '[OpenFrameset]', '[OpenDocument]', '[OpenCalendar]', - '[ObjectProperties]', '[ObjectOpen]', '[ObjectDisplayAs]', - '[NavPrevUnread]', '[NavPrevSelected]', '[NavPrevMain]', - '[NavPrev]', '[NavNextUnread]', '[NavNextSelected]', - '[NavNextMain]', '[NavNext]', '[NavigatorTest]', - '[NavigatorProperties]', '[NavigateToBacklink]', - '[NavigatePrevUnread]', '[NavigatePrevSelected]', - '[NavigatePrevMain]', '[NavigatePrevHighlight]', '[NavigatePrev]', - '[NavigateNextUnread]', '[NavigateNextSelected]', - '[NavigateNextMain]', '[NavigateNextHighlight]', '[NavigateNext]', - '[MoveToTrash]', '[MailSendPublicKey]', '[MailSendEncryptionKey]', - '[MailSendCertificateRequest]', '[MailSend]', '[MailScanUnread]', - '[MailRequestNewPublicKey]', '[MailRequestNewName]', - '[MailRequestCrossCert]', '[MailOpen]', '[MailForwardAsAttachment]', - '[MailForward]', '[MailComposeMemo]', '[MailAddress]', - '[LayoutProperties]', '[LayoutElementSendToBack]', - '[LayoutElementProperties]', '[LayoutElementBringToFront]', - '[LayoutAddText]', '[LayoutAddGraphic]', '[InsertSubform]', - '[HotspotProperties]', '[HotspotClear]', '[HelpUsingDatabase]', - '[HelpAboutNotes]', '[HelpAboutDatabase]', '[GoUpLevel]', - '[FormTestDocument]', '[FormActions]', '[FolderRename]', - '[FolderProperties]', '[FolderMove]', '[FolderExpandWithChildren]', - '[FolderExpandAll]', '[FolderExpand]', '[FolderDocuments]', - '[FolderCustomize]', '[FolderCollapse]', '[Folder]', - '[FindFreeTimeDialog]', '[FileSaveNewVersion]', '[FileSave]', - '[FilePrintSetup]', '[FilePrint]', '[FilePageSetup]', - '[FileOpenDBRepID]', '[FileOpenDatabase]', '[FileNewReplica]', - '[FileNewDatabase]', '[FileImport]', '[FileFullTextUpdate]', - '[FileFullTextInfo]', '[FileFullTextDelete]', - '[FileFullTextCreate]', '[FileExport]', '[FileExit]', - '[FileDatabaseUseServer]', '[FileDatabaseRemove]', - '[FileDatabaseInfo]', '[FileDatabaseDelete]', '[FileDatabaseCopy]', - '[FileDatabaseCompact]', '[FileDatabaseACL]', '[FileCloseWindow]', - '[ExitNotes]', '[Execute]', '[ExchangeUnreadMarks]', '[EmptyTrash]', - '[EditUp]', '[EditUntruncate]', '[EditUndo]', '[EditTop]', - '[EditTableInsertRowColumn]', '[EditTableFormat]', - '[EditTableDeleteRowColumn]', '[EditShowHideHiddenChars]', - '[EditSelectByDate]', '[EditSelectAll]', '[EditRight]', - '[EditRestoreDocument]', '[EditResizePicture]', - '[EditQuoteSelection]', '[EditProfileDocument]', '[EditProfile]', - '[EditPrevField]', '[EditPhoneNumbers]', '[EditPasteSpecial]', - '[EditPaste]', '[EditOpenLink]', '[EditNextField]', - '[EditMakeDocLink]', '[EditLocations]', '[EditLinks]', '[EditLeft]', - '[EditInsertText]', '[EditInsertTable]', '[EditInsertPopup]', - '[EditInsertPageBreak]', '[EditInsertObject]', - '[EditInsertFileAttachment]', '[EditInsertButton]', - '[EditIndentFirstLine]', '[EditIndent]', '[EditHorizScrollbar]', - '[EditHeaderFooter]', '[EditGotoField]', '[EditFindNext]', - '[EditFindInPreview]', '[EditFind]', '[EditEncryptionKeys]', - '[EditDown]', '[EditDocument]', '[EditDetach]', '[EditDeselectAll]', - '[EditCut]', '[EditCopy]', '[EditClear]', '[EditButton]', - '[EditBottom]', '[DiscoverFolders]', '[Directories]', - '[DialingRules]', '[DesignViewSelectFormula]', '[DesignViews]', - '[DesignViewNewColumn]', '[DesignViewFormFormula]', - '[DesignViewEditActions]', '[DesignViewColumnDef]', - '[DesignViewAttributes]', '[DesignViewAppendColumn]', - '[DesignSynopsis]', '[DesignSharedFields]', '[DesignReplace]', - '[DesignRefresh]', '[DesignMacros]', '[DesignIcon]', - '[DesignHelpUsingDocument]', '[DesignHelpAboutDocument]', - '[DesignFormWindowTitle]', '[DesignFormUseField]', - '[DesignFormShareField]', '[DesignForms]', '[DesignFormNewField]', - '[DesignFormFieldDef]', '[DesignFormAttributes]', - '[DesignDocumentInfo]', '[DebugLotusScript]', - '[DatabaseReplSettings]', '[DatabaseDelete]', '[CreateView]', - '[CreateTextbox]', '[CreateSubForm]', '[CreateSection]', - '[CreateRectangularHotspot]', '[CreateRectangle]', - '[CreatePolyline]', '[CreatePolygon]', '[CreateNavigator]', - '[CreateLayoutRegion]', '[CreateForm]', '[CreateFolder]', - '[CreateEllipse]', '[CreateControlledAccessSection]', - '[CreateAgent]', '[CreateAction]', '[CopySelectedAsTable]', - '[ComposeWithReference]', '[Compose]', '[CloseWindow]', '[Clear]', - '[ChooseFolders]', '[CalendarGoTo]', '[CalendarFormat]', - '[AttachmentView]', '[AttachmentProperties]', '[AttachmentLaunch]', - '[AttachmentDetachAll]', '[AgentTestRun]', '[AgentSetServerName]', - '[AgentRun]', '[AgentLog]', '[AgentEnableDisable]', '[AgentEdit]', - '[AdminTraceConnection]', '[AdminStatisticsConfig]', - '[AdminSendMailTrace]', '[AdminRemoteConsole]', - '[AdminRegisterUser]', '[AdminRegisterServer]', - '[AdminRegisterFromFile]', '[AdminOutgoingMail]', - '[AdminOpenUsersView]', '[AdminOpenStatistics]', - '[AdminOpenServersView]', '[AdminOpenServerLog]', - '[AdminOpenGroupsView]', '[AdminOpenCertLog]', '[AdminOpenCatalog]', - '[AdminOpenAddressBook]', '[AdminNewOrgUnit]', - '[AdminNewOrganization]', '[Administration]', - '[AdminIDFileSetPassword]', '[AdminIDFileExamine]', - '[AdminIDFileClearPassword]', '[AdminDatabaseQuotas]', - '[AdminDatabaseAnalysis]', '[AdminCrossCertifyKey]', - '[AdminCrossCertifyIDFile]', '[AdminCreateGroup]', '[AdminCertify]', - '[AddToIMContactList]', '[AddDatabaseRepID]', '[AddDatabase]', - '[AddBookmark]' - ), - 2 => array( - 'SELECT', 'FIELD', 'ENVIRONMENT', 'DEFAULT', '@Zone ', '@Yesterday', - '@Yes', '@Year', '@Word', '@Wide', '@While', '@Weekday', - '@WebDbName', '@ViewTitle', '@ViewShowThisUnread', '@Version', - '@VerifyPassword', '@ValidateInternetAddress', '@V4UserAccess', - '@V3UserName', '@V2If', '@UserRoles', '@UserPrivileges', - '@UserNamesList', '@UserNameLanguage', '@UserName', '@UserAccess', - '@UrlQueryString', '@URLOpen', '@URLHistory', '@URLGetHeader', - '@URLEncode', '@URLDecode', '@UpperCase', '@UpdateFormulaContext', - '@Unique', '@UndeleteDocument', '@Unavailable', '@True', '@Trim', - '@Transform', '@ToTime', '@ToNumber', '@Tomorrow', '@Today', - '@TimeZoneToText', '@TimeToTextInZone', '@TimeMerge', '@Time', - '@ThisValue', '@ThisName', '@TextToTime', '@TextToNumber', '@Text', - '@TemplateVersion', '@Tan', '@Sum', '@Success', '@Subset', - '@StatusBar', '@Sqrt', '@Soundex', '@Sort', '@Sin', '@Sign', - '@SetViewInfo', '@SetTargetFrame', '@SetProfileField', - '@SetHTTPHeader', '@SetField', '@SetEnvironment', '@SetDocField', - '@Set', '@ServerName', '@ServerAccess', '@Select', '@Second', - '@Round', '@RightBack', '@Right', '@Return', '@Responses', - '@ReplicaID', '@ReplaceSubstring', '@Replace', '@Repeat', - '@RegQueryValue', '@RefreshECL', '@Random', '@ProperCase', - '@Prompt', '@Power', '@PostedCommand', '@PolicyIsFieldLocked', - '@Platform', '@PickList', '@Pi', '@PasswordQuality', '@Password', - '@OrgDir', '@OptimizeMailAddress', '@OpenInNewWindow', '@Now', - '@Nothing', '@NoteID', '@No', '@NewLine', '@Narrow', '@NameLookup', - '@Name', '@Month', '@Modulo', '@Modified', '@Minute', '@Min', - '@MiddleBack', '@Middle', '@Member', '@Max', '@Matches', - '@MailSignPreference', '@MailSend', '@MailSavePreference', - '@MailEncryptSentPreference', '@MailEncryptSavedPreference', - '@MailDbName', '@LowerCase', '@Log', '@Locale', '@Ln', '@Like', - '@Length', '@LeftBack', '@Left', '@LDAPServer', '@LaunchApp', - '@LanguagePreference', '@Keywords', '@IsVirtualizedDirectory', - '@IsValid', '@IsUsingJavaElement', '@IsUnavailable', '@IsTime', - '@IsText', '@IsResponseDoc', '@IsNumber', '@IsNull', '@IsNotMember', - '@IsNewDoc', '@IsModalHelp', '@IsMember', '@IsExpandable', - '@IsError', '@IsEmbeddedInsideWCT', '@IsDocTruncated', - '@IsDocBeingSaved', '@IsDocBeingRecalculated', '@IsDocBeingMailed', - '@IsDocBeingLoaded', '@IsDocBeingEdited', '@IsDB2', '@IsCategory', - '@IsAvailable', '@IsAppInstalled', '@IsAgentEnabled', '@Integer', - '@InheritedDocumentUniqueID', '@Implode', '@IfError', '@If', - '@Hour', '@HashPassword', '@HardDeleteDocument', '@GetViewInfo', - '@GetProfileField', '@GetPortsList', '@GetIMContactListGroupNames', - '@GetHTTPHeader', '@GetFocusTable', '@GetField', '@GetDocField', - '@GetCurrentTimeZone', '@GetAddressBooks', '@FormLanguage', '@For', - '@FontList', '@FloatEq', '@FileDir', '@False', '@Failure', - '@Explode', '@Exp', '@Eval', '@Error', '@Environment', '@Ends', - '@EnableAlarms', '@Elements', '@EditUserECL', '@EditECL', - '@DoWhile', '@Domain', '@DocumentUniqueID', '@DocSiblings', - '@DocParentNumber', '@DocOmmittedLength', '@DocNumber', '@DocMark', - '@DocLock', '@DocLevel', '@DocLength', '@DocFields', - '@DocDescendants', '@DocChildren', '@Do', '@DialogBox', - '@DeleteField', '@DeleteDocument', '@DDETerminate', '@DDEPoke', - '@DDEInitiate', '@DDEExecute', '@DbTitle', '@DbName', '@DbManager', - '@DbLookup', '@DbExists', '@DbCommand', '@DbColumn', '@DB2Schema', - '@Day', '@Date', '@Created', '@Count', '@Cos', '@Contains', - '@ConfigFile', '@Compare', '@Command', '@ClientType', - '@CheckFormulaSyntax', '@CheckAlarms', '@Char', '@Certificate', - '@BusinessDays', '@BrowserInfo', '@Begins', '@Author', - '@Attachments', '@AttachmentNames', '@AttachmentModifiedTimes', - '@AttachmentLengths', '@ATan2', '@ATan', '@ASin', '@Ascii', - '@AllDescendants', '@AllChildren', '@All', '@AdminECLIsLocked', - '@Adjust', '@AddToFolder', '@ACos', '@Accessed', '@AbstractSimple', - '@Abstract', '@Abs' - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #800000;', - 2 => 'color: #0000FF;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #FF00FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF00FF;' - ), - 'METHODS' => array( - 1 => 'color: #0000AA;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2 - ); - -?> diff --git a/system/application/libraries/geshi/lotusscript.php b/system/application/libraries/geshi/lotusscript.php deleted file mode 100644 index 5c1d61f92..000000000 --- a/system/application/libraries/geshi/lotusscript.php +++ /dev/null @@ -1,191 +0,0 @@ -<?php -/** - * lotusscript.php - * ------------------------ - * Author: Richard Civil (info@richardcivil.net) - * Copyright: (c) 2008 Richard Civil (info@richardcivil.net), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2008/04/12 - * - * LotusScript language file for GeSHi. - * - * LotusScript source: IBM Lotus Notes/Domino 8 Designer Help - * - * CHANGES - * ------- - * 2008/04/12 (1.0.7.22) - * - First Release - * - * TODO (2008/04/12) - * ----------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'LotusScript', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array('%REM' => '%END REM'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"' , "|"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array ( - 'Yield', 'Year', 'Xor', 'Write', 'With', 'Width', 'While', 'Wend', - 'Weekday', 'VarType', 'Variant', 'Val', 'UString', 'UString$', - 'UseLSX', 'Use', 'Until', 'Unlock', 'Unicode', 'Uni', 'UChr', - 'UChr$', 'UCase', 'UCase$', 'UBound', 'TypeName', 'Type', 'TRUE', - 'Trim', 'Trim$', 'Today', 'To', 'TimeValue', 'TimeSerial', 'Timer', - 'TimeNumber', 'Time', 'Time$', 'Then', 'Text', 'Tan', 'Tab', 'Sub', - 'StrToken', 'StrToken$', 'StrRightBack', 'StrRightBack$', - 'StrRight', 'StrRight$', 'StrLeftBack', 'StrLeftBack$', 'StrLeft', - 'StrLeft$', 'String', 'String$', 'StrConv', 'StrCompare', 'StrComp', - 'Str', 'Str$', 'Stop', 'Step', 'Static', 'Sqr', 'Split', 'Spc', - 'Space', 'Space$', 'Sleep', 'Single', 'Sin', 'Shell', 'Shared', - 'Sgn', 'SetFileAttr', 'SetAttr', 'Set', 'SendKeys', 'Select', - 'Seek', 'Second', 'RTrim', 'RTrim$', 'RSet', 'Round', 'Rnd', - 'RmDir', 'RightC', 'RightC$', 'RightBP', 'RightBP$', 'RightB', - 'RightB$', 'Right', 'Right$', 'Return', 'Resume', 'Reset', - 'Replace', 'Remove', 'Rem', 'ReDim', 'Read', 'Randomize', - 'Random', 'Put', 'Public', 'Property', 'Private', 'Print', - 'Preserve', 'Pitch', 'PI', 'Output', 'Or', 'Option', 'Open', 'On', - 'Oct', 'Oct$', 'NULL', 'Now', 'NOTHING', 'Not', 'NoPitch', 'NoCase', - 'Next', 'New', 'Name', 'MsgBox', 'Month', 'Mod', 'MkDir', 'Minute', - 'MidC', 'MidC$', 'MidBP', 'MidBP$', 'MidB', 'MidB$', 'Mid', 'Mid$', - 'MessageBox', 'Me', 'LTrim', 'LTrim$', 'LSServer', 'LSI_Info', - 'LSet', 'Loop', 'Long', 'Log', 'LOF', 'Lock', 'LOC', 'LMBCS', - 'ListTag', 'List', 'Line', 'Like', 'Lib', 'Let', 'LenC', 'LenBP', - 'LenB', 'Len', 'LeftC', 'LeftC$', 'LeftBP', 'LeftBP$', 'LeftB', - 'LeftB$', 'Left', 'Left$', 'LCase', 'LCase$', 'LBound', 'Kill', - 'Join', 'IsUnknown', 'IsScalar', 'IsObject', 'IsNumeric', 'IsNull', - 'IsList', 'IsEmpty', 'IsElement', 'IsDate', 'IsArray', 'IsA', 'Is', - 'Integer', 'Int', 'InStrC', 'InStrBP', 'InStrB', 'InStr', 'InputBP', - 'InputBP$', 'InputBox', 'InputBox$', 'InputB', 'InputB$', 'Input', - 'Input$', 'In', 'IMSetMode', 'Implode', 'Implode$', 'Imp', - 'IMEStatus', 'If', 'Hour', 'Hex', 'Hex$', 'Goto', 'GoSub', - 'GetThreadInfo', 'GetFileAttr', 'GetAttr', 'Get', 'Function', - 'FullTrim', 'From', 'FreeFile', 'Fraction', 'Format', 'Format$', - 'ForAll', 'For', 'Fix', 'FileLen', 'FileDateTime', 'FileCopy', - 'FileAttr', 'FALSE', 'Explicit', 'Exp', 'Exit', 'Execute', 'Event', - 'Evaluate', 'Error', 'Error$', 'Err', 'Erl', 'Erase', 'Eqv', 'EOF', - 'Environ', 'Environ$', 'End', 'ElseIf', 'Else', 'Double', 'DoEvents', - 'Do', 'Dir', 'Dir$', 'Dim', 'DestroyLock', 'Delete', 'DefVar', - 'DefStr', 'DefSng', 'DefLng', 'DefInt', 'DefDbl', 'DefCur', - 'DefByte', 'DefBool', 'Declare', 'Day', 'DateValue', 'DateSerial', - 'DateNumber', 'Date', 'Date$', 'DataType', 'CVDate', 'CVar', - 'Currency', 'CurDrive', 'CurDrive$', 'CurDir', 'CurDir$', 'CStr', - 'CSng', 'CreateLock', 'Cos', 'Const', 'Compare', 'Command', - 'Command$', 'CodeUnlock', 'CodeLockCheck', 'CodeLock', 'Close', - 'CLng', 'Class', 'CInt', 'Chr', 'Chr$', 'ChDrive', 'ChDir', 'CDbl', - 'CDat', 'CCur', 'CByte', 'CBool', 'Case', 'Call', 'ByVal', 'Byte', - 'Boolean', 'Bind', 'Binary', 'Bin', 'Bin$', 'Beep', 'Base', 'Atn2', - 'Atn', 'ASin', 'Asc', 'As', 'ArrayUnique', 'ArrayReplace', - 'ArrayGetIndex', 'ArrayAppend', 'Append', 'AppActivate', 'Any', - 'And', 'Alias', 'ActivateApp', 'ACos', 'Access', 'Abs', '%Include', - '%If', '%END', '%ElseIf', '%Else' - ), - 2 => array ( - 'NotesXSLTransformer', 'NotesXMLProcessor', 'NotesViewNavigator', - 'NotesViewEntryCollection', 'NotesViewEntry', 'NotesViewColumn', - 'NotesView', 'NotesUIWorkspace', 'NotesUIView', 'NotesUIScheduler', - 'NotesUIDocument', 'NotesUIDatabase', 'NotesTimer', 'NotesStream', - 'NotesSession', 'NotesSAXParser', 'NotesSAXException', - 'NotesSAXAttributeList', 'NotesRichTextTable', 'NotesRichTextTab', - 'NotesRichTextStyle', 'NotesRichTextSection', 'NotesRichTextRange', - 'NotesRichTextParagraphStyle', 'NotesRichTextNavigator', - 'NotesRichTextItem', 'NotesRichTextDocLink', - 'NotesReplicationEntry', 'NotesReplication', 'NotesRegistration', - 'NotesOutlineEntry', 'NotesOutline', 'NotesNoteCollection', - 'NotesNewsLetter', 'NotesName', 'NotesMIMEHeader', - 'NotesMIMEEntity', 'NotesLog', 'NotesItem', 'NotesInternational', - 'NotesForm', 'NotesEmbeddedObject', 'NotesDXLImporter', - 'NotesDXLExporter', 'NotesDOMXMLDeclNode', 'NotesDOMTextNode', - 'NotesDOMProcessingInstructionNode', 'NotesDOMParser', - 'NotesDOMNotationNode', 'NotesDOMNodeList', 'NotesDOMNode', - 'NotesDOMNamedNodeMap', 'NotesDOMEntityReferenceNode', - 'NotesDOMEntityNode', 'NotesDOMElementNode', - 'NotesDOMDocumentTypeNode', 'NotesDOMDocumentNode', - 'NotesDOMDocumentFragmentNode', 'NotesDOMCommentNode', - 'NotesDOMCharacterDataNote', 'NotesDOMCDATASectionNode', - 'NotesDOMAttributeNode', 'NotesDocumentCollection', 'NotesDocument', - 'NotesDbDirectory', 'NotesDateTime', 'NotesDateRange', - 'NotesDatabase', 'NotesColorObject', 'NotesAgent', - 'NotesAdministrationProcess', 'NotesACLEntry', 'NotesACL', - 'Navigator', 'Field', 'Button' - ) - ) , - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000EE;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #000000;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF00FF;' - ), - 'METHODS' => array( - 1 => 'color: #0000AA;' - ), - 'SYMBOLS' => array( - 0 => 'color: #006600;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 2 -); - -?> diff --git a/system/application/libraries/geshi/lscript.php b/system/application/libraries/geshi/lscript.php deleted file mode 100644 index 33cd0163d..000000000 --- a/system/application/libraries/geshi/lscript.php +++ /dev/null @@ -1,387 +0,0 @@ -<?php -/************************************************************************************* - * lscript.php - * --------- - * Author: Arendedwinter (admin@arendedwinter.com) - * Copyright: (c) 2008 Beau McGuigan (http://www.arendedwinter.com) - * Release Version: 1.0.8.6 - * Date Started: 15/11/2008 - * - * Lightwave Script language file for GeSHi. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'LScript', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - //Yes, I'm aware these are out of order, - //I had to rearrange and couldn't be bothered changing the numbers... - 7 => array( - '@data', '@define', '@else', '@end', '@fpdepth', '@if', '@include', - '@insert', '@library', '@localipc', '@name', '@save', '@script', - '@sequence', '@version', '@warnings' - ), - 1 => array( - 'break', 'case', 'continue', 'else', 'end', 'false', 'for', - 'foreach', 'if', 'return', 'switch', 'true', 'while', - ), - 3 => array( - 'active', 'alertlevel', 'alpha', 'alphaprefix', 'animfilename', 'autokeycreate', - 'backdroptype', 'blue', 'boxthreshold', 'button', - 'channelsvisible', 'childrenvisible', 'compfg', 'compbg', 'compfgalpha', - 'coneangles', 'cosine', 'count', 'ctl', 'curFilename', 'curFrame', - 'currenttime', 'curTime', 'curType', - 'depth', 'diffshade', 'diffuse', 'dimensions', 'displayopts', 'dynamicupdate', - 'end', 'eta', - 'filename', 'flags', 'fogtype', 'fps', 'frame', 'frameend', 'frameheight', - 'framestart', 'framestep', 'framewidth', - 'generalopts', 'genus', 'geometry', 'gNorm', 'goal', 'green', - 'h', 'hasAlpha', 'height', - 'id', 'innerlimit', 'isColor', - 'keyCount', 'keys', - 'limiteregion', 'locked', 'luminous', - 'maxsamplesperpixel', 'minsamplesperpixel', 'mirror', 'motionx', 'motiony', - 'name', 'newFilename', 'newFrame', 'newTime', 'newType', 'null', 'numthreads', - 'objID', 'oPos', 'outerlimit', 'oXfrm', - 'parent', 'pixel', 'pixelaspect', 'point', 'points', 'pointcount', 'polNum', - 'polycount', 'polygon', 'polygons', 'postBehavior', 'preBehavior', 'previewend', - 'previewstart', 'previewstep', - 'range', 'rawblue', 'rawgreen', 'rawred', 'rayLength', 'raySource', 'red', - 'reflectblue', 'reflectgreen', 'reflectred', 'recursiondepth', 'renderend', - 'renderopts', 'renderstart', 'renderstep', 'rendertype', 'restlength', - 'rgbprefix', 'roughness', - 'selected', 'setColor', 'setPattern', 'shading', 'shadow', 'shadows', - 'shadowtype', 'size', 'source', 'special', 'specshade', 'specular', - 'spotsize', 'start', 'sx', 'sy', 'sz', - 'target', 'totallayers', 'totalpoints', 'totalpolygons', 'trans', 'transparency', - 'type', - 'value', 'view', 'visible', 'visibility', - 'w', 'width', 'wNorm', 'wPos', 'wXfrm', - 'x', 'xoffset', - 'y', 'yoffset', - 'z' - ), - 4 => array( - 'addLayer', 'addParticle', 'alphaspot', 'ambient', 'asAsc', 'asBin', - 'asInt', 'asNum', 'asStr', 'asVec', 'attach', 'axislocks', - 'backdropColor', 'backdropRay', 'backdropSqueeze', 'bone', 'blurLength', - 'close', 'color', 'contains', 'copy', 'createKey', - 'deleteKey', 'detach', 'drawCircle', 'drawLine', 'drawPoint', 'drawText', - 'drawTriangle', - 'edit', 'eof', 'event', - 'firstChannel', 'firstLayer', 'firstSelect', 'focalLength', 'fogColor', - 'fogMaxAmount', 'fogMaxDist', 'fogMinAmount', 'fogMinDist', - 'fovAngles', 'fStop', 'firstChild', 'focalDistance', - 'get', 'getChannelGroup', 'getEnvelope', 'getForward', 'getKeyBias', - 'getKeyContinuity', 'getKeyCurve', 'getKeyHermite', 'getKeyTension', - 'getKeyTime', 'getKeyValue', 'getParticle', 'getPivot', 'getPosition', - 'getRight', 'getRotation', 'getSelect', 'getScaling', 'getTag', 'getTexture', - 'getUp', 'getValue', 'getWorldPosition', 'getWorldForward', 'getWorldRight', - 'getWorldRotation', 'getWorldUp', 'globalBlur', 'globalMask', 'globalResolution', - 'hasCCEnd', 'hasCCStart', - 'illuminate', 'indexOf', 'isAscii', 'isAlnum', 'isAlpha', 'isBone', - 'isCamera', 'isChannel', 'isChannelGroup', 'isCntrl', 'isCurve', 'isDigit', - 'isEnvelope', 'isImage', 'isInt', 'isLight', 'isLower', 'isMapped', 'isMesh', - 'isNil', 'isNum', 'IsOpen', 'isOriginal', 'isPrint', 'isPunct', 'isScene', - 'isSpace', 'isStr', 'isUpper', 'isValid', 'isVMap', 'isVec', 'isXDigit', - 'keyExists', - 'layer', 'layerName', 'layerVisible', 'limits', 'line', 'linecount', 'load', 'luma', - 'next', 'nextLayer', 'nextSelect', 'nextChannel', 'nextChild', 'nl', - 'offset', 'open', - 'pack', 'param', 'parse', 'paste', 'persist', 'polygonCount', 'position', - 'rayCast', 'rayTrace', 'read', 'readByte', 'readInt', 'readNumber', - 'readDouble', 'readShort', 'readString', 'readVector', 'reduce', - 'remParticle', 'renderCamera', 'reopen', 'replace', 'reset', 'restParam', - 'rewind', 'rgb', 'rgbambient', 'rgbcolor', 'rgbspot', - 'save', 'schemaPosition', 'select', 'set', 'setChannelGroup', 'setKeyBias', - 'setKeyContinuity', 'setKeyCurve', - 'setKeyHermite', 'setKeyTension', 'setKeyValue', 'setParticle', 'setPoints', - 'setTag', 'setValue', 'server', 'serverFlags', 'sortA', 'sortD', 'surface', - 'trunc', - 'write', 'writeln', 'writeByte', 'writeData', 'writeNumber', 'writeDouble', - 'writeShort', 'writeString', 'writeVector', - 'vertex', 'vertexCount', - 'zoomFactor' - ), - 2 => array( - 'abs', 'acos', 'angle', 'append', 'ascii', 'asin', 'atan', - 'binary', - 'ceil', 'center', 'chdir', 'clearimage', 'cloned', 'comringattach', - 'comringdecode', 'comringdetach', 'comringencode', 'comringmsg', 'cos', - 'cosh', 'cot', 'cross2d', 'cross3d', 'csc', 'ctlstring', 'ctlinteger', - 'ctlnumber', 'ctlvector', 'ctldistance', 'ctlchoice', 'ctltext', - 'ctlcolor', 'ctlsurface', 'ctlfont', 'ctlpopup', 'ctledit', 'ctlpercent', - 'ctlangle', 'ctlrgb', 'ctlhsv', 'ctlcheckbox', 'ctlstate', 'ctlfilename', - 'ctlbutton', 'ctllistbox', 'ctlslider', 'ctlminislider', 'ctlsep', 'ctlimage', - 'ctltab', 'ctlallitems', 'ctlmeshitems', 'ctlcameraitems', 'ctllightitems', - 'ctlboneitems', 'ctlimageitems', 'ctlchannel', 'ctlviewport', 'Control_Management', - 'ctlpage', 'ctlgroup', 'ctlposition', 'ctlactive', 'ctlvisible', 'ctlalign', - 'ctlrefresh', 'ctlmenu', 'ctlinfo', - 'date', 'debug', 'deg', 'dot2d', 'dot3d', 'drawborder', 'drawbox', 'drawcircle', - 'drawelipse', 'drawerase', 'drawfillcircle', 'drawfillelipse', 'drawline', - 'drawpixel', 'drawtext', 'drawtextwidth', 'drawtextheight', 'dump', - 'error', 'exp', 'expose', 'extent', - 'fac', 'filecrc', 'filedelete', 'fileexists', 'filefind', 'filerename', - 'filestat', 'floor', 'format', 'frac', 'fullpath', - 'gamma', 'getdir', 'getenv', 'getfile', 'getfirstitem', 'getsep', 'getvalue', - 'globalrecall', 'globalstore', - 'hash', 'hex', 'hostBuild', 'hostVersion', 'hypot', - 'info', 'integer', - 'library', 'licenseId', 'lscriptVersion', 'load', 'loadimage', 'log', 'log10', - 'matchdirs', 'matchfiles', 'max', 'min', 'mkdir', 'mod', 'monend', 'moninit', 'monstep', - 'nil', 'normalize', 'number', - 'octal', 'overlayglyph', - 'parse', 'platform', 'pow', - 'rad', 'random', 'randu', 'range', 'read', 'readdouble', 'readInt', 'readNumber', - 'readShort', 'recall', 'regexp', 'reqabort', 'reqbegin', 'reqend', 'reqisopen', - 'reqkeyboard', 'reqopen', 'reqposition', 'reqpost', 'reqredraw', - 'reqsize', 'reqresize', 'requpdate', 'rmdir', 'round', 'runningUnder', - 'save', 'sec', 'select', 'selector', 'setdesc', 'setvalue', 'sin', 'sinh', 'size', - 'sizeof', 'sleep', 'spawn', 'split', 'sqrt', 'step', 'store', 'string', 'strleft', - 'strlower', 'strright', 'strsub', 'strupper', - 'tan', 'tanh', 'targetobject', 'terminate', 'text', 'time', - 'wait', 'warn', 'when', 'write', 'writeDouble', 'writeInt', 'writeNumber', 'writeShort', - 'var', 'vector', 'visitnodes', 'vmag', - ), - 5 => array( - 'addcurve', 'addpoint', 'addpolygon', 'addquad', 'addtriangle', 'alignpols', - 'autoflex', 'axisdrill', - 'bend', 'bevel', 'boolean', 'boundingbox', - 'changepart', 'changesurface', 'close', 'closeall', 'cmdseq', 'copy', 'copysurface', - 'createsurface', 'cut', - 'deformregion', 'delete', - 'editbegin', 'editend', 'exit', 'extrude', - 'fixedflex', 'flip', 'fontclear', 'fontcount', 'fontindex', 'fontload', - 'fontname', 'fracsubdivide', 'freezecurves', - 'getdefaultsurface', - 'jitter', - 'lathe', 'layerName', 'layerVisible', 'lyrbg', 'lyrdata', 'lyrempty', 'lyremptybg', - 'lyremptyfg', 'lyrfg', 'lyrsetbg', 'lyrsetfg', 'lyrswap', - 'magnet', 'make4patch', 'makeball', 'makebox', 'makecone', 'makedisc', - 'maketesball', 'maketext', 'mergepoints', 'mergepols', 'meshedit', 'mirror', - 'morphpols', 'move', - 'new', 'nextsurface', - 'paste', 'pathclone', 'pathextrude', 'pixel', 'pointcount', 'pointinfo', - 'pointmove', 'pole', 'polycount', 'polyinfo', 'polynormal', 'polypointcount', - 'polypoints', 'polysurface', - 'quantize', - 'railclone', 'railextrude', 'redo', 'removepols', 'rempoint', 'rempoly', - 'renamesurface', 'revert', 'rotate', - 'scale', 'selhide', 'selinvert', 'selmode', 'selpoint', 'selpolygon', 'selunhide', - 'selectvmap', 'setlayername', 'setobject', 'setpivot', 'setsurface', 'shapebevel', - 'shear', 'skinpols', 'smooth', 'smoothcurves', 'smoothscale', 'smoothshift', - 'soliddrill', 'splitpols', 'subdivide', 'swaphidden', - 'taper', 'triple', 'toggleCCend', 'toggleCCstart', 'togglepatches', 'twist', - 'undo', 'undogroupend', 'undogroupbegin', 'unifypols', 'unweld', - 'vortex', - 'weldaverage', 'weldpoints' - ), - 6 => array( - 'About', 'AboutOpenGL', 'AdaptiveSampling', 'AdaptiveThreshold', - 'AddAreaLight', 'AddBone', 'AddButton', 'AddCamera', 'AddChildBone', - 'AddDistantLight', 'AddEnvelope', 'AddLinearLight', 'AddNull', - 'AddPartigon', 'AddPlugins', 'AddPointLight', 'AddPosition', - 'AddRotation', 'AddScale', 'AddSpotlight', 'AddToSelection', - 'AdjustRegionTool', 'AffectCaustics', 'AffectDiffuse', 'AffectOpenGL', - 'AffectSpecular', 'AlertLevel', 'AmbientColor', 'AmbientIntensity', - 'Antialiasing', 'ApertureHeight', 'ApplyServer', 'AreaLight', - 'AutoConfirm', 'AutoFrameAdvance', 'AutoKey', - 'BackdropColor', 'BackView', 'BController', 'BLimits', 'BLurLength', 'BoneActive', - 'BoneFalloffType', 'BoneJointComp', 'BoneJointCompAmounts', 'BoneJointCompParent', - 'BoneLimitedRange', 'BoneMaxRange', 'BoneMinRange', 'BoneMuscleFlex', - 'BoneMuscleFlexAmounts', 'BoneMuscleFlexParent', 'BoneNormalization', - 'BoneRestLength', 'BoneRestPosition', 'BoneRestRotation', 'BoneSource', - 'BoneStrength', 'BoneStrengthMultiply', 'BoneWeightMapName', 'BoneWeightMapOnly', - 'BoneWeightShade', 'BoneXRay', 'BottomView', 'BoundingBoxThreshold', - 'BStiffness', - 'CacheCaustics', 'CacheRadiosity', 'CacheShadowMap', - 'CameraMask', 'CameraView', 'CameraZoomTool', 'CastShadow', 'CausticIntensity', - 'CenterItem', 'CenterMouse', 'ChangeTool', 'ClearAllBones', 'ClearAllCameras', - 'ClearAllLights', 'ClearAllObjects', 'ClearAudio', 'ClearScene', 'ClearSelected', - 'Clone', 'CommandHistory', 'CommandInput', 'Compositing', 'ConeAngleTool', - 'ContentDirectory', 'CreateKey', - 'DecreaseGrid', 'DeleteKey', 'DepthBufferAA', 'DepthOfField', 'DisplayOptions', - 'DistantLight', 'DrawAntialiasing', 'DrawBones', 'DrawChildBones', 'DynamicUpdate', - 'EditBones', 'EditCameras', 'EditKeys', 'EditLights', - 'EditMenus', 'EditObjects', 'EditPlugins', 'EditServer', 'EnableCaustics', - 'EnableDeformations', 'EnableIK', 'EnableLensFlares', 'EnableRadiosity', 'EnableServer', - 'EnableShadowMaps', 'EnableVIPER', 'EnableVolumetricLights', 'EnableXH', - 'EnableYP', 'EnableZB', 'EnahancedAA', 'ExcludeLight', 'ExcludeObject', - 'EyeSeparation', - 'FasterBones', 'FirstFrame', 'FirstItem', 'FitAll', 'FitSelected', - 'FlareIntensity', 'FlareOptions', 'FocalDistance', 'FogColor', 'FogMaxAmount', - 'FogMaxDistance', 'FogMinAmount', 'FogMinDistance', 'FogType', 'FractionalFrames', - 'FrameSize', 'FramesPerSecond', 'FrameStep', 'FreePreview', 'FrontView', 'FullTimeIK', - 'GeneralOptions', 'Generics', 'GlobalApertureHeight', 'GlobalBlurLength', - 'GlobalFrameSize', 'GlobalIllumination', 'GlobalMaskPosition', 'GlobalMotionBlur', - 'GlobalParticleBlur', 'GlobalPixelAspect', 'GlobalResolutionMulitplier', 'GoalItem', - 'GoalStrength', 'GoToFrame', 'GradientBackdrop', 'GraphEditor', 'GridSize', 'GroundColor', - 'HController', 'HideToolbar', 'HideWindows', 'HLimits', 'HStiffness', - 'ImageEditor', 'ImageProcessing', 'IncludeLight', 'IncludeObject', 'IncreaseGrid', - 'IndirectBounces', 'Item_SetWindowPos', 'ItemActive', 'ItemColor', 'ItemLock', - 'ItemProperties', 'ItemVisibilty', - 'KeepGoalWithinReach', - 'LastFrame', 'LastItem', 'LastPluginInterface', 'Layout_SetWindowPos', - 'Layout_SetWindowSize', 'LeftView', 'LensFlare', 'LensFStop', 'LightColor', - 'LightConeAngle', 'LightEdgeAngle', 'LightFalloffType', 'LightIntensity', - 'LightIntensityTool', 'LightQuality', 'LightRange', 'LightView', 'LimitB', - 'LimitDynamicRange', 'LimitedRegion', 'LimitH', 'LimitP', 'LinearLight', - 'LoadAudio', 'LoadFromScene', 'LoadMotion', 'LoadObject', 'LoadObjectLayer', - 'LoadPreview', 'LoadScene', 'LocalCoordinateSystem', - 'MakePreview', 'MaskColor', 'MaskPosition', 'MasterPlugins', 'MatchGoalOrientation', - 'MatteColor', 'MatteObject', 'MetaballResolution', 'Model', 'MorphAmount', - 'MorphAmountTool', 'MorphMTSE', 'MorphSurfaces', 'MorphTarget', 'MotionBlur', - 'MotionBlurDOFPreview', 'MotionOptions', 'MovePathTool', 'MovePivotTool', 'MoveTool', - 'NadirColor', 'NetRender', 'NextFrame', 'NextItem', 'NextKey', 'NextSibling', - 'NextViewLayout', 'NoiseReduction', 'Numeric', - 'ObjectDissolve', - 'ParentCoordinateSystem', 'ParentInPlace', 'ParentItem', - 'ParticleBlur', 'PathAlignLookAhead', 'PathAlignMaxLookSteps', 'PathAlignReliableDist', - 'Pause', 'PController', 'PerspectiveView', - 'PivotPosition', 'PivotRotation', 'PixelAspect', 'PlayAudio', 'PlayBackward', - 'PlayForward', 'PlayPreview', 'PLimits', 'PointLight', 'PolygonEdgeColor', - 'PolygonEdgeFlags', 'PolygonEdgeThickness', 'PolygonEdgeZScale', 'PolygonSize', - 'Position', 'Presets', 'PreviewFirstFrame', 'PreviewFrameStep', 'PreviewLastFrame', - 'PreviewOptions', 'PreviousFrame', 'PreviousItem', 'PreviousKey', 'PreviousSibling', - 'PreviousViewLayout', 'PStiffness', - 'Quit', - 'RadiosityIntensity', 'RadiosityTolerance', 'RadiosityType', 'RayRecursionLimit', - 'RayTraceReflection', 'RayTraceShadows', - 'RayTraceTransparency', 'ReceiveShadow', 'RecentContentDirs', 'RecentScenes', - 'ReconstructionFilter', 'RecordMaxAngles', 'RecordMinAngles', 'RecordPivotRotation', - 'RecordRestPosition', 'Redraw', 'RedrawNow', 'Refresh', 'RefreshNow', 'RegionPosition', - 'RemoveEnvelope', 'RemoveFromSelection', 'RemoveServer', 'Rename', 'RenderFrame', - 'RenderOptions', 'RenderScene', 'RenderSelected', 'RenderThreads', - 'ReplaceObjectLayer', 'ReplaceWithNull', 'ReplaceWithObject', 'Reset', - 'ResolutionMultiplier', 'RestLengthTool', 'RightView', 'RotatePivotTool', - 'RotateTool', 'Rotation', - 'SaveAllObjects', 'SaveCommandList', 'SaveCommandMessages', - 'SaveEndomorph', 'SaveLight', 'SaveLWSC1', 'SaveMotion', 'SaveObject', 'SaveObjectCopy', - 'SavePreview', 'SaveScene', 'SaveSceneAs', 'SaveSceneCopy', 'SaveTransformed', - 'SaveViewLayout', 'Scale', 'Scene_SetWindowPos', 'Scene_SetWindowSize', - 'SceneEditor', 'SchematicPosition', 'SchematicView', 'SelectAllBones', - 'SelectAllCameras', 'SelectAllLights', 'SelectAllObjects', 'SelectByName', - 'SelectChild', 'SelectItem', 'SelectParent', 'SelfShadow', 'ShadowColor', - 'ShadowExclusion', 'ShadowMapAngle', 'ShadowMapFitCone', 'ShadowMapFuzziness', - 'ShadowMapSize', 'ShadowType', 'ShowCages', 'ShowFieldChart', 'ShowHandles', - 'ShowIKChains', 'ShowMotionPaths', 'ShowSafeAreas', 'ShowTargetLines', - 'ShrinkEdgesWithDistance', 'SingleView', 'SizeTool', 'SkelegonsToBones', 'SkyColor', - 'Spotlight', 'SquashTool', 'Statistics', 'StatusMsg', 'Stereoscopic', 'StretchTool', - 'SubdivisionOrder', 'SubPatchLevel', 'SurfaceEditor', 'Synchronize', - 'TargetItem', 'TopView', - 'UnaffectedByFog', 'UnaffectedByIK', 'Undo', 'UnseenByAlphaChannel', 'UnseenByCamera', - 'UnseenByRays', 'UseGlobalResolution', 'UseGlobalBlur', 'UseGlobalMask', - 'UseMorphedPositions', - 'ViewLayout', 'VIPER', 'VolumetricLighting', - 'VolumetricLightingOptions', 'VolumetricRadiosity', 'Volumetrics', - 'WorldCoordinateSystem', - 'XYView', 'XZView', - 'ZenithColor', 'ZoomFactor', 'ZoomIn', 'ZoomInX2', 'ZoomOut', 'ZoomOutX2', 'ZYView', - 'Camera', 'Channel', 'ChannelGroup', 'Envelope', 'File', 'Glyph', 'Icon', 'Image', - 'Light', 'Mesh', 'Scene', 'Surface', 'VMap' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '<', '>', '+', '-', '*', '/', '!', '%', '&', '@' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #FF6820; font-weight: bold;', //LS_COMMANDS - 3 => 'color: #007F7F; font-weight: bold;', //LS_MEMBERS - 4 => 'color: #800080; font-weight: bold;', //LS_METHODS - 5 => 'color: #51BD95; font-weight: bold;', //LS_MODELER - 6 => 'color: #416F85; font-weight: bold;', //LS_GENERAL - 7 => 'color: #C92929; font-weight: bold;' //LS_COMMANDS (cont) - ), - 'COMMENTS' => array( - 1 => 'color: #7F7F7F;', - 'MULTI' => 'color: #7F7F7F;' - ), - 'BRACKETS' => array( - 0 => 'color: #0040A0;' - ), - 'STRINGS' => array( - 0 => 'color: #00C800;' - ), - 'NUMBERS' => array( - 0 => 'color: #6953AC;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #0040A0;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ), - 'ESCAPE_CHAR' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 3 => array( - 'DISALLOWED_BEFORE' => '(?<=\.)' - ), - 4 => array( - 'DISALLOWED_BEFORE' => '(?<=\.)' - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/lsl2.php b/system/application/libraries/geshi/lsl2.php deleted file mode 100644 index 8b62fc219..000000000 --- a/system/application/libraries/geshi/lsl2.php +++ /dev/null @@ -1,898 +0,0 @@ -<?php -/************************************************************************************* - * lsl2.php - * -------- - * Author: William Fry (william.fry@nyu.edu) - * Copyright: (c) 2009 William Fry - * Release Version: 1.0.8.6 - * Date Started: 2009/02/04 - * - * Linden Scripting Language (LSL2) language file for GeSHi. - * - * Data derived and validated against the following: - * http://wiki.secondlife.com/wiki/LSL_Portal - * http://www.lslwiki.net/lslwiki/wakka.php?wakka=HomePage - * http://rpgstats.com/wiki/index.php?title=Main_Page - * - * CHANGES - * ------- - * 2009/02/05 (1.0.0) - * - First Release - * - * TODO (updated 2009/02/05) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'LSL2', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( // flow control - 'do', - 'else', - 'for', - 'if', - 'jump', - 'return', - 'state', - 'while', - ), - 2 => array( // manifest constants - 'ACTIVE', - 'AGENT', - 'AGENT_ALWAYS_RUN', - 'AGENT_ATTACHMENTS', - 'AGENT_AWAY', - 'AGENT_BUSY', - 'AGENT_CROUCHING', - 'AGENT_FLYING', - 'AGENT_IN_AIR', - 'AGENT_MOUSELOOK', - 'AGENT_ON_OBJECT', - 'AGENT_SCRIPTED', - 'AGENT_SITTING', - 'AGENT_TYPING', - 'AGENT_WALKING', - 'ALL_SIDES', - 'ANIM_ON', - 'ATTACH_BACK', - 'ATTACH_BELLY', - 'ATTACH_CHEST', - 'ATTACH_CHIN', - 'ATTACH_HEAD', - 'ATTACH_HUD_BOTTOM', - 'ATTACH_HUD_BOTTOM_LEFT', - 'ATTACH_HUD_BOTTOM_RIGHT', - 'ATTACH_HUD_CENTER_1', - 'ATTACH_HUD_CENTER_2', - 'ATTACH_HUD_TOP_CENTER', - 'ATTACH_HUD_TOP_LEFT', - 'ATTACH_HUD_TOP_RIGHT', - 'ATTACH_LEAR', - 'ATTACH_LEYE', - 'ATTACH_LFOOT', - 'ATTACH_LHAND', - 'ATTACH_LHIP', - 'ATTACH_LLARM', - 'ATTACH_LLLEG', - 'ATTACH_LPEC', - 'ATTACH_LSHOULDER', - 'ATTACH_LUARM', - 'ATTACH_LULEG', - 'ATTACH_MOUTH', - 'ATTACH_NOSE', - 'ATTACH_PELVIS', - 'ATTACH_REAR', - 'ATTACH_REYE', - 'ATTACH_RFOOT', - 'ATTACH_RHAND', - 'ATTACH_RHIP', - 'ATTACH_RLARM', - 'ATTACH_RLLEG', - 'ATTACH_RPEC', - 'ATTACH_RSHOULDER', - 'ATTACH_RUARM', - 'ATTACH_RULEG', - 'CAMERA_ACTIVE', - 'CAMERA_BEHINDNESS_ANGLE', - 'CAMERA_BEHINDNESS_LAG', - 'CAMERA_DISTANCE', - 'CAMERA_FOCUS', - 'CAMERA_FOCUS_LAG', - 'CAMERA_FOCUS_LOCKED', - 'CAMERA_FOCUS_OFFSET', - 'CAMERA_FOCUS_THRESHOLD', - 'CAMERA_PITCH', - 'CAMERA_POSITION', - 'CAMERA_POSITION_LAG', - 'CAMERA_POSITION_LOCKED', - 'CAMERA_POSITION_THRESHOLD', - 'CHANGED_ALLOWED_DROP', - 'CHANGED_COLOR', - 'CHANGED_INVENTORY', - 'CHANGED_LINK', - 'CHANGED_OWNER', - 'CHANGED_REGION', - 'CHANGED_SCALE', - 'CHANGED_SHAPE', - 'CHANGED_TELEPORT', - 'CHANGED_TEXTURE', - 'CLICK_ACTION_NONE', - 'CLICK_ACTION_OPEN', - 'CLICK_ACTION_OPEN_MEDIA', - 'CLICK_ACTION_PAY', - 'CLICK_ACTION_SIT', - 'CLICK_ACTION_TOUCH', - 'CONTROL_BACK', - 'CONTROL_DOWN', - 'CONTROL_FWD', - 'CONTROL_LBUTTON', - 'CONTROL_LEFT', - 'CONTROL_ML_LBUTTON', - 'CONTROL_RIGHT', - 'CONTROL_ROT_LEFT', - 'CONTROL_ROT_RIGHT', - 'CONTROL_UP', - 'DATA_BORN', - 'DATA_NAME', - 'DATA_ONLINE', - 'DATA_PAYINFO', - 'DATA_RATING', - 'DATA_SIM_POS', - 'DATA_SIM_RATING', - 'DATA_SIM_STATUS', - 'DEBUG_CHANNEL', - 'DEG_TO_RAD', - 'EOF', - 'FALSE', - 'HTTP_BODY_MAXLENGTH', - 'HTTP_BODY_TRUNCATED', - 'HTTP_METHOD', - 'HTTP_MIMETYPE', - 'HTTP_VERIFY_CERT', - 'INVENTORY_ALL', - 'INVENTORY_ANIMATION', - 'INVENTORY_BODYPART', - 'INVENTORY_CLOTHING', - 'INVENTORY_GESTURE', - 'INVENTORY_LANDMARK', - 'INVENTORY_NONE', - 'INVENTORY_NOTECARD', - 'INVENTORY_OBJECT', - 'INVENTORY_SCRIPT', - 'INVENTORY_SOUND', - 'INVENTORY_TEXTURE', - 'LAND_LEVEL', - 'LAND_LOWER', - 'LAND_NOISE', - 'LAND_RAISE', - 'LAND_REVERT', - 'LAND_SMOOTH', - 'LINK_ALL_CHILDREN', - 'LINK_ALL_OTHERS', - 'LINK_ROOT', - 'LINK_SET', - 'LINK_THIS', - 'LIST_STAT_GEOMETRIC_MEAN', - 'LIST_STAT_MAX', - 'LIST_STAT_MEAN', - 'LIST_STAT_MEDIAN', - 'LIST_STAT_MIN', - 'LIST_STAT_NUM_COUNT', - 'LIST_STAT_RANGE', - 'LIST_STAT_STD_DEV', - 'LIST_STAT_SUM', - 'LIST_STAT_SUM_SQUARES', - 'LOOP', - 'MASK_BASE', - 'MASK_EVERYONE', - 'MASK_GROUP', - 'MASK_NEXT', - 'MASK_OWNER', - 'NULL_KEY', - 'OBJECT_CREATOR', - 'OBJECT_DESC', - 'OBJECT_GROUP', - 'OBJECT_NAME', - 'OBJECT_OWNER', - 'OBJECT_POS', - 'OBJECT_ROT', - 'OBJECT_UNKNOWN_DETAIL', - 'OBJECT_VELOCITY', - 'PARCEL_DETAILS_AREA', - 'PARCEL_DETAILS_DESC', - 'PARCEL_DETAILS_GROUP', - 'PARCEL_DETAILS_NAME', - 'PARCEL_DETAILS_OWNER', - 'PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY', - 'PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS', - 'PARCEL_FLAG_ALLOW_CREATE_OBJECTS', - 'PARCEL_FLAG_ALLOW_DAMAGE', - 'PARCEL_FLAG_ALLOW_FLY', - 'PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY', - 'PARCEL_FLAG_ALLOW_GROUP_SCRIPTS', - 'PARCEL_FLAG_ALLOW_LANDMARK', - 'PARCEL_FLAG_ALLOW_SCRIPTS', - 'PARCEL_FLAG_ALLOW_TERRAFORM', - 'PARCEL_FLAG_LOCAL_SOUND_ONLY', - 'PARCEL_FLAG_RESTRICT_PUSHOBJECT', - 'PARCEL_FLAG_USE_ACCESS_GROUP', - 'PARCEL_FLAG_USE_ACCESS_LIST', - 'PARCEL_FLAG_USE_BAN_LIST', - 'PARCEL_FLAG_USE_LAND_PASS_LIST', - 'PARCEL_MEDIA_COMMAND_AGENT', - 'PARCEL_MEDIA_COMMAND_AUTO_ALIGN', - 'PARCEL_MEDIA_COMMAND_DESC', - 'PARCEL_MEDIA_COMMAND_LOOP_SET', - 'PARCEL_MEDIA_COMMAND_PAUSE', - 'PARCEL_MEDIA_COMMAND_PLAY', - 'PARCEL_MEDIA_COMMAND_SIZE', - 'PARCEL_MEDIA_COMMAND_STOP', - 'PARCEL_MEDIA_COMMAND_TEXTURE', - 'PARCEL_MEDIA_COMMAND_TIME', - 'PARCEL_MEDIA_COMMAND_TYPE', - 'PARCEL_MEDIA_COMMAND_URL', - 'PASSIVE', - 'PAYMENT_INFO_ON_FILE', - 'PAYMENT_INFO_USED', - 'PAY_DEFAULT', - 'PAY_HIDE', - 'PERMISSION_ATTACH', - 'PERMISSION_CHANGE_LINKS', - 'PERMISSION_CONTROL_CAMERA', - 'PERMISSION_DEBIT', - 'PERMISSION_TAKE_CONTROLS', - 'PERMISSION_TRACK_CAMERA', - 'PERMISSION_TRIGGER_ANIMATION', - 'PERM_ALL', - 'PERM_COPY', - 'PERM_MODIFY', - 'PERM_MOVE', - 'PERM_TRANSFER', - 'PI', - 'PI_BY_TWO', - 'PRIM_BUMP_BARK', - 'PRIM_BUMP_BLOBS', - 'PRIM_BUMP_BRICKS', - 'PRIM_BUMP_BRIGHT', - 'PRIM_BUMP_CHECKER', - 'PRIM_BUMP_CONCRETE', - 'PRIM_BUMP_DARK', - 'PRIM_BUMP_DISKS', - 'PRIM_BUMP_GRAVEL', - 'PRIM_BUMP_LARGETILE', - 'PRIM_BUMP_NONE', - 'PRIM_BUMP_SHINY', - 'PRIM_BUMP_SIDING', - 'PRIM_BUMP_STONE', - 'PRIM_BUMP_STUCCO', - 'PRIM_BUMP_SUCTION', - 'PRIM_BUMP_TILE', - 'PRIM_BUMP_WEAVE', - 'PRIM_BUMP_WOOD', - 'PRIM_COLOR', - 'PRIM_FULLBRIGHT', - 'PRIM_HOLE_CIRCLE', - 'PRIM_HOLE_DEFAULT', - 'PRIM_HOLE_SQUARE', - 'PRIM_HOLE_TRIANGLE', - 'PRIM_MATERIAL', - 'PRIM_MATERIAL_FLESH', - 'PRIM_MATERIAL_GLASS', - 'PRIM_MATERIAL_LIGHT', - 'PRIM_MATERIAL_METAL', - 'PRIM_MATERIAL_PLASTIC', - 'PRIM_MATERIAL_RUBBER', - 'PRIM_MATERIAL_STONE', - 'PRIM_MATERIAL_WOOD', - 'PRIM_PHANTOM', - 'PRIM_PHYSICS', - 'PRIM_POSITION', - 'PRIM_ROTATION', - 'PRIM_SHINY_HIGH', - 'PRIM_SHINY_LOW', - 'PRIM_SHINY_MEDIUM', - 'PRIM_SHINY_NONE', - 'PRIM_SIZE', - 'PRIM_TEMP_ON_REZ', - 'PRIM_TEXTURE', - 'PRIM_TYPE', - 'PRIM_TYPE_BOX', - 'PRIM_TYPE_CYLINDER', - 'PRIM_TYPE_PRISM', - 'PRIM_TYPE_RING', - 'PRIM_TYPE_SPHERE', - 'PRIM_TYPE_TORUS', - 'PRIM_TYPE_TUBE', - 'PSYS_PART_BOUNCE_MASK', - 'PSYS_PART_EMISSIVE_MASK', - 'PSYS_PART_END_ALPHA', - 'PSYS_PART_END_COLOR', - 'PSYS_PART_END_SCALE', - 'PSYS_PART_FLAGS', - 'PSYS_PART_FOLLOW_SRC_MASK', - 'PSYS_PART_FOLLOW_VELOCITY_MASK', - 'PSYS_PART_INTERP_COLOR_MASK', - 'PSYS_PART_INTERP_SCALE_MASK', - 'PSYS_PART_MAX_AGE', - 'PSYS_PART_START_ALPHA', - 'PSYS_PART_START_COLOR', - 'PSYS_PART_START_SCALE', - 'PSYS_PART_TARGET_LINEAR_MASK', - 'PSYS_PART_TARGET_POS_MASK', - 'PSYS_PART_WIND_MASK', - 'PSYS_SRC_ACCEL', - 'PSYS_SRC_ANGLE_BEGIN', - 'PSYS_SRC_ANGLE_END', - 'PSYS_SRC_BURST_PART_COUNT', - 'PSYS_SRC_BURST_RADIUS', - 'PSYS_SRC_BURST_RATE', - 'PSYS_SRC_BURST_SPEED_MAX', - 'PSYS_SRC_BURST_SPEED_MIN', - 'PSYS_SRC_INNERANGLE', - 'PSYS_SRC_MAX_AGE', - 'PSYS_SRC_OMEGA', - 'PSYS_SRC_OUTERANGLE', - 'PSYS_SRC_PATTERN', - 'PSYS_SRC_PATTERN_ANGLE', - 'PSYS_SRC_PATTERN_ANGLE_CONE', - 'PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY', - 'PSYS_SRC_PATTERN_DROP', - 'PSYS_SRC_PATTERN_EXPLODE', - 'PSYS_SRC_TARGET_KEY', - 'PSYS_SRC_TEXTURE', - 'RAD_TO_DEG', - 'REMOTE_DATA_CHANNEL', - 'REMOTE_DATA_REQUEST', - 'SCRIPTED', - 'SQRT2', - 'STATUS_BLOCK_GRAB', - 'STATUS_DIE_AT_EDGE', - 'STATUS_PHANTOM', - 'STATUS_PHYSICS', - 'STATUS_RETURN_AT_EDGE', - 'STATUS_ROTATE_X', - 'STATUS_ROTATE_Y', - 'STATUS_ROTATE_Z', - 'STATUS_SANDBOX', - 'TRUE', - 'TWO_PI', - 'VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY', - 'VEHICLE_ANGULAR_DEFLECTION_TIMESCALE', - 'VEHICLE_ANGULAR_FRICTION_TIMESCALE', - 'VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE', - 'VEHICLE_ANGULAR_MOTOR_DIRECTION', - 'VEHICLE_ANGULAR_MOTOR_TIMESCALE', - 'VEHICLE_BANKING_EFFICIENCY', - 'VEHICLE_BANKING_MIX', - 'VEHICLE_BANKING_TIMESCALE', - 'VEHICLE_BUOYANCY', - 'VEHICLE_FLAG_CAMERA_DECOUPLED', - 'VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT', - 'VEHICLE_FLAG_HOVER_TERRAIN_ONLY', - 'VEHICLE_FLAG_HOVER_UP_ONLY', - 'VEHICLE_FLAG_HOVER_WATER_ONLY', - 'VEHICLE_FLAG_LIMIT_MOTOR_UP', - 'VEHICLE_FLAG_LIMIT_ROLL_ONLY', - 'VEHICLE_FLAG_MOUSELOOK_BANK', - 'VEHICLE_FLAG_MOUSELOOK_STEER', - 'VEHICLE_FLAG_NO_DEFLECTION_UP', - 'VEHICLE_HOVER_EFFICIENCY', - 'VEHICLE_HOVER_HEIGHT', - 'VEHICLE_HOVER_TIMESCALE', - 'VEHICLE_LINEAR_DEFLECTION_EFFICIENCY', - 'VEHICLE_LINEAR_DEFLECTION_TIMESCALE', - 'VEHICLE_LINEAR_FRICTION_TIMESCALE', - 'VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE', - 'VEHICLE_LINEAR_MOTOR_DIRECTION', - 'VEHICLE_LINEAR_MOTOR_OFFSET', - 'VEHICLE_LINEAR_MOTOR_TIMESCALE', - 'VEHICLE_REFERENCE_FRAME', - 'VEHICLE_TYPE_AIRPLANE', - 'VEHICLE_TYPE_BALLOON', - 'VEHICLE_TYPE_BOAT', - 'VEHICLE_TYPE_CAR', - 'VEHICLE_TYPE_NONE', - 'VEHICLE_TYPE_SLED', - 'VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY', - 'VEHICLE_VERTICAL_ATTRACTION_TIMESCALE', - 'ZERO_ROTATION', - 'ZERO_VECTOR', - ), - 3 => array( // handlers - 'at_rot_target', - 'at_target', - 'attached', - 'changed', - 'collision', - 'collision_end', - 'collision_start', - 'control', - 'dataserver', - 'email', - 'http_response', - 'land_collision', - 'land_collision_end', - 'land_collision_start', - 'link_message', - 'listen', - 'money', - 'moving_end', - 'moving_start', - 'no_sensor', - 'not_at_rot_target', - 'not_at_target', - 'object_rez', - 'on_rez', - 'remote_data', - 'run_time_permissions', - 'sensor', - 'state_entry', - 'state_exit', - 'timer', - 'touch', - 'touch_end', - 'touch_start', - ), - 4 => array( // data types - 'float', - 'integer', - 'key', - 'list', - 'rotation', - 'string', - 'vector', - ), - 5 => array( // library - 'default', - 'llAbs', - 'llAcos', - 'llAddToLandBanList', - 'llAddToLandPassList', - 'llAdjustSoundVolume', - 'llAllowInventoryDrop', - 'llAngleBetween', - 'llApplyImpulse', - 'llApplyRotationalImpulse', - 'llAsin', - 'llAtan2', - 'llAttachToAvatar', - 'llAvatarOnSitTarget', - 'llAxes2Rot', - 'llAxisAngle2Rot', - 'llBase64ToInteger', - 'llBase64ToString', - 'llBreakAllLinks', - 'llBreakLink', - 'llCeil', - 'llClearCameraParams', - 'llCloseRemoteDataChannel', - 'llCloud', - 'llCollisionFilter', - 'llCollisionSound', - 'llCollisionSprite', - 'llCos', - 'llCreateLink', - 'llCSV2List', - 'llDeleteSubList', - 'llDeleteSubString', - 'llDetachFromAvatar', - 'llDetectedGrab', - 'llDetectedGroup', - 'llDetectedKey', - 'llDetectedLinkNumber', - 'llDetectedName', - 'llDetectedOwner', - 'llDetectedPos', - 'llDetectedRot', - 'llDetectedTouchBinormal', - 'llDetectedTouchFace', - 'llDetectedTouchNormal', - 'llDetectedTouchPos', - 'llDetectedTouchST', - 'llDetectedTouchUV', - 'llDetectedType', - 'llDetectedVel', - 'llDialog', - 'llDie', - 'llDumpList2String', - 'llEdgeOfWorld', - 'llEjectFromLand', - 'llEmail', - 'llEscapeURL', - 'llEuler2Rot', - 'llFabs', - 'llFloor', - 'llForceMouselook', - 'llFrand', - 'llGetAccel', - 'llGetAgentInfo', - 'llGetAgentLanguage', - 'llGetAgentSize', - 'llGetAlpha', - 'llGetAndResetTime', - 'llGetAnimation', - 'llGetAnimationList', - 'llGetAttached', - 'llGetBoundingBox', - 'llGetCameraPos', - 'llGetCameraRot', - 'llGetCenterOfMass', - 'llGetColor', - 'llGetCreator', - 'llGetDate', - 'llGetEnergy', - 'llGetForce', - 'llGetFreeMemory', - 'llGetGeometricCenter', - 'llGetGMTclock', - 'llGetInventoryCreator', - 'llGetInventoryKey', - 'llGetInventoryName', - 'llGetInventoryNumber', - 'llGetInventoryPermMask', - 'llGetInventoryType', - 'llGetKey', - 'llGetLandOwnerAt', - 'llGetLinkKey', - 'llGetLinkName', - 'llGetLinkNumber', - 'llGetListEntryType', - 'llGetListLength', - 'llGetLocalPos', - 'llGetLocalRot', - 'llGetMass', - 'llGetNextEmail', - 'llGetNotecardLine', - 'llGetNumberOfNotecardLines', - 'llGetNumberOfPrims', - 'llGetNumberOfSides', - 'llGetObjectDesc', - 'llGetObjectDetails', - 'llGetObjectMass', - 'llGetObjectName', - 'llGetObjectPermMask', - 'llGetObjectPrimCount', - 'llGetOmega', - 'llGetOwner', - 'llGetOwnerKey', - 'llGetParcelDetails', - 'llGetParcelFlags', - 'llGetParcelMaxPrims', - 'llGetParcelPrimCount', - 'llGetParcelPrimOwners', - 'llGetPermissions', - 'llGetPermissionsKey', - 'llGetPos', - 'llGetPrimitiveParams', - 'llGetRegionAgentCount', - 'llGetRegionCorner', - 'llGetRegionFlags', - 'llGetRegionFPS', - 'llGetRegionName', - 'llGetRegionTimeDilation', - 'llGetRootPosition', - 'llGetRootRotation', - 'llGetRot', - 'llGetScale', - 'llGetScriptName', - 'llGetScriptState', - 'llGetSimulatorHostname', - 'llGetStartParameter', - 'llGetStatus', - 'llGetSubString', - 'llGetSunDirection', - 'llGetTexture', - 'llGetTextureOffset', - 'llGetTextureRot', - 'llGetTextureScale', - 'llGetTime', - 'llGetTimeOfDay', - 'llGetTimestamp', - 'llGetTorque', - 'llGetUnixTime', - 'llGetVel', - 'llGetWallclock', - 'llGiveInventory', - 'llGiveInventoryList', - 'llGiveMoney', - 'llGround', - 'llGroundContour', - 'llGroundNormal', - 'llGroundRepel', - 'llGroundSlope', - 'llHTTPRequest', - 'llInsertString', - 'llInstantMessage', - 'llIntegerToBase64', - 'llKey2Name', - 'llList2CSV', - 'llList2Float', - 'llList2Integer', - 'llList2Key', - 'llList2List', - 'llList2ListStrided', - 'llList2Rot', - 'llList2String', - 'llList2Vector', - 'llListen', - 'llListenControl', - 'llListenRemove', - 'llListFindList', - 'llListInsertList', - 'llListRandomize', - 'llListReplaceList', - 'llListSort', - 'llListStatistics', - 'llLoadURL', - 'llLog', - 'llLog10', - 'llLookAt', - 'llLoopSound', - 'llLoopSoundMaster', - 'llLoopSoundSlave', - 'llMapDestination', - 'llMD5String', - 'llMessageLinked', - 'llMinEventDelay', - 'llModifyLand', - 'llModPow', - 'llMoveToTarget', - 'llOffsetTexture', - 'llOpenRemoteDataChannel', - 'llOverMyLand', - 'llOwnerSay', - 'llParcelMediaCommandList', - 'llParcelMediaQuery', - 'llParseString2List', - 'llParseStringKeepNulls', - 'llParticleSystem', - 'llPassCollisions', - 'llPassTouches', - 'llPlaySound', - 'llPlaySoundSlave', - 'llPow', - 'llPreloadSound', - 'llPushObject', - 'llRegionSay', - 'llReleaseControls', - 'llRemoteDataReply', - 'llRemoteDataSetRegion', - 'llRemoteLoadScriptPin', - 'llRemoveFromLandBanList', - 'llRemoveFromLandPassList', - 'llRemoveInventory', - 'llRemoveVehicleFlags', - 'llRequestAgentData', - 'llRequestInventoryData', - 'llRequestPermissions', - 'llRequestSimulatorData', - 'llResetLandBanList', - 'llResetLandPassList', - 'llResetOtherScript', - 'llResetScript', - 'llResetTime', - 'llRezAtRoot', - 'llRezObject', - 'llRot2Angle', - 'llRot2Axis', - 'llRot2Euler', - 'llRot2Fwd', - 'llRot2Left', - 'llRot2Up', - 'llRotateTexture', - 'llRotBetween', - 'llRotLookAt', - 'llRotTarget', - 'llRotTargetRemove', - 'llRound', - 'llSameGroup', - 'llSay', - 'llScaleTexture', - 'llScriptDanger', - 'llSendRemoteData', - 'llSensor', - 'llSensorRemove', - 'llSensorRepeat', - 'llSetAlpha', - 'llSetBuoyancy', - 'llSetCameraAtOffset', - 'llSetCameraEyeOffset', - 'llSetCameraParams', - 'llSetClickAction', - 'llSetColor', - 'llSetDamage', - 'llSetForce', - 'llSetForceAndTorque', - 'llSetHoverHeight', - 'llSetLinkAlpha', - 'llSetLinkColor', - 'llSetLinkPrimitiveParams', - 'llSetLinkTexture', - 'llSetLocalRot', - 'llSetObjectDesc', - 'llSetObjectName', - 'llSetParcelMusicURL', - 'llSetPayPrice', - 'llSetPos', - 'llSetPrimitiveParams', - 'llSetRemoteScriptAccessPin', - 'llSetRot', - 'llSetScale', - 'llSetScriptState', - 'llSetSitText', - 'llSetSoundQueueing', - 'llSetSoundRadius', - 'llSetStatus', - 'llSetText', - 'llSetTexture', - 'llSetTextureAnim', - 'llSetTimerEvent', - 'llSetTorque', - 'llSetTouchText', - 'llSetVehicleFlags', - 'llSetVehicleFloatParam', - 'llSetVehicleRotationParam', - 'llSetVehicleType', - 'llSetVehicleVectorParam', - 'llSHA1String', - 'llShout', - 'llSin', - 'llSitTarget', - 'llSleep', - 'llSqrt', - 'llStartAnimation', - 'llStopAnimation', - 'llStopHover', - 'llStopLookAt', - 'llStopMoveToTarget', - 'llStopSound', - 'llStringLength', - 'llStringToBase64', - 'llStringTrim', - 'llSubStringIndex', - 'llTakeControls', - 'llTan', - 'llTarget', - 'llTargetOmega', - 'llTargetRemove', - 'llTeleportAgentHome', - 'llToLower', - 'llToUpper', - 'llTriggerSound', - 'llTriggerSoundLimited', - 'llUnescapeURL', - 'llUnSit', - 'llVecDist', - 'llVecMag', - 'llVecNorm', - 'llVolumeDetect', - 'llWater', - 'llWhisper', - 'llWind', - 'llXorBase64StringsCorrect', - ), - 6 => array( // deprecated - 'llMakeExplosion', - 'llMakeFire', - 'llMakeFountain', - 'llMakeSmoke', - 'llSound', - 'llSoundPreload', - 'llXorBase64Strings', - ), - 7 => array( // unimplemented - 'llPointAt', - 'llRefreshPrimURL', - 'llReleaseCamera', - 'llRemoteLoadScript', - 'llSetPrimURL', - 'llStopPointAt', - 'llTakeCamera', - 'llTextBox', - ), - 8 => array( // God mode - 'llGodLikeRezObject', - 'llSetInventoryPermMask', - 'llSetObjectPermMask', - ), - ), - 'SYMBOLS' => array( - '{', '}', '(', ')', '[', ']', - '=', '+', '-', '*', '/', - '+=', '-=', '*=', '/=', '++', '--', - '!', '%', '&', '|', '&&', '||', - '==', '!=', '<', '>', '<=', '>=', - '~', '<<', '>>', '^', ':', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #000080;', - 3 => 'color: #008080;', - 4 => 'color: #228b22;', - 5 => 'color: #b22222;', - 6 => 'color: #8b0000; background-color: #ffff00;', - 7 => 'color: #8b0000; background-color: #fa8072;', - 8 => 'color: #000000; background-color: #ba55d3;', - ), - 'COMMENTS' => array( - 1 => 'color: #ff7f50; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #006400;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 4 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 5 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 6 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 7 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - 8 => 'http://www.lslwiki.net/lslwiki/wakka.php?wakka={FNAME}', // http://wiki.secondlife.com/wiki/{FNAME} - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/lua.php b/system/application/libraries/geshi/lua.php deleted file mode 100644 index 2a630b2c8..000000000 --- a/system/application/libraries/geshi/lua.php +++ /dev/null @@ -1,137 +0,0 @@ -<?php -/************************************************************************************* - * lua.php - * ------- - * Author: Roberto Rossi (rsoftware@altervista.org) - * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/10 - * - * LUA language file for GeSHi. - * - * CHANGES - * ------- - * 2005/08/26 (1.0.2) - * - Added support for objects and methods - * - Removed unusable keywords - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Lua', - 'COMMENT_SINGLE' => array(1 => "--"), - 'COMMENT_MULTI' => array('--[[' => ']]'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'and','break','do','else','elseif','end','false','for','function','if', - 'in','local','nil','not','or','repeat','return','then','true','until','while', - '_VERSION','assert','collectgarbage','dofile','error','gcinfo','loadfile','loadstring', - 'print','tonumber','tostring','type','unpack', - '_ALERT','_ERRORMESSAGE','_INPUT','_PROMPT','_OUTPUT', - '_STDERR','_STDIN','_STDOUT','call','dostring','foreach','foreachi','getn','globals','newtype', - 'rawget','rawset','require','sort','tinsert','tremove', - 'abs','acos','asin','atan','atan2','ceil','cos','deg','exp', - 'floor','format','frexp','gsub','ldexp','log','log10','max','min','mod','rad','random','randomseed', - 'sin','sqrt','strbyte','strchar','strfind','strlen','strlower','strrep','strsub','strupper','tan', - 'openfile','closefile','readfrom','writeto','appendto', - 'remove','rename','flush','seek','tmpfile','tmpname','read','write', - 'clock','date','difftime','execute','exit','getenv','setlocale','time', - '_G','getfenv','getmetatable','ipairs','loadlib','next','pairs','pcall', - 'rawegal','setfenv','setmetatable','xpcall', - 'string.byte','string.char','string.dump','string.find','string.len', - 'string.lower','string.rep','string.sub','string.upper','string.format','string.gfind','string.gsub', - 'table.concat','table.foreach','table.foreachi','table.getn','table.sort','table.insert','table.remove','table.setn', - 'math.abs','math.acos','math.asin','math.atan','math.atan2','math.ceil','math.cos','math.deg','math.exp', - 'math.floor','math.frexp','math.ldexp','math.log','math.log10','math.max','math.min','math.mod', - 'math.pi','math.rad','math.random','math.randomseed','math.sin','math.sqrt','math.tan', - 'coroutine.create','coroutine.resume','coroutine.status', - 'coroutine.wrap','coroutine.yield', - 'io.close','io.flush','io.input','io.lines','io.open','io.output','io.read','io.tmpfile','io.type','io.write', - 'io.stdin','io.stdout','io.stderr', - 'os.clock','os.date','os.difftime','os.execute','os.exit','os.getenv','os.remove','os.rename', - 'os.setlocale','os.time','os.tmpname', - 'string','table','math','coroutine','io','os','debug' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>', '=', ';' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #b1b100;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/m68k.php b/system/application/libraries/geshi/m68k.php deleted file mode 100644 index 9aae868af..000000000 --- a/system/application/libraries/geshi/m68k.php +++ /dev/null @@ -1,143 +0,0 @@ -<?php -/************************************************************************************* - * m68k.php - * -------- - * Author: Benny Baumann (BenBE@omorphia.de) - * Copyright: (c) 2007 Benny Baumann (http://www.omorphia.de/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2007/02/06 - * - * Motorola 68000 Assembler language file for GeSHi. - * - * Syntax definition as commonly used by the motorola documentation for the - * MC68HC908GP32 Microcontroller (and maybe others). - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2007/06/02 (1.0.0) - * - First Release - * - * TODO (updated 2007/06/02) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Motorola 68000 Assembler', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*CPU*/ - 1 => array( - 'adc','add','ais','aix','and','asl','asr','bcc','bclr','bcs','beq', - 'bge','bgt','bhcc','bhcs','bhi','bhs','bih','bil','bit','ble','blo', - 'bls','blt','bmc','bmi','bms','bne','bpl','bra','brclr','brn', - 'brset','bset','bsr','cbeq','clc','cli','clr','cmp','com','cphx', - 'cpx','daa','dbnz','dec','div','eor','inc','jmp','jsr','lda','ldhx', - 'ldx','lsl','lsr','mov','mul','neg','nop','nsa','ora','psha','pshh', - 'pshx','pula','pulh','pulx','rol','ror','rsp','rti','rts','sbc', - 'sec','sei','sta','sthx','stop','stx','sub','swi','tap','tax','tpa', - 'tst','tsx','txa','txs','wait' - ), - /*registers*/ - 2 => array( - 'a','h','x', - 'hx','sp' - ), - /*Directive*/ - 3 => array( - '#define','#endif','#else','#ifdef','#ifndef','#include','#undef', - '.db','.dd','.df','.dq','.dt','.dw','.end','.org','equ' - ), - ), - 'SYMBOLS' => array( - ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff; font-weight:bold;', - 2 => 'color: #0000ff;', - 3 => 'color: #46aa03; font-weight:bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #0000ff;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #dd22dd;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - 0 => 'color: #22bbff;', - 1 => 'color: #22bbff;', - 2 => 'color: #993333;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '#?0[0-9a-fA-F]{1,32}[hH]', - //Binary numbers - 1 => '\%[01]{1,64}[bB]', - //Labels - 2 => '^[_a-zA-Z][_a-zA-Z0-9]*?\:' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8 -); - -?> diff --git a/system/application/libraries/geshi/make.php b/system/application/libraries/geshi/make.php deleted file mode 100644 index 021265548..000000000 --- a/system/application/libraries/geshi/make.php +++ /dev/null @@ -1,151 +0,0 @@ -<?php -/************************************************************************************* - * make.php - * -------- - * Author: Neil Bird <phoenix@fnxweb.com> - * Copyright: (c) 2008 Neil Bird - * Release Version: 1.0.8.6 - * Date Started: 2008/08/26 - * - * make language file for GeSHi. - * - * (GNU make specific) - * - * CHANGES - * ------- - * 2008/09/05 (1.0.0) - * - First Release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'GNU make', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_REGEXP' => array( - //Escaped String Starters - 2 => "/\\\\['\"]/siU" - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - // core - 'ifeq', 'else', 'endif', 'ifneq', 'ifdef', 'ifndef', - 'include', 'vpath', 'export', 'unexport', 'override', - 'info', 'warning', 'error' - ), - 2 => array( - // macros, literals - '.SUFFIXES', '.PHONY', '.DEFAULT', '.PRECIOUS', '.IGNORE', '.SILENT', '.EXPORT_ALL_VARIABLES', '.KEEP_STATE', - '.LIBPATTERNS', '.NOTPARALLEL', '.DELETE_ON_ERROR', '.INTERMEDIATE', '.POSIX', '.SECONDARY' - ), - /* - 3 => array( - // funcs - see regex - //'subst', 'addprefix', 'addsuffix', 'basename', 'call', 'dir', 'error', 'eval', 'filter-out', 'filter', - //'findstring', 'firstword', 'foreach', 'if', 'join', 'notdir', 'origin', 'patsubst', 'shell', 'sort', 'strip', - //'suffix', 'warning', 'wildcard', 'word', 'wordlist', 'words' - )*/ - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '!', '@', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';', - '$' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - //3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #666622; font-weight: bold;', - 2 => 'color: #990000;', - //3 => 'color: #000000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #339900; font-style: italic;', - 2 => 'color: #000099; font-weight: bold;', - 'MULTI' => '' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( # keep same as symbols so as to make ${} and $() equiv. - 0 => 'color: #004400;' - ), - 'STRINGS' => array( - 0 => 'color: #CC2200;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC2200;' - ), - 'SYMBOLS' => array( - 0 => 'color: #004400;' - ), - 'REGEXPS' => array( - 0 => 'color: #000088; font-weight: bold;', - 1 => 'color: #0000CC; font-weight: bold;', - 2 => 'color: #000088;' - ), - 'SCRIPT' => array(), - 'METHODS' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - //3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - //Simple variables - 0 => "\\$(?:[^{(&]|&(?:amp|lt|gt);)", - //Complex variables/functions [built-ins] - 1 => array( - GESHI_SEARCH => '(\\$[({])(subst|addprefix|addsuffix|basename|call|dir|error|eval|filter-out|filter,|findstring|firstword|foreach|if|join|notdir|origin|patsubst|shell|sort|strip,|suffix|warning|wildcard|word|wordlist|words)([ })])', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Complex variables/functions [others] - 2 => array( - GESHI_SEARCH => '(\\$[({])([A-Za-z_][A-Za-z_0-9]*)([ })])', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 8 -// vim: set sw=4 sts=4 : -); -?> diff --git a/system/application/libraries/geshi/mapbasic.php b/system/application/libraries/geshi/mapbasic.php deleted file mode 100644 index 74be1f673..000000000 --- a/system/application/libraries/geshi/mapbasic.php +++ /dev/null @@ -1,908 +0,0 @@ -<?php -/************************************************************************************* - * mapbasic.php - * ------ - * Author: Tomasz Berus (t.berus@gisodkuchni.pl) - * Copyright: (c) 2009 Tomasz Berus (http://sourceforge.net/projects/mbsyntax/) - * Release Version: 1.0.8.6 - * Date Started: 2008/11/25 - * - * MapBasic language file for GeSHi. - * - * CHANGES - * ------- - * 2009/09/17 (1.0.1) - * - Replaced all tabs with spaces - * - Fixed 'URLS' array - * 2008/11/25 (1.0.0) - * - First Release (MapBasic v9.5) - * - * TODO (updated 2008/11/25) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'MapBasic', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( -/* - 1 - Statements + Clauses + Data Types + Logical Operators, Geographical Operators + SQL - 2 - Special Procedures - 3 - Functions - 4 - Constants - 5 - Extended keywords (case sensitive) -*/ - 1 => array( - 'Add', 'Alias', 'All', 'Alter', 'And', 'Any', 'Application', 'Arc', - 'Area', 'As', 'AutoLabel', 'Bar', 'Beep', 'Begin', 'Bind', - 'Browse', 'Brush', 'BrushPicker', 'Button', 'ButtonPad', - 'ButtonPads', 'BY', 'Call', 'CancelButton', 'Cartographic', 'Case', - 'CharSet', 'Check', 'CheckBox', 'Clean', 'Close', 'Collection', - 'Column', 'Combine', 'Command', 'Commit', 'Connection', - 'ConnectionNumber', 'Contains', 'Continue', 'Control', 'CoordSys', - 'Create', 'Cutter', 'Date', 'Datum', 'DDEExecute', 'DDEPoke', - 'DDETerminate', 'DDETerminateAll', 'Declare', 'Default', 'Define', - 'Delete', 'Dialog', 'Digitizer', 'Dim', 'Disaggregate', - 'Disconnect', 'Distance', 'Do', 'Document', 'DocumentWindow', - 'Drag', 'Drop', 'EditText', 'Ellipse', 'Enclose', 'End', 'Entire', - 'Entirely', 'Erase', 'Error', 'Event', 'Exit', 'Export', - 'Farthest', 'Fetch', 'File', 'Find', 'Float', 'FME', 'Font', - 'FontPicker', 'For', 'Format', 'Frame', 'From', 'Function', - 'Geocode', 'Get', 'Global', 'Goto', 'Graph', 'Grid', 'GROUP', - 'GroupBox', 'Handler', 'If', 'Import', 'In', 'Include', 'Index', - 'Info', 'Input', 'Insert', 'Integer', 'Intersect', 'Intersects', - 'INTO', 'Isogram', 'Item', 'Kill', 'Layout', 'Legend', 'Line', - 'Link', 'ListBox', 'Logical', 'Loop', 'Map', 'Map3D', 'MapInfo', - 'MapInfoDialog', 'Menu', 'Merge', 'Metadata', 'Method', 'Mod', - 'Move', 'MultiListBox', 'MultiPoint', 'MWS', 'Nearest', 'Next', - 'NOSELECT', 'Not', 'Note', 'Object', 'Objects', 'Offset', - 'OKButton', 'OnError', 'Open', 'Or', 'ORDER', 'Overlay', 'Pack', - 'Paper', 'Part', 'Partly', 'Pen', 'PenPicker', 'Pline', 'Point', - 'PopupMenu', 'Preserve', 'Print', 'PrintWin', 'PrismMap', - 'Processing', 'Program', 'ProgressBar', 'ProgressBars', 'Put', - 'RadioGroup', 'Randomize', 'Ranges', 'Rect', 'ReDim', - 'Redistricter', 'Refresh', 'Region', 'Register', 'Relief', - 'Reload', 'Remove', 'Rename', 'Report', 'Reproject', 'Resolution', - 'Resume', 'Rollback', 'RoundRect', 'RowID', 'Run', 'Save', 'Seek', - 'Select', 'Selection', 'Server', 'Set', 'Shade', 'SmallInt', - 'Snap', 'Split', 'StaticText', 'StatusBar', 'Stop', 'String', - 'Style', 'Styles', 'Sub', 'Symbol', 'SymbolPicker', 'Symbols', - 'Table', 'Target', 'Terminate', 'Text', 'Then', 'Threshold', - 'Timeout', 'To', 'Transaction', 'Transform', 'Type', 'UnDim', - 'Units', 'Unlink', 'Update', 'Using', 'VALUES', 'Version', - 'Versioning', 'Wend', 'WFS', 'WHERE', 'While', 'Window', 'Within', - 'Workspace', 'Write' - ), - 2 => array( - 'EndHandler', 'ForegroundTaskSwitchHandler', 'Main', - 'RemoteMapGenHandler', 'RemoteMsgHandler', 'SelChangedHandler', - 'ToolHandler', 'WinChangedHandler', 'WinClosedHandler', - 'WinFocusChangedHandler' - ), - 3 => array( - 'Abs', 'Acos', 'ApplicationDirectory$', 'AreaOverlap', 'Asc', - 'Asin', 'Ask', 'Atn', 'Avg', 'Buffer', 'ButtonPadInfo', - 'CartesianArea', 'CartesianBuffer', 'CartesianConnectObjects', - 'CartesianDistance', 'CartesianObjectDistance', - 'CartesianObjectLen', 'CartesianOffset', 'CartesianOffsetXY', - 'CartesianPerimeter', 'Centroid', 'CentroidX', 'CentroidY', - 'ChooseProjection$', 'Chr$', 'ColumnInfo', 'CommandInfo', - 'ConnectObjects', 'ControlPointInfo', 'ConvertToPline', - 'ConvertToRegion', 'ConvexHull', 'CoordSysName$', 'Cos', 'Count', - 'CreateCircle', 'CreateLine', 'CreatePoint', 'CreateText', - 'CurDate', 'CurrentBorderPen', 'CurrentBrush', 'CurrentFont', - 'CurrentLinePen', 'CurrentPen', 'CurrentSymbol', 'DateWindow', - 'Day', 'DDEInitiate', 'DDERequest$', 'DeformatNumber$', 'EOF', - 'EOT', 'EPSGToCoordSysString$', 'Err', 'Error$', 'Exp', - 'ExtractNodes', 'FileAttr', 'FileExists', 'FileOpenDlg', - 'FileSaveAsDlg', 'Fix', 'Format$', 'FormatDate$', 'FormatNumber$', - 'FrontWindow', 'GeocodeInfo', 'GetFolderPath$', 'GetGridCellValue', - 'GetMetadata$', 'GetSeamlessSheet', 'GridTableInfo', - 'HomeDirectory$', 'InStr', 'Int', 'IntersectNodes', - 'IsGridCellNull', 'IsogramInfo', 'IsPenWidthPixels', - 'LabelFindByID', 'LabelFindFirst', 'LabelFindNext', 'LabelInfo', - 'LayerInfo', 'LCase$', 'Left$', 'LegendFrameInfo', 'LegendInfo', - 'LegendStyleInfo', 'Len', 'Like', 'LocateFile$', 'LOF', 'Log', - 'LTrim$', 'MakeBrush', 'MakeCustomSymbol', 'MakeFont', - 'MakeFontSymbol', 'MakePen', 'MakeSymbol', 'Map3DInfo', - 'MapperInfo', 'Max', 'Maximum', 'MBR', 'MenuItemInfoByHandler', - 'MenuItemInfoByID', 'MGRSToPoint', 'MICloseContent', - 'MICloseFtpConnection', 'MICloseFtpFileFind', - 'MICloseHttpConnection', 'MICloseHttpFile', 'MICloseSession', - 'MICreateSession', 'MICreateSessionFull', 'Mid$', 'MidByte$', - 'MIErrorDlg', 'MIFindFtpFile', 'MIFindNextFtpFile', 'MIGetContent', - 'MIGetContentBuffer', 'MIGetContentLen', 'MIGetContentString', - 'MIGetContentToFile', 'MIGetContentType', - 'MIGetCurrentFtpDirectory', 'MIGetErrorCode', 'MIGetErrorMessage', - 'MIGetFileURL', 'MIGetFtpConnection', 'MIGetFtpFile', - 'MIGetFtpFileFind', 'MIGetFtpFileName', 'MIGetHttpConnection', - 'MIIsFtpDirectory', 'MIIsFtpDots', 'Min', 'Minimum', - 'MIOpenRequest', 'MIOpenRequestFull', 'MIParseURL', 'MIPutFtpFile', - 'MIQueryInfo', 'MIQueryInfoStatusCode', 'MISaveContent', - 'MISendRequest', 'MISendSimpleRequest', 'MISetCurrentFtpDirectory', - 'MISetSessionTimeout', 'MIXmlAttributeListDestroy', - 'MIXmlDocumentCreate', 'MIXmlDocumentDestroy', - 'MIXmlDocumentGetNamespaces', 'MIXmlDocumentGetRootNode', - 'MIXmlDocumentLoad', 'MIXmlDocumentLoadXML', - 'MIXmlDocumentLoadXMLString', 'MIXmlDocumentSetProperty', - 'MIXmlGetAttributeList', 'MIXmlGetChildList', - 'MIXmlGetNextAttribute', 'MIXmlGetNextNode', 'MIXmlNodeDestroy', - 'MIXmlNodeGetAttributeValue', 'MIXmlNodeGetFirstChild', - 'MIXmlNodeGetName', 'MIXmlNodeGetParent', 'MIXmlNodeGetText', - 'MIXmlNodeGetValue', 'MIXmlNodeListDestroy', 'MIXmlSCDestroy', - 'MIXmlSCGetLength', 'MIXmlSCGetNamespace', 'MIXmlSelectNodes', - 'MIXmlSelectSingleNode', 'Month', 'NumAllWindows', 'NumberToDate', - 'NumCols', 'NumTables', 'NumWindows', 'ObjectDistance', - 'ObjectGeography', 'ObjectInfo', 'ObjectLen', 'ObjectNodeHasM', - 'ObjectNodeHasZ', 'ObjectNodeM', 'ObjectNodeX', 'ObjectNodeY', - 'ObjectNodeZ', 'OffsetXY', 'Overlap', 'OverlayNodes', - 'PathToDirectory$', 'PathToFileName$', 'PathToTableName$', - 'PenWidthToPoints', 'Perimeter', 'PointsToPenWidth', - 'PointToMGRS$', 'PrismMapInfo', 'ProgramDirectory$', 'Proper$', - 'ProportionOverlap', 'RasterTableInfo', 'ReadControlValue', - 'RegionInfo', 'RemoteQueryHandler', 'RGB', 'Right$', 'Rnd', - 'Rotate', 'RotateAtPoint', 'Round', 'RTrim$', 'SearchInfo', - 'SearchPoint', 'SearchRect', 'SelectionInfo', 'Server_ColumnInfo', - 'Server_Connect', 'Server_ConnectInfo', 'Server_DriverInfo', - 'Server_EOT', 'Server_Execute', 'Server_GetODBCHConn', - 'Server_GetODBCHStmt', 'Server_NumCols', 'Server_NumDrivers', - 'SessionInfo', 'Sgn', 'Sin', 'Space$', 'SphericalArea', - 'SphericalConnectObjects', 'SphericalDistance', - 'SphericalObjectDistance', 'SphericalObjectLen', 'SphericalOffset', - 'SphericalOffsetXY', 'SphericalPerimeter', 'Sqr', 'Str$', - 'String$', 'StringCompare', 'StringCompareIntl', 'StringToDate', - 'StyleAttr', 'Sum', 'SystemInfo', 'TableInfo', 'Tan', - 'TempFileName$', 'TextSize', 'Time', 'Timer', 'TriggerControl', - 'TrueFileName$', 'UBound', 'UCase$', 'UnitAbbr$', 'UnitName$', - 'Val', 'Weekday', 'WindowID', 'WindowInfo', 'WtAvg', 'Year' - ), - 4 => array( - 'BLACK', 'BLUE', 'BRUSH_BACKCOLOR', 'BRUSH_FORECOLOR', - 'BRUSH_PATTERN', 'BTNPAD_INFO_FLOATING', 'BTNPAD_INFO_NBTNS', - 'BTNPAD_INFO_WIDTH', 'BTNPAD_INFO_WINID', 'BTNPAD_INFO_X', - 'BTNPAD_INFO_Y', 'CLS', 'CMD_INFO_CTRL', 'CMD_INFO_CUSTOM_OBJ', - 'CMD_INFO_DLG_DBL', 'CMD_INFO_DLG_OK', 'CMD_INFO_EDIT_ASK', - 'CMD_INFO_EDIT_DISCARD', 'CMD_INFO_EDIT_SAVE', - 'CMD_INFO_EDIT_STATUS', 'CMD_INFO_EDIT_TABLE', 'CMD_INFO_FIND_RC', - 'CMD_INFO_FIND_ROWID', 'CMD_INFO_HL_FILE_NAME', - 'CMD_INFO_HL_LAYER_ID', 'CMD_INFO_HL_ROWID', - 'CMD_INFO_HL_TABLE_NAME', 'CMD_INFO_HL_WINDOW_ID', - 'CMD_INFO_INTERRUPT', 'CMD_INFO_MENUITEM', 'CMD_INFO_MSG', - 'CMD_INFO_ROWID', 'CMD_INFO_SELTYPE', 'CMD_INFO_SHIFT', - 'CMD_INFO_STATUS', 'CMD_INFO_TASK_SWITCH', 'CMD_INFO_TOOLBTN', - 'CMD_INFO_WIN', 'CMD_INFO_X', 'CMD_INFO_X2', 'CMD_INFO_XCMD', - 'CMD_INFO_Y', 'CMD_INFO_Y2', 'COL_INFO_DECPLACES', - 'COL_INFO_EDITABLE', 'COL_INFO_INDEXED', 'COL_INFO_NAME', - 'COL_INFO_NUM', 'COL_INFO_TYPE', 'COL_INFO_WIDTH', 'COL_TYPE_CHAR', - 'COL_TYPE_DATE', 'COL_TYPE_DATETIME', 'COL_TYPE_DECIMAL', - 'COL_TYPE_FLOAT', 'COL_TYPE_GRAPHIC', 'COL_TYPE_INTEGER', - 'COL_TYPE_LOGICAL', 'COL_TYPE_SMALLINT', 'COL_TYPE_TIME', 'CYAN', - 'DATE_WIN_CURPROG', 'DATE_WIN_SESSION', 'DEG_2_RAD', - 'DICTIONARY_ADDRESS_ONLY', 'DICTIONARY_ALL', - 'DICTIONARY_PREFER_ADDRESS', 'DICTIONARY_PREFER_USER', - 'DICTIONARY_USER_ONLY', 'DM_CUSTOM_CIRCLE', 'DM_CUSTOM_ELLIPSE', - 'DM_CUSTOM_LINE', 'DM_CUSTOM_POINT', 'DM_CUSTOM_POLYGON', - 'DM_CUSTOM_POLYLINE', 'DM_CUSTOM_RECT', 'DMPAPER_10X11', - 'DMPAPER_10X14', 'DMPAPER_11X17', 'DMPAPER_12X11', 'DMPAPER_15X11', - 'DMPAPER_9X11', 'DMPAPER_A_PLUS', 'DMPAPER_A2', 'DMPAPER_A3', - 'DMPAPER_A3_EXTRA', 'DMPAPER_A3_EXTRA_TRANSVERSE', - 'DMPAPER_A3_ROTATED', 'DMPAPER_A3_TRANSVERSE', 'DMPAPER_A4', - 'DMPAPER_A4_EXTRA', 'DMPAPER_A4_PLUS', 'DMPAPER_A4_ROTATED', - 'DMPAPER_A4_TRANSVERSE', 'DMPAPER_A4SMALL', 'DMPAPER_A5', - 'DMPAPER_A5_EXTRA', 'DMPAPER_A5_ROTATED', 'DMPAPER_A5_TRANSVERSE', - 'DMPAPER_A6', 'DMPAPER_A6_ROTATED', 'DMPAPER_B_PLUS', 'DMPAPER_B4', - 'DMPAPER_B4_JIS_ROTATED', 'DMPAPER_B5', 'DMPAPER_B5_EXTRA', - 'DMPAPER_B5_JIS_ROTATED', 'DMPAPER_B5_TRANSVERSE', - 'DMPAPER_B6_JIS', 'DMPAPER_B6_JIS_ROTATED', 'DMPAPER_CSHEET', - 'DMPAPER_DBL_JAPANESE_POSTCARD', - 'DMPAPER_DBL_JAPANESE_POSTCARD_ROTATED', 'DMPAPER_DSHEET', - 'DMPAPER_ENV_10', 'DMPAPER_ENV_11', 'DMPAPER_ENV_12', - 'DMPAPER_ENV_14', 'DMPAPER_ENV_9', 'DMPAPER_ENV_B4', - 'DMPAPER_ENV_B5', 'DMPAPER_ENV_B6', 'DMPAPER_ENV_C3', - 'DMPAPER_ENV_C4', 'DMPAPER_ENV_C5', 'DMPAPER_ENV_C6', - 'DMPAPER_ENV_C65', 'DMPAPER_ENV_DL', 'DMPAPER_ENV_INVITE', - 'DMPAPER_ENV_ITALY', 'DMPAPER_ENV_MONARCH', 'DMPAPER_ENV_PERSONAL', - 'DMPAPER_ESHEET', 'DMPAPER_EXECUTIVE', - 'DMPAPER_FANFOLD_LGL_GERMAN', 'DMPAPER_FANFOLD_STD_GERMAN', - 'DMPAPER_FANFOLD_US', 'DMPAPER_FIRST', 'DMPAPER_FOLIO', - 'DMPAPER_ISO_B4', 'DMPAPER_JAPANESE_POSTCARD', - 'DMPAPER_JAPANESE_POSTCARD_ROTATED', 'DMPAPER_JENV_CHOU3', - 'DMPAPER_JENV_CHOU3_ROTATED', 'DMPAPER_JENV_CHOU4', - 'DMPAPER_JENV_CHOU4_ROTATED', 'DMPAPER_JENV_KAKU2', - 'DMPAPER_JENV_KAKU2_ROTATED', 'DMPAPER_JENV_KAKU3', - 'DMPAPER_JENV_KAKU3_ROTATED', 'DMPAPER_JENV_YOU4', - 'DMPAPER_JENV_YOU4_ROTATED', 'DMPAPER_LEDGER', 'DMPAPER_LEGAL', - 'DMPAPER_LEGAL_EXTRA', 'DMPAPER_LETTER', 'DMPAPER_LETTER_EXTRA', - 'DMPAPER_LETTER_EXTRA_TRANSVERSE', 'DMPAPER_LETTER_PLUS', - 'DMPAPER_LETTER_ROTATED', 'DMPAPER_LETTER_TRANSVERSE', - 'DMPAPER_LETTERSMALL', 'DMPAPER_NOTE', 'DMPAPER_P16K', - 'DMPAPER_P16K_ROTATED', 'DMPAPER_P32K', 'DMPAPER_P32K_ROTATED', - 'DMPAPER_P32KBIG', 'DMPAPER_P32KBIG_ROTATED', 'DMPAPER_PENV_1', - 'DMPAPER_PENV_1_ROTATED', 'DMPAPER_PENV_10', - 'DMPAPER_PENV_10_ROTATED', 'DMPAPER_PENV_2', - 'DMPAPER_PENV_2_ROTATED', 'DMPAPER_PENV_3', - 'DMPAPER_PENV_3_ROTATED', 'DMPAPER_PENV_4', - 'DMPAPER_PENV_4_ROTATED', 'DMPAPER_PENV_5', - 'DMPAPER_PENV_5_ROTATED', 'DMPAPER_PENV_6', - 'DMPAPER_PENV_6_ROTATED', 'DMPAPER_PENV_7', - 'DMPAPER_PENV_7_ROTATED', 'DMPAPER_PENV_8', - 'DMPAPER_PENV_8_ROTATED', 'DMPAPER_PENV_9', - 'DMPAPER_PENV_9_ROTATED', 'DMPAPER_QUARTO', 'DMPAPER_RESERVED_48', - 'DMPAPER_RESERVED_49', 'DMPAPER_STATEMENT', 'DMPAPER_TABLOID', - 'DMPAPER_TABLOID_EXTRA', 'DMPAPER_USER', 'ERR_BAD_WINDOW', - 'ERR_BAD_WINDOW_NUM', 'ERR_CANT_ACCESS_FILE', - 'ERR_CANT_INITIATE_LINK', 'ERR_CMD_NOT_SUPPORTED', - 'ERR_FCN_ARG_RANGE', 'ERR_FCN_INVALID_FMT', - 'ERR_FCN_OBJ_FETCH_FAILED', 'ERR_FILEMGR_NOTOPEN', - 'ERR_FP_MATH_LIB_DOMAIN', 'ERR_FP_MATH_LIB_RANGE', - 'ERR_INVALID_CHANNEL', 'ERR_INVALID_READ_CONTROL', - 'ERR_INVALID_TRIG_CONTROL', 'ERR_NO_FIELD', - 'ERR_NO_RESPONSE_FROM_APP', 'ERR_NULL_SELECTION', - 'ERR_PROCESS_FAILED_IN_APP', 'ERR_TABLE_NOT_FOUND', - 'ERR_WANT_MAPPER_WIN', 'FALSE', 'FILE_ATTR_FILESIZE', - 'FILE_ATTR_MODE', 'FILTER_ALL_DIRECTIONS_1', - 'FILTER_ALL_DIRECTIONS_2', 'FILTER_DIAGONALLY', - 'FILTER_HORIZONTALLY', 'FILTER_VERTICALLY', - 'FILTER_VERTICALLY_AND_HORIZONTALLY', 'FOLDER_APPDATA', - 'FOLDER_COMMON_APPDATA', 'FOLDER_COMMON_DOCS', - 'FOLDER_LOCAL_APPDATA', 'FOLDER_MI_APPDATA', - 'FOLDER_MI_COMMON_APPDATA', 'FOLDER_MI_LOCAL_APPDATA', - 'FOLDER_MI_PREFERENCE', 'FOLDER_MYDOCS', 'FOLDER_MYPICS', - 'FONT_BACKCOLOR', 'FONT_FORECOLOR', 'FONT_NAME', 'FONT_POINTSIZE', - 'FONT_STYLE', 'FRAME_INFO_BORDER_PEN', 'FRAME_INFO_COLUMN', - 'FRAME_INFO_HEIGHT', 'FRAME_INFO_LABEL', 'FRAME_INFO_MAP_LAYER_ID', - 'FRAME_INFO_NUM_STYLES', 'FRAME_INFO_POS_X', 'FRAME_INFO_POS_Y', - 'FRAME_INFO_REFRESHABLE', 'FRAME_INFO_SUBTITLE', - 'FRAME_INFO_SUBTITLE_FONT', 'FRAME_INFO_TITLE', - 'FRAME_INFO_TITLE_FONT', 'FRAME_INFO_TYPE', 'FRAME_INFO_VISIBLE', - 'FRAME_INFO_WIDTH', 'FRAME_TYPE_STYLE', 'FRAME_TYPE_THEME', - 'GEO_CONTROL_POINT_X', 'GEO_CONTROL_POINT_Y', 'GEOCODE_BATCH_SIZE', - 'GEOCODE_COUNT_GEOCODED', 'GEOCODE_COUNT_NOTGEOCODED', - 'GEOCODE_COUNTRY_SUBDIVISION', 'GEOCODE_COUNTRY_SUBDIVISION2', - 'GEOCODE_DICTIONARY', 'GEOCODE_FALLBACK_GEOGRAPHIC', - 'GEOCODE_FALLBACK_POSTAL', 'GEOCODE_MAX_BATCH_SIZE', - 'GEOCODE_MIXED_CASE', 'GEOCODE_MUNICIPALITY', - 'GEOCODE_MUNICIPALITY2', 'GEOCODE_OFFSET_CENTER', - 'GEOCODE_OFFSET_CENTER_UNITS', 'GEOCODE_OFFSET_END', - 'GEOCODE_OFFSET_END_UNITS', 'GEOCODE_PASSTHROUGH', - 'GEOCODE_POSTAL_CODE', 'GEOCODE_RESULT_MARK_MULTIPLE', - 'GEOCODE_STREET_NAME', 'GEOCODE_STREET_NUMBER', - 'GEOCODE_UNABLE_TO_CONVERT_DATA', 'GREEN', - 'GRID_TAB_INFO_HAS_HILLSHADE', 'GRID_TAB_INFO_MAX_VALUE', - 'GRID_TAB_INFO_MIN_VALUE', 'HOTLINK_INFO_ENABLED', - 'HOTLINK_INFO_EXPR', 'HOTLINK_INFO_MODE', 'HOTLINK_INFO_RELATIVE', - 'HOTLINK_MODE_BOTH', 'HOTLINK_MODE_LABEL', 'HOTLINK_MODE_OBJ', - 'IMAGE_CLASS_BILEVEL', 'IMAGE_CLASS_GREYSCALE', - 'IMAGE_CLASS_PALETTE', 'IMAGE_CLASS_RGB', 'IMAGE_TYPE_GRID', - 'IMAGE_TYPE_RASTER', 'INCL_ALL', 'INCL_COMMON', 'INCL_CROSSINGS', - 'ISOGRAM_AMBIENT_SPEED_DIST_UNIT', - 'ISOGRAM_AMBIENT_SPEED_TIME_UNIT', 'ISOGRAM_BANDING', - 'ISOGRAM_BATCH_SIZE', 'ISOGRAM_DEFAULT_AMBIENT_SPEED', - 'ISOGRAM_MAJOR_POLYGON_ONLY', 'ISOGRAM_MAJOR_ROADS_ONLY', - 'ISOGRAM_MAX_BANDS', 'ISOGRAM_MAX_BATCH_SIZE', - 'ISOGRAM_MAX_DISTANCE', 'ISOGRAM_MAX_DISTANCE_UNITS', - 'ISOGRAM_MAX_OFFROAD_DIST', 'ISOGRAM_MAX_OFFROAD_DIST_UNITS', - 'ISOGRAM_MAX_TIME', 'ISOGRAM_MAX_TIME_UNITS', - 'ISOGRAM_POINTS_ONLY', 'ISOGRAM_PROPAGATION_FACTOR', - 'ISOGRAM_RECORDS_INSERTED', 'ISOGRAM_RECORDS_NOTINSERTED', - 'ISOGRAM_RETURN_HOLES', 'ISOGRAM_SIMPLIFICATION_FACTOR', - 'LABEL_INFO_ANCHORX', 'LABEL_INFO_ANCHORY', 'LABEL_INFO_DRAWN', - 'LABEL_INFO_EDIT', 'LABEL_INFO_EDIT_ANCHOR', - 'LABEL_INFO_EDIT_ANGLE', 'LABEL_INFO_EDIT_FONT', - 'LABEL_INFO_EDIT_OFFSET', 'LABEL_INFO_EDIT_PEN', - 'LABEL_INFO_EDIT_POSITION', 'LABEL_INFO_EDIT_TEXT', - 'LABEL_INFO_EDIT_TEXTARROW', 'LABEL_INFO_EDIT_TEXTLINE', - 'LABEL_INFO_EDIT_VISIBILITY', 'LABEL_INFO_OBJECT', - 'LABEL_INFO_OFFSET', 'LABEL_INFO_ORIENTATION', - 'LABEL_INFO_POSITION', 'LABEL_INFO_ROWID', 'LABEL_INFO_SELECT', - 'LABEL_INFO_TABLE', 'LAYER_INFO_ARROWS', 'LAYER_INFO_CENTROIDS', - 'LAYER_INFO_COSMETIC', 'LAYER_INFO_DISPLAY', - 'LAYER_INFO_DISPLAY_GLOBAL', 'LAYER_INFO_DISPLAY_GRAPHIC', - 'LAYER_INFO_DISPLAY_OFF', 'LAYER_INFO_DISPLAY_VALUE', - 'LAYER_INFO_EDITABLE', 'LAYER_INFO_HOTLINK_COUNT', - 'LAYER_INFO_HOTLINK_EXPR', 'LAYER_INFO_HOTLINK_MODE', - 'LAYER_INFO_HOTLINK_RELATIVE', 'LAYER_INFO_LABEL_ALPHA', - 'LAYER_INFO_LABEL_ORIENT_CURVED', - 'LAYER_INFO_LABEL_ORIENT_HORIZONTAL', - 'LAYER_INFO_LABEL_ORIENT_PARALLEL', 'LAYER_INFO_LAYER_ALPHA', - 'LAYER_INFO_LAYER_TRANSLUCENCY', 'LAYER_INFO_LBL_AUTODISPLAY', - 'LAYER_INFO_LBL_CURFONT', 'LAYER_INFO_LBL_DUPLICATES', - 'LAYER_INFO_LBL_EXPR', 'LAYER_INFO_LBL_FONT', 'LAYER_INFO_LBL_LT', - 'LAYER_INFO_LBL_LT_ARROW', 'LAYER_INFO_LBL_LT_NONE', - 'LAYER_INFO_LBL_LT_SIMPLE', 'LAYER_INFO_LBL_MAX', - 'LAYER_INFO_LBL_OFFSET', 'LAYER_INFO_LBL_ORIENTATION', - 'LAYER_INFO_LBL_OVERLAP', 'LAYER_INFO_LBL_PARALLEL', - 'LAYER_INFO_LBL_PARTIALSEGS', 'LAYER_INFO_LBL_POS', - 'LAYER_INFO_LBL_POS_BC', 'LAYER_INFO_LBL_POS_BL', - 'LAYER_INFO_LBL_POS_BR', 'LAYER_INFO_LBL_POS_CC', - 'LAYER_INFO_LBL_POS_CL', 'LAYER_INFO_LBL_POS_CR', - 'LAYER_INFO_LBL_POS_TC', 'LAYER_INFO_LBL_POS_TL', - 'LAYER_INFO_LBL_POS_TR', 'LAYER_INFO_LBL_VIS_OFF', - 'LAYER_INFO_LBL_VIS_ON', 'LAYER_INFO_LBL_VIS_ZOOM', - 'LAYER_INFO_LBL_VISIBILITY', 'LAYER_INFO_LBL_ZOOM_MAX', - 'LAYER_INFO_LBL_ZOOM_MIN', 'LAYER_INFO_NAME', 'LAYER_INFO_NODES', - 'LAYER_INFO_OVR_BRUSH', 'LAYER_INFO_OVR_FONT', - 'LAYER_INFO_OVR_LINE', 'LAYER_INFO_OVR_PEN', - 'LAYER_INFO_OVR_SYMBOL', 'LAYER_INFO_PATH', - 'LAYER_INFO_SELECTABLE', 'LAYER_INFO_TYPE', - 'LAYER_INFO_TYPE_COSMETIC', 'LAYER_INFO_TYPE_GRID', - 'LAYER_INFO_TYPE_IMAGE', 'LAYER_INFO_TYPE_NORMAL', - 'LAYER_INFO_TYPE_THEMATIC', 'LAYER_INFO_TYPE_WMS', - 'LAYER_INFO_ZOOM_LAYERED', 'LAYER_INFO_ZOOM_MAX', - 'LAYER_INFO_ZOOM_MIN', 'LEGEND_INFO_MAP_ID', - 'LEGEND_INFO_NUM_FRAMES', 'LEGEND_INFO_ORIENTATION', - 'LEGEND_INFO_STYLE_SAMPLE_SIZE', 'LEGEND_STYLE_INFO_FONT', - 'LEGEND_STYLE_INFO_OBJ', 'LEGEND_STYLE_INFO_TEXT', - 'LOCATE_ABB_FILE', 'LOCATE_CLR_FILE', 'LOCATE_CUSTSYMB_DIR', - 'LOCATE_DEF_WOR', 'LOCATE_FNT_FILE', 'LOCATE_GEOCODE_SERVERLIST', - 'LOCATE_GRAPH_DIR', 'LOCATE_LAYOUT_TEMPLATE_DIR', - 'LOCATE_MNU_FILE', 'LOCATE_PEN_FILE', 'LOCATE_PREF_FILE', - 'LOCATE_PRJ_FILE', 'LOCATE_ROUTING_SERVERLIST', - 'LOCATE_THMTMPLT_DIR', 'LOCATE_WFS_SERVERLIST', - 'LOCATE_WMS_SERVERLIST', 'M_3DMAP_CLONE_VIEW', - 'M_3DMAP_PREVIOUS_VIEW', 'M_3DMAP_PROPERTIES', - 'M_3DMAP_REFRESH_GRID_TEXTURE', 'M_3DMAP_VIEW_ENTIRE_GRID', - 'M_3DMAP_VIEWPOINT_CONTROL', 'M_3DMAP_WIREFRAME', - 'M_ANALYZE_CALC_STATISTICS', 'M_ANALYZE_CUSTOMIZE_LEGEND', - 'M_ANALYZE_FIND', 'M_ANALYZE_FIND_SELECTION', - 'M_ANALYZE_INVERTSELECT', 'M_ANALYZE_SELECT', - 'M_ANALYZE_SELECTALL', 'M_ANALYZE_SHADE', 'M_ANALYZE_SQLQUERY', - 'M_ANALYZE_UNSELECT', 'M_BROWSE_EDIT', 'M_BROWSE_GRID', - 'M_BROWSE_NEW_RECORD', 'M_BROWSE_OPTIONS', 'M_BROWSE_PICK_FIELDS', - 'M_DBMS_OPEN_ODBC', 'M_EDIT_CLEAR', 'M_EDIT_CLEAROBJ', - 'M_EDIT_COPY', 'M_EDIT_CUT', 'M_EDIT_GETINFO', 'M_EDIT_NEW_ROW', - 'M_EDIT_PASTE', 'M_EDIT_PREFERENCES', 'M_EDIT_PREFERENCES_COUNTRY', - 'M_EDIT_PREFERENCES_FILE', 'M_EDIT_PREFERENCES_IMAGE_PROC', - 'M_EDIT_PREFERENCES_LAYOUT', 'M_EDIT_PREFERENCES_LEGEND', - 'M_EDIT_PREFERENCES_MAP', 'M_EDIT_PREFERENCES_OUTPUT', - 'M_EDIT_PREFERENCES_PATH', 'M_EDIT_PREFERENCES_PRINTER', - 'M_EDIT_PREFERENCES_STYLES', 'M_EDIT_PREFERENCES_SYSTEM', - 'M_EDIT_PREFERENCES_WEBSERVICES', 'M_EDIT_RESHAPE', 'M_EDIT_UNDO', - 'M_FILE_ABOUT', 'M_FILE_ADD_WORKSPACE', 'M_FILE_CLOSE', - 'M_FILE_CLOSE_ALL', 'M_FILE_CLOSE_ODBC', 'M_FILE_EXIT', - 'M_FILE_HELP', 'M_FILE_NEW', 'M_FILE_OPEN', 'M_FILE_OPEN_ODBC', - 'M_FILE_OPEN_ODBC_CONN', 'M_FILE_OPEN_UNIVERSAL_DATA', - 'M_FILE_OPEN_WFS', 'M_FILE_OPEN_WMS', 'M_FILE_PAGE_SETUP', - 'M_FILE_PRINT', 'M_FILE_PRINT_SETUP', 'M_FILE_REVERT', - 'M_FILE_RUN', 'M_FILE_SAVE', 'M_FILE_SAVE_COPY_AS', - 'M_FILE_SAVE_QUERY', 'M_FILE_SAVE_WINDOW_AS', - 'M_FILE_SAVE_WORKSPACE', 'M_FORMAT_CUSTOM_COLORS', - 'M_FORMAT_PICK_FILL', 'M_FORMAT_PICK_FONT', 'M_FORMAT_PICK_LINE', - 'M_FORMAT_PICK_SYMBOL', 'M_GRAPH_3D_VIEWING_ANGLE', - 'M_GRAPH_FORMATING', 'M_GRAPH_GENERAL_OPTIONS', - 'M_GRAPH_GRID_SCALES', 'M_GRAPH_LABEL_AXIS', - 'M_GRAPH_SAVE_AS_TEMPLATE', 'M_GRAPH_SERIES', - 'M_GRAPH_SERIES_OPTIONS', 'M_GRAPH_TITLES', 'M_GRAPH_TYPE', - 'M_GRAPH_VALUE_AXIS', 'M_HELP_ABOUT', 'M_HELP_CHECK_FOR_UPDATE', - 'M_HELP_CONNECT_MIFORUM', 'M_HELP_CONTENTS', - 'M_HELP_CONTEXTSENSITIVE', 'M_HELP_HELPMODE', - 'M_HELP_MAPINFO_3DGRAPH_HELP', 'M_HELP_MAPINFO_CONNECT_SERVICES', - 'M_HELP_MAPINFO_WWW', 'M_HELP_MAPINFO_WWW_STORE', - 'M_HELP_MAPINFO_WWW_TUTORIAL', 'M_HELP_SEARCH', - 'M_HELP_TECHSUPPORT', 'M_HELP_USE_HELP', 'M_LAYOUT_ACTUAL', - 'M_LAYOUT_ALIGN', 'M_LAYOUT_AUTOSCROLL_ONOFF', - 'M_LAYOUT_BRING2FRONT', 'M_LAYOUT_CHANGE_VIEW', - 'M_LAYOUT_DISPLAYOPTIONS', 'M_LAYOUT_DROPSHADOWS', - 'M_LAYOUT_ENTIRE', 'M_LAYOUT_LAYOUT_SIZE', 'M_LAYOUT_PREVIOUS', - 'M_LAYOUT_SEND2BACK', 'M_LEGEND_ADD_FRAMES', 'M_LEGEND_DELETE', - 'M_LEGEND_PROPERTIES', 'M_LEGEND_REFRESH', 'M_MAP_AUTOLABEL', - 'M_MAP_AUTOSCROLL_ONOFF', 'M_MAP_CHANGE_VIEW', - 'M_MAP_CLEAR_COSMETIC', 'M_MAP_CLEAR_CUSTOM_LABELS', - 'M_MAP_CLIP_REGION_ONOFF', 'M_MAP_CLONE_MAPPER', - 'M_MAP_CREATE_3DMAP', 'M_MAP_CREATE_LEGEND', - 'M_MAP_CREATE_PRISMMAP', 'M_MAP_ENTIRE_LAYER', - 'M_MAP_LAYER_CONTROL', 'M_MAP_MODIFY_THEMATIC', 'M_MAP_OPTIONS', - 'M_MAP_PREVIOUS', 'M_MAP_PROJECTION', 'M_MAP_SAVE_COSMETIC', - 'M_MAP_SET_CLIP_REGION', 'M_MAP_SETUNITS', 'M_MAP_SETUPDIGITIZER', - 'M_MAP_THEMATIC', 'M_MAPBASIC_CLEAR', 'M_MAPBASIC_SAVECONTENTS', - 'M_OBJECTS_BREAKPOLY', 'M_OBJECTS_BUFFER', - 'M_OBJECTS_CHECK_REGIONS', 'M_OBJECTS_CLEAN', - 'M_OBJECTS_CLEAR_TARGET', 'M_OBJECTS_COMBINE', - 'M_OBJECTS_CONVEX_HULL', 'M_OBJECTS_CVT_PGON', - 'M_OBJECTS_CVT_PLINE', 'M_OBJECTS_DISAGG', - 'M_OBJECTS_DRIVE_REGION', 'M_OBJECTS_ENCLOSE', 'M_OBJECTS_ERASE', - 'M_OBJECTS_ERASE_OUT', 'M_OBJECTS_MERGE', 'M_OBJECTS_OFFSET', - 'M_OBJECTS_OVERLAY', 'M_OBJECTS_POLYLINE_SPLIT', - 'M_OBJECTS_POLYLINE_SPLIT_AT_NODE', 'M_OBJECTS_RESHAPE', - 'M_OBJECTS_ROTATE', 'M_OBJECTS_SET_TARGET', 'M_OBJECTS_SMOOTH', - 'M_OBJECTS_SNAP', 'M_OBJECTS_SPLIT', 'M_OBJECTS_UNSMOOTH', - 'M_OBJECTS_VORONOI', 'M_ORACLE_CREATE_WORKSPACE', - 'M_ORACLE_DELETE_WORKSPACE', 'M_ORACLE_MERGE_PARENT', - 'M_ORACLE_REFRESH_FROM_PARENT', 'M_ORACLE_VERSION_ENABLE_OFF', - 'M_ORACLE_VERSION_ENABLE_ON', 'M_QUERY_CALC_STATISTICS', - 'M_QUERY_FIND', 'M_QUERY_FIND_ADDRESS', 'M_QUERY_FIND_SELECTION', - 'M_QUERY_FIND_SELECTION_CURRENT_MAP', 'M_QUERY_INVERTSELECT', - 'M_QUERY_SELECT', 'M_QUERY_SELECTALL', 'M_QUERY_SQLQUERY', - 'M_QUERY_UNSELECT', 'M_REDISTRICT_ADD', 'M_REDISTRICT_ASSIGN', - 'M_REDISTRICT_DELETE', 'M_REDISTRICT_OPTIONS', - 'M_REDISTRICT_TARGET', 'M_SENDMAIL_CURRENTWINDOW', - 'M_SENDMAIL_WORKSPACE', 'M_TABLE_APPEND', 'M_TABLE_BUFFER', - 'M_TABLE_CHANGESYMBOL', 'M_TABLE_CREATE_POINTS', 'M_TABLE_DELETE', - 'M_TABLE_DRIVE_REGION', 'M_TABLE_EXPORT', 'M_TABLE_GEOCODE', - 'M_TABLE_IMPORT', 'M_TABLE_MAKEMAPPABLE', - 'M_TABLE_MERGE_USING_COLUMN', 'M_TABLE_MODIFY_STRUCTURE', - 'M_TABLE_PACK', 'M_TABLE_RASTER_REG', 'M_TABLE_RASTER_STYLE', - 'M_TABLE_REFRESH', 'M_TABLE_RENAME', - 'M_TABLE_UNIVERSAL_DATA_REFRESH', 'M_TABLE_UNLINK', - 'M_TABLE_UPDATE_COLUMN', 'M_TABLE_VORONOI', 'M_TABLE_WEB_GEOCODE', - 'M_TABLE_WFS_PROPS', 'M_TABLE_WFS_REFRESH', 'M_TABLE_WMS_PROPS', - 'M_TOOLS_ADD_NODE', 'M_TOOLS_ARC', 'M_TOOLS_CRYSTAL_REPORTS_NEW', - 'M_TOOLS_CRYSTAL_REPORTS_OPEN', 'M_TOOLS_DRAGWINDOW', - 'M_TOOLS_ELLIPSE', 'M_TOOLS_EXPAND', 'M_TOOLS_FRAME', - 'M_TOOLS_HOTLINK', 'M_TOOLS_LABELER', 'M_TOOLS_LINE', - 'M_TOOLS_MAPBASIC', 'M_TOOLS_PNT_QUERY', 'M_TOOLS_POINT', - 'M_TOOLS_POLYGON', 'M_TOOLS_POLYLINE', 'M_TOOLS_RASTER_REG', - 'M_TOOLS_RECENTER', 'M_TOOLS_RECTANGLE', 'M_TOOLS_ROUNDEDRECT', - 'M_TOOLS_RULER', 'M_TOOLS_RUN', 'M_TOOLS_SEARCH_BOUNDARY', - 'M_TOOLS_SEARCH_POLYGON', 'M_TOOLS_SEARCH_RADIUS', - 'M_TOOLS_SEARCH_RECT', 'M_TOOLS_SELECTOR', 'M_TOOLS_SHRINK', - 'M_TOOLS_TEXT', 'M_TOOLS_TOOL_MANAGER', 'M_WINDOW_ARRANGEICONS', - 'M_WINDOW_BROWSE', 'M_WINDOW_BUTTONPAD', 'M_WINDOW_CASCADE', - 'M_WINDOW_EXPORT_WINDOW', 'M_WINDOW_FIRST', 'M_WINDOW_GRAPH', - 'M_WINDOW_LAYOUT', 'M_WINDOW_LEGEND', 'M_WINDOW_MAP', - 'M_WINDOW_MAPBASIC', 'M_WINDOW_MORE', 'M_WINDOW_REDISTRICT', - 'M_WINDOW_REDRAW', 'M_WINDOW_STATISTICS', 'M_WINDOW_STATUSBAR', - 'M_WINDOW_TILE', 'M_WINDOW_TOOL_PALETTE', 'MAGENTA', - 'MAP3D_INFO_BACKGROUND', 'MAP3D_INFO_CAMERA_CLIP_FAR', - 'MAP3D_INFO_CAMERA_CLIP_NEAR', 'MAP3D_INFO_CAMERA_FOCAL_X', - 'MAP3D_INFO_CAMERA_FOCAL_Y', 'MAP3D_INFO_CAMERA_FOCAL_Z', - 'MAP3D_INFO_CAMERA_VPN_1', 'MAP3D_INFO_CAMERA_VPN_2', - 'MAP3D_INFO_CAMERA_VPN_3', 'MAP3D_INFO_CAMERA_VU_1', - 'MAP3D_INFO_CAMERA_VU_2', 'MAP3D_INFO_CAMERA_VU_3', - 'MAP3D_INFO_CAMERA_X', 'MAP3D_INFO_CAMERA_Y', - 'MAP3D_INFO_CAMERA_Z', 'MAP3D_INFO_LIGHT_COLOR', - 'MAP3D_INFO_LIGHT_X', 'MAP3D_INFO_LIGHT_Y', 'MAP3D_INFO_LIGHT_Z', - 'MAP3D_INFO_RESOLUTION_X', 'MAP3D_INFO_RESOLUTION_Y', - 'MAP3D_INFO_SCALE', 'MAP3D_INFO_UNITS', 'MAPPER_INFO_AREAUNITS', - 'MAPPER_INFO_CENTERX', 'MAPPER_INFO_CENTERY', - 'MAPPER_INFO_CLIP_DISPLAY_ALL', 'MAPPER_INFO_CLIP_DISPLAY_POLYOBJ', - 'MAPPER_INFO_CLIP_OVERLAY', 'MAPPER_INFO_CLIP_REGION', - 'MAPPER_INFO_CLIP_TYPE', 'MAPPER_INFO_COORDSYS_CLAUSE', - 'MAPPER_INFO_COORDSYS_CLAUSE_WITH_BOUNDS', - 'MAPPER_INFO_COORDSYS_NAME', 'MAPPER_INFO_DISPLAY', - 'MAPPER_INFO_DISPLAY_DECIMAL', 'MAPPER_INFO_DISPLAY_DEGMINSEC', - 'MAPPER_INFO_DISPLAY_DMS', 'MAPPER_INFO_DISPLAY_MGRS', - 'MAPPER_INFO_DISPLAY_POSITION', 'MAPPER_INFO_DISPLAY_SCALE', - 'MAPPER_INFO_DISPLAY_ZOOM', 'MAPPER_INFO_DIST_CALC_TYPE', - 'MAPPER_INFO_DIST_CARTESIAN', 'MAPPER_INFO_DIST_SPHERICAL', - 'MAPPER_INFO_DISTUNITS', 'MAPPER_INFO_EDIT_LAYER', - 'MAPPER_INFO_LAYERS', 'MAPPER_INFO_MAXX', 'MAPPER_INFO_MAXY', - 'MAPPER_INFO_MERGE_MAP', 'MAPPER_INFO_MINX', 'MAPPER_INFO_MINY', - 'MAPPER_INFO_MOVE_DUPLICATE_NODES', 'MAPPER_INFO_NUM_THEMATIC', - 'MAPPER_INFO_REPROJECTION', 'MAPPER_INFO_RESAMPLING', - 'MAPPER_INFO_SCALE', 'MAPPER_INFO_SCROLLBARS', - 'MAPPER_INFO_XYUNITS', 'MAPPER_INFO_ZOOM', 'MAX_STRING_LENGTH', - 'MENUITEM_INFO_ACCELERATOR', 'MENUITEM_INFO_CHECKABLE', - 'MENUITEM_INFO_CHECKED', 'MENUITEM_INFO_ENABLED', - 'MENUITEM_INFO_HANDLER', 'MENUITEM_INFO_HELPMSG', - 'MENUITEM_INFO_ID', 'MENUITEM_INFO_SHOWHIDEABLE', - 'MENUITEM_INFO_TEXT', 'MI_CURSOR_ARROW', 'MI_CURSOR_CHANGE_WIDTH', - 'MI_CURSOR_CROSSHAIR', 'MI_CURSOR_DRAG_OBJ', - 'MI_CURSOR_FINGER_LEFT', 'MI_CURSOR_FINGER_UP', - 'MI_CURSOR_GRABBER', 'MI_CURSOR_IBEAM', 'MI_CURSOR_IBEAM_CROSS', - 'MI_CURSOR_ZOOM_IN', 'MI_CURSOR_ZOOM_OUT', 'MI_ICON_ADD_NODE', - 'MI_ICON_ARC', 'MI_ICON_ARROW', 'MI_ICON_ARROW_1', - 'MI_ICON_ARROW_10', 'MI_ICON_ARROW_11', 'MI_ICON_ARROW_12', - 'MI_ICON_ARROW_13', 'MI_ICON_ARROW_14', 'MI_ICON_ARROW_15', - 'MI_ICON_ARROW_16', 'MI_ICON_ARROW_17', 'MI_ICON_ARROW_18', - 'MI_ICON_ARROW_19', 'MI_ICON_ARROW_2', 'MI_ICON_ARROW_20', - 'MI_ICON_ARROW_21', 'MI_ICON_ARROW_3', 'MI_ICON_ARROW_4', - 'MI_ICON_ARROW_5', 'MI_ICON_ARROW_6', 'MI_ICON_ARROW_7', - 'MI_ICON_ARROW_8', 'MI_ICON_ARROW_9', 'MI_ICON_CLIP_MODE', - 'MI_ICON_CLIP_REGION', 'MI_ICON_CLOSE_ALL', - 'MI_ICON_COMMUNICATION_1', 'MI_ICON_COMMUNICATION_10', - 'MI_ICON_COMMUNICATION_11', 'MI_ICON_COMMUNICATION_12', - 'MI_ICON_COMMUNICATION_2', 'MI_ICON_COMMUNICATION_3', - 'MI_ICON_COMMUNICATION_4', 'MI_ICON_COMMUNICATION_5', - 'MI_ICON_COMMUNICATION_6', 'MI_ICON_COMMUNICATION_7', - 'MI_ICON_COMMUNICATION_8', 'MI_ICON_COMMUNICATION_9', - 'MI_ICON_COMPASS_CIRCLE_TA', 'MI_ICON_COMPASS_CONTRACT', - 'MI_ICON_COMPASS_EXPAND', 'MI_ICON_COMPASS_POLY_TA', - 'MI_ICON_COMPASS_TAG', 'MI_ICON_COMPASS_UNTAG', 'MI_ICON_COPY', - 'MI_ICON_CROSSHAIR', 'MI_ICON_CUT', 'MI_ICON_DISTRICT_MANY', - 'MI_ICON_DISTRICT_SAME', 'MI_ICON_DRAG_HANDLE', 'MI_ICON_ELLIPSE', - 'MI_ICON_EMERGENCY_1', 'MI_ICON_EMERGENCY_10', - 'MI_ICON_EMERGENCY_11', 'MI_ICON_EMERGENCY_12', - 'MI_ICON_EMERGENCY_13', 'MI_ICON_EMERGENCY_14', - 'MI_ICON_EMERGENCY_15', 'MI_ICON_EMERGENCY_16', - 'MI_ICON_EMERGENCY_17', 'MI_ICON_EMERGENCY_18', - 'MI_ICON_EMERGENCY_2', 'MI_ICON_EMERGENCY_3', - 'MI_ICON_EMERGENCY_4', 'MI_ICON_EMERGENCY_5', - 'MI_ICON_EMERGENCY_6', 'MI_ICON_EMERGENCY_7', - 'MI_ICON_EMERGENCY_8', 'MI_ICON_EMERGENCY_9', 'MI_ICON_GRABBER', - 'MI_ICON_GRAPH_SELECT', 'MI_ICON_HELP', 'MI_ICON_HOT_LINK', - 'MI_ICON_INFO', 'MI_ICON_INVERTSELECT', 'MI_ICON_LABEL', - 'MI_ICON_LAYERS', 'MI_ICON_LEGEND', 'MI_ICON_LETTERS_A', - 'MI_ICON_LETTERS_B', 'MI_ICON_LETTERS_C', 'MI_ICON_LETTERS_D', - 'MI_ICON_LETTERS_E', 'MI_ICON_LETTERS_F', 'MI_ICON_LETTERS_G', - 'MI_ICON_LETTERS_H', 'MI_ICON_LETTERS_I', 'MI_ICON_LETTERS_J', - 'MI_ICON_LETTERS_K', 'MI_ICON_LETTERS_L', 'MI_ICON_LETTERS_M', - 'MI_ICON_LETTERS_N', 'MI_ICON_LETTERS_O', 'MI_ICON_LETTERS_P', - 'MI_ICON_LETTERS_Q', 'MI_ICON_LETTERS_R', 'MI_ICON_LETTERS_S', - 'MI_ICON_LETTERS_T', 'MI_ICON_LETTERS_U', 'MI_ICON_LETTERS_V', - 'MI_ICON_LETTERS_W', 'MI_ICON_LETTERS_X', 'MI_ICON_LETTERS_Y', - 'MI_ICON_LETTERS_Z', 'MI_ICON_LINE', 'MI_ICON_LINE_STYLE', - 'MI_ICON_MAPSYMB_1', 'MI_ICON_MAPSYMB_10', 'MI_ICON_MAPSYMB_11', - 'MI_ICON_MAPSYMB_12', 'MI_ICON_MAPSYMB_13', 'MI_ICON_MAPSYMB_14', - 'MI_ICON_MAPSYMB_15', 'MI_ICON_MAPSYMB_16', 'MI_ICON_MAPSYMB_17', - 'MI_ICON_MAPSYMB_18', 'MI_ICON_MAPSYMB_19', 'MI_ICON_MAPSYMB_2', - 'MI_ICON_MAPSYMB_20', 'MI_ICON_MAPSYMB_21', 'MI_ICON_MAPSYMB_22', - 'MI_ICON_MAPSYMB_23', 'MI_ICON_MAPSYMB_24', 'MI_ICON_MAPSYMB_25', - 'MI_ICON_MAPSYMB_26', 'MI_ICON_MAPSYMB_3', 'MI_ICON_MAPSYMB_4', - 'MI_ICON_MAPSYMB_5', 'MI_ICON_MAPSYMB_6', 'MI_ICON_MAPSYMB_7', - 'MI_ICON_MAPSYMB_8', 'MI_ICON_MAPSYMB_9', 'MI_ICON_MARITIME_1', - 'MI_ICON_MARITIME_10', 'MI_ICON_MARITIME_2', 'MI_ICON_MARITIME_3', - 'MI_ICON_MARITIME_4', 'MI_ICON_MARITIME_5', 'MI_ICON_MARITIME_6', - 'MI_ICON_MARITIME_7', 'MI_ICON_MARITIME_8', 'MI_ICON_MARITIME_9', - 'MI_ICON_MB_1', 'MI_ICON_MB_10', 'MI_ICON_MB_11', 'MI_ICON_MB_12', - 'MI_ICON_MB_13', 'MI_ICON_MB_14', 'MI_ICON_MB_2', 'MI_ICON_MB_3', - 'MI_ICON_MB_4', 'MI_ICON_MB_5', 'MI_ICON_MB_6', 'MI_ICON_MB_7', - 'MI_ICON_MB_8', 'MI_ICON_MB_9', 'MI_ICON_MISC_1', - 'MI_ICON_MISC_10', 'MI_ICON_MISC_11', 'MI_ICON_MISC_12', - 'MI_ICON_MISC_13', 'MI_ICON_MISC_14', 'MI_ICON_MISC_15', - 'MI_ICON_MISC_16', 'MI_ICON_MISC_17', 'MI_ICON_MISC_18', - 'MI_ICON_MISC_19', 'MI_ICON_MISC_2', 'MI_ICON_MISC_20', - 'MI_ICON_MISC_21', 'MI_ICON_MISC_22', 'MI_ICON_MISC_23', - 'MI_ICON_MISC_24', 'MI_ICON_MISC_25', 'MI_ICON_MISC_26', - 'MI_ICON_MISC_27', 'MI_ICON_MISC_28', 'MI_ICON_MISC_29', - 'MI_ICON_MISC_3', 'MI_ICON_MISC_30', 'MI_ICON_MISC_31', - 'MI_ICON_MISC_4', 'MI_ICON_MISC_5', 'MI_ICON_MISC_6', - 'MI_ICON_MISC_7', 'MI_ICON_MISC_8', 'MI_ICON_MISC_9', - 'MI_ICON_NEW_DOC', 'MI_ICON_NUMBERS_1', 'MI_ICON_NUMBERS_10', - 'MI_ICON_NUMBERS_11', 'MI_ICON_NUMBERS_12', 'MI_ICON_NUMBERS_13', - 'MI_ICON_NUMBERS_14', 'MI_ICON_NUMBERS_15', 'MI_ICON_NUMBERS_16', - 'MI_ICON_NUMBERS_17', 'MI_ICON_NUMBERS_18', 'MI_ICON_NUMBERS_19', - 'MI_ICON_NUMBERS_2', 'MI_ICON_NUMBERS_20', 'MI_ICON_NUMBERS_21', - 'MI_ICON_NUMBERS_22', 'MI_ICON_NUMBERS_23', 'MI_ICON_NUMBERS_24', - 'MI_ICON_NUMBERS_25', 'MI_ICON_NUMBERS_26', 'MI_ICON_NUMBERS_27', - 'MI_ICON_NUMBERS_28', 'MI_ICON_NUMBERS_29', 'MI_ICON_NUMBERS_3', - 'MI_ICON_NUMBERS_30', 'MI_ICON_NUMBERS_31', 'MI_ICON_NUMBERS_32', - 'MI_ICON_NUMBERS_4', 'MI_ICON_NUMBERS_5', 'MI_ICON_NUMBERS_6', - 'MI_ICON_NUMBERS_7', 'MI_ICON_NUMBERS_8', 'MI_ICON_NUMBERS_9', - 'MI_ICON_ODBC_DISCONNECT', 'MI_ICON_ODBC_MAPPABLE', - 'MI_ICON_ODBC_OPEN', 'MI_ICON_ODBC_REFRESH', 'MI_ICON_ODBC_SYMBOL', - 'MI_ICON_ODBC_UNLINK', 'MI_ICON_OPEN_FILE', 'MI_ICON_OPEN_WOR', - 'MI_ICON_OPENWFS', 'MI_ICON_OPENWMS', 'MI_ICON_PASTE', - 'MI_ICON_POLYGON', 'MI_ICON_POLYLINE', 'MI_ICON_PRINT', - 'MI_ICON_REALESTATE_1', 'MI_ICON_REALESTATE_10', - 'MI_ICON_REALESTATE_11', 'MI_ICON_REALESTATE_12', - 'MI_ICON_REALESTATE_13', 'MI_ICON_REALESTATE_14', - 'MI_ICON_REALESTATE_15', 'MI_ICON_REALESTATE_16', - 'MI_ICON_REALESTATE_17', 'MI_ICON_REALESTATE_18', - 'MI_ICON_REALESTATE_19', 'MI_ICON_REALESTATE_2', - 'MI_ICON_REALESTATE_20', 'MI_ICON_REALESTATE_21', - 'MI_ICON_REALESTATE_22', 'MI_ICON_REALESTATE_23', - 'MI_ICON_REALESTATE_3', 'MI_ICON_REALESTATE_4', - 'MI_ICON_REALESTATE_5', 'MI_ICON_REALESTATE_6', - 'MI_ICON_REALESTATE_7', 'MI_ICON_REALESTATE_8', - 'MI_ICON_REALESTATE_9', 'MI_ICON_RECT', 'MI_ICON_REGION_STYLE', - 'MI_ICON_RESHAPE', 'MI_ICON_ROUND_RECT', 'MI_ICON_RULER', - 'MI_ICON_RUN', 'MI_ICON_SAVE_FILE', 'MI_ICON_SAVE_WIN', - 'MI_ICON_SAVE_WOR', 'MI_ICON_SEARCH_BDY', 'MI_ICON_SEARCH_POLYGON', - 'MI_ICON_SEARCH_RADIUS', 'MI_ICON_SEARCH_RECT', 'MI_ICON_SIGNS_1', - 'MI_ICON_SIGNS_10', 'MI_ICON_SIGNS_11', 'MI_ICON_SIGNS_12', - 'MI_ICON_SIGNS_13', 'MI_ICON_SIGNS_14', 'MI_ICON_SIGNS_15', - 'MI_ICON_SIGNS_16', 'MI_ICON_SIGNS_17', 'MI_ICON_SIGNS_18', - 'MI_ICON_SIGNS_19', 'MI_ICON_SIGNS_2', 'MI_ICON_SIGNS_3', - 'MI_ICON_SIGNS_4', 'MI_ICON_SIGNS_5', 'MI_ICON_SIGNS_6', - 'MI_ICON_SIGNS_7', 'MI_ICON_SIGNS_8', 'MI_ICON_SIGNS_9', - 'MI_ICON_STATISTICS', 'MI_ICON_SYMBOL', 'MI_ICON_SYMBOL_STYLE', - 'MI_ICON_TEXT', 'MI_ICON_TEXT_STYLE', 'MI_ICON_TRANSPORT_1', - 'MI_ICON_TRANSPORT_10', 'MI_ICON_TRANSPORT_11', - 'MI_ICON_TRANSPORT_12', 'MI_ICON_TRANSPORT_13', - 'MI_ICON_TRANSPORT_14', 'MI_ICON_TRANSPORT_15', - 'MI_ICON_TRANSPORT_16', 'MI_ICON_TRANSPORT_17', - 'MI_ICON_TRANSPORT_18', 'MI_ICON_TRANSPORT_19', - 'MI_ICON_TRANSPORT_2', 'MI_ICON_TRANSPORT_20', - 'MI_ICON_TRANSPORT_21', 'MI_ICON_TRANSPORT_22', - 'MI_ICON_TRANSPORT_23', 'MI_ICON_TRANSPORT_24', - 'MI_ICON_TRANSPORT_25', 'MI_ICON_TRANSPORT_26', - 'MI_ICON_TRANSPORT_27', 'MI_ICON_TRANSPORT_3', - 'MI_ICON_TRANSPORT_4', 'MI_ICON_TRANSPORT_5', - 'MI_ICON_TRANSPORT_6', 'MI_ICON_TRANSPORT_7', - 'MI_ICON_TRANSPORT_8', 'MI_ICON_TRANSPORT_9', 'MI_ICON_UNDO', - 'MI_ICON_UNSELECT_ALL', 'MI_ICON_WINDOW_FRAME', 'MI_ICON_WRENCH', - 'MI_ICON_ZOOM_IN', 'MI_ICON_ZOOM_OUT', 'MI_ICON_ZOOM_QUESTION', - 'MI_ICONS_MAPS_1', 'MI_ICONS_MAPS_10', 'MI_ICONS_MAPS_11', - 'MI_ICONS_MAPS_12', 'MI_ICONS_MAPS_13', 'MI_ICONS_MAPS_14', - 'MI_ICONS_MAPS_15', 'MI_ICONS_MAPS_2', 'MI_ICONS_MAPS_3', - 'MI_ICONS_MAPS_4', 'MI_ICONS_MAPS_5', 'MI_ICONS_MAPS_6', - 'MI_ICONS_MAPS_7', 'MI_ICONS_MAPS_8', 'MI_ICONS_MAPS_9', - 'MIPLATFORM_HP', 'MIPLATFORM_MAC68K', 'MIPLATFORM_POWERMAC', - 'MIPLATFORM_SPECIAL', 'MIPLATFORM_SUN', 'MIPLATFORM_WIN16', - 'MIPLATFORM_WIN32', 'MODE_APPEND', 'MODE_BINARY', 'MODE_INPUT', - 'MODE_OUTPUT', 'MODE_RANDOM', 'OBJ_ARC', 'OBJ_ELLIPSE', - 'OBJ_FRAME', 'OBJ_GEO_ARCBEGANGLE', 'OBJ_GEO_ARCENDANGLE', - 'OBJ_GEO_CENTROID', 'OBJ_GEO_LINEBEGX', 'OBJ_GEO_LINEBEGY', - 'OBJ_GEO_LINEENDX', 'OBJ_GEO_LINEENDY', 'OBJ_GEO_MAXX', - 'OBJ_GEO_MAXY', 'OBJ_GEO_MINX', 'OBJ_GEO_MINY', 'OBJ_GEO_POINTM', - 'OBJ_GEO_POINTX', 'OBJ_GEO_POINTY', 'OBJ_GEO_POINTZ', - 'OBJ_GEO_ROUNDRADIUS', 'OBJ_GEO_TEXTANGLE', 'OBJ_GEO_TEXTLINEX', - 'OBJ_GEO_TEXTLINEY', 'OBJ_INFO_BRUSH', 'OBJ_INFO_FILLFRAME', - 'OBJ_INFO_FRAMETITLE', 'OBJ_INFO_FRAMEWIN', 'OBJ_INFO_HAS_M', - 'OBJ_INFO_HAS_Z', 'OBJ_INFO_MPOINT', 'OBJ_INFO_NONEMPTY', - 'OBJ_INFO_NPNTS', 'OBJ_INFO_NPOLYGONS', 'OBJ_INFO_PEN', - 'OBJ_INFO_PLINE', 'OBJ_INFO_REGION', 'OBJ_INFO_SMOOTH', - 'OBJ_INFO_SYMBOL', 'OBJ_INFO_TEXTARROW', 'OBJ_INFO_TEXTFONT', - 'OBJ_INFO_TEXTJUSTIFY', 'OBJ_INFO_TEXTSPACING', - 'OBJ_INFO_TEXTSTRING', 'OBJ_INFO_TYPE', 'OBJ_INFO_Z_UNIT', - 'OBJ_INFO_Z_UNIT_SET', 'OBJ_LINE', 'OBJ_PLINE', 'OBJ_POINT', - 'OBJ_RECT', 'OBJ_REGION', 'OBJ_ROUNDRECT', 'OBJ_TEXT', - 'OBJ_TYPE_ARC', 'OBJ_TYPE_COLLECTION', 'OBJ_TYPE_ELLIPSE', - 'OBJ_TYPE_FRAME', 'OBJ_TYPE_LINE', 'OBJ_TYPE_MPOINT', - 'OBJ_TYPE_PLINE', 'OBJ_TYPE_POINT', 'OBJ_TYPE_RECT', - 'OBJ_TYPE_REGION', 'OBJ_TYPE_ROUNDRECT', 'OBJ_TYPE_TEXT', - 'ORIENTATION_CUSTOM', 'ORIENTATION_LANDSCAPE', - 'ORIENTATION_PORTRAIT', 'PEN_COLOR', 'PEN_INDEX', - 'PEN_INTERLEAVED', 'PEN_PATTERN', 'PEN_WIDTH', 'PLATFORM_MAC', - 'PLATFORM_MOTIF', 'PLATFORM_SPECIAL', 'PLATFORM_WIN', - 'PLATFORM_X11', 'PLATFORM_XOL', 'PRISMMAP_INFO_BACKGROUND', - 'PRISMMAP_INFO_CAMERA_CLIP_FAR', 'PRISMMAP_INFO_CAMERA_CLIP_NEAR', - 'PRISMMAP_INFO_CAMERA_FOCAL_X', 'PRISMMAP_INFO_CAMERA_FOCAL_Y', - 'PRISMMAP_INFO_CAMERA_FOCAL_Z', 'PRISMMAP_INFO_CAMERA_VPN_1', - 'PRISMMAP_INFO_CAMERA_VPN_2', 'PRISMMAP_INFO_CAMERA_VPN_3', - 'PRISMMAP_INFO_CAMERA_VU_1', 'PRISMMAP_INFO_CAMERA_VU_2', - 'PRISMMAP_INFO_CAMERA_VU_3', 'PRISMMAP_INFO_CAMERA_X', - 'PRISMMAP_INFO_CAMERA_Y', 'PRISMMAP_INFO_CAMERA_Z', - 'PRISMMAP_INFO_INFOTIP_EXPR', 'PRISMMAP_INFO_LIGHT_COLOR', - 'PRISMMAP_INFO_LIGHT_X', 'PRISMMAP_INFO_LIGHT_Y', - 'PRISMMAP_INFO_LIGHT_Z', 'PRISMMAP_INFO_SCALE', 'RAD_2_DEG', - 'RASTER_CONTROL_POINT_X', 'RASTER_CONTROL_POINT_Y', - 'RASTER_TAB_INFO_ALPHA', 'RASTER_TAB_INFO_BITS_PER_PIXEL', - 'RASTER_TAB_INFO_BRIGHTNESS', 'RASTER_TAB_INFO_CONTRAST', - 'RASTER_TAB_INFO_DISPLAY_TRANSPARENT', 'RASTER_TAB_INFO_GREYSCALE', - 'RASTER_TAB_INFO_HEIGHT', 'RASTER_TAB_INFO_IMAGE_CLASS', - 'RASTER_TAB_INFO_IMAGE_NAME', 'RASTER_TAB_INFO_IMAGE_TYPE', - 'RASTER_TAB_INFO_NUM_CONTROL_POINTS', - 'RASTER_TAB_INFO_TRANSPARENT_COLOR', 'RASTER_TAB_INFO_WIDTH', - 'RED', 'REGION_INFO_IS_CLOCKWISE', 'SEARCH_INFO_ROW', - 'SEARCH_INFO_TABLE', 'SECONDS_PER_DAY', 'SEL_INFO_NROWS', - 'SEL_INFO_SELNAME', 'SEL_INFO_TABLENAME', - 'SESSION_INFO_AREA_UNITS', 'SESSION_INFO_COORDSYS_CLAUSE', - 'SESSION_INFO_DISTANCE_UNITS', 'SESSION_INFO_PAPER_UNITS', - 'SRV_COL_INFO_ALIAS', 'SRV_COL_INFO_NAME', - 'SRV_COL_INFO_PRECISION', 'SRV_COL_INFO_SCALE', - 'SRV_COL_INFO_STATUS', 'SRV_COL_INFO_TYPE', 'SRV_COL_INFO_VALUE', - 'SRV_COL_INFO_WIDTH', 'SRV_COL_TYPE_BIN_STRING', - 'SRV_COL_TYPE_CHAR', 'SRV_COL_TYPE_DATE', 'SRV_COL_TYPE_DECIMAL', - 'SRV_COL_TYPE_FIXED_LEN_STRING', 'SRV_COL_TYPE_FLOAT', - 'SRV_COL_TYPE_INTEGER', 'SRV_COL_TYPE_LOGICAL', - 'SRV_COL_TYPE_NONE', 'SRV_COL_TYPE_SMALLINT', - 'SRV_CONNECT_INFO_DB_NAME', 'SRV_CONNECT_INFO_DRIVER_NAME', - 'SRV_CONNECT_INFO_DS_NAME', 'SRV_CONNECT_INFO_QUOTE_CHAR', - 'SRV_CONNECT_INFO_SQL_USER_ID', 'SRV_DRV_DATA_SOURCE', - 'SRV_DRV_INFO_NAME', 'SRV_DRV_INFO_NAME_LIST', 'SRV_ERROR', - 'SRV_FETCH_FIRST', 'SRV_FETCH_LAST', 'SRV_FETCH_NEXT', - 'SRV_FETCH_PREV', 'SRV_INVALID_HANDLE', 'SRV_NEED_DATA', - 'SRV_NO_MORE_DATA', 'SRV_NULL_DATA', 'SRV_SUCCESS', - 'SRV_SUCCESS_WITH_INFO', 'SRV_TRUNCATED_DATA', - 'SRV_WM_HIST_NO_OVERWRITE', 'SRV_WM_HIST_NONE', - 'SRV_WM_HIST_OVERWRITE', 'STR_EQ', 'STR_GT', 'STR_LT', - 'STYLE_SAMPLE_SIZE_LARGE', 'STYLE_SAMPLE_SIZE_SMALL', - 'SWITCHING_INTO_MAPINFO', 'SWITCHING_OUT_OF_MAPINFO', - 'SYMBOL_ANGLE', 'SYMBOL_CODE', 'SYMBOL_COLOR', - 'SYMBOL_CUSTOM_NAME', 'SYMBOL_CUSTOM_STYLE', 'SYMBOL_FONT_NAME', - 'SYMBOL_FONT_STYLE', 'SYMBOL_KIND', 'SYMBOL_KIND_CUSTOM', - 'SYMBOL_KIND_FONT', 'SYMBOL_KIND_VECTOR', 'SYMBOL_POINTSIZE', - 'SYS_INFO_APPIDISPATCH', 'SYS_INFO_APPLICATIONWND', - 'SYS_INFO_APPVERSION', 'SYS_INFO_CHARSET', - 'SYS_INFO_COPYPROTECTED', 'SYS_INFO_DATE_FORMAT', - 'SYS_INFO_DDESTATUS', 'SYS_INFO_DIG_INSTALLED', - 'SYS_INFO_DIG_MODE', 'SYS_INFO_MAPINFOWND', - 'SYS_INFO_MDICLIENTWND', 'SYS_INFO_MIBUILD_NUMBER', - 'SYS_INFO_MIPLATFORM', 'SYS_INFO_MIVERSION', - 'SYS_INFO_NUMBER_FORMAT', 'SYS_INFO_PLATFORM', - 'SYS_INFO_PRODUCTLEVEL', 'SYS_INFO_RUNTIME', - 'TAB_GEO_CONTROL_POINT_X', 'TAB_GEO_CONTROL_POINT_Y', - 'TAB_INFO_BROWSER_LIST', 'TAB_INFO_COORDSYS_CLAUSE', - 'TAB_INFO_COORDSYS_CLAUSE_WITHOUT_BOUNDS', - 'TAB_INFO_COORDSYS_MAXX', 'TAB_INFO_COORDSYS_MAXY', - 'TAB_INFO_COORDSYS_MINX', 'TAB_INFO_COORDSYS_MINY', - 'TAB_INFO_COORDSYS_NAME', 'TAB_INFO_EDITED', 'TAB_INFO_FASTEDIT', - 'TAB_INFO_MAPPABLE', 'TAB_INFO_MAPPABLE_TABLE', 'TAB_INFO_MAXX', - 'TAB_INFO_MAXY', 'TAB_INFO_MINX', 'TAB_INFO_MINY', 'TAB_INFO_NAME', - 'TAB_INFO_NCOLS', 'TAB_INFO_NREFS', 'TAB_INFO_NROWS', - 'TAB_INFO_NUM', 'TAB_INFO_READONLY', 'TAB_INFO_SEAMLESS', - 'TAB_INFO_SUPPORT_MZ', 'TAB_INFO_TABFILE', 'TAB_INFO_TEMP', - 'TAB_INFO_THEME_METADATA', 'TAB_INFO_TYPE', 'TAB_INFO_UNDO', - 'TAB_INFO_USERBROWSE', 'TAB_INFO_USERCLOSE', - 'TAB_INFO_USERDISPLAYMAP', 'TAB_INFO_USEREDITABLE', - 'TAB_INFO_USERMAP', 'TAB_INFO_USERREMOVEMAP', 'TAB_INFO_Z_UNIT', - 'TAB_INFO_Z_UNIT_SET', 'TAB_TYPE_BASE', 'TAB_TYPE_FME', - 'TAB_TYPE_IMAGE', 'TAB_TYPE_LINKED', 'TAB_TYPE_RESULT', - 'TAB_TYPE_VIEW', 'TAB_TYPE_WFS', 'TAB_TYPE_WMS', 'TRUE', 'WHITE', - 'WIN_3DMAP', 'WIN_BROWSER', 'WIN_BUTTONPAD', 'WIN_CART_LEGEND', - 'WIN_GRAPH', 'WIN_HELP', 'WIN_INFO', 'WIN_INFO_AUTOSCROLL', - 'WIN_INFO_CLONEWINDOW', 'WIN_INFO_ENHANCED_RENDERING', - 'WIN_INFO_EXPORT_ANTIALIASING', 'WIN_INFO_EXPORT_BORDER', - 'WIN_INFO_EXPORT_DITHER', 'WIN_INFO_EXPORT_FILTER', - 'WIN_INFO_EXPORT_MASKSIZE', 'WIN_INFO_EXPORT_THRESHOLD', - 'WIN_INFO_EXPORT_TRANSPRASTER', 'WIN_INFO_EXPORT_TRANSPVECTOR', - 'WIN_INFO_EXPORT_TRUECOLOR', 'WIN_INFO_HEIGHT', - 'WIN_INFO_LEGENDS_MAP', 'WIN_INFO_NAME', 'WIN_INFO_OPEN', - 'WIN_INFO_PRINTER_BORDER', 'WIN_INFO_PRINTER_BOTTOMMARGIN', - 'WIN_INFO_PRINTER_COPIES', 'WIN_INFO_PRINTER_DITHER', - 'WIN_INFO_PRINTER_LEFTMARGIN', 'WIN_INFO_PRINTER_METHOD', - 'WIN_INFO_PRINTER_NAME', 'WIN_INFO_PRINTER_ORIENT', - 'WIN_INFO_PRINTER_PAPERSIZE', 'WIN_INFO_PRINTER_RIGHTMARGIN', - 'WIN_INFO_PRINTER_SCALE_PATTERNS', 'WIN_INFO_PRINTER_TOPMARGIN', - 'WIN_INFO_PRINTER_TRANSPRASTER', 'WIN_INFO_PRINTER_TRANSPVECTOR', - 'WIN_INFO_PRINTER_TRUECOLOR', 'WIN_INFO_SMARTPAN', - 'WIN_INFO_SMOOTH_IMAGE', 'WIN_INFO_SMOOTH_TEXT', - 'WIN_INFO_SMOOTH_VECTOR', 'WIN_INFO_SNAPMODE', - 'WIN_INFO_SNAPTHRESHOLD', 'WIN_INFO_STATE', - 'WIN_INFO_SYSMENUCLOSE', 'WIN_INFO_TABLE', 'WIN_INFO_TOPMOST', - 'WIN_INFO_TYPE', 'WIN_INFO_WIDTH', 'WIN_INFO_WINDOWID', - 'WIN_INFO_WND', 'WIN_INFO_WORKSPACE', 'WIN_INFO_X', 'WIN_INFO_Y', - 'WIN_LAYOUT', 'WIN_LEGEND', 'WIN_MAPBASIC', 'WIN_MAPINFO', - 'WIN_MAPPER', 'WIN_MESSAGE', 'WIN_PENPICKER', - 'WIN_PRINTER_LANDSCAPE', 'WIN_PRINTER_PORTRAIT', 'WIN_RULER', - 'WIN_STATE_MAXIMIZED', 'WIN_STATE_MINIMIZED', 'WIN_STATE_NORMAL', - 'WIN_STATISTICS', 'WIN_STYLE_CHILD', 'WIN_STYLE_POPUP', - 'WIN_STYLE_POPUP_FULLCAPTION', 'WIN_STYLE_STANDARD', - 'WIN_SYMBOLPICKER', 'WIN_TOOLBAR', 'WIN_TOOLPICKER', 'YELLOW' - ), - 5 => array( - 'Abbrs', 'Above', 'Access', 'Active', 'Address', 'Advanced', - 'Affine', 'Align', 'Alpha', 'alpha_value', 'Always', 'Angle', - 'Animate', 'Antialiasing', 'Append', 'Apply', 'ApplyUpdates', - 'Arrow', 'Ascending', 'ASCII', 'At', 'AttributeData', 'Auto', - 'Autoflip', 'Autokey', 'Automatic', 'Autoscroll', 'Axis', - 'Background', 'Banding', 'Batch', 'Behind', 'Below', 'Bend', - 'Binary', 'Blocks', 'Border', 'BorderPen', 'Bottom', 'Bounds', - 'ByteOrder', 'ByVal', 'Calling', 'Camera', 'Candidates', - 'Cartesian', 'Cell', 'Center', 'Change', 'Char', 'Circle', - 'Clipping', 'CloseMatchesOnly', 'ClosestAddr', 'Color', 'Columns', - 'Contents', 'ControlPoints', 'Copies', 'Copyright', 'Counter', - 'Country', 'CountrySecondarySubdivision', 'CountrySubdivision', - 'Cross', 'CubicConvolution', 'Cull', 'Cursor', 'Custom', 'Data', - 'DBF', 'DDE', 'Decimal', 'DecimalPlaces', 'DefaultAmbientSpeed', - 'DefaultPropagationFactor', 'DeformatNumber', 'Delimiter', - 'Density', 'DenyWrite', 'Descending', 'Destroy', 'Device', - 'Dictionary', 'DInfo', 'Disable', 'DiscardUpdates', 'Display', - 'Dither', 'DrawMode', 'DropKey', 'Droplines', 'Duplicates', - 'Dynamic', 'Earth', 'East', 'EditLayerPopup', 'Elevation', 'Else', - 'ElseIf', 'Emf', 'Enable', 'Envinsa', 'ErrorDiffusion', 'Extents', - 'Fallback', 'FastEdit', 'FillFrame', 'Filter', 'First', 'Fit', - 'Fixed', 'FocalPoint', 'Footnote', 'Force', 'FromMapCatalog', - 'Front', 'Gap', 'Geographic', 'Geography', 'Graduated', 'Graphic', - 'Gutter', 'Half', 'Halftone', 'Handles', 'Height', 'Help', - 'HelpMsg', 'Hide', 'Hierarchical', 'HIGHLOW', 'History', 'Icon', - 'ID', 'Ignore', 'Image', 'Inflect', 'Inset', 'Inside', - 'Interactive', 'Internal', 'Interpolate', 'IntersectingStreet', - 'Justify', 'Key', 'Label', 'Labels', 'Landscape', 'Large', 'Last', - 'Layer', 'Left', 'Lib', 'Light', 'LinePen', 'Lines', 'Linestyle', - 'Longitude', 'LOWHIGH', 'Major', 'MajorPolygonOnly', - 'MajorRoadsOnly', 'MapBounds', 'MapMarker', 'MapString', 'Margins', - 'MarkMultiple', 'MaskSize', 'Match', 'MaxOffRoadDistance', - 'Message', 'MICODE', 'Minor', 'MixedCase', 'Mode', 'ModifierKeys', - 'Modify', 'Multiple', 'MultiPolygonRgns', 'Municipality', - 'MunicipalitySubdivision', 'Name', 'NATIVE', 'NearestNeighbor', - 'NoCollision', 'Node', 'Nodes', 'NoIndex', 'None', 'Nonearth', - 'NoRefresh', 'Normalized', 'North', 'Number', 'ObjectType', 'ODBC', - 'Off', 'OK', 'OLE', 'On', 'Options', 'Orientation', 'OtherBdy', - 'Output', 'Outside', 'Overlapped', 'Overwrite', 'Pagebreaks', - 'Pan', 'Papersize', 'Parent', 'PassThrough', 'Password', - 'Patterns', 'Per', 'Percent', 'Percentage', 'Permanent', - 'PersistentCache', 'Pie', 'Pitch', 'Placename', 'PointsOnly', - 'PolyObj', 'Portrait', 'Position', 'PostalCode', 'Prefer', - 'Preferences', 'Prev', 'Printer', 'Projection', 'PushButton', - 'Quantile', 'Query', 'Random', 'Range', 'Raster', 'Read', - 'ReadOnly', 'Rec', 'Redraw', 'Refine', 'Regionstyle', 'RemoveData', - 'Replace', 'Reprojection', 'Resampling', 'Restore', 'ResultCode', - 'ReturnHoles', 'Right', 'Roll', 'ROP', 'Rotated', 'Row', 'Ruler', - 'Scale', 'ScrollBars', 'Seamless', 'SecondaryPostalCode', - 'SelfInt', 'Separator', 'Series', 'Service', 'SetKey', - 'SetTraverse', 'Shades', 'Show', 'Simple', 'SimplificationFactor', - 'Size', 'Small', 'Smart', 'Smooth', 'South', 'Spacing', - 'SPATIALWARE', 'Spherical', 'Square', 'Stacked', 'Step', 'Store', - 'Street', 'StreetName', 'StreetNumber', 'StyleType', 'Subtitle', - 'SysMenuClose', 'Thin', 'Tick', 'Title', 'TitleAxisY', - 'TitleGroup', 'Titles', 'TitleSeries', 'ToggleButton', 'Tolerance', - 'ToolbarPosition', 'ToolButton', 'Toolkit', 'Top', 'Translucency', - 'translucency_percent', 'Transparency', 'Transparent', 'Traverse', - 'TrueColor', 'Uncheck', 'Undo', 'Union', 'Unit', 'Until', 'URL', - 'Use', 'User', 'UserBrowse', 'UserClose', 'UserDisplayMap', - 'UserEdit', 'UserMap', 'UserRemoveMap', 'Value', 'Variable', - 'Vary', 'Vector', 'Versioned', 'View', 'ViewDisplayPopup', - 'VisibleOnly', 'VMDefault', 'VMGrid', 'VMRaster', 'Voronoi', - 'Warnings', 'Wedge', 'West', 'Width', 'With', 'XY', 'XYINDEX', - 'Yaw', 'Zoom' - ) - ), - 'SYMBOLS' => array( - //Numeric/String Operators + Comparison Operators - '(', ')', '[', ']', '+', '-', '*', '/', '\\', '^', '&', - '=', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', //Statements + Clauses + Data Types + Logical Operators, Geographical Operators + SQL - 2 => 'color: #2391af;', //Special Procedures - 3 => 'color: #2391af;', //Functions - 4 => 'color: #c635cb;', //Constants - 5 => 'color: #0000ff;' //Extended keywords (case sensitive) - ), - 'COMMENTS' => array( - 1 => 'color: #008000;', - 'MULTI' => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #a31515;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #12198b;', //Table Attributes - 1 => 'color: #2391af;' //Data Types - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Table Attribute - 0 => "[\\.]{1}[a-zA-Z0-9_]+", - //Data Type - 1 => "(?xi) \\s+ as \\s+ (Alias|Brush|Date|Float|Font|Integer|Logical|Object|Pen|SmallInt|String|Symbol)" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/matlab.php b/system/application/libraries/geshi/matlab.php deleted file mode 100644 index f3ad34968..000000000 --- a/system/application/libraries/geshi/matlab.php +++ /dev/null @@ -1,227 +0,0 @@ -<?php -/************************************************************************************* - * matlab.php - * ----------- - * Author: Florian Knorn (floz@gmx.de) - * Copyright: (c) 2004 Florian Knorn (http://www.florian-knorn.com) - * Release Version: 1.0.8.6 - * Date Started: 2005/02/09 - * - * Matlab M-file language file for GeSHi. - * - * CHANGES - * ------- - * 2006-03-25 (1.0.7.22) - * - support for the transpose operator - * - many keywords added - * - links to the matlab documentation at mathworks - * by: Olivier Verdier (olivier.verdier@free.fr) - * 2005/05/07 (1.0.0) - * - First Release - * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Matlab M', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array(), - //Matlab Strings - 'COMMENT_REGEXP' => array( - 2 => "/(?<![\\w\\)\\]\\}\\.])('[^\\n']*?')/" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'break', 'case', 'catch', 'continue', 'elseif', 'else', 'end', 'for', - 'function', 'global', 'if', 'otherwise', 'persistent', 'return', - 'switch', 'try', 'while' - ), - 2 => array( - 'all','any','exist','is','logical','mislocked', - - 'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle', - 'ans','area','asec','asech','asin','asinh','atan','atan2','atanh', - 'auread','autumn','auwrite','axes','axis','balance','bar','bar3', - 'bar3h','barh','besselh','besseli','besselj','besselk','Bessely', - 'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand', - 'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor', - 'blkdiag','bone','box','brighten','builtin','bwcontr','calendar', - 'camdolly','camlight','camlookat','camorbit','campan','campos', - 'camproj','camroll','camtarget','camup','camva','camzoom','capture', - 'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil','cell', - 'cell2struct','celldisp','cellfun','cellplot','cellstr','cgs', - 'char','chol','cholinc','cholupdate','cla','clabel','class','clc', - 'clf','clg','clock','close','colmmd','colorbar','colorcube', - 'colordef','colormap','colperm','comet','comet3','compan','compass', - 'complex','computer','cond','condeig','condest','coneplot','conj', - 'contour','contourc','contourf','contourslice','contrast','conv', - 'conv2','convhull','cool','copper','copyobj','corrcoef','cos', - 'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch', - 'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum', - 'datestr','datetick','datevec','dbclear','dbcont','dbdown', - 'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop', - 'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2', - 'delaunay','det','diag','dialog','diff','diffuse','dlmread', - 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig', - 'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx', - 'erfiny','error','errorbar','errordlg','etime','eval','evalc', - 'evalin','exp','expint','expm','eye','ezcontour','ezcontourf', - 'ezmesh','ezmeshc','ezplot','ezplot3','ezpolar','ezsurf','ezsurfc', - 'factor','factorial','fclose','feather','feof','ferror','feval', - 'fft','fft2','fftshift','fgetl','fgets','fieldnames','figure', - 'fill','fill3','filter','filter2','find','findfigs','findobj', - 'findstr','fix','flag','flipdim','fliplr','flipud','floor','flops', - 'fmin','fmins','fopen','fplot','fprintf','fread','frewind','fscanf', - 'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma', - 'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get', - 'getfield','ginput','gmres','gradient','gray','graymon','grid', - 'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg', - 'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot', - 'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag', - 'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto', - 'inline','inpolygon','input','inputdlg','inputname','int16', - 'int2str','int32','int8','interp1','interp2','interp3','interpft', - 'interpn','intersect','inv','invhilb','ipermute','isa','ishandle', - 'ismember','isocaps','isonormals','isosurface','j','jet','keyboard', - 'lcm','legend','legendre','light','lighting','lightingangle', - 'lin2mu','line','lines','linspace','listdlg','loadobj','log', - 'log10','log2','loglog','logm','logspace','lower','lscov','lu', - 'luinc','magic','mat2str','material','max','mean','median','menu', - 'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin', - 'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims', - 'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now', - 'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,', - 'ode23t,','ode23tb','ode45,','odefile','odeget','odeset','ones', - 'orient','orth','pagedlg','pareto','pascal','patch','pause', - 'pbaspect','pcg','pcolor','peaks','perms','permute','pi','pie', - 'pie3','pinv','plot','plot3','plotmatrix','plotyy','pol2cart', - 'polar','poly','polyarea','polyder','polyeig','polyfit','polyval', - 'polyvalm','pow2','primes','print','printdlg','printopt','prism', - 'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate', - 'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm', - 'rank','rat','rats','rbbox','rcond','real','realmax','realmin', - 'rectangle','reducepatch','reducevolume','refresh','rem','repmat', - 'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield', - 'roots','rose','rot90','rotate','rotate3d','round','rref', - 'rrefmovie','rsf2csf','saveobj','scatter','scatter3','schur', - 'script','sec','sech','selectmoveresize','semilogx','semilogy', - 'set','setdiff','setfield','setxor','shading','shg','shiftdim', - 'shrinkfaces','sign','sin','single','sinh','slice','smooth3','sort', - 'sortrows','sound','soundsc','spalloc','sparse','spconvert', - 'spdiags','specular','speye','spfun','sph2cart','sphere','spinmap', - 'spline','spones','spparms','sprand','sprandn','sprandsym','spring', - 'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem', - 'stem3','str2double','str2num','strcat','strcmp','strcmpi', - 'stream2','stream3','streamline','strings','strjust','strmatch', - 'strncmp','strrep','strtok','struct','struct2cell','strvcat', - 'sub2ind','subplot','subspace','subvolume','sum','summer', - 'superiorto','surf','surf2patch','surface','surfc','surfl', - 'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh', - 'texlabel','text Create','textread','textwrap','tic','title','toc', - 'toeplitz','trace','trapz','tril','trimesh','trisurf','triu', - 'tsearch','uicontext Create','uicontextmenu','uicontrol', - 'uigetfile','uimenu','uint32','uint8','uiputfile','uiresume', - 'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap', - 'upper','var','varargin','varargout','vectorize','view','viewmtx', - 'voronoi','waitbar','waitforbuttonpress','warndlg','warning', - 'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson', - 'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim', - 'zeros','zlabel','zlim','zoom', - //'[Keywords 6]', - 'addpath','cd','clear','copyfile','delete','diary','dir','disp', - 'doc','docopt','echo','edit','fileparts','format','fullfile','help', - 'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length', - 'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock', - 'more','munlock','open','openvar','pack','partialpath','path', - 'pathtool','profile','profreport','pwd','quit','rmpath','save', - 'saveas','size','tempdir','tempname','type','ver','version','web', - 'what','whatsnew','which','who','whos','workspace' - ) - ), - 'SYMBOLS' => array( - '...' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - //3 => false, - //4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'COMMENTS' => array( - 1 => 'color: #228B22;', - 2 => 'color:#A020F0;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #080;' - ), - 'STRINGS' => array( - //0 => 'color: #A020F0;' - ), - 'NUMBERS' => array( - 0 => 'color: #33f;' - ), - 'METHODS' => array( - 1 => '', - 2 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #080;' - ), - 'REGEXPS' => array( - 0 => 'color: #33f;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => 'http://www.mathworks.com/access/helpdesk/help/techdoc/ref/{FNAMEL}.html' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - //Complex numbers - 0 => '(?<![\\w])[+-]?[\\d]*([\\d]\\.|\\.[\\d])?[\\d]*[ij](?![\\w])' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/mirc.php b/system/application/libraries/geshi/mirc.php deleted file mode 100644 index a27c6c265..000000000 --- a/system/application/libraries/geshi/mirc.php +++ /dev/null @@ -1,171 +0,0 @@ -<?php -/************************************************************************************* - * mirc.php - * ----- - * Author: Alberto 'Birckin' de Areba (Birckin@hotmail.com) - * Copyright: (c) 2006 Alberto de Areba - * Release Version: 1.0.8.6 - * Date Started: 2006/05/29 - * - * mIRC Scripting language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2006/05/29 (1.0.0) - * - First Release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'mIRC Scripting', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'alias', 'menu', 'dialog', - ), - 2 => array( - 'if', 'elseif', 'else', 'while', 'return', 'goto', 'var' - ), - 3 => array( - 'action','ajinvite','amsg','ame','anick','aop','auser', - 'avoice','auto','autojoin','away','background','ban','beep', - 'channel','clear','clearall','clipboard','close','closemsg','color', - 'copy','creq','ctcp','ctcpreply','ctcps','dcc','dde','ddeserver', - 'debug','describe','disable','disconnect','dlevel','dll','dns', - 'dqwindow','ebeeps','echo','editbox','emailaddr','enable','events', - 'exit','filter','findtext','finger','flash','flood','flush', - 'flushini','font','fsend','fserve','fullname','ghide','gload', - 'gmove','gopts','gplay','gpoint','gqreq','groups','gshow','gsize', - 'gstop','gtalk','gunload','guser','help','hop','ignore','invite', - 'join','kick','linesep','links','list','load','loadbuf','localinfo', - 'log','me','mdi','mkdir','mnick','mode','msg','names','nick','noop', - 'notice','notify','omsg','onotice','part','partall','pdcc', - 'perform','ping','play','pop','protect','pvoice','qmsg','qme', - 'query','queryrn','quit','raw','remini','remote','remove','rename', - 'enwin','resetidle','rlevel','rmdir','run','ruser','save','savebuf', - 'saveini','say','server','showmirc','sline','sound','speak','splay', - 'sreq','strip','time', - //'timer[N/name]', //Handled as a regular expression below ... - 'timers','timestamp','titlebar','tnick','tokenize','topic','ulist', - 'unload','updatenl','url','uwho','window','winhelp','write', - 'writeini','who','whois','whowas' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '/' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #994444;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #990000; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #FF0000;', - ), - 'STRINGS' => array( - ), - 'NUMBERS' => array( - 0 => '', - ), - 'METHODS' => array( - 0 => 'color: #008000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #FF0000;', - ), - 'REGEXPS' => array( - 0 => 'color: #000099;', - 1 => 'color: #990000;', - 2 => 'color: #000099;', - 3 => 'color: #888800;', - 4 => 'color: #888800;', - 5 => 'color: #000099;', - 6 => 'color: #990000; font-weight: bold;', - 7 => 'color: #990000; font-weight: bold;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.mirc.com/{FNAMEL}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array('.'), - 'REGEXPS' => array( - //Variable names - 0 => '\$[a-zA-Z0-9]+', - //Variable names - 1 => '(%|&)[\w\x80-\xFE]+', - //Client to Client Protocol handling - 2 => '(on|ctcp) (!|@|&)?(\d|\*):[a-zA-Z]+:', - /*4 => array( - GESHI_SEARCH => '((on|ctcp) (!|@|&)?(\d|\*):(Action|Active|Agent|AppActive|Ban|Chat|Close|Connect|Ctcp|CtcpReply|DccServer|DeHelp|DeOp|DeVoice|Dialog|Dns|Error|Exit|FileRcvd|FileSent|GetFail|Help|Hotlink|Input|Invite|Join|KeyDown|KeyUp|Kick|Load|Logon|MidiEnd|Mode|Mp3End|Nick|NoSound|Notice|Notify|Op|Open|Part|Ping|Pong|PlayEnd|Quit|Raw|RawMode|SendFail|Serv|ServerMode|ServerOp|Signal|Snotice|Start|Text|Topic|UnBan|Unload|Unotify|User|Mode|Voice|Wallops|WaveEnd):)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ),*/ - //Channel names - 3 => '(#|@)[a-zA-Z0-9]+', - 4 => '-[a-z\d]+', - //Raw protocol handling - 5 => 'raw (\d|\*):', - //Timer handling - 6 => '(?<!>|:|\/)\/timer(?!s\b)[0-9a-zA-Z_]+', - // /... - 7 => '(?<!>|:|\/|\w)\/[a-zA-Z][a-zA-Z0-9]*(?!>)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(?<![\w\$\|\#;<^&])' - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/mmix.php b/system/application/libraries/geshi/mmix.php deleted file mode 100644 index efdb932f1..000000000 --- a/system/application/libraries/geshi/mmix.php +++ /dev/null @@ -1,173 +0,0 @@ -<?php -/************************************************************************************* - * mmix.php - * ------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2009 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2009/10/16 - * - * MMIX Assembler language file for GeSHi. - * - * This is an implementation of the MMIX language as designed by Donald E. Knuth - * - * CHANGES - * ------- - * 2004/08/05 (1.0.8.6) - * - First Release - * - * TODO (updated 2009/10/16) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'MMIX', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - //Line address prefix suppression - 'COMMENT_REGEXP' => array(2 => "/^\s*[0-9a-f]{12,16}+(?:\s+[0-9a-f]+(?:\.{3}[0-9a-f]{2,})?)?:/mi"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*CPU*/ - 1 => array( - '16ADDU','2ADDU','4ADDU','8ADDU','ADD','ADDU','AND','ANDN','ANDNH', - 'ANDNL','ANDNMH','ANDNML','BDIF','BEV','BN','BNN','BNP','BNZ','BOD', - 'BP','BZ','CMP','CMPU','CSEV','CSN','CSNN','CSNP','CSNZ','CSOD', - 'CSP','CSWAP','CSZ','DIV','DIVU','FADD','FCMP','FCMPE','FDIV', - 'FEQL','FEQLE','FINT','FIX','FIXU','FLOT','FLOTU','FMUL','FREM', - 'FSQRT','FSUB','FUN','FUNE','GET','GETA','GO','INCH','INCL','INCMH', - 'INCML','JMP','LDB','LDBU','LDHT','LDO','LDOU','LDSF','LDT','LDTU', - 'LDUNC','LDVTS','LDW','LDWU','MOR','MUL','MULU','MUX','MXOR','NAND', - 'NEG','NEGU','NOR','NXOR','ODIF','OR','ORH','ORL','ORMH','ORML', - 'ORN','PBEV','PBN','PBNN','PBNP','PBNZ','PBOD','PBP','PBZ','POP', - 'PREGO','PRELD','PREST','PUSHGO','PUSHJ','PUT','RESUME','SADD', - 'SAVE','SETH','SETL','SETMH','SETML','SFLOT','SFLOTU','SL','SLU', - 'SR','SRU','STB','STBU','STCO','STHT','STO','STOU','STSF','STT', - 'STTU','STUNC','STW','STWU','SUB','SUBU','SWYM','SYNC','SYNCD', - 'SYNCID','TDIF','TRAP','TRIP','UNSAVE','WDIF','XOR','ZSEV','ZSN', - 'ZSNN','ZSNP','ZSNZ','ZSOD','ZSP','ZSZ' - ), - /*registers*/ - 3 => array( - 'rA','rB','rC','rD','rE','rF','rG','rH','rI','rJ','rK','rL','rM', - 'rN','rO','rP','rQ','rR','rS','rT','rU','rV','rW','rX','rY','rZ', - 'rBB','rTT','rWW','rXX','rYY','rZZ' - ), - /*Directive*/ - 4 => array( - ), - /*Operands*/ - 5 => array( - ) - ), - 'SYMBOLS' => array( - '[', ']', '(', ')', - '+', '-', '*', '/', '%', - '.', ',', ';', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => false, - 3 => true, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f; font-weight: bold;', - 2 => 'color: #0000ff; font-weight: bold;', - 3 => 'color: #00007f;', - 4 => 'color: #000000; font-weight: bold;', - 5 => 'color: #000000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000ff;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( -// 0 => 'color: #0000ff;', -// 1 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'NUMBERS' => - GESHI_NUMBER_BIN_PREFIX_PERCENT | - GESHI_NUMBER_BIN_SUFFIX | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_HEX_SUFFIX | - GESHI_NUMBER_OCT_SUFFIX | - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_NONSCI_F | - GESHI_NUMBER_FLT_SCI_ZERO, - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers -// 0 => /* */ "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))(?:[0-9][0-9a-fA-F]{0,31}[hH]|0x[0-9a-fA-F]{1,32})(?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))", - //Binary numbers -// 1 => "(?<=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))[01]{1,64}[bB](?=([\\s\\(\\)\\[\\],;.:+\\-\\/*]))" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%])" - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/modula3.php b/system/application/libraries/geshi/modula3.php deleted file mode 100644 index caff92788..000000000 --- a/system/application/libraries/geshi/modula3.php +++ /dev/null @@ -1,135 +0,0 @@ -<?php -/************************************************************************************* - * modula3.php - * ---------- - * Author: mbishop (mbishop@esoteriq.org) - * Copyright: (c) 2009 mbishop (mbishop@esoteriq.org) - * Release Version: 1.0.8.6 - * Date Started: 2009/01/21 - * - * Modula-3 language file for GeSHi. - * - * CHANGES - * ------- - * - * TODO - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Modula-3', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("''"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'AND', 'ANY', 'ARRAY', 'AS', 'BEGIN', 'BITS', 'BRANDED', 'BY', 'CASE', - 'CONST', 'DIV', 'DO', 'ELSE', 'ELSIF', 'END', 'EVAL', 'EXCEPT', 'EXCEPTION', - 'EXIT', 'EXPORTS', 'FINALLY', 'FOR', 'FROM', 'GENERIC', 'IF', 'IMPORT', 'IN', - 'INTERFACE', 'LOCK', 'LOOP', 'METHODS', 'MOD', 'MODULE', 'NOT', 'OBJECT', 'OF', - 'OR', 'OVERRIDE', 'PROCEDURE', 'RAISE', 'RAISES', 'READONLY', 'RECORD', 'REF', - 'REPEAT', 'RETURN', 'REVEAL', 'ROOT', 'SET', 'THEN', 'TO', 'TRY', 'TYPE', 'TYPECASE', - 'UNSAFE', 'UNTIL', 'UNTRACED', 'VALUE', 'VAR', 'WHILE', 'WITH' - ), - 2 => array( - 'NIL', 'NULL', 'FALSE', 'TRUE', - ), - 3 => array( - 'ABS','ADR','ADRSIZE','BITSIZE','BYTESIZE','CEILING','DEC','DISPOSE', - 'EXTENDED','FIRST','FLOAT','FLOOR','INC','ISTYPE','LAST','LOOPHOLE','MAX','MIN', - 'NARROW','NEW','NUMBER','ORD','ROUND','SUBARRAY','TRUNC','TYPECODE', 'VAL' - ), - 4 => array( - 'ADDRESS', 'BOOLEAN', 'CARDINAL', 'CHAR', 'INTEGER', - 'LONGREAL', 'MUTEX', 'REAL', 'REFANY', 'TEXT' - ), - ), - 'SYMBOLS' => array( - ',', ':', '=', '+', '-', '*', '/', '#' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #0066ee;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/mpasm.php b/system/application/libraries/geshi/mpasm.php deleted file mode 100644 index d97f0b17f..000000000 --- a/system/application/libraries/geshi/mpasm.php +++ /dev/null @@ -1,164 +0,0 @@ -<?php -/************************************************************************************* - * mpasm.php - * --------- - * Author: Bakalex (bakalex@gmail.com) - * Copyright: (c) 2004 Bakalex, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/12/6 - * - * Microchip Assembler language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2005/01/29 (1.0.0) - * - First Release - * - * TODO (updated 2005/12/6) - * ------------------------- - * - * For the moment, i've only added PIC16C6X registers. We need more (PIC16F/C7x/8x, - * PIC10, PIC18 and dsPIC registers). - * Must take a look to dsPIC instructions. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Microchip Assembler', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*Directive Language*/ - 4 => array( - 'CONSTANT', '#DEFINE', 'END', 'EQU', 'ERROR', 'ERROR-LEVEL', '#INCLUDE', 'LIST', - 'MESSG', 'NOLIST', 'ORG', 'PAGE', 'PROCESSOR', 'RADIX', 'SET', 'SPACE', 'SUBTITLE', - 'TITLE', '#UNDEFINE', 'VARIABLE', 'ELSE', 'ENDIF', 'ENDW', 'IF', 'IFDEF', 'IFNDEF', - 'WHILE', '__BADRAM', 'CBLOCK', '__CONFIG', 'DA', 'DATA', 'DB', 'DE', 'DT', 'DW', - 'ENDC', 'FILL', '__IDLOCS', '__MAXRAM', 'RES', 'ENDM', 'EXITM', 'EXPAND', 'LOCAL', - 'MACRO', 'NOEXPAND', 'BANKISEL', 'BANKSEL', 'CODE', 'EXTERN', 'GLOBAL', 'IDATA', - 'PAGESEL', 'UDATA', 'UDATA_ACS', 'UDATA_OVR', 'UDATA_SHR' - ), - /* 12&14-bit Specific Instruction Set*/ - 1 => array( - 'andlw', 'call', 'clrwdt', 'goto', 'iorlw', 'movlw', 'option', 'retlw', 'sleep', - 'tris', 'xorlw', 'addwf', 'andwf', 'clrf', 'clrw', 'comf', 'decf', 'decfsz', 'incf', - 'incfsz', 'iorwf', 'movf', 'nop', 'rlf', 'rrf', 'subwf', 'swapf', 'xorwf', - 'bcf', 'bsf', 'btfsc', 'btfss', - 'addlw', 'retfie', 'return', 'sublw', 'addcf', 'adddcf', 'b', 'bc', 'bdc', - 'bnc', 'bndc', 'bnz', 'bz', 'clrc', 'clrdc', 'clrz', 'lcall', 'lgoto', 'movfw', - 'negf', 'setc', 'setdc', 'setz', 'skpc', 'skpdc', 'skpnc', 'skpndc', 'skpnz', 'skpz', - 'subcf', 'subdcf', 'tstf' - ), - /* 16-bit Specific Instructiob Set */ - 2 => array ( - 'movfp', 'movlb', 'movlp', 'movpf', 'movwf', 'tablrd', 'tablwt', 'tlrd', 'tlwt', - 'addwfc', 'daw', 'mullw', 'negw', 'rlcf', 'rlncf', 'rrcf', 'rrncf', 'setf', 'subwfb', - 'btg', 'cpfseq', 'cpfsgt', 'cpfslt', 'dcfsnz', 'infsnz', 'tstfsz', 'lfsr', 'bnn', - 'bnov', 'bra', 'pop', 'push', 'rcall', 'reset' - ), - /* Registers */ - 3 => array( - 'INDF', 'TMR0', 'PCL', 'STATUS', 'FSR', 'PORTA', 'PORTB', 'PORTC', 'PORTD', 'PORTE', - 'PCLATH', 'INTCON', 'PIR1', 'PIR2', 'TMR1L', 'TMR1H', 'T1CON', 'TMR2', 'T2CON', 'TMR2L', - 'TMR2H', 'TMR0H', 'TMR0L', 'SSPBUF', 'SSPCON', 'CCPR1L', 'CCPR1H', 'CCP1CON', 'RCSTA', - 'TXREG', 'RCREG', 'CCPR2L', 'CCPR2H', 'CCP2CON', 'OPTION', 'TRISA', 'TRISB', 'TRISC', - 'TRISD', 'TRISE', 'PIE2', 'PIE1', 'PR2', 'SSPADD', 'SSPSTAT', 'TXSTA', 'SPBRG' - ), - /*Operands*/ - 5 => array( - 'high','low' - ) - ), - 'SYMBOLS' => array( - '[', ']', '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00007f;', - 2 => 'color: #0000ff;', - 3 => 'color: #007f00;', - 4 => 'color: #46aa03; font-weight:bold;', - 5 => 'color: #7f0000;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff0000;', - 1 => 'color: #ff0000;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '[0-9a-fA-F]{1,32}[hH]', - //Binary numbers - 1 => '[01]{1,64}[bB]' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/mxml.php b/system/application/libraries/geshi/mxml.php deleted file mode 100644 index a2073d3ab..000000000 --- a/system/application/libraries/geshi/mxml.php +++ /dev/null @@ -1,145 +0,0 @@ -<?php -/************************************************************************************* - * mxml.php - * ------- - * Author: David Spurr - * Copyright: (c) 2007 David Spurr (http://www.defusion.org.uk/) - * Release Version: 1.0.8.6 - * Date Started: 2007/10/04 - * - * MXML language file for GeSHi. Based on the XML file by Nigel McNie - * - * CHANGES - * ------- - * 2007/10/04 (1.0.7.22) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'MXML', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('<!--' => '-->'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - 0 => 'color: #00bbdd;', - 1 => 'color: #ddbb00;', - 2 => 'color: #339933;', - 3 => 'color: #000000;' - ), - 'REGEXPS' => array( - 0 => 'font-weight: bold; color: black;', - 1 => 'color: #7400FF;', - 2 => 'color: #7400FF;' - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // xml declaration - 0 => array( - GESHI_SEARCH => '(<[\/?|(\?xml)]?[a-z0-9_\-:]*(\?>))', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // opening tags - 1 => array( - GESHI_SEARCH => '(<\/?[a-z]+:[a-z]+)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // closing tags - 2 => array( - GESHI_SEARCH => '(\/?>)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<!DOCTYPE' => '>' - ), - 1 => array( - '&' => ';' - ), - 2 => array( - //'<![CDATA[' => ']]>' - '<mx:Script>' => '</mx:Script>' - ), - 3 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => false, - 2 => false, - 3 => true - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/mysql.php b/system/application/libraries/geshi/mysql.php deleted file mode 100644 index 3bc6f9504..000000000 --- a/system/application/libraries/geshi/mysql.php +++ /dev/null @@ -1,475 +0,0 @@ -<?php -/************************************************************************************* - * mysql.php - * --------- - * Author: Marjolein Katsma (marjolein.is.back@gmail.com) - * Copyright: (c) 2008 Marjolein Katsma (http://blog.marjoleinkatsma.com/) - * Release Version: 1.0.8.6 - * Date Started: 2008-12-12 - * - * MySQL language file for GeSHi. - * - * Based on original MySQL language file by Carl Fürstenberg (2004); brought - * up-to-date for current MySQL versions, and with more classes for different - * types of keywords; several minor errors were corrected as well. - * - * Some "classes" have two groups here: this is to allow for the fact that some - * keywords in MySQL have a double function: many of those are either a function - * (must be immediately followed by an opening bracket) or some other keyword: - * so they can be distinguished by the presence (or not) of that opening bracket. - * (An immediately following opening bracket is a default rule for functions in - * MySQL, though this may be overridden; because it's only a default, we use a - * regex lookahead only where necessary to distinguish homonyms, not generally - * to match any function.) - * Other keywords with double usage cannot be distinguished and are classified - * in the "Mix" category. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'MySQL', - //'COMMENT_SINGLE' => array(1 =>'--', 2 => '#'), // '--' MUST be folowed by whitespace,not necessarily a space - 'COMMENT_SINGLE' => array( - 1 =>'-- ', - 2 => '#' - ), - 'COMMENT_REGEXP' => array( - 1 => "/(?:--\s).*?$/", // double dash followed by any whitespace - ), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, // @@@ would be nice if this could be defined per group! - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', // by default only, can be specified - 'ESCAPE_REGEXP' => array( - 1 => "/[_%]/", // search wildcards - ), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_OCT_PREFIX | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_NONSCI | - GESHI_NUMBER_FLT_SCI_SHORT | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - // Mix: statement keywords and keywords that don't fit in any other - // category, or have multiple usage/meanings - 'ACTION','ADD','AFTER','ALGORITHM','ALL','ALTER','ANALYZE','ANY', - 'ASC','AS','BDB','BEGIN','BERKELEYDB','BINARY','BTREE','CALL', - 'CASCADED','CASCADE','CHAIN','CHECK','COLUMNS','COLUMN','COMMENT', - 'COMMIT','COMMITTED','CONSTRAINT','CONTAINS SQL','CONSISTENT', - 'CONVERT','CREATE','CROSS','DATA','DATABASES', - 'DECLARE','DEFINER','DELAYED','DELETE','DESCRIBE','DESC', - 'DETERMINISTIC','DISABLE','DISCARD','DISTINCTROW','DISTINCT','DO', - 'DROP','DUMPFILE','DUPLICATE KEY','ENABLE','ENCLOSED BY','ENGINE', - 'ERRORS','ESCAPED BY','EXISTS','EXPLAIN','EXTENDED','FIELDS', - 'FIRST','FOR EACH ROW','FORCE','FOREIGN KEY','FROM','FULL', - 'FUNCTION','GLOBAL','GRANT','GROUP BY','HANDLER','HASH','HAVING', - 'HELP','HIGH_PRIORITY','IF NOT EXISTS','IGNORE','IMPORT','INDEX', - 'INFILE','INNER','INNODB','INOUT','INTO','INVOKER', - 'ISOLATION LEVEL','JOIN','KEYS','KEY','KILL','LANGUAGE SQL','LAST', - 'LIMIT','LINES','LOAD','LOCAL','LOCK','LOW_PRIORITY', - 'MASTER_SERVER_ID','MATCH','MERGE','MIDDLEINT','MODIFIES SQL DATA', - 'MODIFY','MRG_MYISAM','NATURAL','NEXT','NO SQL','NO','ON', - 'OPTIMIZE','OPTIONALLY','OPTION','ORDER BY','OUTER','OUTFILE','OUT', - 'PARTIAL','PREV','PRIMARY KEY','PRIVILEGES','PROCEDURE','PURGE', - 'QUICK','READS SQL DATA','READ','REFERENCES','RELEASE','RENAME', - 'REPEATABLE','REQUIRE','RESTRICT','RETURNS','REVOKE', - 'ROLLBACK','ROUTINE','RTREE','SAVEPOINT','SELECT', - 'SERIALIZABLE','SESSION','SET','SHARE MODE','SHOW','SIMPLE', - 'SNAPSHOT','SOME','SONAME','SQL SECURITY','SQL_BIG_RESULT', - 'SQL_BUFFER_RESULT','SQL_CACHE','SQL_CALC_FOUND_ROWS', - 'SQL_NO_CACHE','SQL_SMALL_RESULT','SSL','START','STARTING BY', - 'STATUS','STRAIGHT_JOIN','STRIPED','TABLESPACE','TABLES','TABLE', - 'TEMPORARY','TEMPTABLE','TERMINATED BY','TO','TRANSACTIONS', - 'TRANSACTION','TRIGGER','TYPES','TYPE','UNCOMMITTED','UNDEFINED', - 'UNION','UNLOCK_TABLES','UPDATE','USAGE','USE','USER_RESOURCES', - 'USING','VALUES','VALUE','VIEW','WARNINGS','WHERE','WITH ROLLUP', - 'WITH','WORK','WRITE', - ), - 2 => array( //No ( must follow - // Mix: statement keywords distinguished from functions by the same name - "CURRENT_USER", "DATABASE", "IN", "INSERT", "DEFAULT", "REPLACE", "SCHEMA", "TRUNCATE" - ), - 3 => array( - // Values (Constants) - 'FALSE','NULL','TRUE', - ), - 4 => array( - // Column Data Types - 'BIGINT','BIT','BLOB','BOOLEAN','BOOL','CHARACTER VARYING', - 'CHAR VARYING','DATETIME','DECIMAL','DEC','DOUBLE PRECISION', - 'DOUBLE','ENUM','FIXED','FLOAT','GEOMETRYCOLLECTION','GEOMETRY', - 'INTEGER','INT','LINESTRING','LONGBLOB','LONGTEXT','MEDIUMBLOB', - 'MEDIUMINT','MEDIUMTEXT','MULTIPOINT','MULTILINESTRING', - 'MULTIPOLYGON','NATIONAL CHARACTER','NATIONAL CHARACTER VARYING', - 'NATIONAL CHAR VARYING','NATIONAL VARCHAR','NCHAR VARCHAR','NCHAR', - 'NUMERIC','POINT','POLYGON','REAL','SERIAL', - 'SMALLINT','TEXT','TIMESTAMP','TINYBLOB','TINYINT', - 'TINYTEXT','VARBINARY','VARCHARACTER','VARCHAR', - ), - 5 => array( //No ( must follow - // Column data types distinguished from functions by the same name - "CHAR", "DATE", "TIME" - ), - 6 => array( - // Table, Column & Index Attributes - 'AUTO_INCREMENT','AVG_ROW_LENGTH','BOTH','CHECKSUM','CONNECTION', - 'DATA DIRECTORY','DEFAULT NULL','DELAY_KEY_WRITE','FULLTEXT', - 'INDEX DIRECTORY','INSERT_METHOD','LEADING','MAX_ROWS','MIN_ROWS', - 'NOT NULL','PACK_KEYS','ROW_FORMAT','SERIAL DEFAULT VALUE','SIGNED', - 'SPATIAL','TRAILING','UNIQUE','UNSIGNED','ZEROFILL' - ), - 7 => array( //No ( must follow - // Column attribute distinguished from function by the same name - "CHARSET" - ), - 8 => array( - // Date and Time Unit Specifiers - 'DAY_HOUR','DAY_MICROSECOND','DAY_MINUTE','DAY_SECOND', - 'HOUR_MICROSECOND','HOUR_MINUTE','HOUR_SECOND', - 'MINUTE_MICROSECOND','MINUTE_SECOND', - 'SECOND_MICROSECOND','YEAR_MONTH' - ), - 9 => array( //No ( must follow - // Date-time unit specifiers distinguished from functions by the same name - "DAY", "HOUR", "MICROSECOND", "MINUTE", "MONTH", "QUARTER", "SECOND", "WEEK", "YEAR" - ), - 10 => array( - // Operators (see also Symbols) - 'AND','BETWEEN','CHARACTER SET','COLLATE','DIV','IS NOT NULL', - 'IS NOT','IS NULL','IS','LIKE','NOT','OFFSET','OR','REGEXP','RLIKE', - 'SOUNDS LIKE','XOR' - ), - 11 => array( //No ( must follow - // Operator distinghuished from function by the same name - "INTERVAL" - ), - 12 => array( - // Control Flow (functions) - 'CASE','ELSE','END','IFNULL','IF','NULLIF','THEN','WHEN', - ), - 13 => array( - // String Functions - 'ASCII','BIN','BIT_LENGTH','CHAR_LENGTH','CHARACTER_LENGTH', - 'CONCAT_WS','CONCAT','ELT','EXPORT_SET','FIELD', - 'FIND_IN_SET','FORMAT','HEX','INSTR','LCASE','LEFT','LENGTH', - 'LOAD_FILE','LOCATE','LOWER','LPAD','LTRIM','MAKE_SET','MID', - 'OCTET_LENGTH','ORD','POSITION','QUOTE','REPEAT','REVERSE', - 'RIGHT','RPAD','RTRIM','SOUNDEX','SPACE','STRCMP','SUBSTRING_INDEX', - 'SUBSTRING','TRIM','UCASE','UNHEX','UPPER', - ), - 14 => array( //A ( must follow - // String functions distinguished from other keywords by the same name - "INSERT", "REPLACE", "CHAR" - ), - 15 => array( - // Numeric Functions - 'ABS','ACOS','ASIN','ATAN2','ATAN','CEILING','CEIL', - 'CONV','COS','COT','CRC32','DEGREES','EXP','FLOOR','LN','LOG10', - 'LOG2','LOG','MOD','OCT','PI','POWER','POW','RADIANS','RAND', - 'ROUND','SIGN','SIN','SQRT','TAN', - ), - 16 => array( //A ( must follow - // Numeric function distinguished from other keyword by the same name - "TRUNCATE" - ), - 17 => array( - // Date and Time Functions - 'ADDDATE','ADDTIME','CONVERT_TZ','CURDATE','CURRENT_DATE', - 'CURRENT_TIME','CURRENT_TIMESTAMP','CURTIME','DATE_ADD', - 'DATE_FORMAT','DATE_SUB','DATEDIFF','DAYNAME','DAYOFMONTH', - 'DAYOFWEEK','DAYOFYEAR','EXTRACT','FROM_DAYS','FROM_UNIXTIME', - 'GET_FORMAT','LAST_DAY','LOCALTIME','LOCALTIMESTAMP','MAKEDATE', - 'MAKETIME','MONTHNAME','NOW','PERIOD_ADD', - 'PERIOD_DIFF','SEC_TO_TIME','STR_TO_DATE','SUBDATE','SUBTIME', - 'SYSDATE','TIME_FORMAT','TIME_TO_SEC', - 'TIMESTAMPADD','TIMESTAMPDIFF','TO_DAYS', - 'UNIX_TIMESTAMP','UTC_DATE','UTC_TIME','UTC_TIMESTAMP','WEEKDAY', - 'WEEKOFYEAR','YEARWEEK', - ), - 18 => array( //A ( must follow - // Date-time functions distinguished from other keywords by the same name - "DATE", "DAY", "HOUR", "MICROSECOND", "MINUTE", "MONTH", "QUARTER", - "SECOND", "TIME", "WEEK", "YEAR" - ), - 19 => array( - // Comparison Functions - 'COALESCE','GREATEST','ISNULL','LEAST', - ), - 20 => array( //A ( must follow - // Comparison functions distinguished from other keywords by the same name - "IN", "INTERVAL" - ), - 21 => array( - // Encryption and Compression Functions - 'AES_DECRYPT','AES_ENCRYPT','COMPRESS','DECODE','DES_DECRYPT', - 'DES_ENCRYPT','ENCODE','ENCRYPT','MD5','OLD_PASSWORD','PASSWORD', - 'SHA1','SHA','UNCOMPRESS','UNCOMPRESSED_LENGTH', - ), - 22 => array( - // GROUP BY (aggregate) Functions - 'AVG','BIT_AND','BIT_OR','BIT_XOR','COUNT','GROUP_CONCAT', - 'MAX','MIN','STDDEV_POP','STDDEV_SAMP','STDDEV','STD','SUM', - 'VAR_POP','VAR_SAMP','VARIANCE', - ), - 23 => array( - // Information Functions - 'BENCHMARK','COERCIBILITY','COLLATION','CONNECTION_ID', - 'FOUND_ROWS','LAST_INSERT_ID','ROW_COUNT', - 'SESSION_USER','SYSTEM_USER','USER','VERSION', - ), - 24 => array( //A ( must follow - // Information functions distinguished from other keywords by the same name - "CURRENT_USER", "DATABASE", "SCHEMA", "CHARSET" - ), - 25 => array( - // Miscellaneous Functions - 'ExtractValue','BIT_COUNT','GET_LOCK','INET_ATON','INET_NTOA', - 'IS_FREE_LOCK','IS_USED_LOCK','MASTER_POS_WAIT','NAME_CONST', - 'RELEASE_LOCK','SLEEP','UpdateXML','UUID', - ), - 26 => array( //A ( must follow - // Miscellaneous function distinguished from other keyword by the same name - "DEFAULT" - ), - 27 => array( - // Geometry Functions - 'Area','AsBinary','AsText','AsWKB','AsWKT','Boundary','Buffer', - 'Centroid','Contains','ConvexHull','Crosses', - 'Difference','Dimension','Disjoint','Distance', - 'EndPoint','Envelope','Equals','ExteriorRing', - 'GLength','GeomCollFromText','GeomCollFromWKB','GeomFromText', - 'GeomFromWKB','GeometryCollectionFromText', - 'GeometryCollectionFromWKB','GeometryFromText','GeometryFromWKB', - 'GeometryN','GeometryType', - 'InteriorRingN','Intersection','Intersects','IsClosed','IsEmpty', - 'IsRing','IsSimple', - 'LineFromText','LineFromWKB','LineStringFromText', - 'LineStringFromWKB', - 'MBRContains','MBRDisjoint','MBREqual','MBRIntersects', - 'MBROverlaps','MBRTouches','MBRWithin','MLineFromText', - 'MLineFromWKB','MPointFromText','MPointFromWKB','MPolyFromText', - 'MPolyFromWKB','MultiLineStringFromText','MultiLineStringFromWKB', - 'MultiPointFromText','MultiPointFromWKB','MultiPolygonFromText', - 'MultiPolygonFromWKB', - 'NumGeometries','NumInteriorRings','NumPoints', - 'Overlaps', - 'PointFromText','PointFromWKB','PointN','PointOnSurface', - 'PolyFromText','PolyFromWKB','PolygonFromText','PolygonFromWKB', - 'Related','SRID','StartPoint','SymDifference', - 'Touches', - 'Union', - 'Within', - 'X', - 'Y', - ), - ), - 'SYMBOLS' => array( - 1 => array( - /* Operators */ - '=', ':=', // assignment operators - '||', '&&', '!', // locical operators - '=', '<=>', '>=', '>', '<=', '<', '<>', '!=', // comparison operators - '|', '&', '^', '~', '<<', '>>', // bitwise operators - '-', '+', '*', '/', '%', // numerical operators - ), - 2 => array( - /* Other syntactical symbols */ - '(', ')', - ',', ';', - ), - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false, - 10 => false, - 11 => false, - 12 => false, - 13 => false, - 13 => false, - 14 => false, - 15 => false, - 16 => false, - 17 => false, - 18 => false, - 19 => false, - 20 => false, - 21 => false, - 22 => false, - 23 => false, - 24 => false, - 25 => false, - 26 => false, - 27 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990099; font-weight: bold;', // mix - 2 => 'color: #990099; font-weight: bold;', // mix - 3 => 'color: #9900FF; font-weight: bold;', // constants - 4 => 'color: #999900; font-weight: bold;', // column data types - 5 => 'color: #999900; font-weight: bold;', // column data types - 6 => 'color: #FF9900; font-weight: bold;', // attributes - 7 => 'color: #FF9900; font-weight: bold;', // attributes - 8 => 'color: #9900FF; font-weight: bold;', // date-time units - 9 => 'color: #9900FF; font-weight: bold;', // date-time units - - 10 => 'color: #CC0099; font-weight: bold;', // operators - 11 => 'color: #CC0099; font-weight: bold;', // operators - - 12 => 'color: #009900;', // control flow (functions) - 13 => 'color: #000099;', // string functions - 14 => 'color: #000099;', // string functions - 15 => 'color: #000099;', // numeric functions - 16 => 'color: #000099;', // numeric functions - 17 => 'color: #000099;', // date-time functions - 18 => 'color: #000099;', // date-time functions - 19 => 'color: #000099;', // comparison functions - 20 => 'color: #000099;', // comparison functions - 21 => 'color: #000099;', // encryption functions - 22 => 'color: #000099;', // aggregate functions - 23 => 'color: #000099;', // information functions - 24 => 'color: #000099;', // information functions - 25 => 'color: #000099;', // miscellaneous functions - 26 => 'color: #000099;', // miscellaneous functions - 27 => 'color: #00CC00;', // geometry functions - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #808000; font-style: italic;', - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #004000; font-weight: bold;', - 1 => 'color: #008080; font-weight: bold;' // search wildcards - ), - 'BRACKETS' => array( - 0 => 'color: #FF00FF;' - ), - 'STRINGS' => array( - 0 => 'color: #008000;' - ), - 'NUMBERS' => array( - 0 => 'color: #008080;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 1 => 'color: #CC0099;', // operators - 2 => 'color: #000033;', // syntax - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 2 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 3 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 4 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 5 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 6 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 7 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 8 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - 9 => 'http://search.mysql.com/search?site=refman-%35%31&q={FNAME}', - - 10 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/non-typed-operators.html', - 11 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/non-typed-operators.html', - - 12 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/control-flow-functions.html', - 13 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/string-functions.html', - 14 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/string-functions.html', - 15 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/numeric-functions.html', - 16 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/numeric-functions.html', - 17 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/date-and-time-functions.html', - 18 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/date-and-time-functions.html', - 19 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/comparison-operators.html', - 20 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/comparison-operators.html', - 21 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/encryption-functions.html', - 22 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/group-by-functions-and-modifiers.html', - 23 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/information-functions.html', - 24 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/information-functions.html', - 25 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/func-op-summary-ref.html', - 26 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/func-op-summary-ref.html', - 27 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/analysing-spatial-information.html', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 2 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - 5 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - 7 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - 9 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - 11 => array( - 'DISALLOWED_AFTER' => '(?![\(\w])' - ), - - 14 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 16 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 18 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 20 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 24 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ), - 26 => array( - 'DISALLOWED_AFTER' => '(?=\()' - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/newlisp.php b/system/application/libraries/geshi/newlisp.php deleted file mode 100644 index ee2589a07..000000000 --- a/system/application/libraries/geshi/newlisp.php +++ /dev/null @@ -1,191 +0,0 @@ -<?php -/************************************************************************************* - * newlisp.php - * ---------- - * Author: cormullion (cormullion@mac.com) Sept 2009 - * Copyright: (c) 2009 Cormullion (http://unbalanced-parentheses.nfshost.com/) - * Release Version: 1.0.8.6 - * Date Started: 2009/09/30 - * - * newLISP language file for GeSHi. - * - * based on work by Lutz Mueller and Jeff Ober - * - * CHANGES - * ------- - * 2009/09/30 (1.0.8.6) - * - First Release - * - * TODO (updated 2009/09/30) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'newlisp', - 'COMMENT_SINGLE' => array(1 => ';', 2 => '#'), - 'COMMENT_MULTI' => array('[text]' => '[/text]', '{' => '}'), // also used for strings - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'NUMBERS' => GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_SCI_ZERO, - 'TAB_WIDTH' => 2, - 'KEYWORDS' => array( - 1 => array( - 'NaN?','abort','abs','acos','acosh','add','address','amb','and', - 'append','append-file','apply','args','array','array-list','array?', - 'asin','asinh','assoc','atan','atan2','atanh','atom?','base64-dec', - 'base64-enc','bayes-query','bayes-train','begin','beta','betai', - 'bind','binomial','bits','callback','case','catch','ceil', - 'change-dir','char','chop','clean','close','command-event','cond', - 'cons','constant','context','context?','copy','copy-file','cos', - 'cosh','count','cpymem','crc32','crit-chi2','crit-z','current-line', - 'curry','date','date-value','debug','dec','def-new','default', - 'define','define-macro','delete','delete-file','delete-url', - 'destroy','det','device','difference','directory','directory?', - 'div','do-until','do-while','doargs','dolist','dostring','dotimes', - 'dotree','dump','dup','empty?','encrypt','ends-with','env','erf', - 'error-event','estack','eval','eval-string','exec','exists','exit', - 'exp','expand','explode','factor','fft','file-info','file?', - 'filter','find','find-all','first','flat','float','float?','floor', - 'flt','for','for-all','fork','format','fv','gammai','gammaln','gcd', - 'get-char','get-float','get-int','get-long','get-string','get-url', - 'global','global?','if','if-not','ifft','import','inc','index', - 'inf?','int','integer','integer?','intersect','invert','irr','join', - 'lambda','lambda?','last','last-error','legal?','length','let', - 'letex','letn','list','list?','load','local','log','lookup', - 'lower-case','macro?','main-args','make-dir','map','mat','match', - 'max','member','min','mod','mul','multiply','name','net-accept', - 'net-close','net-connect','net-error','net-eval','net-interface', - 'net-listen','net-local','net-lookup','net-peek','net-peer', - 'net-ping','net-receive','net-receive-from','net-receive-udp', - 'net-select','net-send','net-send-to','net-send-udp','net-service', - 'net-sessions','new','nil','nil?','normal','not','now','nper','npv', - 'nth','null?','number?','open','or','pack','parse','parse-date', - 'peek','pipe','pmt','pop','pop-assoc','post-url','pow', - 'pretty-print','primitive?','print','println','prob-chi2','prob-z', - 'process','prompt-event','protected?','push','put-url','pv','quote', - 'quote?','rand','random','randomize','read-buffer','read-char', - 'read-expr','read-file','read-key','read-line','read-utf8', - 'real-path','receive','ref','ref-all','regex','regex-comp', - 'remove-dir','rename-file','replace','reset','rest','reverse', - 'rotate','round','save','search','seed','seek','select','semaphore', - 'send','sequence','series','set','set-locale','set-ref', - 'set-ref-all','setf','setq','sgn','share','signal','silent','sin', - 'sinh','sleep','slice','sort','source','spawn','sqrt','starts-with', - 'string','string?','sub','swap','sym','symbol?','symbols','sync', - 'sys-error','sys-info','tan','tanh','throw','throw-error','time', - 'time-of-day','timer','title-case','trace','trace-highlight', - 'transpose','trim','true','true?','unicode','unify','unique', - 'unless','unpack','until','upper-case','utf8','utf8len','uuid', - 'wait-pid','when','while','write-buffer','write-char','write-file', - 'write-line','xfer-event','xml-error','xml-parse','xml-type-tags', - 'zero?' - ) - ), - 'SYMBOLS' => array( - 0 => array( - '(', ')','\'' - ), - 1 => array( - '!','!=','$','%','&','*','+','-','/',':', - '<','<<','<=','=','>','>=','>>','^','|' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000AA;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #00aa00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #009900;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #777700;' - ), - 'METHODS' => array( - 0 => 'color: #000099;' - ), - 'SYMBOLS' => array( - 0 => 'color: #AA0000;', - 1 => 'color: #0000AA;' - ), - 'REGEXPS' => array( - 0 => 'color: #00aa00;', - 1 => 'color: #00aa00;', - 2 => 'color: #00aa00;', - 3 => 'color: #00aa00;', - 4 => 'color: #00aa00;', - 5 => 'color: #AA0000;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.newlisp.org/downloads/newlisp_manual.html#{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array(':'), - 'REGEXPS' => array( - // tags in newlispdoc - 0 => "\s+@\S*?\s+", - // dollar sign symbols - 1 => "[\\$]\w*", - // curly-braced string literals - 2 => "{[^{}]*?}", - // [text] multi-line strings - 3 => "(?s)\[text\].*\[\/text\](?-s)", - // [code] multi-line blocks - 4 => "(?s)\[code\].*\[\/code\](?-s)", - // variable references - 5 => "'[\w\-]+" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'OOLANG' => array( - 'MATCH_AFTER' => '[a-zA-Z][a-zA-Z0-9_\-]*' - ), - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => '(?<=[^\w\-])', - ) - ), - -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/nsis.php b/system/application/libraries/geshi/nsis.php deleted file mode 100644 index d5f631101..000000000 --- a/system/application/libraries/geshi/nsis.php +++ /dev/null @@ -1,351 +0,0 @@ -<?php -/************************************************************************************* - * nsis.php - * -------- - * Author: deguix (cevo_deguix@yahoo.com.br), Tux (http://tux.a4.cz/) - * Copyright: (c) 2005 deguix, 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2005/12/03 - * - * Nullsoft Scriptable Install System language file for GeSHi. - * - * CHANGES - * ------- - * 2005/12/03 (2.0.2) - * - Updated to NSIS 2.11. - * 2005/06/17 (2.0.1) - * - Updated to NSIS 2.07b0. - * 2005/04/05 (2.0.0) - * - Updated to NSIS 2.06. - * 2004/11/27 (1.0.2) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.1) - * - Added support for URLs - * 2004/08/05 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'NSIS', - 'COMMENT_SINGLE' => array(1 => ';', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'",'"','`'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - '!appendfile', '!addIncludeDir', '!addplugindir', '!cd', '!define', '!delfile', '!echo', '!else', - '!endif', '!error', '!execute', '!ifdef', '!ifmacrodef', '!ifmacrondef', '!ifndef', '!include', - '!insertmacro', '!macro', '!macroend', '!packhdr', '!tempfile', '!system', '!undef', '!verbose', - '!warning' - ), - 2 => array( - 'AddBrandingImage', 'AllowRootDirInstall', 'AutoCloseWindow', 'BGFont', - 'BGGradient', 'BrandingText', 'Caption', 'ChangeUI', 'CheckBitmap', 'CompletedText', 'ComponentText', - 'CRCCheck', 'DetailsButtonText', 'DirShow', 'DirText', 'DirVar', 'DirVerify', 'FileErrorText', - 'Function', 'FunctionEnd', 'Icon', 'InstallButtonText', 'InstallColors', 'InstallDir', - 'InstallDirRegKey', 'InstProgressFlags', 'InstType', 'LangString', 'LangStringUP', 'LicenseBkColor', - 'LicenseData', 'LicenseForceSelection', 'LicenseLangString', 'LicenseText', 'LoadLanguageFile', - 'MiscButtonText', 'Name', 'OutFile', 'Page', 'PageEx', 'PageExEnd', 'Section', - 'SectionEnd', 'SectionGroup', 'SectionGroupEnd', 'SetCompressor', 'SetFont', 'ShowInstDetails', - 'ShowUninstDetails', 'SilentInstall', 'SilentUnInstall', 'SpaceTexts', 'SubCaption', 'SubSection', - 'SubSectionEnd', 'UninstallButtonText', 'UninstallCaption', 'UninstallIcon', 'UninstallSubCaption', - 'UninstallText', 'UninstPage', 'Var', 'VIAddVersionKey', 'VIProductVersion', 'WindowIcon', 'XPStyle' - ), - 3 => array( - 'AddSize', 'AllowSkipFiles', 'FileBufSize', 'GetInstDirError', 'PageCallbacks', - 'SectionIn', 'SetCompress', 'SetCompressionLevel', 'SetCompressorDictSize', - 'SetDatablockOptimize', 'SetDateSave', 'SetOverwrite', 'SetPluginUnload' - ), - 4 => array( - 'Abort', 'BringToFront', 'Call', 'CallInstDLL', 'ClearErrors', 'CopyFiles','CreateDirectory', - 'CreateFont', 'CreateShortCut', 'Delete', 'DeleteINISec', 'DeleteINIStr', 'DeleteRegKey', - 'DeleteRegValue', 'DetailPrint', 'EnableWindow', 'EnumRegKey', 'EnumRegValue', 'Exch', 'Exec', - 'ExecShell', 'ExecWait', 'ExpandEnvStrings', 'File', 'FileClose', 'FileOpen', 'FileRead', - 'FileReadByte', 'FileSeek', 'FileWrite', 'FileWriteByte', 'FindClose', 'FindFirst', 'FindNext', - 'FindWindow', 'FlushINI', 'GetCurInstType', 'GetCurrentAddress', 'GetDlgItem', 'GetDLLVersion', - 'GetDLLVersionLocal', 'GetErrorLevel', 'GetFileTime', 'GetFileTimeLocal', 'GetFullPathName', - 'GetFunctionAddress', 'GetLabelAddress', 'GetTempFileName', 'GetWindowText', 'Goto', 'HideWindow', - 'IfAbort', 'IfErrors', 'IfFileExists', 'IfRebootFlag', 'IfSilent', 'InitPluginsDir', 'InstTypeGetText', - 'InstTypeSetText', 'IntCmp', 'IntCmpU', 'IntFmt', 'IntOp', 'IsWindow', 'LockWindow', 'LogSet', 'LogText', - 'MessageBox', 'Nop', 'Pop', 'Push', 'Quit', 'ReadEnvStr', 'ReadIniStr', 'ReadRegDWORD', 'ReadRegStr', - 'Reboot', 'RegDLL', 'Rename', 'ReserveFile', 'Return', 'RMDir', 'SearchPath', 'SectionGetFlags', - 'SectionGetInstTypes', 'SectionGetSize', 'SectionGetText', 'SectionSetFlags', 'SectionSetInstTypes', - 'SectionSetSize', 'SectionSetText', 'SendMessage', 'SetAutoClose', 'SetBrandingImage', 'SetCtlColors', - 'SetCurInstType', 'SetDetailsPrint', 'SetDetailsView', 'SetErrorLevel', 'SetErrors', 'SetFileAttributes', - 'SetOutPath', 'SetRebootFlag', 'SetShellVarContext', 'SetSilent', 'ShowWindow', 'Sleep', 'StrCmp', - 'StrCpy', 'StrLen', 'UnRegDLL', 'WriteINIStr', 'WriteRegBin', 'WriteRegDWORD', 'WriteRegExpandStr', - 'WriteRegStr', 'WriteUninstaller' - ), - 5 => array( - 'all', 'alwaysoff', 'ARCHIVE', 'auto', 'both', 'bzip2', 'checkbox', 'components', 'current', - 'custom', 'directory', 'false', 'FILE_ATTRIBUTE_ARCHIVE', 'FILE_ATTRIBUTE_HIDDEN', 'FILE_ATTRIBUTE_NORMAL', - 'FILE_ATTRIBUTE_OFFLINE', 'FILE_ATTRIBUTE_READONLY', 'FILE_ATTRIBUTE_SYSTEM,TEMPORARY', - 'FILE_ATTRIBUTE_TEMPORARY', 'force', 'HIDDEN', 'hide', 'HKCC', 'HKCR', 'HKCU', 'HKDD', 'HKEY_CLASSES_ROOT', - 'HKEY_CURRENT_CONFIG', 'HKEY_CURRENT_USER', 'HKEY_DYN_DATA', 'HKEY_LOCAL_MACHINE', 'HKEY_PERFORMANCE_DATA', - 'HKEY_USERS', 'HKLM', 'HKPD', 'HKU', 'IDABORT', 'IDCANCEL', 'IDIGNORE', 'IDNO', 'IDOK', 'IDRETRY', 'IDYES', - 'ifdiff', 'ifnewer', 'instfiles', 'lastused', 'leave', 'license', 'listonly', 'lzma', 'manual', - 'MB_ABORTRETRYIGNORE', 'MB_DEFBUTTON1', 'MB_DEFBUTTON2', 'MB_DEFBUTTON3', 'MB_DEFBUTTON4', - 'MB_ICONEXCLAMATION', 'MB_ICONINFORMATION', 'MB_ICONQUESTION', 'MB_ICONSTOP', 'MB_OK', 'MB_OKCANCEL', - 'MB_RETRYCANCEL', 'MB_RIGHT', 'MB_SETFOREGROUND', 'MB_TOPMOST', 'MB_YESNO', 'MB_YESNOCANCEL', 'nevershow', - 'none', 'normal', 'off', 'OFFLINE', 'on', 'radiobuttons', 'READONLY', 'RO', 'SHCTX', 'SHELL_CONTEXT', 'show', - 'silent', 'silentlog', 'SW_HIDE', 'SW_SHOWMAXIMIZED', 'SW_SHOWMINIMIZED', 'SW_SHOWNORMAL', 'SYSTEM', - 'textonly', 'true', 'try', 'uninstConfirm', 'zlib' - ), - 6 => array( - '/a', '/components', '/COMPONENTSONLYONCUSTOM', '/CUSTOMSTRING', '/e', '/FILESONLY', '/FINAL', '/gray', '/GLOBAL', - '/ifempty', '/IMGID', '/ITALIC', '/lang', '/NOCUSTOM', '/nonfatal', '/NOUNLOAD', '/oname', '/r', '/REBOOTOK', - '/RESIZETOFIT', '/SOLID', '/SD', '/SHORT', '/silent', '/STRIKE', '/TIMEOUT', '/TRIMCENTER', '/TRIMLEFT', - '/TRIMRIGHT', '/UNDERLINE', '/windows', '/x' - ), - 7 => array( - '.onGUIEnd', '.onGUIInit', '.onInit', '.onInstFailed', '.onInstSuccess', '.onMouseOverSection', - '.onRebootFailed', '.onSelChange', '.onUserAbort', '.onVerifyInstDir', 'un.onGUIEnd', 'un.onGUIInit', - 'un.onInit', 'un.onRebootFailed', 'un.onUninstFailed', 'un.onUninstSuccess', 'un.onUserAbort' - ), - 8 => array( - 'MUI.nsh', '"${NSISDIR}\Contrib\Modern UI\System.nsh"', 'MUI_SYSVERSION', 'MUI_ICON', 'MUI_UNICON', - 'MUI_HEADERIMAGE', 'MUI_HEADERIMAGE_BITMAP', 'MUI_HEADERIMAGE_BITMAP_NOSTRETCH', 'MUI_HEADERIMAGE_BITMAP_RTL', - 'MUI_HEADERIMAGE_BITMAP_RTL_NOSTRETCH', 'MUI_HEADERIMAGE_UNBITMAP', 'MUI_HEADERIMAGE_UNBITMAP_NOSTRETCH', - 'MUI_HEADERIMAGE_UNBITMAP_RTL', 'MUI_HEADERIMAGE_UNBITMAP_RTL_NOSTRETCH', 'MUI_HEADERIMAGE_RIGHT', 'MUI_BGCOLOR', - 'MUI_UI', 'MUI_UI_HEADERIMAGE', 'MUI_UI_HEADERIMAGE_RIGHT', 'MUI_UI_COMPONENTSPAGE_SMALLDESC', - 'MUI_UI_COMPONENTSPAGE_NODESC', 'MUI_WELCOMEFINISHPAGE_BITMAP', 'MUI_WELCOMEFINISHPAGE_BITMAP_NOSTRETCH', - 'MUI_WELCOMEFINISHPAGE_INI', 'MUI_UNWELCOMEFINISHPAGE_BITMAP', 'MUI_UNWELCOMEFINISHPAGE_BITMAP_NOSTRETCH', - 'MUI_UNWELCOMEFINISHPAGE_INI', 'MUI_LICENSEPAGE_BGCOLOR', 'MUI_COMPONENTSPAGE_CHECKBITMAP', - 'MUI_COMPONENTSPAGE_SMALLDESC', 'MUI_COMPONENTSPAGE_NODESC', 'MUI_INSTFILESPAGE_COLORS', - 'MUI_INSTFILESPAGE_PROGRESSBAR', 'MUI_FINISHPAGE_NOAUTOCLOSE', 'MUI_UNFINISHPAGE_NOAUTOCLOSE', - 'MUI_ABORTWARNING', 'MUI_ABORTWARNING_TEXT', 'MUI_UNABORTWARNING', 'MUI_UNABORTWARNING_TEXT', - 'MUI_PAGE_WELCOME', 'MUI_PAGE_LICENSE', 'MUI_PAGE_COMPONENTS', 'MUI_PAGE_DIRECTORY', - 'MUI_PAGE_STARTMENU', 'MUI_PAGE_INSTFILES', 'MUI_PAGE_FINISH', 'MUI_UNPAGE_WELCOME', - 'MUI_UNPAGE_CONFIRM', 'MUI_UNPAGE_LICENSE', 'MUI_UNPAGE_COMPONENTS', 'MUI_UNPAGE_DIRECTORY', - 'MUI_UNPAGE_INSTFILES', 'MUI_UNPAGE_FINISH', 'MUI_PAGE_HEADER_TEXT', 'MUI_PAGE_HEADER_SUBTEXT', - 'MUI_WELCOMEPAGE_TITLE', 'MUI_WELCOMEPAGE_TITLE_3LINES', 'MUI_WELCOMEPAGE_TEXT', - 'MUI_LICENSEPAGE_TEXT_TOP', 'MUI_LICENSEPAGE_TEXT_BOTTOM', 'MUI_LICENSEPAGE_BUTTON', - 'MUI_LICENSEPAGE_CHECKBOX', 'MUI_LICENSEPAGE_CHECKBOX_TEXT', 'MUI_LICENSEPAGE_RADIOBUTTONS', - 'MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT', 'MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE', - 'MUI_COMPONENTSPAGE_TEXT_TOP', 'MUI_COMPONENTSPAGE_TEXT_COMPLIST', 'MUI_COMPONENTSPAGE_TEXT_INSTTYPE', - 'MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE', 'MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO', - 'MUI_DIRECTORYPAGE_TEXT_TOP', 'MUI_DIRECTORYPAGE_TEXT_DESTINATION', 'MUI_DIRECTORYPAGE_VARIABLE', - 'MUI_DIRECTORYPAGE_VERIFYONLEAVE', 'MUI_STARTMENU_WRITE_BEGIN', 'MUI_STARTMENU_WRITE_END', - 'MUI_STARTMENUPAGE_TEXT_TOP', 'MUI_STARTMENUPAGE_TEXT_CHECKBOX', 'MUI_STARTMENUPAGE_DEFAULTFOLDER', - 'MUI_STARTMENUPAGE_NODISABLE', 'MUI_STARTMENUPAGE_REGISTRY_ROOT', 'MUI_STARTMENUPAGE_REGISTRY_KEY', - 'MUI_STARTMENUPAGE_REGISTRY_VALUENAME', 'MUI_INSTFILESPAGE_FINISHHEADER_TEXT', - 'MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT', 'MUI_INSTFILESPAGE_ABORTHEADER_TEXT', - 'MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT', 'MUI_FINISHPAGE_TITLE', 'MUI_FINISHPAGE_TITLE_3LINES', - 'MUI_FINISHPAGE_TEXT', 'MUI_FINISHPAGE_TEXT_LARGE', 'MUI_FINISHPAGE_BUTTON', - 'MUI_FINISHPAGE_TEXT_REBOOT', 'MUI_FINISHPAGE_TEXT_REBOOTNOW', 'MUI_FINISHPAGE_TEXT_REBOOTLATER', - 'MUI_FINISHPAGE_RUN', 'MUI_FINISHPAGE_RUN_TEXT', 'MUI_FINISHPAGE_RUN_PARAMETERS', - 'MUI_FINISHPAGE_RUN_NOTCHECKED', 'MUI_FINISHPAGE_RUN_FUNCTION', 'MUI_FINISHPAGE_SHOWREADME', - 'MUI_FINISHPAGE_SHOWREADME_TEXT', 'MUI_FINISHPAGE_SHOWREADME_NOTCHECKED', - 'MUI_FINISHPAGE_SHOWREADME_FUNCTION', 'MUI_FINISHPAGE_LINK', 'MUI_FINISHPAGE_LINK_LOCATION', - 'MUI_FINISHPAGE_LINK_COLOR', 'MUI_FINISHPAGE_NOREBOOTSUPPORT', 'MUI_UNCONFIRMPAGE_TEXT_TOP', - 'MUI_UNCONFIRMPAGE_TEXT_LOCATION', 'MUI_LANGUAGE', 'MUI_LANGDLL_DISPLAY', - 'MUI_LANGDLL_REGISTRY_ROOT', 'MUI_LANGDLL_REGISTRY_KEY', 'MUI_LANGDLL_REGISTRY_VALUENAME', - 'MUI_LANGDLL_WINDOWTITLE', 'MUI_LANGDLL_INFO', 'MUI_LANGDLL_ALWAYSSHOW', - 'MUI_RESERVEFILE_INSTALLOPTIONS', 'MUI_RESERVEFILE_LANGDLL', 'MUI_FUNCTION_DESCRIPTION_BEGIN', - 'MUI_DESCRIPTION_TEXT', 'MUI_FUNCTION_DESCRIPTION_END', 'MUI_INSTALLOPTIONS_EXTRACT', - 'MUI_INSTALLOPTIONS_EXTRACT_AS', 'MUI_HEADER_TEXT', 'MUI_INSTALLOPTIONS_DISPLAY', - 'MUI_INSTALLOPTIONS_INITDIALOG', 'MUI_INSTALLOPTIONS_SHOW', - 'MUI_INSTALLOPTIONS_DISPLAY_RETURN', 'MUI_INSTALLOPTIONS_SHOW_RETURN', - 'MUI_INSTALLOPTIONS_READ', 'MUI_INSTALLOPTIONS_WRITE', - 'MUI_CUSTOMFUNCTION_GUIINIT', 'MUI_CUSTOMFUNCTION_UNGUIINIT', - 'MUI_CUSTOMFUNCTION_ABORT', 'MUI_CUSTOMFUNCTION_UNABORT', - 'MUI_PAGE_CUSTOMFUNCTION_PRE', 'MUI_PAGE_CUSTOMFUNCTION_SHOW', 'MUI_PAGE_CUSTOMFUNCTION_LEAVE', - 'MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT' - ), - 9 => array( - 'LogicLib.nsh', '${LOGICLIB}', 'LOGICLIB_STRCMP', 'LOGICLIB_INT64CMP', 'LOGICLIB_SECTIONCMP', '${If}', '${Unless}', - '${ElseIf}', '${ElseUnless}', '${Else}', '${EndIf}', '${EndUnless}', '${AndIf}', '${AndUnless}', - '${OrIf}', '${OrUnless}', '${IfThen}', '${IfCmd}', '${Select}', '${Case2}', '${Case3}', - '${Case4}', '${Case5}', '${CaseElse}', '${Default}', '${EndSelect}', '${Switch}', - '${Case}', '${EndSwitch}', '${Do}', '${DoWhile}', '${UntilWhile}', '${Continue}', '${Break}', - '${Loop}', '${LoopWhile}', '${LoopUntil}', '${While}', '${ExitWhile}', '${EndWhile}', '${For}', - '${ForEach}', '${ExitFor}', '${Next}', '${Abort}', '${Errors}', '${RebootFlag}', '${Silent}', - '${FileExists}', '${Cmd}', '${SectionIsSelected}', '${SectionIsSectionGroup}', - '${SectionIsSectionGroupEnd}', '${SectionIsBold}', '${SectionIsReadOnly}', - '${SectionIsExpanded}', '${SectionIsPartiallySelected}' - ), - 10 => array( - 'StrFunc.nsh', '${STRFUNC}', '${StrCase}', '${StrClb}', '${StrIOToNSIS}', '${StrLoc}', '${StrNSISToIO}', '${StrRep}', - '${StrSort}', '${StrStr}', '${StrStrAdv}', '${StrTok}', '${StrTrimNewLines}' - ), - 11 => array( - 'UpgradeDLL.nsh', 'UPGRADEDLL_INCLUDED', 'UpgradeDLL' - ), - 12 => array( - 'Sections.nsh', 'SECTIONS_INCLUDED', '${SF_SELECTED}', '${SF_SECGRP}', '${SF_SUBSEC}', '${SF_SECGRPEND}', - '${SF_SUBSECEND}', '${SF_BOLD}', '${SF_RO}', '${SF_EXPAND}', '${SF_PSELECTED}', '${SF_TOGGLED}', - '${SF_NAMECHG}', '${SECTION_OFF}', 'SelectSection', 'UnselectSection', 'ReverseSection', - 'StartRadioButtons', 'RadioButton', 'EndRadioButtons', '${INSTTYPE_0}', '${INSTTYPE_1}', '${INSTTYPE_2}', - '${INSTTYPE_3}', '${INSTTYPE_4}', '${INSTTYPE_5}', '${INSTTYPE_6}', '${INSTTYPE_7}', '${INSTTYPE_8}', - '${INSTTYPE_9}', '${INSTTYPE_10}', '${INSTTYPE_11}', '${INSTTYPE_12}', '${INSTTYPE_13}', '${INSTTYPE_14}', - '${INSTTYPE_15}', '${INSTTYPE_16}', '${INSTTYPE_17}', '${INSTTYPE_18}', '${INSTTYPE_19}', '${INSTTYPE_20}', - '${INSTTYPE_21}', '${INSTTYPE_22}', '${INSTTYPE_23}', '${INSTTYPE_24}', '${INSTTYPE_25}', '${INSTTYPE_26}', - '${INSTTYPE_27}', '${INSTTYPE_28}', '${INSTTYPE_29}', '${INSTTYPE_30}', '${INSTTYPE_31}', '${INSTTYPE_32}', - 'SetSectionInInstType', 'ClearSectionInInstType', 'SetSectionFlag', 'ClearSectionFlag', 'SectionFlagIsSet' - ), - 13 => array( - 'Colors.nsh', 'WHITE', 'BLACK', 'YELLOW', 'RED', 'GREEN', 'BLUE', 'MAGENTA', 'CYAN', 'rgb2hex' - ), - 14 => array( - 'FileFunc.nsh', '${Locate}', '${GetSize}', '${DriveSpace}', '${GetDrives}', '${GetTime}', '${GetFileAttributes}', '${GetFileVersion}', '${GetExeName}', '${GetExePath}', '${GetParameters}', '${GetOptions}', '${GetRoot}', '${GetParent}', '${GetFileName}', '${GetBaseName}', '${GetFileExt}', '${BannerTrimPath}', '${DirState}', '${RefreshShellIcons}' - ), - 15 => array( - 'TextFunc.nsh', '${LineFind}', '${LineRead}', '${FileReadFromEnd}', '${LineSum}', '${FileJoin}', '${TextCompare}', '${ConfigRead}', '${ConfigWrite}', '${FileRecode}', '${TrimNewLines}' - ), - 16 => array( - 'WordFunc.nsh', '${WordFind}', '${WordFind2X}', '${WordFind3X}', '${WordReplace}', '${WordAdd}', '${WordInsert}', '${StrFilter}', '${VersionCompare}', '${VersionConvert}' - ) - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false, - 10 => false, - 11 => false, - 12 => false, - 13 => false, - 14 => false, - 15 => false, - 16 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight:bold;', - 2 => 'color: #000066;', - 3 => 'color: #003366;', - 4 => 'color: #000099;', - 5 => 'color: #ff6600;', - 6 => 'color: #ff6600;', - 7 => 'color: #006600;', - 8 => 'color: #006600;', - 9 => 'color: #006600;', - 10 => 'color: #006600;', - 11 => 'color: #006600;', - 12 => 'color: #006600;', - 13 => 'color: #006600;', - 14 => 'color: #006600;', - 15 => 'color: #006600;', - 16 => 'color: #006600;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #660066; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #660066;' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => '' - ), - 'REGEXPS' => array( - 0 => 'color: #660000;', - 1 => 'color: #660000;', - 2 => 'color: #660000;', - 3 => 'color: #660000;', - 4 => 'color: #660000;', - 5 => 'color: #660000;', - 6 => 'color: #660000;', - 7 => 'color: #000099;', - 8 => 'color: #003399;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '', - 10 => '', - 11 => '', - 12 => '', - 13 => '', - 14 => '', - 15 => '', - 16 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => '\$\$', - 1 => '\$\\r', - 2 => '\$\\n', - 3 => '\$\\t', - 4 => '\$[a-zA-Z0-9_]+', - 5 => '\$\{.{1,256}\}', - 6 => '\$\\\(.{1,256}\\\)', - 7 => array( - GESHI_SEARCH => '([^:\/\\\*\?\"\<\>(?:<PIPE>)\s]*?)(::)([^:\/\\\*\?\"\<\>(?:<PIPE>)\s]*?)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '\\2\\3' - ), - 8 => array( - GESHI_SEARCH => '([^:\/\\\*\?\"\<\>(?:<PIPE>)\s]*?)(::)([^:\/\\\*\?\"\<\>(?:<PIPE>)]*?\s)', - GESHI_REPLACE => '\\3', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1\\2', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/oberon2.php b/system/application/libraries/geshi/oberon2.php deleted file mode 100644 index 35152b55f..000000000 --- a/system/application/libraries/geshi/oberon2.php +++ /dev/null @@ -1,135 +0,0 @@ -<?php -/************************************************************************************* - * oberon2.php - * ---------- - * Author: mbishop (mbishop@esoteriq.org) - * Copyright: (c) 2009 mbishop (mbishop@esoteriq.org) - * Release Version: 1.0.8.6 - * Date Started: 2009/02/10 - * - * Oberon-2 language file for GeSHi. - * - * CHANGES - * ------- - * - * TODO - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Oberon-2', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("''"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'ARRAY', 'BEGIN', 'BY', 'CASE', - 'CONST', 'DIV', 'DO', 'ELSE', 'ELSIF', 'END', - 'EXIT', 'FOR', 'IF', 'IMPORT', 'IN', 'IS', - 'LOOP', 'MOD', 'MODULE', 'OF', - 'OR', 'POINTER', 'PROCEDURE', 'RECORD', - 'REPEAT', 'RETURN', 'THEN', 'TO', - 'TYPE', 'UNTIL', 'VAR', 'WHILE', 'WITH' - ), - 2 => array( - 'NIL', 'FALSE', 'TRUE', - ), - 3 => array( - 'ABS', 'ASH', 'ASSERT', 'CAP', 'CHR', 'COPY', 'DEC', - 'ENTIER', 'EXCL', 'HALT', 'INC', 'INCL', 'LEN', - 'LONG', 'MAX', 'MIN', 'NEW', 'ODD', 'ORD', 'SHORT', 'SIZE' - ), - 4 => array( - 'BOOLEAN', 'CHAR', 'SHORTINT', 'LONGINT', - 'INTEGER', 'LONGREAL', 'REAL', 'SET', 'PTR' - ), - ), - 'SYMBOLS' => array( - ',', ':', '=', '+', '-', '*', '/', '#', '~' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #0066ee;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/objc.php b/system/application/libraries/geshi/objc.php deleted file mode 100644 index 084be7124..000000000 --- a/system/application/libraries/geshi/objc.php +++ /dev/null @@ -1,358 +0,0 @@ -<?php -/************************************************************************************* - * objc.php - * -------- - * Author: M. Uli Kusterer (witness.of.teachtext@gmx.net) - * Contributors: Quinn Taylor (quinntaylor@mac.com) - * Copyright: (c) 2008 Quinn Taylor, 2004 M. Uli Kusterer, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * Objective-C language file for GeSHi. - * - * CHANGES - * ------- - * 2008/07/11 (1.0.8) - * - Added support for @ before strings being highlighted - * 2008/06/10 (1.0.7.22) - * - Added keywords for Objective-C 2.0 (Leopard+). - * - Changed colors to match Xcode 3 highlighting more closely. - * - Updated API for AppKit and Foundation; added CoreData classes. - * - Updated URLs for AppKit and Foundation; split classes and protocols. - * - Sorted all keyword group in reverse-alpha order for correct matching. - * - Changed all keyword groups to be case-sensitive. - * 2004/11/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Objective-C', - 'COMMENT_SINGLE' => array( - //Compiler directives - 1 => '#', - //Single line C-Comments - 2 => '//' - ), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Multiline Continuation for single-line comment - 2 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m', - //Pseudo-Highlighting of the @-sign before strings - 3 => "/@(?=\")/" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - - 'KEYWORDS' => array( - // Objective-C keywords - 1 => array( - 'while', 'switch', 'return', 'in', 'if', 'goto', 'foreach', 'for', - 'else', 'do', 'default', 'continue', 'case', '@try', '@throw', - '@synthesize', '@synchronized', '@selector', '@public', '@protocol', - '@protected', '@property', '@private', '@interface', - '@implementation', '@finally', '@end', '@encode', '@defs', '@class', - '@catch' - ), - // Macros and constants - 2 => array( - 'YES', 'USHRT_MAX', 'ULONG_MAX', 'UINT_MAX', 'UCHAR_MAX', 'true', - 'TMP_MAX', 'stdout', 'stdin', 'stderr', 'SIGTERM', 'SIGSEGV', - 'SIGINT', 'SIGILL', 'SIG_IGN', 'SIGFPE', 'SIG_ERR', 'SIG_DFL', - 'SIGABRT', 'SHRT_MIN', 'SHRT_MAX', 'SEEK_SET', 'SEEK_END', - 'SEEK_CUR', 'SCHAR_MIN', 'SCHAR_MAX', 'RAND_MAX', 'NULL', - 'NO', 'nil', 'Nil', 'L_tmpnam', 'LONG_MIN', 'LONG_MAX', - 'LDBL_MIN_EXP', 'LDBL_MIN', 'LDBL_MAX_EXP', 'LDBL_MAX', - 'LDBL_MANT_DIG', 'LDBL_EPSILON', 'LDBL_DIG', 'INT_MIN', 'INT_MAX', - 'HUGE_VAL', 'FOPEN_MAX', 'FLT_ROUNDS', 'FLT_RADIX', 'FLT_MIN_EXP', - 'FLT_MIN', 'FLT_MAX_EXP', 'FLT_MAX', 'FLT_MANT_DIG', 'FLT_EPSILON', - 'FLT_DIG', 'FILENAME_MAX', 'false', 'EXIT_SUCCESS', 'EXIT_FAILURE', - 'errno', 'ERANGE', 'EOF', 'enum', 'EDOM', 'DBL_MIN_EXP', 'DBL_MIN', - 'DBL_MAX_EXP', 'DBL_MAX', 'DBL_MANT_DIG', 'DBL_EPSILON', 'DBL_DIG', - 'CLOCKS_PER_SEC', 'CHAR_MIN', 'CHAR_MAX', 'CHAR_BIT', 'BUFSIZ', - 'break' - ), - // C standard library functions - 3 => array( - 'vsprintf', 'vprintf', 'vfprintf', 'va_start', 'va_end', 'va_arg', - 'ungetc', 'toupper', 'tolower', 'tmpname', 'tmpfile', 'time', - 'tanh', 'tan', 'system', 'strxfrm', 'strtoul', 'strtol', 'strtok', - 'strtod', 'strstr', 'strspn', 'strrchr', 'strpbrk', 'strncpy', - 'strncmp', 'strncat', 'strlen', 'strftime', 'strerror', 'strcspn', - 'strcpy', 'strcoll', 'strcmp', 'strchr', 'strcat', 'sscanf', - 'srand', 'sqrt', 'sprintf', 'snprintf', 'sizeof', 'sinh', 'sin', - 'setvbuf', 'setjmp', 'setbuf', 'scanf', 'rewind', 'rename', - 'remove', 'realloc', 'rand', 'qsort', 'puts', 'putchar', 'putc', - 'printf', 'pow', 'perror', 'offsetof', 'modf', 'mktime', 'memset', - 'memmove', 'memcpy', 'memcmp', 'memchr', 'malloc', 'longjmp', - 'log10', 'log', 'localtime', 'ldiv', 'ldexp', 'labs', 'isxdigit', - 'isupper', 'isspace', 'ispunct', 'isprint', 'islower', - 'isgraph', 'isdigit', 'iscntrl', 'isalpha', 'isalnum', 'gmtime', - 'gets', 'getenv', 'getchar', 'getc', 'fwrite', 'ftell', 'fsetpos', - 'fseek', 'fscanf', 'frexp', 'freopen', 'free', 'fread', 'fputs', - 'fputc', 'fprintf', 'fopen', 'fmod', 'floor', 'fgets', 'fgetpos', - 'fgetc', 'fflush', 'ferror', 'feof', 'fclose', 'fabs', 'exp', - 'exit', 'div', 'difftime', 'ctime', 'cosh', 'cos', 'clock', - 'clearerr', 'ceil', 'calloc', 'bsearch', 'atol', 'atoi', 'atof', - 'atexit', 'atan2', 'atan', 'assert', 'asin', 'asctime', 'acos', - 'abs', 'abort' - ), - // Data types (C, Objective-C, Cocoa) - 4 => array( - 'volatile', 'void', 'va_list', 'unsigned', 'union', 'typedef', 'tm', - 'time_t', 'struct', 'string', 'static', 'size_t', - 'signed', 'signal', 'short', 'SEL', 'register', 'raise', - 'ptrdiff_t', 'NSZone', 'NSRect', 'NSRange', 'NSPoint', 'long', - 'ldiv_t', 'jmp_buf', 'int', 'IMP', 'id', 'fpos_t', 'float', 'FILE', - 'extern', 'double', 'div_t', 'const', 'clock_t', 'Class', 'char', - 'BOOL', 'auto' - ), - // Foundation classes - 5 => array( - 'NSXMLParser', 'NSXMLNode', 'NSXMLElement', 'NSXMLDTDNode', - 'NSXMLDTD', 'NSXMLDocument', 'NSWhoseSpecifier', - 'NSValueTransformer', 'NSValue', 'NSUserDefaults', 'NSURLResponse', - 'NSURLRequest', 'NSURLProtocol', 'NSURLProtectionSpace', - 'NSURLHandle', 'NSURLDownload', 'NSURLCredentialStorage', - 'NSURLCredential', 'NSURLConnection', 'NSURLCache', - 'NSURLAuthenticationChallenge', 'NSURL', 'NSUniqueIDSpecifier', - 'NSUndoManager', 'NSUnarchiver', 'NSTimeZone', 'NSTimer', - 'NSThread', 'NSTask', 'NSString', 'NSStream', 'NSSpellServer', - 'NSSpecifierTest', 'NSSortDescriptor', 'NSSocketPortNameServer', - 'NSSocketPort', 'NSSetCommand', 'NSSet', 'NSSerializer', - 'NSScriptWhoseTest', 'NSScriptSuiteRegistry', - 'NSScriptObjectSpecifier', 'NSScriptExecutionContext', - 'NSScriptCommandDescription', 'NSScriptCommand', - 'NSScriptCoercionHandler', 'NSScriptClassDescription', 'NSScanner', - 'NSRunLoop', 'NSRelativeSpecifier', 'NSRecursiveLock', - 'NSRangeSpecifier', 'NSRandomSpecifier', 'NSQuitCommand', 'NSProxy', - 'NSProtocolChecker', 'NSPropertySpecifier', - 'NSPropertyListSerialization', 'NSProcessInfo', 'NSPredicate', - 'NSPositionalSpecifier', 'NSPortNameServer', 'NSPortMessage', - 'NSPortCoder', 'NSPort', 'NSPointerFunctions', 'NSPointerArray', - 'NSPipe', 'NSOutputStream', 'NSOperationQueue', 'NSOperation', - 'NSObject', 'NSNumberFormatter', 'NSNumber', 'NSNull', - 'NSNotificationQueue', 'NSNotificationCenter', 'NSNotification', - 'NSNetServiceBrowser', 'NSNetService', 'NSNameSpecifier', - 'NSMutableURLRequest', 'NSMutableString', 'NSMutableSet', - 'NSMutableIndexSet', 'NSMutableDictionary', 'NSMutableData', - 'NSMutableCharacterSet', 'NSMutableAttributedString', - 'NSMutableArray', 'NSMoveCommand', 'NSMiddleSpecifier', - 'NSMethodSignature', 'NSMetadataQueryResultGroup', - 'NSMetadataQueryAttributeValueTuple', 'NSMetadataQuery', - 'NSMetadataItem', 'NSMessagePortNameServer', 'NSMessagePort', - 'NSMapTable', 'NSMachPort', 'NSMachBootstrapServer', - 'NSLogicalTest', 'NSLock', 'NSLocale', 'NSKeyedUnarchiver', - 'NSKeyedArchiver', 'NSInvocationOperation', 'NSInvocation', - 'NSInputStream', 'NSIndexSpecifier', 'NSIndexSet', 'NSIndexPath', - 'NSHTTPURLResponse', 'NSHTTPCookieStorage', 'NSHTTPCookie', - 'NSHost', 'NSHashTable', 'NSGetCommand', 'NSGarbageCollector', - 'NSFormatter', 'NSFileManager', 'NSFileHandle', 'NSExpression', - 'NSExistsCommand', 'NSException', 'NSError', 'NSEnumerator', - 'NSDistributedNotificationCenter', 'NSDistributedLock', - 'NSDistantObjectRequest', 'NSDistantObject', - 'NSDirectoryEnumerator', 'NSDictionary', 'NSDeserializer', - 'NSDeleteCommand', 'NSDecimalNumberHandler', 'NSDecimalNumber', - 'NSDateFormatter', 'NSDateComponents', 'NSDate', 'NSData', - 'NSCreateCommand', 'NSCountedSet', 'NSCountCommand', 'NSConnection', - 'NSConditionLock', 'NSCondition', 'NSCompoundPredicate', - 'NSComparisonPredicate', 'NSCoder', 'NSCloseCommand', - 'NSCloneCommand', 'NSClassDescription', 'NSCharacterSet', - 'NSCalendarDate', 'NSCalendar', 'NSCachedURLResponse', 'NSBundle', - 'NSAutoreleasePool', 'NSAttributedString', 'NSAssertionHandler', - 'NSArray', 'NSArchiver', 'NSAppleScript', 'NSAppleEventManager', - 'NSAppleEventDescriptor', 'NSAffineTransform' - ), - // Foundation protocols - 6 => array( - 'NSURLProtocolClient', 'NSURLHandleClient', 'NSURLClient', - 'NSURLAuthenticationChallengeSender', 'NSScriptObjectSpecifiers', - 'NSScriptKeyValueCoding', 'NSScriptingComparisonMethods', - 'NSObjCTypeSerializationCallBack', 'NSMutableCopying', - 'NSLocking', 'NSKeyValueObserving', 'NSKeyValueCoding', - 'NSFastEnumeration', 'NSErrorRecoveryAttempting', - 'NSDecimalNumberBehaviors', 'NSCopying', 'NSComparisonMethods', - 'NSCoding' - ), - // AppKit classes - 7 => array( - 'NSWorkspace', 'NSWindowController', 'NSWindow', 'NSViewController', - 'NSViewAnimation', 'NSView', 'NSUserDefaultsController', - 'NSTypesetter', 'NSTreeNode', 'NSTreeController', 'NSTrackingArea', - 'NSToolbarItemGroup', 'NSToolbarItem', 'NSToolbar', - 'NSTokenFieldCell', 'NSTokenField', 'NSTextView', - 'NSTextTableBlock', 'NSTextTable', 'NSTextTab', 'NSTextStorage', - 'NSTextList', 'NSTextFieldCell', 'NSTextField', 'NSTextContainer', - 'NSTextBlock', 'NSTextAttachmentCell', 'NSTextAttachment', 'NSText', - 'NSTabViewItem', 'NSTabView', 'NSTableView', 'NSTableHeaderView', - 'NSTableHeaderCell', 'NSTableColumn', 'NSStepperCell', 'NSStepper', - 'NSStatusItem', 'NSStatusBar', 'NSSplitView', 'NSSpellChecker', - 'NSSpeechSynthesizer', 'NSSpeechRecognizer', 'NSSound', - 'NSSliderCell', 'NSSlider', 'NSSimpleHorizontalTypesetter', - 'NSShadow', 'NSSegmentedControl', 'NSSegmentedCell', - 'NSSecureTextFieldCell', 'NSSecureTextField', 'NSSearchFieldCell', - 'NSSearchField', 'NSScrollView', 'NSScroller', 'NSScreen', - 'NSSavePanel', 'NSRulerView', 'NSRulerMarker', 'NSRuleEditor', - 'NSResponder', 'NSQuickDrawView', 'NSProgressIndicator', - 'NSPrintPanel', 'NSPrintOperation', 'NSPrintInfo', 'NSPrinter', - 'NSPredicateEditorRowTemplate', 'NSPredicateEditor', - 'NSPopUpButtonCell', 'NSPopUpButton', 'NSPICTImageRep', - 'NSPersistentDocument', 'NSPDFImageRep', 'NSPathControl', - 'NSPathComponentCell', 'NSPathCell', 'NSPasteboard', - 'NSParagraphStyle', 'NSPanel', 'NSPageLayout', 'NSOutlineView', - 'NSOpenPanel', 'NSOpenGLView', 'NSOpenGLPixelFormat', - 'NSOpenGLPixelBuffer', 'NSOpenGLContext', 'NSObjectController', - 'NSNibOutletConnector', 'NSNibControlConnector', 'NSNibConnector', - 'NSNib', 'NSMutableParagraphStyle', 'NSMovieView', 'NSMovie', - 'NSMenuView', 'NSMenuItemCell', 'NSMenuItem', 'NSMenu', 'NSMatrix', - 'NSLevelIndicatorCell', 'NSLevelIndicator', 'NSLayoutManager', - 'NSInputServer', 'NSInputManager', 'NSImageView', 'NSImageRep', - 'NSImageCell', 'NSImage', 'NSHelpManager', 'NSGraphicsContext', - 'NSGradient', 'NSGlyphInfo', 'NSGlyphGenerator', 'NSFormCell', - 'NSForm', 'NSFontPanel', 'NSFontManager', 'NSFontDescriptor', - 'NSFont', 'NSFileWrapper', 'NSEvent', 'NSEPSImageRep', 'NSDrawer', - 'NSDocumentController', 'NSDocument', 'NSDockTile', - 'NSDictionaryController', 'NSDatePickerCell', 'NSDatePicker', - 'NSCustomImageRep', 'NSCursor', 'NSController', 'NSControl', - 'NSComboBoxCell', 'NSComboBox', 'NSColorWell', 'NSColorSpace', - 'NSColorPicker', 'NSColorPanel', 'NSColorList', 'NSColor', - 'NSCollectionViewItem', 'NSCollectionView', 'NSClipView', - 'NSCIImageRep', 'NSCell', 'NSCachedImageRep', 'NSButtonCell', - 'NSButton', 'NSBrowserCell', 'NSBrowser', 'NSBox', - 'NSBitmapImageRep', 'NSBezierPath', 'NSATSTypesetter', - 'NSArrayController', 'NSApplication', 'NSAnimationContext', - 'NSAnimation', 'NSAlert', 'NSActionCell' - ), - // AppKit protocols - 8 => array( - 'NSWindowScripting', 'NSValidatedUserInterfaceItem', - 'NSUserInterfaceValidations', 'NSToolTipOwner', - 'NSToolbarItemValidation', 'NSTextInput', - 'NSTableDataSource', 'NSServicesRequests', - 'NSPrintPanelAccessorizing', 'NSPlaceholders', - 'NSPathControlDelegate', 'NSPathCellDelegate', - 'NSOutlineViewDataSource', 'NSNibAwaking', 'NSMenuValidation', - 'NSKeyValueBindingCreation', 'NSInputServiceProvider', - 'NSInputServerMouseTracker', 'NSIgnoreMisspelledWords', - 'NSGlyphStorage', 'NSFontPanelValidation', 'NSEditorRegistration', - 'NSEditor', 'NSDraggingSource', 'NSDraggingInfo', - 'NSDraggingDestination', 'NSDictionaryControllerKeyValuePair', - 'NSComboBoxDataSource', 'NSComboBoxCellDataSource', - 'NSColorPickingDefault', 'NSColorPickingCustom', 'NSChangeSpelling', - 'NSAnimatablePropertyContainer', 'NSAccessibility' - ), - // CoreData classes - 9 => array( - 'NSRelationshipDescription', 'NSPropertyMapping', - 'NSPropertyDescription', 'NSPersistentStoreCoordinator', - 'NSPersistentStore', 'NSMigrationManager', 'NSMappingModel', - 'NSManagedObjectModel', 'NSManagedObjectID', - 'NSManagedObjectContext', 'NSManagedObject', - 'NSFetchRequestExpression', 'NSFetchRequest', - 'NSFetchedPropertyDescription', 'NSEntityMigrationPolicy', - 'NSEntityMapping', 'NSEntityDescription', 'NSAttributeDescription', - 'NSAtomicStoreCacheNode', 'NSAtomicStore' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true - ), - // Define the colors for the groups listed above - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #a61390;', // Objective-C keywords - 2 => 'color: #a61390;', // Macros and constants - 3 => 'color: #a61390;', // C standard library functions - 4 => 'color: #a61390;', // data types - 5 => 'color: #400080;', // Foundation classes - 6 => 'color: #2a6f76;', // Foundation protocols - 7 => 'color: #400080;', // AppKit classes - 8 => 'color: #2a6f76;', // AppKit protocols - 9 => 'color: #400080;' // CoreData classes - ), - 'COMMENTS' => array( - 1 => 'color: #6e371a;', // Preprocessor directives - 2 => 'color: #11740a; font-style: italic;', // Normal C single-line comments - 3 => 'color: #bf1d1a;', // Q-sign in front of Strings - 'MULTI' => 'color: #11740a; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #2400d9;' - ), - 'BRACKETS' => array( - 0 => 'color: #002200;' - ), - 'STRINGS' => array( - 0 => 'color: #bf1d1a;' - ), - 'NUMBERS' => array( - 0 => 'color: #2400d9;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #002200;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.opengroup.org/onlinepubs/009695399/functions/{FNAME}.html', - 4 => '', - 5 => 'http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/{FNAME}_Class/', - 6 => 'http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Protocols/{FNAME}_Protocol/', - 7 => 'http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/{FNAME}_Class/', - 8 => 'http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Protocols/{FNAME}_Protocol/', - 9 => 'http://developer.apple.com/documentation/Cocoa/Reference/CoreDataFramework/Classes/{FNAME}_Class/' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/ocaml-brief.php b/system/application/libraries/geshi/ocaml-brief.php deleted file mode 100644 index d9e3124f0..000000000 --- a/system/application/libraries/geshi/ocaml-brief.php +++ /dev/null @@ -1,112 +0,0 @@ -<?php -/************************************************************************************* - * ocaml.php - * ---------- - * Author: Flaie (fireflaie@gmail.com) - * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2005/08/27 - * - * OCaml (Objective Caml) language file for GeSHi. - * - * CHANGES - * ------- - * 2005/08/27 (1.0.0) - * - First Release - * - * TODO (updated 2005/08/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'OCaml (brief)', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => "", - 'KEYWORDS' => array( - /* main OCaml keywords */ - 1 => array( - 'and', 'as', 'asr', 'begin', 'class', 'closed', 'constraint', 'do', 'done', 'downto', 'else', - 'end', 'exception', 'external', 'failwith', 'false', 'flush', 'for', 'fun', 'function', 'functor', - 'if', 'in', 'include', 'inherit', 'incr', 'land', 'let', 'load', 'los', 'lsl', 'lsr', 'lxor', - 'match', 'method', 'mod', 'module', 'mutable', 'new', 'not', 'of', 'open', 'option', 'or', 'parser', - 'private', 'ref', 'rec', 'raise', 'regexp', 'sig', 'struct', 'stdout', 'stdin', 'stderr', 'then', - 'to', 'true', 'try', 'type', 'val', 'virtual', 'when', 'while', 'with' - ) - ), - /* highlighting symbols is really important in OCaml */ - 'SYMBOLS' => array( - ';', '!', ':', '.', '=', '%', '^', '*', '-', '/', '+', - '>', '<', '(', ')', '[', ']', '&', '|', '#', "'" - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #06c; font-weight: bold;' /* nice blue */ - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #5d478b; font-style: italic;' /* light purple */ - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #6c6;' - ), - 'STRINGS' => array( - 0 => 'color: #3cb371;' /* nice green */ - ), - 'NUMBERS' => array( - 0 => 'color: #c6c;' /* pink */ - ), - 'METHODS' => array( - 1 => 'color: #060;' /* dark green */ - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #a52a2a;' /* maroon */ - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/ocaml.php b/system/application/libraries/geshi/ocaml.php deleted file mode 100644 index a14d2dec1..000000000 --- a/system/application/libraries/geshi/ocaml.php +++ /dev/null @@ -1,174 +0,0 @@ -<?php -/************************************************************************************* - * ocaml.php - * ---------- - * Author: Flaie (fireflaie@gmail.com) - * Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2005/08/27 - * - * OCaml (Objective Caml) language file for GeSHi. - * - * CHANGES - * ------- - * 2008/03/29 (1.0.7.22) - * - Fixed warnings resulting from missing style information - * 2005/08/27 (1.0.0) - * - First Release - * - * TODO (updated 2005/08/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'OCaml', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('(*' => '*)'), - 'CASE_KEYWORDS' => 0, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => "", - 'KEYWORDS' => array( - /* main OCaml keywords */ - 1 => array( - 'and', 'as', 'asr', 'begin', 'class', 'closed', 'constraint', 'do', 'done', 'downto', 'else', - 'end', 'exception', 'external', 'failwith', 'false', 'for', 'fun', 'function', 'functor', - 'if', 'in', 'include', 'inherit', 'incr', 'land', 'let', 'load', 'los', 'lsl', 'lsr', 'lxor', - 'match', 'method', 'mod', 'module', 'mutable', 'new', 'not', 'of', 'open', 'option', 'or', 'parser', - 'private', 'ref', 'rec', 'raise', 'regexp', 'sig', 'struct', 'stdout', 'stdin', 'stderr', 'then', - 'to', 'true', 'try', 'type', 'val', 'virtual', 'when', 'while', 'with' - ), - /* define names of main librarys, so we can link to it */ - 2 => array( - 'Arg', 'Arith_status', 'Array', 'ArrayLabels', 'Big_int', 'Bigarray', 'Buffer', 'Callback', - 'CamlinternalOO', 'Char', 'Complex', 'Condition', 'Dbm', 'Digest', 'Dynlink', 'Event', - 'Filename', 'Format', 'Gc', 'Genlex', 'Graphics', 'GraphicsX11', 'Hashtbl', 'Int32', 'Int64', - 'Lazy', 'Lexing', 'List', 'ListLabels', 'Map', 'Marshal', 'MoreLabels', 'Mutex', 'Nativeint', - 'Num', 'Obj', 'Oo', 'Parsing', 'Pervasives', 'Printexc', 'Printf', 'Queue', 'Random', 'Scanf', - 'Set', 'Sort', 'Stack', 'StdLabels', 'Str', 'Stream', 'String', 'StringLabels', 'Sys', 'Thread', - 'ThreadUnix', 'Tk' - ), - /* just link to the Pervasives functions library, cause it's the default opened library when starting OCaml */ - 3 => array( - 'abs', 'abs_float', 'acos', 'asin', 'at_exit', 'atan', 'atan2', - 'bool_of_string', 'ceil', 'char_of_int', 'classify_float', - 'close_in', 'close_in_noerr', 'close_out', 'close_out_noerr', - 'compare', 'cos', 'cosh', 'decr', 'epsilon_float', 'exit', 'exp', - 'float', 'float_of_int', 'float_of_string', 'floor', 'flush', - 'flush_all', 'format_of_string', 'frexp', 'fst', 'ignore', - 'in_channel_length', 'infinity', 'input', 'input_binary_int', - 'input_byte', 'input_char', 'input_line', 'input_value', - 'int_of_char', 'int_of_float', 'int_of_string', 'invalid_arg', - 'ldexp', 'log', 'log10', 'max', 'max_float', 'max_int', 'min', - 'min_float', 'min_int', 'mod_float', 'modf', 'nan', 'open_in', - 'open_in_bin', 'open_in_gen', 'open_out', 'open_out_bin', - 'open_out_gen', 'out_channel_length', 'output', 'output_binary_int', - 'output_byte', 'output_char', 'output_string', 'output_value', - 'pos_in', 'pos_out', 'pred', 'prerr_char', 'prerr_endline', - 'prerr_float', 'prerr_int', 'prerr_newline', 'prerr_string', - 'print_char', 'print_endline', 'print_float', 'print_int', - 'print_newline', 'print_string', 'read_float', 'read_int', - 'read_line', 'really_input', 'seek_in', 'seek_out', - 'set_binary_mode_in', 'set_binary_mode_out', 'sin', 'sinh', 'snd', - 'sqrt', 'string_of_bool', 'string_of_float', 'string_of_format', - 'string_of_int', 'succ', 'tan', 'tanh', 'truncate' - ), - /* here Pervasives Types */ - 4 => array ( - 'fpclass', 'in_channel', 'out_channel', 'open_flag', 'Sys_error', 'format' - ), - /* finally Pervasives Exceptions */ - 5 => array ( - 'Exit', 'Invalid_Argument', 'Failure', 'Division_by_zero' - ) - ), - /* highlighting symbols is really important in OCaml */ - 'SYMBOLS' => array( - ';', '!', ':', '.', '=', '%', '^', '*', '-', '/', '+', - '>', '<', '(', ')', '[', ']', '&', '|', '#', "'" - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => true, /* functions name are case sensitive */ - 3 => true, /* types name too */ - 4 => true, /* pervasives types */ - 5 => true /* pervasives exceptions */ - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #06c; font-weight: bold;', /* nice blue */ - 2 => 'color: #06c; font-weight: bold;', /* nice blue */ - 3 => 'color: #06c; font-weight: bold;', /* nice blue */ - 4 => 'color: #06c; font-weight: bold;', /* nice blue */ - 5 => 'color: #06c; font-weight: bold;' /* nice blue */ - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #5d478b; font-style: italic;' /* light purple */ - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #6c6;' - ), - 'STRINGS' => array( - 0 => 'color: #3cb371;' /* nice green */ - ), - 'NUMBERS' => array( - 0 => 'color: #c6c;' /* pink */ - ), - 'METHODS' => array( - 1 => 'color: #060;' /* dark green */ - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #a52a2a;' /* maroon */ - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - /* some of keywords are Pervasives functions (land, lxor, asr, ...) */ - 1 => '', - /* link to the wanted library */ - 2 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/{FNAME}.html', - /* link to Pervasives functions */ - 3 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#VAL{FNAME}', - /* link to Pervasives type */ - 4 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#TYPE{FNAME}', - /* link to Pervasives exceptions */ - 5 => 'http://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html#EXCEPTION{FNAME}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/oobas.php b/system/application/libraries/geshi/oobas.php deleted file mode 100644 index b3a5a0b6d..000000000 --- a/system/application/libraries/geshi/oobas.php +++ /dev/null @@ -1,135 +0,0 @@ -<?php -/************************************************************************************* - * oobas.php - * --------- - * Author: Roberto Rossi (rsoftware@altervista.org) - * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/30 - * - * OpenOffice.org Basic language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'OpenOffice.org Basic', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - //Single-Line comments using REM keyword - 'COMMENT_REGEXP' => array(2 => '/\bREM.*?$/i'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'dim','private','public','global','as','if','redim','true','set','byval', - 'false','bool','double','integer','long','object','single','variant', - 'msgbox','print','inputbox','green','blue','red','qbcolor', - 'rgb','open','close','reset','freefile','get','input','line', - 'put','write','loc','seek','eof','lof','chdir','chdrive', - 'curdir','dir','fileattr','filecopy','filedatetime','fileexists', - 'filelen','getattr','kill','mkdir','name','rmdir','setattr', - 'dateserial','datevalue','day','month','weekday','year','cdatetoiso', - 'cdatefromiso','hour','minute','second','timeserial','timevalue', - 'date','now','time','timer','erl','err','error','on','goto','resume', - 'and','eqv','imp','not','or','xor','mod','atn','cos','sin','tan','log', - 'exp','rnd','randomize','sqr','fix','int','abs','sgn','hex','oct', - 'it','then','else','select','case','iif','do','loop','for','next','to', - 'while','wend','gosub','return','call','choose','declare', - 'end','exit','freelibrary','function','rem','stop','sub','switch','with', - 'cbool','cdate','cdbl','cint','clng','const','csng','cstr','defbool', - 'defdate','defdbl','defint','deflng','asc','chr','str','val','cbyte', - 'space','string','format','lcase','left','lset','ltrim','mid','right', - 'rset','rtrim','trim','ucase','split','join','converttourl','convertfromurl', - 'instr','len','strcomp','beep','shell','wait','getsystemticks','environ', - 'getsolarversion','getguitype','twipsperpixelx','twipsperpixely', - 'createunostruct','createunoservice','getprocessservicemanager', - 'createunodialog','createunolistener','createunovalue','thiscomponent', - 'globalscope' - ) - ), - 'SYMBOLS' => array( - '(', ')', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/oracle11.php b/system/application/libraries/geshi/oracle11.php deleted file mode 100644 index 08c25b66d..000000000 --- a/system/application/libraries/geshi/oracle11.php +++ /dev/null @@ -1,614 +0,0 @@ -<?php -/************************************************************************************* - * oracle11.php - * ----------- - * Author: Guy Wicks (Guy.Wicks@rbs.co.uk) - * Contributions: - * - Updated for 11i by Simon Redhead - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * Oracle 11i language file for GeSHi. - * - * CHANGES - * ------- - * 2008/04/08 (1.0.8) - * - SR changes to oracle8.php to support Oracle 11i reserved words. - * 2005/01/29 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Oracle 11 SQL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( -//Put your package names here - e.g. select distinct ''''|| lower(name) || ''',' from user_source; -// 6 => array( -// ), - -//Put your table names here - e.g. select distinct ''''|| lower(table_name) || ''',' from user_tables; -// 5 => array( -// ), - -//Put your view names here - e.g. select distinct ''''|| lower(view_name) || ''',' from user_views; -// 4 => array( -// ), - -//Put your table field names here - e.g. select distinct ''''|| lower(column_name) || ''',' from user_tab_columns; -// 3 => array( -// ), - - //Put ORACLE reserved keywords here (11i). I like mine uppercase. - 1 => array( - 'ABS', - 'ACCESS', - 'ACOS', - 'ADD', - 'ADD_MONTHS', - 'ALL', - 'ALTER', - 'ANALYZE', - 'AND', - 'ANY', - 'APPENDCHILDXML', - 'ARRAY', - 'AS', - 'ASC', - 'ASCII', - 'ASCIISTR', - 'ASIN', - 'ASSOCIATE', - 'AT', - 'ATAN', - 'ATAN2', - 'AUDIT', - 'AUTHID', - 'AVG', - 'BEGIN', - 'BETWEEN', - 'BFILENAME', - 'BIN_TO_NUM', - 'BINARY_INTEGER', - 'BITAND', - 'BODY', - 'BOOLEAN', - 'BULK', - 'BY', - 'CALL', - 'CARDINALITY', - 'CASCADE', - 'CASE', - 'CAST', - 'CEIL', - 'CHAR', - 'CHAR_BASE', - 'CHARTOROWID', - 'CHECK', - 'CHR', - 'CLOSE', - 'CLUSTER', - 'CLUSTER_ID', - 'CLUSTER_PROBABILITY', - 'CLUSTER_SET', - 'COALESCE', - 'COLLECT', - 'COLUMN', - 'COMMENT', - 'COMMIT', - 'COMPOSE', - 'COMPRESS', - 'CONCAT', - 'CONNECT', - 'CONSTANT', - 'CONSTRAINT', - 'CONSTRAINTS', - 'CONTEXT', - 'CONTROLFILE', - 'CONVERT', - 'CORR', - 'CORR_K', - 'CORR_S', - 'COS', - 'COSH', - 'COST', - 'COUNT', - 'COVAR_POP', - 'COVAR_SAMP', - 'CREATE', - 'CUBE_TABLE', - 'CUME_DIST', - 'CURRENT', - 'CURRENT_DATE', - 'CURRENT_TIMESTAMP', - 'CURRVAL', - 'CURSOR', - 'CV', - 'DATABASE', - 'DATAOBJ_TO_PARTITION', - 'DATE', - 'DAY', - 'DBTIMEZONE', - 'DECIMAL', - 'DECLARE', - 'DECODE', - 'DECOMPOSE', - 'DEFAULT', - 'DELETE', - 'DELETEXML', - 'DENSE_RANK', - 'DEPTH', - 'DEREF', - 'DESC', - 'DIMENSION', - 'DIRECTORY', - 'DISASSOCIATE', - 'DISTINCT', - 'DO', - 'DROP', - 'DUMP', - 'ELSE', - 'ELSIF', - 'EMPTY_BLOB', - 'EMPTY_CLOB', - 'END', - 'EXCEPTION', - 'EXCLUSIVE', - 'EXEC', - 'EXECUTE', - 'EXISTS', - 'EXISTSNODE', - 'EXIT', - 'EXP', - 'EXPLAIN', - 'EXTENDS', - 'EXTRACT', - 'EXTRACTVALUE', - 'FALSE', - 'FEATURE_ID', - 'FEATURE_SET', - 'FEATURE_VALUE', - 'FETCH', - 'FILE', - 'FIRST', - 'FIRST_VALUE', - 'FLOAT', - 'FLOOR', - 'FOR', - 'FORALL', - 'FROM', - 'FROM_TZ', - 'FUNCTION', - 'GOTO', - 'GRANT', - 'GREATEST', - 'GROUP', - 'GROUP_ID', - 'GROUPING', - 'GROUPING_ID', - 'HAVING', - 'HEAP', - 'HEXTORAW', - 'HOUR', - 'IDENTIFIED', - 'IF', - 'IMMEDIATE', - 'IN', - 'INCREMENT', - 'INDEX', - 'INDEXTYPE', - 'INDICATOR', - 'INITCAP', - 'INITIAL', - 'INSERT', - 'INSERTCHILDXML', - 'INSERTXMLBEFORE', - 'INSTR', - 'INSTRB', - 'INTEGER', - 'INTERFACE', - 'INTERSECT', - 'INTERVAL', - 'INTO', - 'IS', - 'ISOLATION', - 'ITERATION_NUMBER', - 'JAVA', - 'KEY', - 'LAG', - 'LAST', - 'LAST_DAY', - 'LAST_VALUE', - 'LEAD', - 'LEAST', - 'LENGTH', - 'LENGTHB', - 'LEVEL', - 'LIBRARY', - 'LIKE', - 'LIMITED', - 'LINK', - 'LN', - 'LNNVL', - 'LOCALTIMESTAMP', - 'LOCK', - 'LOG', - 'LONG', - 'LOOP', - 'LOWER', - 'LPAD', - 'LTRIM', - 'MAKE_REF', - 'MATERIALIZED', - 'MAX', - 'MAXEXTENTS', - 'MEDIAN', - 'MIN', - 'MINUS', - 'MINUTE', - 'MLSLABEL', - 'MOD', - 'MODE', - 'MODIFY', - 'MONTH', - 'MONTHS_BETWEEN', - 'NANVL', - 'NATURAL', - 'NATURALN', - 'NCHR', - 'NEW', - 'NEW_TIME', - 'NEXT_DAY', - 'NEXTVAL', - 'NLS_CHARSET_DECL_LEN', - 'NLS_CHARSET_ID', - 'NLS_CHARSET_NAME', - 'NLS_INITCAP', - 'NLS_LOWER', - 'NLS_UPPER', - 'NLSSORT', - 'NOAUDIT', - 'NOCOMPRESS', - 'NOCOPY', - 'NOT', - 'NOWAIT', - 'NTILE', - 'NULL', - 'NULLIF', - 'NUMBER', - 'NUMBER_BASE', - 'NUMTODSINTERVAL', - 'NUMTOYMINTERVAL', - 'NVL', - 'NVL2', - 'OCIROWID', - 'OF', - 'OFFLINE', - 'ON', - 'ONLINE', - 'OPAQUE', - 'OPEN', - 'OPERATOR', - 'OPTION', - 'OR', - 'ORA_HASH', - 'ORDER', - 'ORGANIZATION', - 'OTHERS', - 'OUT', - 'OUTLINE', - 'PACKAGE', - 'PARTITION', - 'PATH', - 'PCTFREE', - 'PERCENT_RANK', - 'PERCENTILE_CONT', - 'PERCENTILE_DISC', - 'PLAN', - 'PLS_INTEGER', - 'POSITIVE', - 'POSITIVEN', - 'POWER', - 'POWERMULTISET', - 'POWERMULTISET_BY_CARDINALITY', - 'PRAGMA', - 'PREDICTION', - 'PREDICTION_BOUNDS', - 'PREDICTION_COST', - 'PREDICTION_DETAILS', - 'PREDICTION_PROBABILITY', - 'PREDICTION_SET', - 'PRESENTNNV', - 'PRESENTV', - 'PREVIOUS', - 'PRIMARY', - 'PRIOR', - 'PRIVATE', - 'PRIVILEGES', - 'PROCEDURE', - 'PROFILE', - 'PUBLIC', - 'RAISE', - 'RANGE', - 'RANK', - 'RATIO_TO_REPORT', - 'RAW', - 'RAWTOHEX', - 'RAWTONHEX', - 'REAL', - 'RECORD', - 'REF', - 'REFTOHEX', - 'REGEXP_COUNT', - 'REGEXP_INSTR', - 'REGEXP_REPLACE', - 'REGEXP_SUBSTR', - 'REGR_AVGX', - 'REGR_AVGY', - 'REGR_COUNT', - 'REGR_INTERCEPT', - 'REGR_R2', - 'REGR_SLOPE', - 'REGR_SXX', - 'REGR_SXY', - 'REGR_SYY', - 'RELEASE', - 'REMAINDER', - 'RENAME', - 'REPLACE', - 'RESOURCE', - 'RETURN', - 'RETURNING', - 'REVERSE', - 'REVOKE', - 'ROLE', - 'ROLLBACK', - 'ROUND', - 'ROW', - 'ROW_NUMBER', - 'ROWID', - 'ROWIDTOCHAR', - 'ROWIDTONCHAR', - 'ROWNUM', - 'ROWS', - 'ROWTYPE', - 'RPAD', - 'RTRIM', - 'SAVEPOINT', - 'SCHEMA', - 'SCN_TO_TIMESTAMP', - 'SECOND', - 'SEGMENT', - 'SELECT', - 'SEPERATE', - 'SEQUENCE', - 'SESSION', - 'SESSIONTIMEZONE', - 'SET', - 'SHARE', - 'SIGN', - 'SIN', - 'SINH', - 'SIZE', - 'SMALLINT', - 'SOUNDEX', - 'SPACE', - 'SQL', - 'SQLCODE', - 'SQLERRM', - 'SQRT', - 'START', - 'STATISTICS', - 'STATS_BINOMIAL_TEST', - 'STATS_CROSSTAB', - 'STATS_F_TEST', - 'STATS_KS_TEST', - 'STATS_MODE', - 'STATS_MW_TEST', - 'STATS_ONE_WAY_ANOVA', - 'STATS_T_TEST_INDEP', - 'STATS_T_TEST_INDEPU', - 'STATS_T_TEST_ONE', - 'STATS_T_TEST_PAIRED', - 'STATS_WSR_TEST', - 'STDDEV', - 'STDDEV_POP', - 'STDDEV_SAMP', - 'STOP', - 'SUBSTR', - 'SUBSTRB', - 'SUBTYPE', - 'SUCCESSFUL', - 'SUM', - 'SYNONYM', - 'SYS_CONNECT_BY_PATH', - 'SYS_CONTEXT', - 'SYS_DBURIGEN', - 'SYS_EXTRACT_UTC', - 'SYS_GUID', - 'SYS_TYPEID', - 'SYS_XMLAGG', - 'SYS_XMLGEN', - 'SYSDATE', - 'SYSTEM', - 'SYSTIMESTAMP', - 'TABLE', - 'TABLESPACE', - 'TAN', - 'TANH', - 'TEMPORARY', - 'THEN', - 'TIME', - 'TIMESTAMP', - 'TIMESTAMP_TO_SCN', - 'TIMEZONE_ABBR', - 'TIMEZONE_HOUR', - 'TIMEZONE_MINUTE', - 'TIMEZONE_REGION', - 'TIMING', - 'TO', - 'TO_BINARY_DOUBLE', - 'TO_BINARY_FLOAT', - 'TO_CHAR', - 'TO_CLOB', - 'TO_DATE', - 'TO_DSINTERVAL', - 'TO_LOB', - 'TO_MULTI_BYTE', - 'TO_NCHAR', - 'TO_NCLOB', - 'TO_NUMBER', - 'TO_SINGLE_BYTE', - 'TO_TIMESTAMP', - 'TO_TIMESTAMP_TZ', - 'TO_YMINTERVAL', - 'TRANSACTION', - 'TRANSLATE', - 'TREAT', - 'TRIGGER', - 'TRIM', - 'TRUE', - 'TRUNC', - 'TRUNCATE', - 'TYPE', - 'TZ_OFFSET', - 'UI', - 'UID', - 'UNION', - 'UNIQUE', - 'UNISTR', - 'UPDATE', - 'UPDATEXML', - 'UPPER', - 'USE', - 'USER', - 'USERENV', - 'USING', - 'VALIDATE', - 'VALUE', - 'VALUES', - 'VAR_POP', - 'VAR_SAMP', - 'VARCHAR', - 'VARCHAR2', - 'VARIANCE', - 'VIEW', - 'VSIZE', - 'WHEN', - 'WHENEVER', - 'WHERE', - 'WHILE', - 'WIDTH_BUCKET', - 'WITH', - 'WORK', - 'WRITE', - 'XMLAGG', - 'XMLCAST', - 'XMLCDATA', - 'XMLCOLATTVAL', - 'XMLCOMMENT', - 'XMLCONCAT', - 'XMLDIFF', - 'XMLELEMENT', - 'XMLEXISTS', - 'XMLFOREST', - 'XMLPARSE', - 'XMLPATCH', - 'XMLPI', - 'XMLQUERY', - 'XMLROOT', - 'XMLSEQUENCE', - 'XMLSERIALIZE', - 'XMLTABLE', - 'XMLTRANSFORM', - 'YEAR', - 'ZONE' - ) - ), - 'SYMBOLS' => array( - '(', ')', '=', '<', '>', '|', '+', '-', '*', '/', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, -// 3 => false, -// 4 => false, -// 5 => false, -// 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #993333; font-weight: bold; text-transform: uppercase;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #ff0000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', -// 3 => '', -// 4 => '', -// 5 => '', -// 6 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/oracle8.php b/system/application/libraries/geshi/oracle8.php deleted file mode 100644 index 5ac18786d..000000000 --- a/system/application/libraries/geshi/oracle8.php +++ /dev/null @@ -1,496 +0,0 @@ -<?php -/************************************************************************************* - * oracle8.php - * ----------- - * Author: Guy Wicks (Guy.Wicks@rbs.co.uk) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * Oracle 8 language file for GeSHi. - * - * CHANGES - * ------- - * 2005/01/29 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Oracle 8 SQL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( -//Put your package names here - e.g. select distinct ''''|| lower(name) || ''',' from user_source; -// 6 => array( -// ), - -//Put your table names here - e.g. select distinct ''''|| lower(table_name) || ''',' from user_tables; -// 5 => array( -// ), - -//Put your view names here - e.g. select distinct ''''|| lower(view_name) || ''',' from user_views; -// 4 => array( -// ), - -//Put your table field names here - e.g. select distinct ''''|| lower(column_name) || ''',' from user_tab_columns; -// 3 => array( -// ), - -//Put ORACLE reserved keywords here (8.1.7). I like mine uppercase. - 1 => array( - 'ABS', - 'ACCESS', - 'ACOS', - 'ADD', - 'ADD_MONTHS', - 'ALL', - 'ALTER', - 'ANALYZE', - 'AND', - 'ANY', - 'ARRAY', - 'AS', - 'ASC', - 'ASCII', - 'ASIN', - 'ASSOCIATE', - 'AT', - 'ATAN', - 'ATAN2', - 'AUDIT', - 'AUTHID', - 'AVG', - 'BEGIN', - 'BETWEEN', - 'BFILENAME', - 'BINARY_INTEGER', - 'BITAND', - 'BODY', - 'BOOLEAN', - 'BULK', - 'BY', - 'CALL', - 'CASCADE', - 'CASE', - 'CEIL', - 'CHAR', - 'CHAR_BASE', - 'CHARTOROWID', - 'CHECK', - 'CHR', - 'CLOSE', - 'CLUSTER', - 'COALESCE', - 'COLLECT', - 'COLUMN', - 'COMMENT', - 'COMMIT', - 'COMPRESS', - 'CONCAT', - 'CONNECT', - 'CONSTANT', - 'CONSTRAINT', - 'CONSTRAINTS', - 'CONTEXT', - 'CONTROLFILE', - 'CONVERT', - 'CORR', - 'COS', - 'COSH', - 'COST', - 'COUNT', - 'COVAR_POP', - 'COVAR_SAMP', - 'CREATE', - 'CUME_DIST', - 'CURRENT', - 'CURRVAL', - 'CURSOR', - 'DATABASE', - 'DATE', - 'DAY', - 'DECIMAL', - 'DECLARE', - 'DECODE', - 'DEFAULT', - 'DELETE', - 'DENSE_RANK', - 'DEREF', - 'DESC', - 'DIMENSION', - 'DIRECTORY', - 'DISASSOCIATE', - 'DISTINCT', - 'DO', - 'DROP', - 'DUMP', - 'ELSE', - 'ELSIF', - 'EMPTY_BLOB', - 'EMPTY_CLOB', - 'END', - 'EXCEPTION', - 'EXCLUSIVE', - 'EXEC', - 'EXECUTE', - 'EXISTS', - 'EXIT', - 'EXP', - 'EXPLAIN', - 'EXTENDS', - 'EXTRACT', - 'FALSE', - 'FETCH', - 'FILE', - 'FIRST_VALUE', - 'FLOAT', - 'FLOOR', - 'FOR', - 'FORALL', - 'FROM', - 'FUNCTION', - 'GOTO', - 'GRANT', - 'GREATEST', - 'GROUP', - 'GROUPING', - 'HAVING', - 'HEAP', - 'HEXTORAW', - 'HOUR', - 'IDENTIFIED', - 'IF', - 'IMMEDIATE', - 'IN', - 'INCREMENT', - 'INDEX', - 'INDEXTYPE', - 'INDICATOR', - 'INITCAP', - 'INITIAL', - 'INSERT', - 'INSTR', - 'INSTRB', - 'INTEGER', - 'INTERFACE', - 'INTERSECT', - 'INTERVAL', - 'INTO', - 'IS', - 'ISOLATION', - 'JAVA', - 'KEY', - 'LAG', - 'LAST_DAY', - 'LAST_VALUE', - 'LEAD', - 'LEAST', - 'LENGTH', - 'LENGTHB', - 'LEVEL', - 'LIBRARY', - 'LIKE', - 'LIMITED', - 'LINK', - 'LN', - 'LOCK', - 'LOG', - 'LONG', - 'LOOP', - 'LOWER', - 'LPAD', - 'LTRIM', - 'MAKE_REF', - 'MATERIALIZED', - 'MAX', - 'MAXEXTENTS', - 'MIN', - 'MINUS', - 'MINUTE', - 'MLSLABEL', - 'MOD', - 'MODE', - 'MODIFY', - 'MONTH', - 'MONTHS_BETWEEN', - 'NATURAL', - 'NATURALN', - 'NEW', - 'NEW_TIME', - 'NEXT_DAY', - 'NEXTVAL', - 'NLS_CHARSET_DECL_LEN', - 'NLS_CHARSET_ID', - 'NLS_CHARSET_NAME', - 'NLS_INITCAP', - 'NLS_LOWER', - 'NLS_UPPER', - 'NLSSORT', - 'NOAUDIT', - 'NOCOMPRESS', - 'NOCOPY', - 'NOT', - 'NOWAIT', - 'NTILE', - 'NULL', - 'NULLIF', - 'NUMBER', - 'NUMBER_BASE', - 'NUMTODSINTERVAL', - 'NUMTOYMINTERVAL', - 'NVL', - 'NVL2', - 'OCIROWID', - 'OF', - 'OFFLINE', - 'ON', - 'ONLINE', - 'OPAQUE', - 'OPEN', - 'OPERATOR', - 'OPTION', - 'OR', - 'ORDER', - 'ORGANIZATION', - 'OTHERS', - 'OUT', - 'OUTLINE', - 'PACKAGE', - 'PARTITION', - 'PCTFREE', - 'PERCENT_RANK', - 'PLAN', - 'PLS_INTEGER', - 'POSITIVE', - 'POSITIVEN', - 'POWER', - 'PRAGMA', - 'PRIMARY', - 'PRIOR', - 'PRIVATE', - 'PRIVILEGES', - 'PROCEDURE', - 'PROFILE', - 'PUBLIC', - 'RAISE', - 'RANGE', - 'RANK', - 'RATIO_TO_REPORT', - 'RAW', - 'RAWTOHEX', - 'REAL', - 'RECORD', - 'REF', - 'REFTOHEX', - 'REGR_AVGX', - 'REGR_AVGY', - 'REGR_COUNT', - 'REGR_INTERCEPT', - 'REGR_R2', - 'REGR_SLOPE', - 'REGR_SXX', - 'REGR_SXY', - 'REGR_SYY', - 'RELEASE', - 'RENAME', - 'REPLACE', - 'RESOURCE', - 'RETURN', - 'RETURNING', - 'REVERSE', - 'REVOKE', - 'ROLE', - 'ROLLBACK', - 'ROUND', - 'ROW', - 'ROW_NUMBER', - 'ROWID', - 'ROWIDTOCHAR', - 'ROWNUM', - 'ROWS', - 'ROWTYPE', - 'RPAD', - 'RTRIM', - 'SAVEPOINT', - 'SCHEMA', - 'SECOND', - 'SEGMENT', - 'SELECT', - 'SEPERATE', - 'SEQUENCE', - 'SESSION', - 'SET', - 'SHARE', - 'SIGN', - 'SIN', - 'SINH', - 'SIZE', - 'SMALLINT', - 'SOUNDEX', - 'SPACE', - 'SQL', - 'SQLCODE', - 'SQLERRM', - 'SQRT', - 'START', - 'STATISTICS', - 'STDDEV', - 'STDDEV_POP', - 'STDDEV_SAMP', - 'STOP', - 'SUBSTR', - 'SUBSTRB', - 'SUBTYPE', - 'SUCCESSFUL', - 'SUM', - 'SYNONYM', - 'SYS_CONTEXT', - 'SYS_GUID', - 'SYSDATE', - 'SYSTEM', - 'TABLE', - 'TABLESPACE', - 'TAN', - 'TANH', - 'TEMPORARY', - 'THEN', - 'TIME', - 'TIMESTAMP', - 'TIMEZONE_ABBR', - 'TIMEZONE_HOUR', - 'TIMEZONE_MINUTE', - 'TIMEZONE_REGION', - 'TIMING', - 'TO', - 'TO_CHAR', - 'TO_DATE', - 'TO_LOB', - 'TO_MULTI_BYTE', - 'TO_NUMBER', - 'TO_SINGLE_BYTE', - 'TRANSACTION', - 'TRANSLATE', - 'TRIGGER', - 'TRIM', - 'TRUE', - 'TRUNC', - 'TRUNCATE', - 'TYPE', - 'UI', - 'UID', - 'UNION', - 'UNIQUE', - 'UPDATE', - 'UPPER', - 'USE', - 'USER', - 'USERENV', - 'USING', - 'VALIDATE', - 'VALUE', - 'VALUES', - 'VAR_POP', - 'VAR_SAMP', - 'VARCHAR', - 'VARCHAR2', - 'VARIANCE', - 'VIEW', - 'VSIZE', - 'WHEN', - 'WHENEVER', - 'WHERE', - 'WHILE', - 'WITH', - 'WORK', - 'WRITE', - 'YEAR', - 'ZONE' - ) - ), - 'SYMBOLS' => array( - '(', ')', '=', '<', '>', '|', '+', '-', '*', '/', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, -// 3 => false, -// 4 => false, -// 5 => false, -// 6 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #993333; font-weight: bold; text-transform: uppercase;' -//Add the styles for groups 3-6 here when used - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #ff0000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', -// 3 => '', -// 4 => '', -// 5 => '', -// 6 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/pascal.php b/system/application/libraries/geshi/pascal.php deleted file mode 100644 index 948c00ce4..000000000 --- a/system/application/libraries/geshi/pascal.php +++ /dev/null @@ -1,152 +0,0 @@ -<?php -/************************************************************************************* - * pascal.php - * ---------- - * Author: Tux (tux@inamil.cz) - * Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/26 - * - * Pascal language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/27 (1.0.2) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.1) - * - Added support for URLs - * 2004/08/05 (1.0.0) - * - Added support for symbols - * 2004/07/27 (0.9.1) - * - Pascal is OO language. Some new words. - * 2004/07/26 (0.9.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Pascal', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('{' => '}','(*' => '*)'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("''"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'absolute','asm','assembler','begin','break','case','catch','cdecl', - 'const','constructor','default','destructor','div','do','downto', - 'else','end','except','export','exports','external','far', - 'finalization','finally','for','forward','function','goto','if', - 'implementation','in','index','inherited','initialization','inline', - 'interface','interrupt','label','library','mod','name','not','of', - 'or','overload','override','private','procedure','program', - 'property','protected','public','published','raise','repeat', - 'resourcestring','shl','shr','stdcall','stored','switch','then', - 'to','try','type','unit','until','uses','var','while','xor' - ), - 2 => array( - 'nil', 'false', 'true', - ), - 3 => array( - 'abs','and','arc','arctan','blockread','blockwrite','chr','dispose', - 'cos','eof','eoln','exp','get','ln','new','odd','ord','ordinal', - 'pred','read','readln','sin','sqrt','succ','write','writeln' - ), - 4 => array( - 'ansistring','array','boolean','byte','bytebool','char','file', - 'integer','longbool','longint','object','packed','pointer','real', - 'record','set','shortint','smallint','string','union','word' - ), - ), - 'SYMBOLS' => array( - ',', ':', '=', '+', '-', '*', '/' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;', - 4 => 'color: #000066; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #0066ee;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/per.php b/system/application/libraries/geshi/per.php deleted file mode 100644 index 06cf2e41b..000000000 --- a/system/application/libraries/geshi/per.php +++ /dev/null @@ -1,302 +0,0 @@ -<?php -/************************************************************************************* - * per.php - * -------- - * Author: Lars Gersmann (lars.gersmann@gmail.com) - * Copyright: (c) 2007 Lars Gersmann - * Release Version: 1.0.8.6 - * Date Started: 2007/06/03 - * - * Per (forms) (FOURJ's Genero 4GL) language file for GeSHi. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'per', - 'COMMENT_SINGLE' => array(1 => '--', 2 => '#'), - 'COMMENT_MULTI' => array('{' => '}'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - "ACCELERATOR", - "ACCELERATOR2", - "ACTION", - "ALT", - "AND", - "AUTO", - "AUTONEXT", - "AUTOSCALE", - "BETWEEN", - "BOTH", - "BUTTON", - "BUTTONEDIT", - "BUTTONTEXTHIDDEN", - "BY", - "BYTE", - "CANVAS", - "CENTER", - "CHECKBOX", - "CLASS", - "COLOR", - "COLUMNS", - "COMBOBOX", - "COMMAND", - "COMMENT", - "COMMENTS", - "COMPACT", - "COMPRESS", - "CONFIG", - "CONTROL", - "CURRENT", - "DATABASE", - "DATEEDIT", - "DEC", - "DEFAULT", - "DEFAULTS", - "DELIMITERS", - "DISPLAY", - "DISPLAYONLY", - "DOWNSHIFT", - "DYNAMIC", - "EDIT", - "FIXED", - "FOLDER", - "FONTPITCH", - "FORMAT", - "FORMONLY", - "GRID", - "GRIDCHILDRENINPARENT", - "GROUP", - "HBOX", - "HEIGHT", - "HIDDEN", - "HORIZONTAL", - "INCLUDE", - "INITIAL", - "INITIALIZER", - "INPUT", - "INSTRUCTIONS", - "INTERVAL", - "INVISIBLE", - "IS", - "ITEM", - "ITEMS", - "JUSTIFY", - "KEY", - "KEYS", - "LABEL", - "LEFT", - "LIKE", - "LINES", - "MATCHES", - "NAME", - "NOENTRY", - "NONCOMPRESS", - "NORMAL", - "NOT", - "NOUPDATE", - "OPTIONS", - "OR", - "ORIENTATION", - "PACKED", - "PAGE", - "PICTURE", - "PIXELHEIGHT", - "PIXELS", - "PIXELWIDTH", - "POINTS", - "PROGRAM", - "PROGRESSBAR", - "QUERYCLEAR", - "QUERYEDITABLE", - "RADIOGROUP", - "RECORD", - "REQUIRED", - "REVERSE", - "RIGHT", - "SAMPLE", - "SCREEN", - "SCROLL", - "SCROLLBARS", - "SCROLLGRID", - "SECOND", - "SEPARATOR", - "SHIFT", - "SIZE", - "SIZEPOLICY", - "SMALLFLOAT", - "SMALLINT", - "SPACING", - "STRETCH", - "STYLE", - "TABINDEX", - "TABLE", - "TAG", - "TEXT", - "TEXTEDIT", - "THROUGH", - "THRU", - "TITLE", - "TO", - "TOOLBAR", - "TOPMENU", - "TYPE", - "UNHIDABLE", - "UNHIDABLECOLUMNS", - "UNMOVABLE", - "UNMOVABLECOLUMNS", - "UNSIZABLE", - "UNSIZABLECOLUMNS", - "UNSORTABLE", - "UNSORTABLECOLUMNS", - "UPSHIFT", - "USER", - "VALIDATE", - "VALUECHECKED", - "VALUEMAX", - "VALUEMIN", - "VALUEUNCHECKED", - "VARCHAR", - "VARIABLE", - "VBOX", - "VERIFY", - "VERSION", - "VERTICAL", - "TIMESTAMP", - "WANTCOLUMNSANCHORED", /* to be removed! */ - "WANTFIXEDPAGESIZE", - "WANTNORETURNS", - "WANTTABS", - "WHERE", - "WIDGET", - "WIDTH", - "WINDOWSTYLE", - "WITHOUT", - "WORDWRAP", - "X", - "Y", - "ZEROFILL", - "SCHEMA", - "ATTRIBUTES", - "TABLES", - "LAYOUT", - "END" - ), - 2 => array( - "YEAR", - "BLACK", - "BLINK", - "BLUE", - "YELLOW", - "WHITE", - "UNDERLINE", - "CENTURY", - "FRACTION", - "CHAR", - "CHARACTER", - "CHARACTERS", - "CYAN", - "DATE", - "DATETIME", - "DAY", - "DECIMAL", - "FALSE", - "FLOAT", - "GREEN", - "HOUR", - "INT", - "INTEGER", - "MAGENTA", - "MINUTE", - "MONEY", - "NONE", - "NULL", - "REAL", - "RED", - "TRUE", - "TODAY", - "MONTH", - "IMAGE" - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '%', '>', '<', '^', '!', '|', ':', - '(', ')', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', - 2 => 'color: #0000FF; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 2 => 'color: #008080;', - 'MULTI' => 'color: green' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #808080;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/perl.php b/system/application/libraries/geshi/perl.php deleted file mode 100644 index 57b8971e8..000000000 --- a/system/application/libraries/geshi/perl.php +++ /dev/null @@ -1,213 +0,0 @@ -<?php -/************************************************************************************* - * perl.php - * -------- - * Author: Andreas Gohr (andi@splitbrain.org), Ben Keen (ben.keen@gmail.com) - * Copyright: (c) 2004 Andreas Gohr, Ben Keen (http://www.benjaminkeen.org/), Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/20 - * - * Perl language file for GeSHi. - * - * CHANGES - * ------- - * 2008/06/22 (1.0.8) - * - Added support for system calls in backticks (Corley Kinnane) - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * - Added comment_regexp for predefined variables - * 2008/02/15 (1.003) - * - Fixed SF#1891630 with placebo patch - * 2006/01/05 (1.0.2) - * - Used hardescape feature for ' strings (Cliff Stanford) - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/08/20 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * LABEL: - * * string comparison operators - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Perl', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array( - '=back' => '=cut', - '=head' => '=cut', - '=item' => '=cut', - '=over' => '=cut', - '=begin' => '=cut', - '=end' => '=cut', - '=for' => '=cut', - '=encoding' => '=cut', - '=pod' => '=cut' - ), - 'COMMENT_REGEXP' => array( - //Regular expressions - 2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU", - //Regular expression match variables - 3 => '/\$\d+/', - //Heredoc - 4 => '/<<\s*?([\'"]?)([a-zA-Z0-9]+)\1;[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - //Predefined variables - 5 => '/\$(\^[a-zA-Z]?|[\*\$`\'&_\.,+\-~:;\\\\\/"\|%=\?!@#<>\(\)\[\]])(?!\w)|@[_+\-]|%[!]|\$(?=\{)/', - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"','`'), - 'HARDQUOTE' => array("'", "'"), // An optional 2-element array defining the beginning and end of a hard-quoted string - 'HARDESCAPE' => array('\\\'',), - // Things that must still be escaped inside a hard-quoted string - // If HARDQUOTE is defined, HARDESCAPE must be defined - // This will not work unless the first character of each element is either in the - // QUOTEMARKS array or is the ESCAPE_CHAR - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'case', 'do', 'else', 'elsif', 'for', 'if', 'then', 'until', 'while', 'foreach', 'my', - 'xor', 'or', 'and', 'unless', 'next', 'last', 'redo', 'not', 'our', - 'reset', 'continue', 'cmp', 'ne', 'eq', 'lt', 'gt', 'le', 'ge', - ), - 2 => array( - 'use', 'sub', 'new', '__END__', '__DATA__', '__DIE__', '__WARN__', 'BEGIN', - 'STDIN', 'STDOUT', 'STDERR', 'ARGV', 'ARGVOUT' - ), - 3 => array( - 'abs', 'accept', 'alarm', 'atan2', 'bind', 'binmode', 'bless', - 'caller', 'chdir', 'chmod', 'chomp', 'chop', 'chown', 'chr', - 'chroot', 'close', 'closedir', 'connect', 'cos', - 'crypt', 'dbmclose', 'dbmopen', 'defined', 'delete', 'die', - 'dump', 'each', 'endgrent', 'endhostent', 'endnetent', 'endprotoent', - 'endpwent', 'endservent', 'eof', 'eval', 'exec', 'exists', 'exit', - 'exp', 'fcntl', 'fileno', 'flock', 'fork', 'format', 'formline', - 'getc', 'getgrent', 'getgrgid', 'getgrnam', 'gethostbyaddr', - 'gethostbyname', 'gethostent', 'getlogin', 'getnetbyaddr', 'getnetbyname', - 'getnetent', 'getpeername', 'getpgrp', 'getppid', 'getpriority', - 'getprotobyname', 'getprotobynumber', 'getprotoent', 'getpwent', - 'getpwnam', 'getpwuid', 'getservbyname', 'getservbyport', 'getservent', - 'getsockname', 'getsockopt', 'glob', 'gmtime', 'goto', 'grep', - 'hex', 'import', 'index', 'int', 'ioctl', 'join', 'keys', 'kill', - 'lc', 'lcfirst', 'length', 'link', 'listen', 'local', - 'localtime', 'log', 'lstat', 'm', 'map', 'mkdir', 'msgctl', 'msgget', - 'msgrcv', 'msgsnd', 'no', 'oct', 'open', 'opendir', - 'ord', 'pack', 'package', 'pipe', 'pop', 'pos', 'print', - 'printf', 'prototype', 'push', 'qq', 'qr', 'quotemeta', 'qw', - 'qx', 'q', 'rand', 'read', 'readdir', 'readline', 'readlink', 'readpipe', - 'recv', 'ref', 'rename', 'require', 'return', - 'reverse', 'rewinddir', 'rindex', 'rmdir', 's', 'scalar', 'seek', - 'seekdir', 'select', 'semctl', 'semget', 'semop', 'send', 'setgrent', - 'sethostent', 'setnetent', 'setpgrp', 'setpriority', 'setprotoent', - 'setpwent', 'setservent', 'setsockopt', 'shift', 'shmctl', 'shmget', - 'shmread', 'shmwrite', 'shutdown', 'sin', 'sleep', 'socket', 'socketpair', - 'sort', 'splice', 'split', 'sprintf', 'sqrt', 'srand', 'stat', - 'study', 'substr', 'symlink', 'syscall', 'sysopen', 'sysread', - 'sysseek', 'system', 'syswrite', 'tell', 'telldir', 'tie', 'tied', - 'time', 'times', 'tr', 'truncate', 'uc', 'ucfirst', 'umask', 'undef', - 'unlink', 'unpack', 'unshift', 'untie', 'utime', 'values', - 'vec', 'wait', 'waitpid', 'wantarray', 'warn', 'write', 'y' - ) - ), - 'SYMBOLS' => array( - '<', '>', '=', - '!', '@', '~', '&', '|', '^', - '+','-', '*', '/', '%', - ',', ';', '?', '.', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 3 => 'color: #0000ff;', - 4 => 'color: #cc0000; font-style: italic;', - 5 => 'color: #0000ff;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;', - 4 => 'color: #009999;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://perldoc.perl.org/functions/{FNAMEL}.html' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '::' - ), - 'REGEXPS' => array( - //Variable - 0 => '(?:\$[\$#]?|\\\\(?:[@%*]?|\\\\*\$|&)|%[$]?|@[$]?|\*[$]?|&[$]?)[a-zA-Z_][a-zA-Z0-9_]*', - //File Descriptor - 4 => '<[a-zA-Z_][a-zA-Z0-9_]*>', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '$' - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/perl6.php b/system/application/libraries/geshi/perl6.php deleted file mode 100644 index 1c04098c0..000000000 --- a/system/application/libraries/geshi/perl6.php +++ /dev/null @@ -1,197 +0,0 @@ -<?php -/************************************************************************************* - * perl6.php - * --------- - * Author: Kodi Arfer (kodiarfer {at} warpmail {period} net); forked from perl.php 1.0.8 by Andreas Gohr (andi@splitbrain.org), Ben Keen (ben.keen@gmail.com) - * Copyright: (c) 2009 Kodi Arfer, (c) 2004 Andreas Gohr, Ben Keen (http://www.benjaminkeen.org/), Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2009/11/07 - * - * Perl 6 language file for GeSHi. - * - * CHANGES - * ------- - * 2009/12/25 (1.0.8.6) - * - First Release - * - * TODO (updated 2009/11/07) - * ------------------------- - * * It's all pretty rough. Perl 6 is complicated; this'll never be more - * than reasonably accurate unless it's carefully written to match - * STD.pm. - * * It's largely incomplete. Lots of keywords are no doubt missing. - * * Recognize comments like #`( Hello! ). - * * Recognize qw-ing angle brackets. - * * ! should probably be in OBJECT_SPLITTERS too, but putting it there - * gives bizarre results. What to do?. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Perl 6', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array('=begin' => '=end'), - 'COMMENT_REGEXP' => array( - //Regular expressions - 2 => "/(?<=[\\s^])(s|tr|y)\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/(?:\\\\.|(?!\n)[^\\/\\\\])*\\/[msixpogcde]*(?=[\\s$\\.\\;])|(?<=[\\s^(=])(m|q[qrwx]?)?\\/(?:\\\\.|(?!\n)[^\\/\\\\])+\\/[msixpogc]*(?=[\\s$\\.\\,\\;\\)])/iU", - //Regular expression match variables - 3 => '/\$\d+/', - //Heredoc - 4 => '/<<\s*?([\'"]?)([a-zA-Z0-9]+)\1;[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - //Beastly hack to finish highlighting each POD block - 5 => '((?<==end) .+)' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'HARDQUOTE' => array("'", "'"), // An optional 2-element array defining the beginning and end of a hard-quoted string - 'HARDESCAPE' => array('\\\''), - // Things that must still be escaped inside a hard-quoted string - // If HARDQUOTE is defined, HARDESCAPE must be defined - // This will not work unless the first character of each element is either in the - // QUOTEMARKS array or is the ESCAPE_CHAR - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'do', 'else', 'elsif', 'for', 'if', 'then', 'until', - 'while', 'loop', 'repeat', 'my', 'xor', 'or', 'and', - 'unless', 'next', 'last', 'redo', 'not', 'our', 'let', - 'temp', 'state', 'enum', 'constant', 'continue', 'cmp', - 'ne', 'eq', 'lt', 'gt', 'le', 'ge', 'leg', 'div', 'X', - 'Z', 'x', 'xx', 'given', 'when', 'default', 'has', - 'returns', 'of', 'is', 'does', 'where', 'subset', 'but', - 'True', 'False', 'return', 'die', 'fail' - ), - 2 => array( - 'use', 'sub', 'multi', 'method', 'submethod', 'proto', - 'class', 'role', 'grammar', 'regex', 'token', 'rule', - 'new', 'BEGIN', 'END', 'CHECK', 'INIT', 'START', 'FIRST', - 'ENTER', 'LEAVE', 'KEEP', 'UNDO', 'NEXT', 'LAST', 'PRE', - 'POST', 'CATCH', 'CONTROL', 'BUILD' - ), - 3 => array( - 'all', 'any', 'cat', 'classify', 'defined', 'grep', 'first', - 'keys', 'kv', 'join', 'map', 'max', 'min', 'none', 'one', 'pairs', - 'print', 'printf', 'roundrobin', 'pick', 'reduce', 'reverse', 'say', - 'shape', 'sort', 'srand', 'undefine', 'uri', 'values', 'warn', 'zip', - - # Container - 'rotate', 'comb', 'end', 'elems', 'delete', - 'exists', 'pop', 'push', 'shift', 'splice', - 'unshift', 'invert', 'decode', - - # Numeric - 'succ', 'pred', 'abs', 'exp', 'log', - 'log10', 'rand', 'roots', 'cis', 'unpolar', 'i', 'floor', - 'ceiling', 'round', 'truncate', 'sign', 'sqrt', - 'polar', 're', 'im', 'I', 'atan2', 'nude', - 'denominator', 'numerator', - - # Str - 'p5chop', 'chop', 'p5chomp', 'chomp', 'lc', 'lcfirst', - 'uc', 'ucfirst', 'normalize', 'samecase', 'sameaccent', - 'capitalize', 'length', 'chars', 'graphs', 'codes', - 'bytes', 'encode', 'index', 'pack', 'quotemeta', 'rindex', - 'split', 'words', 'flip', 'sprintf', 'fmt', - 'substr', 'trim', 'unpack', 'match', 'subst', 'trans' - ) - ), - 'SYMBOLS' => array( - '<', '>', '=', - '!', '@', '~', '&', '|', '^', - '+','-', '*', '/', '%', - ',', ';', '?', '.', ':', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #009966; font-style: italic;', - 3 => 'color: #0000ff;', - 4 => 'color: #cc0000; font-style: italic;', - 5 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - //Variable - 0 => '(?:[$@%]|&)(?:(?:[\^:*?!~]|<)?[a-zA-Z_][a-zA-Z0-9_]*|(?=\.))' - # We treat the . twigil specially so the name can be highlighted as an - # object field (via OBJECT_SPLITTERS). - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '$' - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/php-brief.php b/system/application/libraries/geshi/php-brief.php deleted file mode 100644 index ceaf423af..000000000 --- a/system/application/libraries/geshi/php-brief.php +++ /dev/null @@ -1,222 +0,0 @@ -<?php -/************************************************************************************* - * php-brief.php - * ------------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/02 - * - * PHP (brief version) language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/27 (1.0.3) - * - Added support for multiple object splitters - * - Fixed &new problem - * 2004/10/27 (1.0.2) - * - Added support for URLs - * 2004/08/05 (1.0.1) - * - Added support for symbols - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2004/07/14) - * ------------------------- - * * Remove more functions that are hardly used - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PHP (brief)', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - //Heredoc and Nowdoc syntax - 'COMMENT_REGEXP' => array(3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("\'"), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'include', 'require', 'include_once', 'require_once', - 'for', 'as', 'foreach', 'if', 'elseif', 'else', 'while', 'do', 'endwhile', 'endif', 'switch', 'case', 'endswitch', - 'return', 'break' - ), - 2 => array( - 'null', '__LINE__', '__FILE__', - 'false', '<?php', - 'true', 'var', 'default', - 'function', 'class', 'new', '&new', 'public', 'private', 'interface', 'extends', - 'const', 'self' - ), - 3 => array( - 'func_num_args', 'func_get_arg', 'func_get_args', 'strlen', 'strcmp', 'strncmp', 'strcasecmp', 'strncasecmp', 'each', 'error_reporting', 'define', 'defined', - 'trigger_error', 'user_error', 'set_error_handler', 'restore_error_handler', 'get_declared_classes', 'get_loaded_extensions', - 'extension_loaded', 'get_extension_funcs', 'debug_backtrace', - 'constant', 'bin2hex', 'sleep', 'usleep', 'time', 'mktime', 'gmmktime', 'strftime', 'gmstrftime', 'strtotime', 'date', 'gmdate', 'getdate', 'localtime', 'checkdate', 'flush', 'wordwrap', 'htmlspecialchars', 'htmlentities', 'html_entity_decode', 'md5', 'md5_file', 'crc32', 'getimagesize', 'image_type_to_mime_type', 'phpinfo', 'phpversion', 'phpcredits', 'strnatcmp', 'strnatcasecmp', 'substr_count', 'strspn', 'strcspn', 'strtok', 'strtoupper', 'strtolower', 'strpos', 'strrpos', 'strrev', 'hebrev', 'hebrevc', 'nl2br', 'basename', 'dirname', 'pathinfo', 'stripslashes', 'stripcslashes', 'strstr', 'stristr', 'strrchr', 'str_shuffle', 'str_word_count', 'strcoll', 'substr', 'substr_replace', 'quotemeta', 'ucfirst', 'ucwords', 'strtr', 'addslashes', 'addcslashes', 'rtrim', 'str_replace', 'str_repeat', 'count_chars', 'chunk_split', 'trim', 'ltrim', 'strip_tags', 'similar_text', 'explode', 'implode', 'setlocale', 'localeconv', - 'parse_str', 'str_pad', 'chop', 'strchr', 'sprintf', 'printf', 'vprintf', 'vsprintf', 'sscanf', 'fscanf', 'parse_url', 'urlencode', 'urldecode', 'rawurlencode', 'rawurldecode', 'readlink', 'linkinfo', 'link', 'unlink', 'exec', 'system', 'escapeshellcmd', 'escapeshellarg', 'passthru', 'shell_exec', 'proc_open', 'proc_close', 'rand', 'srand', 'getrandmax', 'mt_rand', 'mt_srand', 'mt_getrandmax', 'base64_decode', 'base64_encode', 'abs', 'ceil', 'floor', 'round', 'is_finite', 'is_nan', 'is_infinite', 'bindec', 'hexdec', 'octdec', 'decbin', 'decoct', 'dechex', 'base_convert', 'number_format', 'fmod', 'ip2long', 'long2ip', 'getenv', 'putenv', 'getopt', 'microtime', 'gettimeofday', 'getrusage', 'uniqid', 'quoted_printable_decode', 'set_time_limit', 'get_cfg_var', 'magic_quotes_runtime', 'set_magic_quotes_runtime', 'get_magic_quotes_gpc', 'get_magic_quotes_runtime', - 'import_request_variables', 'error_log', 'serialize', 'unserialize', 'memory_get_usage', 'var_dump', 'var_export', 'debug_zval_dump', 'print_r','highlight_file', 'show_source', 'highlight_string', 'ini_get', 'ini_get_all', 'ini_set', 'ini_alter', 'ini_restore', 'get_include_path', 'set_include_path', 'restore_include_path', 'setcookie', 'header', 'headers_sent', 'connection_aborted', 'connection_status', 'ignore_user_abort', 'parse_ini_file', 'is_uploaded_file', 'move_uploaded_file', 'intval', 'floatval', 'doubleval', 'strval', 'gettype', 'settype', 'is_null', 'is_resource', 'is_bool', 'is_long', 'is_float', 'is_int', 'is_integer', 'is_double', 'is_real', 'is_numeric', 'is_string', 'is_array', 'is_object', 'is_scalar', - 'ereg', 'ereg_replace', 'eregi', 'eregi_replace', 'split', 'spliti', 'join', 'sql_regcase', 'dl', 'pclose', 'popen', 'readfile', 'rewind', 'rmdir', 'umask', 'fclose', 'feof', 'fgetc', 'fgets', 'fgetss', 'fread', 'fopen', 'fpassthru', 'ftruncate', 'fstat', 'fseek', 'ftell', 'fflush', 'fwrite', 'fputs', 'mkdir', 'rename', 'copy', 'tempnam', 'tmpfile', 'file', 'file_get_contents', 'stream_select', 'stream_context_create', 'stream_context_set_params', 'stream_context_set_option', 'stream_context_get_options', 'stream_filter_prepend', 'stream_filter_append', 'fgetcsv', 'flock', 'get_meta_tags', 'stream_set_write_buffer', 'set_file_buffer', 'set_socket_blocking', 'stream_set_blocking', 'socket_set_blocking', 'stream_get_meta_data', 'stream_register_wrapper', 'stream_wrapper_register', 'stream_set_timeout', 'socket_set_timeout', 'socket_get_status', 'realpath', 'fnmatch', 'fsockopen', 'pfsockopen', 'pack', 'unpack', 'get_browser', 'crypt', 'opendir', 'closedir', 'chdir', 'getcwd', 'rewinddir', 'readdir', 'dir', 'glob', 'fileatime', 'filectime', 'filegroup', 'fileinode', 'filemtime', 'fileowner', 'fileperms', 'filesize', 'filetype', 'file_exists', 'is_writable', 'is_writeable', 'is_readable', 'is_executable', 'is_file', 'is_dir', 'is_link', 'stat', 'lstat', 'chown', - 'touch', 'clearstatcache', 'mail', 'ob_start', 'ob_flush', 'ob_clean', 'ob_end_flush', 'ob_end_clean', 'ob_get_flush', 'ob_get_clean', 'ob_get_length', 'ob_get_level', 'ob_get_status', 'ob_get_contents', 'ob_implicit_flush', 'ob_list_handlers', 'ksort', 'krsort', 'natsort', 'natcasesort', 'asort', 'arsort', 'sort', 'rsort', 'usort', 'uasort', 'uksort', 'shuffle', 'array_walk', 'count', 'end', 'prev', 'next', 'reset', 'current', 'key', 'min', 'max', 'in_array', 'array_search', 'extract', 'compact', 'array_fill', 'range', 'array_multisort', 'array_push', 'array_pop', 'array_shift', 'array_unshift', 'array_splice', 'array_slice', 'array_merge', 'array_merge_recursive', 'array_keys', 'array_values', 'array_count_values', 'array_reverse', 'array_reduce', 'array_pad', 'array_flip', 'array_change_key_case', 'array_rand', 'array_unique', 'array_intersect', 'array_intersect_assoc', 'array_diff', 'array_diff_assoc', 'array_sum', 'array_filter', 'array_map', 'array_chunk', 'array_key_exists', 'pos', 'sizeof', 'key_exists', 'assert', 'assert_options', 'version_compare', 'ftok', 'str_rot13', 'aggregate', - 'session_name', 'session_module_name', 'session_save_path', 'session_id', 'session_regenerate_id', 'session_decode', 'session_register', 'session_unregister', 'session_is_registered', 'session_encode', - 'session_start', 'session_destroy', 'session_unset', 'session_set_save_handler', 'session_cache_limiter', 'session_cache_expire', 'session_set_cookie_params', 'session_get_cookie_params', 'session_write_close', 'preg_match', 'preg_match_all', 'preg_replace', 'preg_replace_callback', 'preg_split', 'preg_quote', 'preg_grep', 'overload', 'ctype_alnum', 'ctype_alpha', 'ctype_cntrl', 'ctype_digit', 'ctype_lower', 'ctype_graph', 'ctype_print', 'ctype_punct', 'ctype_space', 'ctype_upper', 'ctype_xdigit', 'virtual', 'apache_request_headers', 'apache_note', 'apache_lookup_uri', 'apache_child_terminate', 'apache_setenv', 'apache_response_headers', 'apache_get_version', 'getallheaders', 'mysql_connect', 'mysql_pconnect', 'mysql_close', 'mysql_select_db', 'mysql_create_db', 'mysql_drop_db', 'mysql_query', 'mysql_unbuffered_query', 'mysql_db_query', 'mysql_list_dbs', 'mysql_list_tables', 'mysql_list_fields', 'mysql_list_processes', 'mysql_error', 'mysql_errno', 'mysql_affected_rows', 'mysql_insert_id', 'mysql_result', 'mysql_num_rows', 'mysql_num_fields', 'mysql_fetch_row', 'mysql_fetch_array', 'mysql_fetch_assoc', 'mysql_fetch_object', 'mysql_data_seek', 'mysql_fetch_lengths', 'mysql_fetch_field', 'mysql_field_seek', 'mysql_free_result', 'mysql_field_name', 'mysql_field_table', 'mysql_field_len', 'mysql_field_type', 'mysql_field_flags', 'mysql_escape_string', 'mysql_real_escape_string', 'mysql_stat', - 'mysql_thread_id', 'mysql_client_encoding', 'mysql_get_client_info', 'mysql_get_host_info', 'mysql_get_proto_info', 'mysql_get_server_info', 'mysql_info', 'mysql', 'mysql_fieldname', 'mysql_fieldtable', 'mysql_fieldlen', 'mysql_fieldtype', 'mysql_fieldflags', 'mysql_selectdb', 'mysql_createdb', 'mysql_dropdb', 'mysql_freeresult', 'mysql_numfields', 'mysql_numrows', 'mysql_listdbs', 'mysql_listtables', 'mysql_listfields', 'mysql_db_name', 'mysql_dbname', 'mysql_tablename', 'mysql_table_name', 'pg_connect', 'pg_pconnect', 'pg_close', 'pg_connection_status', 'pg_connection_busy', 'pg_connection_reset', 'pg_host', 'pg_dbname', 'pg_port', 'pg_tty', 'pg_options', 'pg_ping', 'pg_query', 'pg_send_query', 'pg_cancel_query', 'pg_fetch_result', 'pg_fetch_row', 'pg_fetch_assoc', 'pg_fetch_array', 'pg_fetch_object', 'pg_fetch_all', 'pg_affected_rows', 'pg_get_result', 'pg_result_seek', 'pg_result_status', 'pg_free_result', 'pg_last_oid', 'pg_num_rows', 'pg_num_fields', 'pg_field_name', 'pg_field_num', 'pg_field_size', 'pg_field_type', 'pg_field_prtlen', 'pg_field_is_null', 'pg_get_notify', 'pg_get_pid', 'pg_result_error', 'pg_last_error', 'pg_last_notice', 'pg_put_line', 'pg_end_copy', 'pg_copy_to', 'pg_copy_from', - 'pg_trace', 'pg_untrace', 'pg_lo_create', 'pg_lo_unlink', 'pg_lo_open', 'pg_lo_close', 'pg_lo_read', 'pg_lo_write', 'pg_lo_read_all', 'pg_lo_import', 'pg_lo_export', 'pg_lo_seek', 'pg_lo_tell', 'pg_escape_string', 'pg_escape_bytea', 'pg_unescape_bytea', 'pg_client_encoding', 'pg_set_client_encoding', 'pg_meta_data', 'pg_convert', 'pg_insert', 'pg_update', 'pg_delete', 'pg_select', 'pg_exec', 'pg_getlastoid', 'pg_cmdtuples', 'pg_errormessage', 'pg_numrows', 'pg_numfields', 'pg_fieldname', 'pg_fieldsize', 'pg_fieldtype', 'pg_fieldnum', 'pg_fieldprtlen', 'pg_fieldisnull', 'pg_freeresult', 'pg_result', 'pg_loreadall', 'pg_locreate', 'pg_lounlink', 'pg_loopen', 'pg_loclose', 'pg_loread', 'pg_lowrite', 'pg_loimport', 'pg_loexport', - 'echo', 'print', 'global', 'static', 'exit', 'array', 'empty', 'eval', 'isset', 'unset', 'die' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<%', '<%=', '%>', '<?', '<?=', '?>' - ), - 0 => array( - '(', ')', '[', ']', '{', '}', - '!', '@', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #990000;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 3 => 'color: #0000cc; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - 'HARD' => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - ), - 'METHODS' => array( - 1 => 'color: #004000;', - 2 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.php.net/{FNAMEL}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '::' - ), - 'REGEXPS' => array( - //Variables - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*" - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<?php' => '?>' - ), - 1 => array( - '<?' => '?>' - ), - 2 => array( - '<%' => '%>' - ), - 3 => array( - '<script language="php">' => '</script>' - ), - 4 => "/(?P<start><\\?(?>php\b)?)(?:". - "(?>[^\"'?\\/<]+)|". - "\\?(?!>)|". - "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|". - "(?>\"(?>[^\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|". - "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|". - "\\/\\/(?>.*?$)|". - "\\/(?=[^*\\/])|". - "<(?!<<)|". - "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>". - ")*(?P<end>\\?>|\Z)/sm", - 5 => "/(?P<start><%)(?:". - "(?>[^\"'%\\/<]+)|". - "%(?!>)|". - "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|". - "(?>\"(?>[^\\\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|". - "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|". - "\\/\\/(?>.*?$)|". - "\\/(?=[^*\\/])|". - "<(?!<<)|". - "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>". - ")*(?P<end>%>)/sm" - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/php.php b/system/application/libraries/geshi/php.php deleted file mode 100644 index 9b0bc822d..000000000 --- a/system/application/libraries/geshi/php.php +++ /dev/null @@ -1,1114 +0,0 @@ -<?php -/************************************************************************************* - * php.php - * -------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/20 - * - * PHP language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/25 (1.0.3) - * - Added support for multiple object splitters - * - Fixed &new problem - * 2004/10/27 (1.0.2) - * - Added URL support - * - Added extra constants - * 2004/08/05 (1.0.1) - * - Added support for symbols - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2004/07/14) - * ------------------------- - * * Make sure the last few function I may have missed - * (like eval()) are included for highlighting - * * Split to several files - php4, php5 etc - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'PHP', - 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - //Heredoc and Nowdoc syntax - 3 => '/<<<\s*?(\'?)([a-zA-Z0-9]+?)\1[^\n]*?\\n.*\\n\\2(?![a-zA-Z0-9])/siU', - // phpdoc comments - 4 => '#/\*\*(?![\*\/]).*\*/#sU', - // Advanced # handling - 2 => "/#.*?(?:(?=\?\>)|^)/smi" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'ESCAPE_REGEXP' => array( - //Simple Single Char Escapes - 1 => "#\\\\[nfrtv\$\"\n\\\\]#i", - //Hexadecimal Char Specs - 2 => "#\\\\x[\da-fA-F]{1,2}#i", - //Octal Char Specs - 3 => "#\\\\[0-7]{1,3}#", - //String Parsing of Variable Names - 4 => "#\\$[a-z0-9_]+(?:\\[[a-z0-9_]+\\]|->[a-z0-9_]+)?|(?:\\{\\$|\\$\\{)[a-z0-9_]+(?:\\[('?)[a-z0-9_]*\\1\\]|->[a-z0-9_]+)*\\}#i", - //Experimental extension supporting cascaded {${$var}} syntax - 5 => "#\$[a-z0-9_]+(?:\[[a-z0-9_]+\]|->[a-z0-9_]+)?|(?:\{\$|\$\{)[a-z0-9_]+(?:\[('?)[a-z0-9_]*\\1\]|->[a-z0-9_]+)*\}|\{\$(?R)\}#i", - //Format String support in ""-Strings - 6 => "#%(?:%|(?:\d+\\\\\\\$)?\\+?(?:\x20|0|'.)?-?(?:\d+|\\*)?(?:\.\d+)?[bcdefFosuxX])#" - ), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("'", "\\"), - 'HARDCHAR' => "\\", - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'as','break','case','continue','default','do','else','elseif', - 'endfor','endforeach','endif','endswitch','endwhile','for', - 'foreach','if','include','include_once','require','require_once', - 'return','switch','throw','while', - - 'echo','print' - ), - 2 => array( - '&new','</script>','<?php','<script language', - 'class','const','declare','extends','function','global','interface', - 'namespace','new','private','protected','public','self','use','var' - ), - 3 => array( - 'abs','acos','acosh','addcslashes','addslashes','aggregate', - 'aggregate_methods','aggregate_methods_by_list', - 'aggregate_methods_by_regexp','aggregate_properties', - 'aggregate_properties_by_list','aggregate_properties_by_regexp', - 'aggregation_info','apache_child_terminate','apache_get_modules', - 'apache_get_version','apache_getenv','apache_lookup_uri', - 'apache_note','apache_request_headers','apache_response_headers', - 'apache_setenv','array','array_change_key_case','array_chunk', - 'array_combine','array_count_values','array_diff', - 'array_diff_assoc','array_diff_key','array_diff_uassoc', - 'array_diff_ukey','array_fill','array_fill_keys','array_filter', - 'array_flip','array_intersect','array_intersect_assoc', - 'array_intersect_key','array_intersect_uassoc', - 'array_intersect_ukey','array_key_exists','array_keys','array_map', - 'array_merge','array_merge_recursive','array_multisort','array_pad', - 'array_pop','array_product','array_push','array_rand', - 'array_reduce','array_reverse','array_search','array_shift', - 'array_slice','array_splice','array_sum','array_udiff', - 'array_udiff_assoc','array_udiff_uassoc','array_uintersect', - 'array_uintersect_assoc','array_uintersect_uassoc','array_unique', - 'array_unshift','array_values','array_walk','array_walk_recursive', - 'arsort','asin','asinh','asort','assert','assert_options','atan', - 'atan2','atanh','base_convert','base64_decode','base64_encode', - 'basename','bcadd','bccomp','bcdiv','bcmod','bcmul', - 'bcompiler_load','bcompiler_load_exe','bcompiler_parse_class', - 'bcompiler_read','bcompiler_write_class','bcompiler_write_constant', - 'bcompiler_write_exe_footer','bcompiler_write_file', - 'bcompiler_write_footer','bcompiler_write_function', - 'bcompiler_write_functions_from_file','bcompiler_write_header', - 'bcompiler_write_included_filename','bcpow','bcpowmod','bcscale', - 'bcsqrt','bcsub','bin2hex','bindec','bindtextdomain', - 'bind_textdomain_codeset','bitset_empty','bitset_equal', - 'bitset_excl','bitset_fill','bitset_from_array','bitset_from_hash', - 'bitset_from_string','bitset_in','bitset_incl', - 'bitset_intersection','bitset_invert','bitset_is_empty', - 'bitset_subset','bitset_to_array','bitset_to_hash', - 'bitset_to_string','bitset_union','blenc_encrypt','bzclose', - 'bzcompress','bzdecompress','bzerrno','bzerror','bzerrstr', - 'bzflush','bzopen','bzread','bzwrite','cal_days_in_month', - 'cal_from_jd','cal_info','cal_to_jd','call_user_func', - 'call_user_func_array','call_user_method','call_user_method_array', - 'ceil','chdir','checkdate','checkdnsrr','chgrp','chmod','chop', - 'chown','chr','chunk_split','class_exists','class_implements', - 'class_parents','classkit_aggregate_methods', - 'classkit_doc_comments','classkit_import','classkit_method_add', - 'classkit_method_copy','classkit_method_redefine', - 'classkit_method_remove','classkit_method_rename','clearstatcache', - 'closedir','closelog','com_create_guid','com_event_sink', - 'com_get_active_object','com_load_typelib','com_message_pump', - 'com_print_typeinfo','compact','confirm_phpdoc_compiled', - 'connection_aborted','connection_status','constant', - 'convert_cyr_string','convert_uudecode','convert_uuencode','copy', - 'cos','cosh','count','count_chars','cpdf_add_annotation', - 'cpdf_add_outline','cpdf_arc','cpdf_begin_text','cpdf_circle', - 'cpdf_clip','cpdf_close','cpdf_closepath', - 'cpdf_closepath_fill_stroke','cpdf_closepath_stroke', - 'cpdf_continue_text','cpdf_curveto','cpdf_end_text','cpdf_fill', - 'cpdf_fill_stroke','cpdf_finalize','cpdf_finalize_page', - 'cpdf_global_set_document_limits','cpdf_import_jpeg','cpdf_lineto', - 'cpdf_moveto','cpdf_newpath','cpdf_open','cpdf_output_buffer', - 'cpdf_page_init','cpdf_rect','cpdf_restore','cpdf_rlineto', - 'cpdf_rmoveto','cpdf_rotate','cpdf_rotate_text','cpdf_save', - 'cpdf_save_to_file','cpdf_scale','cpdf_set_action_url', - 'cpdf_set_char_spacing','cpdf_set_creator','cpdf_set_current_page', - 'cpdf_set_font','cpdf_set_font_directories', - 'cpdf_set_font_map_file','cpdf_set_horiz_scaling', - 'cpdf_set_keywords','cpdf_set_leading','cpdf_set_page_animation', - 'cpdf_set_subject','cpdf_set_text_matrix','cpdf_set_text_pos', - 'cpdf_set_text_rendering','cpdf_set_text_rise','cpdf_set_title', - 'cpdf_set_viewer_preferences','cpdf_set_word_spacing', - 'cpdf_setdash','cpdf_setflat','cpdf_setgray','cpdf_setgray_fill', - 'cpdf_setgray_stroke','cpdf_setlinecap','cpdf_setlinejoin', - 'cpdf_setlinewidth','cpdf_setmiterlimit','cpdf_setrgbcolor', - 'cpdf_setrgbcolor_fill','cpdf_setrgbcolor_stroke','cpdf_show', - 'cpdf_show_xy','cpdf_stringwidth','cpdf_stroke','cpdf_text', - 'cpdf_translate','crack_check','crack_closedict', - 'crack_getlastmessage','crack_opendict','crc32','create_function', - 'crypt','ctype_alnum','ctype_alpha','ctype_cntrl','ctype_digit', - 'ctype_graph','ctype_lower','ctype_print','ctype_punct', - 'ctype_space','ctype_upper','ctype_xdigit','curl_close', - 'curl_copy_handle','curl_errno','curl_error','curl_exec', - 'curl_getinfo','curl_init','curl_multi_add_handle', - 'curl_multi_close','curl_multi_exec','curl_multi_getcontent', - 'curl_multi_info_read','curl_multi_init','curl_multi_remove_handle', - 'curl_multi_select','curl_setopt','curl_setopt_array', - 'curl_version','current','cvsclient_connect','cvsclient_log', - 'cvsclient_login','cvsclient_retrieve','date','date_create', - 'date_date_set','date_default_timezone_get', - 'date_default_timezone_set','date_format','date_isodate_set', - 'date_modify','date_offset_get','date_parse','date_sun_info', - 'date_sunrise','date_sunset','date_time_set','date_timezone_get', - 'date_timezone_set','db_id_list','dba_close','dba_delete', - 'dba_exists','dba_fetch','dba_firstkey','dba_handlers','dba_insert', - 'dba_key_split','dba_list','dba_nextkey','dba_open','dba_optimize', - 'dba_popen','dba_replace','dba_sync','dbase_add_record', - 'dbase_close','dbase_create','dbase_delete_record', - 'dbase_get_header_info','dbase_get_record', - 'dbase_get_record_with_names','dbase_numfields','dbase_numrecords', - 'dbase_open','dbase_pack','dbase_replace_record', - 'dbg_get_all_contexts','dbg_get_all_module_names', - 'dbg_get_all_source_lines','dbg_get_context_name', - 'dbg_get_module_name','dbg_get_profiler_results', - 'dbg_get_source_context','dblist','dbmclose','dbmdelete', - 'dbmexists','dbmfetch','dbmfirstkey','dbminsert','dbmnextkey', - 'dbmopen','dbmreplace','dbx_close','dbx_compare','dbx_connect', - 'dbx_error','dbx_escape_string','dbx_fetch_row','dbx_query', - 'dbx_sort','dcgettext','dcngettext','deaggregate','debug_backtrace', - 'debug_zval_dump','debugbreak','decbin','dechex','decoct','define', - 'defined','define_syslog_variables','deg2rad','dgettext','die', - 'dio_close','dio_open','dio_read','dio_seek','dio_stat','dio_write', - 'dir','dirname','disk_free_space','disk_total_space', - 'diskfreespace','dl','dngettext','docblock_token_name', - 'docblock_tokenize','dom_import_simplexml','domxml_add_root', - 'domxml_attributes','domxml_children','domxml_doc_add_root', - 'domxml_doc_document_element','domxml_doc_get_element_by_id', - 'domxml_doc_get_elements_by_tagname','domxml_doc_get_root', - 'domxml_doc_set_root','domxml_doc_validate','domxml_doc_xinclude', - 'domxml_dump_mem','domxml_dump_mem_file','domxml_dump_node', - 'domxml_dumpmem','domxml_elem_get_attribute', - 'domxml_elem_set_attribute','domxml_get_attribute','domxml_getattr', - 'domxml_html_dump_mem','domxml_new_child','domxml_new_doc', - 'domxml_new_xmldoc','domxml_node','domxml_node_add_namespace', - 'domxml_node_attributes','domxml_node_children', - 'domxml_node_get_content','domxml_node_has_attributes', - 'domxml_node_new_child','domxml_node_set_content', - 'domxml_node_set_namespace','domxml_node_unlink_node', - 'domxml_open_file','domxml_open_mem','domxml_parser', - 'domxml_parser_add_chunk','domxml_parser_cdata_section', - 'domxml_parser_characters','domxml_parser_comment', - 'domxml_parser_end','domxml_parser_end_document', - 'domxml_parser_end_element','domxml_parser_entity_reference', - 'domxml_parser_get_document','domxml_parser_namespace_decl', - 'domxml_parser_processing_instruction', - 'domxml_parser_start_document','domxml_parser_start_element', - 'domxml_root','domxml_set_attribute','domxml_setattr', - 'domxml_substitute_entities_default','domxml_unlink_node', - 'domxml_version','domxml_xmltree','doubleval','each','easter_date', - 'easter_days','empty','end','ereg','ereg_replace','eregi', - 'eregi_replace','error_get_last','error_log','error_reporting', - 'escapeshellarg','escapeshellcmd','eval','event_deschedule', - 'event_dispatch','event_free','event_handle_signal', - 'event_have_events','event_init','event_new','event_pending', - 'event_priority_set','event_schedule','event_set','event_timeout', - 'exec','exif_imagetype','exif_read_data','exif_tagname', - 'exif_thumbnail','exit','exp','explode','expm1','extension_loaded', - 'extract','ezmlm_hash','fbird_add_user','fbird_affected_rows', - 'fbird_backup','fbird_blob_add','fbird_blob_cancel', - 'fbird_blob_close','fbird_blob_create','fbird_blob_echo', - 'fbird_blob_get','fbird_blob_import','fbird_blob_info', - 'fbird_blob_open','fbird_close','fbird_commit','fbird_commit_ret', - 'fbird_connect','fbird_db_info','fbird_delete_user','fbird_drop_db', - 'fbird_errcode','fbird_errmsg','fbird_execute','fbird_fetch_assoc', - 'fbird_fetch_object','fbird_fetch_row','fbird_field_info', - 'fbird_free_event_handler','fbird_free_query','fbird_free_result', - 'fbird_gen_id','fbird_maintain_db','fbird_modify_user', - 'fbird_name_result','fbird_num_fields','fbird_num_params', - 'fbird_param_info','fbird_pconnect','fbird_prepare','fbird_query', - 'fbird_restore','fbird_rollback','fbird_rollback_ret', - 'fbird_server_info','fbird_service_attach','fbird_service_detach', - 'fbird_set_event_handler','fbird_trans','fbird_wait_event','fclose', - 'fdf_add_doc_javascript','fdf_add_template','fdf_close', - 'fdf_create','fdf_enum_values','fdf_errno','fdf_error','fdf_get_ap', - 'fdf_get_attachment','fdf_get_encoding','fdf_get_file', - 'fdf_get_flags','fdf_get_opt','fdf_get_status','fdf_get_value', - 'fdf_get_version','fdf_header','fdf_next_field_name','fdf_open', - 'fdf_open_string','fdf_remove_item','fdf_save','fdf_save_string', - 'fdf_set_ap','fdf_set_encoding','fdf_set_file','fdf_set_flags', - 'fdf_set_javascript_action','fdf_set_on_import_javascript', - 'fdf_set_opt','fdf_set_status','fdf_set_submit_form_action', - 'fdf_set_target_frame','fdf_set_value','fdf_set_version','feof', - 'fflush','fgetc','fgetcsv','fgets','fgetss','file','file_exists', - 'file_get_contents','file_put_contents','fileatime','filectime', - 'filegroup','fileinode','filemtime','fileowner','fileperms', - 'filepro','filepro_fieldcount','filepro_fieldname', - 'filepro_fieldtype','filepro_fieldwidth','filepro_retrieve', - 'filepro_rowcount','filesize','filetype','filter_has_var', - 'filter_id','filter_input','filter_input_array','filter_list', - 'filter_var','filter_var_array','finfo_buffer','finfo_close', - 'finfo_file','finfo_open','finfo_set_flags','floatval','flock', - 'floor','flush','fmod','fnmatch','fopen','fpassthru','fprintf', - 'fputcsv','fputs','fread','frenchtojd','fribidi_charset_info', - 'fribidi_get_charsets','fribidi_log2vis','fscanf','fseek', - 'fsockopen','fstat','ftell','ftok','ftp_alloc','ftp_cdup', - 'ftp_chdir','ftp_chmod','ftp_close','ftp_connect','ftp_delete', - 'ftp_exec','ftp_fget','ftp_fput','ftp_get','ftp_get_option', - 'ftp_login','ftp_mdtm','ftp_mkdir','ftp_nb_continue','ftp_nb_fget', - 'ftp_nb_fput','ftp_nb_get','ftp_nb_put','ftp_nlist','ftp_pasv', - 'ftp_put','ftp_pwd','ftp_quit','ftp_raw','ftp_rawlist','ftp_rename', - 'ftp_rmdir','ftp_set_option','ftp_site','ftp_size', - 'ftp_ssl_connect','ftp_systype','ftruncate','function_exists', - 'func_get_arg','func_get_args','func_num_args','fwrite','gd_info', - 'getallheaders','getcwd','getdate','getenv','gethostbyaddr', - 'gethostbyname','gethostbynamel','getimagesize','getlastmod', - 'getmxrr','getmygid','getmyinode','getmypid','getmyuid','getopt', - 'getprotobyname','getprotobynumber','getrandmax','getrusage', - 'getservbyname','getservbyport','gettext','gettimeofday','gettype', - 'get_browser','get_cfg_var','get_class','get_class_methods', - 'get_class_vars','get_current_user','get_declared_classes', - 'get_defined_constants','get_defined_functions','get_defined_vars', - 'get_extension_funcs','get_headers','get_html_translation_table', - 'get_included_files','get_include_path','get_loaded_extensions', - 'get_magic_quotes_gpc','get_magic_quotes_runtime','get_meta_tags', - 'get_object_vars','get_parent_class','get_required_files', - 'get_resource_type','glob','gmdate','gmmktime','gmp_abs','gmp_add', - 'gmp_and','gmp_clrbit','gmp_cmp','gmp_com','gmp_div','gmp_div_q', - 'gmp_div_qr','gmp_div_r','gmp_divexact','gmp_fact','gmp_gcd', - 'gmp_gcdext','gmp_hamdist','gmp_init','gmp_intval','gmp_invert', - 'gmp_jacobi','gmp_legendre','gmp_mod','gmp_mul','gmp_neg', - 'gmp_nextprime','gmp_or','gmp_perfect_square','gmp_popcount', - 'gmp_pow','gmp_powm','gmp_prob_prime','gmp_random','gmp_scan0', - 'gmp_scan1','gmp_setbit','gmp_sign','gmp_sqrt','gmp_sqrtrem', - 'gmp_strval','gmp_sub','gmp_xor','gmstrftime','gopher_parsedir', - 'gregoriantojd','gzclose','gzcompress','gzdeflate','gzencode', - 'gzeof','gzfile','gzgetc','gzgets','gzgetss','gzinflate','gzopen', - 'gzpassthru','gzputs','gzread','gzrewind','gzseek','gztell', - 'gzuncompress','gzwrite','hash','hash_algos','hash_file', - 'hash_final','hash_hmac','hash_hmac_file','hash_init','hash_update', - 'hash_update_file','hash_update_stream','header','headers_list', - 'headers_sent','hebrev','hebrevc','hexdec','highlight_file', - 'highlight_string','html_doc','html_doc_file','html_entity_decode', - 'htmlentities','htmlspecialchars','htmlspecialchars_decode', - 'http_build_cookie','http_build_query','http_build_str', - 'http_build_url','http_cache_etag','http_cache_last_modified', - 'http_chunked_decode','http_date','http_deflate','http_get', - 'http_get_request_body','http_get_request_body_stream', - 'http_get_request_headers','http_head','http_inflate', - 'http_match_etag','http_match_modified','http_match_request_header', - 'http_negotiate_charset','http_negotiate_content_type', - 'http_negotiate_language','http_parse_cookie','http_parse_headers', - 'http_parse_message','http_parse_params', - 'http_persistent_handles_clean','http_persistent_handles_count', - 'http_persistent_handles_ident','http_post_data','http_post_fields', - 'http_put_data','http_put_file','http_put_stream','http_redirect', - 'http_request','http_request_body_encode', - 'http_request_method_exists','http_request_method_name', - 'http_request_method_register','http_request_method_unregister', - 'http_send_content_disposition','http_send_content_type', - 'http_send_data','http_send_file','http_send_last_modified', - 'http_send_status','http_send_stream','http_support', - 'http_throttle','hypot','i18n_convert','i18n_discover_encoding', - 'i18n_http_input','i18n_http_output','i18n_internal_encoding', - 'i18n_ja_jp_hantozen','i18n_mime_header_decode', - 'i18n_mime_header_encode','ibase_add_user','ibase_affected_rows', - 'ibase_backup','ibase_blob_add','ibase_blob_cancel', - 'ibase_blob_close','ibase_blob_create','ibase_blob_echo', - 'ibase_blob_get','ibase_blob_import','ibase_blob_info', - 'ibase_blob_open','ibase_close','ibase_commit','ibase_commit_ret', - 'ibase_connect','ibase_db_info','ibase_delete_user','ibase_drop_db', - 'ibase_errcode','ibase_errmsg','ibase_execute','ibase_fetch_assoc', - 'ibase_fetch_object','ibase_fetch_row','ibase_field_info', - 'ibase_free_event_handler','ibase_free_query','ibase_free_result', - 'ibase_gen_id','ibase_maintain_db','ibase_modify_user', - 'ibase_name_result','ibase_num_fields','ibase_num_params', - 'ibase_param_info','ibase_pconnect','ibase_prepare','ibase_query', - 'ibase_restore','ibase_rollback','ibase_rollback_ret', - 'ibase_server_info','ibase_service_attach','ibase_service_detach', - 'ibase_set_event_handler','ibase_trans','ibase_wait_event','iconv', - 'iconv_get_encoding','iconv_mime_decode', - 'iconv_mime_decode_headers','iconv_mime_encode', - 'iconv_set_encoding','iconv_strlen','iconv_strpos','iconv_strrpos', - 'iconv_substr','id3_get_frame_long_name','id3_get_frame_short_name', - 'id3_get_genre_id','id3_get_genre_list','id3_get_genre_name', - 'id3_get_tag','id3_get_version','id3_remove_tag','id3_set_tag', - 'idate','ignore_user_abort','image_type_to_extension', - 'image_type_to_mime_type','image2wbmp','imagealphablending', - 'imageantialias','imagearc','imagechar','imagecharup', - 'imagecolorallocate','imagecolorallocatealpha','imagecolorat', - 'imagecolorclosest','imagecolorclosestalpha','imagecolordeallocate', - 'imagecolorexact','imagecolorexactalpha','imagecolormatch', - 'imagecolorresolve','imagecolorresolvealpha','imagecolorset', - 'imagecolorsforindex','imagecolorstotal','imagecolortransparent', - 'imageconvolution','imagecopy','imagecopymerge', - 'imagecopymergegray','imagecopyresampled','imagecopyresized', - 'imagecreate','imagecreatefromgd','imagecreatefromgd2', - 'imagecreatefromgd2part','imagecreatefromgif','imagecreatefromjpeg', - 'imagecreatefrompng','imagecreatefromstring','imagecreatefromwbmp', - 'imagecreatefromxbm','imagecreatetruecolor','imagedashedline', - 'imagedestroy','imageellipse','imagefill','imagefilledarc', - 'imagefilledellipse','imagefilledpolygon','imagefilledrectangle', - 'imagefilltoborder','imagefilter','imagefontheight', - 'imagefontwidth','imageftbbox','imagefttext','imagegammacorrect', - 'imagegd','imagegd2','imagegif','imagegrabscreen','imagegrabwindow', - 'imageinterlace','imageistruecolor','imagejpeg','imagelayereffect', - 'imageline','imageloadfont','imagepalettecopy','imagepng', - 'imagepolygon','imagepsbbox','imagepsencodefont', - 'imagepsextendfont','imagepsfreefont','imagepsloadfont', - 'imagepsslantfont','imagepstext','imagerectangle','imagerotate', - 'imagesavealpha','imagesetbrush','imagesetpixel','imagesetstyle', - 'imagesetthickness','imagesettile','imagestring','imagestringup', - 'imagesx','imagesy','imagetruecolortopalette','imagettfbbox', - 'imagettftext','imagetypes','imagewbmp','imagexbm','imap_8bit', - 'imap_alerts','imap_append','imap_base64','imap_binary','imap_body', - 'imap_bodystruct','imap_check','imap_clearflag_full','imap_close', - 'imap_create','imap_createmailbox','imap_delete', - 'imap_deletemailbox','imap_errors','imap_expunge', - 'imap_fetch_overview','imap_fetchbody','imap_fetchheader', - 'imap_fetchstructure','imap_fetchtext','imap_get_quota', - 'imap_get_quotaroot','imap_getacl','imap_getmailboxes', - 'imap_getsubscribed','imap_header','imap_headerinfo','imap_headers', - 'imap_last_error','imap_list','imap_listmailbox', - 'imap_listsubscribed','imap_lsub','imap_mail','imap_mail_compose', - 'imap_mail_copy','imap_mail_move','imap_mailboxmsginfo', - 'imap_mime_header_decode','imap_msgno','imap_num_msg', - 'imap_num_recent','imap_open','imap_ping','imap_qprint', - 'imap_rename','imap_renamemailbox','imap_reopen', - 'imap_rfc822_parse_adrlist','imap_rfc822_parse_headers', - 'imap_rfc822_write_address','imap_savebody','imap_scan', - 'imap_scanmailbox','imap_search','imap_set_quota','imap_setacl', - 'imap_setflag_full','imap_sort','imap_status','imap_subscribe', - 'imap_thread','imap_timeout','imap_uid','imap_undelete', - 'imap_unsubscribe','imap_utf7_decode','imap_utf7_encode', - 'imap_utf8','implode','import_request_variables','in_array', - 'ini_alter','ini_get','ini_get_all','ini_restore','ini_set', - 'intval','ip2long','iptcembed','iptcparse','isset','is_a', - 'is_array','is_bool','is_callable','is_dir','is_double', - 'is_executable','is_file','is_finite','is_float','is_infinite', - 'is_int','is_integer','is_link','is_long','is_nan','is_null', - 'is_numeric','is_object','is_readable','is_real','is_resource', - 'is_scalar','is_soap_fault','is_string','is_subclass_of', - 'is_uploaded_file','is_writable','is_writeable','iterator_apply', - 'iterator_count','iterator_to_array','java_last_exception_clear', - 'java_last_exception_get','jddayofweek','jdmonthname','jdtofrench', - 'jdtogregorian','jdtojewish','jdtojulian','jdtounix','jewishtojd', - 'join','jpeg2wbmp','json_decode','json_encode','juliantojd','key', - 'key_exists','krsort','ksort','lcg_value','ldap_add','ldap_bind', - 'ldap_close','ldap_compare','ldap_connect','ldap_count_entries', - 'ldap_delete','ldap_dn2ufn','ldap_err2str','ldap_errno', - 'ldap_error','ldap_explode_dn','ldap_first_attribute', - 'ldap_first_entry','ldap_first_reference','ldap_free_result', - 'ldap_get_attributes','ldap_get_dn','ldap_get_entries', - 'ldap_get_option','ldap_get_values','ldap_get_values_len', - 'ldap_list','ldap_mod_add','ldap_mod_del','ldap_mod_replace', - 'ldap_modify','ldap_next_attribute','ldap_next_entry', - 'ldap_next_reference','ldap_parse_reference','ldap_parse_result', - 'ldap_read','ldap_rename','ldap_search','ldap_set_option', - 'ldap_sort','ldap_start_tls','ldap_unbind','levenshtein', - 'libxml_clear_errors','libxml_get_errors','libxml_get_last_error', - 'libxml_set_streams_context','libxml_use_internal_errors','link', - 'linkinfo','list','localeconv','localtime','log','log1p','log10', - 'long2ip','lstat','ltrim','lzf_compress','lzf_decompress', - 'lzf_optimized_for','magic_quotes_runtime','mail','max','mbereg', - 'mberegi','mberegi_replace','mbereg_match','mbereg_replace', - 'mbereg_search','mbereg_search_getpos','mbereg_search_getregs', - 'mbereg_search_init','mbereg_search_pos','mbereg_search_regs', - 'mbereg_search_setpos','mbregex_encoding','mbsplit','mbstrcut', - 'mbstrlen','mbstrpos','mbstrrpos','mbsubstr','mb_check_encoding', - 'mb_convert_case','mb_convert_encoding','mb_convert_kana', - 'mb_convert_variables','mb_decode_mimeheader', - 'mb_decode_numericentity','mb_detect_encoding','mb_detect_order', - 'mb_encode_mimeheader','mb_encode_numericentity','mb_ereg', - 'mb_eregi','mb_eregi_replace','mb_ereg_match','mb_ereg_replace', - 'mb_ereg_search','mb_ereg_search_getpos','mb_ereg_search_getregs', - 'mb_ereg_search_init','mb_ereg_search_pos','mb_ereg_search_regs', - 'mb_ereg_search_setpos','mb_get_info','mb_http_input', - 'mb_http_output','mb_internal_encoding','mb_language', - 'mb_list_encodings','mb_output_handler','mb_parse_str', - 'mb_preferred_mime_name','mb_regex_encoding','mb_regex_set_options', - 'mb_send_mail','mb_split','mb_strcut','mb_strimwidth','mb_stripos', - 'mb_stristr','mb_strlen','mb_strpos','mb_strrchr','mb_strrichr', - 'mb_strripos','mb_strrpos','mb_strstr','mb_strtolower', - 'mb_strtoupper','mb_strwidth','mb_substitute_character','mb_substr', - 'mb_substr_count','mcrypt_cbc','mcrypt_cfb','mcrypt_create_iv', - 'mcrypt_decrypt','mcrypt_ecb','mcrypt_enc_get_algorithms_name', - 'mcrypt_enc_get_block_size','mcrypt_enc_get_iv_size', - 'mcrypt_enc_get_key_size','mcrypt_enc_get_modes_name', - 'mcrypt_enc_get_supported_key_sizes', - 'mcrypt_enc_is_block_algorithm', - 'mcrypt_enc_is_block_algorithm_mode','mcrypt_enc_is_block_mode', - 'mcrypt_enc_self_test','mcrypt_encrypt','mcrypt_generic', - 'mcrypt_generic_deinit','mcrypt_generic_end','mcrypt_generic_init', - 'mcrypt_get_block_size','mcrypt_get_cipher_name', - 'mcrypt_get_iv_size','mcrypt_get_key_size','mcrypt_list_algorithms', - 'mcrypt_list_modes','mcrypt_module_close', - 'mcrypt_module_get_algo_block_size', - 'mcrypt_module_get_algo_key_size', - 'mcrypt_module_get_supported_key_sizes', - 'mcrypt_module_is_block_algorithm', - 'mcrypt_module_is_block_algorithm_mode', - 'mcrypt_module_is_block_mode','mcrypt_module_open', - 'mcrypt_module_self_test','mcrypt_ofb','md5','md5_file', - 'mdecrypt_generic','memcache_add','memcache_add_server', - 'memcache_close','memcache_connect','memcache_debug', - 'memcache_decrement','memcache_delete','memcache_flush', - 'memcache_get','memcache_get_extended_stats', - 'memcache_get_server_status','memcache_get_stats', - 'memcache_get_version','memcache_increment','memcache_pconnect', - 'memcache_replace','memcache_set','memcache_set_compress_threshold', - 'memcache_set_server_params','memory_get_peak_usage', - 'memory_get_usage','metaphone','mhash','mhash_count', - 'mhash_get_block_size','mhash_get_hash_name','mhash_keygen_s2k', - 'method_exists','microtime','mime_content_type','min', - 'ming_keypress','ming_setcubicthreshold','ming_setscale', - 'ming_useconstants','ming_useswfversion','mkdir','mktime', - 'money_format','move_uploaded_file','msql','msql_affected_rows', - 'msql_close','msql_connect','msql_create_db','msql_createdb', - 'msql_data_seek','msql_db_query','msql_dbname','msql_drop_db', - 'msql_dropdb','msql_error','msql_fetch_array','msql_fetch_field', - 'msql_fetch_object','msql_fetch_row','msql_field_flags', - 'msql_field_len','msql_field_name','msql_field_seek', - 'msql_field_table','msql_field_type','msql_fieldflags', - 'msql_fieldlen','msql_fieldname','msql_fieldtable','msql_fieldtype', - 'msql_free_result','msql_freeresult','msql_list_dbs', - 'msql_list_fields','msql_list_tables','msql_listdbs', - 'msql_listfields','msql_listtables','msql_num_fields', - 'msql_num_rows','msql_numfields','msql_numrows','msql_pconnect', - 'msql_query','msql_regcase','msql_result','msql_select_db', - 'msql_selectdb','msql_tablename','mssql_bind','mssql_close', - 'mssql_connect','mssql_data_seek','mssql_execute', - 'mssql_fetch_array','mssql_fetch_assoc','mssql_fetch_batch', - 'mssql_fetch_field','mssql_fetch_object','mssql_fetch_row', - 'mssql_field_length','mssql_field_name','mssql_field_seek', - 'mssql_field_type','mssql_free_result','mssql_free_statement', - 'mssql_get_last_message','mssql_guid_string','mssql_init', - 'mssql_min_error_severity','mssql_min_message_severity', - 'mssql_next_result','mssql_num_fields','mssql_num_rows', - 'mssql_pconnect','mssql_query','mssql_result','mssql_rows_affected', - 'mssql_select_db','mt_getrandmax','mt_rand','mt_srand','mysql', - 'mysql_affected_rows','mysql_client_encoding','mysql_close', - 'mysql_connect','mysql_createdb','mysql_create_db', - 'mysql_data_seek','mysql_dbname','mysql_db_name','mysql_db_query', - 'mysql_dropdb','mysql_drop_db','mysql_errno','mysql_error', - 'mysql_escape_string','mysql_fetch_array','mysql_fetch_assoc', - 'mysql_fetch_field','mysql_fetch_lengths','mysql_fetch_object', - 'mysql_fetch_row','mysql_fieldflags','mysql_fieldlen', - 'mysql_fieldname','mysql_fieldtable','mysql_fieldtype', - 'mysql_field_flags','mysql_field_len','mysql_field_name', - 'mysql_field_seek','mysql_field_table','mysql_field_type', - 'mysql_freeresult','mysql_free_result','mysql_get_client_info', - 'mysql_get_host_info','mysql_get_proto_info', - 'mysql_get_server_info','mysql_info','mysql_insert_id', - 'mysql_listdbs','mysql_listfields','mysql_listtables', - 'mysql_list_dbs','mysql_list_fields','mysql_list_processes', - 'mysql_list_tables','mysql_numfields','mysql_numrows', - 'mysql_num_fields','mysql_num_rows','mysql_pconnect','mysql_ping', - 'mysql_query','mysql_real_escape_string','mysql_result', - 'mysql_selectdb','mysql_select_db','mysql_set_charset','mysql_stat', - 'mysql_tablename','mysql_table_name','mysql_thread_id', - 'mysql_unbuffered_query','mysqli_affected_rows','mysqli_autocommit', - 'mysqli_bind_param','mysqli_bind_result','mysqli_change_user', - 'mysqli_character_set_name','mysqli_client_encoding','mysqli_close', - 'mysqli_commit','mysqli_connect','mysqli_connect_errno', - 'mysqli_connect_error','mysqli_data_seek','mysqli_debug', - 'mysqli_disable_reads_from_master','mysqli_disable_rpl_parse', - 'mysqli_dump_debug_info','mysqli_embedded_server_end', - 'mysqli_embedded_server_start','mysqli_enable_reads_from_master', - 'mysqli_enable_rpl_parse','mysqli_errno','mysqli_error', - 'mysqli_escape_string','mysqli_execute','mysqli_fetch', - 'mysqli_fetch_array','mysqli_fetch_assoc','mysqli_fetch_field', - 'mysqli_fetch_field_direct','mysqli_fetch_fields', - 'mysqli_fetch_lengths','mysqli_fetch_object','mysqli_fetch_row', - 'mysqli_field_count','mysqli_field_seek','mysqli_field_tell', - 'mysqli_free_result','mysqli_get_charset','mysqli_get_client_info', - 'mysqli_get_client_version','mysqli_get_host_info', - 'mysqli_get_metadata','mysqli_get_proto_info', - 'mysqli_get_server_info','mysqli_get_server_version', - 'mysqli_get_warnings','mysqli_info','mysqli_init', - 'mysqli_insert_id','mysqli_kill','mysqli_master_query', - 'mysqli_more_results','mysqli_multi_query','mysqli_next_result', - 'mysqli_num_fields','mysqli_num_rows','mysqli_options', - 'mysqli_param_count','mysqli_ping','mysqli_prepare','mysqli_query', - 'mysqli_real_connect','mysqli_real_escape_string', - 'mysqli_real_query','mysqli_report','mysqli_rollback', - 'mysqli_rpl_parse_enabled','mysqli_rpl_probe', - 'mysqli_rpl_query_type','mysqli_select_db','mysqli_send_long_data', - 'mysqli_send_query','mysqli_set_charset', - 'mysqli_set_local_infile_default','mysqli_set_local_infile_handler', - 'mysqli_set_opt','mysqli_slave_query','mysqli_sqlstate', - 'mysqli_ssl_set','mysqli_stat','mysqli_stmt_affected_rows', - 'mysqli_stmt_attr_get','mysqli_stmt_attr_set', - 'mysqli_stmt_bind_param','mysqli_stmt_bind_result', - 'mysqli_stmt_close','mysqli_stmt_data_seek','mysqli_stmt_errno', - 'mysqli_stmt_error','mysqli_stmt_execute','mysqli_stmt_fetch', - 'mysqli_stmt_field_count','mysqli_stmt_free_result', - 'mysqli_stmt_get_warnings','mysqli_stmt_init', - 'mysqli_stmt_insert_id','mysqli_stmt_num_rows', - 'mysqli_stmt_param_count','mysqli_stmt_prepare','mysqli_stmt_reset', - 'mysqli_stmt_result_metadata','mysqli_stmt_send_long_data', - 'mysqli_stmt_sqlstate','mysqli_stmt_store_result', - 'mysqli_store_result','mysqli_thread_id','mysqli_thread_safe', - 'mysqli_use_result','mysqli_warning_count','natcasesort','natsort', - 'new_xmldoc','next','ngettext','nl2br','nl_langinfo', - 'ntuser_getdomaincontroller','ntuser_getusergroups', - 'ntuser_getuserinfo','ntuser_getuserlist','number_format', - 'ob_clean','ob_deflatehandler','ob_end_clean','ob_end_flush', - 'ob_etaghandler','ob_flush','ob_get_clean','ob_get_contents', - 'ob_get_flush','ob_get_length','ob_get_level','ob_get_status', - 'ob_gzhandler','ob_iconv_handler','ob_implicit_flush', - 'ob_inflatehandler','ob_list_handlers','ob_start','ob_tidyhandler', - 'octdec','odbc_autocommit','odbc_binmode','odbc_close', - 'odbc_close_all','odbc_columnprivileges','odbc_columns', - 'odbc_commit','odbc_connect','odbc_cursor','odbc_data_source', - 'odbc_do','odbc_error','odbc_errormsg','odbc_exec','odbc_execute', - 'odbc_fetch_array','odbc_fetch_into','odbc_fetch_object', - 'odbc_fetch_row','odbc_field_len','odbc_field_name', - 'odbc_field_num','odbc_field_precision','odbc_field_scale', - 'odbc_field_type','odbc_foreignkeys','odbc_free_result', - 'odbc_gettypeinfo','odbc_longreadlen','odbc_next_result', - 'odbc_num_fields','odbc_num_rows','odbc_pconnect','odbc_prepare', - 'odbc_primarykeys','odbc_procedurecolumns','odbc_procedures', - 'odbc_result','odbc_result_all','odbc_rollback','odbc_setoption', - 'odbc_specialcolumns','odbc_statistics','odbc_tableprivileges', - 'odbc_tables','opendir','openlog','openssl_csr_export', - 'openssl_csr_export_to_file','openssl_csr_get_public_key', - 'openssl_csr_get_subject','openssl_csr_new','openssl_csr_sign', - 'openssl_error_string','openssl_free_key','openssl_get_privatekey', - 'openssl_get_publickey','openssl_open','openssl_pkcs12_export', - 'openssl_pkcs12_export_to_file','openssl_pkcs12_read', - 'openssl_pkcs7_decrypt','openssl_pkcs7_encrypt', - 'openssl_pkcs7_sign','openssl_pkcs7_verify','openssl_pkey_export', - 'openssl_pkey_export_to_file','openssl_pkey_free', - 'openssl_pkey_get_details','openssl_pkey_get_private', - 'openssl_pkey_get_public','openssl_pkey_new', - 'openssl_private_decrypt','openssl_private_encrypt', - 'openssl_public_decrypt','openssl_public_encrypt','openssl_seal', - 'openssl_sign','openssl_verify','openssl_x509_checkpurpose', - 'openssl_x509_check_private_key','openssl_x509_export', - 'openssl_x509_export_to_file','openssl_x509_free', - 'openssl_x509_parse','openssl_x509_read','ord', - 'output_add_rewrite_var','output_reset_rewrite_vars','overload', - 'outputdebugstring','pack','parse_ini_file','parse_str','parse_url', - 'parsekit_compile_file','parsekit_compile_string', - 'parsekit_func_arginfo','parsekit_opcode_flags', - 'parsekit_opcode_name','passthru','pathinfo','pclose', - 'pdf_add_bookmark','pdf_add_launchlink','pdf_add_locallink', - 'pdf_add_nameddest','pdf_add_note','pdf_add_pdflink', - 'pdf_add_thumbnail','pdf_add_weblink','pdf_arc','pdf_arcn', - 'pdf_attach_file','pdf_begin_font','pdf_begin_glyph', - 'pdf_begin_page','pdf_begin_pattern','pdf_begin_template', - 'pdf_circle','pdf_clip','pdf_close','pdf_close_image', - 'pdf_close_pdi','pdf_close_pdi_page','pdf_closepath', - 'pdf_closepath_fill_stroke','pdf_closepath_stroke','pdf_concat', - 'pdf_continue_text','pdf_create_gstate','pdf_create_pvf', - 'pdf_curveto','pdf_delete','pdf_delete_pvf','pdf_encoding_set_char', - 'pdf_end_font','pdf_end_glyph','pdf_end_page','pdf_end_pattern', - 'pdf_end_template','pdf_endpath','pdf_fill','pdf_fill_imageblock', - 'pdf_fill_pdfblock','pdf_fill_stroke','pdf_fill_textblock', - 'pdf_findfont','pdf_fit_image','pdf_fit_pdi_page', - 'pdf_fit_textline','pdf_get_apiname','pdf_get_buffer', - 'pdf_get_errmsg','pdf_get_errnum','pdf_get_parameter', - 'pdf_get_pdi_parameter','pdf_get_pdi_value','pdf_get_value', - 'pdf_initgraphics','pdf_lineto','pdf_load_font', - 'pdf_load_iccprofile','pdf_load_image','pdf_makespotcolor', - 'pdf_moveto','pdf_new','pdf_open_ccitt','pdf_open_file', - 'pdf_open_image','pdf_open_image_file','pdf_open_pdi', - 'pdf_open_pdi_page','pdf_place_image','pdf_place_pdi_page', - 'pdf_process_pdi','pdf_rect','pdf_restore','pdf_rotate','pdf_save', - 'pdf_scale','pdf_set_border_color','pdf_set_border_dash', - 'pdf_set_border_style','pdf_set_gstate','pdf_set_info', - 'pdf_set_parameter','pdf_set_text_pos','pdf_set_value', - 'pdf_setcolor','pdf_setdash','pdf_setdashpattern','pdf_setflat', - 'pdf_setfont','pdf_setlinecap','pdf_setlinejoin','pdf_setlinewidth', - 'pdf_setmatrix','pdf_setmiterlimit','pdf_setpolydash','pdf_shading', - 'pdf_shading_pattern','pdf_shfill','pdf_show','pdf_show_boxed', - 'pdf_show_xy','pdf_skew','pdf_stringwidth','pdf_stroke', - 'pdf_translate','pdo_drivers','pfsockopen','pg_affected_rows', - 'pg_cancel_query','pg_clientencoding','pg_client_encoding', - 'pg_close','pg_cmdtuples','pg_connect','pg_connection_busy', - 'pg_connection_reset','pg_connection_status','pg_convert', - 'pg_copy_from','pg_copy_to','pg_dbname','pg_delete','pg_end_copy', - 'pg_errormessage','pg_escape_bytea','pg_escape_string','pg_exec', - 'pg_execute','pg_fetch_all','pg_fetch_all_columns','pg_fetch_array', - 'pg_fetch_assoc','pg_fetch_object','pg_fetch_result','pg_fetch_row', - 'pg_fieldisnull','pg_fieldname','pg_fieldnum','pg_fieldprtlen', - 'pg_fieldsize','pg_fieldtype','pg_field_is_null','pg_field_name', - 'pg_field_num','pg_field_prtlen','pg_field_size','pg_field_table', - 'pg_field_type','pg_field_type_oid','pg_free_result', - 'pg_freeresult','pg_get_notify','pg_get_pid','pg_get_result', - 'pg_getlastoid','pg_host','pg_insert','pg_last_error', - 'pg_last_notice','pg_last_oid','pg_loclose','pg_locreate', - 'pg_loexport','pg_loimport','pg_loopen','pg_loread','pg_loreadall', - 'pg_lounlink','pg_lowrite','pg_lo_close','pg_lo_create', - 'pg_lo_export','pg_lo_import','pg_lo_open','pg_lo_read', - 'pg_lo_read_all','pg_lo_seek','pg_lo_tell','pg_lo_unlink', - 'pg_lo_write','pg_meta_data','pg_numfields','pg_numrows', - 'pg_num_fields','pg_num_rows','pg_options','pg_parameter_status', - 'pg_pconnect','pg_ping','pg_port','pg_prepare','pg_put_line', - 'pg_query','pg_query_params','pg_result','pg_result_error', - 'pg_result_error_field','pg_result_seek','pg_result_status', - 'pg_select','pg_send_execute','pg_send_prepare','pg_send_query', - 'pg_send_query_params','pg_set_client_encoding', - 'pg_set_error_verbosity','pg_setclientencoding','pg_trace', - 'pg_transaction_status','pg_tty','pg_unescape_bytea','pg_untrace', - 'pg_update','pg_version','php_egg_logo_guid','php_ini_loaded_file', - 'php_ini_scanned_files','php_logo_guid','php_real_logo_guid', - 'php_sapi_name','php_strip_whitespace','php_uname','phpcredits', - 'phpdoc_xml_from_string','phpinfo','phpversion','pi','png2wbmp', - 'pop3_close','pop3_delete_message','pop3_get_account_size', - 'pop3_get_message','pop3_get_message_count', - 'pop3_get_message_header','pop3_get_message_ids', - 'pop3_get_message_size','pop3_get_message_sizes','pop3_open', - 'pop3_undelete','popen','pos','posix_ctermid','posix_errno', - 'posix_getcwd','posix_getegid','posix_geteuid','posix_getgid', - 'posix_getgrgid','posix_getgrnam','posix_getgroups', - 'posix_getlogin','posix_getpgid','posix_getpgrp','posix_getpid', - 'posix_getppid','posix_getpwnam','posix_getpwuid','posix_getrlimit', - 'posix_getsid','posix_getuid','posix_get_last_error','posix_isatty', - 'posix_kill','posix_mkfifo','posix_setegid','posix_seteuid', - 'posix_setgid','posix_setpgid','posix_setsid','posix_setuid', - 'posix_strerror','posix_times','posix_ttyname','posix_uname','pow', - 'preg_grep','preg_last_error','preg_match','preg_match_all', - 'preg_quote','preg_replace','preg_replace_callback','preg_split', - 'prev','print_r','printf','proc_close','proc_get_status', - 'proc_open','proc_terminate','putenv','quoted_printable_decode', - 'quotemeta','rad2deg','radius_acct_open','radius_add_server', - 'radius_auth_open','radius_close','radius_config', - 'radius_create_request','radius_cvt_addr','radius_cvt_int', - 'radius_cvt_string','radius_demangle','radius_demangle_mppe_key', - 'radius_get_attr','radius_get_vendor_attr','radius_put_addr', - 'radius_put_attr','radius_put_int','radius_put_string', - 'radius_put_vendor_addr','radius_put_vendor_attr', - 'radius_put_vendor_int','radius_put_vendor_string', - 'radius_request_authenticator','radius_send_request', - 'radius_server_secret','radius_strerror','rand','range', - 'rawurldecode','rawurlencode','read_exif_data','readdir','readfile', - 'readgzfile','readlink','realpath','reg_close_key','reg_create_key', - 'reg_enum_key','reg_enum_value','reg_get_value','reg_open_key', - 'reg_set_value','register_shutdown_function', - 'register_tick_function','rename','res_close','res_get','res_list', - 'res_list_type','res_open','res_set','reset', - 'restore_error_handler','restore_include_path','rewind','rewinddir', - 'rmdir','round','rsort','rtrim','runkit_class_adopt', - 'runkit_class_emancipate','runkit_constant_add', - 'runkit_constant_redefine','runkit_constant_remove', - 'runkit_default_property_add','runkit_function_add', - 'runkit_function_copy','runkit_function_redefine', - 'runkit_function_remove','runkit_function_rename','runkit_import', - 'runkit_lint','runkit_lint_file','runkit_method_add', - 'runkit_method_copy','runkit_method_redefine', - 'runkit_method_remove','runkit_method_rename','runkit_object_id', - 'runkit_return_value_used','runkit_sandbox_output_handler', - 'runkit_superglobals','runkit_zval_inspect','scandir','sem_acquire', - 'sem_get','sem_release','sem_remove','serialize', - 'session_cache_expire','session_cache_limiter','session_commit', - 'session_decode','session_destroy','session_encode', - 'session_get_cookie_params','session_id','session_is_registered', - 'session_module_name','session_name','session_regenerate_id', - 'session_register','session_save_path','session_set_cookie_params', - 'session_set_save_handler','session_start','session_unregister', - 'session_unset','session_write_close','set_content', - 'set_error_handler','set_file_buffer','set_include_path', - 'set_magic_quotes_runtime','set_socket_blocking','set_time_limit', - 'setcookie','setlocale','setrawcookie','settype','sha1','sha1_file', - 'shell_exec','shmop_close','shmop_delete','shmop_open','shmop_read', - 'shmop_size','shmop_write','shm_attach','shm_detach','shm_get_var', - 'shm_put_var','shm_remove','shm_remove_var','show_source','shuffle', - 'similar_text','simplexml_import_dom','simplexml_load_file', - 'simplexml_load_string','sin','sinh','sizeof','sleep','smtp_close', - 'smtp_cmd_data','smtp_cmd_mail','smtp_cmd_rcpt','smtp_connect', - 'snmp_get_quick_print','snmp_get_valueretrieval','snmp_read_mib', - 'snmp_set_quick_print','snmp_set_valueretrieval','snmp2_get', - 'snmp2_getnext','snmp2_real_walk','snmp2_set','snmp2_walk', - 'snmp3_get','snmp3_getnext','snmp3_real_walk','snmp3_set', - 'snmp3_walk','snmpget','snmpgetnext','snmprealwalk','snmpset', - 'snmpwalk','snmpwalkoid','socket_accept','socket_bind', - 'socket_clear_error','socket_close','socket_connect', - 'socket_create','socket_create_listen','socket_create_pair', - 'socket_getopt','socket_getpeername','socket_getsockname', - 'socket_get_option','socket_get_status','socket_iovec_add', - 'socket_iovec_alloc','socket_iovec_delete','socket_iovec_fetch', - 'socket_iovec_free','socket_iovec_set','socket_last_error', - 'socket_listen','socket_read','socket_readv','socket_recv', - 'socket_recvfrom','socket_recvmsg','socket_select','socket_send', - 'socket_sendmsg','socket_sendto','socket_setopt','socket_set_block', - 'socket_set_blocking','socket_set_nonblock','socket_set_option', - 'socket_set_timeout','socket_shutdown','socket_strerror', - 'socket_write','socket_writev','sort','soundex','spl_autoload', - 'spl_autoload_call','spl_autoload_extensions', - 'spl_autoload_functions','spl_autoload_register', - 'spl_autoload_unregister','spl_classes','spl_object_hash','split', - 'spliti','sprintf','sql_regcase','sqlite_array_query', - 'sqlite_busy_timeout','sqlite_changes','sqlite_close', - 'sqlite_column','sqlite_create_aggregate','sqlite_create_function', - 'sqlite_current','sqlite_error_string','sqlite_escape_string', - 'sqlite_exec','sqlite_factory','sqlite_fetch_all', - 'sqlite_fetch_array','sqlite_fetch_column_types', - 'sqlite_fetch_object','sqlite_fetch_single','sqlite_fetch_string', - 'sqlite_field_name','sqlite_has_more','sqlite_has_prev', - 'sqlite_last_error','sqlite_last_insert_rowid','sqlite_libencoding', - 'sqlite_libversion','sqlite_next','sqlite_num_fields', - 'sqlite_num_rows','sqlite_open','sqlite_popen','sqlite_prev', - 'sqlite_query','sqlite_rewind','sqlite_seek','sqlite_single_query', - 'sqlite_udf_decode_binary','sqlite_udf_encode_binary', - 'sqlite_unbuffered_query','sqlite_valid','sqrt','srand','sscanf', - 'ssh2_auth_hostbased_file','ssh2_auth_none','ssh2_auth_password', - 'ssh2_auth_pubkey_file','ssh2_connect','ssh2_exec', - 'ssh2_fetch_stream','ssh2_fingerprint','ssh2_forward_accept', - 'ssh2_forward_listen','ssh2_methods_negotiated','ssh2_poll', - 'ssh2_publickey_add','ssh2_publickey_init','ssh2_publickey_list', - 'ssh2_publickey_remove','ssh2_scp_recv','ssh2_scp_send','ssh2_sftp', - 'ssh2_sftp_lstat','ssh2_sftp_mkdir','ssh2_sftp_readlink', - 'ssh2_sftp_realpath','ssh2_sftp_rename','ssh2_sftp_rmdir', - 'ssh2_sftp_stat','ssh2_sftp_symlink','ssh2_sftp_unlink', - 'ssh2_shell','ssh2_tunnel','stat','stats_absolute_deviation', - 'stats_cdf_beta','stats_cdf_binomial','stats_cdf_cauchy', - 'stats_cdf_chisquare','stats_cdf_exponential','stats_cdf_f', - 'stats_cdf_gamma','stats_cdf_laplace','stats_cdf_logistic', - 'stats_cdf_negative_binomial','stats_cdf_noncentral_chisquare', - 'stats_cdf_noncentral_f','stats_cdf_noncentral_t', - 'stats_cdf_normal','stats_cdf_poisson','stats_cdf_t', - 'stats_cdf_uniform','stats_cdf_weibull','stats_covariance', - 'stats_dens_beta','stats_dens_cauchy','stats_dens_chisquare', - 'stats_dens_exponential','stats_dens_f','stats_dens_gamma', - 'stats_dens_laplace','stats_dens_logistic','stats_dens_normal', - 'stats_dens_pmf_binomial','stats_dens_pmf_hypergeometric', - 'stats_dens_pmf_negative_binomial','stats_dens_pmf_poisson', - 'stats_dens_t','stats_dens_uniform','stats_dens_weibull', - 'stats_harmonic_mean','stats_kurtosis','stats_rand_gen_beta', - 'stats_rand_gen_chisquare','stats_rand_gen_exponential', - 'stats_rand_gen_f','stats_rand_gen_funiform','stats_rand_gen_gamma', - 'stats_rand_gen_ipoisson','stats_rand_gen_iuniform', - 'stats_rand_gen_noncenral_f','stats_rand_gen_noncentral_chisquare', - 'stats_rand_gen_noncentral_t','stats_rand_gen_normal', - 'stats_rand_gen_t','stats_rand_getsd','stats_rand_ibinomial', - 'stats_rand_ibinomial_negative','stats_rand_ignlgi', - 'stats_rand_phrase_to_seeds','stats_rand_ranf','stats_rand_setall', - 'stats_skew','stats_standard_deviation','stats_stat_binomial_coef', - 'stats_stat_correlation','stats_stat_factorial', - 'stats_stat_independent_t','stats_stat_innerproduct', - 'stats_stat_paired_t','stats_stat_percentile','stats_stat_powersum', - 'stats_variance','strcasecmp','strchr','strcmp','strcoll','strcspn', - 'stream_bucket_append','stream_bucket_make_writeable', - 'stream_bucket_new','stream_bucket_prepend','stream_context_create', - 'stream_context_get_default','stream_context_get_options', - 'stream_context_set_default','stream_context_set_option', - 'stream_context_set_params','stream_copy_to_stream', - 'stream_encoding','stream_filter_append','stream_filter_prepend', - 'stream_filter_register','stream_filter_remove', - 'stream_get_contents','stream_get_filters','stream_get_line', - 'stream_get_meta_data','stream_get_transports', - 'stream_get_wrappers','stream_is_local', - 'stream_notification_callback','stream_register_wrapper', - 'stream_resolve_include_path','stream_select','stream_set_blocking', - 'stream_set_timeout','stream_set_write_buffer', - 'stream_socket_accept','stream_socket_client', - 'stream_socket_enable_crypto','stream_socket_get_name', - 'stream_socket_pair','stream_socket_recvfrom', - 'stream_socket_sendto','stream_socket_server', - 'stream_socket_shutdown','stream_supports_lock', - 'stream_wrapper_register','stream_wrapper_restore', - 'stream_wrapper_unregister','strftime','stripcslashes','stripos', - 'stripslashes','strip_tags','stristr','strlen','strnatcasecmp', - 'strnatcmp','strpbrk','strncasecmp','strncmp','strpos','strrchr', - 'strrev','strripos','strrpos','strspn','strstr','strtok', - 'strtolower','strtotime','strtoupper','strtr','strval', - 'str_ireplace','str_pad','str_repeat','str_replace','str_rot13', - 'str_split','str_shuffle','str_word_count','substr', - 'substr_compare','substr_count','substr_replace','svn_add', - 'svn_auth_get_parameter','svn_auth_set_parameter','svn_cat', - 'svn_checkout','svn_cleanup','svn_client_version','svn_commit', - 'svn_diff','svn_export','svn_fs_abort_txn','svn_fs_apply_text', - 'svn_fs_begin_txn2','svn_fs_change_node_prop','svn_fs_check_path', - 'svn_fs_contents_changed','svn_fs_copy','svn_fs_delete', - 'svn_fs_dir_entries','svn_fs_file_contents','svn_fs_file_length', - 'svn_fs_is_dir','svn_fs_is_file','svn_fs_make_dir', - 'svn_fs_make_file','svn_fs_node_created_rev','svn_fs_node_prop', - 'svn_fs_props_changed','svn_fs_revision_prop', - 'svn_fs_revision_root','svn_fs_txn_root','svn_fs_youngest_rev', - 'svn_import','svn_info','svn_log','svn_ls','svn_repos_create', - 'svn_repos_fs','svn_repos_fs_begin_txn_for_commit', - 'svn_repos_fs_commit_txn','svn_repos_hotcopy','svn_repos_open', - 'svn_repos_recover','svn_status','svn_update','symlink', - 'sys_get_temp_dir','syslog','system','tan','tanh','tempnam', - 'textdomain','thread_get','thread_include','thread_lock', - 'thread_lock_try','thread_mutex_destroy','thread_mutex_init', - 'thread_set','thread_start','thread_unlock','tidy_access_count', - 'tidy_clean_repair','tidy_config_count','tidy_diagnose', - 'tidy_error_count','tidy_get_body','tidy_get_config', - 'tidy_get_error_buffer','tidy_get_head','tidy_get_html', - 'tidy_get_html_ver','tidy_get_output','tidy_get_release', - 'tidy_get_root','tidy_get_status','tidy_getopt','tidy_is_xhtml', - 'tidy_is_xml','tidy_parse_file','tidy_parse_string', - 'tidy_repair_file','tidy_repair_string','tidy_warning_count','time', - 'timezone_abbreviations_list','timezone_identifiers_list', - 'timezone_name_from_abbr','timezone_name_get','timezone_offset_get', - 'timezone_open','timezone_transitions_get','tmpfile', - 'token_get_all','token_name','touch','trigger_error', - 'transliterate','transliterate_filters_get','trim','uasort', - 'ucfirst','ucwords','uksort','umask','uniqid','unixtojd','unlink', - 'unpack','unregister_tick_function','unserialize','unset', - 'urldecode','urlencode','user_error','use_soap_error_handler', - 'usleep','usort','utf8_decode','utf8_encode','var_dump', - 'var_export','variant_abs','variant_add','variant_and', - 'variant_cast','variant_cat','variant_cmp', - 'variant_date_from_timestamp','variant_date_to_timestamp', - 'variant_div','variant_eqv','variant_fix','variant_get_type', - 'variant_idiv','variant_imp','variant_int','variant_mod', - 'variant_mul','variant_neg','variant_not','variant_or', - 'variant_pow','variant_round','variant_set','variant_set_type', - 'variant_sub','variant_xor','version_compare','virtual','vfprintf', - 'vprintf','vsprintf','wddx_add_vars','wddx_deserialize', - 'wddx_packet_end','wddx_packet_start','wddx_serialize_value', - 'wddx_serialize_vars','win_beep','win_browse_file', - 'win_browse_folder','win_create_link','win_message_box', - 'win_play_wav','win_shell_execute','win32_create_service', - 'win32_delete_service','win32_get_last_control_message', - 'win32_ps_list_procs','win32_ps_stat_mem','win32_ps_stat_proc', - 'win32_query_service_status','win32_scheduler_delete_task', - 'win32_scheduler_enum_tasks','win32_scheduler_get_task_info', - 'win32_scheduler_run','win32_scheduler_set_task_info', - 'win32_set_service_status','win32_start_service', - 'win32_start_service_ctrl_dispatcher','win32_stop_service', - 'wordwrap','xml_error_string','xml_get_current_byte_index', - 'xml_get_current_column_number','xml_get_current_line_number', - 'xml_get_error_code','xml_parse','xml_parser_create', - 'xml_parser_create_ns','xml_parser_free','xml_parser_get_option', - 'xml_parser_set_option','xml_parse_into_struct', - 'xml_set_character_data_handler','xml_set_default_handler', - 'xml_set_element_handler','xml_set_end_namespace_decl_handler', - 'xml_set_external_entity_ref_handler', - 'xml_set_notation_decl_handler','xml_set_object', - 'xml_set_processing_instruction_handler', - 'xml_set_start_namespace_decl_handler', - 'xml_set_unparsed_entity_decl_handler','xmldoc','xmldocfile', - 'xmlrpc_decode','xmlrpc_decode_request','xmlrpc_encode', - 'xmlrpc_encode_request','xmlrpc_get_type','xmlrpc_is_fault', - 'xmlrpc_parse_method_descriptions', - 'xmlrpc_server_add_introspection_data','xmlrpc_server_call_method', - 'xmlrpc_server_create','xmlrpc_server_destroy', - 'xmlrpc_server_register_introspection_callback', - 'xmlrpc_server_register_method','xmlrpc_set_type','xmltree', - 'xmlwriter_end_attribute','xmlwriter_end_cdata', - 'xmlwriter_end_comment','xmlwriter_end_document', - 'xmlwriter_end_dtd','xmlwriter_end_dtd_attlist', - 'xmlwriter_end_dtd_element','xmlwriter_end_dtd_entity', - 'xmlwriter_end_element','xmlwriter_end_pi','xmlwriter_flush', - 'xmlwriter_full_end_element','xmlwriter_open_memory', - 'xmlwriter_open_uri','xmlwriter_output_memory', - 'xmlwriter_set_indent','xmlwriter_set_indent_string', - 'xmlwriter_start_attribute','xmlwriter_start_attribute_ns', - 'xmlwriter_start_cdata','xmlwriter_start_comment', - 'xmlwriter_start_document','xmlwriter_start_dtd', - 'xmlwriter_start_dtd_attlist','xmlwriter_start_dtd_element', - 'xmlwriter_start_dtd_entity','xmlwriter_start_element', - 'xmlwriter_start_element_ns','xmlwriter_start_pi','xmlwriter_text', - 'xmlwriter_write_attribute','xmlwriter_write_attribute_ns', - 'xmlwriter_write_cdata','xmlwriter_write_comment', - 'xmlwriter_write_dtd','xmlwriter_write_dtd_attlist', - 'xmlwriter_write_dtd_element','xmlwriter_write_dtd_entity', - 'xmlwriter_write_element','xmlwriter_write_element_ns', - 'xmlwriter_write_pi','xmlwriter_write_raw','xpath_eval', - 'xpath_eval_expression','xpath_new_context','xpath_register_ns', - 'xpath_register_ns_auto','xptr_eval','xptr_new_context','yp_all', - 'yp_cat','yp_errno','yp_err_string','yp_first', - 'yp_get_default_domain','yp_master','yp_match','yp_next','yp_order', - 'zend_current_obfuscation_level','zend_get_cfg_var','zend_get_id', - 'zend_loader_current_file','zend_loader_enabled', - 'zend_loader_file_encoded','zend_loader_file_licensed', - 'zend_loader_install_license','zend_loader_version', - 'zend_logo_guid','zend_match_hostmasks','zend_obfuscate_class_name', - 'zend_obfuscate_function_name','zend_optimizer_version', - 'zend_runtime_obfuscate','zend_version','zip_close', - 'zip_entry_close','zip_entry_compressedsize', - 'zip_entry_compressionmethod','zip_entry_filesize','zip_entry_name', - 'zip_entry_open','zip_entry_read','zip_open','zip_read', - 'zlib_get_coding_type' - ), - 4 => array( - 'DEFAULT_INCLUDE_PATH', 'DIRECTORY_SEPARATOR', 'E_ALL', - 'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_CORE_ERROR', - 'E_CORE_WARNING', 'E_ERROR', 'E_NOTICE', 'E_PARSE', 'E_STRICT', - 'E_USER_ERROR', 'E_USER_NOTICE', 'E_USER_WARNING', 'E_WARNING', - 'ENT_COMPAT','ENT_QUOTES','ENT_NOQUOTES', - 'false', 'null', 'PEAR_EXTENSION_DIR', 'PEAR_INSTALL_DIR', - 'PHP_BINDIR', 'PHP_CONFIG_FILE_PATH', 'PHP_DATADIR', - 'PHP_EXTENSION_DIR', 'PHP_LIBDIR', - 'PHP_LOCALSTATEDIR', 'PHP_OS', - 'PHP_OUTPUT_HANDLER_CONT', 'PHP_OUTPUT_HANDLER_END', - 'PHP_OUTPUT_HANDLER_START', 'PHP_SYSCONFDIR', - 'PHP_VERSION', 'true', '__CLASS__', '__FILE__', '__FUNCTION__', - '__LINE__', '__METHOD__' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '<'.'%', '<'.'%=', '%'.'>', '<'.'?', '<'.'?=', '?'.'>' - ), - 0 => array( - '(', ')', '[', ']', '{', '}', - '!', '@', '%', '&', '|', '/', - '<', '>', - '=', '-', '+', '*', - '.', ':', ',', ';' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #990000;', - 4 => 'color: #009900; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 3 => 'color: #0000cc; font-style: italic;', - 4 => 'color: #009933; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 1 => 'color: #000099; font-weight: bold;', - 2 => 'color: #660099; font-weight: bold;', - 3 => 'color: #660099; font-weight: bold;', - 4 => 'color: #006699; font-weight: bold;', - 5 => 'color: #006699; font-weight: bold; font-style: italic;', - 6 => 'color: #009933; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - 'HARD' => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - GESHI_NUMBER_OCT_PREFIX => 'color: #208080;', - GESHI_NUMBER_HEX_PREFIX => 'color: #208080;', - GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;', - ), - 'METHODS' => array( - 1 => 'color: #004000;', - 2 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #000088;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.php.net/{FNAMEL}', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '::' - ), - 'REGEXPS' => array( - //Variables - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*" - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<'.'?php' => '?'.'>' - ), - 1 => array( - '<'.'?' => '?'.'>' - ), - 2 => array( - '<'.'%' => '%'.'>' - ), - 3 => array( - '<script language="php">' => '</script>' - ), - 4 => "/(?P<start><\\?(?>php\b)?)(?:". - "(?>[^\"'?\\/<]+)|". - "\\?(?!>)|". - "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|". - "(?>\"(?>[^\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|". - "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|". - "\\/\\/(?>.*?$)|". - "\\/(?=[^*\\/])|". - "<(?!<<)|". - "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>". - ")*(?P<end>\\?>|\Z)/sm", - 5 => "/(?P<start><%)(?:". - "(?>[^\"'%\\/<]+)|". - "%(?!>)|". - "(?>'(?>[^'\\\\]|\\\\'|\\\\\\\|\\\\)*')|". - "(?>\"(?>[^\\\"\\\\]|\\\\\"|\\\\\\\\|\\\\)*\")|". - "(?>\\/\\*(?>[^\\*]|(?!\\*\\/)\\*)*\\*\\/)|". - "\\/\\/(?>.*?$)|". - "\\/(?=[^*\\/])|". - "<(?!<<)|". - "<<<(?P<phpdoc>\w+)\s.*?\s\k<phpdoc>". - ")*(?P<end>%>)/sm", - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'TAB_WIDTH' => 4 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/pic16.php b/system/application/libraries/geshi/pic16.php deleted file mode 100644 index 88d4a6745..000000000 --- a/system/application/libraries/geshi/pic16.php +++ /dev/null @@ -1,141 +0,0 @@ -<?php -/************************************************************************************* - * pic16.php - * ------- - * Author: Phil Mattison (mattison@ohmikron.com) - * Copyright: (c) 2008 Ohmikron Corp. (http://www.ohmikron.com/) - * Release Version: 1.0.8.6 - * Date Started: 2008/07/30 - * - * PIC16 Assembler language file for GeSHi. - * - * CHANGES - * ------- - * 2008/07/30 (1.0.8) - * - First Release - * - * TODO (updated 2008/07/30) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PIC16', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /*Instructions*/ - 1 => array( - 'addcf','adddcf','addlw','addwf','andlw','andwf','bc','bcf','bdc', - 'bnc','bndc','bnz','bsf','btfsc','btfss','bz','call','clrc','clrdc', - 'clrf','clrw','clrwdt','clrz','comf','decf','goto','incf','incfsz', - 'iorlw','iorwf','lcall','lgoto','movf','movfw','movlw','movwf', - 'option','negf','nop','retfie','retlw','return','rlf','rrf','setc', - 'setdc','setz','skpc','skpdc','skpnc','skpndc','skpnz','skpz', - 'sleep','subcf','subdcf','sublw','subwf','swapf','tris','tstf', - 'xorlw','xorwf' - ), - /*Registers*/ - 2 => array( - 'INDF','TMR0','OPTION','PCL','STATUS','FSR','PORTA','PORTB','PORTC', - 'PORTD','PORTE','PORTF','TRISA','TRISB','TRISC','TRISD','TRISE', - 'TRISF','PCLATH','INTCON','PIR1','PIE1','PCON','CMCON','VRCON', - 'F','W' - ), - /*Directives*/ - 3 => array( - '_BADRAM','BANKISEL','BANKSEL','CBLOCK','CODE','_CONFIG','CONSTANT', - 'DA','DATA','DB','DE','#DEFINE','DT','DW','ELSE','END','ENDC', - 'ENDIF','ENDM','ENDW','EQU','ERROR','ERRORLEVEL','EXITM','EXPAND', - 'EXTERN','FILL','GLOBAL','IDATA','_IDLOCS','IF','IFDEF','IFNDEF', - 'INCLUDE','#INCLUDE','LIST','LOCAL','MACRO','_MAXRAM','MESSG', - 'NOEXPAND','NOLIST','ORG','PAGE','PAGESEL','PROCESSOR','RADIX', - 'RES','SET','SPACE','SUBTITLE','TITLE','UDATA','UDATA_ACS', - 'UDATA_OVR','UDATA_SHR','#UNDEFINE','VARIABLE','WHILE', - 'D','H','O','B','A' - ), - ), - 'SYMBOLS' => array('=','.',',',':'), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000a0; font-weight: bold;', - 2 => 'color: #aa3300; font-weight: bold;', - 3 => 'color: #0000ff;', - ), - 'COMMENTS' => array( - 1 => 'color: #00a000;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #ff0000;' - ), - 'BRACKETS' => array( - 0 => 'color: #0000ff;' - ), - 'STRINGS' => array( - 0 => 'color: #ff7700;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff7700;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #7777ff;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array() - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | - GESHI_NUMBER_BIN_SUFFIX | - GESHI_NUMBER_HEX_PREFIX | - GESHI_NUMBER_HEX_SUFFIX, - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "a-zA-Z0-9\$_\|\#>|^", - 'DISALLOWED_AFTER' => "a-zA-Z0-9_<\|%" - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/pike.php b/system/application/libraries/geshi/pike.php deleted file mode 100644 index e67975fe2..000000000 --- a/system/application/libraries/geshi/pike.php +++ /dev/null @@ -1,103 +0,0 @@ -<?php -/************************************************************************************* - * pike.php - * -------- - * Author: Rick E. (codeblock@eighthbit.net) - * Copyright: (c) 2009 Rick E. - * Release Version: 1.0.8.6 - * Date Started: 2009/12/10 - * - * Pike language file for GeSHi. - * - * CHANGES - * ------- - * 2009/12/25 (1.0.8.6) - * - First Release - * - * TODO (updated 2009/12/25) - * ------------------------- - * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'Pike', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'goto', 'break', 'continue', 'return', 'case', 'default', 'if', - 'else', 'switch', 'while', 'foreach', 'do', 'for', 'gauge', - 'destruct', 'lambda', 'inherit', 'import', 'typeof', 'catch', - 'inline', 'nomask', 'private', 'protected', 'public', 'static' - ) - ), - 'SYMBOLS' => array( - 1 => array( - '(', ')', '{', '}', '[', ']', '+', '-', '*', '/', '%', '=', '!', '&', '|', '?', ';' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;', - ), - 'METHODS' => array( - 0 => 'color: #004000;' - ), - 'SYMBOLS' => array( - 1 => 'color: #339933;' - ), - 'REGEXPS' => array(), - 'SCRIPT' => array() - ), - 'URLS' => array(1 => ''), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array(1 => '.'), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> diff --git a/system/application/libraries/geshi/pixelbender.php b/system/application/libraries/geshi/pixelbender.php deleted file mode 100644 index d19754f3e..000000000 --- a/system/application/libraries/geshi/pixelbender.php +++ /dev/null @@ -1,176 +0,0 @@ -<?php -/************************************************************************************* - * pixelbender.php - * ---------------- - * Author: Richard Olsson (r@richardolsson.se) - * Copyright: (c) 2008 Richard Olsson (richardolsson.se) - * Release Version: 1.0.8.6 - * Date Started: 2008/11/16 - * - * Pixel Bender 1.0 language file for GeSHi. - * - * - * Please feel free to modify this file, although I would greatly appreciate - * it if you would then send some feedback on why the file needed to be - * changed, using the e-mail address above. - * - * - * The colors are inspired by those used in the Pixel Bender Toolkit, with - * some slight modifications. - * - * For more info on Pixel Bender, see the Adobe Labs Wiki article at - * http://labs.adobe.com/wiki/index.php/Pixel_Bender_Toolkit. - * - * Keyword groups are defined as follows (groups marked with an asterisk - * inherit their names from terminology used in the language specification - * included with the Pixel Bender Toolkit, see URL above.) - * - * 1. languageVersion & kernel keywords - * 2. Kernel Members * - * 3. Types * - * 4. Statements * & qualifiers (in, out, inout) - * 5. Built-in functions * - * 6. Meta-data names - * 7. Preprocessor & Pre-defined symbols * - * - * - * CHANGES - * ------- - * 2008/11/16 (1.0.8.2) - * - Initial release - * - * TODO (updated 2008/11/16) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'Pixel Bender 1.0', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'languageVersion', 'kernel' - ), - 2 => array( - 'import', 'parameter', 'dependent', 'const', 'input', 'output', - 'evaluatePixel', 'evaluateDependents', 'needed', 'changed', 'generated' - ), - 3 => array( - 'bool', 'bool2', 'bool3', 'bool4', 'int', 'int2', 'int3', 'int4', - 'float', 'float2', 'float3', 'float4', 'float2x2', 'float3x3', 'float4x4', - 'pixel2', 'pixel3', 'pixel4', 'region', 'image1', 'image2', 'image3', 'image4', - 'imageRef', 'void' - ), - 4 => array( - 'in', 'out', 'inout', 'if', 'else', 'for', 'while', 'do', 'break', - 'continue', 'return' - ), - 5 => array( - 'radians', 'degrees', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'pow', - 'exp', 'exp2', 'log', 'log2', 'sqrt', 'inverseSqrt', 'abs', 'sign', 'floor', - 'ceil', 'fract', 'mod', 'min', 'max', 'step', 'clamp', 'mix', 'smoothStep', - 'length', 'distance', 'dot', 'cross', 'normalize', 'matrixCompMult', 'lessThan', - 'lessThanEqual', 'greaterThan', 'greaterThanEqual', 'equal', 'notEqual', 'any', - 'all', 'not', 'nowhere', 'everywhere', 'transform', 'union', 'intersect', - 'outset', 'inset', 'bounds', 'isEmpty', 'sample', 'sampleLinear', 'sampleNearest', - 'outCoord', 'dod', 'pixelSize', 'pixelAspectRatio' - ), - 6 => array( - 'namespace', 'vendor', 'version', 'minValue', 'maxValue', 'defaultValue', 'description' - ), - 7 => array( - '#if', '#endif', '#ifdef', '#elif', 'defined', '#define', - 'AIF_ATI', 'AIF_NVIDIA', 'AIF_FLASH_TARGET' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '%', '&', '|', '+', '-', '*', '/', '=', '<', '>', '?', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0033ff;', - 2 => 'color: #0033ff; font-weight: bold;', - 3 => 'color: #0033ff;', - 4 => 'color: #9900cc; font-weight: bold;', - 5 => 'color: #333333;', - 6 => 'color: #666666;', - 7 => 'color: #990000;', - ), - 'COMMENTS' => array( - 1 => 'color: #009900;', - 'MULTI' => 'color: #3f5fbf;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #990000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000; font-weight:bold;' - ), - 'METHODS' => array( - 0 => 'color: #000000;', - ), - 'SYMBOLS' => array( - 0 => 'color: #000000; font-weight: bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array('.'), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - - -?> diff --git a/system/application/libraries/geshi/plsql.php b/system/application/libraries/geshi/plsql.php deleted file mode 100644 index 0779ca04f..000000000 --- a/system/application/libraries/geshi/plsql.php +++ /dev/null @@ -1,256 +0,0 @@ -<?php -/************************************************************************************* - * plsql.php - * ------- - * Author: Victor Engmark <victor.engmark@gmail.com> - * Copyright: (c) 2006 Victor Engmark (http://l0b0.net/) - * Release Version: 1.0.8.6 - * Date Started: 2006/10/26 - * - * Oracle 9.2 PL/SQL language file for GeSHi. - * Formatting is based on the default setup of TOAD 8.6. - * - * CHANGES - * ------- - * 2006/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2006/10/27) - * ------------------------- - * * Add < and > to brackets - * * Remove symbols which are also comment delimiters / quote marks? - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PL/SQL', - 'COMMENT_SINGLE' => array(1 =>'--'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2930 - 'COMMENT_MULTI' => array('/*' => '*/'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2950 - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"'), //http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - //PL/SQL reserved keywords (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/f_words.htm#LNPLS019) - 1 => array('ZONE', 'YEAR', 'WRITE', 'WORK', 'WITH', 'WHILE', 'WHERE', - 'WHENEVER', 'WHEN', 'VIEW', 'VARCHAR2', 'VARCHAR', 'VALUES', - 'VALIDATE', 'USE', 'UPDATE', 'UNIQUE', 'UNION', 'TYPE', 'TRUE', - 'TRIGGER', 'TO', 'TIMEZONE_REGION', 'TIMEZONE_MINUTE', 'TIMEZONE_HOUR', - 'TIMEZONE_ABBR', 'TIMESTAMP', 'TIME', 'THEN', 'TABLE', 'SYNONYM', - 'SUCCESSFUL', 'SUBTYPE', 'START', 'SQLERRM', 'SQLCODE', 'SQL', 'SPACE', - 'SMALLINT', 'SHARE', 'SET', 'SEPARATE', 'SELECT', 'SECOND', - 'SAVEPOINT', 'ROWTYPE', 'ROWNUM', 'ROWID', 'ROW', 'ROLLBACK', - 'REVERSE', 'RETURN', 'RELEASE', 'RECORD', 'REAL', 'RAW', 'RANGE', - 'RAISE', 'PUBLIC', 'PROCEDURE', 'PRIVATE', 'PRIOR', 'PRAGMA', - 'POSITIVEN', 'POSITIVE', 'PLS_INTEGER', 'PCTFREE', 'PARTITION', - 'PACKAGE', 'OUT', 'OTHERS', 'ORGANIZATION', 'ORDER', 'OR', 'OPTION', - 'OPERATOR', 'OPEN', 'OPAQUE', 'ON', 'OF', 'OCIROWID', 'NUMBER_BASE', - 'NUMBER', 'NULL', 'NOWAIT', 'NOT', 'NOCOPY', 'NEXTVAL', 'NEW', - 'NATURALN', 'NATURAL', 'MONTH', 'MODE', 'MLSLABEL', 'MINUTE', 'MINUS', - 'LOOP', 'LONG', 'LOCK', 'LIMITED', 'LIKE', 'LEVEL', 'JAVA', - 'ISOLATION', 'IS', 'INTO', 'INTERVAL', 'INTERSECT', 'INTERFACE', - 'INTEGER', 'INSERT', 'INDICATOR', 'INDEX', 'IN', 'IMMEDIATE', 'IF', - 'HOUR', 'HEAP', 'HAVING', 'GROUP', 'GOTO', 'FUNCTION', 'FROM', - 'FORALL', 'FOR', 'FLOAT', 'FETCH', 'FALSE', 'EXTENDS', 'EXIT', - 'EXISTS', 'EXECUTE', 'EXCLUSIVE', 'EXCEPTION', 'END', 'ELSIF', 'ELSE', - 'DROP', 'DO', 'DISTINCT', 'DESC', 'DELETE', 'DEFAULT', 'DECLARE', - 'DECIMAL', 'DAY', 'DATE', 'CURSOR', 'CURRVAL', 'CURRENT', 'CREATE', - 'CONSTANT', 'CONNECT', 'COMPRESS', 'COMMIT', 'COMMENT', 'COLLECT', - 'CLUSTER', 'CLOSE', 'CHECK', 'CHAR_BASE', 'CHAR', 'CASE', 'BY', 'BULK', - 'BOOLEAN', 'BODY', 'BINARY_INTEGER', 'BETWEEN', 'BEGIN', 'AUTHID', - 'AT', 'ASC', 'AS', 'ARRAY', 'ANY', 'AND', 'ALTER', 'ALL'), - //SQL functions (http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96540/toc.htm & http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96540/functions101a.htm#85925) - 2 => array('XMLTRANSFORM', 'XMLSEQUENCE', 'XMLFOREST', 'XMLELEMENT', - 'XMLCONCAT', 'XMLCOLATTVAL', 'XMLAGG', 'WIDTH_BUCKET', 'VSIZE', - 'VARIANCE', 'VAR_SAMP', 'VAR_POP', 'VALUE', 'USERENV', 'USER', 'UPPER', - 'UPDATEXML', 'UNISTR', 'UID', 'TZ_OFFSET', 'TRUNC', 'TRIM', 'TREAT', - 'TRANSLATE', 'TO_YMINTERVAL', 'TO_TIMESTAMP_TZ', 'TO_TIMESTAMP', - 'TO_SINGLE_BYTE', 'TO_NUMBER', 'TO_NCLOB', 'TO_NCHAR', 'TO_MULTI_BYTE', - 'TO_LOB', 'TO_DSINTERVAL', 'TO_DATE', 'TO_CLOB', 'TO_CHAR', 'TANH', - 'TAN', 'SYSTIMESTAMP', 'SYSDATE', 'SYS_XMLGEN', 'SYS_XMLAGG', - 'SYS_TYPEID', 'SYS_GUID', 'SYS_EXTRACT_UTC', 'SYS_DBURIGEN', - 'SYS_CONTEXT', 'SYS_CONNECT_BY_PATH', 'SUM', 'SUBSTR', 'STDDEV_SAMP', - 'STDDEV_POP', 'STDDEV', 'SQRT', 'SOUNDEX', 'SINH', 'SIN', 'SIGN', - 'SESSIONTIMEZONE', 'RTRIM', 'RPAD', 'ROWIDTONCHAR', 'ROWIDTOCHAR', - 'ROW_NUMBER', 'ROUND', 'REPLACE', 'REGR_SYY', 'REGR_SXY', 'REGR_SXX', - 'REGR_SLOPE', 'REGR_R2', 'REGR_INTERCEPT', 'REGR_COUNT', 'REGR_AVGY', - 'REGR_AVGX', 'REFTOHEX', 'REF', 'RAWTONHEX', 'RAWTOHEX', - 'RATIO_TO_REPORT', 'RANK', 'POWER', 'PERCENTILE_DISC', - 'PERCENTILE_CONT', 'PERCENT_RANK', 'PATH', 'NVL2', 'NVL', - 'NUMTOYMINTERVAL', 'NUMTODSINTERVAL', 'NULLIF', 'NTILE', 'NLSSORT', - 'NLS_UPPER', 'NLS_LOWER', 'NLS_INITCAP', 'NLS_CHARSET_NAME', - 'NLS_CHARSET_ID', 'NLS_CHARSET_DECL_LEN', 'NEXT_DAY', 'NEW_TIME', - 'NCHR', 'MONTHS_BETWEEN', 'MOD', 'MIN', 'MAX', 'MAKE_REF', 'LTRIM', - 'LPAD', 'LOWER', 'LOG', 'LOCALTIMESTAMP', 'LN', 'LENGTH', 'LEAST', - 'LEAD', 'LAST_VALUE', 'LAST_DAY', 'LAST', 'LAG', 'INSTR', 'INITCAP', - 'HEXTORAW', 'GROUPING_ID', 'GROUPING', 'GROUP_ID', 'GREATEST', - 'FROM_TZ', 'FLOOR', 'FIRST_VALUE', 'FIRST', 'EXTRACTVALUE', 'EXTRACT', - 'EXP', 'EXISTSNODE', 'EMPTY_CLOB', 'EMPTY_BLOB', 'DUMP', 'DEREF', - 'DEPTH', 'DENSE_RANK', 'DECOMPOSE', 'DECODE', 'DBTIMEZONE', - 'CURRENT_TIMESTAMP', 'CURRENT_DATE', 'CUME_DIST', 'COVAR_SAMP', - 'COVAR_POP', 'COUNT', 'COSH', 'COS', 'CORR', 'CONVERT', 'CONCAT', - 'COMPOSE', 'COALESCE', 'CHR', 'CHARTOROWID', 'CEIL', 'CAST', 'BITAND', - 'BIN_TO_NUM', 'BFILENAME', 'AVG', 'ATAN2', 'ATAN', 'ASIN', 'ASCIISTR', - 'ASCII', 'ADD_MONTHS', 'ACOS', 'ABS'), - //PL/SQL packages (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96612/intro2.htm#1025672) - 3 => array('UTL_URL', 'UTL_TCP', 'UTL_SMTP', 'UTL_REF', 'UTL_RAW', - 'UTL_PG', 'UTL_INADDR', 'UTL_HTTP', 'UTL_FILE', 'UTL_ENCODE', - 'UTL_COLL', 'SDO_UTIL', 'SDO_TUNE', 'SDO_MIGRATE', 'SDO_LRS', - 'SDO_GEOM', 'SDO_CS', 'DMBS_XMLQUERY', 'DMBS_FLASHBACK', - 'DMBS_DEFER_SYS', 'DEBUG_EXTPROC', 'DBMS_XSLPROCESSOR', 'DBMS_XPLAN', - 'DBMS_XMLSCHEMA', 'DBMS_XMLSAVE', 'DBMS_XMLPARSER', 'DBMS_XMLGEN', - 'DBMS_XMLDOM', 'DBMS_XDBT', 'DBMS_XDB_VERSION', 'DBMS_XDB', 'DBMS_WM', - 'DBMS_UTILITY', 'DBMS_TYPES', 'DBMS_TTS', 'DBMS_TRANSFORM', - 'DBMS_TRANSACTION', 'DBMS_TRACE', 'DBMS_STRM_A', 'DBMS_STRM', - 'DBMS_STORAGE_MAP', 'DBMS_STATS', 'DBMS_SQL', 'DBMS_SPACE_ADMIN', - 'DBMS_SPACE', 'DBMS_SHARED_POOL', 'DBMS_SESSION', 'DBMS_RULE_ADM', - 'DBMS_RULE', 'DBMS_ROWID', 'DBMS_RLS', 'DBMS_RESUMABLE', - 'DBMS_RESOURCE_MANAGER_PRIVS', 'DBMS_RESOURCE_MANAGER', 'DBMS_REPUTIL', - 'DBMS_REPCAT_RGT', 'DBMS_REPCAT_INSTATIATE', 'DBMS_REPCAT_ADMIN', - 'DBMS_REPCAT', 'DBMS_REPAIR', 'DBMS_REFRESH', 'DBMS_REDEFINITION', - 'DBMS_RECTIFIER_DIFF', 'DBMS_RANDOM', 'DBMS_PROPAGATION_ADM', - 'DBMS_PROFILER', 'DBMS_PIPE', 'DBMS_PCLXUTIL', 'DBMS_OUTPUT', - 'DBMS_OUTLN_EDIT', 'DBMS_OUTLN', 'DBMS_ORACLE_TRACE_USER', - 'DBMS_ORACLE_TRACE_AGENT', 'DBMS_OLAP', 'DBMS_OFFLINE_SNAPSHOT', - 'DBMS_OFFLINE_OG', 'DBMS_ODCI', 'DBMS_OBFUSCATION_TOOLKIT', - 'DBMS_MVIEW', 'DBMS_MGWMSG', 'DBMS_MGWADM', 'DBMS_METADATA', - 'DBMS_LOGSTDBY', 'DBMS_LOGMNR_D', 'DBMS_LOGMNR_CDC_SUBSCRIBE', - 'DBMS_LOGMNR_CDC_PUBLISH', 'DBMS_LOGMNR', 'DBMS_LOCK', 'DBMS_LOB', - 'DBMS_LIBCACHE', 'DBMS_LDAP', 'DBMS_JOB', 'DBMS_IOT', - 'DBMS_HS_PASSTHROUGH', 'DBMS_FGA', 'DBMS_DISTRIBUTED_TRUST_ADMIN', - 'DBMS_DESCRIBE', 'DBMS_DEFER_QUERY', 'DBMS_DEFER', 'DBMS_DEBUG', - 'DBMS_DDL', 'DBMS_CAPTURE_ADM', 'DBMS_AW', 'DBMS_AQELM', 'DBMS_AQADM', - 'DBMS_AQ', 'DBMS_APPLY_ADM', 'DBMS_APPLICATION_INFO', 'DBMS_ALERT', - 'CWM2_OLAP_AW_ACCESS'), - //PL/SQL predefined exceptions (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/07_errs.htm#784) - 4 => array('ZERO_DIVIDE', 'VALUE_ERROR', 'TOO_MANY_ROWS', - 'TIMEOUT_ON_RESOURCE', 'SYS_INVALID_ROWID', 'SUBSCRIPT_OUTSIDE_LIMIT', - 'SUBSCRIPT_BEYOND_COUNT', 'STORAGE_ERROR', 'SELF_IS_NULL', - 'ROWTYPE_MISMATCH', 'PROGRAM_ERROR', 'NOT_LOGGED_ON', 'NO_DATA_FOUND', - 'LOGIN_DENIED', 'INVALID_NUMBER', 'INVALID_CURSOR', 'DUP_VAL_ON_INDEX', - 'CURSOR_ALREADY_OPEN', 'COLLECTION_IS_NULL', 'CASE_NOT_FOUND', - 'ACCESS_INTO_NULL'), - //Static data dictionary views (http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96536/ch2.htm) - 5 => array('USER_REPSITES', 'USER_REPSCHEMA', - 'USER_REPRESOLUTION_STATISTICS', 'USER_REPRESOLUTION_METHOD', - 'USER_REPRESOLUTION', 'USER_REPRESOL_STATS_CONTROL', 'USER_REPPROP', - 'USER_REPPRIORITY_GROUP', 'USER_REPPRIORITY', - 'USER_REPPARAMETER_COLUMN', 'USER_REPOBJECT', 'USER_REPKEY_COLUMNS', - 'USER_REPGROUPED_COLUMN', 'USER_REPGROUP_PRIVILEGES', 'USER_REPGROUP', - 'USER_REPGENOBJECTS', 'USER_REPGENERATED', 'USER_REPFLAVORS', - 'USER_REPFLAVOR_OBJECTS', 'USER_REPFLAVOR_COLUMNS', 'USER_REPDDL', - 'USER_REPCONFLICT', 'USER_REPCOLUMN_GROUP', 'USER_REPCOLUMN', - 'USER_REPCATLOG', 'USER_REPCAT_USER_PARM_VALUES', - 'USER_REPCAT_USER_AUTHORIZATIONS', 'USER_REPCAT_TEMPLATE_SITES', - 'USER_REPCAT_TEMPLATE_PARMS', 'USER_REPCAT_TEMPLATE_OBJECTS', - 'USER_REPCAT_REFRESH_TEMPLATES', 'USER_REPCAT', 'USER_REPAUDIT_COLUMN', - 'USER_REPAUDIT_ATTRIBUTE', 'DBA_REPSITES_NEW', 'DBA_REPSITES', - 'DBA_REPSCHEMA', 'DBA_REPRESOLUTION_STATISTICS', - 'DBA_REPRESOLUTION_METHOD', 'DBA_REPRESOLUTION', - 'DBA_REPRESOL_STATS_CONTROL', 'DBA_REPPROP', 'DBA_REPPRIORITY_GROUP', - 'DBA_REPPRIORITY', 'DBA_REPPARAMETER_COLUMN', 'DBA_REPOBJECT', - 'DBA_REPKEY_COLUMNS', 'DBA_REPGROUPED_COLUMN', - 'DBA_REPGROUP_PRIVILEGES', 'DBA_REPGROUP', 'DBA_REPGENOBJECTS', - 'DBA_REPGENERATED', 'DBA_REPFLAVORS', 'DBA_REPFLAVOR_OBJECTS', - 'DBA_REPFLAVOR_COLUMNS', 'DBA_REPEXTENSIONS', 'DBA_REPDDL', - 'DBA_REPCONFLICT', 'DBA_REPCOLUMN_GROUP', 'DBA_REPCOLUMN', - 'DBA_REPCATLOG', 'DBA_REPCAT_USER_PARM_VALUES', - 'DBA_REPCAT_USER_AUTHORIZATIONS', 'DBA_REPCAT_TEMPLATE_SITES', - 'DBA_REPCAT_TEMPLATE_PARMS', 'DBA_REPCAT_TEMPLATE_OBJECTS', - 'DBA_REPCAT_REFRESH_TEMPLATES', 'DBA_REPCAT_EXCEPTIONS', 'DBA_REPCAT', - 'DBA_REPAUDIT_COLUMN', 'DBA_REPAUDIT_ATTRIBUTE', 'ALL_REPSITES', - 'ALL_REPSCHEMA', 'ALL_REPRESOLUTION_STATISTICS', - 'ALL_REPRESOLUTION_METHOD', 'ALL_REPRESOLUTION', - 'ALL_REPRESOL_STATS_CONTROL', 'ALL_REPPROP', 'ALL_REPPRIORITY_GROUP', - 'ALL_REPPRIORITY', 'ALL_REPPARAMETER_COLUMN', 'ALL_REPOBJECT', - 'ALL_REPKEY_COLUMNS', 'ALL_REPGROUPED_COLUMN', - 'ALL_REPGROUP_PRIVILEGES', 'ALL_REPGROUP', 'ALL_REPGENOBJECTS', - 'ALL_REPGENERATED', 'ALL_REPFLAVORS', 'ALL_REPFLAVOR_OBJECTS', - 'ALL_REPFLAVOR_COLUMNS', 'ALL_REPDDL', 'ALL_REPCONFLICT', - 'ALL_REPCOLUMN_GROUP', 'ALL_REPCOLUMN', 'ALL_REPCATLOG', - 'ALL_REPCAT_USER_PARM_VALUES', 'ALL_REPCAT_USER_AUTHORIZATIONS', - 'ALL_REPCAT_TEMPLATE_SITES', 'ALL_REPCAT_TEMPLATE_PARMS', - 'ALL_REPCAT_TEMPLATE_OBJECTS', 'ALL_REPCAT_REFRESH_TEMPLATES', - 'ALL_REPCAT', 'ALL_REPAUDIT_COLUMN', 'ALL_REPAUDIT_ATTRIBUTE') - ), - 'SYMBOLS' => array( - //PL/SQL delimiters (http://download-uk.oracle.com/docs/cd/B10501_01/appdev.920/a96624/02_funds.htm#2732) - '+', '%', "'", '.', '/', '(', ')', ':', ',', '*', '"', '=', '<', '>', '@', ';', '-', ':=', '=>', '||', '**', '<<', '>>', '/*', '*/', '..', '<>', '!=', '~=', '^=', '<=', '>=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #00F;', - 2 => 'color: #000;', - 3 => 'color: #00F;', - 4 => 'color: #F00;', - 5 => 'color: #800;' - ), - 'COMMENTS' => array( - 1 => 'color: #080; font-style: italic;', - 'MULTI' => 'color: #080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #00F;' - ), - 'STRINGS' => array( - 0 => 'color: #F00;' - ), - 'NUMBERS' => array( - 0 => 'color: #800;' - ), - 'METHODS' => array( - 0 => 'color: #0F0;' - ), - 'SYMBOLS' => array( - 0 => 'color: #00F;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => 'color: #0F0;' - ) - ), - 'URLS' => array( - 1 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}', - 2 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}', - 3 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}', - 4 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}', - 5 => 'http://www.oracle.com/pls/db92/db92.drilldown?word={FNAMEU}' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?> diff --git a/system/application/libraries/geshi/povray.php b/system/application/libraries/geshi/povray.php deleted file mode 100644 index 80bf5a478..000000000 --- a/system/application/libraries/geshi/povray.php +++ /dev/null @@ -1,199 +0,0 @@ -<?php -/************************************************************************************* - * povray.php - * -------- - * Author: Carl Fürstenberg (azatoth@gmail.com) - * Copyright: © 2007 Carl Fürstenberg - * Release Version: 1.0.8.6 - * Date Started: 2008/07/11 - * - * Povray language file for GeSHi. - * - * CHANGES - * ------- - * 2008/07/11 (1.0.8) - * - initial import to GeSHi SVN - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'POVRAY', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'yes', 'wrinkles', 'wood', 'width', 'waves', 'water_level', 'warp', 'vturbulence', - 'vstr', 'vrotate', 'vnormalize', 'vlength', 'vcross', 'vaxis_rotate', 'variance', 'v_steps', - 'uv_mapping', 'utf8', 'use_index', 'use_colour', 'use_color', 'use_alpha', 'up', 'undef', - 'ultra_wide_angle', 'u_steps', 'type', 'turbulence', 'turb_depth', 'ttf', 'true', 'triangle_wave', - 'translate', 'transform', 'trace', 'toroidal', 'tolerance', 'tiles', 'tile2', 'tightness', - 'tiff', 'threshold', 'thickness', 'tga', 'texture_map', 'target', 'sys', 'sum', - 'substr', 'sturm', 'strupr', 'strlwr', 'strength', 'str', 'statistics', 'sqr', - 'spotted', 'spotlight', 'split_union', 'spline', 'spiral2', 'spiral1', 'spherical', 'specular', - 'spacing', 'solid', 'smooth', 'slope', 'slice', 'sky', 'size', 'sine_wave', - 'shadowless', 'scattering', 'scallop_wave', 'scale', 'save_file', 'samples', 'roughness', 'rotate', - 'ripples', 'right', 'rgbt', 'rgbft', 'rgbf', 'rgb', 'repeat', 'render', - 'refraction', 'reflection_exponent', 'recursion_limit', 'reciprocal', 'ratio', 'ramp_wave', 'radius', 'radial', - 'quilted', 'quick_colour', 'quick_color', 'quaternion', 'quadratic_spline', 'pwr', 'projected_through', 'prod', - 'pretrace_start', 'pretrace_end', 'precompute', 'precision', 'ppm', 'pow', 'pot', 'poly_wave', - 'point_at', 'png', 'planar', 'pigment_pattern', 'pi', 'phong_size', 'phong', 'phase', - 'pgm', 'perspective', 'pattern', 'pass_through', 'parallel', 'panoramic', 'orthographic', 'orientation', - 'orient', 'open', 'onion', 'once', 'on', 'omnimax', 'omega', 'offset', - 'off', 'octaves', 'number_of_waves', 'noise_generator', 'no_shadow', 'no_reflection', 'no_image', 'no_bump_scale', - 'no', 'nearest_count', 'natural_spline', 'mortar', 'minimum_reuse', 'min_extent', 'metric', 'method', - 'metallic', 'media_interaction', 'media_attenuation', 'media', 'max_trace_level', 'max_trace', 'max_sample', 'max_iteration', - 'max_intersections', 'max_gradient', 'max_extent', 'matrix', 'material_map', 'marble', 'map_type', 'mandel', - 'major_radius', 'magnet', 'low_error_factor', 'look_at', 'location', 'load_file', 'linear_sweep', 'linear_spline', - 'leopard', 'lambda', 'julia', 'jpeg', 'jitter', 'irid_wavelength', 'ior', 'inverse', - 'intervals', 'interpolate', 'internal', 'inside_vector', 'inside', 'initial_frame', 'initial_clock', 'image_width', - 'image_pattern', 'image_height', 'iff', 'hypercomplex', 'hollow', 'hierarchy', 'hf_gray_16', 'hexagon', - 'gray_threshold', 'granite', 'gradient', 'global_lights', 'gif', 'gather', 'fresnel', 'frequency', - 'frame_number', 'form', 'fog_type', 'fog_offset', 'fog_alt', 'focal_point', 'flip', 'flatness', - 'fisheye', 'final_frame', 'final_clock', 'false', 'falloff_angle', 'falloff', 'fade_power', 'fade_distance', - 'fade_colour', 'fade_color', 'facets', 'extinction', 'exterior', 'exponent', 'expand_thresholds', 'evaluate', - 'error_bound', 'emission', 'eccentricity', 'double_illuminate', 'distance', 'dist_exp', 'dispersion_samples', 'dispersion', - 'direction', 'diffuse', 'df3', 'dents', 'density_map', 'density_file', 'density', 'cylindrical', - 'cutaway_textures', 'cubic_wave', 'cubic_spline', 'cube', 'crand', 'crackle', 'count', 'coords', - 'control1', 'control0', 'conserve_energy', 'conic_sweep', 'confidence', 'concat', 'composite', 'component', - 'colour_map', 'colour', 'color', 'collect', 'clock_on', 'clock_delta', 'clock', 'circular', - 'chr', 'checker', 'charset', 'cells', 'caustics', 'bumps', 'bump_size', 'brilliance', - 'brightness', 'brick_size', 'brick', 'bozo', 'boxed', 'blur_samples', 'black_hole', 'bezier_spline', - 'b_spline', 'average', 'autostop', 'assumed_gamma', 'ascii', 'array', 'area_light', 'arc_angle', - 'append', 'aperture', 'angle', 'ambient_light', 'ambient', 'always_sample', 'altitude', 'alpha', - 'all_intersections', 'all', 'agate_turb', 'agate', 'adc_bailout', 'adaptive', 'accuracy', 'absorption', - 'aa_threshold', 'aa_level', 'reflection' - ), - 2 => array( - 'abs', 'acos', 'acosh', 'asc', 'asin', 'asinh', 'atan', 'atanh', - 'atan2', 'ceil', 'cos', 'cosh', 'defined', 'degrees', 'dimensions', 'dimension_size', - 'div', 'exp', 'file_exists', 'floor', 'int', 'ln', 'log', 'max', - 'min', 'mod', 'pov', 'radians', 'rand', 'seed', 'select', 'sin', - 'sinh', 'sqrt', 'strcmp', 'strlen', 'tan', 'tanh', 'val', 'vdot', - 'vlenght', - ), - 3 => array ( - 'x', 'y', 'z', 't', 'u', 'v', 'red', 'blue', - 'green', 'filter', 'transmit', 'gray', 'e', - ), - 4 => array ( - 'camera', 'background', 'fog', 'sky_sphere', 'rainbow', 'global_settings', 'radiosity', 'photon', - 'object', 'blob', 'sphere', 'cylinder', 'box', 'cone', 'height_field', 'julia_fractal', - 'lathe', 'prism', 'sphere_sweep', 'superellipsoid', 'sor', 'text', 'torus', 'bicubic_patch', - 'disc', 'mesh', 'triangle', 'smooth_triangle', 'mesh2', 'vertex_vectors', 'normal_vectors', 'uv_vectors', - 'texture_list', 'face_indices', 'normal_indices', 'uv_indices', 'texture', 'polygon', 'plane', 'poly', - 'cubic', 'quartic', 'quadric', 'isosurface', 'function', 'contained_by', 'parametric', 'pigment', - 'union', 'intersection', 'difference', 'merge', 'light_source', 'looks_like', 'light_group', 'clipped_by', - 'bounded_by', 'interior', 'material', 'interior_texture', 'normal', 'finish', 'color_map', 'pigment_map', - 'image_map', 'bump_map', 'slope_map', 'normal_map', 'irid', 'photons', - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', - '@', '%', '&', '*', '|', '/', '<', - '>', '+', '-', '.', '=', '<=', '>=', - '!=', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #a63123;', - 2 => 'color: #2312bc;', - 3 => 'color: #cc1122; font-weight: bold;', - 4 => 'color: #116688; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', -// 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66aa;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #6666cc; font-weight: bold;', - 1 => 'color: #66cc66; font-weight: bold;', - 2 => 'color: #66cc66; font-weight: bold;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - # normal hash lines - 0 => '\#(?!(include|declare|local|fopen|fclose|read|write|default|version|if|else|end|ifdef|ifndef|switch|case|range|break|while|debug|error|warning|macro) )[[:word:]]*', - # syntax functions hash thingis - 1 => "\#(include|declare|local|fopen|fclose|read|write|default|version|if|else|end|ifdef|ifndef|switch|case|range|break|while|debug|error|warning|macro)", - 2 => array( - GESHI_SEARCH => "([a-zA-Z]+)(\n)(.*)(\n)(\\1;?)", - GESHI_REPLACE => '\3', - GESHI_BEFORE => '\1\2', - GESHI_AFTER => '\4\5', - GESHI_MODIFIERS => 'siU' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'TAB_WIDTH' => 4 -); -?> diff --git a/system/application/libraries/geshi/powerbuilder.php b/system/application/libraries/geshi/powerbuilder.php deleted file mode 100644 index e276d85ee..000000000 --- a/system/application/libraries/geshi/powerbuilder.php +++ /dev/null @@ -1,418 +0,0 @@ -<?php -/************************************************************************************* - * powerbuilder.php - * ------ - * Author: Doug Porter (powerbuilder.geshi@gmail.com) - * Copyright: (c) 2009 Doug Porter - * Release Version: 1.0.8.6 - * Date Started: 2009/07/13 - * - * PowerBuilder (PowerScript) language file for GeSHi. - * - * Based on the TextPad Syntax file for PowerBuilder - * built by Rafi Avital - * - * CHANGES - * ------- - * 2009/07/13 (1.0.0) - * - First Release - * - * TODO (updated 2009/07/13) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PowerBuilder', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '~', - 'KEYWORDS' => array( - 1 => array( - 'alias', 'and', 'autoinstantiate', 'call', - 'case', 'catch', 'choose', 'close', 'commit', 'connect', - 'constant', 'continue', 'create', 'cursor', 'declare', - 'delete', 'describe', 'descriptor', 'destroy', 'disconnect', - 'do', 'dynamic', 'else', 'elseif', 'end', 'enumerated', - 'event', 'execute', 'exit', 'external', 'false', 'fetch', - 'first', 'for', 'forward', 'from', 'function', 'global', - 'goto', 'halt', 'if', 'immediate', 'indirect', 'insert', - 'into', 'intrinsic', 'is', 'last', 'library', 'loop', 'next', - 'not', 'of', 'on', 'open', 'or', 'parent', 'post', 'prepare', - 'prior', 'private', 'privateread', 'privatewrite', 'procedure', - 'protected', 'protectedread', 'protectedwrite', 'prototypes', - 'public', 'readonly', 'ref', 'return', 'rollback', 'rpcfunc', - 'select', 'selectblob', 'shared', 'static', 'step', 'subroutine', - 'super', 'system', 'systemread', 'systemwrite', 'then', 'this', - 'to', 'trigger', 'true', 'try', 'type', 'until', 'update', 'updateblob', - 'using', 'variables', 'where', 'while', 'with', 'within' - ), - 2 => array ( - 'blob', 'boolean', 'char', 'character', 'date', 'datetime', - 'dec', 'decimal', - 'double', 'int', 'integer', 'long', 'real', 'string', 'time', - 'uint', 'ulong', 'unsignedint', 'unsignedinteger', 'unsignedlong' - ), - 3 => array ( - 'abortretryignore!', 'actbegin!', 'acterror!', 'actesql!', - 'actgarbagecollect!', 'activate!', 'activatemanually!', - 'activateondoubleclick!', - 'activateongetfocus!', 'actline!', 'actobjectcreate!', 'actobjectdestroy!', - 'actprofile!', 'actroutine!', 'acttrace!', 'actual!', - 'actuser!', 'adoresultset!', 'adtdate!', 'adtdatetime!', - 'adtdefault!', 'adtdouble!', 'adttext!', 'adttime!', - 'aix!', 'alignatbottom!', 'alignatleft!', 'alignatright!', - 'alignattop!', 'all!', 'allowpartialchanges!', 'alpha!', - 'ansi!', 'any!', 'anycase!', 'anyfont!', - 'append!', 'application!', 'arabiccharset!', 'area3d!', - 'areagraph!', 'arraybounds!', 'arrow!', 'ascending!', - 'asstatement!', 'atbottom!', 'atleft!', 'atright!', - 'attop!', 'autosize!', 'background!', 'balticcharset!', - 'bar3dgraph!', 'bar3dobjgraph!', 'bargraph!', 'barstack3dobjgraph!', - 'barstackgraph!', 'bdiagonal!', 'beam!', 'begin!', - 'begindrag!', 'beginlabeledit!', 'beginrightdrag!', 'behind!', - 'blob!', 'bold!', 'boolean!', 'bottom!', - 'boundedarray!', 'box!', 'byreferenceargument!', 'byvalueargument!', - 'cancel!', 'cascade!', 'cascaded!', 'category!', - 'center!', 'character!', 'charsetansi!', 'charsetansiarabic!', - 'charsetansihebrew!', 'charsetdbcsjapanese!', 'charsetunicode!', 'checkbox!', - 'child!', 'childtreeitem!', 'chinesebig5!', 'classdefinition!', - 'classdefinitionobject!', 'classorstructuretype!', 'clicked!', 'clip!', - 'clipboard!', 'clipformatbitmap!', 'clipformatdib!', 'clipformatdif!', - 'clipformatenhmetafile!', 'clipformathdrop!', 'clipformatlocale!', - 'clipformatmetafilepict!', - 'clipformatoemtext!', 'clipformatpalette!', 'clipformatpendata!', 'clipformatriff!', - 'clipformatsylk!', 'clipformattext!', 'clipformattiff!', 'clipformatunicodetext!', - 'clipformatwave!', 'clock!', 'close!', 'closequery!', - 'col3dgraph!', 'col3dobjgraph!', 'colgraph!', - 'colstack3dobjgraph!', 'colstackgraph!', 'columnclick!', 'commandbutton!', - 'connection!', 'connectioninfo!', 'connectobject!', 'connectprivilege!', - 'connectwithadminprivilege!', 'constructor!', 'containsany!', 'containsembeddedonly!', - 'containslinkedonly!', 'contextinformation!', 'contextkeyword!', 'continuous!', - 'corbaobject!', 'corbaunion!', 'cplusplus!', 'cross!', - 'csv!', 'cumulative!', 'cumulativepercent!', 'currenttreeitem!', - 'customvisual!', 'dash!', 'dashdot!', 'dashdotdot!', - 'data!', 'datachange!', 'datamodified!', 'datastore!', - 'datawindow!', 'datawindowchild!', 'date!', 'datemask!', - 'datetime!', 'datetimemask!', 'dbase2!', 'dbase3!', - 'dberror!', 'deactivate!', 'decimal!', 'decimalmask!', - 'decorative!', 'default!', 'defaultcharset!', 'delete!', - 'deleteallitems!', 'deleteitem!', 'descending!', 'desktop!', - 'destructor!', 'detail!', 'diamond!', 'dif!', - 'dirall!', 'dirapplication!', 'dirdatawindow!', 'directionall!', - 'directiondown!', 'directionleft!', 'directionright!', 'directionup!', - 'dirfunction!', 'dirmenu!', 'dirpipeline!', 'dirproject!', - 'dirquery!', 'dirstructure!', 'diruserobject!', 'dirwindow!', - 'displayasactivexdocument!', 'displayascontent!', 'displayasicon!', 'dot!', - 'double!', 'doubleclicked!', 'dragdrop!', 'dragenter!', - 'dragleave!', 'dragobject!', 'dragwithin!', 'drawobject!', - 'dropdownlistbox!', 'dropdownpicturelistbox!', 'drophighlighttreeitem!', 'dwobject!', - 'dynamicdescriptionarea!', 'dynamicstagingarea!', 'easteuropecharset!', 'editchanged!', - 'editmask!', 'editmenu!', 'end!', 'endlabeledit!', - 'enterprise!', 'enterpriseonlyfeature!', 'enumeratedtype!', 'enumerationdefinition!', - 'enumerationitemdefinition!', 'environment!', 'error!', 'errorlogging!', - 'eventnotexisterror!', 'eventwrongprototypeerror!', 'excel!', 'excel5!', - 'exceptionfail!', 'exceptionignore!', 'exceptionretry!', - 'exceptionsubstitutereturnvalue!', - 'exclamation!', 'exclude!', 'exportapplication!', 'exportdatawindow!', - 'exportfunction!', 'exportmenu!', 'exportpipeline!', 'exportproject!', - 'exportquery!', 'exportstructure!', 'exportuserobject!', 'exportwindow!', - 'externalvisual!', 'extobject!', 'failonanyconflict!', 'fdiagonal!', - 'featurenotsupportederror!', 'filealreadyopenerror!', 'filecloseerror!', - 'fileexists!', - 'fileinvalidformaterror!', 'filemenu!', 'filenotopenerror!', 'filenotseterror!', - 'filereaderror!', 'filetyperichtext!', 'filetypetext!', 'filewriteerror!', - 'filter!', 'first!', 'firstvisibletreeitem!', 'fixed!', - 'floating!', 'focusrect!', 'footer!', 'foreground!', - 'frombeginning!', 'fromcurrent!', 'fromend!', 'functionobject!', - 'gb231charset!', 'getfocus!', 'graph!', 'graphicobject!', - 'graxis!', 'grdispattr!', 'greekcharset!', 'groupbox!', - 'hand!', 'hangeul!', 'header!', 'hebrewcharset!', - 'helpmenu!', 'hide!', 'horizontal!', 'hotlinkalarm!', - 'hourglass!', 'hppa!', 'hprogressbar!', 'hpux!', - 'hscrollbar!', 'hticksonboth!', 'hticksonbottom!', 'hticksonneither!', - 'hticksontop!', 'htmltable!', 'htrackbar!', 'i286!', - 'i386!', 'i486!', 'icon!', 'icons!', - 'idle!', 'importdatawindow!', 'indent!', 'index!', - 'inet!', 'information!', 'inplace!', 'inputfieldselected!', - 'insertitem!', 'inside!', 'integer!', 'internetresult!', - 'italic!', 'itemchanged!', 'itemchanging!', 'itemcollapsed!', - 'itemcollapsing!', 'itemerror!', 'itemexpanded!', 'itemexpanding!', - 'itemfocuschanged!', 'itempopulate!', 'jaguarorb!', 'johabcharset!', - 'justify!', 'key!', 'key0!', 'key1!', - 'key2!', 'key3!', 'key4!', 'key5!', - 'key6!', 'key7!', 'key8!', 'key9!', - 'keya!', 'keyadd!', 'keyalt!', 'keyapps!', - 'keyb!', 'keyback!', 'keybackquote!', 'keybackslash!', - 'keyc!', 'keycapslock!', 'keycomma!', 'keycontrol!', - 'keyd!', 'keydash!', 'keydecimal!', 'keydelete!', - 'keydivide!', 'keydownarrow!', 'keye!', 'keyend!', - 'keyenter!', 'keyequal!', 'keyescape!', 'keyf!', - 'keyf1!', 'keyf10!', 'keyf11!', 'keyf12!', - 'keyf2!', 'keyf3!', 'keyf4!', 'keyf5!', - 'keyf6!', 'keyf7!', 'keyf8!', 'keyf9!', - 'keyg!', 'keyh!', 'keyhome!', 'keyi!', - 'keyinsert!', 'keyj!', 'keyk!', 'keyl!', - 'keyleftarrow!', 'keyleftbracket!', 'keyleftbutton!', 'keyleftwindows!', - 'keym!', 'keymiddlebutton!', 'keymultiply!', 'keyn!', - 'keynull!', 'keynumlock!', 'keynumpad0!', 'keynumpad1!', - 'keynumpad2!', 'keynumpad3!', 'keynumpad4!', 'keynumpad5!', - 'keynumpad6!', 'keynumpad7!', 'keynumpad8!', 'keynumpad9!', - 'keyo!', 'keyp!', 'keypagedown!', 'keypageup!', - 'keypause!', 'keyperiod!', 'keyprintscreen!', 'keyq!', - 'keyquote!', 'keyr!', 'keyrightarrow!', 'keyrightbracket!', - 'keyrightbutton!', 'keyrightwindows!', 'keys!', 'keyscrolllock!', - 'keysemicolon!', 'keyshift!', 'keyslash!', 'keyspacebar!', - 'keysubtract!', 'keyt!', 'keytab!', 'keyu!', - 'keyuparrow!', 'keyv!', 'keyw!', 'keyword!', - 'keyx!', 'keyy!', 'keyz!', 'languageafrikaans!', - 'languagealbanian!', 'languagearabicalgeria!', 'languagearabicbahrain!', - 'languagearabicegypt!', - 'languagearabiciraq!', 'languagearabicjordan!', 'languagearabickuwait!', - 'languagearabiclebanon!', - 'languagearabiclibya!', 'languagearabicmorocco!', 'languagearabicoman!', - 'languagearabicqatar!', - 'languagearabicsaudiarabia!', 'languagearabicsyria!', 'languagearabictunisia!', - 'languagearabicuae!', - 'languagearabicyemen!', 'languagebasque!', 'languagebulgarian!', 'languagebyelorussian!', - 'languagecatalan!', 'languagechinese!', 'languagechinesehongkong!', 'languagechinesesimplified!', - 'languagechinesesingapore!', 'languagechinesetraditional!', 'languagecroatian!', 'languageczech!', - 'languagedanish!', 'languagedutch!', 'languagedutchbelgian!', 'languagedutchneutral!', - 'languageenglish!', 'languageenglishaustralian!', 'languageenglishcanadian!', - 'languageenglishirish!', - 'languageenglishnewzealand!', 'languageenglishsouthafrica!', 'languageenglishuk!', - 'languageenglishus!', - 'languageestonian!', 'languagefaeroese!', 'languagefarsi!', 'languagefinnish!', - 'languagefrench!', 'languagefrenchbelgian!', 'languagefrenchcanadian!', 'languagefrenchluxembourg!', - 'languagefrenchneutral!', 'languagefrenchswiss!', 'languagegerman!', 'languagegermanaustrian!', - 'languagegermanliechtenstein!', 'languagegermanluxembourg!', 'languagegermanneutral!', - 'languagegermanswiss!', - 'languagegreek!', 'languagehebrew!', 'languagehindi!', 'languagehungarian!', - 'languageicelandic!', 'languageindonesian!', 'languageitalian!', 'languageitalianneutral!', - 'languageitalianswiss!', 'languagejapanese!', 'languagekorean!', 'languagekoreanjohab!', - 'languagelatvian!', 'languagelithuanian!', 'languagemacedonian!', 'languagemaltese!', - 'languageneutral!', 'languagenorwegian!', 'languagenorwegianbokmal!', 'languagenorwegiannynorsk!', - 'languagepolish!', 'languageportuguese!', 'languageportuguese_brazilian!', - 'languageportugueseneutral!', - 'languagerhaetoromanic!', 'languageromanian!', 'languageromanianmoldavia!', 'languagerussian!', - 'languagerussianmoldavia!', 'languagesami!', 'languageserbian!', 'languageslovak!', - 'languageslovenian!', 'languagesorbian!', 'languagesortnative!', 'languagesortunicode!', - 'languagespanish!', 'languagespanishcastilian!', 'languagespanishmexican!', 'languagespanishmodern!', - 'languagesutu!', 'languageswedish!', 'languagesystemdefault!', 'languagethai!', - 'languagetsonga!', 'languagetswana!', 'languageturkish!', 'languageukrainian!', - 'languageurdu!', 'languageuserdefault!', 'languagevenda!', 'languagexhosa!', - 'languagezulu!', 'last!', 'layer!', 'layered!', - 'Left!', 'leftmargin!', 'line!', 'line3d!', - 'linear!', 'linecolor!', 'linedown!', 'linegraph!', - 'lineleft!', 'linemode!', 'lineright!', 'lineup!', - 'linkupdateautomatic!', 'linkupdatemanual!', 'listbox!', 'listview!', - 'listviewitem!', 'listviewlargeicon!', 'listviewlist!', 'listviewreport!', - 'listviewsmallicon!', 'lockread!', 'lockreadwrite!', 'lockwrite!', - 'log10!', 'loge!', 'long!', 'losefocus!', - 'lower!', 'lowered!', 'm68000!', 'm68020!', - 'm68030!', 'm68040!', 'maccharset!', 'macintosh!', - 'mailattach!', 'mailbcc!', 'mailbodyasfile!', 'mailcc!', - 'maildownload!', 'mailentiremessage!', 'mailenvelopeonly!', 'mailfiledescription!', - 'mailmessage!', 'mailnewsession!', 'mailnewsessionwithdownload!', 'mailole!', - 'mailolestatic!', 'mailoriginator!', 'mailrecipient!', 'mailreturnaccessdenied!', - 'mailreturnattachmentnotfound!', 'mailreturnattachmentopenfailure!', - 'mailreturnattachmentwritefailure!', 'mailreturndiskfull!', - 'mailreturnfailure!', 'mailreturninsufficientmemory!', 'mailreturninvalidmessage!', - 'mailreturnloginfailure!', - 'mailreturnmessageinuse!', 'mailreturnnomessages!', 'mailreturnsuccess!', 'mailreturntexttoolarge!', - 'mailreturntoomanyfiles!', 'mailreturntoomanyrecipients!', 'mailreturntoomanysessions!', - 'mailreturnunknownrecipient!', - 'mailreturnuserabort!', 'mailsession!', 'mailsuppressattachments!', 'mailto!', - 'main!', 'maximized!', 'mdi!', 'mdiclient!', - 'mdihelp!', 'menu!', 'menucascade!', 'menuitemtypeabout!', - 'menuitemtypeexit!', 'menuitemtypehelp!', 'menuitemtypenormal!', 'merge!', - 'message!', 'minimized!', 'mips!', 'modelexistserror!', - 'modelnotexistserror!', 'modern!', 'modified!', 'mousedown!', - 'mousemove!', 'mouseup!', 'moved!', 'multiline!', - 'multilineedit!', 'mutexcreateerror!', 'new!', 'newmodified!', - 'next!', 'nexttreeitem!', 'nextvisibletreeitem!', 'noborder!', - 'noconnectprivilege!', 'nolegend!', 'none!', 'nonvisualobject!', - 'normal!', 'nosymbol!', 'notic!', 'notmodified!', - 'notopmost!', 'notype!', 'numericmask!', 'objhandle!', - 'oem!', 'off!', 'offsite!', 'ok!', - 'okcancel!', 'olecontrol!', 'olecustomcontrol!', 'oleobject!', - 'olestorage!', 'olestream!', 'oletxnobject!', 'omcontrol!', - 'omcustomcontrol!', 'omembeddedcontrol!', 'omobject!', 'omstorage!', - 'omstream!', 'open!', 'orb!', 'original!', - 'osf1!', 'other!', 'outside!', 'oval!', - 'pagedown!', 'pageleft!', 'pageright!', 'pageup!', - 'parenttreeitem!', 'pbtocppobject!', 'pentium!', 'percentage!', - 'picture!', 'picturebutton!', 'picturehyperlink!', 'picturelistbox!', - 'pictureselected!', 'pie3d!', 'piegraph!', 'pipeend!', - 'pipeline!', 'pipemeter!', 'pipestart!', 'popup!', - 'powerobject!', 'powerpc!', 'powerrs!', 'ppc601!', - 'ppc603!', 'ppc604!', 'previewdelete!', 'previewfunctionreselectrow!', - 'previewfunctionretrieve!', 'previewfunctionupdate!', 'previewinsert!', 'previewselect!', - 'previewupdate!', 'previoustreeitem!', 'previousvisibletreeitem!', 'primary!', - 'printend!', 'printfooter!', 'printheader!', 'printpage!', - 'printstart!', 'prior!', 'private!', 'process!', - 'profilecall!', 'profileclass!', 'profileline!', 'profileroutine!', - 'profiling!', 'protected!', 'psreport!', 'public!', - 'question!', 'radiobutton!', 'raised!', 'rbuttondown!', - 'rbuttonup!', 'read!', 'readonlyargument!', 'real!', - 'rectangle!', 'regbinary!', 'regexpandstring!', 'reglink!', - 'regmultistring!', 'regstring!', 'regulong!', 'regulongbigendian!', - 'remoteexec!', 'remotehotlinkstart!', 'remotehotlinkstop!', 'remoteobject!', - 'remoterequest!', 'remotesend!', 'rename!', 'replace!', - 'resize!', 'resizeborder!', 'response!', 'resultset!', - 'resultsets!', 'retrieveend!', 'retrieverow!', 'retrievestart!', - 'retrycancel!', 'richtextedit!', 'Right!', 'rightclicked!', - 'rightdoubleclicked!', 'rightmargin!', 'rnddays!', 'rnddefault!', - 'rndhours!', 'rndmicroseconds!', 'rndminutes!', 'rndmonths!', - 'rndnumber!', 'rndseconds!', 'rndyears!', 'roman!', - 'roottreeitem!', 'roundrectangle!', 'routineesql!', 'routineevent!', - 'routinefunction!', 'routinegarbagecollection!', 'routineobjectcreation!', - 'routineobjectdestruction!', - 'routineroot!', 'rowfocuschanged!', 'russiancharset!', 'save!', - 'scalartype!', 'scattergraph!', 'script!', 'scriptdefinition!', - 'scriptevent!', 'scriptfunction!', 'scrollhorizontal!', 'scrollvertical!', - 'selected!', 'selectionchanged!', 'selectionchanging!', 'series!', - 'service!', 'shade!', 'shadowbox!', 'shared!', - 'sharedobjectcreateinstanceerror!', 'sharedobjectcreatepbsessionerror!', - 'sharedobjectexistserror!', 'sharedobjectnotexistserror!', - 'shiftjis!', 'show!', 'simpletype!', 'simpletypedefinition!', - 'singlelineedit!', 'size!', 'sizenesw!', 'sizens!', - 'sizenwse!', 'sizewe!', 'sol2!', 'solid!', - 'sort!', 'sourcepblerror!', 'spacing1!', 'spacing15!', - 'spacing2!', 'sparc!', 'sqlinsert!', 'sqlpreview!', - 'square!', 'sslcallback!', 'sslserviceprovider!', 'statichyperlink!', - 'statictext!', 'stgdenynone!', 'stgdenyread!', 'stgdenywrite!', - 'stgexclusive!', 'stgread!', 'stgreadwrite!', 'stgwrite!', - 'stopsign!', 'straddle!', 'streammode!', 'stretch!', - 'strikeout!', 'string!', 'stringmask!', 'structure!', - 'stylebox!', 'stylelowered!', 'styleraised!', 'styleshadowbox!', - 'subscript!', 'success!', 'superscript!', 'swiss!', - 'sylk!', 'symbol!', 'symbolhollowbox!', 'symbolhollowcircle!', - 'symbolhollowdiamond!', 'symbolhollowdownarrow!', 'symbolhollowuparrow!', 'symbolplus!', - 'symbolsolidbox!', 'symbolsolidcircle!', 'symbolsoliddiamond!', 'symbolsoliddownarrow!', - 'symbolsoliduparrow!', 'symbolstar!', 'symbolx!', 'system!', - 'systemerror!', 'systemfunctions!', 'systemkey!', 'tab!', - 'tabsonbottom!', 'tabsonbottomandtop!', 'tabsonleft!', 'tabsonleftandright!', - 'tabsonright!', 'tabsonrightandleft!', 'tabsontop!', 'tabsontopandbottom!', - 'text!', 'thaicharset!', 'thread!', 'tile!', - 'tilehorizontal!', 'time!', 'timemask!', 'timer!', - 'timernone!', 'timing!', 'tobottom!', 'toolbarmoved!', - 'top!', 'topic!', 'topmost!', 'totop!', - 'traceactivitynode!', 'traceatomic!', 'tracebeginend!', 'traceerror!', - 'traceesql!', 'tracefile!', 'tracegarbagecollect!', 'tracegeneralerror!', - 'tracein!', 'traceline!', 'tracenomorenodes!', 'tracenotstartederror!', - 'traceobject!', 'traceout!', 'traceroutine!', 'tracestartederror!', - 'tracetree!', 'tracetreeerror!', 'tracetreeesql!', 'tracetreegarbagecollect!', - 'tracetreeline!', 'tracetreenode!', 'tracetreeobject!', 'tracetreeroutine!', - 'tracetreeuser!', 'traceuser!', 'transaction!', 'transactionserver!', - 'transparent!', 'transport!', 'treeview!', 'treeviewitem!', - 'turkishcharset!', 'typeboolean!', 'typecategory!', 'typecategoryaxis!', - 'typecategorylabel!', 'typedata!', 'typedate!', 'typedatetime!', - 'typedecimal!', 'typedefinition!', 'typedouble!', 'typegraph!', - 'typeinteger!', 'typelegend!', 'typelong!', 'typereal!', - 'typeseries!', 'typeseriesaxis!', 'typeserieslabel!', 'typestring!', - 'typetime!', 'typetitle!', 'typeuint!', 'typeulong!', - 'typeunknown!', 'typevalueaxis!', 'typevaluelabel!', 'ultrasparc!', - 'unboundedarray!', 'underline!', 'underlined!', 'unsignedinteger!', - 'unsignedlong!', 'unsorted!', 'uparrow!', 'updateend!', - 'updatestart!', 'upper!', 'userdefinedsort!', 'userobject!', - 'variable!', 'variableargument!', 'variablecardinalitydefinition!', 'variabledefinition!', - 'variableglobal!', 'variableinstance!', 'variablelocal!', 'variableshared!', - 'varlistargument!', 'vbxvisual!', 'vcenter!', 'vertical!', - 'vietnamesecharset!', 'viewchange!', 'vprogressbar!', 'vscrollbar!', - 'vticksonboth!', 'vticksonleft!', 'vticksonneither!', 'vticksonright!', - 'vtrackbar!', 'window!', 'windowmenu!', 'windowobject!', - 'windows!', 'windowsnt!', 'wk1!', 'wks!', - 'wmf!', 'write!', 'xpixelstounits!', 'xunitstopixels!', - 'xvalue!', 'yesno!', 'yesnocancel!', 'ypixelstounits!', - 'yunitstopixels!', - 'yvalue!', - 'zoom!' - ) - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']', '{', '}'), - 1 => array('|'), - 2 => array('+', '-', '*', '/'), - 3 => array('=', '<', '>', '^') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #008000; font-weight: bold;', - 2 => 'color: #990099; font-weight: bold;', - 3 => 'color: #330099; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #0000ff; font-weight: bold;', - 'MULTI' => 'color: #0000ff; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #800000;' - ), - 'NUMBERS' => array( - 0 => 'color: #330099; font-weight: bold;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;', - 1 => 'color: #ffff00; background-color:#993300; font-weight: bold', - 2 => 'color: #000000;', - 3 => 'color: #000000;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #800000; font-weight: bold;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/powershell.php b/system/application/libraries/geshi/powershell.php deleted file mode 100644 index fe8a5da07..000000000 --- a/system/application/libraries/geshi/powershell.php +++ /dev/null @@ -1,277 +0,0 @@ -<?php -/************************************************************************************* - * powershell.php - * --------------------------------- - * Author: Frode Aarebrot (frode@aarebrot.net) - * Copyright: (c) 2008 Frode Aarebrot (http://www.aarebrot.net) - * Release Version: 1.0.8.6 - * Date Started: 2008/06/20 - * - * PowerShell language file for GeSHi. - * - * I've tried to make this language file as true to the highlighting in PowerGUI as - * possible. Unfortunately it's not 100% complete, although it is pretty close. - * - * I've included some classes and their members, but there's tons and tons of these. - * I suggest you add the ones you need yourself. I've included a few Sharepoint ones - * in this language file. - * - * CHANGES - * ------- - * 2008/06/20 (1.0.8) - * - First Release - * - * TODO (updated 2008/06/20) - * ------------------------- - * - Color text between Cmdlets/Aliases and pipe/end-of-line - * - Try and get -- and ++ to work in the KEYWORDS array with the other operators - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PowerShell', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '`', - 'KEYWORDS' => array( - 1 => array( - // Cmdlets - 'Add-Content', 'Add-History', 'Add-Member', 'Add-PSSnapin', 'Clear-Content', 'Clear-Item', - 'Clear-ItemProperty', 'Clear-Variable', 'Compare-Object', 'ConvertFrom-SecureString', - 'Convert-Path', 'ConvertTo-Html', 'ConvertTo-SecureString', 'Copy-Item', 'Copy-ItemProperty', - 'Export-Alias', 'Export-Clixml', 'Export-Console', 'Export-Csv', 'ForEach-Object', - 'Format-Custom', 'Format-List', 'Format-Table', 'Format-Wide', 'Get-Acl', 'Get-Alias', - 'Get-AuthenticodeSignature', 'Get-ChildItem', 'Get-Command', 'Get-Content', 'Get-Credential', - 'Get-Culture', 'Get-Date', 'Get-EventLog', 'Get-ExecutionPolicy', 'Get-Help', 'Get-History', - 'Get-Host', 'Get-Item', 'Get-ItemProperty', 'Get-Location', 'Get-Member', - 'Get-PfxCertificate', 'Get-Process', 'Get-PSDrive', 'Get-PSProvider', 'Get-PSSnapin', - 'Get-Service', 'Get-TraceSource', 'Get-UICulture', 'Get-Unique', 'Get-Variable', - 'Get-WmiObject', 'Group-Object', 'Import-Alias', 'Import-Clixml', 'Import-Csv', - 'Invoke-Expression', 'Invoke-History', 'Invoke-Item', 'Join-Path', 'Measure-Command', - 'Measure-Object', 'Move-Item', 'Move-ItemProperty', 'New-Alias', 'New-Item', - 'New-ItemProperty', 'New-Object', 'New-PSDrive', 'New-Service', 'New-TimeSpan', - 'New-Variable', 'Out-Default', 'Out-File', 'Out-Host', 'Out-Null', 'Out-Printer', - 'Out-String', 'Pop-Location', 'Push-Location', 'Read-Host', 'Remove-Item', - 'Remove-ItemProperty', 'Remove-PSDrive', 'Remove-PSSnapin', 'Remove-Variable', 'Rename-Item', - 'Rename-ItemProperty', 'Resolve-Path', 'Restart-Service', 'Resume-Service', 'Select-Object', - 'Select-String', 'Set-Acl', 'Set-Alias', 'Set-AuthenticodeSignature', 'Set-Content', - 'Set-Date', 'Set-ExecutionPolicy', 'Set-Item', 'Set-ItemProperty', 'Set-Location', - 'Set-PSDebug', 'Set-Service', 'Set-TraceSource', 'Set-Variable', 'Sort-Object', 'Split-Path', - 'Start-Service', 'Start-Sleep', 'Start-Transcript', 'Stop-Process', 'Stop-Service', - 'Stop-Transcript', 'Suspend-Service', 'Tee-Object', 'Test-Path', 'Trace-Command', - 'Update-FormatData', 'Update-TypeData', 'Where-Object', 'Write-Debug', 'Write-Error', - 'Write-Host', 'Write-Output', 'Write-Progress', 'Write-Verbose', 'Write-Warning' - ), - 2 => array( - // Aliases - 'ac', 'asnp', 'clc', 'cli', 'clp', 'clv', 'cpi', 'cpp', 'cvpa', 'diff', 'epal', 'epcsv', 'fc', - 'fl', 'ft', 'fw', 'gal', 'gc', 'gci', 'gcm', 'gdr', 'ghy', 'gi', 'gl', 'gm', - 'gp', 'gps', 'group', 'gsv', 'gsnp', 'gu', 'gv', 'gwmi', 'iex', 'ihy', 'ii', 'ipal', 'ipcsv', - 'mi', 'mp', 'nal', 'ndr', 'ni', 'nv', 'oh', 'rdr', 'ri', 'rni', 'rnp', 'rp', 'rsnp', 'rv', - 'rvpa', 'sal', 'sasv', 'sc', 'select', 'si', 'sl', 'sleep', 'sort', 'sp', 'spps', 'spsv', 'sv', - 'tee', 'write', 'cat', 'cd', 'clear', 'cp', 'h', 'history', 'kill', 'lp', 'ls', - 'mount', 'mv', 'popd', 'ps', 'pushd', 'pwd', 'r', 'rm', 'rmdir', 'echo', 'cls', 'chdir', - 'copy', 'del', 'dir', 'erase', 'move', 'rd', 'ren', 'set', 'type' - ), - 3 => array( - // Reserved words - 'break', 'continue', 'do', 'for', 'foreach', 'while', 'if', 'switch', 'until', 'where', - 'function', 'filter', 'else', 'elseif', 'in', 'return', 'param', 'throw', 'trap' - ), - 4 => array( - // Operators - '-eq', '-ne', '-gt', '-ge', '-lt', '-le', '-ieq', '-ine', '-igt', '-ige', '-ilt', '-ile', - '-ceq', '-cne', '-cgt', '-cge', '-clt', '-cle', '-like', '-notlike', '-match', '-notmatch', - '-ilike', '-inotlike', '-imatch', '-inotmatch', '-clike', '-cnotlike', '-cmatch', '-cnotmatch', - '-contains', '-notcontains', '-icontains', '-inotcontains', '-ccontains', '-cnotcontains', - '-isnot', '-is', '-as', '-replace', '-ireplace', '-creplace', '-and', '-or', '-band', '-bor', - '-not', '-bnot', '-f', '-casesensitive', '-exact', '-file', '-regex', '-wildcard' - ), - 5 => array( - // Options - '-Year', '-Wrap', '-Word', '-Width', '-WhatIf', '-Wait', '-View', '-Verbose', '-Verb', - '-Variable', '-ValueOnly', '-Value', '-Unique', '-UFormat', '-TypeName', '-Trace', '-TotalCount', - '-Title', '-TimestampServer', '-TargetObject', '-Syntax', '-SyncWindow', '-Sum', '-String', - '-Strict', '-Stream', '-Step', '-Status', '-Static', '-StartupType', '-Start', '-StackName', - '-Stack', '-SourceId', '-SimpleMatch', '-ShowError', '-Separator', '-SecureString', '-SecureKey', - '-SecondValue', '-SecondsRemaining', '-Seconds', '-Second', '-Scope', '-Root', '-Role', - '-Resolve', '-RemoveListener', '-RemoveFileListener', '-Registered', '-ReferenceObject', - '-Recurse', '-RecommendedAction', '-ReadCount', '-Quiet', '-Query', '-Qualifier', '-PSSnapin', - '-PSProvider', '-PSHost', '-PSDrive', '-PropertyType', '-Property', '-Prompt', '-Process', - '-PrependPath', '-PercentComplete', '-Pattern', '-PathType', '-Path', '-PassThru', '-ParentId', - '-Parent', '-Parameter', '-Paging', '-OutVariable', '-OutBuffer', '-Option', '-OnType', '-Off', - '-Object', '-Noun', '-NoTypeInformation', '-NoQualifier', '-NoNewline', '-NoElement', - '-NoClobber', '-NewName', '-Newest', '-Namespace', '-Name', '-Month', '-Minutes', '-Minute', - '-Minimum', '-Milliseconds', '-Message', '-MemberType', '-Maximum', '-LogName', '-LiteralPath', - '-LiteralName', '-ListenerOption', '-List', '-Line', '-Leaf', '-Last', '-Key', '-ItemType', - '-IsValid', '-IsAbsolute', '-InputObject', '-IncludeEqual', '-IncludeChain', '-Include', - '-IgnoreWhiteSpace', '-Id', '-Hours', '-Hour', '-HideTableHeaders', '-Head', '-GroupBy', - '-Functionality', '-Full', '-Format', '-ForegroundColor', '-Force', '-First', '-FilterScript', - '-Filter', '-FilePath', '-Expression', '-ExpandProperty', '-Expand', '-ExecutionPolicy', - '-ExcludeProperty', '-ExcludeDifferent', '-Exclude', '-Exception', '-Examples', '-ErrorVariable', - '-ErrorRecord', '-ErrorId', '-ErrorAction', '-End', '-Encoding', '-DisplayName', '-DisplayHint', - '-DisplayError', '-DifferenceObject', '-Detailed', '-Destination', '-Description', '-Descending', - '-Depth', '-DependsOn', '-Delimiter', '-Debugger', '-Debug', '-Days', '-Day', '-Date', - '-CurrentOperation', '-Culture', '-Credential', '-Count', '-Container', '-Confirm', - '-ComputerName', '-Component', '-Completed', '-ComObject', '-CommandType', '-Command', - '-Column', '-Class', '-ChildPath', '-Character', '-Certificate', '-CategoryTargetType', - '-CategoryTargetName', '-CategoryReason', '-CategoryActivity', '-Category', '-CaseSensitive', - '-Body', '-BinaryPathName', '-Begin', '-BackgroundColor', '-Average', '-AutoSize', '-Audit', - '-AsString', '-AsSecureString', '-AsPlainText', '-As', '-ArgumentList', '-AppendPath', '-Append', - '-Adjust', '-Activity', '-AclObject' - ), - 6 => array( - '_','args','DebugPreference','Error','ErrorActionPreference', - 'foreach','Home','Host','Input','LASTEXITCODE','MaximumAliasCount', - 'MaximumDriveCount','MaximumFunctionCount','MaximumHistoryCount', - 'MaximumVariableCount','OFS','PsHome', - 'ReportErrorShowExceptionClass','ReportErrorShowInnerException', - 'ReportErrorShowSource','ReportErrorShowStackTrace', - 'ShouldProcessPreference','ShouldProcessReturnPreference', - 'StackTrace','VerbosePreference','WarningPreference','PWD' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '=', '<', '>', '@', '|', '&', ',', '?', - '+=', '-=', '*=', '/=', '%=', '*', '/', '%', '!', '+', '-', '++', '--' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #008080; font-weight: bold;', - 2 => 'color: #008080; font-weight: bold;', - 3 => 'color: #0000FF;', - 4 => 'color: #FF0000;', - 5 => 'color: #008080; font-style: italic;', - 6 => 'color: #000080;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;', - 'MULTI' => 'color: #008000;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #800000;' - ), - 'NUMBERS' => array( - 0 => 'color: #804000;' - ), - 'METHODS' => array( - 0 => 'color: pink;' - ), - 'SYMBOLS' => array( - 0 => 'color: pink;' - ), - 'REGEXPS' => array( - 0 => 'color: #800080;', - 3 => 'color: #008080;', - 4 => 'color: #008080;', - 5 => 'color: #800000;', - 6 => 'color: #000080;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => 'about:blank', - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // special after pipe - 3 => array( - GESHI_SEARCH => '(\[)(int|long|string|char|bool|byte|double|decimal|float|single|regex|array|xml|scriptblock|switch|hashtable|type|ref|psobject|wmi|wmisearcher|wmiclass|object)((\[.*\])?\])', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => 'si', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Classes - 4 => array( - GESHI_SEARCH => '(\[)(System\.Reflection\.Assembly|System\.Net\.CredentialCache|Microsoft\.SharePoint\.SPFileLevel|Microsoft\.SharePoint\.Publishing\.PublishingWeb|Microsoft\.SharePoint\.Publishing|Microsoft\.SharePoint\.SPWeb)(\])', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '\1', - GESHI_AFTER => '\3' - ), - // Members - // There's about a hundred million of these, add the ones you need as you need them - 5 => array ( - GESHI_SEARCH => '(::)(ReflectionOnlyLoadFrom|ReflectionOnlyLoad|ReferenceEquals|LoadWithPartialName|LoadFrom|LoadFile|Load|GetExecutingAssembly|GetEntryAssembly|GetCallingAssembly|GetAssembly|Equals|DefaultNetworkCredentials|DefaultCredentials|CreateQualifiedName|Checkout|Draft|Published|IsPublishingWeb)', - GESHI_REPLACE => '\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\1', - GESHI_AFTER => '' - ), - // Special variables - 6 => array( - GESHI_SEARCH => '(\$)(\$[_\^]?|\?)(?!\w)', - GESHI_REPLACE => '\1\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // variables - //BenBE: Please note that changes here and in Keyword group 6 have to be synchronized in order to work properly. - //This Regexp must only match, if keyword group 6 doesn't. If this assumption fails - //Highlighting of the keywords will be incomplete or incorrect! - 0 => "(?<!\\\$|>)[\\\$](\w+)(?=[^|\w])", - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 4 => array( - 'DISALLOWED_AFTER' => '(?![a-zA-Z])', - 'DISALLOWED_BEFORE' => '' - ), - 6 => array( - 'DISALLOWED_BEFORE' => '(?<!\$>)\$' - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/progress.php b/system/application/libraries/geshi/progress.php deleted file mode 100644 index 3824e7b0b..000000000 --- a/system/application/libraries/geshi/progress.php +++ /dev/null @@ -1,485 +0,0 @@ -<?php -/************************************************************************************* - * progress.php - * -------- - * Author: Marco Aurelio de Pasqual (marcop@hdi.com.br) - * Copyright: (c) 2008 Marco Aurelio de Pasqual, Benny Baumann (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2008/07/11 - * - * Progress language file for GeSHi. - * - * CHANGES - * ------- - * 2008/07/11 (1.0.8) - * - First Release - * - * TODO (updated 2008/07/11) - * ------------------------- - * * Clean up the keyword list - * * Sort Keyword lists by Control Structures, Predefined functions and other important keywords - * * Complete language support - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'Progress', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array ( - 1 => array( - 'ACCUMULATE','APPLY','ASSIGN','BELL','QUERY', - 'BUFFER-COMPARE','BUFFER-COPY','CALL','CASE', - 'CHOOSE','CLASS','CLOSE QUERY','each','WHERE', - 'CLOSE STORED-PROCEDURE','COLOR','COMPILE','CONNECT', - 'CONSTRUCTOR','COPY-LOB','CREATE','CREATE ALIAS', - 'CREATE BROWSE','CREATE BUFFER','CREATE CALL','CREATE CLIENT-PRINCIPAL', - 'CREATE DATABASE','CREATE DATASET','CREATE DATA-SOURCE','CREATE QUERY', - 'CREATE SAX-attributeS','CREATE SAX-READER','CREATE SAX-WRITER','CREATE SERVER', - 'CREATE SERVER-SOCKET','CREATE SOAP-HEADER','CREATE SOAP-HEADER-ENTRYREF','CREATE SOCKET', - 'CREATE TEMP-TABLE','CREATE WIDGET','CREATE widget-POOL','CREATE X-DOCUMENT', - 'CREATE X-NODEREF','CURRENT-LANGUAGE','CURRENT-VALUE','DDE ADVISE', - 'DDE EXECUTE','DDE GET','DDE INITIATE','DDE REQUEST', - 'DDE SEND','DDE TERMINATE','DEFINE BROWSE','DEFINE BUFFER','DEFINE', - 'DEFINE BUTTON','DEFINE DATASET','DEFINE DATA-SOURCE','DEFINE FRAME','DEF','VAR', - 'DEFINE IMAGE','DEFINE MENU','DEFINE PARAMETER','DEFINE property','PARAM', - 'DEFINE QUERY','DEFINE RECTANGLE','DEFINE STREAM','DEFINE SUB-MENU', - 'DEFINE TEMP-TABLE','DEFINE WORKFILE','DEFINE WORK-TABLE', - 'DELETE','DELETE ALIAS','DELETE object','DELETE PROCEDURE', - 'DELETE widget','DELETE widget-POOL','DESTRUCTOR','DICTIONARY', - 'DISABLE','DISABLE TRIGGERS','DISCONNECT','DISPLAY', - 'DO','DOS','DOWN','DYNAMIC-CURRENT-VALUE', - 'ELSE','EMPTY TEMP-TABLE','ENABLE','END', - 'ENTRY','FIND','AND', - 'FIX-CODEPAGE','FOR','FORM','FRAME-VALUE', - 'GET','GET-KEY-VALUE','HIDE','IF', - 'IMPORT','INPUT CLEAR','INPUT CLOSE','INPUT FROM','input', - 'INPUT THROUGH','INPUT-OUTPUT CLOSE','INPUT-OUTPUT THROUGH', - 'INTERFACE','LEAVE','BREAK', - 'LOAD-PICTURE','MESSAGE','method','NEXT','prev', - 'NEXT-PROMPT','ON','OPEN QUERY','OS-APPEND', - 'OS-COMMAND','OS-COPY','OS-CREATE-DIR','OS-DELETE', - 'OS-RENAME','OUTPUT CLOSE','OUTPUT THROUGH','OUTPUT TO', - 'OVERLAY','PAGE','PAUSE','PROCEDURE', - 'PROCESS EVENTS','PROMPT-FOR','PROMSGS','PROPATH', - 'PUBLISH','PUT','PUT CURSOR','PUT SCREEN', - 'PUT-BITS','PUT-BYTE','PUT-BYTES','PUT-DOUBLE', - 'PUT-FLOAT','PUT-INT64','PUT-KEY-VALUE','PUT-LONG', - 'PUT-SHORT','PUT-STRING','PUT-UNSIGNED-LONG','PUT-UNSIGNED-SHORT', - 'QUIT','RAW-TRANSFER','READKEY','RELEASE', - 'RELEASE EXTERNAL','RELEASE object','REPEAT','REPOSITION', - 'RUN','RUN STORED-PROCEDURE','RUN SUPER', - 'SAVE CACHE','SCROLL','SEEK','SET', - 'SET-BYTE-ORDER','SET-POINTER-VALUE','SET-SIZE','SHOW-STATS', - 'STATUS','STOP','SUBSCRIBE','SUBSTRING', - 'system-DIALOG COLOR','system-DIALOG FONT','system-DIALOG GET-DIR','system-DIALOG GET-FILE', - 'system-DIALOG PRINTER-SETUP','system-HELP','THEN','THIS-object', - 'TRANSACTION-MODE AUTOMATIC','TRIGGER PROCEDURE','UNDERLINE','UNDO', - 'UNIX','UNLOAD','UNSUBSCRIBE','UP','STRING', - 'UPDATE','USE','USING','substr','SKIP','CLOSE', - 'VIEW','WAIT-FOR','MODULO','NE','AVAIL', - 'NOT','OR','&GLOBAL-DEFINE','&IF','UNFORMATTED','NO-PAUSE', - '&THEN','&ELSEIF','&ELSE','&ENDIF','OPEN','NO-WAIT', - '&MESSAGE','&SCOPED-DEFINE','&UNDEFINE','DEFINED', - 'BROWSE','BUTTON','COMBO-BOX','CONTROL-FRAME', - 'DIALOG-BOX','EDITOR','FIELD-GROUP','FILL-IN', - 'FRAME','IMAGE','LITERAL','MENU', - 'MENU-ITEM','RADIO-SET','RECTANGLE','SELECTION-LIST', - 'SLIDER','SUB-MENU','TEXT','TOGGLE-BOX', - 'WINDOW','WITH','AT','OF','EDITING','ON ENDKEY','output', - 'ON ERROR','ON QUIT','ON STOP','PRESELECT', - 'QUERY-TUNING','SIZE','Trigger','VIEW-AS','ALERT-BOX', - 'Buffer','Data-relation','ProDataSet','SAX-attributes', - 'SAX-reader','SAX-writer','Server socket','SOAP-fault', - 'SOAP-header','SOAP-header-entryref','Socket','Temp-table', - 'X-noderef','Height','Left','Top','TO', - 'Width','ACTIVE-WINDOW','AUDIT-CONTROL','FIRST','LAST', - 'AUDIT-POLICY','CLIPBOARD','CODEBASE-LOCATOR','COLOR-TABLE', - 'COMPILER','COM-SELF','DEBUGGER','DEFAULT-WINDOW', - 'ERROR-STATUS','FILE-INFO','FOCUS','FONT-TABLE', - 'LAST-EVENT','LOG-MANAGER','RCODE-INFO','SECURITY-POLICY', - 'SELF','SESSION','SOURCE-PROCEDURE','TARGET-PROCEDURE','NO-LOCK','NO-error', - 'THIS-PROCEDURE','WEB-CONTEXT','FUNCTION','RETURNS','NO-UNDO' - ), - 2 => array( - 'ACCEPT-CHANGES','ACCEPT-ROW-CHANGES','ADD-BUFFER','ADD-CALC-COLUMN', - 'ADD-COLUMNS-FROM','ADD-EVENTS-PROCEDURE','ADD-FIELDS-FROM','ADD-FIRST', - 'ADD-HEADER-ENTRY','ADD-INDEX-FIELD','ADD-LAST','ADD-LIKE-COLUMN', - 'ADD-LIKE-FIELD','ADD-LIKE-INDEX','ADD-NEW-FIELD','ADD-NEW-INDEX', - 'ADD-RELATION','ADD-SCHEMA-LOCATION','ADD-SOURCE-BUFFER','ADD-SUPER-PROCEDURE', - 'APPEND-CHILD','APPLY-CALLBACK','ATTACH-DATA-SOURCE','AUTHENTICATION-FAILED', - 'BEGIN-EVENT-GROUP','BUFFER-CREATE', - 'BUFFER-DELETE','BUFFER-RELEASE','BUFFER-VALIDATE', - 'CANCEL-BREAK','CANCEL-REQUESTS','CLEAR','CLEAR-APPL-CONTEXT', - 'CLEAR-LOG','CLEAR-SELECTION','CLEAR-SORT-ARROWS','CLONE-NODE', - 'CLOSE-LOG','CONNECTED','CONVERT-TO-OFFSET', - 'COPY-DATASET','COPY-SAX-attributeS','COPY-TEMP-TABLE','CREATE-LIKE', - 'CREATE-NODE','CREATE-NODE-NAMESPACE','CREATE-RESULT-LIST-ENTRY','DEBUG', - 'DECLARE-NAMESPACE','DELETE-CHAR','DELETE-CURRENT-ROW', - 'DELETE-HEADER-ENTRY','DELETE-LINE','DELETE-NODE','DELETE-RESULT-LIST-ENTRY', - 'DELETE-SELECTED-ROW','DELETE-SELECTED-ROWS','DESELECT-FOCUSED-ROW','DESELECT-ROWS', - 'DESELECT-SELECTED-ROW','DETACH-DATA-SOURCE','DISABLE-CONNECTIONS', - 'DISABLE-DUMP-TRIGGERS','DISABLE-LOAD-TRIGGERS','DISPLAY-MESSAGE', - 'DUMP-LOGGING-NOW','EDIT-CLEAR','EDIT-COPY','EDIT-CUT', - 'EDIT-PASTE','EDIT-UNDO','EMPTY-DATASET','EMPTY-TEMP-TABLE', - 'ENABLE-CONNECTIONS','ENABLE-EVENTS','ENCRYPT-AUDIT-MAC-KEY', - 'END-DOCUMENT','END-ELEMENT','END-EVENT-GROUP','END-FILE-DROP', - 'EXPORT','EXPORT-PRINCIPAL','FETCH-SELECTED-ROW', - 'FILL','FIND-BY-ROWID','FIND-CURRENT','FIND-FIRST', - 'FIND-LAST','FIND-UNIQUE','GET-attribute','GET-attribute-NODE', - 'GET-BINARY-DATA','GET-BLUE-VALUE','GET-BROWSE-COLUMN','GET-BUFFER-HANDLE', - 'GET-BYTES-AVAILABLE','GET-CALLBACK-PROC-CONTEXT','GET-CALLBACK-PROC-NAME','GET-CGI-LIST', - 'GET-CGI-LONG-VALUE','GET-CGI-VALUE','GET-CHANGES','GET-CHILD', - 'GET-CHILD-RELATION','GET-CONFIG-VALUE','GET-CURRENT','GET-DATASET-BUFFER', - 'GET-DOCUMENT-ELEMENT','GET-DROPPED-FILE','GET-DYNAMIC','GET-ERROR-COLUMN ', - 'GET-ERROR-ROW ','GET-FILE-NAME ','GET-FILE-OFFSET ','GET-FIRST', - 'GET-GREEN-VALUE','GET-HEADER-ENTRY','GET-INDEX-BY-NAMESPACE-NAME','GET-INDEX-BY-QNAME', - 'GET-ITERATION','GET-LAST','GET-LOCALNAME-BY-INDEX','GET-MESSAGE', - 'GET-NEXT','GET-NODE','GET-NUMBER','GET-PARENT', - 'GET-PREV','GET-PRINTERS','GET-property','GET-QNAME-BY-INDEX', - 'GET-RED-VALUE','GET-RELATION','GET-REPOSITIONED-ROW','GET-RGB-VALUE', - 'GET-SELECTED-widget','GET-SERIALIZED','GET-SIGNATURE','GET-SOCKET-OPTION', - 'GET-SOURCE-BUFFER','GET-TAB-ITEM','GET-TEXT-HEIGHT-CHARS','GET-TEXT-HEIGHT-PIXELS', - 'GET-TEXT-WIDTH-CHARS','GET-TEXT-WIDTH-PIXELS','GET-TOP-BUFFER','GET-TYPE-BY-INDEX', - 'GET-TYPE-BY-NAMESPACE-NAME','GET-TYPE-BY-QNAME','GET-URI-BY-INDEX','GET-VALUE-BY-INDEX', - 'GET-VALUE-BY-NAMESPACE-NAME','GET-VALUE-BY-QNAME','GET-WAIT-STATE','IMPORT-NODE', - 'IMPORT-PRINCIPAL','INCREMENT-EXCLUSIVE-ID','INITIALIZE-DOCUMENT-TYPE', - 'INITIATE','INSERT','INSERT-attribute','INSERT-BACKTAB', - 'INSERT-BEFORE','INSERT-FILE','INSERT-ROW','INSERT-STRING', - 'INSERT-TAB','INVOKE','IS-ROW-SELECTED','IS-SELECTED', - 'LIST-property-NAMES','LOAD','LoadControls','LOAD-DOMAINS', - 'LOAD-ICON','LOAD-IMAGE','LOAD-IMAGE-DOWN','LOAD-IMAGE-INSENSITIVE', - 'LOAD-IMAGE-UP','LOAD-MOUSE-POINTER','LOAD-SMALL-ICON','LOCK-REGISTRATION', - 'LOG-AUDIT-EVENT','LOGOUT','LONGCHAR-TO-NODE-VALUE','LOOKUP', - 'MEMPTR-TO-NODE-VALUE','MERGE-CHANGES','MERGE-ROW-CHANGES','MOVE-AFTER-TAB-ITEM', - 'MOVE-BEFORE-TAB-ITEM','MOVE-COLUMN','MOVE-TO-BOTTOM','MOVE-TO-EOF', - 'MOVE-TO-TOP','NODE-VALUE-TO-LONGCHAR','NODE-VALUE-TO-MEMPTR','NORMALIZE', - 'QUERY-CLOSE','QUERY-OPEN','QUERY-PREPARE', - 'READ','READ-FILE','READ-XML','READ-XMLSCHEMA', - 'REFRESH','REFRESH-AUDIT-POLICY','REGISTER-DOMAIN','REJECT-CHANGES', - 'REJECT-ROW-CHANGES','REMOVE-attribute','REMOVE-CHILD','REMOVE-EVENTS-PROCEDURE', - 'REMOVE-SUPER-PROCEDURE','REPLACE','REPLACE-CHILD','REPLACE-SELECTION-TEXT', - 'REPOSITION-BACKWARD','REPOSITION-FORWARD','REPOSITION-TO-ROW','REPOSITION-TO-ROWID', - 'RESET','SAVE','SAVE-FILE','SAVE-ROW-CHANGES', - 'SAX-PARSE','SAX-PARSE-FIRST','SAX-PARSE-NEXT','SCROLL-TO-CURRENT-ROW', - 'SCROLL-TO-ITEM','SCROLL-TO-SELECTED-ROW','SEAL','SEARCH', - 'SELECT-ALL','SELECT-FOCUSED-ROW','SELECT-NEXT-ROW','SELECT-PREV-ROW', - 'SELECT-ROW','SET-ACTOR','SET-APPL-CONTEXT','SET-attribute', - 'SET-attribute-NODE','SET-BLUE-VALUE','SET-BREAK','SET-BUFFERS', - 'SET-CALLBACK','SET-CALLBACK-PROCEDURE','SET-CLIENT','SET-COMMIT', - 'SET-CONNECT-PROCEDURE','SET-DYNAMIC','SET-GREEN-VALUE','SET-INPUT-SOURCE', - 'SET-MUST-UNDERSTAND','SET-NODE','SET-NUMERIC-FORMAT','SET-OUTPUT-DESTINATION', - 'SET-PARAMETER','SET-property','SET-READ-RESPONSE-PROCEDURE','SET-RED-VALUE', - 'SET-REPOSITIONED-ROW','SET-RGB-VALUE','SET-ROLLBACK','SET-SELECTION', - 'SET-SERIALIZED','SET-SOCKET-OPTION','SET-SORT-ARROW','SET-WAIT-STATE', - 'START-DOCUMENT','START-ELEMENT','STOP-PARSING','SYNCHRONIZE', - 'TEMP-TABLE-PREPARE','UPDATE-attribute','URL-DECODE','URL-ENCODE', - 'VALIDATE','VALIDATE-SEAL','WRITE','WRITE-CDATA','USE-INDEX', - 'WRITE-CHARACTERS','WRITE-COMMENT','WRITE-DATA-ELEMENT','WRITE-EMPTY-ELEMENT', - 'WRITE-ENTITY-REF','WRITE-EXTERNAL-DTD','WRITE-FRAGMENT','WRITE-MESSAGE', - 'WRITE-PROCESSING-INSTRUCTION','WRITE-XML','WRITE-XMLSCHEMA','FALSE','true' - ), - 3 => array( - 'ABSOLUTE','ACCUM','ADD-INTERVAL','ALIAS','mod', - 'AMBIGUOUS','ASC','AUDIT-ENABLED','AVAILABLE', - 'BASE64-DECODE','BASE64-ENCODE','CAN-DO','CAN-FIND', - 'CAN-QUERY','CAN-SET','CAPS','CAST','OS-DIR', - 'CHR','CODEPAGE-CONVERT','COMPARE', - 'COUNT-OF','CURRENT-CHANGED','CURRENT-RESULT-ROW','DATASERVERS', - 'DATA-SOURCE-MODIFIED','DATETIME','DATETIME-TZ', - 'DAY','DBCODEPAGE','DBCOLLATION','DBNAME', - 'DBPARAM','DBRESTRICTIONS','DBTASKID','DBTYPE', - 'DBVERSION','DECIMAL','DECRYPT','DYNAMIC-function', - 'DYNAMIC-NEXT-VALUE','ENCODE','ENCRYPT','ENTERED', - 'ERROR','ETIME','EXP','ENDKEY','END-error', - 'FIRST-OF','FRAME-DB','FRAME-DOWN', - 'FRAME-FIELD','FRAME-FILE','FRAME-INDEX','FRAME-LINE', - 'GATEWAYS','GENERATE-PBE-KEY','GENERATE-PBE-SALT','GENERATE-RANDOM-KEY', - 'GENERATE-UUID','GET-BITS','GET-BYTE','GET-BYTE-ORDER', - 'GET-BYTES','GET-CODEPAGE','GET-CODEPAGES','GET-COLLATION', - 'GET-COLLATIONS','GET-DOUBLE','GET-FLOAT','GET-INT64', - 'GET-LONG','GET-POINTER-VALUE','GET-SHORT','GET-SIZE', - 'GET-STRING','GET-UNSIGNED-LONG','GET-UNSIGNED-SHORT','GO-PENDING', - 'GUID','HEX-DECODE','INDEX', - 'INT64','INTEGER','INTERVAL','IS-ATTR-SPACE', - 'IS-CODEPAGE-FIXED','IS-COLUMN-CODEPAGE','IS-LEAD-BYTE','ISO-DATE', - 'KBLABEL','KEYCODE','KEYFUNCTION','KEYLABEL', - 'KEYWORD','KEYWORD-ALL','LASTKEY', - 'LAST-OF','LC','LDBNAME','LEFT-TRIM', - 'LIBRARY','LINE-COUNTER','LIST-EVENTS','LIST-QUERY-ATTRS', - 'LIST-SET-ATTRS','LIST-widgetS','LOCKED', - 'LOGICAL','MAXIMUM','MD5-DIGEST', - 'MEMBER','MESSAGE-LINES','MINIMUM','MONTH', - 'MTIME','NEW','NEXT-VALUE','SHARED', - 'NOT ENTERED','NOW','NUM-ALIASES','NUM-DBS', - 'NUM-ENTRIES','NUM-RESULTS','OPSYS','OS-DRIVES', - 'OS-ERROR','OS-GETENV','PAGE-NUMBER','PAGE-SIZE', - 'PDBNAME','PROC-HANDLE','PROC-STATUS','PROGRAM-NAME', - 'PROGRESS','PROVERSION','QUERY-OFF-END','QUOTER', - 'RANDOM','RAW','RECID','REJECTED', - 'RETRY','RETURN-VALUE','RGB-VALUE', - 'RIGHT-TRIM','R-INDEX','ROUND','ROWID','LENGTH', - 'SDBNAME','SET-DB-CLIENT','SETUSERID', - 'SHA1-DIGEST','SQRT','SUBSTITUTE','VARIABLE', - 'SUPER','TERMINAL','TIME','TIMEZONE','external', - 'TODAY','TO-ROWID','TRIM','TRUNCATE','return', - 'TYPE-OF','USERID','VALID-EVENT','VALID-HANDLE', - 'VALID-object','WEEKDAY','YEAR','BEGINS','VALUE', - 'EQ','GE','GT','LE','LT','MATCHES','AS','BY','LIKE' - ), - 4 => array( - 'ACCELERATOR','ACTIVE','ACTOR','ADM-DATA', - 'AFTER-BUFFER','AFTER-ROWID','AFTER-TABLE','ALLOW-COLUMN-SEARCHING', - 'ALWAYS-ON-TOP','APPL-ALERT-BOXES','APPL-CONTEXT-ID','APPSERVER-INFO', - 'APPSERVER-PASSWORD','APPSERVER-USERID','ASYNCHRONOUS','ASYNC-REQUEST-COUNT', - 'ASYNC-REQUEST-HANDLE','ATTACHED-PAIRLIST','attribute-NAMES','ATTR-SPACE', - 'AUDIT-EVENT-CONTEXT','AUTO-COMPLETION','AUTO-DELETE','AUTO-DELETE-XML', - 'AUTO-END-KEY','AUTO-GO','AUTO-INDENT','AUTO-RESIZE', - 'AUTO-RETURN','AUTO-SYNCHRONIZE','AUTO-VALIDATE','AUTO-ZAP', - 'AVAILABLE-FORMATS','BACKGROUND','BASE-ADE','BASIC-LOGGING', - 'BATCH-MODE','BATCH-SIZE','BEFORE-BUFFER','BEFORE-ROWID', - 'BEFORE-TABLE','BGCOLOR','BLANK','BLOCK-ITERATION-DISPLAY', - 'BORDER-BOTTOM-CHARS','BORDER-BOTTOM-PIXELS','BORDER-LEFT-CHARS','BORDER-LEFT-PIXELS', - 'BORDER-RIGHT-CHARS','BORDER-RIGHT-PIXELS','BORDER-TOP-CHARS','BORDER-TOP-PIXELS', - 'BOX','BOX-SELECTABLE','BUFFER-CHARS','BUFFER-FIELD', - 'BUFFER-HANDLE','BUFFER-LINES','BUFFER-NAME','BUFFER-VALUE', - 'BYTES-READ','BYTES-WRITTEN','CACHE','CALL-NAME', - 'CALL-TYPE','CANCEL-BUTTON','CANCELLED','CAN-CREATE', - 'CAN-DELETE','CAN-READ','CAN-WRITE','CAREFUL-PAINT', - 'CASE-SENSITIVE','CENTERED','CHARSET','CHECKED', - 'CHILD-BUFFER','CHILD-NUM','CLASS-TYPE','CLIENT-CONNECTION-ID', - 'CLIENT-TTY','CLIENT-TYPE','CLIENT-WORKSTATION','CODE', - 'CODEPAGE','COLUMN','COLUMN-BGCOLOR','COLUMN-DCOLOR', - 'COLUMN-FGCOLOR','COLUMN-FONT','COLUMN-LABEL','COLUMN-MOVABLE', - 'COLUMN-PFCOLOR','COLUMN-READ-ONLY','COLUMN-RESIZABLE','COLUMN-SCROLLING', - 'COM-HANDLE','COMPLETE','CONFIG-NAME','CONTEXT-HELP', - 'CONTEXT-HELP-FILE','CONTEXT-HELP-ID','CONTROL-BOX','CONVERT-3D-COLORS', - 'CPCASE','CPCOLL','CPINTERNAL','CPLOG', - 'CPPRINT','CPRCODEIN','CPRCODEOUT','CPSTREAM', - 'CPTERM','CRC-VALUE','CURRENT-COLUMN','CURRENT-ENVIRONMENT', - 'CURRENT-ITERATION','CURRENT-ROW-MODIFIED','CURRENT-WINDOW','CURSOR-CHAR', - 'CURSOR-LINE','CURSOR-OFFSET','DATA-ENTRY-RETURN','DATASET', - 'DATA-SOURCE','DATA-SOURCE-COMPLETE-MAP','DATA-TYPE','DATE-FORMAT', - 'DB-REFERENCES','DCOLOR','DDE-ERROR','DDE-ID', - 'DDE-ITEM','DDE-NAME','DDE-TOPIC','DEBLANK', - 'DEBUG-ALERT','DECIMALS','DEFAULT','DEFAULT-BUFFER-HANDLE', - 'DEFAULT-BUTTON','DEFAULT-COMMIT','DELIMITER','DISABLE-AUTO-ZAP', - 'DISPLAY-TIMEZONE','DISPLAY-TYPE','DOMAIN-DESCRIPTION','DOMAIN-NAME', - 'DOMAIN-TYPE','DRAG-ENABLED','DROP-TARGET','DYNAMIC', - 'EDGE-CHARS','EDGE-PIXELS','EDIT-CAN-PASTE','EDIT-CAN-UNDO', - 'EMPTY','ENCODING','ENCRYPTION-SALT','END-USER-PROMPT', - 'ENTRY-TYPES-LIST','ERROR-COLUMN','ERROR-object-DETAIL','ERROR-ROW', - 'ERROR-STRING','EVENT-GROUP-ID','EVENT-PROCEDURE','EVENT-PROCEDURE-CONTEXT', - 'EVENT-TYPE','EXCLUSIVE-ID','EXECUTION-LOG','EXPAND', - 'EXPANDABLE','FGCOLOR','FILE-CREATE-DATE','FILE-CREATE-TIME', - 'FILE-MOD-DATE','FILE-MOD-TIME','FILE-NAME','FILE-OFFSET', - 'FILE-SIZE','FILE-TYPE','FILLED','FILL-MODE', - 'FILL-WHERE-STRING','FIRST-ASYNC-REQUEST','FIRST-BUFFER','FIRST-CHILD', - 'FIRST-COLUMN','FIRST-DATASET','FIRST-DATA-SOURCE','FIRST-object', - 'FIRST-PROCEDURE','FIRST-QUERY','FIRST-SERVER','FIRST-SERVER-SOCKET', - 'FIRST-SOCKET','FIRST-TAB-ITEM','FIT-LAST-COLUMN','FLAT-BUTTON', - 'FOCUSED-ROW','FOCUSED-ROW-SELECTED','FONT','FOREGROUND', - 'FORMAT','FORMATTED','FORM-INPUT','FORM-LONG-INPUT', - 'FORWARD-ONLY','FRAGMENT','FRAME-COL','FRAME-NAME', - 'FRAME-ROW','FRAME-SPACING','FRAME-X','FRAME-Y', - 'FREQUENCY','FULL-HEIGHT-CHARS','FULL-HEIGHT-PIXELS','FULL-PATHNAME', - 'FULL-WIDTH-CHARS','FULL-WIDTH-PIXELS','GRAPHIC-EDGE', - 'GRID-FACTOR-HORIZONTAL','GRID-FACTOR-VERTICAL','GRID-SNAP','GRID-UNIT-HEIGHT-CHARS', - 'GRID-UNIT-HEIGHT-PIXELS','GRID-UNIT-WIDTH-CHARS','GRID-UNIT-WIDTH-PIXELS','GRID-VISIBLE', - 'GROUP-BOX','HANDLE','HANDLER','HAS-LOBS', - 'HAS-RECORDS','HEIGHT-CHARS','HEIGHT-PIXELS','HELP', - 'HIDDEN','HORIZONTAL','HTML-CHARSET','HTML-END-OF-LINE', - 'HTML-END-OF-PAGE','HTML-FRAME-BEGIN','HTML-FRAME-END','HTML-HEADER-BEGIN', - 'HTML-HEADER-END','HTML-TITLE-BEGIN','HTML-TITLE-END','HWND', - 'ICFPARAMETER','ICON','IGNORE-CURRENT-MODIFIED','IMAGE-DOWN', - 'IMAGE-INSENSITIVE','IMAGE-UP','IMMEDIATE-DISPLAY','INDEX-INFORMATION', - 'IN-HANDLE','INHERIT-BGCOLOR','INHERIT-FGCOLOR','INITIAL','INIT', - 'INNER-CHARS','INNER-LINES','INPUT-VALUE','INSTANTIATING-PROCEDURE', - 'INTERNAL-ENTRIES','IS-CLASS','IS-OPEN','IS-PARAMETER-SET', - 'IS-XML','ITEMS-PER-ROW','KEEP-CONNECTION-OPEN','KEEP-FRAME-Z-ORDER', - 'KEEP-SECURITY-CACHE','KEY','KEYS','LABEL', - 'LABEL-BGCOLOR','LABEL-DCOLOR','LABEL-FGCOLOR','LABEL-FONT', - 'LABELS','LANGUAGES','LARGE','LARGE-TO-SMALL', - 'LAST-ASYNC-REQUEST','LAST-BATCH','LAST-CHILD','LAST-object', - 'LAST-PROCEDURE','LAST-SERVER','LAST-SERVER-SOCKET','LAST-SOCKET', - 'LAST-TAB-ITEM','LINE','LIST-ITEM-PAIRS','LIST-ITEMS', - 'LITERAL-QUESTION','LOCAL-HOST','LOCAL-NAME','LOCAL-PORT', - 'LOCATOR-COLUMN-NUMBER','LOCATOR-LINE-NUMBER','LOCATOR-PUBLIC-ID','LOCATOR-system-ID', - 'LOCATOR-TYPE','LOG-ENTRY-TYPES','LOGFILE-NAME','LOGGING-LEVEL', - 'LOGIN-EXPIRATION-TIMESTAMP','LOGIN-HOST','LOGIN-STATE','LOG-THRESHOLD', - 'MANDATORY','MANUAL-HIGHLIGHT','MAX-BUTTON','MAX-CHARS', - 'MAX-DATA-GUESS','MAX-HEIGHT-CHARS','MAX-HEIGHT-PIXELS','MAX-VALUE', - 'MAX-WIDTH-CHARS','MAX-WIDTH-PIXELS','MD5-VALUE','MENU-BAR', - 'MENU-KEY','MENU-MOUSE','MERGE-BY-FIELD','MESSAGE-AREA', - 'MESSAGE-AREA-FONT','MIN-BUTTON','MIN-COLUMN-WIDTH-CHARS','MIN-COLUMN-WIDTH-PIXELS', - 'MIN-HEIGHT-CHARS','MIN-HEIGHT-PIXELS','MIN-SCHEMA-MARSHAL','MIN-VALUE', - 'MIN-WIDTH-CHARS','MIN-WIDTH-PIXELS','MODIFIED','MOUSE-POINTER', - 'MOVABLE','MULTI-COMPILE','MULTIPLE','MULTITASKING-INTERVAL', - 'MUST-UNDERSTAND','NAME','NAMESPACE-PREFIX','NAMESPACE-URI', - 'NEEDS-APPSERVER-PROMPT','NEEDS-PROMPT','NESTED','NEW-ROW', - 'NEXT-COLUMN','NEXT-ROWID','NEXT-SIBLING','NEXT-TAB-ITEM', 'NO-BOX', - 'NO-CURRENT-VALUE','NODE-VALUE','NO-EMPTY-SPACE','NO-FOCUS', - 'NONAMESPACE-SCHEMA-LOCATION','NO-SCHEMA-MARSHAL','NO-VALIDATE','NUM-BUFFERS', - 'NUM-BUTTONS','NUM-CHILD-RELATIONS','NUM-CHILDREN','NUM-COLUMNS', - 'NUM-DROPPED-FILES','NUMERIC-DECIMAL-POINT','NUMERIC-FORMAT','NUMERIC-SEPARATOR', - 'NUM-FIELDS','NUM-FORMATS','NUM-HEADER-ENTRIES','NUM-ITEMS', - 'NUM-ITERATIONS','NUM-LINES','NUM-LOCKED-COLUMNS','NUM-LOG-FILES', - 'NUM-MESSAGES','NUM-PARAMETERS','NUM-REFERENCES','NUM-RELATIONS', - 'NUM-REPLACED','NUM-SELECTED-ROWS','NUM-SELECTED-WIDGETS','NUM-SOURCE-BUFFERS', - 'NUM-TABS','NUM-TOP-BUFFERS','NUM-TO-RETAIN','NUM-VISIBLE-COLUMNS', - 'ON-FRAME-BORDER','ORIGIN-HANDLE','ORIGIN-ROWID','OWNER', - 'OWNER-DOCUMENT','PAGE-BOTTOM','PAGE-TOP','PARAMETER', - 'PARENT','PARENT-BUFFER','PARENT-RELATION','PARSE-STATUS', - 'PASSWORD-FIELD','PATHNAME','PBE-HASH-ALGORITHM','PBE-KEY-ROUNDS', - 'PERSISTENT','PERSISTENT-CACHE-DISABLED','PERSISTENT-PROCEDURE','PFCOLOR', - 'PIXELS-PER-COLUMN','PIXELS-PER-ROW','POPUP-MENU','POPUP-ONLY', - 'POSITION','PREFER-DATASET','PREPARED','PREPARE-STRING', - 'PREV-COLUMN','PREV-SIBLING','PREV-TAB-ITEM','PRIMARY', - 'PRINTER-CONTROL-HANDLE','PRINTER-HDC','PRINTER-NAME','PRINTER-PORT', - 'PRIVATE-DATA','PROCEDURE-NAME','PROGRESS-SOURCE','PROXY', - 'PROXY-PASSWORD','PROXY-USERID','PUBLIC-ID','PUBLISHED-EVENTS', - 'RADIO-BUTTONS','READ-ONLY','RECORD-LENGTH', - 'REFRESHABLE','RELATION-FIELDS','RELATIONS-ACTIVE','REMOTE', - 'REMOTE-HOST','REMOTE-PORT','RESIZABLE','RESIZE', - 'RESTART-ROWID','RETAIN-SHAPE','RETURN-INSERTED','RETURN-VALUE-DATA-TYPE', - 'ROLES','ROUNDED','COL','ROW','ROW-HEIGHT-CHARS', - 'ROW-HEIGHT-PIXELS','ROW-MARKERS','ROW-RESIZABLE','ROW-STATE', - 'SAVE-WHERE-STRING','SCHEMA-CHANGE','SCHEMA-LOCATION','SCHEMA-MARSHAL', - 'SCHEMA-PATH','SCREEN-LINES','SCREEN-VALUE','SCROLLABLE', - 'SCROLLBAR-HORIZONTAL','SCROLL-BARS','SCROLLBAR-VERTICAL','SEAL-TIMESTAMP', - 'SELECTABLE','SELECTED','SELECTION-END','SELECTION-START', - 'SELECTION-TEXT','SENSITIVE','SEPARATOR-FGCOLOR','SEPARATORS', - 'SERVER','SERVER-CONNECTION-BOUND','SERVER-CONNECTION-BOUND-REQUEST','SERVER-CONNECTION-CONTEXT', - 'SERVER-CONNECTION-ID','SERVER-OPERATING-MODE','SESSION-END','SESSION-ID', - 'SHOW-IN-TASKBAR','SIDE-LABEL-HANDLE','SIDE-LABELS','SKIP-DELETED-RECORD', - 'SMALL-ICON','SMALL-TITLE','SOAP-FAULT-ACTOR','SOAP-FAULT-CODE', - 'SOAP-FAULT-DETAIL','SOAP-FAULT-STRING','SORT','SORT-ASCENDING', - 'SORT-NUMBER','SSL-SERVER-NAME','STANDALONE','STARTUP-PARAMETERS', - 'STATE-DETAIL','STATUS-AREA','STATUS-AREA-FONT','STOPPED', - 'STREAM','STRETCH-TO-FIT','STRICT','STRING-VALUE', - 'SUBTYPE','SUPER-PROCEDURES','SUPPRESS-NAMESPACE-PROCESSING','SUPPRESS-WARNINGS', - 'SYMMETRIC-ENCRYPTION-ALGORITHM','SYMMETRIC-ENCRYPTION-IV','SYMMETRIC-ENCRYPTION-KEY','SYMMETRIC-SUPPORT', - 'system-ALERT-BOXES','system-ID','TABLE','TABLE-CRC-LIST', - 'TABLE-HANDLE','TABLE-LIST','TABLE-NUMBER','TAB-POSITION', - 'TAB-STOP','TEMP-DIRECTORY','TEXT-SELECTED','THREE-D', - 'TIC-MARKS','TIME-SOURCE','TITLE','TITLE-BGCOLOR','FIELD', - 'TITLE-DCOLOR','TITLE-FGCOLOR','TITLE-FONT','TOOLTIP', - 'TOOLTIPS','TOP-ONLY','TRACKING-CHANGES','TRANSACTION', - 'TRANS-INIT-PROCEDURE','TRANSPARENT','TYPE','UNIQUE-ID', - 'UNIQUE-MATCH','URL','URL-PASSWORD','URL-USERID','EXTENT', - 'USER-ID','V6DISPLAY','VALIDATE-EXPRESSION','VALIDATE-MESSAGE', - 'VALIDATE-XML','VALIDATION-ENABLED','VIEW-FIRST-COLUMN-ON-REOPEN', - 'VIRTUAL-HEIGHT-CHARS','VIRTUAL-HEIGHT-PIXELS','VIRTUAL-WIDTH-CHARS','VIRTUAL-WIDTH-PIXELS', - 'VISIBLE','WARNING','WHERE-STRING','widget-ENTER','DATE', - 'widget-LEAVE','WIDTH-CHARS','WIDTH-PIXELS','WINDOW-STATE', - 'WINDOW-system','WORD-WRAP','WORK-AREA-HEIGHT-PIXELS','WORK-AREA-WIDTH-PIXELS', - 'WORK-AREA-X','WORK-AREA-Y','WRITE-STATUS','X','widget-Handle', - 'X-DOCUMENT','XML-DATA-TYPE','XML-NODE-TYPE','XML-SCHEMA-PATH', - 'XML-SUPPRESS-NAMESPACE-PROCESSING','Y','YEAR-OFFSET','CHARACTER', - 'LONGCHAR','MEMPTR','CHAR','DEC','INT','LOG','DECI','INTE','LOGI','long' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', - '<', '>', '=', - '+', '-', '*', '/', - '!', '@', '%', '|', '$', - ':', '.', ';', ',', - '?', '<=','<>','>=', '\\' - ), - 'CASE_SENSITIVE' => array ( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array ( - 'KEYWORDS' => array ( - 1 => 'color: #0000ff; font-weight: bold;', - 2 => 'color: #1D16B2;', - 3 => 'color: #993333;', - 4 => 'color: #0000ff;' - ), - 'COMMENTS' => array ( -// 1 => 'color: #808080; font-style: italic;', -// 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array ( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array ( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array ( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array ( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array ( - 0 => 'color: #006600;' - ), - 'SYMBOLS' => array ( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array ( - ), - 'SCRIPT' => array ( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 0 => ':' - ), - 'REGEXPS' => array ( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array ( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array ( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![\.\-a-zA-Z0-9_\$\#&])", - 'DISALLOWED_AFTER' => "(?![\-a-zA-Z0-9_%])", - 1 => array( - 'SPACE_AS_WHITESPACE' => true - ), - 2 => array( - 'SPACE_AS_WHITESPACE' => true - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/prolog.php b/system/application/libraries/geshi/prolog.php deleted file mode 100644 index 1f35a1b82..000000000 --- a/system/application/libraries/geshi/prolog.php +++ /dev/null @@ -1,143 +0,0 @@ -<?php -/************************************************************************************* - * prolog.php - * -------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2008/10/02 - * - * Prolog language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/02 (1.0.8.1) - * - First Release - * - * TODO (updated 2008/10/02) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Prolog', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array("\'"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'NUMBERS' => - GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_FLT_SCI_ZERO, - 'KEYWORDS' => array( - 1 => array( - 'abolish','abs','arg','asserta','assertz','at_end_of_stream','atan', - 'atom','atom_chars','atom_codes','atom_concat','atom_length', - 'atomic','bagof','call','catch','ceiling','char_code', - 'char_conversion','clause','close','compound','consult','copy_term', - 'cos','current_char_conversion','current_input','current_op', - 'current_output','current_predicate','current_prolog_flag', - 'discontiguous','dynamic','ensure_loaded','exp','fail','findall', - 'float','float_fractional_part','float_integer_part','floor', - 'flush_output','functor','get_byte','get_char','get_code','halt', - 'include','initialization','integer','is','listing','log','mod', - 'multifile','nl','nonvar','notrace','number','number_chars', - 'number_codes','once','op','open','peek_byte','peek_char', - 'peek_code','put_byte','put_char','put_code','read','read_term', - 'rem','repeat','retract','round','set_input','set_output', - 'set_prolog_flag','set_stream_position','setof','sign','sin','sqrt', - 'stream_property','sub_atom','throw','trace','true','truncate', - 'unify_with_occurs_check','univ','var','write','write_canonical', - 'write_term','writeq' - ) - ), - 'SYMBOLS' => array( - 0 => array('(', ')', '[', ']', '{', '}',), - 1 => array('?-', ':-', '=:='), - 2 => array('\-', '\+', '\*', '\/'), - 3 => array('-', '+', '*', '/'), - 4 => array('.', ':', ',', ';'), - 5 => array('!', '@', '&', '|'), - 6 => array('<', '>', '=') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #990000;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - 'HARD' => 'color: #0000ff;' - ), - 'NUMBERS' => array( - 0 => 'color: #800080;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;', - 1 => 'color: #339933;', - 2 => 'color: #339933;', - 3 => 'color: #339933;', - 4 => 'color: #339933;', - 5 => 'color: #339933;', - 6 => 'color: #339933;' - ), - 'REGEXPS' => array( - 0 => 'color: #008080;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://pauillac.inria.fr/~deransar/prolog/bips.html' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Variables - 0 => "(?<![A-Z_])(?!(?:PIPE|SEMI)[^a-zA-Z0-9_])[A-Z_][a-zA-Z0-9_]*(?![a-zA-Z0-9_])" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/properties.php b/system/application/libraries/geshi/properties.php deleted file mode 100644 index 231dd6e8b..000000000 --- a/system/application/libraries/geshi/properties.php +++ /dev/null @@ -1,127 +0,0 @@ -<?php -/************************************************************************************* - * properties.php - * -------- - * Author: Edy Hinzen - * Copyright: (c) 2009 Edy Hinzen - * Release Version: 1.0.8.6 - * Date Started: 2009/04/03 - * - * Property language file for GeSHi. - * - * CHANGES - * ------- - * 2008/04/03 (1.0.0) - * - First Release - * - * TODO - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PROPERTIES', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /* Common used variables */ - 1 => array( - '${user.home}' - ), - ), - 'SYMBOLS' => array( - '[', ']', '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #933;' - ), - 'NUMBERS' => array( - 0 => '' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'REGEXPS' => array( - 0 => 'color: #000080; font-weight:bold;', - 1 => 'color: #008000; font-weight:bold;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Entry names - 0 => array( - GESHI_SEARCH => '^(\s*)([.a-zA-Z0-9_\-]+)(\s*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - //Entry values - 1 => array( - // Evil hackery to get around GeSHi bug: <>" and ; are added so <span>s can be matched - // Explicit match on variable names because if a comment is before the first < of the span - // gets chewed up... - GESHI_SEARCH => '([<>";a-zA-Z0-9_]+\s*)=(.*)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1=', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/providex.php b/system/application/libraries/geshi/providex.php deleted file mode 100644 index aaa02e797..000000000 --- a/system/application/libraries/geshi/providex.php +++ /dev/null @@ -1,299 +0,0 @@ -<?php -/****************************************************************************** - * providex.php - * ---------- - * Author: Jeff Wilder (jeff@coastallogix.com) - * Copyright: (c) 2008 Coastal Logix (http://www.coastallogix.com) - * Release Version: 1.0.8.6 - * Date Started: 2008/10/18 - * - * ProvideX language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/21 (1.0.0) - * - First Release - * - * TODO - * ------------------------- - * 1. Create a regexp for numeric global variables (ex: %VarName = 3) - * 2. Add standard object control properties - * - ****************************************************************************** - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - *****************************************************************************/ -$language_data = array ( - 'LANG_NAME' => 'ProvideX', - 'COMMENT_SINGLE' => array(1 => '!'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array( - // Single-Line Comments using REM command - 2 => "/\bREM\b.*?$/i" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - // Directives - '*break', '*continue', '*end', '*escape', '*next', '*proceed', - '*retry', '*return', '*same', 'accept', 'add index', 'addr', - 'auto', 'begin', 'break', 'button', 'bye', 'call', 'case', - 'chart', 'check_box', 'class', 'clear', 'clip_board', 'close', - 'continue', 'control', 'create required', 'create table', - 'cwdir', 'data', 'day_format', 'def', 'default', 'defctl', - 'defprt', 'deftty', 'delete required', 'dictionary', 'dim', 'direct', - 'directory', 'disable', 'drop', 'drop_box', 'dump', 'edit', - 'else', 'enable', 'end switch', 'end', 'end_if', 'endtrace', - 'enter', 'erase', 'error_handler', 'escape', 'event', 'execute', - 'exit', 'exitto', 'extract', 'file', 'find', 'floating point', - 'for', 'function', 'get_file_box', 'gosub', 'goto', 'grid', - 'h_scrollbar', 'hide', 'if', 'index', 'indexed', 'input', - 'insert', 'invoke', 'iolist', 'keyed', 'let', 'like', - 'line_switch', 'list', 'list_box', 'load', 'local', 'lock', - 'long_form', 'menu_bar', 'merge', 'message_lib', 'mnemonic', - 'msgbox', 'multi_line', 'multi_media', 'next', 'object', 'obtain', - 'on', 'open', 'password', 'perform', 'pop', 'popup_menu', - 'precision', 'prefix', 'preinput', 'print', 'process', 'program', - 'property', 'purge', 'quit', 'radio_button', 'randomize', - 'read', 'record', 'redim', 'refile', 'release', 'rem', 'remove', - 'rename', 'renumber', 'repeat', 'reset', 'restore', 'retry', - 'return', 'round', 'run', 'save', 'select', 'serial', 'server', - 'set_focus', 'set_nbf', 'set_param', 'setctl', 'setday', 'setdev', - 'setdrive', 'seterr', 'setesc', 'setfid', 'setmouse', 'settime', - 'settrace', 'short_form', 'show', 'sort', 'start', 'static', - 'step', 'stop', 'switch', 'system_help', 'system_jrnl', 'table', - 'then', 'to', 'translate', 'tristate_box', 'unlock', 'until', - 'update', 'user_lex', 'v_scrollbar', 'vardrop_box', 'varlist_box', - 'via', 'video_palette', 'wait', 'wend', 'while', 'winprt_setup', - 'with', 'write' - ), - 2 => array( - // System Functions - '@x', '@y', 'abs', 'acs', 'and', 'arg', 'asc', 'asn', 'ath', - 'atn', 'bin', 'bsz', 'chg', 'chr', 'cmp', 'cos', 'cpl', - 'crc', 'cse', 'ctl', 'cvs', 'dec', 'dir', 'dll', 'dsk', - 'dte', 'env', 'ept', 'err', 'evn', 'evs', 'exp', 'ffn', - 'fib', 'fid', 'fin', 'fpt', 'gap', 'gbl', 'gep', 'hsa', - 'hsh', 'hta', 'hwn', 'i3e', 'ind', 'int', 'iol', 'ior', - 'jul', 'jst', 'kec', 'kef', 'kel', 'ken', 'kep', 'key', - 'kgn', 'lcs', 'len', 'lno', 'log', 'lrc', 'lst', 'max', - 'mem', 'mid', 'min', 'mnm', 'mod', 'msg', 'msk', 'mxc', - 'mxl', 'new', 'not', 'nul', 'num', 'obj', 'opt', 'pad', - 'pck', 'pfx', 'pgm', 'pos', 'prc', 'prm', 'pth', 'pub', - 'rcd', 'rdx', 'rec', 'ref', 'rnd', 'rno', 'sep', 'sgn', - 'sin', 'sqr', 'srt', 'ssz', 'stk', 'stp', 'str', 'sub', - 'swp', 'sys', 'tan', 'tbl', 'tcb', 'tmr', 'trx', 'tsk', - 'txh', 'txw', 'ucp', 'ucs', 'upk', 'vin', 'vis', 'xeq', - 'xfa', 'xor', '_obj' - ), - 3 => array( - // System Variables - // Vars that are duplicates of functions - // 'ctl', 'err', 'pfx', 'prm', 'rnd', 'sep', 'sys', - 'bkg', 'chn', 'day', 'dlm', 'dsz', 'eom', 'ers', 'esc', - 'gfn', 'gid', 'hfn', 'hlp', 'hwd', 'lfa', 'lfo', 'lip', - 'lpg', 'lwd', 'mse', 'msl', 'nar', 'nid', 'pgn', 'psz', - 'quo', 'ret', 'sid', 'ssn', 'tim', 'tme', 'tms', 'tsm', - 'uid', 'unt', 'who' - - ), - 4 => array( - // Nomads Variables - '%Flmaint_Lib$', '%Flmaint_Msg$', '%Nomads_Activation_Ok', - '%Nomads_Auto_Qry', '%Nomads_Disable_Debug', - '%Nomads_Disable_Trace', '%Nomads_Fkey_Handler$', - '%Nomads_Fkey_Tbl$', '%Nomads_Notest', '%Nomads_Onexit$', - '%Nomads_Post_Display', '%Nomads_Pre_Display$', - '%Nomads_Process$', '%Nomads_Trace_File$', - '%Nomad_Actv_Folder_Colors$', '%Nomad_Automation_Enabled', - '%Nomad_Auto_Close', '%Nomad_Center_Wdw', '%Nomad_Concurrent_Wdw', - '%Nomad_Custom_Define', '%Nomad_Custom_Dir$', - '%Nomad_Custom_Genmtc', '%Nomad_Custom_Skip_Definition', - '%Nomad_Def_Sfx$', '%Nomad_Enter_Tab', '%Nomad_Esc_Sel', - '%Nomad_Isjavx', '%Nomad_Iswindx', '%Nomad_Iswindx$', - '%Nomad_Menu$', '%Nomad_Menu_Leftedge_Clr$', - '%Nomad_Menu_Textbackground_Clr$', '%Nomad_Mln_Sep$', - '%Nomad_Msgmnt$', '%Nomad_Noplusw', '%Nomad_No_Customize', - '%Nomad_Object_Persistence', '%Nomad_Object_Resize', - '%Nomad_Open_Load', '%Nomad_Override_Font$', - '%Nomad_Palette_Loaded', '%Nomad_Panel_Info_Force', - '%Nomad_Panel_Info_Prog$', '%Nomad_Pnl_Def_Colour$', - '%Nomad_Pnl_Def_Font$', '%Nomad_Prg_Cache', '%Nomad_Qry_Attr$', - '%Nomad_Qry_Btn$', '%Nomad_Qry_Clear_Start', '%Nomad_Qry_Tip$', - '%Nomad_Qry_Wide', '%Nomad_Query_Clear_Status', '%Nomad_Query_Kno', - '%Nomad_Query_No_Gray', '%Nomad_Query_Odb_Ignore', - '%Nomad_Query_Retkno', '%Nomad_Query_Sbar_Max', - '%Nomad_Relative_Wdw', '%Nomad_Save_Qry_Path', '%Nomad_Script_Fn', - '%Nomad_Script_Log', '%Nomad_Script_Wdw', - '%Nomad_Skip_Change_Logic', '%Nomad_Skip_Onselect_Logic', - '%Nomad_Stk$', '%Nomad_Tab_Dir', '%Nomad_Timeout', - '%Nomad_Turbo_Off', '%Nomad_Visual_Effect', - '%Nomad_Visual_Override', '%Nomad_Win_Ver', '%Nomad_Xchar', - '%Nomad_Xmax', '%Nomad_Ychar', '%Nomad_Ymax', '%Scr_Def_Attr$', - '%Scr_Def_H_Fl$', '%Scr_Def_H_Id$', '%Scr_Lib', '%Scr_Lib$', - '%Z__Usr_Sec$', 'Alternate_Panel$', 'Alternate_Panel_Type$', - 'Arg_1$', 'Arg_10$', 'Arg_11$', 'Arg_12$', 'Arg_13$', 'Arg_14$', - 'Arg_15$', 'Arg_16$', 'Arg_17$', 'Arg_18$', 'Arg_19$', 'Arg_2$', - 'Arg_20$', 'Arg_3$', 'Arg_4$', 'Arg_5$', 'Arg_6$', 'Arg_7$', - 'Arg_8$', 'Arg_9$', 'Change_Flg', 'Cmd_Str$', 'Default_Prog$', - 'Disp_Cmd$', 'Entire_Record$', 'Exit_Cmd$', 'Fldr_Default_Prog$', - 'Folder_Id$', 'Id', 'Id$', 'Ignore_Exit', 'Initialize_Flg', - 'Init_Text$', 'Init_Val$', 'Main_Scrn_K$', 'Mnu_Ln$', - 'Next_Folder', 'Next_Id', 'Next_Id$', 'No_Flush', 'Prime_Key$', - 'Prior_Val', 'Prior_Val$', 'Qry_Val$', 'Refresh_Flg', - 'Replacement_Folder$', 'Replacement_Lib$', 'Replacement_Scrn$', - 'Scrn_Id$', 'Scrn_K$', 'Scrn_Lib$', 'Tab_Table$', '_Eom$' - ), - 5 => array( - // Mnemonics - "'!w'", "'*c'", "'*h'", "'*i'", "'*o'", "'*r'", "'*x'", - "'+b'", "'+d'", "'+e'", "'+f'", "'+i'", "'+n'", - "'+p'", "'+s'", "'+t'", "'+u'", "'+v'", "'+w'", "'+x'", - "'+z'", "'-b'", "'-d'", "'-e'", "'-f'", "'-i'", - "'-n'", "'-p'", "'-s'", "'-t'", "'-u'", "'-v'", "'-w'", - "'-x'", "'-z'", "'2d'", "'3d'", "'4d'", "'@@'", "'ab'", - "'arc'", "'at'", "'backgr'", "'bb'", "'be'", "'beep'", - "'bg'", "'bi'", "'bj'", "'bk'", "'black'", "'blue'", - "'bm'", "'bo'", "'box'", "'br'", "'bs'", "'bt'", "'bu'", - "'bw'", "'bx'", "'caption'", "'ce'", "'cf'", "'ch'", - "'ci'", "'circle'", "'cl'", "'colour'", "'cp'", "'cpi'", - "'cr'", "'cs'", "'cursor'", "'cyan''_cyan'", "'dc'", - "'default'", "'df'", "'dialogue'", "'dn'", "'do'", - "'drop'", "'eb'", "'ee'", "'ef'", "'eg'", "'ei'", "'ej'", - "'el'", "'em'", "'eo'", "'ep'", "'er'", "'es'", "'et'", - "'eu'", "'ew'", "'ff'", "'fill'", "'fl'", "'font'", - "'frame'", "'gd'", "'ge'", "'gf'", "'goto'", "'green'", - "'gs'", "'hide'", "'ic'", "'image'", "'jc'", - "'jd'", "'jl'", "'jn'", "'jr'", "'js'", "'l6'", "'l8'", - "'lc'", "'ld'", "'lf'", "'li'", "'line'", "'lm'", - "'lpi'", "'lt'", "'magenta'", "'maxsize'", "'me'", - "'message'", "'minsize'", "'mn'", "'mode'", - "'move'", "'mp'", "'ms'", "'ni'", "'offset'", "'option'", - "'pe'", "'pen'", "'picture'", "'pie'", "'pm'", "'polygon'", - "'pop'", "'ps'", "'push'", "'rb'", "'rc'", "'rectangle'", - "'red'", "'rl'", "'rm'", "'rp'", "'rs'", "'rt'", "'sb'", - "'scroll'", "'sd'", "'se'", "'sf'", "'show'", "'size'", - "'sl'", "'sn'", "'sp'", "'sr'", "'swap'", "'sx'", "'text'", - "'textwdw'", "'tr'", "'tw'", "'uc'", "'up'", "'vt'", "'wa'", - "'wc'", "'wd'", "'wg'", "'white'", "'window'", "'wm'", - "'wp'", "'wr'", "'wrap'", "'ws'", "'wx'", "'xp'", "'yellow'", - "'zx'", "'_black'", "'_blue'", "'_colour'", "'_green'", - "'_magenta'", "'_red'", "'_white'", "'_yellow'" - ), - ), - 'SYMBOLS' => array( - 0 => array('+', '-', '*', '/', '^', '|'), - 1 => array('++', '--', '+=', '-=', '*=', '/=', '^=', '|='), - 2 => array('<', '>', '='), - 3 => array('(', ')', '[', ']', '{', '}'), - 4 => array(',', '@', ';', '\\') - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: navy;', // Directives - 2 => 'color: blue;', // System Functions - 3 => 'color: blue;', // System Variables - 4 => 'color: #6A5ACD; font-style: italic;', // Nomads Global Variables - 5 => 'color: #BDB76B;', // Mnemonics - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 2 => 'color: #008080;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: green;' - ), - 'NUMBERS' => array( - 0 => 'color: #00008B;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;', - 1 => 'color: #000099;', - 2 => 'color: #000099;', - 3 => 'color: #0000C9;', - 4 => 'color: #000099;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #006400; font-weight: bold', - 2 => 'color: #6A5ACD;' - ) - ), - 'URLS' => array( - 1 => 'http://www.allbasic.info./wiki/index.php/PX:Directive_{FNAME}', - 2 => 'http://www.allbasic.info./wiki/index.php/PX:System_function_{FNAME}', - 3 => 'http://www.allbasic.info./wiki/index.php/PX:System_variable_{FNAME}', - 4 => 'http://www.allbasic.info./wiki/index.php/PX:Nomads_{FNAME}', - 5 => 'http://www.allbasic.info./wiki/index.php/PX:Mnemonic_{FNAMEU}' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => "'" - ), - 'REGEXPS' => array( - 1 => array( - // Line Labels - GESHI_SEARCH => '([[:space:]])([a-zA-Z_][a-zA-Z0-9_]+)(:)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - 2 => array( - // Global String Variables - GESHI_SEARCH => '(\%)([a-zA-Z_][a-zA-Z0-9_]+)(\$)', - GESHI_REPLACE => '\\1\\2\\3', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER - ) - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/purebasic.php b/system/application/libraries/geshi/purebasic.php deleted file mode 100644 index b644af3fe..000000000 --- a/system/application/libraries/geshi/purebasic.php +++ /dev/null @@ -1,303 +0,0 @@ -<?php -/************************************************************************************* - * purebasic.php - * ------- - * Author: GuShH - * Copyright: (c) 2009 Gustavo Julio Fiorenza - * Release Version: 1.0.8.6 - * Date Started: 13/06/2009 - * - * PureBasic language file for GeSHi. - * - * CHANGES - * ------- - * 13/06/2009 (1.0.0) - * - First Release - * - * TODO (updated 2009/06/13) - * ------------------------- - * Add the remaining ASM mnemonics and the 4.3x functions/etc. - * Better coloring (perhaps match the default scheme of PB?) - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'PureBasic', - 'COMMENT_SINGLE' => array( 1 => ";" ), - 'COMMENT_MULTI' => array( ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - // Keywords - 'And', 'As', 'Break', 'CallDebugger', 'Case', 'CompilerCase', 'CompilerDefault', 'CompilerElse', 'CompilerEndIf', 'CompilerEndSelect', - 'CompilerError', 'CompilerIf', 'CompilerSelect', 'Continue', 'Data', 'DataSection', 'EndDataSection', 'Debug', 'DebugLevel', 'Declare', - 'DeclareCDLL', 'DeclareDLL', 'Default', 'Define', 'Dim', 'DisableASM', 'DisableDebugger', 'DisableExplicit', 'Else', 'ElseIf', 'EnableASM', - 'EnableDebugger', 'EnableExplicit', 'End', 'EndEnumeration', 'EndIf', 'EndImport', 'EndInterface', 'EndMacro', 'EndProcedure', - 'EndSelect', 'EndStructure', 'EndStructureUnion', 'EndWith', 'Enumeration', 'Extends', 'FakeReturn', 'For', 'Next', 'ForEach', - 'ForEver', 'Global', 'Gosub', 'Goto', 'If', 'Import', 'ImportC', 'IncludeBinary', 'IncludeFile', 'IncludePath', 'Interface', 'Macro', - 'NewList', 'Not', 'Or', 'Procedure', 'ProcedureC', 'ProcedureCDLL', 'ProcedureDLL', 'ProcedureReturn', 'Protected', 'Prototype', - 'PrototypeC', 'Read', 'ReDim', 'Repeat', 'Until', 'Restore', 'Return', 'Select', 'Shared', 'Static', 'Step', 'Structure', 'StructureUnion', - 'Swap', 'To', 'Wend', 'While', 'With', 'XIncludeFile', 'XOr' - ), - 2 => array( - // All Functions - 'Abs', 'ACos', 'Add3DArchive', 'AddBillboard', 'AddDate', 'AddElement', 'AddGadgetColumn', 'AddGadgetItem', - 'AddKeyboardShortcut', 'AddMaterialLayer', 'AddPackFile', 'AddPackMemory', 'AddStatusBarField', 'AddSysTrayIcon', - 'AllocateMemory', 'AmbientColor', 'AnimateEntity', 'Asc', 'ASin', 'ATan', 'AudioCDLength', 'AudioCDName', 'AudioCDStatus', - 'AudioCDTrackLength', 'AudioCDTracks', 'AudioCDTrackSeconds', 'AvailableProgramOutput', 'AvailableScreenMemory', - 'BackColor', 'Base64Decoder', 'Base64Encoder', 'BillboardGroupLocate', 'BillboardGroupMaterial', 'BillboardGroupX', - 'BillboardGroupY', 'BillboardGroupZ', 'BillboardHeight', 'BillboardLocate', 'BillboardWidth', 'BillboardX', 'BillboardY', 'BillboardZ', - 'Bin', 'BinQ', 'Blue', 'Box', 'ButtonGadget', 'ButtonImageGadget', 'CalendarGadget', 'CallCFunction', 'CallCFunctionFast', - 'CallFunction', 'CallFunctionFast', 'CameraBackColor', 'CameraFOV', 'CameraLocate', 'CameraLookAt', 'CameraProjection', - 'CameraRange', 'CameraRenderMode', 'CameraX', 'CameraY', 'CameraZ', 'CatchImage', 'CatchSound', 'CatchSprite', - 'CatchXML', 'ChangeAlphaIntensity', 'ChangeCurrentElement', 'ChangeGamma', 'ChangeListIconGadgetDisplay', - 'ChangeSysTrayIcon', 'CheckBoxGadget', 'CheckEntityCollision', 'CheckFilename', 'ChildXMLNode', 'Chr', 'Circle', - 'ClearBillboards', 'ClearClipboard', 'ClearConsole', 'ClearError', 'ClearGadgetItemList', 'ClearList', 'ClearScreen', 'ClipSprite', - 'CloseConsole', 'CloseDatabase', 'CloseFile', 'CloseGadgetList', 'CloseHelp', 'CloseLibrary', 'CloseNetworkConnection', - 'CloseNetworkServer', 'ClosePack', 'ClosePreferences', 'CloseProgram', 'CloseScreen', 'CloseSubMenu', 'CloseWindow', - 'ColorRequester', 'ComboBoxGadget', 'CompareMemory', 'CompareMemoryString', 'ConnectionID', 'ConsoleColor', - 'ConsoleCursor', 'ConsoleError', 'ConsoleLocate', 'ConsoleTitle', 'ContainerGadget', 'CopyDirectory', 'CopyEntity', - 'CopyFile', 'CopyImage', 'CopyLight', 'CopyMaterial', 'CopyMemory', 'CopyMemoryString', 'CopyMesh', 'CopySprite', - 'CopyTexture', 'CopyXMLNode', 'Cos', 'CountBillboards', 'CountGadgetItems', 'CountLibraryFunctions', 'CountList', - 'CountMaterialLayers', 'CountProgramParameters', 'CountRenderedTriangles', 'CountString', 'CRC32Fingerprint', - 'CreateBillboardGroup', 'CreateCamera', 'CreateDirectory', 'CreateEntity', 'CreateFile', 'CreateGadgetList', - 'CreateImage', 'CreateLight', 'CreateMaterial', 'CreateMenu', 'CreateMesh', 'CreateMutex', 'CreateNetworkServer', - 'CreatePack', 'CreatePalette', 'CreateParticleEmitter', 'CreatePopupMenu', 'CreatePreferences', 'CreateSprite', - 'CreateSprite3D', 'CreateStatusBar', 'CreateTerrain', 'CreateTexture', 'CreateThread', 'CreateToolBar', 'CreateXML', - 'CreateXMLNode', 'DatabaseColumnName', 'DatabaseColumns', 'DatabaseColumnType', 'DatabaseDriverDescription', - 'DatabaseDriverName', 'DatabaseError', 'DatabaseQuery', 'DatabaseUpdate', 'Date', 'DateGadget', 'Day', 'DayOfWeek', - 'DayOfYear', 'DefaultPrinter', 'Defined', 'Delay', 'DeleteDirectory', 'DeleteElement', 'DeleteFile', 'DeleteXMLNode', - 'DESFingerprint', 'DesktopDepth', 'DesktopFrequency', 'DesktopHeight', 'DesktopMouseX', 'DesktopMouseY', 'DesktopName', - 'DesktopWidth', 'DirectoryEntryAttributes', 'DirectoryEntryDate', 'DirectoryEntryName', 'DirectoryEntrySize', - 'DirectoryEntryType', 'DisableGadget', 'DisableMaterialLighting', 'DisableMenuItem', 'DisableToolBarButton', 'DisableWindow', - 'DisASMCommand', 'DisplayAlphaSprite', 'DisplayPalette', 'DisplayPopupMenu', 'DisplayRGBFilter', 'DisplayShadowSprite', - 'DisplaySolidSprite', 'DisplaySprite', 'DisplaySprite3D', 'DisplayTranslucentSprite', 'DisplayTransparentSprite', 'DragFiles', - 'DragImage', 'DragOSFormats', 'DragPrivate', 'DragText', 'DrawAlphaImage', 'DrawImage', 'DrawingBuffer', - 'DrawingBufferPitch', 'DrawingBufferPixelFormat', 'DrawingFont', 'DrawingMode', 'DrawText', 'EditorGadget', - 'egrid_AddColumn', 'egrid_AddRows', 'egrid_AppendCells', 'egrid_ClearRows', 'egrid_CopyCells', - 'egrid_CreateCellCallback', 'egrid_CreateGrid', 'egrid_DeleteCells', 'egrid_FastDeleteCells', 'egrid_FreeGrid', - 'egrid_GetCellSelection', 'egrid_GetCellText', 'egrid_GetColumnOrderArray', 'egrid_HasSelectedCellChanged', 'egrid_Height', - 'egrid_HideEdit', 'egrid_HideGrid', 'egrid_MakeCellVisible', 'egrid_NumberOfColumns', 'egrid_NumberOfRows', - 'egrid_PasteCells', 'egrid_Register', 'egrid_RemoveCellCallback', 'egrid_RemoveColumn', 'egrid_RemoveRow', 'egrid_Resize', - 'egrid_SelectCell', 'egrid_SelectedColumn', 'egrid_SelectedRow', 'egrid_SetCellSelection', 'egrid_SetCellText', - 'egrid_SetColumnOrderArray', 'egrid_SetHeaderFont', 'egrid_SetHeaderHeight', 'egrid_SetOption', 'egrid_Width', 'egrid_x', - 'egrid_y', 'EjectAudioCD', 'ElapsedMilliseconds', 'Ellipse', 'EnableGadgetDrop', 'EnableGraphicalConsole', - 'EnableWindowDrop', 'EnableWorldCollisions', 'EnableWorldPhysics', 'Engine3DFrameRate', 'EntityAngleX', - 'EntityAnimationLength', 'EntityLocate', 'EntityMaterial', 'EntityMesh', 'EntityPhysicBody', 'EntityRenderMode', - 'EntityX', 'EntityY', 'EntityZ', 'EnvironmentVariableName', 'EnvironmentVariableValue', 'Eof', 'EventClient', - 'EventDropAction', 'EventDropBuffer', 'EventDropFiles', 'EventDropImage', 'EventDropPrivate', 'EventDropSize', - 'EventDropText', 'EventDropType', 'EventDropX', 'EventDropY', 'EventGadget', 'EventlParam', 'EventMenu', 'EventServer', - 'EventType', 'EventWindow', 'EventwParam', 'ExamineDatabaseDrivers', 'ExamineDesktops', 'ExamineDirectory', - 'ExamineEnvironmentVariables', 'ExamineIPAddresses', 'ExamineJoystick', 'ExamineKeyboard', 'ExamineLibraryFunctions', - 'ExamineMouse', 'ExaminePreferenceGroups', 'ExaminePreferenceKeys', 'ExamineScreenModes', 'ExamineWorldCollisions', - 'ExamineXMLAttributes', 'ExplorerComboGadget', 'ExplorerListGadget', 'ExplorerTreeGadget', 'ExportXML', - 'ExportXMLSize', 'FileBuffersSize', 'FileID', 'FileSeek', 'FileSize', 'FillArea', 'FindString', 'FinishDirectory', - 'FirstDatabaseRow', 'FirstElement', 'FirstWorldCollisionEntity', 'FlipBuffers', 'FlushFileBuffers', 'Fog', 'FontID', - 'FontRequester', 'FormatDate', 'FormatXML', 'Frame3DGadget', 'FreeBillboardGroup', 'FreeCamera', 'FreeEntity', - 'FreeFont', 'FreeGadget', 'FreeImage', 'FreeLight', 'FreeMaterial', 'FreeMemory', 'FreeMenu', 'FreeMesh', - 'FreeModule', 'FreeMovie', 'FreeMutex', 'FreePalette', 'FreeParticleEmitter', 'FreeSound', 'FreeSprite', - 'FreeSprite3D', 'FreeStatusBar', 'FreeTexture', 'FreeToolBar', 'FreeXML', 'FrontColor', 'GadgetHeight', 'GadgetID', - 'GadgetItemID', 'GadgetToolTip', 'GadgetType', 'GadgetWidth', 'GadgetX', 'GadgetY', 'GetActiveGadget', - 'GetActiveWindow', 'GetClientIP', 'GetClientPort', 'GetClipboardImage', 'GetClipboardText', 'GetCurrentDirectory', - 'GetCurrentEIP', 'GetDatabaseDouble', 'GetDatabaseFloat', 'GetDatabaseLong', 'GetDatabaseQuad', 'GetDatabaseString', - 'GetDisASMString', 'GetEntityAnimationTime', 'GetEntityFriction', 'GetEntityMass', 'GetEnvironmentVariable', - 'GetErrorAddress', 'GetErrorCounter', 'GetErrorDescription', 'GetErrorDLL', 'GetErrorLineNR', 'GetErrorModuleName', - 'GetErrorNumber', 'GetErrorRegister', 'GetExtensionPart', 'GetFileAttributes', 'GetFileDate', 'GetFilePart', 'GetFunction', - 'GetFunctionEntry', 'GetGadgetAttribute', 'GetGadgetColor', 'GetGadgetData', 'GetGadgetFont', - 'GetGadgetItemAttribute', 'GetGadgetItemColor', 'GetGadgetItemData', 'GetGadgetItemState', 'GetGadgetItemText', - 'GetGadgetState', 'GetGadgetText', 'GetHomeDirectory', 'GetMenuItemState', 'GetMenuItemText', 'GetMenuTitleText', - 'GetModulePosition', 'GetModuleRow', 'GetPaletteColor', 'GetPathPart', 'GetTemporaryDirectory', - 'GetToolBarButtonState', 'GetWindowColor', 'GetWindowState', 'GetWindowTitle', 'GetXMLAttribute', 'GetXMLEncoding', - 'GetXMLNodeName', 'GetXMLNodeOffset', 'GetXMLNodeText', 'GetXMLStandalone', 'GoToEIP', 'GrabImage', 'GrabSprite', - 'Green', 'Hex', 'HexQ', 'HideBillboardGroup', 'HideEntity', 'HideGadget', 'HideLight', 'HideMenu', 'HideParticleEmitter', - 'HideWindow', 'Hostname', 'Hour', 'HyperLinkGadget', 'ImageDepth', 'ImageGadget', 'ImageHeight', 'ImageID', - 'ImageOutput', 'ImageWidth', 'InitAudioCD', 'InitEngine3D', 'InitJoystick', 'InitKeyboard', 'InitMouse', 'InitMovie', - 'InitNetwork', 'InitPalette', 'InitScintilla', 'InitSound', 'InitSprite', 'InitSprite3D', 'Inkey', 'Input', 'InputRequester', - 'InsertElement', 'Int', 'IntQ', 'IPAddressField', 'IPAddressGadget', 'IPString', 'IsBillboardGroup', 'IsCamera', 'IsDatabase', - 'IsDirectory', 'IsEntity', 'IsFile', 'IsFont', 'IsGadget', 'IsImage', 'IsLibrary', 'IsLight', 'IsMaterial', 'IsMenu', 'IsMesh', - 'IsModule', 'IsMovie', 'IsPalette', 'IsParticleEmitter', 'IsProgram', 'IsScreenActive', 'IsSound', 'IsSprite', 'IsSprite3D', - 'IsStatusBar', 'IsSysTrayIcon', 'IsTexture', 'IsThread', 'IsToolBar', 'IsWindow', 'IsXML', 'JoystickAxisX', 'JoystickAxisY', - 'JoystickButton', 'KeyboardInkey', 'KeyboardMode', 'KeyboardPushed', 'KeyboardReleased', 'KillProgram', 'KillThread', - 'LastElement', 'LCase', 'Left', 'Len', 'LibraryFunctionAddress', 'LibraryFunctionName', 'LibraryID', 'LightColor', - 'LightLocate', 'LightSpecularColor', 'Line', 'LineXY', 'ListIconGadget', 'ListIndex', 'ListViewGadget', 'LoadFont', - 'LoadImage', 'LoadMesh', 'LoadModule', 'LoadMovie', 'LoadPalette', 'LoadSound', 'LoadSprite', 'LoadTexture', - 'LoadWorld', 'LoadXML', 'Loc', 'LockMutex', 'Lof', 'Log', 'Log10', 'LSet', 'LTrim', 'MainXMLNode', 'MakeIPAddress', - 'MaterialAmbientColor', 'MaterialBlendingMode', 'MaterialDiffuseColor', 'MaterialFilteringMode', 'MaterialID', - 'MaterialShadingMode', 'MaterialSpecularColor', 'MD5FileFingerprint', 'MD5Fingerprint', 'MDIGadget', 'MemorySize', - 'MemoryStringLength', 'MenuBar', 'MenuHeight', 'MenuID', 'MenuItem', 'MenuTitle', 'MeshID', 'MessageRequester', - 'Mid', 'Minute', 'ModuleVolume', 'Month', 'MouseButton', 'MouseDeltaX', 'MouseDeltaY', 'MouseLocate', 'MouseWheel', - 'MouseX', 'MouseY', 'MoveBillboard', 'MoveBillboardGroup', 'MoveCamera', 'MoveEntity', 'MoveLight', 'MoveMemory', - 'MoveParticleEmitter', 'MoveXMLNode', 'MovieAudio', 'MovieHeight', 'MovieInfo', 'MovieLength', 'MovieSeek', - 'MovieStatus', 'MovieWidth', 'NetworkClientEvent', 'NetworkServerEvent', 'NewPrinterPage', 'NextDatabaseDriver', - 'NextDatabaseRow', 'NextDirectoryEntry', 'NextElement', 'NextEnvironmentVariable', 'NextIPAddress', - 'NextLibraryFunction', 'NextPackFile', 'NextPreferenceGroup', 'NextPreferenceKey', 'NextScreenMode', - 'NextSelectedFileName', 'NextWorldCollision', 'NextXMLAttribute', 'NextXMLNode', 'OffsetOf', 'OnErrorExit', - 'OnErrorGosub', 'OnErrorGoto', 'OnErrorResume', 'OpenComPort', 'OpenConsole', 'OpenDatabase', - 'OpenDatabaseRequester', 'OpenFile', 'OpenFileRequester', 'OpenGadgetList', 'OpenHelp', 'OpenLibrary', - 'OpenNetworkConnection', 'OpenPack', 'OpenPreferences', 'OpenScreen', 'OpenSubMenu', 'OpenWindow', - 'OpenWindowedScreen', 'OptionGadget', 'OSVersion', 'PackerCallback', 'PackFileSize', 'PackMemory', 'PanelGadget', - 'ParentXMLNode', 'Parse3DScripts', 'ParseDate', 'ParticleColorFader', 'ParticleColorRange', 'ParticleEmissionRate', - 'ParticleEmitterDirection', 'ParticleEmitterLocate', 'ParticleEmitterX', 'ParticleEmitterY', 'ParticleEmitterZ', - 'ParticleMaterial', 'ParticleSize', 'ParticleTimeToLive', 'ParticleVelocity', 'PathRequester', 'PauseAudioCD', - 'PauseMovie', 'PauseThread', 'PeekB', 'PeekC', 'PeekD', 'PeekF', 'PeekL', 'PeekQ', 'PeekS', 'PeekW', 'PlayAudioCD', - 'PlayModule', 'PlayMovie', 'PlaySound', 'Plot', 'Point', 'PokeB', 'PokeC', 'PokeD', 'PokeF', 'PokeL', 'PokeQ', 'PokeS', - 'PokeW', 'Pow', 'PreferenceComment', 'PreferenceGroup', 'PreferenceGroupName', 'PreferenceKeyName', - 'PreferenceKeyValue', 'PreviousDatabaseRow', 'PreviousElement', 'PreviousXMLNode', 'Print', 'PrinterOutput', - 'PrinterPageHeight', 'PrinterPageWidth', 'PrintN', 'PrintRequester', 'ProgramExitCode', 'ProgramFilename', - 'ProgramID', 'ProgramParameter', 'ProgramRunning', 'ProgressBarGadget', 'Random', 'RandomSeed', 'RawKey', - 'ReadByte', 'ReadCharacter', 'ReadConsoleData', 'ReadData', 'ReadDouble', 'ReadFile', 'ReadFloat', 'ReadLong', - 'ReadPreferenceDouble', 'ReadPreferenceFloat', 'ReadPreferenceLong', 'ReadPreferenceQuad', - 'ReadPreferenceString', 'ReadProgramData', 'ReadProgramError', 'ReadProgramString', 'ReadQuad', 'ReadString', - 'ReadStringFormat', 'ReadWord', 'ReAllocateMemory', 'ReceiveNetworkData', 'ReceiveNetworkFile', 'Red', - 'Reg_DeleteEmptyKey', 'Reg_DeleteKey', 'Reg_DeleteValue', 'Reg_GetErrorMsg', 'Reg_GetErrorNr', - 'Reg_GetValueTyp', 'Reg_ListSubKey', 'Reg_ListSubValue', 'Reg_ReadBinary', 'Reg_ReadExpandString', - 'Reg_ReadLong', 'Reg_ReadMultiLineString', 'Reg_ReadQuad', 'Reg_ReadString', 'Reg_WriteBinary', - 'Reg_WriteExpandString', 'Reg_WriteLong', 'Reg_WriteMultiLineString', 'Reg_WriteQuad', 'Reg_WriteString', - 'ReleaseMouse', 'RemoveBillboard', 'RemoveEnvironmentVariable', 'RemoveGadgetColumn', 'RemoveGadgetItem', - 'RemoveKeyboardShortcut', 'RemoveMaterialLayer', 'RemovePreferenceGroup', 'RemovePreferenceKey', - 'RemoveString', 'RemoveSysTrayIcon', 'RemoveXMLAttribute', 'RenameFile', 'RenderMovieFrame', 'RenderWorld', - 'ReplaceString', 'ResetList', 'ResizeBillboard', 'ResizeEntity', 'ResizeGadget', 'ResizeImage', 'ResizeMovie', - 'ResizeParticleEmitter', 'ResizeWindow', 'ResolveXMLAttributeName', 'ResolveXMLNodeName', 'ResumeAudioCD', - 'ResumeMovie', 'ResumeThread', 'RGB', 'Right', 'RootXMLNode', 'RotateBillboardGroup', 'RotateCamera', - 'RotateEntity', 'RotateMaterial', 'RotateSprite3D', 'Round', 'RSet', 'RTrim', 'RunProgram', 'SaveFileRequester', - 'SaveImage', 'SaveSprite', 'SaveXML', 'ScaleEntity', 'ScaleMaterial', 'ScintillaGadget', 'ScintillaSendMessage', - 'ScreenID', 'ScreenModeDepth', 'ScreenModeHeight', 'ScreenModeRefreshRate', 'ScreenModeWidth', - 'ScreenOutput', 'ScrollAreaGadget', 'ScrollBarGadget', 'ScrollMaterial', 'Second', 'SecondWorldCollisionEntity', - 'SelectedFilePattern', 'SelectedFontColor', 'SelectedFontName', 'SelectedFontSize', 'SelectedFontStyle', - 'SelectElement', 'SendNetworkData', 'SendNetworkFile', 'SendNetworkString', 'SetActiveGadget', - 'SetActiveWindow', 'SetClipboardImage', 'SetClipboardText', 'SetCurrentDirectory', 'SetDragCallback', - 'SetDropCallback', 'SetEntityAnimationTime', 'SetEntityFriction', 'SetEntityMass', 'SetEnvironmentVariable', - 'SetErrorNumber', 'SetFileAttributes', 'SetFileDate', 'SetFrameRate', 'SetGadgetAttribute', 'SetGadgetColor', - 'SetGadgetData', 'SetGadgetFont', 'SetGadgetItemAttribute', 'SetGadgetItemColor', 'SetGadgetItemData', - 'SetGadgetItemState', 'SetGadgetItemText', 'SetGadgetState', 'SetGadgetText', 'SetMenuItemState', - 'SetMenuItemText', 'SetMenuTitleText', 'SetMeshData', 'SetModulePosition', 'SetPaletteColor', 'SetRefreshRate', - 'SetToolBarButtonState', 'SetWindowCallback', 'SetWindowColor', 'SetWindowState', 'SetWindowTitle', - 'SetXMLAttribute', 'SetXMLEncoding', 'SetXMLNodeName', 'SetXMLNodeOffset', 'SetXMLNodeText', - 'SetXMLStandalone', 'Sin', 'SizeOf', 'SkyBox', 'SkyDome', 'SmartWindowRefresh', 'SortArray', 'SortList', - 'SortStructuredArray', 'SortStructuredList', 'SoundFrequency', 'SoundPan', 'SoundVolume', 'Space', - 'SpinGadget', 'SplitterGadget', 'Sprite3DBlendingMode', 'Sprite3DQuality', 'SpriteCollision', 'SpriteDepth', - 'SpriteHeight', 'SpriteID', 'SpriteOutput', 'SpritePixelCollision', 'SpriteWidth', 'Sqr', 'Start3D', 'StartDrawing', - 'StartPrinting', 'StartSpecialFX', 'StatusBarHeight', 'StatusBarIcon', 'StatusBarID', 'StatusBarText', - 'StickyWindow', 'Stop3D', 'StopAudioCD', 'StopDrawing', 'StopModule', 'StopMovie', 'StopPrinting', - 'StopSound', 'StopSpecialFX', 'Str', 'StrD', 'StrF', 'StringByteLength', 'StringField', 'StringGadget', 'StrQ', - 'StrU', 'Subsystem', 'SwapElements', 'SysTrayIconToolTip', 'Tan', 'TerrainHeight', 'TextGadget', 'TextHeight', - 'TextureHeight', 'TextureID', 'TextureOutput', 'TextureWidth', 'TextWidth', 'ThreadID', 'ThreadPriority', - 'ToolBarHeight', 'ToolBarID', 'ToolBarImageButton', 'ToolBarSeparator', 'ToolBarStandardButton', - 'ToolBarToolTip', 'TrackBarGadget', 'TransformSprite3D', 'TransparentSpriteColor', 'TreeGadget', 'Trim', - 'TruncateFile', 'TryLockMutex', 'UCase', 'UnlockMutex', 'UnpackMemory', 'UseAudioCD', 'UseBuffer', - 'UseGadgetList', 'UseJPEGImageDecoder', 'UseJPEGImageEncoder', 'UseODBCDatabase', 'UseOGGSoundDecoder', - 'UsePNGImageDecoder', 'UsePNGImageEncoder', 'UseTGAImageDecoder', 'UseTIFFImageDecoder', 'Val', 'ValD', - 'ValF', 'ValQ', 'WaitProgram', 'WaitThread', 'WaitWindowEvent', 'WebGadget', 'WebGadgetPath', 'WindowEvent', - 'WindowHeight', 'WindowID', 'WindowMouseX', 'WindowMouseY', 'WindowOutput', 'WindowWidth', 'WindowX', - 'WindowY', 'WorldGravity', 'WorldShadows', 'WriteByte', 'WriteCharacter', 'WriteConsoleData', 'WriteData', - 'WriteDouble', 'WriteFloat', 'WriteLong', 'WritePreferenceDouble', 'WritePreferenceFloat', 'WritePreferenceLong', - 'WritePreferenceQuad', 'WritePreferenceString', 'WriteProgramData', 'WriteProgramString', 'WriteProgramStringN', - 'WriteQuad', 'WriteString', 'WriteStringFormat', 'WriteStringN', 'WriteWord', 'XMLAttributeName', 'XMLAttributeValue', - 'XMLChildCount', 'XMLError', 'XMLErrorLine', 'XMLErrorPosition', 'XMLNodeFromID', 'XMLNodeFromPath', 'XMLNodePath', - 'XMLNodeType', 'XMLStatus', 'Year', 'ZoomSprite3D' - ), - 3 => array( - // some ASM instructions - 'AAA', 'AAD', 'AAM', 'AAS', 'ADC', 'ADD', 'AND', 'ARPL', 'BOUND', 'BSF', 'BSR', 'BSWAP', 'BT', 'BTC', 'BTR', - 'BTS', 'CALL', 'CBW', 'CDQ', 'CLC', 'CLD', 'CLI', 'CLTS', 'CMC', 'CMP', 'CMPS', 'CMPXCHG', 'CWD', 'CWDE', - 'DAA', 'DAS', 'DB', 'DD', 'DEC', 'DIV', 'DW', 'ENTER', 'ESC', 'F2XM1', 'FABS', 'FADD', 'FCHS', 'FCLEX', - 'FCOM', 'FDIV', 'FDIVR', 'FFREE', 'FINCSTP', 'FINIT', 'FLD', 'FLD1', 'FLDCW', 'FMUL', 'FNOP', 'FPATAN', - 'FPREM', 'FRNDINT', 'FSAVE', 'FSCALE', 'FSETPM', 'FSIN', 'FSQRT', 'FST', 'FSTENV', 'FSTSW', 'FSUB', - 'FSUBR', 'FTST', 'FUCOM', 'FWAIT', 'FXAM', 'FXCH', 'FXTRACT', 'FYL2X', 'FYL2XP1', 'HLT', 'IDIV', 'IMUL', - 'IN', 'INC', 'INS', 'INT', 'INTO', 'INVLPG', 'IRET', 'IRETD', 'JA', 'JAE', 'JB', 'JBE', 'JC', 'JCXZ', 'JE', 'JECXZ', - 'JG', 'JGE', 'JL', 'JLE', 'JMP', 'JNA', 'JNAE', 'JNB', 'JNBE', 'JNC', 'JNE', 'JNG', 'JNGE', 'JNL', 'JNLE', 'JNO', 'JNP', - 'JNS', 'JNZ', 'JO', 'JP', 'JPE', 'JPO', 'JS', 'JZ', 'LAHF', 'LAR', 'LDS', 'LEA', 'LEAVE', 'LES', 'LFS', 'LGDT', 'LGS', - 'LIDT', 'LLDT', 'LMSW', 'LOCK', 'LODS', 'LOOP', 'LOOPE', 'LOOPNE', 'LOOPNZ', 'LOOPZ', 'LSL', 'LSS', 'LTR', - 'MOV', 'MOVS', 'MOVSX', 'MOVZX', 'MUL', 'NEG', 'NOP', 'NOT', 'OR', 'OUT', 'OUTS', 'POP', 'POPA', 'POPAD', - 'POPF', 'POPFD', 'PUSH', 'PUSHA', 'PUSHAD', 'PUSHF', 'PUSHFD', 'RCL', 'RCR', 'REP', 'REPE', 'REPNE', - 'REPNZ', 'REPZ', 'RET', 'RETF', 'ROL', 'ROR', 'SAHF', 'SAL', 'SAR', 'SBB', 'SCAS', 'SETAE', 'SETB', 'SETBE', - 'SETC', 'SETE', 'SETG', 'SETGE', 'SETL', 'SETLE', 'SETNA', 'SETNAE', 'SETNB', 'SETNC', 'SETNE', 'SETNG', - 'SETNGE', 'SETNL', 'SETNLE', 'SETNO', 'SETNP', 'SETNS', 'SETNZ', 'SETO', 'SETP', 'SETPE', 'SETPO', - 'SETS', 'SETZ', 'SGDT', 'SHL', 'SHLD', 'SHR', 'SHRD', 'SIDT', 'SLDT', 'SMSW', 'STC', 'STD', 'STI', - 'STOS', 'STR', 'SUB', 'TEST', 'VERR', 'VERW', 'WAIT', 'WBINVD', 'XCHG', 'XLAT', 'XLATB', 'XOR' - ) - ), - 'SYMBOLS' => array( - '(', ')', '+', '-', '*', '/', '\\', '>', '<', '=', '<=', '>=', '&', '|', '!', '~', '<>', '>>', '<<', '%' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000066; font-weight: bold;', - 2 => 'color: #0000ff;', - 3 => 'color: #000fff;' - ), - 'COMMENTS' => array( - 1 => 'color: #ff0000; font-style: italic;', - 'MULTI' => 'color: #ff0000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '\\' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => false, - 1 => false - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/python.php b/system/application/libraries/geshi/python.php deleted file mode 100644 index a482d6928..000000000 --- a/system/application/libraries/geshi/python.php +++ /dev/null @@ -1,237 +0,0 @@ -<?php -/************************************************************************************* - * python.php - * ---------- - * Author: Roberto Rossi (rsoftware@altervista.org) - * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/30 - * - * Python language file for GeSHi. - * - * CHANGES - * ------- - * 2008/12/18 - * - Added missing functions and keywords. Also added two new Python 3.0 types. SF#2441839 - * 2005/05/26 - * - Modifications by Tim (tim@skreak.com): added more keyword categories, tweaked colors - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/08/30 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Python', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - //Longest quotemarks ALWAYS first - 'QUOTEMARKS' => array('"""', '"', "'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - - /* - ** Set 1: reserved words - ** http://python.org/doc/current/ref/keywords.html - */ - 1 => array( - 'and', 'del', 'for', 'is', 'raise', 'assert', 'elif', 'from', 'lambda', 'return', 'break', - 'else', 'global', 'not', 'try', 'class', 'except', 'if', 'or', 'while', 'continue', 'exec', - 'import', 'pass', 'yield', 'def', 'finally', 'in', 'print', 'with', 'as' - ), - - /* - ** Set 2: builtins - ** http://python.org/doc/current/lib/built-in-funcs.html - */ - 2 => array( - '__import__', 'abs', 'basestring', 'bool', 'callable', 'chr', 'classmethod', 'cmp', - 'compile', 'complex', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'execfile', - 'file', 'filter', 'float', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', - 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'list', 'locals', - 'long', 'map', 'max', 'min', 'object', 'oct', 'open', 'ord', 'pow', 'property', 'range', - 'raw_input', 'reduce', 'reload', 'reversed', 'round', 'set', 'setattr', 'slice', - 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr', 'unicode', - 'vars', 'xrange', 'zip', - // Built-in constants: http://python.org/doc/current/lib/node35.html - 'False', 'True', 'None', 'NotImplemented', 'Ellipsis', - // Built-in Exceptions: http://python.org/doc/current/lib/module-exceptions.html - 'Exception', 'StandardError', 'ArithmeticError', 'LookupError', 'EnvironmentError', - 'AssertionError', 'AttributeError', 'EOFError', 'FloatingPointError', 'IOError', - 'ImportError', 'IndexError', 'KeyError', 'KeyboardInterrupt', 'MemoryError', 'NameError', - 'NotImplementedError', 'OSError', 'OverflowError', 'ReferenceError', 'RuntimeError', - 'StopIteration', 'SyntaxError', 'SystemError', 'SystemExit', 'TypeError', - 'UnboundlocalError', 'UnicodeError', 'UnicodeEncodeError', 'UnicodeDecodeError', - 'UnicodeTranslateError', 'ValueError', 'WindowsError', 'ZeroDivisionError', 'Warning', - 'UserWarning', 'DeprecationWarning', 'PendingDeprecationWarning', 'SyntaxWarning', - 'RuntimeWarning', 'FutureWarning', - // self: this is a common python convention (but not a reserved word) - 'self', - // other - 'any', 'all' - ), - - /* - ** Set 3: standard library - ** http://python.org/doc/current/lib/modindex.html - */ - 3 => array( - '__builtin__', '__future__', '__main__', '_winreg', 'aifc', 'AL', 'al', 'anydbm', - 'array', 'asynchat', 'asyncore', 'atexit', 'audioop', 'base64', 'BaseHTTPServer', - 'Bastion', 'binascii', 'binhex', 'bisect', 'bsddb', 'bz2', 'calendar', 'cd', 'cgi', - 'CGIHTTPServer', 'cgitb', 'chunk', 'cmath', 'cmd', 'code', 'codecs', 'codeop', - 'collections', 'colorsys', 'commands', 'compileall', 'compiler', - 'ConfigParser', 'Cookie', 'cookielib', 'copy', 'copy_reg', 'cPickle', 'crypt', - 'cStringIO', 'csv', 'curses', 'datetime', 'dbhash', 'dbm', 'decimal', 'DEVICE', - 'difflib', 'dircache', 'dis', 'distutils', 'dl', 'doctest', 'DocXMLRPCServer', 'dumbdbm', - 'dummy_thread', 'dummy_threading', 'email', 'encodings', 'errno', 'exceptions', 'fcntl', - 'filecmp', 'fileinput', 'FL', 'fl', 'flp', 'fm', 'fnmatch', 'formatter', 'fpectl', - 'fpformat', 'ftplib', 'gc', 'gdbm', 'getopt', 'getpass', 'gettext', 'GL', 'gl', 'glob', - 'gopherlib', 'grp', 'gzip', 'heapq', 'hmac', 'hotshot', 'htmlentitydefs', 'htmllib', - 'HTMLParser', 'httplib', 'imageop', 'imaplib', 'imgfile', 'imghdr', 'imp', 'inspect', - 'itertools', 'jpeg', 'keyword', 'linecache', 'locale', 'logging', 'mailbox', 'mailcap', - 'marshal', 'math', 'md5', 'mhlib', 'mimetools', 'mimetypes', 'MimeWriter', 'mimify', - 'mmap', 'msvcrt', 'multifile', 'mutex', 'netrc', 'new', 'nis', 'nntplib', 'operator', - 'optparse', 'os', 'ossaudiodev', 'parser', 'pdb', 'pickle', 'pickletools', 'pipes', - 'pkgutil', 'platform', 'popen2', 'poplib', 'posix', 'posixfile', 'pprint', 'profile', - 'pstats', 'pty', 'pwd', 'py_compile', 'pyclbr', 'pydoc', 'Queue', 'quopri', 'random', - 're', 'readline', 'repr', 'resource', 'rexec', 'rfc822', 'rgbimg', 'rlcompleter', - 'robotparser', 'sched', 'ScrolledText', 'select', 'sets', 'sgmllib', 'sha', 'shelve', - 'shlex', 'shutil', 'signal', 'SimpleHTTPServer', 'SimpleXMLRPCServer', 'site', 'smtpd', - 'smtplib', 'sndhdr', 'socket', 'SocketServer', 'stat', 'statcache', 'statvfs', 'string', - 'StringIO', 'stringprep', 'struct', 'subprocess', 'sunau', 'SUNAUDIODEV', 'sunaudiodev', - 'symbol', 'sys', 'syslog', 'tabnanny', 'tarfile', 'telnetlib', 'tempfile', 'termios', - 'test', 'textwrap', 'thread', 'threading', 'time', 'timeit', 'Tix', 'Tkinter', 'token', - 'tokenize', 'traceback', 'tty', 'turtle', 'types', 'unicodedata', 'unittest', 'urllib2', - 'urllib', 'urlparse', 'user', 'UserDict', 'UserList', 'UserString', 'uu', 'warnings', - 'wave', 'weakref', 'webbrowser', 'whichdb', 'whrandom', 'winsound', 'xdrlib', 'xml', - 'xmllib', 'xmlrpclib', 'zipfile', 'zipimport', 'zlib', - // Python 3.0 - 'bytes', 'bytearray' - ), - - /* - ** Set 4: special methods - ** http://python.org/doc/current/ref/specialnames.html - */ - 4 => array( - /* - // Iterator types: http://python.org/doc/current/lib/typeiter.html - '__iter__', 'next', - // String types: http://python.org/doc/current/lib/string-methods.html - 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', - 'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', - 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'replace', 'rfind', 'rindex', 'rjust', - 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', - 'translate', 'upper', 'zfill', - */ - // Basic customization: http://python.org/doc/current/ref/customization.html - '__new__', '__init__', '__del__', '__repr__', '__str__', - '__lt__', '__le__', '__eq__', '__ne__', '__gt__', '__ge__', '__cmp__', '__rcmp__', - '__hash__', '__nonzero__', '__unicode__', '__dict__', - // Attribute access: http://python.org/doc/current/ref/attribute-access.html - '__setattr__', '__delattr__', '__getattr__', '__getattribute__', '__get__', '__set__', - '__delete__', '__slots__', - // Class creation, callable objects - '__metaclass__', '__call__', - // Container types: http://python.org/doc/current/ref/sequence-types.html - '__len__', '__getitem__', '__setitem__', '__delitem__', '__iter__', '__contains__', - '__getslice__', '__setslice__', '__delslice__', - // Numeric types: http://python.org/doc/current/ref/numeric-types.html - '__abs__','__add__','__and__','__coerce__','__div__','__divmod__','__float__', - '__hex__','__iadd__','__isub__','__imod__','__idiv__','__ipow__','__iand__', - '__ior__','__ixor__', '__ilshift__','__irshift__','__invert__','__int__', - '__long__','__lshift__', - '__mod__','__mul__','__neg__','__oct__','__or__','__pos__','__pow__', - '__radd__','__rdiv__','__rdivmod__','__rmod__','__rpow__','__rlshift__','__rrshift__', - '__rshift__','__rsub__','__rmul__','__rand__','__rxor__','__ror__', - '__sub__','__xor__' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', '`' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #ff7700;font-weight:bold;', // Reserved - 2 => 'color: #008000;', // Built-ins + self - 3 => 'color: #dc143c;', // Standard lib - 4 => 'color: #0000cd;' // Special methods - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: black;' - ), - 'STRINGS' => array( - 0 => 'color: #483d8b;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff4500;' - ), - 'METHODS' => array( - 1 => 'color: black;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/qbasic.php b/system/application/libraries/geshi/qbasic.php deleted file mode 100644 index c83cb188e..000000000 --- a/system/application/libraries/geshi/qbasic.php +++ /dev/null @@ -1,158 +0,0 @@ -<?php -/************************************************************************************* - * qbasic.php - * ---------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/20 - * - * QBasic/QuickBASIC language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2004/11/27 (1.0.3) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.2) - * - Added support for URLs - * 2004/08/05 (1.0.1) - * - Added support for symbols - * - Removed unnessecary slashes from some keywords - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * Make sure all possible combinations of keywords with - * a space in them (EXIT FOR, END SELECT) are added - * to the first keyword group - * * Update colours, especially for the first keyword group - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ -$language_data = array ( - 'LANG_NAME' => 'QBasic/QuickBASIC', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Single-Line Comments using REM command - 2 => "/\bREM.*?$/i", - //Line numbers - 3 => "/^\s*\d+/im" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'DO', 'LOOP', 'WHILE', 'WEND', 'THEN', 'ELSE', 'ELSEIF', 'IF', - 'FOR', 'TO', 'NEXT', 'STEP', 'GOTO', 'GOSUB', 'CALL', 'CALLS', - 'SUB', 'FUNCTION', 'RETURN', 'RESUME', 'SELECT', 'CASE', 'UNTIL' - ), - 3 => array( - 'ABS', 'ABSOLUTE', 'ACCESS', 'ALIAS', 'AND', 'ANY', 'APPEND', 'AS', 'ASC', 'ATN', - 'BASE', 'BEEP', 'BINARY', 'BLOAD', 'BSAVE', 'BYVAL', - 'CDBL', 'CDECL', 'CHAIN', 'CHDIR', 'CHR$', 'CINT', 'CIRCLE', 'CLEAR', - 'CLNG', 'CLOSE', 'CLS', 'COM', 'COMMAND$', 'COMMON', 'CONST', 'COS', 'CSNG', - 'CSRLIN', 'CVD', 'CVDMBF', 'CVI', 'CVL', 'CVS', 'CVSMDF', 'DATA', 'DATE$', - 'DECLARE', 'DEF', 'FN', 'SEG', 'DEFDBL', 'DEFINT', 'DEFLNG', 'DEFSNG', 'DEFSTR', - 'DIM', 'DOUBLE', 'DRAW', 'END', 'ENVIRON', 'ENVIRON$', 'EOF', 'EQV', 'ERASE', - 'ERDEV', 'ERDEV$', 'ERL', 'ERR', 'ERROR', 'EXIT', 'EXP', 'FIELD', 'FILEATTR', - 'FILES', 'FIX', 'FRE', 'FREEFILE', 'GET', 'HEX$', 'IMP', 'INKEY$', - 'INP', 'INPUT', 'INPUT$', 'INSTR', 'INT', 'INTEGER', 'IOCTL', 'IOCTL$', 'IS', - 'KEY', 'KILL', 'LBOUND', 'LCASE$', 'LEFT$', 'LEN', 'LET', 'LINE', 'LIST', 'LOC', - 'LOCAL', 'LOCATE', 'LOCK', 'LOF', 'LOG', 'LONG', 'LPOS', 'LPRINT', - 'LSET', 'LTRIM$', 'MID$', 'MKD$', 'MKDIR', 'MKDMBF$', 'MKI$', 'MKL$', - 'MKS$', 'MKSMBF$', 'MOD', 'NAME', 'NOT', 'OCT$', 'OFF', 'ON', 'PEN', 'PLAY', - 'OPEN', 'OPTION', 'OR', 'OUT', 'OUTPUT', - 'PAINT', 'PALETTE', 'PCOPY', 'PEEK', 'PMAP', 'POINT', 'POKE', 'POS', 'PRESET', - 'PRINT', 'PSET', 'PUT', 'RANDOM', 'RANDOMIZE', 'READ', 'REDIM', 'RESET', - 'RESTORE', 'RIGHT$', 'RMDIR', 'RND', 'RSET', 'RTRIM$', 'RUN', 'SADD', 'SCREEN', - 'SEEK', 'SETMEM', 'SGN', 'SHARED', 'SHELL', 'SIGNAL', 'SIN', 'SINGLE', 'SLEEP', - 'SOUND', 'SPACE$', 'SPC', 'SQR', 'STATIC', 'STICK', 'STOP', 'STR$', 'STRIG', - 'STRING', 'STRING$', 'SWAP', 'SYSTEM', 'TAB', 'TAN', 'TIME$', 'TIMER', - 'TROFF', 'TRON', 'TYPE', 'UBOUND', 'UCASE$', 'UEVENT', 'UNLOCK', 'USING', 'VAL', - 'VARPTR', 'VARPTR$', 'VARSEG', 'VIEW', 'WAIT', 'WIDTH', 'WINDOW', 'WRITE', 'XOR' - ) - ), - 'SYMBOLS' => array( - '(', ')', ',', '+', '-', '*', '/', '=', '<', '>', '^' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #a1a100;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;', - 3 => 'color: #8080C0;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 1 => 'color: #cc66cc;', - 2 => 'color: #339933;' - ) - ), - 'URLS' => array( - 1 => '', - 3 => 'http://www.qbasicnews.com/qboho/qck{FNAMEL}.shtml' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 1 => '&(?:H[0-9a-fA-F]+|O[0-7]+)(?!\w)', - 2 => '#[0-9]+(?!\w)' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/rails.php b/system/application/libraries/geshi/rails.php deleted file mode 100644 index 777fdd814..000000000 --- a/system/application/libraries/geshi/rails.php +++ /dev/null @@ -1,406 +0,0 @@ -<?php -/************************************************************************************* - * rails.php - * --------- - * Author: Moises Deniz - * Copyright: (c) 2005 Moises Deniz - * Release Version: 1.0.8.6 - * Date Started: 2007/03/21 - * - * Ruby (with Ruby on Rails Framework) language file for GeSHi. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Rails', - 'COMMENT_SINGLE' => array(1 => "#"), - 'COMMENT_MULTI' => array("=begin" => "=end"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', '`','\''), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'alias', 'and', 'begin', 'break', 'case', 'class', - 'def', 'defined', 'do', 'else', 'elsif', 'end', - 'ensure', 'for', 'if', 'in', 'module', 'while', - 'next', 'not', 'or', 'redo', 'rescue', 'yield', - 'retry', 'super', 'then', 'undef', 'unless', - 'until', 'when', 'BEGIN', 'END', 'include' - ), - 2 => array( - '__FILE__', '__LINE__', 'false', 'nil', 'self', 'true', - 'return' - ), - 3 => array( - 'Array', 'Float', 'Integer', 'String', 'at_exit', - 'autoload', 'binding', 'caller', 'catch', 'chop', 'chop!', - 'chomp', 'chomp!', 'eval', 'exec', 'exit', 'exit!', 'fail', - 'fork', 'format', 'gets', 'global_variables', 'gsub', 'gsub!', - 'iterator?', 'lambda', 'load', 'local_variables', 'loop', - 'open', 'p', 'print', 'printf', 'proc', 'putc', 'puts', - 'raise', 'rand', 'readline', 'readlines', 'require', 'select', - 'sleep', 'split', 'sprintf', 'srand', 'sub', 'sub!', 'syscall', - 'system', 'trace_var', 'trap', 'untrace_var' - ), - 4 => array( - 'Abbrev', 'ArgumentError', 'Base64', 'Benchmark', - 'Benchmark::Tms', 'Bignum', 'Binding', 'CGI', 'CGI::Cookie', - 'CGI::HtmlExtension', 'CGI::QueryExtension', - 'CGI::Session', 'CGI::Session::FileStore', - 'CGI::Session::MemoryStore', 'Class', 'Comparable', 'Complex', - 'ConditionVariable', 'Continuation', 'Data', - 'Date', 'DateTime', 'Delegator', 'Dir', 'EOFError', 'ERB', - 'ERB::Util', 'Enumerable', 'Enumerable::Enumerator', 'Errno', - 'Exception', 'FalseClass', 'File', - 'File::Constants', 'File::Stat', 'FileTest', 'FileUtils', - 'FileUtils::DryRun', 'FileUtils::NoWrite', - 'FileUtils::StreamUtils_', 'FileUtils::Verbose', 'Find', - 'Fixnum', 'FloatDomainError', 'Forwardable', 'GC', 'Generator', - 'Hash', 'IO', 'IOError', 'Iconv', 'Iconv::BrokenLibrary', - 'Iconv::Failure', 'Iconv::IllegalSequence', - 'Iconv::InvalidCharacter', 'Iconv::InvalidEncoding', - 'Iconv::OutOfRange', 'IndexError', 'Interrupt', 'Kernel', - 'LoadError', 'LocalJumpError', 'Logger', 'Logger::Application', - 'Logger::Error', 'Logger::Formatter', 'Logger::LogDevice', - 'Logger::LogDevice::LogDeviceMutex', 'Logger::Severity', - 'Logger::ShiftingError', 'Marshal', 'MatchData', - 'Math', 'Matrix', 'Method', 'Module', 'Mutex', 'NameError', - 'NameError::message', 'NilClass', 'NoMemoryError', - 'NoMethodError', 'NotImplementedError', 'Numeric', 'Object', - 'ObjectSpace', 'Observable', 'PStore', 'PStore::Error', - 'Pathname', 'Precision', 'Proc', 'Process', 'Process::GID', - 'Process::Status', 'Process::Sys', 'Process::UID', 'Queue', - 'Range', 'RangeError', 'Rational', 'Regexp', 'RegexpError', - 'RuntimeError', 'ScriptError', 'SecurityError', 'Set', - 'Shellwords', 'Signal', 'SignalException', 'SimpleDelegator', - 'SingleForwardable', 'Singleton', 'SingletonClassMethods', - 'SizedQueue', 'SortedSet', 'StandardError', 'StringIO', - 'StringScanner', 'StringScanner::Error', 'Struct', 'Symbol', - 'SyncEnumerator', 'SyntaxError', 'SystemCallError', - 'SystemExit', 'SystemStackError', 'Tempfile', - 'Test::Unit::TestCase', 'Test::Unit', 'Test', 'Thread', - 'ThreadError', 'ThreadGroup', - 'ThreadsWait', 'Time', 'TrueClass', 'TypeError', 'URI', - 'URI::BadURIError', 'URI::Error', 'URI::Escape', 'URI::FTP', - 'URI::Generic', 'URI::HTTP', 'URI::HTTPS', - 'URI::InvalidComponentError', 'URI::InvalidURIError', - 'URI::LDAP', 'URI::MailTo', 'URI::REGEXP', - 'URI::REGEXP::PATTERN', 'UnboundMethod', 'Vector', 'YAML', - 'ZeroDivisionError', 'Zlib', - 'Zlib::BufError', 'Zlib::DataError', 'Zlib::Deflate', - 'Zlib::Error', 'Zlib::GzipFile', 'Zlib::GzipFile::CRCError', - 'Zlib::GzipFile::Error', 'Zlib::GzipFile::LengthError', - 'Zlib::GzipFile::NoFooter', 'Zlib::GzipReader', - 'Zlib::GzipWriter', 'Zlib::Inflate', 'Zlib::MemError', - 'Zlib::NeedDict', 'Zlib::StreamEnd', 'Zlib::StreamError', - 'Zlib::VersionError', - 'Zlib::ZStream', - 'ActionController::AbstractRequest', - 'ActionController::Assertions::DomAssertions', - 'ActionController::Assertions::ModelAssertions', - 'ActionController::Assertions::ResponseAssertions', - 'ActionController::Assertions::RoutingAssertions', - 'ActionController::Assertions::SelectorAssertions', - 'ActionController::Assertions::TagAssertions', - 'ActionController::Base', - 'ActionController::Benchmarking::ClassMethods', - 'ActionController::Caching', - 'ActionController::Caching::Actions', - 'ActionController::Caching::Actions::ActionCachePath', - 'ActionController::Caching::Fragments', - 'ActionController::Caching::Pages', - 'ActionController::Caching::Pages::ClassMethods', - 'ActionController::Caching::Sweeping', - 'ActionController::Components', - 'ActionController::Components::ClassMethods', - 'ActionController::Components::InstanceMethods', - 'ActionController::Cookies', - 'ActionController::Filters::ClassMethods', - 'ActionController::Flash', - 'ActionController::Flash::FlashHash', - 'ActionController::Helpers::ClassMethods', - 'ActionController::Integration::Session', - 'ActionController::IntegrationTest', - 'ActionController::Layout::ClassMethods', - 'ActionController::Macros', - 'ActionController::Macros::AutoComplete::ClassMethods', - 'ActionController::Macros::InPlaceEditing::ClassMethods', - 'ActionController::MimeResponds::InstanceMethods', - 'ActionController::Pagination', - 'ActionController::Pagination::ClassMethods', - 'ActionController::Pagination::Paginator', - 'ActionController::Pagination::Paginator::Page', - 'ActionController::Pagination::Paginator::Window', - 'ActionController::Rescue', 'ActionController::Resources', - 'ActionController::Routing', - 'ActionController::Scaffolding::ClassMethods', - 'ActionController::SessionManagement::ClassMethods', - 'ActionController::Streaming', 'ActionController::TestProcess', - 'ActionController::TestUploadedFile', - 'ActionController::UrlWriter', - 'ActionController::Verification::ClassMethods', - 'ActionMailer::Base', 'ActionView::Base', - 'ActionView::Helpers::ActiveRecordHelper', - 'ActionView::Helpers::AssetTagHelper', - 'ActionView::Helpers::BenchmarkHelper', - 'ActionView::Helpers::CacheHelper', - 'ActionView::Helpers::CaptureHelper', - 'ActionView::Helpers::DateHelper', - 'ActionView::Helpers::DebugHelper', - 'ActionView::Helpers::FormHelper', - 'ActionView::Helpers::FormOptionsHelper', - 'ActionView::Helpers::FormTagHelper', - 'ActionView::Helpers::JavaScriptHelper', - 'ActionView::Helpers::JavaScriptMacrosHelper', - 'ActionView::Helpers::NumberHelper', - 'ActionView::Helpers::PaginationHelper', - 'ActionView::Helpers::PrototypeHelper', - 'ActionView::Helpers::PrototypeHelper::JavaScriptGenerator::GeneratorMethods', - 'ActionView::Helpers::ScriptaculousHelper', - 'ActionView::Helpers::TagHelper', - 'ActionView::Helpers::TextHelper', - 'ActionView::Helpers::UrlHelper', 'ActionView::Partials', - 'ActionWebService::API::Method', 'ActionWebService::Base', - 'ActionWebService::Client::Soap', - 'ActionWebService::Client::XmlRpc', - 'ActionWebService::Container::ActionController::ClassMethods', - 'ActionWebService::Container::Delegated::ClassMethods', - 'ActionWebService::Container::Direct::ClassMethods', - 'ActionWebService::Invocation::ClassMethods', - 'ActionWebService::Scaffolding::ClassMethods', - 'ActionWebService::SignatureTypes', 'ActionWebService::Struct', - 'ActiveRecord::Acts::List::ClassMethods', - 'ActiveRecord::Acts::List::InstanceMethods', - 'ActiveRecord::Acts::NestedSet::ClassMethods', - 'ActiveRecord::Acts::NestedSet::InstanceMethods', - 'ActiveRecord::Acts::Tree::ClassMethods', - 'ActiveRecord::Acts::Tree::InstanceMethods', - 'ActiveRecord::Aggregations::ClassMethods', - 'ActiveRecord::Associations::ClassMethods', - 'ActiveRecord::AttributeMethods::ClassMethods', - 'ActiveRecord::Base', - 'ActiveRecord::Calculations::ClassMethods', - 'ActiveRecord::Callbacks', - 'ActiveRecord::ConnectionAdapters::AbstractAdapter', - 'ActiveRecord::ConnectionAdapters::Column', - 'ActiveRecord::ConnectionAdapters::DB2Adapter', - 'ActiveRecord::ConnectionAdapters::DatabaseStatements', - 'ActiveRecord::ConnectionAdapters::FirebirdAdapter', - 'ActiveRecord::ConnectionAdapters::FrontBaseAdapter', - 'ActiveRecord::ConnectionAdapters::MysqlAdapter', - 'ActiveRecord::ConnectionAdapters::OpenBaseAdapter', - 'ActiveRecord::ConnectionAdapters::OracleAdapter', - 'ActiveRecord::ConnectionAdapters::PostgreSQLAdapter', - 'ActiveRecord::ConnectionAdapters::Quoting', - 'ActiveRecord::ConnectionAdapters::SQLServerAdapter', - 'ActiveRecord::ConnectionAdapters::SQLiteAdapter', - 'ActiveRecord::ConnectionAdapters::SchemaStatements', - 'ActiveRecord::ConnectionAdapters::SybaseAdapter::ColumnWithIdentity', - 'ActiveRecord::ConnectionAdapters::SybaseAdapterContext', - 'ActiveRecord::ConnectionAdapters::TableDefinition', - 'ActiveRecord::Errors', 'ActiveRecord::Locking', - 'ActiveRecord::Locking::Optimistic', - 'ActiveRecord::Locking::Optimistic::ClassMethods', - 'ActiveRecord::Locking::Pessimistic', - 'ActiveRecord::Migration', 'ActiveRecord::Observer', - 'ActiveRecord::Observing::ClassMethods', - 'ActiveRecord::Reflection::ClassMethods', - 'ActiveRecord::Reflection::MacroReflection', - 'ActiveRecord::Schema', 'ActiveRecord::Timestamp', - 'ActiveRecord::Transactions::ClassMethods', - 'ActiveRecord::Validations', - 'ActiveRecord::Validations::ClassMethods', - 'ActiveRecord::XmlSerialization', - 'ActiveSupport::CachingTools::HashCaching', - 'ActiveSupport::CoreExtensions::Array::Conversions', - 'ActiveSupport::CoreExtensions::Array::Grouping', - 'ActiveSupport::CoreExtensions::Date::Conversions', - 'ActiveSupport::CoreExtensions::Hash::Conversions', - 'ActiveSupport::CoreExtensions::Hash::Conversions::ClassMethods', - 'ActiveSupport::CoreExtensions::Hash::Diff', - 'ActiveSupport::CoreExtensions::Hash::Keys', - 'ActiveSupport::CoreExtensions::Hash::ReverseMerge', - 'ActiveSupport::CoreExtensions::Integer::EvenOdd', - 'ActiveSupport::CoreExtensions::Integer::Inflections', - 'ActiveSupport::CoreExtensions::Numeric::Bytes', - 'ActiveSupport::CoreExtensions::Numeric::Time', - 'ActiveSupport::CoreExtensions::Pathname::CleanWithin', - 'ActiveSupport::CoreExtensions::Range::Conversions', - 'ActiveSupport::CoreExtensions::String::Access', - 'ActiveSupport::CoreExtensions::String::Conversions', - 'ActiveSupport::CoreExtensions::String::Inflections', - 'ActiveSupport::CoreExtensions::String::Iterators', - 'ActiveSupport::CoreExtensions::String::StartsEndsWith', - 'ActiveSupport::CoreExtensions::String::Unicode', - 'ActiveSupport::CoreExtensions::Time::Calculations', - 'ActiveSupport::CoreExtensions::Time::Calculations::ClassMethods', - 'ActiveSupport::CoreExtensions::Time::Conversions', - 'ActiveSupport::Multibyte::Chars', - 'ActiveSupport::Multibyte::Handlers::UTF8Handler', - 'Breakpoint', 'Builder::BlankSlate', 'Builder::XmlMarkup', - 'Fixtures', - 'HTML::Selector', 'HashWithIndifferentAccess', 'Inflector', - 'Inflector::Inflections', 'Mime', 'Mime::Type', - 'OCI8AutoRecover', 'TimeZone', 'XmlSimple' - ), - 5 => array( - 'image_tag', 'link_to', 'link_to_remote', 'javascript_include_tag', - 'assert_equal', 'assert_not_equal', 'before_filter', - 'after_filter', 'render', 'redirect_to', 'hide_action', - 'render_to_string', 'url_for', 'controller_name', - 'controller_class_name', 'controller_path', 'session', - 'render_component', 'render_component_as_string', 'cookie', - 'layout', 'flash', 'auto_complete_for', 'in_place_editor_for', - 'respond_to', 'paginate', 'current_page', 'each', 'first', - 'first_page', 'last_page', 'last', 'length', 'new', 'page_count', - 'previous', 'scaffold', 'send_data', - 'send_file', 'deliver', 'receive', 'error_messages_for', - 'error_message_on', 'form', 'input', 'stylesheet_link_tag', - 'stylesheet_path', 'content_for', 'select_date', 'ago', - 'month', 'day', 'check_box', 'fields_for', 'file_field', - 'form_for', 'hidden_field', 'text_area', 'password_field', - 'collection_select', 'options_for_select', - 'options_from_collection_for_select', 'file_field_tag', - 'form_for_tag', 'hidden_field_tag', 'text_area_tag', - 'password_field_tag', 'link_to_function', 'javascript_tag', - 'human_size', 'number_to_currency', 'pagination_links', - 'form_remote_tag', 'form_remote_for', - 'submit_to_remote', 'remote_function', 'observe_form', - 'observe_field', 'remote_form_for', 'options_for_ajax', 'alert', - 'call', 'assign', 'show', 'hide', 'insert_html', 'sortable', - 'toggle', 'visual_effect', 'replace', 'replace_html', 'remove', - 'save', 'save!', 'draggable', 'drop_receiving', 'literal', - 'draggable_element', 'drop_receiving_element', 'sortable_element', - 'content_tag', 'tag', 'link_to_image', 'link_to_if', - 'link_to_unless', 'mail_to', 'link_image_to', 'button_to', - 'current_page?', 'act_as_list', 'act_as_nested', 'act_as_tree', - 'has_many', 'has_one', 'belongs_to', 'has_many_and_belogns_to', - 'delete', 'destroy', 'destroy_all', 'clone', 'deep_clone', 'copy', - 'update', 'table_name', 'primary_key', 'sum', 'maximun', 'minimum', - 'count', 'size', 'after_save', 'after_create', 'before_save', - 'before_create', 'add_to_base', 'errors', 'add', 'validate', - 'validates_presence_of', 'validates_numericality_of', - 'validates_uniqueness_of', 'validates_length_of', - 'validates_format_of', 'validates_size_of', 'to_a', 'to_s', - 'to_xml', 'to_i' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '%', '&', '*', '|', '/', '<', '>', - '+', '-', '=>', '<<' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:#9966CC; font-weight:bold;', - 2 => 'color:#0000FF; font-weight:bold;', - 3 => 'color:#CC0066; font-weight:bold;', - 4 => 'color:#CC00FF; font-weight:bold;', - 5 => 'color:#5A0A0A; font-weight:bold;' - ), - 'COMMENTS' => array( - 1 => 'color:#008000; font-style:italic;', - 'MULTI' => 'color:#000080; font-style:italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color:#000099;' - ), - 'BRACKETS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color:#996600;' - ), - 'NUMBERS' => array( - 0 => 'color:#006666;' - ), - 'METHODS' => array( - 1 => 'color:#9900CC;' - ), - 'SYMBOLS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'REGEXPS' => array( - 0 => 'color:#ff6633; font-weight:bold;', - 1 => 'color:#0066ff; font-weight:bold;', - 2 => 'color:#6666ff; font-weight:bold;', - 3 => 'color:#ff3333; font-weight:bold;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - 0 => array( - GESHI_SEARCH => "([[:space:]])(\\$[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 1 => array( - GESHI_SEARCH => "([[:space:]])(@[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 2 => "([A-Z][a-zA-Z0-9_]*::)+[A-Z][a-zA-Z0-9_]*", //Static OOP References - 3 => array( - GESHI_SEARCH => "([[:space:]]|\[|\()(:[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<%' => '%>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - ) -); - -?> diff --git a/system/application/libraries/geshi/rebol.php b/system/application/libraries/geshi/rebol.php deleted file mode 100644 index 1a2e95824..000000000 --- a/system/application/libraries/geshi/rebol.php +++ /dev/null @@ -1,196 +0,0 @@ -<?php -/************************************************************************************* - * rebol.php - * -------- - * Author: Lecanu Guillaume (Guillaume@LyA.fr) - * Copyright: (c) 2004-2005 Lecanu Guillaume (Guillaume@LyA.fr) - * Release Version: 1.0.8.6 - * Date Started: 2004/12/22 - * - * Rebol language file for GeSHi. - * - * CHANGES - * ------- - * 2009/01/26 (1.0.8.3) - * - Adapted language file to comply to GeSHi language file guidelines - * 2004/11/25 (1.0.3) - * - Added support for multiple object splitters - * - Fixed &new problem - * 2004/10/27 (1.0.2) - * - Added URL support - * - Added extra constants - * 2004/08/05 (1.0.1) - * - Added support for symbols - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2004/07/14) - * ------------------------- - * * Make sure the last few function I may have missed - * (like eval()) are included for highlighting - * * Split to several files - php4, php5 etc - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'REBOL', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array('rebol [' => ']', 'comment [' => ']'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'binary!','block!','char!','date!','decimal!','email!','file!', - 'hash!','integer!','issue!','list!','logic!','money!','none!', - 'object!','paren!','pair!','path!','string!','tag!','time!', - 'tuple!','url!', - ), - 2 => array( - 'all','any','attempt','break','catch','compose','disarm','dispatch', - 'do','do-events','does','either','else','exit','for','forall', - 'foreach','forever','forskip','func','function','halt','has','if', - 'launch','loop','next','quit','reduce','remove-each','repeat', - 'return','secure','switch','throw','try','until','wait','while', - ), - 3 => array( - 'about','abs','absolute','add','alert','alias','alter','and', - 'any-block?','any-function?','any-string?','any-type?','any-word?', - 'append','arccosine','arcsine','arctangent','array','as-pair', - 'ask','at','back','binary?','bind','bitset?','block?','brightness?', - 'browse','build-tag','caret-to-offset','center-face','change', - 'change-dir','char?','charset','checksum','choose','clean-path', - 'clear','clear-fields','close','comment','complement','component?', - 'compress','confirm','connected?','construct','context','copy', - 'cosine','datatype?','date?','debase','decimal?','decode-cgi', - 'decompress','dehex','delete','detab','difference','dir?','dirize', - 'divide','dump-face','dump-obj','echo','email?','empty?','enbase', - 'entab','equal?','error?','even?','event?','exclude','exists?', - 'exp','extract','fifth','file?','find','first','flash','focus', - 'form','found?','fourth','free','function?','get','get-modes', - 'get-word?','greater-or-equal?','greater?','hash?','head','head?', - 'help','hide','hide-popup','image?','import-email','in', - 'in-window?','index?','info?','inform','input','input?','insert', - 'integer?','intersect','issue?','join','last','layout','length?', - 'lesser-or-equal?','lesser?','library?','license','link?', - 'list-dir','list?','lit-path?','lit-word?','load','load-image', - 'log-10','log-2','log-e','logic?','lowercase','make','make-dir', - 'make-face','max','maximum','maximum-of','min','minimum', - 'minimum-of','modified?','mold','money?','multiply','native?', - 'negate','negative?','none?','not','not-equal?','now','number?', - 'object?','odd?','offset-to-caret','offset?','op?','open','or', - 'pair?','paren?','parse','parse-xml','path?','pick','poke','port?', - 'positive?','power','prin','print','probe','protect', - 'protect-system','query','random','read','read-io','recycle', - 'refinement?','reform','rejoin','remainder','remold','remove', - 'rename', - //'repeat', - 'repend','replace','request','request-color','request-date', - 'request-download','request-file','request-list','request-pass', - 'request-text','resend','reverse','routine?','same?','save', - 'script?','second','select','send','series?','set','set-modes', - 'set-net','set-path?','set-word?','show','show-popup','sign?', - 'sine','size-text','size?','skip','sort','source','span?', - 'split-path','square-root','strict-equal?','strict-not-equal?', - 'string?','struct?','stylize','subtract','suffix?','tag?','tail', - 'tail?','tangent','third','time?','to','to-binary','to-bitset', - 'to-block','to-char','to-date','to-decimal','to-email','to-file', - 'to-get-word','to-hash','to-hex','to-idate','to-image','to-integer', - 'to-issue','to-list','to-lit-path','to-lit-word','to-local-file', - 'to-logic','to-money','to-pair','to-paren','to-path', - 'to-rebol-file','to-refinement','to-set-path','to-set-word', - 'to-string','to-tag','to-time','to-tuple','to-url','to-word', - 'trace','trim','tuple?','type?','unfocus','union','unique', - 'unprotect','unset','unset?','unview','update','upgrade', - 'uppercase','url?','usage','use','value?','view','viewed?','what', - 'what-dir','within?','word?','write','write-io','xor','zero?', - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '@', '%', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', -// 2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' -// 2 => 'includes/dico_rebol.php?word={FNAME}', -// 3 => 'includes/dico_rebol.php?word={FNAME}' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*", - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/reg.php b/system/application/libraries/geshi/reg.php deleted file mode 100644 index d70189cc9..000000000 --- a/system/application/libraries/geshi/reg.php +++ /dev/null @@ -1,233 +0,0 @@ -<?php -/************************************************************************************* - * reg.php - * ------- - * Author: Sean Hanna (smokingrope@gmail.com) - * Copyright: (c) 2006 Sean Hanna - * Release Version: 1.0.8.6 - * Date Started: 03/15/2006 - * - * Microsoft Registry Editor language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * - Updated and optimized most regular expressions - * 03/15/2006 (0.5.0) - * - Syntax File Created - * 04/27/2006 (0.9.5) - * - Syntax Coloring Cleaned Up - * - First Release - * 04/29/2006 (1.0.0) - * - Updated a few coloring settings - * - * TODO (updated 4/27/2006) - * ------------------------- - * - Add a verification to the multi-line portion of the hex field regex - * for a '\' character on the line preceding the line of the multi-line - * hex field. - * - * KNOWN ISSUES (updated 4/27/2006) - * --------------------------------- - * - * - There are two regexes for the multiline hex value regex. The regex for - * all lines after the first does not verify that the previous line contains - * a line continuation character '\'. This regex also does not check for - * end of line as it should. - * - * - If number_highlighting is enabled during processing of this syntax file - * many of the regexps used will appear slightly incorrect. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - - ************************************************************************************/ -$language_data = array ( - 'LANG_NAME' => 'Microsoft Registry', - 'COMMENT_SINGLE' => array(1 =>';'), - 'COMMENT_MULTI' => array( ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( -// 1 => array(), -// 2 => array(), - /* Registry Key Constants Not Used */ - 3 => array( - 'HKEY_LOCAL_MACHINE', - 'HKEY_CLASSES_ROOT', - 'HKEY_CURRENT_USER', - 'HKEY_USERS', - 'HKEY_CURRENT_CONFIG', - 'HKEY_DYN_DATA', - 'HKLM', 'HKCR', 'HKCU', 'HKU', 'HKCC', 'HKDD' - ) - ), - 'SYMBOLS' => array( - '=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, -// 1 => false, -// 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( -// 1 => 'color: #00CCFF;', -// 2 => 'color: #0000FF;', - 3 => 'color: #800000;' - ), - 'COMMENTS' => array( - 1 => 'color: #009900;' - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #009900;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #00CCFF;', - 1 => 'color: #0000FF;', - 2 => '', - 3 => 'color: #0000FF;', - 4 => 'color: #0000FF;', - 5 => '', - 6 => '', - 7 => '', - 8 => 'color: #FF6600;', - ) - ), - 'URLS' => array( -// 1 => '', -// 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // Highlight Key Delimiters - 0 => array( - GESHI_SEARCH => '((^|\\n)\\s*)(\\\\\\[(.*)\\\\\\])(\\s*(\\n|$))', - GESHI_REPLACE => '\\3', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\5' -// GESHI_CLASS => 'kw1' - ), - // Highlight File Format Header Version 5 - 1 => array( - GESHI_SEARCH => '(^\s*)(Windows Registry Editor Version \d+\.\d+)(\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'geshi_registry_header' - ), - // Highlight File Format Header Version 4 - 2 => array( - GESHI_SEARCH => '(^\\s*)(REGEDIT\s?\d+)(\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'geshi_registry_header' - ), - // Highlight dword: 32 bit integer values - 3 => array( - GESHI_SEARCH => '(=\s*)(dword:[0-9a-fA-F]{8})(\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' -// GESHI_CLASS => 'kw2' - ), - // Highlight variable names - 4 => array( - GESHI_SEARCH => '(^\s*)(\".*?\")(\s*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'geshi_variable' - ), - // Highlight String Values - 5 => array( - GESHI_SEARCH => '(=\s*)(\".*?\")(\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'st0' - ), - // Highlight Hexadecimal Values (Single-Line and Multi-Line) - 6 => array( - GESHI_SEARCH => '(=\s*\n?\s*)(hex:[0-9a-fA-F]{2}(,(\\\s*\n\s*)?[0-9a-fA-F]{2})*)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '', - GESHI_CLASS => 'kw2' - ), - // Highlight Default Variable - 7 => array( - GESHI_SEARCH => '(^\s*)(@)(\s*=)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'm', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3', - GESHI_CLASS => 'geshi_variable' - ), - // Highlight GUID's found anywhere. - 8 => array( - GESHI_SEARCH => '(\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\})', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '', - GESHI_CLASS => 'geshi_guid' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER, - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/robots.php b/system/application/libraries/geshi/robots.php deleted file mode 100644 index 82ff18f4f..000000000 --- a/system/application/libraries/geshi/robots.php +++ /dev/null @@ -1,100 +0,0 @@ -<?php -/************************************************************************************* - * robots.php - * -------- - * Author: Christian Lescuyer (cl@goelette.net) - * Copyright: (c) 2006 Christian Lescuyer http://xtian.goelette.info - * Release Version: 1.0.8.6 - * Date Started: 2006/02/17 - * - * robots.txt language file for GeSHi. - * - * 2006/02/17 (1.0.0) - * - First Release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'robots.txt', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array(1 => "/^Comment:.*?/m"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'Allow', 'Crawl-delay', 'Disallow', 'Request-rate', 'Robot-version', - 'Sitemap', 'User-agent', 'Visit-time' - ) - ), - 'SYMBOLS' => array( - ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.robotstxt.org/wc/norobots.html' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/rsplus.php b/system/application/libraries/geshi/rsplus.php deleted file mode 100644 index 10fa5a89e..000000000 --- a/system/application/libraries/geshi/rsplus.php +++ /dev/null @@ -1,483 +0,0 @@ -<?php -/************************************************************************************* - * rsplus.php - * ———– - * Author: Ron Fredericks (ronf@LectureMaker.com) - * Contributors: - * - Benilton Carvalho (beniltoncarvalho@gmail.com) - * Copyright: (c) 2009 Ron Fredericks (http://www.LectureMaker.com) - * Release Version: 1.0.8.6 - * Date Started: 2009/03/28 - * - * R language file for GeSHi. - * - * CHANGES - * ——- - * 2009/04/06 - * - Add references to Sekhon’s R Package docs - * 2009/03/29 (1.0.8.5) - * - First Release - * 2009/07/16 (1.0.8.6) - * - Added functions from base packages (Benilton Carvalho - carvalho@bclab.org) - * - * References - * ———- - * Some online R Package documentation: - * http://sekhon.berkeley.edu/library/index.html 2.4 docs - * http://astrostatistics.psu.edu/su07/R/html 2.5 docs - * - * Another R GeSHi with no meat? - * http://organicdesign.co.nz/GeSHi/R.php - * SourceForge R discussion: - * http://sourceforge.net/tracker/?func=detail&aid=2276025&group_id=114997&atid=670234 - * - * TODO (updated 2007/02/06) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'R / S+', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'else','global','in', 'otherwise','persistent', - ), - 2 => array( // base package - '$.package_version', '$<-', '$<-.data.frame', 'abbreviate', 'abs', 'acos', 'acosh', 'addNA', 'addTaskCallback', - 'agrep', 'alist', 'all', 'all.equal', 'all.equal.character', 'all.equal.default', 'all.equal.factor', - 'all.equal.formula', 'all.equal.language', 'all.equal.list', 'all.equal.numeric', 'all.equal.POSIXct', - 'all.equal.raw', 'all.names', 'all.vars', 'any', 'aperm', 'append', 'apply', 'Arg', 'args', 'array', 'as.array', - 'as.array.default', 'as.call', 'as.character', 'as.character.condition', 'as.character.Date', 'as.character.default', - 'as.character.error', 'as.character.factor', 'as.character.hexmode', 'as.character.numeric_version', 'as.character.octmode', - 'as.character.POSIXt', 'as.character.srcref', 'as.complex', 'as.data.frame', 'as.data.frame.array', 'as.data.frame.AsIs', - 'as.data.frame.character', 'as.data.frame.complex', 'as.data.frame.data.frame', 'as.data.frame.Date', 'as.data.frame.default', - 'as.data.frame.difftime', 'as.data.frame.factor', 'as.data.frame.integer', 'as.data.frame.list', 'as.data.frame.logical', - 'as.data.frame.matrix', 'as.data.frame.model.matrix', 'as.data.frame.numeric', 'as.data.frame.numeric_version', - 'as.data.frame.ordered', 'as.data.frame.POSIXct', 'as.data.frame.POSIXlt', 'as.data.frame.raw', 'as.data.frame.table', - 'as.data.frame.ts', 'as.data.frame.vector', 'as.Date', 'as.Date.character', 'as.Date.date', 'as.Date.dates', - 'as.Date.default', 'as.Date.factor', 'as.Date.numeric', 'as.Date.POSIXct', 'as.Date.POSIXlt', 'as.difftime', 'as.double', - 'as.double.difftime', 'as.double.POSIXlt', 'as.environment', 'as.expression', 'as.expression.default', 'as.factor', - 'as.function', 'as.function.default', 'as.hexmode', 'as.integer', 'as.list', 'as.list.data.frame', 'as.list.default', - 'as.list.environment', 'as.list.factor', 'as.list.function', 'as.list.numeric_version', 'as.logical', 'as.matrix', - 'as.matrix.data.frame', 'as.matrix.default', 'as.matrix.noquote', 'as.matrix.POSIXlt', 'as.name', 'as.null', 'as.null.default', - 'as.numeric', 'as.numeric_version', 'as.octmode', 'as.ordered', 'as.package_version', 'as.pairlist', 'as.POSIXct', - 'as.POSIXct.date', 'as.POSIXct.Date', 'as.POSIXct.dates', 'as.POSIXct.default', 'as.POSIXct.numeric', 'as.POSIXct.POSIXlt', - 'as.POSIXlt', 'as.POSIXlt.character', 'as.POSIXlt.date', 'as.POSIXlt.Date', 'as.POSIXlt.dates', 'as.POSIXlt.default', - 'as.POSIXlt.factor', 'as.POSIXlt.numeric', 'as.POSIXlt.POSIXct', 'as.qr', 'as.raw', 'as.real', 'as.single', - 'as.single.default', 'as.symbol', 'as.table', 'as.table.default', 'as.vector', 'as.vector.factor', 'asin', 'asinh', - 'asNamespace', 'asS4', 'assign', 'atan', 'atan2', 'atanh', 'attach', 'attachNamespace', 'attr', 'attr.all.equal', - 'attr<-', 'attributes', 'attributes<-', 'autoload', 'autoloader', 'backsolve', 'baseenv', 'basename', 'besselI', - 'besselJ', 'besselK', 'besselY', 'beta', 'bindingIsActive', 'bindingIsLocked', 'bindtextdomain', 'body', 'body<-', - 'bquote', 'break', 'browser', 'builtins', 'by', 'by.data.frame', 'by.default', 'bzfile', 'c', 'c.Date', 'c.noquote', - 'c.numeric_version', 'c.POSIXct', 'c.POSIXlt', 'call', 'callCC', 'capabilities', 'casefold', 'cat', 'category', - 'cbind', 'cbind.data.frame', 'ceiling', 'char.expand', 'character', 'charmatch', 'charToRaw', 'chartr', 'check_tzones', - 'chol', 'chol.default', 'chol2inv', 'choose', 'class', 'class<-', 'close', 'close.connection', 'close.srcfile', - 'closeAllConnections', 'codes', 'codes.factor', 'codes.ordered', 'codes<-', 'col', 'colMeans', 'colnames', - 'colnames<-', 'colSums', 'commandArgs', 'comment', 'comment<-', 'complex', 'computeRestarts', 'conditionCall', - 'conditionCall.condition', 'conditionMessage', 'conditionMessage.condition', 'conflicts', 'Conj', 'contributors', - 'cos', 'cosh', 'crossprod', 'Cstack_info', 'cummax', 'cummin', 'cumprod', 'cumsum', 'cut', 'cut.Date', 'cut.default', - 'cut.POSIXt', 'data.class', 'data.frame', 'data.matrix', 'date', 'debug', 'default.stringsAsFactors', 'delay', - 'delayedAssign', 'deparse', 'det', 'detach', 'determinant', 'determinant.matrix', 'dget', 'diag', 'diag<-', 'diff', - 'diff.Date', 'diff.default', 'diff.POSIXt', 'difftime', 'digamma', 'dim', 'dim.data.frame', 'dim<-', 'dimnames', - 'dimnames.data.frame', 'dimnames<-', 'dimnames<-.data.frame', 'dir', 'dir.create', 'dirname', 'do.call', 'double', - 'dput', 'dQuote', 'drop', 'dump', 'duplicated', 'duplicated.array', 'duplicated.data.frame', 'duplicated.default', - 'duplicated.matrix', 'duplicated.numeric_version', 'duplicated.POSIXlt', 'dyn.load', 'dyn.unload', 'eapply', 'eigen', - 'emptyenv', 'encodeString', 'Encoding', 'Encoding<-', 'env.profile', 'environment', 'environment<-', 'environmentIsLocked', - 'environmentName', 'eval', 'eval.parent', 'evalq', 'exists', 'exp', 'expand.grid', 'expm1', 'expression', 'F', 'factor', - 'factorial', 'fifo', 'file', 'file.access', 'file.append', 'file.choose', 'file.copy', 'file.create', 'file.exists', - 'file.info', 'file.path', 'file.remove', 'file.rename', 'file.show', 'file.symlink', 'Filter', 'Find', 'findInterval', - 'findPackageEnv', 'findRestart', 'floor', 'flush', 'flush.connection', 'for', 'force', 'formals', 'formals<-', - 'format', 'format.AsIs', 'format.char', 'format.data.frame', 'format.Date', 'format.default', 'format.difftime', - 'format.factor', 'format.hexmode', 'format.info', 'format.octmode', 'format.POSIXct', 'format.POSIXlt', - 'format.pval', 'formatC', 'formatDL', 'forwardsolve', 'function', 'gamma', 'gammaCody', 'gc', 'gc.time', - 'gcinfo', 'gctorture', 'get', 'getAllConnections', 'getCallingDLL', 'getCallingDLLe', 'getCConverterDescriptions', - 'getCConverterStatus', 'getConnection', 'getDLLRegisteredRoutines', 'getDLLRegisteredRoutines.character', - 'getDLLRegisteredRoutines.DLLInfo', 'getenv', 'geterrmessage', 'getExportedValue', 'getHook', 'getLoadedDLLs', - 'getNamespace', 'getNamespaceExports', 'getNamespaceImports', 'getNamespaceInfo', 'getNamespaceName', - 'getNamespaceUsers', 'getNamespaceVersion', 'getNativeSymbolInfo', 'getNumCConverters', 'getOption', 'getRversion', - 'getSrcLines', 'getTaskCallbackNames', 'gettext', 'gettextf', 'getwd', 'gl', 'globalenv', 'gregexpr', 'grep', - 'grepl', 'gsub', 'gzcon', 'gzfile', 'httpclient', 'I', 'iconv', 'iconvlist', 'icuSetCollate', 'identical', 'identity', - 'if', 'ifelse', 'Im', 'importIntoEnv', 'inherits', 'integer', 'interaction', 'interactive', 'intersect', 'intToBits', - 'intToUtf8', 'inverse.rle', 'invisible', 'invokeRestart', 'invokeRestartInteractively', 'is.array', 'is.atomic', - 'is.call', 'is.character', 'is.complex', 'is.data.frame', 'is.double', 'is.element', 'is.environment', - 'is.expression', 'is.factor', 'is.finite', 'is.function', 'is.infinite', 'is.integer', 'is.language', - 'is.list', 'is.loaded', 'is.logical', 'is.matrix', 'is.na', 'is.na.data.frame', 'is.na.POSIXlt', 'is.na<-', - 'is.na<-.default', 'is.na<-.factor', 'is.name', 'is.nan', 'is.null', 'is.numeric', 'is.numeric_version', - 'is.numeric.Date', 'is.numeric.POSIXt', 'is.object', 'is.ordered', 'is.package_version', 'is.pairlist', 'is.primitive', - 'is.qr', 'is.R', 'is.raw', 'is.real', 'is.recursive', 'is.single', 'is.symbol', 'is.table', 'is.unsorted', 'is.vector', - 'isBaseNamespace', 'isdebugged', 'isIncomplete', 'isNamespace', 'ISOdate', 'ISOdatetime', 'isOpen', 'isRestart', 'isS4', - 'isSeekable', 'isSymmetric', 'isSymmetric.matrix', 'isTRUE', 'jitter', 'julian', 'julian.Date', 'julian.POSIXt', 'kappa', - 'kappa.default', 'kappa.lm', 'kappa.qr', 'kappa.tri', 'kronecker', 'l10n_info', 'La.chol', 'La.chol2inv', 'La.eigen', - 'La.svd', 'labels', 'labels.default', 'lapply', 'lazyLoad', 'lazyLoadDBfetch', 'lbeta', 'lchoose', 'length', 'length<-', - 'length<-.factor', 'letters', 'LETTERS', 'levels', 'levels.default', 'levels<-', 'levels<-.factor', 'lfactorial', 'lgamma', - 'library', 'library.dynam', 'library.dynam.unload', 'licence', 'license', 'list', 'list.files', 'load', 'loadedNamespaces', - 'loadingNamespaceInfo', 'loadNamespace', 'loadURL', 'local', 'lockBinding', 'lockEnvironment', 'log', 'log10', 'log1p', 'log2', - 'logb', 'logical', 'lower.tri', 'ls', 'machine', 'Machine', 'make.names', 'make.unique', 'makeActiveBinding', 'manglePackageName', - 'Map', 'mapply', 'margin.table', 'mat.or.vec', 'match', 'match.arg', 'match.call', 'match.fun', 'Math.data.frame', 'Math.Date', - 'Math.difftime', 'Math.factor', 'Math.POSIXt', 'matrix', 'max', 'max.col', 'mean', 'mean.data.frame', 'mean.Date', 'mean.default', - 'mean.difftime', 'mean.POSIXct', 'mean.POSIXlt', 'mem.limits', 'memory.profile', 'merge', 'merge.data.frame', 'merge.default', - 'message', 'mget', 'min', 'missing', 'Mod', 'mode', 'mode<-', 'month.abb', 'month.name', 'months', 'months.Date', - 'months.POSIXt', 'mostattributes<-', 'names', 'names<-', 'namespaceExport', 'namespaceImport', 'namespaceImportClasses', - 'namespaceImportFrom', 'namespaceImportMethods', 'nargs', 'nchar', 'ncol', 'NCOL', 'Negate', 'new.env', 'next', 'NextMethod', - 'ngettext', 'nlevels', 'noquote', 'nrow', 'NROW', 'numeric', 'numeric_version', 'nzchar', 'objects', 'oldClass', - 'oldClass<-', 'on.exit', 'open', 'open.connection', 'open.srcfile', 'open.srcfilecopy', 'Ops.data.frame', 'Ops.Date', - 'Ops.difftime', 'Ops.factor', 'Ops.numeric_version', 'Ops.ordered', 'Ops.POSIXt', 'options', 'order', 'ordered', - 'outer', 'package_version', 'package.description', 'packageEvent', 'packageHasNamespace', 'packageStartupMessage', - 'packBits', 'pairlist', 'parent.env', 'parent.env<-', 'parent.frame', 'parse', 'parse.dcf', 'parseNamespaceFile', - 'paste', 'path.expand', 'pentagamma', 'pi', 'pipe', 'Platform', 'pmatch', 'pmax', 'pmax.int', 'pmin', 'pmin.int', - 'polyroot', 'pos.to.env', 'Position', 'pretty', 'prettyNum', 'print', 'print.AsIs', 'print.atomic', 'print.by', - 'print.condition', 'print.connection', 'print.data.frame', 'print.Date', 'print.default', 'print.difftime', - 'print.DLLInfo', 'print.DLLInfoList', 'print.DLLRegisteredRoutines', 'print.factor', 'print.hexmode', 'print.libraryIQR', - 'print.listof', 'print.NativeRoutineList', 'print.noquote', 'print.numeric_version', 'print.octmode', 'print.packageInfo', - 'print.POSIXct', 'print.POSIXlt', 'print.proc_time', 'print.restart', 'print.rle', 'print.simple.list', - 'print.srcfile', 'print.srcref', 'print.summary.table', 'print.table', 'print.warnings', 'printNoClass', - 'prmatrix', 'proc.time', 'prod', 'prop.table', 'provide', 'psigamma', 'pushBack', 'pushBackLength', 'q', 'qr', - 'qr.coef', 'qr.default', 'qr.fitted', 'qr.Q', 'qr.qty', 'qr.qy', 'qr.R', 'qr.resid', 'qr.solve', 'qr.X', 'quarters', - 'quarters.Date', 'quarters.POSIXt', 'quit', 'quote', 'R_system_version', 'R.home', 'R.version', 'R.Version', - 'R.version.string', 'range', 'range.default', 'rank', 'rapply', 'raw', 'rawConnection', 'rawConnectionValue', - 'rawShift', 'rawToBits', 'rawToChar', 'rbind', 'rbind.data.frame', 'rcond', 'Re', 'read.dcf', 'read.table.url', - 'readBin', 'readChar', 'readline', 'readLines', 'real', 'Recall', 'Reduce', 'reg.finalizer', 'regexpr', - 'registerS3method', 'registerS3methods', 'remove', 'removeCConverter', 'removeTaskCallback', 'rep', 'rep.Date', - 'rep.factor', 'rep.int', 'rep.numeric_version', 'rep.POSIXct', 'rep.POSIXlt', 'repeat', 'replace', 'replicate', - 'require', 'restart', 'restartDescription', 'restartFormals', 'retracemem', 'return', 'rev', 'rev.default', 'rle', - 'rm', 'RNGkind', 'RNGversion', 'round', 'round.Date', 'round.difftime', 'round.POSIXt', 'row', 'row.names', - 'row.names.data.frame', 'row.names.default', 'row.names<-', 'row.names<-.data.frame', 'row.names<-.default', - 'rowMeans', 'rownames', 'rownames<-', 'rowsum', 'rowsum.data.frame', 'rowsum.default', 'rowSums', 'sample', - 'sample.int', 'sapply', 'save', 'save.image', 'saveNamespaceImage', 'scale', 'scale.default', 'scan', 'scan.url', - 'search', 'searchpaths', 'seek', 'seek.connection', 'seq', 'seq_along', 'seq_len', 'seq.Date', 'seq.default', - 'seq.int', 'seq.POSIXt', 'sequence', 'serialize', 'set.seed', 'setCConverterStatus', 'setdiff', 'setequal', - 'setHook', 'setNamespaceInfo', 'setSessionTimeLimit', 'setTimeLimit', 'setwd', 'showConnections', 'shQuote', - 'sign', 'signalCondition', 'signif', 'simpleCondition', 'simpleError', 'simpleMessage', 'simpleWarning', 'sin', - 'single', 'sinh', 'sink', 'sink.number', 'slice.index', 'socketConnection', 'socketSelect', 'solve', 'solve.default', - 'solve.qr', 'sort', 'sort.default', 'sort.int', 'sort.list', 'sort.POSIXlt', 'source', 'source.url', 'split', - 'split.data.frame', 'split.Date', 'split.default', 'split.POSIXct', 'split<-', 'split<-.data.frame', 'split<-.default', - 'sprintf', 'sqrt', 'sQuote', 'srcfile', 'srcfilecopy', 'srcref', 'standardGeneric', 'stderr', 'stdin', 'stdout', - 'stop', 'stopifnot', 'storage.mode', 'storage.mode<-', 'strftime', 'strptime', 'strsplit', 'strtrim', 'structure', - 'strwrap', 'sub', 'subset', 'subset.data.frame', 'subset.default', 'subset.matrix', 'substitute', 'substr', - 'substr<-', 'substring', 'substring<-', 'sum', 'summary', 'summary.connection', 'summary.data.frame', - 'Summary.data.frame', 'summary.Date', 'Summary.Date', 'summary.default', 'Summary.difftime', - 'summary.factor', 'Summary.factor', 'summary.matrix', 'Summary.numeric_version', 'summary.POSIXct', - 'Summary.POSIXct', 'summary.POSIXlt', 'Summary.POSIXlt', 'summary.table', 'suppressMessages', - 'suppressPackageStartupMessages', 'suppressWarnings', 'svd', 'sweep', 'switch', 'symbol.C', - 'symbol.For', 'sys.call', 'sys.calls', 'Sys.chmod', 'Sys.Date', 'sys.frame', 'sys.frames', - 'sys.function', 'Sys.getenv', 'Sys.getlocale', 'Sys.getpid', 'Sys.glob', 'Sys.info', 'sys.load.image', - 'Sys.localeconv', 'sys.nframe', 'sys.on.exit', 'sys.parent', 'sys.parents', 'Sys.putenv', - 'sys.save.image', 'Sys.setenv', 'Sys.setlocale', 'Sys.sleep', 'sys.source', 'sys.status', - 'Sys.time', 'Sys.timezone', 'Sys.umask', 'Sys.unsetenv', 'Sys.which', 'system', 'system.file', - 'system.time', 't', 'T', 't.data.frame', 't.default', 'table', 'tabulate', 'tan', 'tanh', 'tapply', - 'taskCallbackManager', 'tcrossprod', 'tempdir', 'tempfile', 'testPlatformEquivalence', 'tetragamma', - 'textConnection', 'textConnectionValue', 'tolower', 'topenv', 'toString', 'toString.default', 'toupper', - 'trace', 'traceback', 'tracemem', 'tracingState', 'transform', 'transform.data.frame', 'transform.default', - 'trigamma', 'trunc', 'trunc.Date', 'trunc.POSIXt', 'truncate', 'truncate.connection', 'try', 'tryCatch', - 'typeof', 'unclass', 'undebug', 'union', 'unique', 'unique.array', 'unique.data.frame', 'unique.default', - 'unique.matrix', 'unique.numeric_version', 'unique.POSIXlt', 'units', 'units.difftime', 'units<-', - 'units<-.difftime', 'unix', 'unix.time', 'unlink', 'unlist', 'unloadNamespace', 'unlockBinding', - 'unname', 'unserialize', 'unsplit', 'untrace', 'untracemem', 'unz', 'upper.tri', 'url', 'UseMethod', - 'utf8ToInt', 'vector', 'Vectorize', 'version', 'Version', 'warning', 'warnings', 'weekdays', - 'weekdays.Date', 'weekdays.POSIXt', 'which', 'which.max', 'which.min', 'while', 'with', - 'with.default', 'withCallingHandlers', 'within', 'within.data.frame', 'within.list', 'withRestarts', - 'withVisible', 'write', 'write.dcf', 'write.table0', 'writeBin', 'writeChar', 'writeLines', 'xor', - 'xpdrows.data.frame', 'xtfrm', 'xtfrm.Date', 'xtfrm.default', 'xtfrm.factor', 'xtfrm.numeric_version', - 'xtfrm.POSIXct', 'xtfrm.POSIXlt', 'xtfrm.Surv', 'zapsmall', - ), - 3 => array( // Datasets - 'ability.cov', 'airmiles', 'AirPassengers', 'airquality', - 'anscombe', 'attenu', 'attitude', 'austres', 'beaver1', - 'beaver2', 'BJsales', 'BJsales.lead', 'BOD', 'cars', - 'ChickWeight', 'chickwts', 'co2', 'crimtab', - 'discoveries', 'DNase', 'esoph', 'euro', 'euro.cross', - 'eurodist', 'EuStockMarkets', 'faithful', 'fdeaths', - 'Formaldehyde', 'freeny', 'freeny.x', 'freeny.y', - 'HairEyeColor', 'Harman23.cor', 'Harman74.cor', 'Indometh', - 'infert', 'InsectSprays', 'iris', 'iris3', 'islands', - 'JohnsonJohnson', 'LakeHuron', 'ldeaths', 'lh', 'LifeCycleSavings', - 'Loblolly', 'longley', 'lynx', 'mdeaths', 'morley', 'mtcars', - 'nhtemp', 'Nile', 'nottem', 'occupationalStatus', 'Orange', - 'OrchardSprays', 'PlantGrowth', 'precip', 'presidents', - 'pressure', 'Puromycin', 'quakes', 'randu', 'rivers', 'rock', - 'Seatbelts', 'sleep', 'stack.loss', 'stack.x', 'stackloss', - 'state.abb', 'state.area', 'state.center', 'state.division', - 'state.name', 'state.region', 'state.x77', 'sunspot.month', - 'sunspot.year', 'sunspots', 'swiss', 'Theoph', 'Titanic', 'ToothGrowth', - 'treering', 'trees', 'UCBAdmissions', 'UKDriverDeaths', 'UKgas', - 'USAccDeaths', 'USArrests', 'USJudgeRatings', 'USPersonalExpenditure', - 'uspop', 'VADeaths', 'volcano', 'warpbreaks', 'women', 'WorldPhones', - 'WWWusage', - ), - 4 => array( // graphics package - 'abline', 'arrows', 'assocplot', 'axis', 'Axis', 'axis.Date', 'axis.POSIXct', - 'axTicks', 'barplot', 'barplot.default', 'box', 'boxplot', 'boxplot.default', - 'boxplot.matrix', 'bxp', 'cdplot', 'clip', 'close.screen', 'co.intervals', - 'contour', 'contour.default', 'coplot', 'curve', 'dotchart', 'erase.screen', - 'filled.contour', 'fourfoldplot', 'frame', 'grconvertX', 'grconvertY', 'grid', - 'hist', 'hist.default', 'identify', 'image', 'image.default', 'layout', - 'layout.show', 'lcm', 'legend', 'lines', 'lines.default', 'locator', 'matlines', - 'matplot', 'matpoints', 'mosaicplot', 'mtext', 'pairs', 'pairs.default', - 'panel.smooth', 'par', 'persp', 'pie', 'piechart', 'plot', 'plot.default', - 'plot.design', 'plot.new', 'plot.window', 'plot.xy', 'points', 'points.default', - 'polygon', 'rect', 'rug', 'screen', 'segments', 'smoothScatter', 'spineplot', - 'split.screen', 'stars', 'stem', 'strheight', 'stripchart', 'strwidth', 'sunflowerplot', - 'symbols', 'text', 'text.default', 'title', 'xinch', 'xspline', 'xyinch', 'yinch', - ), - 5 => array( // grDevices pkg - 'as.graphicsAnnot', 'bitmap', 'blues9', 'bmp', 'boxplot.stats', 'cairo_pdf', 'cairo_ps', 'check.options', - 'chull', 'CIDFont', 'cm', 'cm.colors', 'col2rgb', 'colorConverter', 'colorRamp', 'colorRampPalette', - 'colors', 'colorspaces', 'colours', 'contourLines', 'convertColor', 'densCols', 'dev.control', 'dev.copy', - 'dev.copy2eps', 'dev.copy2pdf', 'dev.cur', 'dev.interactive', 'dev.list', 'dev.new', 'dev.next', 'dev.off', - 'dev.prev', 'dev.print', 'dev.set', 'dev.size', 'dev2bitmap', 'devAskNewPage', 'deviceIsInteractive', - 'embedFonts', 'extendrange', 'getGraphicsEvent', 'graphics.off', 'gray', 'gray.colors', 'grey', 'grey.colors', - 'hcl', 'heat.colors', 'Hershey', 'hsv', 'jpeg', 'make.rgb', 'n2mfrow', 'nclass.FD', 'nclass.scott', - 'nclass.Sturges', 'palette', 'pdf', 'pdf.options', 'pdfFonts', 'pictex', 'png', 'postscript', 'postscriptFont', - 'postscriptFonts', 'ps.options', 'quartz', 'quartz.options', 'quartzFont', 'quartzFonts', 'rainbow', - 'recordGraphics', 'recordPlot', 'replayPlot', 'rgb', 'rgb2hsv', 'savePlot', 'setEPS', 'setPS', 'svg', - 'terrain.colors', 'tiff', 'topo.colors', 'trans3d', 'Type1Font', 'x11', 'X11', 'X11.options', 'X11Font', - 'X11Fonts', 'xfig', 'xy.coords', 'xyTable', 'xyz.coords', - ), - 6 => array( // methods package - 'addNextMethod', 'allGenerics', 'allNames', 'Arith', 'as', 'as<-', - 'asMethodDefinition', 'assignClassDef', 'assignMethodsMetaData', 'balanceMethodsList', - 'cacheGenericsMetaData', 'cacheMetaData', 'cacheMethod', 'callGeneric', - 'callNextMethod', 'canCoerce', 'cbind2', 'checkSlotAssignment', 'classesToAM', - 'classMetaName', 'coerce', 'coerce<-', 'Compare', 'completeClassDefinition', - 'completeExtends', 'completeSubclasses', 'Complex', 'conformMethod', 'defaultDumpName', - 'defaultPrototype', 'doPrimitiveMethod', 'dumpMethod', 'dumpMethods', 'el', 'el<-', - 'elNamed', 'elNamed<-', 'empty.dump', 'emptyMethodsList', 'existsFunction', 'existsMethod', - 'extends', 'finalDefaultMethod', 'findClass', 'findFunction', 'findMethod', 'findMethods', - 'findMethodSignatures', 'findUnique', 'fixPre1.8', 'formalArgs', 'functionBody', - 'functionBody<-', 'generic.skeleton', 'getAccess', 'getAllMethods', 'getAllSuperClasses', - 'getClass', 'getClassDef', 'getClasses', 'getClassName', 'getClassPackage', 'getDataPart', - 'getExtends', 'getFunction', 'getGeneric', 'getGenerics', 'getGroup', 'getGroupMembers', - 'getMethod', 'getMethods', 'getMethodsForDispatch', 'getMethodsMetaData', 'getPackageName', - 'getProperties', 'getPrototype', 'getSlots', 'getSubclasses', 'getValidity', 'getVirtual', - 'hasArg', 'hasMethod', 'hasMethods', 'implicitGeneric', 'initialize', 'insertMethod', 'is', - 'isClass', 'isClassDef', 'isClassUnion', 'isGeneric', 'isGrammarSymbol', 'isGroup', - 'isSealedClass', 'isSealedMethod', 'isVirtualClass', 'isXS3Class', 'languageEl', 'languageEl<-', - 'linearizeMlist', 'listFromMethods', 'listFromMlist', 'loadMethod', 'Logic', - 'makeClassRepresentation', 'makeExtends', 'makeGeneric', 'makeMethodsList', - 'makePrototypeFromClassDef', 'makeStandardGeneric', 'matchSignature', 'Math', 'Math2', 'mergeMethods', - 'metaNameUndo', 'method.skeleton', 'MethodAddCoerce', 'methodSignatureMatrix', 'MethodsList', - 'MethodsListSelect', 'methodsPackageMetaName', 'missingArg', 'mlistMetaName', 'new', 'newBasic', - 'newClassRepresentation', 'newEmptyObject', 'Ops', 'packageSlot', 'packageSlot<-', 'possibleExtends', - 'prohibitGeneric', 'promptClass', 'promptMethods', 'prototype', 'Quote', 'rbind2', - 'reconcilePropertiesAndPrototype', 'registerImplicitGenerics', 'rematchDefinition', - 'removeClass', 'removeGeneric', 'removeMethod', 'removeMethods', 'removeMethodsObject', 'representation', - 'requireMethods', 'resetClass', 'resetGeneric', 'S3Class', 'S3Class<-', 'S3Part', 'S3Part<-', 'sealClass', - 'seemsS4Object', 'selectMethod', 'selectSuperClasses', 'sessionData', 'setAs', 'setClass', 'setClassUnion', - 'setDataPart', 'setGeneric', 'setGenericImplicit', 'setGroupGeneric', 'setIs', 'setMethod', 'setOldClass', - 'setPackageName', 'setPrimitiveMethods', 'setReplaceMethod', 'setValidity', 'show', 'showClass', 'showDefault', - 'showExtends', 'showMethods', 'showMlist', 'signature', 'SignatureMethod', 'sigToEnv', 'slot', 'slot<-', - 'slotNames', 'slotsFromS3', 'substituteDirect', 'substituteFunctionArgs', 'Summary', 'superClassDepth', - 'testInheritedMethods', 'testVirtual', 'traceOff', 'traceOn', 'tryNew', 'trySilent', 'unRematchDefinition', - 'validObject', 'validSlotNames', - ), - 7 => array( // stats pkg - 'acf', 'acf2AR', 'add.scope', 'add1', 'addmargins', 'aggregate', - 'aggregate.data.frame', 'aggregate.default', 'aggregate.ts', 'AIC', - 'alias', 'anova', 'anova.glm', 'anova.glmlist', 'anova.lm', 'anova.lmlist', - 'anova.mlm', 'anovalist.lm', 'ansari.test', 'aov', 'approx', 'approxfun', - 'ar', 'ar.burg', 'ar.mle', 'ar.ols', 'ar.yw', 'arima', 'arima.sim', - 'arima0', 'arima0.diag', 'ARMAacf', 'ARMAtoMA', 'as.dendrogram', 'as.dist', - 'as.formula', 'as.hclust', 'as.stepfun', 'as.ts', 'asOneSidedFormula', 'ave', - 'bandwidth.kernel', 'bartlett.test', 'binom.test', 'binomial', 'biplot', - 'Box.test', 'bw.bcv', 'bw.nrd', 'bw.nrd0', 'bw.SJ', 'bw.ucv', 'C', 'cancor', - 'case.names', 'ccf', 'chisq.test', 'clearNames', 'cmdscale', 'coef', 'coefficients', - 'complete.cases', 'confint', 'confint.default', 'constrOptim', 'contr.helmert', - 'contr.poly', 'contr.SAS', 'contr.sum', 'contr.treatment', 'contrasts', 'contrasts<-', - 'convolve', 'cooks.distance', 'cophenetic', 'cor', 'cor.test', 'cov', 'cov.wt', - 'cov2cor', 'covratio', 'cpgram', 'cutree', 'cycle', 'D', 'dbeta', 'dbinom', 'dcauchy', - 'dchisq', 'decompose', 'delete.response', 'deltat', 'dendrapply', 'density', 'density.default', - 'deriv', 'deriv.default', 'deriv.formula', 'deriv3', 'deriv3.default', 'deriv3.formula', - 'deviance', 'dexp', 'df', 'df.kernel', 'df.residual', 'dfbeta', 'dfbetas', 'dffits', - 'dgamma', 'dgeom', 'dhyper', 'diff.ts', 'diffinv', 'dist', 'dlnorm', 'dlogis', - 'dmultinom', 'dnbinom', 'dnorm', 'dpois', 'drop.scope', 'drop.terms', 'drop1', - 'dsignrank', 'dt', 'dummy.coef', 'dunif', 'dweibull', 'dwilcox', 'ecdf', 'eff.aovlist', - 'effects', 'embed', 'end', 'estVar', 'expand.model.frame', 'extractAIC', 'factanal', - 'factor.scope', 'family', 'fft', 'filter', 'fisher.test', 'fitted', 'fitted.values', - 'fivenum', 'fligner.test', 'formula', 'frequency', 'friedman.test', 'ftable', 'Gamma', - 'gaussian', 'get_all_vars', 'getInitial', 'glm', 'glm.control', 'glm.fit', 'glm.fit.null', - 'hasTsp', 'hat', 'hatvalues', 'hatvalues.lm', 'hclust', 'heatmap', 'HoltWinters', 'influence', - 'influence.measures', 'integrate', 'interaction.plot', 'inverse.gaussian', 'IQR', - 'is.empty.model', 'is.leaf', 'is.mts', 'is.stepfun', 'is.ts', 'is.tskernel', 'isoreg', - 'KalmanForecast', 'KalmanLike', 'KalmanRun', 'KalmanSmooth', 'kernapply', 'kernel', 'kmeans', - 'knots', 'kruskal.test', 'ks.test', 'ksmooth', 'lag', 'lag.plot', 'line', 'lines.ts', 'lm', - 'lm.fit', 'lm.fit.null', 'lm.influence', 'lm.wfit', 'lm.wfit.null', 'loadings', 'loess', - 'loess.control', 'loess.smooth', 'logLik', 'loglin', 'lowess', 'ls.diag', 'ls.print', 'lsfit', - 'mad', 'mahalanobis', 'make.link', 'makeARIMA', 'makepredictcall', 'manova', 'mantelhaen.test', - 'mauchley.test', 'mauchly.test', 'mcnemar.test', 'median', 'median.default', 'medpolish', - 'model.extract', 'model.frame', 'model.frame.aovlist', 'model.frame.default', 'model.frame.glm', - 'model.frame.lm', 'model.matrix', 'model.matrix.default', 'model.matrix.lm', 'model.offset', - 'model.response', 'model.tables', 'model.weights', 'monthplot', 'mood.test', 'mvfft', 'na.action', - 'na.contiguous', 'na.exclude', 'na.fail', 'na.omit', 'na.pass', 'napredict', 'naprint', 'naresid', - 'nextn', 'nlm', 'nlminb', 'nls', 'nls.control', 'NLSstAsymptotic', 'NLSstClosestX', 'NLSstLfAsymptote', - 'NLSstRtAsymptote', 'numericDeriv', 'offset', 'oneway.test', 'optim', 'optimise', 'optimize', - 'order.dendrogram', 'p.adjust', 'p.adjust.methods', 'pacf', 'pairwise.prop.test', 'pairwise.t.test', - 'pairwise.table', 'pairwise.wilcox.test', 'pbeta', 'pbinom', 'pbirthday', 'pcauchy', 'pchisq', 'pexp', - 'pf', 'pgamma', 'pgeom', 'phyper', 'plclust', 'plnorm', 'plogis', 'plot.density', 'plot.ecdf', 'plot.lm', - 'plot.mlm', 'plot.spec', 'plot.spec.coherency', 'plot.spec.phase', 'plot.stepfun', 'plot.ts', 'plot.TukeyHSD', - 'pnbinom', 'pnorm', 'poisson', 'poisson.test', 'poly', 'polym', 'power', 'power.anova.test', 'power.prop.test', - 'power.t.test', 'PP.test', 'ppoints', 'ppois', 'ppr', 'prcomp', 'predict', 'predict.glm', 'predict.lm', - 'predict.mlm', 'predict.poly', 'preplot', 'princomp', 'print.anova', 'print.coefmat', 'print.density', - 'print.family', 'print.formula', 'print.ftable', 'print.glm', 'print.infl', 'print.integrate', 'print.lm', - 'print.logLik', 'print.terms', 'print.ts', 'printCoefmat', 'profile', 'proj', 'promax', 'prop.test', - 'prop.trend.test', 'psignrank', 'pt', 'ptukey', 'punif', 'pweibull', 'pwilcox', 'qbeta', 'qbinom', - 'qbirthday', 'qcauchy', 'qchisq', 'qexp', 'qf', 'qgamma', 'qgeom', 'qhyper', 'qlnorm', 'qlogis', - 'qnbinom', 'qnorm', 'qpois', 'qqline', 'qqnorm', 'qqnorm.default', 'qqplot', 'qsignrank', 'qt', - 'qtukey', 'quade.test', 'quantile', 'quantile.default', 'quasi', 'quasibinomial', 'quasipoisson', - 'qunif', 'qweibull', 'qwilcox', 'r2dtable', 'rbeta', 'rbinom', 'rcauchy', 'rchisq', 'read.ftable', - 'rect.hclust', 'reformulate', 'relevel', 'reorder', 'replications', 'reshape', 'reshapeLong', 'reshapeWide', - 'resid', 'residuals', 'residuals.default', 'residuals.glm', 'residuals.lm', 'rexp', 'rf', 'rgamma', 'rgeom', - 'rhyper', 'rlnorm', 'rlogis', 'rmultinom', 'rnbinom', 'rnorm', 'rpois', 'rsignrank', 'rstandard', 'rstandard.glm', - 'rstandard.lm', 'rstudent', 'rstudent.glm', 'rstudent.lm', 'rt', 'runif', 'runmed', 'rweibull', 'rwilcox', - 'scatter.smooth', 'screeplot', 'sd', 'se.contrast', 'selfStart', 'setNames', 'shapiro.test', 'simulate', - 'smooth', 'smooth.spline', 'smoothEnds', 'sortedXyData', 'spec.ar', 'spec.pgram', 'spec.taper', 'spectrum', - 'spline', 'splinefun', 'splinefunH', 'SSasymp', 'SSasympOff', 'SSasympOrig', 'SSbiexp', 'SSD', 'SSfol', - 'SSfpl', 'SSgompertz', 'SSlogis', 'SSmicmen', 'SSweibull', 'start', 'stat.anova', 'step', 'stepfun', 'stl', - 'StructTS', 'summary.aov', 'summary.aovlist', 'summary.glm', 'summary.infl', 'summary.lm', 'summary.manova', - 'summary.mlm', 'summary.stepfun', 'supsmu', 'symnum', 't.test', 'termplot', 'terms', 'terms.aovlist', - 'terms.default', 'terms.formula', 'terms.terms', 'time', 'toeplitz', 'ts', 'ts.intersect', 'ts.plot', - 'ts.union', 'tsdiag', 'tsp', 'tsp<-', 'tsSmooth', 'TukeyHSD', 'TukeyHSD.aov', 'uniroot', 'update', - 'update.default', 'update.formula', 'var', 'var.test', 'variable.names', 'varimax', 'vcov', 'weighted.mean', - 'weighted.residuals', 'weights', 'wilcox.test', 'window', 'window<-', 'write.ftable', 'xtabs', - ), - 8 => array( // utils pkg - 'alarm', 'apropos', 'argsAnywhere', 'as.person', 'as.personList', 'as.relistable', 'as.roman', - 'assignInNamespace', 'available.packages', 'browseEnv', 'browseURL', 'browseVignettes', 'bug.report', - 'capture.output', 'checkCRAN', 'chooseCRANmirror', 'citation', 'citEntry', 'citFooter', 'citHeader', - 'close.socket', 'combn', 'compareVersion', 'contrib.url', 'count.fields', 'CRAN.packages', 'data', - 'data.entry', 'dataentry', 'de', 'de.ncols', 'de.restore', 'de.setup', 'debugger', 'demo', 'download.file', - 'download.packages', 'dump.frames', 'edit', 'emacs', 'example', 'file_test', 'file.edit', 'find', 'fix', - 'fixInNamespace', 'flush.console', 'formatOL', 'formatUL', 'getAnywhere', 'getCRANmirrors', 'getFromNamespace', - 'getS3method', 'getTxtProgressBar', 'glob2rx', 'head', 'head.matrix', 'help', 'help.request', 'help.search', - 'help.start', 'history', 'index.search', 'install.packages', 'installed.packages', 'is.relistable', - 'limitedLabels', 'loadhistory', 'localeToCharset', 'ls.str', 'lsf.str', 'make.packages.html', 'make.socket', - 'makeRweaveLatexCodeRunner', 'memory.limit', 'memory.size', 'menu', 'methods', 'mirror2html', 'modifyList', - 'new.packages', 'normalizePath', 'nsl', 'object.size', 'old.packages', 'package.contents', 'package.skeleton', - 'packageDescription', 'packageStatus', 'page', 'person', 'personList', 'pico', 'prompt', 'promptData', - 'promptPackage', 'rc.getOption', 'rc.options', 'rc.settings', 'rc.status', 'read.csv', 'read.csv2', 'read.delim', - 'read.delim2', 'read.DIF', 'read.fortran', 'read.fwf', 'read.socket', 'read.table', 'readCitationFile', 'recover', - 'relist', 'remove.packages', 'Rprof', 'Rprofmem', 'RShowDoc', 'RSiteSearch', 'rtags', 'Rtangle', 'RtangleSetup', - 'RtangleWritedoc', 'RweaveChunkPrefix', 'RweaveEvalWithOpt', 'RweaveLatex', 'RweaveLatexFinish', 'RweaveLatexOptions', - 'RweaveLatexSetup', 'RweaveLatexWritedoc', 'RweaveTryStop', 'savehistory', 'select.list', 'sessionInfo', - 'setRepositories', 'setTxtProgressBar', 'stack', 'Stangle', 'str', 'strOptions', 'summaryRprof', 'Sweave', - 'SweaveHooks', 'SweaveSyntaxLatex', 'SweaveSyntaxNoweb', 'SweaveSyntConv', 'tail', 'tail.matrix', 'timestamp', - 'toBibtex', 'toLatex', 'txtProgressBar', 'type.convert', 'unstack', 'unzip', 'update.packages', 'update.packageStatus', - 'upgrade', 'url.show', 'URLdecode', 'URLencode', 'vi', 'View', 'vignette', 'write.csv', 'write.csv2', 'write.socket', - 'write.table', 'wsbrowser', 'xedit', 'xemacs', 'zip.file.extract', - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|','<-','->', - '^', '-', ':', '::', ':::', '!', '!=', '*', '?', - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #0000FF; font-weight: bold;', - 3 => 'color: #CC9900; font-weight: bold;', - 4 => 'color: #0000FF; font-weight: bold;', - 5 => 'color: #0000FF; font-weight: bold;', - 6 => 'color: #0000FF; font-weight: bold;', - 7 => 'color: #0000FF; font-weight: bold;', - 8 => 'color: #0000FF; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #228B22;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - ), - 'BRACKETS' => array( - 0 => 'color: #080;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - 1 => '', - 2 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #080;' - ), - 'REGEXPS' => array( - 0 => 'color:#A020F0;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => 'http://astrostatistics.psu.edu/su07/R/html/graphics/html/{FNAME}.html', // http://sekhon.berkeley.edu/library/graphics/html/{FNAME}.html - 3 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/Normal.html', // http://sekhon.berkeley.edu/library/stats/html/Normal.html - 4 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/{FNAME}.html', // http://sekhon.berkeley.edu/library/stats/html/{FNAME}.html - 5 => 'http://astrostatistics.psu.edu/su07/R/html/stats/html/summary.lm.html', // http://sekhon.berkeley.edu/library/stats/html/summary.lm.html - 6 => 'http://astrostatistics.psu.edu/su07/R/html/base/html/Log.html', // http://sekhon.berkeley.edu/library/base/html/Log.html - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - 0 => array( - GESHI_SEARCH => "([^\w])'([^\\n\\r']*)'", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => "\\1'", - GESHI_AFTER => "'" - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#;>|^&\\.])(?<!\/html\/)", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_\|%\\-&;\\.])" - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/ruby.php b/system/application/libraries/geshi/ruby.php deleted file mode 100644 index 57d379d66..000000000 --- a/system/application/libraries/geshi/ruby.php +++ /dev/null @@ -1,226 +0,0 @@ -<?php -/************************************************************************************* - * ruby.php - * -------- - * Author: Moises Deniz - * Copyright: (c) 2007 Moises Deniz - * Release Version: 1.0.8.6 - * Date Started: 2007/03/21 - * - * Ruby language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2007/03/21 (1.0.7.19) - * - Initial release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Ruby', - 'COMMENT_SINGLE' => array(1 => "#"), - 'COMMENT_MULTI' => array("=begin" => "=end"), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', '`','\''), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'alias', 'and', 'begin', 'break', 'case', 'class', - 'def', 'defined', 'do', 'else', 'elsif', 'end', - 'ensure', 'for', 'if', 'in', 'module', 'while', - 'next', 'not', 'or', 'redo', 'rescue', 'yield', - 'retry', 'super', 'then', 'undef', 'unless', - 'until', 'when', 'include' - ), - 2 => array( - '__FILE__', '__LINE__', 'false', 'nil', 'self', 'true', - 'return' - ), - 3 => array( - 'Array', 'Float', 'Integer', 'String', 'at_exit', - 'autoload', 'binding', 'caller', 'catch', 'chop', 'chop!', - 'chomp', 'chomp!', 'eval', 'exec', 'exit', 'exit!', 'fail', - 'fork', 'format', 'gets', 'global_variables', 'gsub', 'gsub!', - 'iterator?', 'lambda', 'load', 'local_variables', 'loop', - 'open', 'p', 'print', 'printf', 'proc', 'putc', 'puts', - 'raise', 'rand', 'readline', 'readlines', 'require', 'select', - 'sleep', 'split', 'sprintf', 'srand', 'sub', 'sub!', 'syscall', - 'system', 'trace_var', 'trap', 'untrace_var' - ), - 4 => array( - 'Abbrev', 'ArgumentError', 'Base64', 'Benchmark', - 'Benchmark::Tms', 'Bignum', 'Binding', 'CGI', 'CGI::Cookie', - 'CGI::HtmlExtension', 'CGI::QueryExtension', - 'CGI::Session', 'CGI::Session::FileStore', - 'CGI::Session::MemoryStore', 'Class', 'Comparable', 'Complex', - 'ConditionVariable', 'Continuation', 'Data', - 'Date', 'DateTime', 'Delegator', 'Dir', 'EOFError', 'ERB', - 'ERB::Util', 'Enumerable', 'Enumerable::Enumerator', 'Errno', - 'Exception', 'FalseClass', 'File', - 'File::Constants', 'File::Stat', 'FileTest', 'FileUtils', - 'FileUtils::DryRun', 'FileUtils::NoWrite', - 'FileUtils::StreamUtils_', 'FileUtils::Verbose', 'Find', - 'Fixnum', 'FloatDomainError', 'Forwardable', 'GC', 'Generator', - 'Hash', 'IO', 'IOError', 'Iconv', 'Iconv::BrokenLibrary', - 'Iconv::Failure', 'Iconv::IllegalSequence', - 'Iconv::InvalidCharacter', 'Iconv::InvalidEncoding', - 'Iconv::OutOfRange', 'IndexError', 'Interrupt', 'Kernel', - 'LoadError', 'LocalJumpError', 'Logger', 'Logger::Application', - 'Logger::Error', 'Logger::Formatter', 'Logger::LogDevice', - 'Logger::LogDevice::LogDeviceMutex', 'Logger::Severity', - 'Logger::ShiftingError', 'Marshal', 'MatchData', - 'Math', 'Matrix', 'Method', 'Module', 'Mutex', 'NameError', - 'NameError::message', 'NilClass', 'NoMemoryError', - 'NoMethodError', 'NotImplementedError', 'Numeric', 'Object', - 'ObjectSpace', 'Observable', 'PStore', 'PStore::Error', - 'Pathname', 'Precision', 'Proc', 'Process', 'Process::GID', - 'Process::Status', 'Process::Sys', 'Process::UID', 'Queue', - 'Range', 'RangeError', 'Rational', 'Regexp', 'RegexpError', - 'RuntimeError', 'ScriptError', 'SecurityError', 'Set', - 'Shellwords', 'Signal', 'SignalException', 'SimpleDelegator', - 'SingleForwardable', 'Singleton', 'SingletonClassMethods', - 'SizedQueue', 'SortedSet', 'StandardError', 'StringIO', - 'StringScanner', 'StringScanner::Error', 'Struct', 'Symbol', - 'SyncEnumerator', 'SyntaxError', 'SystemCallError', - 'SystemExit', 'SystemStackError', 'Tempfile', - 'Test::Unit::TestCase', 'Test::Unit', 'Test', 'Thread', - 'ThreadError', 'ThreadGroup', - 'ThreadsWait', 'Time', 'TrueClass', 'TypeError', 'URI', - 'URI::BadURIError', 'URI::Error', 'URI::Escape', 'URI::FTP', - 'URI::Generic', 'URI::HTTP', 'URI::HTTPS', - 'URI::InvalidComponentError', 'URI::InvalidURIError', - 'URI::LDAP', 'URI::MailTo', 'URI::REGEXP', - 'URI::REGEXP::PATTERN', 'UnboundMethod', 'Vector', 'YAML', - 'ZeroDivisionError', 'Zlib', - 'Zlib::BufError', 'Zlib::DataError', 'Zlib::Deflate', - 'Zlib::Error', 'Zlib::GzipFile', 'Zlib::GzipFile::CRCError', - 'Zlib::GzipFile::Error', 'Zlib::GzipFile::LengthError', - 'Zlib::GzipFile::NoFooter', 'Zlib::GzipReader', - 'Zlib::GzipWriter', 'Zlib::Inflate', 'Zlib::MemError', - 'Zlib::NeedDict', 'Zlib::StreamEnd', 'Zlib::StreamError', - 'Zlib::VersionError', - 'Zlib::ZStream', - 'HTML::Selector', 'HashWithIndifferentAccess', 'Inflector', - 'Inflector::Inflections', 'Mime', 'Mime::Type', - 'OCI8AutoRecover', 'TimeZone', 'XmlSimple' - ), - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '%', '&', '*', '|', '/', '<', '>', - '+', '-', '=>', '<<' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color:#9966CC; font-weight:bold;', - 2 => 'color:#0000FF; font-weight:bold;', - 3 => 'color:#CC0066; font-weight:bold;', - 4 => 'color:#CC00FF; font-weight:bold;', - ), - 'COMMENTS' => array( - 1 => 'color:#008000; font-style:italic;', - 'MULTI' => 'color:#000080; font-style:italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color:#000099;' - ), - 'BRACKETS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'STRINGS' => array( - 0 => 'color:#996600;' - ), - 'NUMBERS' => array( - 0 => 'color:#006666;' - ), - 'METHODS' => array( - 1 => 'color:#9900CC;' - ), - 'SYMBOLS' => array( - 0 => 'color:#006600; font-weight:bold;' - ), - 'REGEXPS' => array( - 0 => 'color:#ff6633; font-weight:bold;', - 1 => 'color:#0066ff; font-weight:bold;', - 2 => 'color:#6666ff; font-weight:bold;', - 3 => 'color:#ff3333; font-weight:bold;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - 0 => array(//Variables - GESHI_SEARCH => "([[:space:]])(\\$[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 1 => array(//Arrays - GESHI_SEARCH => "([[:space:]])(@[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 2 => "([A-Z][a-zA-Z0-9_]*::)+[A-Z][a-zA-Z0-9_]*",//Static OOP symbols - 3 => array( - GESHI_SEARCH => "([[:space:]]|\[|\()(:[a-zA-Z_][a-zA-Z0-9_]*)", - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '<%' => '%>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - ), - 'TAB_WIDTH' => 2 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/sas.php b/system/application/libraries/geshi/sas.php deleted file mode 100644 index 16617b58e..000000000 --- a/system/application/libraries/geshi/sas.php +++ /dev/null @@ -1,290 +0,0 @@ -<?php -/************************************************************************************* - * sas.php - * ------- - * Author: Galen Johnson (solitaryr@gmail.com) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2005/12/27 - * - * SAS language file for GeSHi. Based on the sas vim file. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * - Cleaned up code style - * 2005/12/27 (1.0.0) - * - First Release - * - * TODO (updated 2005/12/27) - * ------------------------- - * * Check highlighting stuff works - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'SAS', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - '_ALL_','_CHARACTER_','_INFILE_','_N_','_NULL_','_NUMERIC_', - '_WEBOUT_' - ), - 2 => array( - '%BQUOTE','%CMPRES','%COMPSTOR','%DATATYP','%DISPLAY','%DO','%ELSE', - '%END','%EVAL','%GLOBAL','%GOTO','%IF','%INDEX','%INPUT','%KEYDEF', - '%LABEL','%LEFT','%LENGTH','%LET','%LOCAL','%LOWCASE','%MACRO', - '%MEND','%NRBQUOTE','%NRQUOTE','%NRSTR','%PUT','%QCMPRES','%QLEFT', - '%QLOWCASE','%QSCAN','%QSUBSTR','%QSYSFUNC','%QTRIM','%QUOTE', - '%QUPCASE','%SCAN','%STR','%SUBSTR','%SUPERQ','%SYSCALL', - '%SYSEVALF','%SYSEXEC','%SYSFUNC','%SYSGET','%SYSLPUT','%SYSPROD', - '%SYSRC','%SYSRPUT','%THEN','%TO','%TRIM','%UNQUOTE','%UNTIL', - '%UPCASE','%VERIFY','%WHILE','%WINDOW' - ), - 3 => array( - 'ABS','ADDR','AIRY','ARCOS','ARSIN','ATAN','ATTRC','ATTRN','BAND', - 'BETAINV','BLSHIFT','BNOT','BOR','BRSHIFT','BXOR','BYTE','CDF', - 'CEIL','CEXIST','CINV','CLOSE','CNONCT','COLLATE','COMPBL', - 'COMPOUND','COMPRESS','COSH','COS','CSS','CUROBS','CV','DACCDBSL', - 'DACCDB','DACCSL','DACCSYD','DACCTAB','DAIRY','DATETIME','DATEJUL', - 'DATEPART','DATE','DAY','DCLOSE','DEPDBSL','DEPDB','DEPSL','DEPSYD', - 'DEPTAB','DEQUOTE','DHMS','DIF','DIGAMMA','DIM','DINFO','DNUM', - 'DOPEN','DOPTNAME','DOPTNUM','DREAD','DROPNOTE','DSNAME','ERFC', - 'ERF','EXIST','EXP','FAPPEND','FCLOSE','FCOL','FDELETE','FETCHOBS', - 'FETCH','FEXIST','FGET','FILEEXIST','FILENAME','FILEREF','FINFO', - 'FINV','FIPNAMEL','FIPNAME','FIPSTATE','FLOOR','FNONCT','FNOTE', - 'FOPEN','FOPTNAME','FOPTNUM','FPOINT','FPOS','FPUT','FREAD', - 'FREWIND','FRLEN','FSEP','FUZZ','FWRITE','GAMINV','GAMMA', - 'GETOPTION','GETVARC','GETVARN','HBOUND','HMS','HOSTHELP','HOUR', - 'IBESSEL','INDEXW','INDEXC','INDEX','INPUTN','INPUTC','INPUT', - 'INTRR','INTCK','INTNX','INT','IRR','JBESSEL','JULDATE','KURTOSIS', - 'LAG','LBOUND','LEFT','LENGTH','LGAMMA','LIBNAME','LIBREF','LOG10', - 'LOG2','LOGPDF','LOGPMF','LOGSDF','LOG','LOWCASE','MAX','MDY', - 'MEAN','MINUTE','MIN','MOD','MONTH','MOPEN','MORT','NETPV','NMISS', - 'NORMAL','NPV','N','OPEN','ORDINAL','PATHNAME','PDF','PEEKC','PEEK', - 'PMF','POINT','POISSON','POKE','PROBBETA','PROBBNML','PROBCHI', - 'PROBF','PROBGAM','PROBHYPR','PROBIT','PROBNEGB','PROBNORM','PROBT', - 'PUTN','PUTC','PUT','QTR','QUOTE','RANBIN','RANCAU','RANEXP', - 'RANGAM','RANGE','RANK','RANNOR','RANPOI','RANTBL','RANTRI', - 'RANUNI','REPEAT','RESOLVE','REVERSE','REWIND','RIGHT','ROUND', - 'SAVING','SCAN','SDF','SECOND','SIGN','SINH','SIN','SKEWNESS', - 'SOUNDEX','SPEDIS','SQRT','STDERR','STD','STFIPS','STNAME', - 'STNAMEL','SUBSTR','SUM','SYMGET','SYSGET','SYSMSG','SYSPROD', - 'SYSRC','SYSTEM','TANH','TAN','TIMEPART','TIME','TINV','TNONCT', - 'TODAY','TRANSLATE','TRANWRD','TRIGAMMA','TRIMN','TRIM','TRUNC', - 'UNIFORM','UPCASE','USS','VARFMT','VARINFMT','VARLABEL','VARLEN', - 'VARNAME','VARNUM','VARRAYX','VARRAY','VARTYPE','VAR','VERIFY', - 'VFORMATX','VFORMATDX','VFORMATD','VFORMATNX','VFORMATN', - 'VFORMATWX','VFORMATW','VFORMAT','VINARRAYX','VINARRAY', - 'VINFORMATX','VINFORMATDX','VINFORMATD','VINFORMATNX','VINFORMATN', - 'VINFORMATWX','VINFORMATW','VINFORMAT','VLABELX','VLABEL', - 'VLENGTHX','VLENGTH','VNAMEX','VNAME','VTYPEX','VTYPE','WEEKDAY', - 'YEAR','YYQ','ZIPFIPS','ZIPNAME','ZIPNAMEL','ZIPSTATE' - ), - 4 => array( - 'ABORT','ADD','ALTER','AND','ARRAY','AS','ATTRIB','BY','CALL', - 'CARDS4','CASCADE','CATNAME','CHECK','CONTINUE','CREATE', - 'DATALINES4','DELETE','DESCRIBE','DISPLAY','DISTINCT','DM','DROP', - 'ENDSAS','FILE','FOOTNOTE','FOREIGN','FORMAT','FROM', - 'GOTO','GROUP','HAVING','IN','INFILE','INFORMAT', - 'INSERT','INTO','KEEP','KEY','LABEL','LEAVE', - 'LIKE','LINK','LIST','LOSTCARD','MERGE','MESSAGE','MISSING', - 'MODIFY','MSGTYPE','NOT','NULL','ON','OPTIONS','OR','ORDER', - 'OUTPUT','PAGE','PRIMARY','REDIRECT','REFERENCES','REMOVE', - 'RENAME','REPLACE','RESET','RESTRICT','RETAIN','RETURN','SELECT', - 'SET','SKIP','STARTSAS','STOP','SYSTASK','TABLE','TITLE','UNIQUE', - 'UPDATE','VALIDATE','VIEW','WAITSAS','WHERE','WINDOW','X' - ), - 5 => array( - 'DO','ELSE','END','IF','THEN','UNTIL','WHILE' - ), - 6 => array( - 'RUN','QUIT','DATA' - ), - 7 => array( - 'ERROR' - ), - 8 => array( - 'WARNING' - ), - 9 => array( - 'NOTE' - ) - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - 9 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #0000ff;', - 3 => 'color: #0000ff;', - 4 => 'color: #0000ff;', - 5 => 'color: #0000ff;', - 6 => 'color: #000080; font-weight: bold;', - 7 => 'color: #ff0000;', - 8 => 'color: #00ff00;', - 9 => 'color: #0000ff;' - ), - 'COMMENTS' => array( -// 1 => 'color: #006400; font-style: italic;', - 'MULTI' => 'color: #006400; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #a020f0;' - ), - 'NUMBERS' => array( - 0 => 'color: #2e8b57; font-weight: bold;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff; font-weight: bold;', - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #006400; font-style: italic;', - 3 => 'color: #006400; font-style: italic;', - 4 => 'color: #006400; font-style: italic;', - 5 => 'color: #ff0000; font-weight: bold;', - 6 => 'color: #00ff00; font-style: italic;', - 7 => 'color: #0000ff; font-style: normal;', - 8 => 'color: #b218b2; font-weight: bold;', - 9 => 'color: #b218b2; font-weight: bold;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '', - 9 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => "&[a-zA-Z_][a-zA-Z0-9_]*", - 1 => array(//Procedures - GESHI_SEARCH => '(^\\s*)(PROC \\w+)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 2 => array( - GESHI_SEARCH => '(^\\s*)(\\*.*;)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 3 => array( - GESHI_SEARCH => '(.*;\\s*)(\\*.*;)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 4 => array( - GESHI_SEARCH => '(^\\s*)(%\\*.*;)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 5 => array(//Error messages - GESHI_SEARCH => '(^ERROR.*)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 6 => array(//Warning messages - GESHI_SEARCH => '(^WARNING.*)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 7 => array(//Notice messages - GESHI_SEARCH => '(^NOTE.*)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'im', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 8 => array( - GESHI_SEARCH => '(^\\s*)(CARDS.*)(^\\s*;\\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'sim', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - 9 => array( - GESHI_SEARCH => '(^\\s*)(DATALINES.*)(^\\s*;\\s*$)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'sim', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/scala.php b/system/application/libraries/geshi/scala.php deleted file mode 100644 index 5ebe9ed96..000000000 --- a/system/application/libraries/geshi/scala.php +++ /dev/null @@ -1,122 +0,0 @@ -<?php -/************************************************************************************* - * scala.php - * ---------- - * Author: Franco Lombardo (franco@francolombardo.net) - * Copyright: (c) 2008 Franco Lombardo, Benny Baumann - * Release Version: 1.0.8.6 - * Date Started: 2008/02/08 - * - * Scala language file for GeSHi. - * - * CHANGES - * ------- - * 2008/02/08 (1.0.7.22) - * - First Release - * - * TODO (updated 2007/04/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Scala', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'abstract', 'case', 'catch', 'class', 'def', - 'do', 'else', 'extends', 'false', 'final', - 'finally', 'for', 'forSome', 'if', 'implicit', - 'import', 'match', 'new', 'null', 'object', - 'override', 'package', 'private', 'protected', 'requires', - 'return', 'sealed', 'super', 'this', 'throw', - 'trait', 'try', 'true', 'type', 'val', - 'var', 'while', 'with', 'yield' - ), - 2 => array( - 'void', 'double', 'int', 'boolean', 'byte', 'short', 'long', 'char', 'float' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '*', '&', '%', '!', ';', '<', '>', '?', - '_', ':', '=', '=>', '<<:', - '<%', '>:', '#', '@' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff; font-weight: bold;', - 2 => 'color: #9999cc; font-weight: bold;', - ), - 'COMMENTS' => array( - 1=> 'color: #008000; font-style: italic;', - 'MULTI' => 'color: #00ff00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #0000ff; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #F78811;' - ), - 'STRINGS' => array( - 0 => 'color: #6666FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #F78811;' - ), - 'METHODS' => array( - 1 => 'color: #000000;', - 2 => 'color: #000000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000080;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => 'http://scala-lang.org', - 2 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/scheme.php b/system/application/libraries/geshi/scheme.php deleted file mode 100644 index dac7c6f06..000000000 --- a/system/application/libraries/geshi/scheme.php +++ /dev/null @@ -1,170 +0,0 @@ -<?php -/************************************************************************************* - * scheme.php - * ---------- - * Author: Jon Raphaelson (jonraphaelson@gmail.com) - * Copyright: (c) 2005 Jon Raphaelson, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/30 - * - * Scheme language file for GeSHi. - * - * CHANGES - * ------- - * 2005/09/22 (1.0.0) - * - First Release - * - * TODO (updated 2005/09/22) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Scheme', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array('#|' => '|#'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'abs', 'acos', 'and', 'angle', 'append', 'appply', 'approximate', - 'asin', 'assoc', 'assq', 'assv', 'atan', - - 'begin', 'boolean?', 'bound-identifier=?', - - 'caar', 'caddr', 'cadr', 'call-with-current-continuation', - 'call-with-input-file', 'call-with-output-file', 'call/cc', 'car', - 'case', 'catch', 'cdddar', 'cddddr', 'cdr', 'ceiling', 'char->integer', - 'char-alphabetic?', 'char-ci<=?', 'char-ci<?', 'char-ci?', 'char-ci>=?', - 'char-ci>?', 'char-ci=?', 'char-downcase', 'char-lower-case?', - 'char-numeric', 'char-ready', 'char-ready?', 'char-upcase', - 'char-upper-case?', 'char-whitespace?', 'char<=?', 'char<?', 'char=?', - 'char>=?', 'char>?', 'char?', 'close-input-port', 'close-output-port', - 'complex?', 'cond', 'cons', 'construct-identifier', 'cos', - 'current-input-port', 'current-output-port', - - 'd', 'define', 'define-syntax', 'delay', 'denominator', 'display', 'do', - - 'e', 'eof-object?', 'eq?', 'equal?', 'eqv?', 'even?', 'exact->inexact', - 'exact?', 'exp', 'expt', 'else', - - 'f', 'floor', 'for-each', 'force', 'free-identifer=?', - - 'gcd', 'gen-counter', 'gen-loser', 'generate-identifier', - - 'identifier->symbol', 'identifier', 'if', 'imag-part', 'inexact->exact', - 'inexact?', 'input-port?', 'integer->char', 'integer?', 'integrate-system', - - 'l', 'lambda', 'last-pair', 'lcm', 'length', 'let', 'let*', 'letrec', - 'list', 'list->string', 'list->vector', 'list-ref', 'list-tail', 'list?', - 'load', 'log', - - 'magnitude', 'make-polar', 'make-promise', 'make-rectangular', - 'make-string', 'make-vector', 'map', 'map-streams', 'max', 'member', - 'memq', 'memv', 'min', 'modulo', - - 'negative', 'newline', 'nil', 'not', 'null?', 'number->string', 'number?', - 'numerator', - - 'odd?', 'open-input-file', 'open-output-file', 'or', 'output-port', - - 'pair?', 'peek-char', 'positive?', 'procedure?', - - 'quasiquote', 'quote', 'quotient', - - 'rational', 'rationalize', 'read', 'read-char', 'real-part', 'real?', - 'remainder', 'return', 'reverse', - - 's', 'sequence', 'set!', 'set-char!', 'set-cdr!', 'sin', 'sqrt', 'string', - 'string->list', 'string->number', 'string->symbol', 'string-append', - 'string-ci<=?', 'string-ci<?', 'string-ci=?', 'string-ci>=?', - 'string-ci>?', 'string-copy', 'string-fill!', 'string-length', - 'string-ref', 'string-set!', 'string<=?', 'string<?', 'string=?', - 'string>=?', 'string>?', 'string?', 'substring', 'symbol->string', - 'symbol?', 'syntax', 'syntax-rules', - - 't', 'tan', 'template', 'transcript-off', 'transcript-on', 'truncate', - - 'unquote', 'unquote-splicing', 'unwrap-syntax', - - 'vector', 'vector->list', 'vector-fill!', 'vector-length', 'vector-ref', - 'vector-set!', 'vector?', - - 'with-input-from-file', 'with-output-to-file', 'write', 'write-char', - - 'zero?' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '!', '%', '^', '&', '/','+','-','*','=','<','>',';','|' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/scilab.php b/system/application/libraries/geshi/scilab.php deleted file mode 100644 index 9bd0658db..000000000 --- a/system/application/libraries/geshi/scilab.php +++ /dev/null @@ -1,295 +0,0 @@ -<?php -/************************************************************************************* - * scilab.php - * -------- - * Author: Christophe David (geshi@christophedavid.org) - * Copyright: (c) 2008 Christophe David (geshi@christophedavid.org) - * Release Version: 1.0.8.6 - * Date Started: 2008/08/04 - * - * SciLab language file for GeSHi. - * - * CHANGES - * ------- - * 2008/08/25 (1.0.8.1) - * - Corrected with the help of Benny Baumann (BenBE@geshi.org) - * 2008/08/04 (0.0.0.1) - * - First beta Release - known problem with ' used to transpose matrices considered as start of strings - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'SciLab', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 2 => "/(?<=\)|\]|\w)'/" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'HARDQUOTE' => array("'", "'"), - 'HARDESCAPE' => array(), - 'KEYWORDS' => array( - 1 => array( - 'if', 'else', 'elseif', 'end', 'select', 'case', 'for', 'while', 'break' - ), - 2 => array( - 'STDIN', 'STDOUT', 'STDERR', - '%i', '%pi', '%e', '%eps', '%nan', '%inf', '%s', '%t', '%f', - 'usual', 'polynomial', 'boolean', 'character', 'function', 'rational', 'state-space', - 'sparse', 'boolean sparse', 'list', 'tlist', 'library', 'endfunction' - ), - 3 => array( - '%asn', '%helps', '%k', '%sn', 'abcd', 'abinv', 'abort', 'about', 'About_M2SCI_tools', - 'abs', 'acos', 'acosh', 'acoshm', 'acosm', 'AdCommunications', 'add_demo', 'add_edge', - 'add_help_chapter', 'add_node', 'add_palette', 'addcolor', 'addf', 'addinter', 'addmenu', - 'adj_lists', 'adj2sp', 'aff2ab', 'alufunctions', 'amell', 'analpf', 'analyze', 'and', - 'ans', 'apropos', 'arc_graph', 'arc_number', 'arc_properties', 'argn', 'arhnk', 'arl2', - 'arma', 'arma2p', 'armac', 'armax', 'armax1', 'arsimul', 'artest', 'articul', 'ascii', - 'asciimat', 'asin', 'asinh', 'asinhm', 'asinm', 'assignation', 'atan', 'atanh', 'atanhm', - 'atanm', 'augment', 'auread', 'auwrite', 'axes_properties', 'axis_properties', 'backslash', - 'balanc', 'balreal', 'bandwr', 'banner','bar', 'barh', 'barhomogenize', 'basename', 'bdiag', - 'beep', 'besselh', 'besseli', 'besselj', 'besselk', 'bessely', 'best_match', 'beta','bezout', - 'bifish', 'bilin', 'binomial', 'black', 'bloc2exp', 'bloc2ss', 'bode', 'bool2s', - 'boucle', 'brackets', 'browsevar', 'bsplin3val', 'bstap', 'buttmag', 'buttondialog', - 'bvode', 'bvodeS', 'c_link', 'cainv', 'calendar', 'calerf', 'calfrq', 'call', 'canon', 'casc', - 'cat', 'catch', 'ccontrg', 'cd', 'cdfbet', 'cdfbin', 'cdfchi', 'cdfchn', 'cdff', 'cdffnc', - 'cdfgam', 'cdfnbn', 'cdfnor', 'cdfpoi', 'cdft', 'ceil', 'cell', 'cell2mat', 'cellstr', 'center', - 'cepstrum', 'chain_struct', 'chaintest', 'champ', 'champ_properties', 'champ1', 'char', 'chart', - 'chartooem', 'chdir', 'cheb1mag', 'cheb2mag', 'check_graph', 'chepol', 'chfact', 'chol', 'chsolve', - 'circuit', 'classmarkov', 'clc', 'clean', 'clear', 'clear_pixmap', 'clearfun', 'clearglobal','clf', - 'clipboard', 'close', 'cls2dls', 'cmb_lin', 'cmndred', 'cmoment', 'code2str', 'coeff', 'coff', 'coffg', - 'colcomp', 'colcompr', 'colinout', 'colon', 'color', 'color_list', 'colorbar', 'colordef', 'colormap', - 'colregul', 'comma', 'comments', 'comp', 'companion', 'comparison', 'Compound_properties', 'con_nodes', - 'cond', 'config', 'configure_msvc', 'conj', 'connex', 'console', 'cont_frm', 'cont_mat', 'Contents', - 'continue', 'contour', 'contour2d', 'contour2di', 'contourf', 'contr', 'contract_edge', 'contrss', - 'convex_hull', 'convol', 'convstr', 'copfac', 'copy', 'corr', 'correl', 'cos', 'cosh', 'coshm', - 'cosm', 'cotg', 'coth', 'cothm', 'covar', 'create_palette', 'cshep2d', 'csim', 'cspect', 'Cste', - 'ctr_gram', 'cumprod', 'cumsum', 'cycle_basis', 'czt', 'dasrt', 'dassl', 'datafit', 'date', 'datenum', - 'datevec', 'dbphi', 'dcf', 'ddp', 'debug', 'dec2hex', 'deff', 'definedfields', 'degree', 'delbpt', - 'delete', 'delete_arcs', 'delete_nodes', 'delip', 'delmenu', 'demoplay', 'denom', 'derivat', 'derivative', - 'des2ss', 'des2tf', 'det', 'determ', 'detr', 'detrend', 'dft', 'dhinf', 'dhnorm', 'diag', 'diary', - 'diff', 'diophant', 'dir', 'dirname', 'disp', 'dispbpt', 'dispfiles', 'dlgamma', 'dnaupd', 'do', 'dot', - 'double', 'dragrect', 'draw', 'drawaxis', 'drawlater', 'drawnow', 'driver', 'dsaupd', 'dscr', - 'dsearch', 'dsimul', 'dt_ility', 'dtsi', 'edge_number', 'edit', 'edit_curv', 'edit_error', - 'edit_graph', 'edit_graph_menus', 'editvar', 'eigenmarkov', 'ell1mag', - 'empty', 'emptystr', 'eqfir', 'eqiir', 'equal', 'Equal', 'equil', 'equil1', - 'ereduc', 'erf', 'erfc', 'erfcx', 'errbar', 'errcatch', 'errclear', 'error', 'error_table', 'etime', - 'eval', 'eval_cshep2d', 'eval3d', 'eval3dp', 'evans', 'evstr', 'excel2sci', 'exec', 'execstr', 'exists', - 'exit', 'exp', 'expm', 'external', 'extraction', 'eye', 'fac3d', 'factorial', 'factors', 'faurre', 'fchamp', - 'fcontour', 'fcontour2d', 'fec', 'fec_properties', 'feedback', 'feval', 'ffilt', 'fft', 'fft2', 'fftshift', - 'fgrayplot', 'figure', 'figure_properties', 'figure_style', 'file', 'fileinfo', 'fileparts', 'filter', 'find', - 'find_freq', 'find_path', 'findABCD', 'findAC', 'findBD', 'findBDK', 'findm', 'findmsvccompiler', 'findobj', - 'findR', 'findx0BD', 'firstnonsingleton', 'fit_dat', 'fix', 'floor', 'flts', 'foo', 'format', - 'formatman', 'fort', 'fourplan', 'fplot2d', 'fplot3d', 'fplot3d1', 'fprintf', 'fprintfMat', 'frep2tf', - 'freq', 'freson', 'frexp', 'frfit', 'frmag', 'fscanf', 'fscanfMat', 'fsfirlin', 'fsolve', 'fspecg', - 'fstabst', 'fstair', 'ftest', 'ftuneq', 'full', 'fullfile', 'fullrf', 'fullrfk', 'fun2string', 'Funcall', - 'funcprot', 'functions', 'funptr', 'fusee', 'G_make', 'g_margin', 'gainplot', 'gamitg', - 'gamma', 'gammaln', 'gca', 'gcare', 'gcd', 'gce', 'gcf', 'gda', 'gdf', 'gen_net', 'genfac3d', 'genlib', - 'genmarkov', 'geom3d', 'geomean', 'get', 'get_contents_infer', 'get_function_path', 'getcolor', 'getcwd', - 'getd', 'getdate', 'getenv', 'getf', 'getfield', 'getfont', 'gethistory', 'getio', 'getlinestyle', - 'getlongpathname', 'getmark', 'getmemory', 'getos', 'getpid', 'getscilabkeywords', 'getshell', - 'getshortpathname', 'getsymbol', 'getvalue', 'getversion', 'gfare', 'gfrancis', 'girth', 'givens', - 'glever', 'glist', 'global', 'GlobalProperty', 'glue', 'gmres', 'gpeche', 'gr_menu', 'graduate', 'grand', - 'graph_2_mat', 'graph_center', 'graph_complement', 'graph_diameter', 'graph_power', 'graph_simp', 'graph_sum', - 'graph_union', 'graphic', 'Graphics', 'graphics_entities', 'graph-list', 'graycolormap', 'grayplot', - 'grayplot_properties', 'graypolarplot', 'great', 'grep', 'group', 'gschur', 'gsort', 'gspec', 'gstacksize', - 'gtild', 'h_cl', 'h_inf', 'h_inf_st', 'h_norm', 'h2norm', 'halt', 'hamilton', 'hank', 'hankelsv', 'harmean', - 'hat', 'havewindow', 'head_comments', 'help', 'help_skeleton', 'hermit', 'hess', 'hex2dec', 'hilb', 'hinf', - 'hist3d', 'histplot', 'horner', 'host', 'hotcolormap', 'householder', 'hrmt', 'hsv2rgb', 'hsvcolormap', - 'htrianr', 'hypermat', 'hypermatrices', 'iconvert', 'ieee', 'ifft', 'iir', 'iirgroup', 'iirlp', - 'ilib_build', 'ilib_compile', 'ilib_for_link', 'ilib_gen_gateway', 'ilib_gen_loader', 'ilib_gen_Make', - 'im_inv', 'imag', 'impl', 'imrep2ss', 'imult', 'ind2sub', 'Infer', 'inistate', 'input', 'insertion', 'int', - 'int16', 'int2d', 'int32', 'int3d', 'int8', 'intc', 'intdec', 'integrate', 'interp', 'interp1', 'interp2d', - 'interp3d', 'interpln', 'intersci', 'intersect', 'intg', 'intl', 'intppty', 'intsplin', 'inttrap', 'inttype', - 'inv', 'inv_coeff', 'invr', 'invsyslin', 'iqr', 'is_connex', 'iscellstr', 'isdef', 'isdir', 'isempty', - 'isequal', 'isequalbitwise', 'iserror', 'isglobal', 'isinf', 'isnan', 'isoview', 'isreal', 'javasci', - 'jetcolormap', 'jmat', 'justify', 'kalm', 'karmarkar', 'kernel', 'keyboard', 'knapsack', 'kpure', 'krac2', - 'kron', 'kroneck', 'label_properties', 'labostat', 'LANGUAGE', 'lasterror', 'lattn', 'lattp', 'lcf', 'lcm', - 'lcmdiag', 'ldiv', 'ldivf', 'leastsq', 'left', 'legend', 'legend_properties', 'legendre', 'legends', 'length', - 'leqr', 'less', 'lev', 'levin', 'lex_sort', 'lft', 'lgfft', 'lib', 'lin', 'lin2mu', 'lindquist', - 'line_graph', 'linear_interpn', 'lines', 'LineSpec', 'linf', 'linfn', 'link', 'linmeq', 'linpro', 'linsolve', - 'linspace', 'listfiles', 'listvarinfile', 'lmisolver', 'lmitool', 'load', 'load_graph', 'loadhistory', - 'loadmatfile', 'loadplots', 'loadwave', 'locate', 'log', 'log10', 'log1p', 'log2', 'logm', 'logspace', - 'lotest', 'lqe', 'lqg', 'lqg_ltr', 'lqg2stan', 'lqr', 'ls', 'lsq', 'lsq_splin', 'lsqrsolve', 'lsslist', - 'lstcat', 'lstsize', 'ltitr', 'lu', 'ludel', 'lufact', 'luget', 'lusolve', 'lyap', 'm_circle', 'm2scideclare', - 'macglov', 'macr2lst', 'macr2tree', 'macro', 'macrovar', 'mad', 'make_graph', 'make_index', 'makecell', 'man', - 'manedit', 'mapsound', 'markp2ss', 'mat_2_graph', 'matfile2sci', 'Matlab-Scilab_character_strings', 'Matplot', - 'Matplot_properties', 'Matplot1', 'matrices', 'matrix', 'max', 'max_cap_path', 'max_clique', 'max_flow', - 'maxi', 'mcisendstring', 'mclearerr', 'mclose', 'mdelete', 'mean', 'meanf', 'median', 'menus', 'meof', - 'merror', 'mese', 'mesh', 'mesh2d', 'meshgrid', 'mfft', 'mfile2sci', 'mfprintf', 'mfscanf', 'mget', 'mgeti', - 'mgetl', 'mgetstr', 'milk_drop', 'min', 'min_lcost_cflow', 'min_lcost_flow1', 'min_lcost_flow2', - 'min_qcost_flow', 'min_weight_tree', 'mine', 'mini', 'minreal', 'minss', 'minus', 'mkdir', 'mlist', 'mode', - 'modulo', 'moment', 'mopen', 'move', 'mprintf', 'mps2linpro', 'mput', 'mputl', 'mputstr', 'mrfit', 'mscanf', - 'msd', 'mseek', 'msprintf', 'msscanf', 'mstr2sci', 'mtell', 'mtlb_0', 'mtlb_a', 'mtlb_all', 'mtlb_any', - 'mtlb_axis', 'mtlb_beta', 'mtlb_box', 'mtlb_close', 'mtlb_colordef', 'mtlb_conv', 'mtlb_cumprod', 'mtlb_cumsum', - 'mtlb_dec2hex', 'mtlb_delete', 'mtlb_diag', 'mtlb_diff', 'mtlb_dir', 'mtlb_double', 'mtlb_e', 'mtlb_echo', - 'mtlb_eig', 'mtlb_eval', 'mtlb_exist', 'mtlb_eye', 'mtlb_false', 'mtlb_fft', 'mtlb_fftshift', 'mtlb_find', - 'mtlb_findstr', 'mtlb_fliplr', 'mtlb_fopen', 'mtlb_format', 'mtlb_fprintf', 'mtlb_fread', 'mtlb_fscanf', - 'mtlb_full', 'mtlb_fwrite', 'mtlb_grid', 'mtlb_hold', 'mtlb_i', 'mtlb_ifft', 'mtlb_imp', 'mtlb_int16', - 'mtlb_int32', 'mtlb_int8', 'mtlb_is', 'mtlb_isa', 'mtlb_isfield', 'mtlb_isletter', 'mtlb_isspace', 'mtlb_l', - 'mtlb_legendre', 'mtlb_linspace', 'mtlb_load', 'mtlb_logic', 'mtlb_logical', 'mtlb_lower', 'mtlb_max', - 'mtlb_min', 'mtlb_mode', 'mtlb_more', 'mtlb_num2str', 'mtlb_ones', 'mtlb_plot', 'mtlb_prod', 'mtlb_rand', - 'mtlb_randn', 'mtlb_rcond', 'mtlb_realmax', 'mtlb_realmin', 'mtlb_repmat', 'mtlb_s', 'mtlb_save', - 'mtlb_setstr', 'mtlb_size', 'mtlb_sort', 'mtlb_sparse', 'mtlb_strcmp', 'mtlb_strcmpi', 'mtlb_strfind', - 'mtlb_strrep', 'mtlb_sum', 'mtlb_t', 'mtlb_toeplitz', 'mtlb_tril', 'mtlb_triu', 'mtlb_true', 'mtlb_uint16', - 'mtlb_uint32', 'mtlb_uint8', 'mtlb_upper', 'mtlb_zeros', 'mu2lin', 'mucomp', 'mulf', 'mvvacov', 'name2rgb', - 'names', 'nancumsum', 'nand2mean', 'nanmax', 'nanmean', 'nanmeanf', 'nanmedian', 'nanmin', 'nanstdev', - 'nansum', 'narsimul', 'NDcost', 'ndgrid', 'ndims', 'nearfloat', 'nehari', 'neighbors', 'netclose', 'netwindow', - 'netwindows', 'new', 'newaxes', 'newest', 'newfun', 'nextpow2', 'nf3d', 'nfreq', 'nlev', 'nnz', 'node_number', - 'nodes_2_path', 'nodes_degrees', 'noisegen', 'norm', 'not', 'null', 'number_properties', 'numdiff', 'numer', - 'nyquist', 'object_editor', 'obs_gram', 'obscont', 'obscont1', 'observer', 'obsv_mat', 'obsvss', 'ode', - 'ode_discrete', 'ode_optional_output', 'ode_root', 'odedc', 'odeoptions', 'oemtochar', 'old_style', - 'oldbesseli', 'oldbesselj', 'oldbesselk', 'oldbessely', 'oldload', 'oldplot', 'oldsave', 'ones', - 'Operation', 'optim', 'or', 'orth', 'overloading', 'p_margin', 'param3d', 'param3d_properties', - 'param3d1', 'paramfplot2d', 'parents', 'parrot', 'part', 'path_2_nodes', 'pathconvert', 'pause', 'pbig', - 'pca', 'pcg', 'pdiv', 'pen2ea', 'pencan', 'penlaur', 'percent', 'perctl', 'perfect_match', 'perl', - 'perms', 'permute', 'pertrans', 'pfss', 'phasemag', 'phc', 'pie', 'pinv', 'pipe_network', 'playsnd', 'plot', - 'plot_graph', 'plot2d', 'plot2d_old_version', 'plot2d1', 'plot2d2', 'plot2d3', 'plot2d4', 'plot3d', - 'plot3d_old_version', 'plot3d1', 'plot3d2', 'plot3d3', 'plotframe', 'plotprofile', 'plus', 'plzr', - 'pmodulo', 'pol2des', 'pol2str', 'pol2tex', 'polar', 'polarplot', 'polfact', 'poly', 'polyline_properties', - 'portr3d', 'portrait', 'power', 'ppol', 'prbs_a', 'predecessors', 'predef', 'print', 'printf', - 'printf_conversion', 'printing', 'printsetupbox', 'prod', 'profile', 'progressionbar', 'proj', 'projsl', - 'projspec', 'psmall', 'pspect', 'pvm', 'pvm_addhosts', 'pvm_barrier', 'pvm_bcast', 'pvm_bufinfo', 'pvm_config', - 'pvm_delhosts', 'pvm_error', 'pvm_exit', 'pvm_f772sci', 'pvm_get_timer', 'pvm_getinst', 'pvm_gettid', - 'pvm_gsize', 'pvm_halt', 'pvm_joingroup', 'pvm_kill', 'pvm_lvgroup', 'pvm_mytid', 'pvm_parent', 'pvm_probe', - 'pvm_recv', 'pvm_reduce', 'pvm_sci2f77', 'pvm_send', 'pvm_set_timer', 'pvm_spawn', 'pvm_spawn_independent', - 'pvm_start', 'pvm_tasks', 'pvm_tidtohost', 'pvmd3', 'pwd', 'qassign', 'qld', 'qmr', 'qr', 'quapro', 'quart', - 'quaskro', 'quit', 'quote', 'rand', 'randpencil', 'range', 'rank', 'rankqr', 'rat', 'rcond', - 'rdivf', 'read', 'read4b', 'readb', 'readc_', 'readmps', 'readxls', 'real', 'realtime', 'realtimeinit', - 'rectangle_properties', 'recur', 'reglin', 'regress', 'remez', 'remezb', 'repfreq', 'replot', 'resethistory', - 'residu', 'resume', 'return', 'rgb2name', 'ric_desc', 'ricc', 'riccati', 'rlist', 'rmdir', 'roots', 'rotate', - 'round', 'routh_t', 'rowcomp', 'rowcompr', 'rowinout', 'rowregul', 'rowshuff', 'rpem', 'rref', 'rtitr', - 'rubberbox', 'salesman', 'sample', 'samplef', 'samwr', 'save', 'save_format', 'save_graph', 'savehistory', - 'savematfile', 'savewave', 'sca', 'scaling', 'scanf', 'scanf_conversion', 'scf', 'schur', 'sci_files', - 'sci2exp', 'sci2for', 'sci2map', 'sciargs', 'SciComplex', 'SciComplexArray', 'SciDouble', 'SciDoubleArray', - 'scilab', 'Scilab', 'ScilabEval', 'scilink', 'scipad', 'SciString', 'SciStringArray', 'sd2sci', 'sda', 'sdf', - 'secto3d', 'segs_properties', 'semi', 'semicolon', 'semidef', 'sensi', 'set', 'set_posfig_dim', - 'setbpt', 'setdiff', 'setenv', 'seteventhandler', 'setfield', 'sethomedirectory', 'setlanguage', 'setmenu', - 'sfact', 'Sfgrayplot', 'Sgrayplot', 'sgrid', 'shortest_path', 'show_arcs', 'show_graph', 'show_nodes', - 'show_pixmap', 'showprofile', 'sident', 'sign', 'Signal', 'signm', 'simp', 'simp_mode', 'sin', 'sinc', - 'sincd', 'sinh', 'sinhm', 'sinm', 'size', 'slash', 'sleep', 'sm2des', 'sm2ss', 'smooth', 'solve', - 'sorder', 'sort', 'sound', 'soundsec', 'sp2adj', 'spaninter', 'spanplus', 'spantwo', 'spchol', - 'spcompack', 'spec', 'specfact', 'speye', 'spget', 'splin', 'splin2d', 'splin3d', 'split_edge', 'spones', - 'sprand', 'sprintf', 'spzeros', 'sqroot', 'sqrt', 'sqrtm', 'square', 'squarewave', 'srfaur', 'srkf', 'ss2des', - 'ss2ss', 'ss2tf', 'sscanf', 'sskf', 'ssprint', 'ssrand', 'st_deviation', 'st_ility', 'stabil', 'stacksize', - 'star', 'startup', 'stdev', 'stdevf', 'str2code', 'strange', 'strcat', 'strindex', 'string', 'stringbox', - 'strings', 'stripblanks', 'strong_con_nodes', 'strong_connex', 'strsplit', 'strsubst', 'struct', 'sub2ind', - 'subf', 'subgraph', 'subplot', 'successors', 'sum', 'supernode', 'surf', 'surface_properties', 'sva', - 'svd', 'svplot', 'sylm', 'sylv', 'symbols', 'sysconv', 'sysdiag', 'sysfact', 'syslin', 'syssize', 'system', - 'systems', 'systmat', 'tabul', 'tan', 'tangent', 'tanh', 'tanhm', 'tanm', 'TCL_CreateSlave', 'TCL_DeleteInterp', - 'TCL_EvalFile', 'TCL_EvalStr', 'TCL_ExistInterp', 'TCL_ExistVar', 'TCL_GetVar', 'TCL_GetVersion', 'TCL_SetVar', - 'TCL_UnsetVar', 'TCL_UpVar', 'tdinit', 'testmatrix', 'texprint', 'text_properties', 'tf2des', 'tf2ss', 'then', - 'thrownan', 'tic', 'tilda', 'time_id', 'timer', 'title', 'titlepage', 'TK_EvalFile', 'TK_EvalStr', 'tk_getdir', - 'tk_getfile', 'TK_GetVar', 'tk_savefile', 'TK_SetVar', 'toc', 'toeplitz', 'tohome', 'tokenpos', - 'tokens', 'toolbar', 'toprint', 'trace', 'trans', 'trans_closure', 'translatepaths', 'tree2code', 'trfmod', - 'trianfml', 'tril', 'trimmean', 'trisolve', 'triu', 'try', 'trzeros', 'twinkle', 'type', 'Type', 'typename', - 'typeof', 'ui_observer', 'uicontrol', 'uimenu', 'uint16', 'uint32', 'uint8', 'ulink', 'unglue', 'union', - 'unique', 'unix', 'unix_g', 'unix_s', 'unix_w', 'unix_x', 'unobs', 'unsetmenu', 'unzoom', 'user', 'varargin', - 'varargout', 'Variable', 'variance', 'variancef', 'varn', 'vectorfind', 'waitbar', 'warning', 'wavread', - 'wavwrite', 'wcenter', 'wfir', 'what', 'where', 'whereami', 'whereis', 'who', 'who_user', 'whos', - 'wiener', 'wigner', 'winclose', 'window', 'winlist', 'winopen', 'winqueryreg', 'winsid', 'with_atlas', - 'with_gtk', 'with_javasci', 'with_pvm', 'with_texmacs', 'with_tk', 'writb', 'write', 'write4b', 'x_choices', - 'x_choose', 'x_dialog', 'x_matrix', 'x_mdialog', 'x_message', 'x_message_modeless', 'xarc', 'xarcs', 'xarrows', - 'xaxis', 'xbasc', 'xbasimp', 'xbasr', 'xchange', 'xclea', 'xclear', 'xclick', 'xclip', 'xdel', 'xend', - 'xfarc', 'xfarcs', 'xfpoly', 'xfpolys', 'xfrect', 'xget', 'xgetech', 'xgetfile', 'xgetmouse', 'xgraduate', - 'xgrid', 'xinfo', 'xinit', 'xlfont', 'xload', 'xls_open', 'xls_read', 'xmltohtml', 'xname', 'xnumb', 'xpause', - 'xpoly', 'xpolys', 'xrect', 'xrects', 'xrpoly', 'xs2bmp', 'xs2emf', 'xs2eps', 'xs2fig', 'xs2gif', 'xs2ppm', - 'xs2ps', 'xsave', 'xsegs', 'xselect', 'xset', 'xsetech', 'xsetm', 'xstring', 'xstringb', 'xstringl', 'xtape', - 'xtitle', 'yulewalk', 'zeropen', 'zeros', 'zgrid', 'zoom_rect', 'zpbutt', 'zpch1', 'zpch2', 'zpell' - ) - ), - 'SYMBOLS' => array( - '<', '>', '=', - '!', '@', '~', '&', '|', - '+','-', '*', '/', '%', - ',', ';', '?', ':', "'" - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #000000; font-weight: bold;', - 3 => 'color: #000066;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => '', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;', - 'HARD' => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;', - 2 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;', - 4 => 'color: #009999;', - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm', - 2 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm', - 3 => 'http://www.scilab.org/product/dic-mat-sci/M2SCI_doc.htm' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '->', - 2 => '::' - ), - 'REGEXPS' => array( - //Variable - 0 => '[\\$%@]+[a-zA-Z_][a-zA-Z0-9_]*', - //File Descriptor - 4 => '<[a-zA-Z_][a-zA-Z0-9_]*>', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/sdlbasic.php b/system/application/libraries/geshi/sdlbasic.php deleted file mode 100644 index 1f1440bf5..000000000 --- a/system/application/libraries/geshi/sdlbasic.php +++ /dev/null @@ -1,165 +0,0 @@ -<?php -/************************************************************************************* - * sdlbasic.php - * ------------ - * Author: Roberto Rossi - * Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org) - * Release Version: 1.0.8.6 - * Date Started: 2005/08/19 - * - * sdlBasic (http://sdlbasic.sf.net) language file for GeSHi. - * - * CHANGES - * ------- - * 2005/08/19 (1.0.0) - * - First Release - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'sdlBasic', - 'COMMENT_SINGLE' => array(1 => "'", 2 => "rem", 3 => "!", 4 => "#"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'const', 'option', 'explicit', 'qbasic', 'include', 'argc', - 'argv', 'command', 'command$', 'run', 'shell', 'os', 'declare', - 'sub', 'function', 'return', 'while', 'wend', 'exit', 'end', - 'continue', 'if', 'then', 'else', 'elseif', - 'select', 'case', 'for', 'each', 'step', - 'next', 'to', 'dim', 'shared', 'common', 'lbound', 'bound', - 'erase', 'asc', 'chr', 'chr$', 'insert', 'insert$', 'instr', 'lcase', - 'lcase$', 'left', 'left$', 'len', 'length', 'ltrim', 'ltrim$', 'mid', - 'mid$', 'replace', 'replace$', 'replacesubstr', 'replacesubstr$', - 'reverse', 'reverse$', 'right', 'right$', 'rinstr', 'rtrim', 'rtrim$', - 'space', 'space$', 'str', 'str$', 'strf', 'strf$', 'string', 'string$', - 'tally', 'trim', 'trim$', 'typeof', 'typeof$', 'ucase', 'ucase$', 'val', - 'abs', 'acos', 'andbit', 'asin', 'atan', 'bitwiseand', 'bitwiseor', - 'bitwisexor', 'cos', 'exp', 'fix', 'floor', 'frac', 'hex', 'hex$', 'int', - 'log', 'min', 'max', 'orbit', 'randomize', 'rnd', 'round', 'sgn', 'sin', - 'sqr', 'tan', 'xorbit', 'open', 'as', 'file', 'input', 'close', 'output', - 'append', 'eof', 'fileexists', 'filecopy', 'filemove', 'filerename', - 'freefile', 'kill', 'loc', 'lof', 'readbyte', 'rename', 'seek', - 'writebyte', 'chdir', 'dir', 'dir$', 'direxists', 'dirfirst', 'dirnext', - 'mkdir', 'rmdir', 'print', 'date', 'date$', 'time', 'time$', 'ticks', - 'data', 'read', 'reservebank', 'freebank', 'copybank', 'loadbank', - 'savebank', 'setbank', 'sizebank', 'poke', 'doke', 'loke', 'peek', 'deek', - 'leek', 'memcopy', 'setdisplay', 'setcaption', 'caption', 'displaywidth', - 'displayheight', 'displaybpp', 'screen', 'directscreen', 'screenopen', - 'screenclose', 'screenclone', 'screencopy', 'screenfade', 'screenfadein', - 'screencrossfade', 'screenalpha', 'screenlock', 'screenunlock', - 'screenrect', 'xscreenrect', 'yscreenrect', 'wscreenrect', 'hscreenrect', - 'flagscreenrect', 'screenwidth', 'screenheight', 'offset', 'xoffset', - 'yoffset', 'cls', 'screenswap', 'autoback', 'setautoback', - 'dualplayfield', 'waitvbl', 'fps', 'rgb', 'enablepalette', 'color', - 'palette', 'colorcycling', 'ink', 'point', 'dot', 'plot', 'line', 'box', - 'bar', 'circle', 'fillcircle', 'ellipse', 'fillellipse', 'paint', - 'loadimage', 'saveimage', 'loadsound', 'savesound', 'loadmusic', - 'hotspot', 'setcolorkey', 'imageexists', 'imagewidth', 'imageheight', - 'deleteimage', 'copyimage', 'setalpha', 'zoomimage', 'rotateimage', - 'rotozoomimage', 'blt', 'pastebob', 'pasteicon', 'grab', 'spriteclip', - 'sprite', 'deletesprite', 'xsprite', 'ysprite', 'spritewidth', - 'spriteheight', 'frsprite', 'livesprite', 'spritehit', 'autoupdatesprite', - 'updatesprite', 'setbob', 'bob', 'deletebob', 'xbob', 'ybob', 'bobwidth', - 'bobheight', 'frbob', 'livebob', 'bobhit', 'autoupdatebob', 'updatebob', - 'text', 'setfont', 'textrender', 'pen', 'paper', 'prints', 'locate', - 'atx', 'aty', 'curson', 'cursoff', 'inputs', 'zoneinputs', - 'isenabledsound', 'soundexists', 'deletesound', 'copysound', - 'musicexists', 'playsound', 'volumesound', 'stopsound', 'pausesound', - 'resumesound', 'vumetersound', 'positionsound', 'soundchannels', - 'playmusic', 'positionmusic', 'stopmusic', 'fademusic', 'pausemusic', - 'resumemusic', 'rewindmusic', 'volumemusic', 'speedmusic', 'numdrivescd', - 'namecd', 'getfreecd', 'opencd', 'indrivecd', 'trackscd', 'curtrackcd', - 'curframecd', 'playcd', 'playtrackscd', - 'pausecd', 'resumecd', 'stopcd', 'ejectcd', 'closecd', 'tracktypecd', - 'tracklengthcd', 'trackoffsetcd', 'key', 'inkey', 'waitkey', 'xmouse', - 'ymouse', 'xmousescreen', 'ymousescreen', 'bmouse', 'changemouse', - 'locatemouse', 'mouseshow', 'mousehide', 'mousezone', 'numjoysticks', - 'namejoystick', 'numaxesjoystick', 'numballsjoystick', 'numhatsjoystick', - 'numbuttonsjoystick', 'getaxisjoystick', 'gethatjoystick', - 'getbuttonjoystick', 'xgetballjoystick', 'ygetballjoystick', 'joy', - 'bjoy', 'wait', 'timer', 'isenabledsock', 'getfreesock', 'opensock', - 'acceptsock', 'isserverready', 'connectsock', 'connectionreadysock', - 'isclientready', 'losesock', 'peeksock', 'readsock', 'readbytesock', - 'readlinesock', 'writesock', 'writebytesock', 'writelinesock', - 'getremoteip', 'getremoteport', 'getlocalip' - ) - ), - 'SYMBOLS' => array( - '(', ')' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080;', - 2 => 'color: #808080;', - 3 => 'color: #808080;', - 4 => 'color: #808080;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/smalltalk.php b/system/application/libraries/geshi/smalltalk.php deleted file mode 100644 index 9bc351d8e..000000000 --- a/system/application/libraries/geshi/smalltalk.php +++ /dev/null @@ -1,154 +0,0 @@ -<?php -/************************************************************************************* - * smalltalk.php - * -------- - * Author: Bananeweizen (Bananeweizen@gmx.de) - * Copyright: (c) 2005 Bananeweizen (www.bananeweizen.de) - * Release Version: 1.0.8.6 - * Date Started: 2005/03/27 - * - * Smalltalk language file for GeSHi. - * - * CHANGES - * ------- - * 2006-05-24 (1.0.0) - * - First Release - * - * TODO - * ------------------------- - * * recognize nested array symbols correctly - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Smalltalk', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('"' => '"'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'"), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'self','super','true','false','nil' - ) - ), - 'SYMBOLS' => array( - '[', ']', '=' , ':=', '(', ')', '#' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #7f007f;' - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #007f00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'BRACKETS' => array( - 0 => '' - ), - 'STRINGS' => array( - 0 => 'color: #7f0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #7f0000;' - ), - 'METHODS' => array( - 0 => '' - ), - 'SYMBOLS' => array( - 0 => 'color: #000066; font-weight:bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;', - 1 => 'color: #7f0000;', - 2 => 'color: #7f0000;', - 3 => 'color: #00007f;', - 5 => 'color: #00007f;', - 6 => 'color: #00007f;' - ), - 'SCRIPT' => array( - 0 => '' - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => array( - GESHI_SEARCH => '([^a-zA-Z0-9_#<])([A-Z]+[a-zA-Z0-9_]*)(?!>)', //class names - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 1 => array( - GESHI_SEARCH => '(#+)([a-zA-Z0-9_]+)', //symbols - GESHI_REPLACE => '\\1\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 2 => array( - GESHI_SEARCH => '(#\s*\([^)]*\))', //array symbols - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 3 => array( - GESHI_SEARCH => '<PIPE>([a-zA-Z0-9_\s]+)<PIPE>', //temporary variables - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '|', - GESHI_AFTER => '|' - ), - 5 => array( - GESHI_SEARCH => '([:(,=[.*\/+-]\s*(?!\d+\/))([a-zA-Z0-9_]+)', //message parameters, message receivers - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 's', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - 6 => array( - GESHI_SEARCH => '([a-zA-Z0-9_]+)(\s*:=)', //assignment targets - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '\\2' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/smarty.php b/system/application/libraries/geshi/smarty.php deleted file mode 100644 index f59d9fbf3..000000000 --- a/system/application/libraries/geshi/smarty.php +++ /dev/null @@ -1,192 +0,0 @@ -<?php -/************************************************************************************* - * smarty.php - * ---------- - * Author: Alan Juden (alan@judenware.org) - * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/07/10 - * - * Smarty template language file for GeSHi. - * - * CHANGES - * ------- - * 2004/11/27 (1.0.0) - * - Initial Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Smarty', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array('{*' => '*}'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - '$smarty', 'now', 'const', 'capture', 'config', 'section', 'foreach', 'template', 'version', 'ldelim', 'rdelim', - 'foreachelse', 'include', 'include_php', 'insert', 'if', 'elseif', 'else', 'php', - 'sectionelse', 'is_cached', - ), - 2 => array( - 'capitalize', 'count_characters', 'cat', 'count_paragraphs', 'count_sentences', 'count_words', 'date_format', - 'default', 'escape', 'indent', 'lower', 'nl2br', 'regex_replace', 'replace', 'spacify', 'string_format', - 'strip', 'strip_tags', 'truncate', 'upper', 'wordwrap', - ), - 3 => array( - 'counter', 'cycle', 'debug', 'eval', 'html_checkboxes', 'html_image', 'html_options', - 'html_radios', 'html_select_date', 'html_select_time', 'html_table', 'math', 'mailto', 'popup_init', - 'popup', 'textformat' - ), - 4 => array( - '$template_dir', '$compile_dir', '$config_dir', '$plugins_dir', '$debugging', '$debug_tpl', - '$debugging_ctrl', '$autoload_filters', '$compile_check', '$force_compile', '$caching', '$cache_dir', - '$cache_lifetime', '$cache_handler_func', '$cache_modified_check', '$config_overwrite', - '$config_booleanize', '$config_read_hidden', '$config_fix_newlines', '$default_template_handler_func', - '$php_handling', '$security', '$secure_dir', '$security_settings', '$trusted_dir', '$left_delimiter', - '$right_delimiter', '$compiler_class', '$request_vars_order', '$request_use_auto_globals', - '$error_reporting', '$compile_id', '$use_sub_dirs', '$default_modifiers', '$default_resource_type' - ), - 5 => array( - 'append', 'append_by_ref', 'assign', 'assign_by_ref', 'clear_all_assign', 'clear_all_cache', - 'clear_assign', 'clear_cache', 'clear_compiled_tpl', 'clear_config', 'config_load', 'display', - 'fetch', 'get_config_vars', 'get_registered_object', 'get_template_vars', - 'load_filter', 'register_block', 'register_compiler_function', 'register_function', - 'register_modifier', 'register_object', 'register_outputfilter', 'register_postfilter', - 'register_prefilter', 'register_resource', 'trigger_error', 'template_exists', 'unregister_block', - 'unregister_compiler_function', 'unregister_function', 'unregister_modifier', 'unregister_object', - 'unregister_outputfilter', 'unregister_postfilter', 'unregister_prefilter', 'unregister_resource' - ), - 6 => array( - 'name', 'file', 'scope', 'global', 'key', 'once', 'script', - 'loop', 'start', 'step', 'max', 'show', 'values', 'value', 'from', 'item' - ), - 7 => array( - 'eq', 'neq', 'ne', 'lte', 'gte', 'ge', 'le', 'not', 'mod' - ), - 8 => array( - // some common php functions - 'isset', 'is_array', 'empty', 'count', 'sizeof' - ) - ), - 'SYMBOLS' => array( - '/', '=', '==', '!=', '>', '<', '>=', '<=', '!', '%' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', //Functions - 2 => 'color: #008000;', //Modifiers - 3 => 'color: #0600FF;', //Custom Functions - 4 => 'color: #804040;', //Variables - 5 => 'color: #008000;', //Methods - 6 => 'color: #6A0A0A;', //Attributes - 7 => 'color: #D36900;', //Text-based symbols - 8 => 'color: #0600FF;' //php functions - ), - 'COMMENTS' => array( - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #D36900;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #D36900;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #009000;' - ), - 'REGEXPS' => array( - 0 => 'color: #00aaff;' - ) - ), - 'URLS' => array( - 1 => 'http://smarty.php.net/{FNAMEL}', - 2 => 'http://smarty.php.net/{FNAMEL}', - 3 => 'http://smarty.php.net/{FNAMEL}', - 4 => 'http://smarty.php.net/{FNAMEL}', - 5 => 'http://smarty.php.net/{FNAMEL}', - 6 => '', - 7 => 'http://smarty.php.net/{FNAMEL}', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - // variables - 0 => '\$[a-zA-Z][a-zA-Z0-9_]*' - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - 0 => array( - '{' => '}' - ), - 1 => array( - '<!--' => '-->', - ), - 2 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => false, - 2 => false - ), - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#;>|^])", - 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-&])" - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/sql.php b/system/application/libraries/geshi/sql.php deleted file mode 100644 index ea2965a8e..000000000 --- a/system/application/libraries/geshi/sql.php +++ /dev/null @@ -1,140 +0,0 @@ -<?php -/************************************************************************************* - * sql.php - * ------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * SQL language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added additional symbols for highlighting - * 2004/11/27 (1.0.3) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.2) - * - Added "`" string delimiter - * - Added "#" single comment starter - * 2004/08/05 (1.0.1) - * - Added support for symbols - * - Added many more keywords (mostly MYSQL keywords) - * 2004/07/14 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * Add all keywords - * * Split this to several sql files - mysql-sql, ansi-sql etc - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'SQL', - 'COMMENT_SINGLE' => array(1 =>'--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => 1, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'ADD', 'ALL', 'ALTER', 'AND', 'AS', 'ASC', - 'AUTO_INCREMENT', 'BETWEEN', 'BINARY', 'BOOLEAN', - 'BOTH', 'BY', 'CHANGE', 'CHECK', 'COLUMN', 'COLUMNS', - 'CREATE', 'CROSS', 'DATA', 'DATABASE', 'DATABASES', - 'DEFAULT', 'DELAYED', 'DELETE', 'DESC', 'DESCRIBE', - 'DISTINCT', 'DROP', 'ENCLOSED', 'ESCAPED', 'EXISTS', - 'EXPLAIN', 'FIELD', 'FIELDS', 'FLUSH', 'FOR', - 'FOREIGN', 'FROM', 'FULL', 'FUNCTION', 'GRANT', - 'GROUP', 'HAVING', 'IDENTIFIED', 'IF', 'IGNORE', - 'IN', 'INDEX', 'INFILE', 'INNER', 'INSERT', 'INTO', - 'IS', 'JOIN', 'KEY', 'KEYS', 'KILL', 'LANGUAGE', - 'LEADING', 'LEFT', 'LIKE', 'LIMIT', 'LINES', 'LOAD', - 'LOCAL', 'LOCK', 'LOW_PRIORITY', 'MODIFY', 'NATURAL', - 'NEXTVAL', 'NOT', 'NULL', 'ON', 'OPTIMIZE', 'OPTION', - 'OPTIONALLY', 'OR', 'ORDER', 'OUTER', 'OUTFILE', - 'PRIMARY', 'PROCEDURAL', 'PROCEEDURE', 'READ', - 'REFERENCES', 'REGEXP', 'RENAME', 'REPLACE', - 'RETURN', 'REVOKE', 'RIGHT', 'RLIKE', 'SELECT', - 'SET', 'SETVAL', 'SHOW', 'SONAME', 'STATUS', - 'STRAIGHT_JOIN', 'TABLE', 'TABLES', 'TEMINATED', - 'TEMPORARY', 'TO', 'TRAILING', 'TRIGGER', 'TRUNCATE', - 'TRUSTED', 'UNION', 'UNIQUE', 'UNLOCK', 'UNSIGNED', - 'UPDATE', 'USE', 'USING', 'VALUES', 'VARIABLES', - 'VIEW', 'WHERE', 'WITH', 'WRITE', 'XOR', 'ZEROFILL' - ) - ), - 'SYMBOLS' => array( - '(', ')', '=', '<', '>', '|', ',', '.', '+', '-', '*', '/' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #993333; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - //2 => 'color: #808080; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/systemverilog.php b/system/application/libraries/geshi/systemverilog.php deleted file mode 100644 index 832769f9e..000000000 --- a/system/application/libraries/geshi/systemverilog.php +++ /dev/null @@ -1,317 +0,0 @@ -<?php -/************************************************************************************ - * systemverilog.php - * ------- - * Author: Sean O'Boyle - * Copyright: (C) 2008 IntelligentDV - * Release Version: 1.0.8.6 - * Date Started: 2008/06/25 - * - * SystemVerilog IEEE 1800-2009(draft8) language file for GeSHi. - * - * CHANGES - * ------- - * 2008/06/25 (1.0.0) - * - First Release - * - * TODO (updated 2008/06/25) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * - ************************************************************************ - * Title: SystemVerilog Language Keywords File for GeSHi - * Description: This file contains the SV keywords defined in the - * IEEE1800-2009 Draft Standard in the format expected by - * GeSHi. - * - * Original Author: Sean O'Boyle - * Contact: seanoboyle@intelligentdv.com - * Company: Intelligent Design Verification - * Company URL: http://intelligentdv.com - * - * Download the most recent version here: - * http://intelligentdv.com/downloads - * - * File Bugs Here: http://bugs.intelligentdv.com - * Project: SyntaxFiles - * - * File: systemverilog.php - * $LastChangedBy: seanoboyle $ - * $LastChangedDate: 2009-07-22 22:20:25 -0700 (Wed, 22 Jul 2009) $ - * $LastChangedRevision: 17 $ - * - ************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'SystemVerilog', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - // system tasks - 1 => array( - 'acos','acosh','asin','asinh','assertfailoff','assertfailon', - 'assertkill','assertnonvacuouson','assertoff','asserton', - 'assertpassoff','assertpasson','assertvacuousoff','async$and$array', - 'async$and$plane','async$nand$array','async$nand$plane', - 'async$nor$array','async$nor$plane','async$or$array', - 'async$or$plane','atan','atan2','atanh','bits','bitstoreal', - 'bitstoshortreal','cast','ceil','changed','changed_gclk', - 'changing_gclk','clog2','cos','cosh','countones','coverage_control', - 'coverage_get','coverage_get_max','coverage_merge','coverage_save', - 'dimensions','display','displayb','displayh','displayo', - 'dist_chi_square','dist_erlang','dist_exponential','dist_normal', - 'dist_poisson','dist_t','dist_uniform','dumpall','dumpfile', - 'dumpflush','dumplimit','dumpoff','dumpon','dumpports', - 'dumpportsall','dumpportsflush','dumpportslimit','dumpportsoff', - 'dumpportson','dumpvars','error','exit','exp','falling_gclk', - 'fclose','fdisplay','fdisplayb','fdisplayh','fdisplayo','fell', - 'fell_gclk','feof','ferror','fflush','fgetc','fgets','finish', - 'floor','fmonitor','fmonitorb','fmonitorh','fmonitoro','fopen', - 'fread','fscanf','fseek','fstrobe','fstrobeb','fstrobeh','fstrobeo', - 'ftell','future_gclk','fwrite','fwriteb','fwriteh','fwriteo', - 'get_coverage','high','hypot','increment','info','isunbounded', - 'isunknown','itor','left','ln','load_coverage_db','log10','low', - 'monitor','monitorb','monitorh','monitoro','monitoroff','monitoron', - 'onehot','onehot0','past','past_gclk','pow','printtimescale', - 'q_add','q_exam','q_full','q_initialize','q_remove','random', - 'readmemb','readmemh','realtime','realtobits','rewind','right', - 'rising_gclk','rose','rose_gclk','rtoi','sampled', - 'set_coverage_db_name','sformat','sformatf','shortrealtobits', - 'signed','sin','sinh','size','sqrt','sscanf','stable','stable_gclk', - 'steady_gclk','stime','stop','strobe','strobeb','strobeh','strobeo', - 'swrite','swriteb','swriteh','swriteo','sync$and$array', - 'sync$and$plane','sync$nand$array','sync$nand$plane', - 'sync$nor$array','sync$nor$plane','sync$or$array','sync$or$plane', - 'system','tan','tanh','test$plusargs','time','timeformat', - 'typename','ungetc','unpacked_dimensions','unsigned', - 'value$plusargs','warning','write','writeb','writeh','writememb', - 'writememh','writeo', - ), - // compiler directives - 2 => array( - '`__FILE__', '`__LINE__', '`begin_keywords', '`case', '`celldefine', - '`endcelldefine', '`default_nettype', '`define', '`default', '`else', - '`elsif', '`end_keywords', '`endfor', '`endif', - '`endprotect', '`endswitch', '`endwhile', '`for', '`format', - '`if', '`ifdef', '`ifndef', '`include', '`let', - '`line', '`nounconnected_drive', '`pragma', '`protect', '`resetall', - '`switch', '`timescale', '`unconnected_drive', '`undef', '`undefineall', - '`while' - ), - // keywords - 3 => array( - 'assert', 'assume', 'cover', 'expect', 'disable', - 'iff', 'binsof', 'intersect', 'first_match', 'throughout', - 'within', 'coverpoint', 'cross', 'wildcard', 'bins', - 'ignore_bins', 'illegal_bins', 'genvar', 'if', 'else', - 'unique', 'priority', 'matches', 'default', 'forever', - 'repeat', 'while', 'for', 'do', 'foreach', - 'break', 'continue', 'return', 'pulsestyle_onevent', 'pulsestyle_ondetect', - 'noshowcancelled', 'showcancelled', 'ifnone', 'posedge', 'negedge', - 'edge', 'wait', 'wait_order', 'timeunit', 'timeprecision', - 's', 'ms', 'us', 'ns', - 'ps', 'fs', 'step', 'new', 'extends', - 'this', 'super', 'protected', 'local', 'rand', - 'randc', 'bind', 'constraint', 'solve', 'before', - 'dist', 'inside', 'with', 'virtual', 'extern', - 'pure', 'forkjoin', 'design', 'instance', 'cell', - 'liblist', 'use', 'library', 'incdir', 'include', - 'modport', 'sync_accept_on', 'reject_on', 'accept_on', - 'sync_reject_on', 'restrict', 'let', 'until', 'until_with', - 'unique0', 'eventually', 's_until', 's_always', 's_eventually', - 's_nexttime', 's_until_with', 'global', 'untyped', 'implies', - 'weak', 'strong', 'nexttime' - ), - // block keywords - 4 => array( - 'begin', 'end', 'package', 'endpackage', 'macromodule', - 'module', 'endmodule', 'generate', 'endgenerate', 'program', - 'endprogram', 'class', 'endclass', 'function', 'endfunction', - 'case', 'casex', 'casez', 'randcase', 'endcase', - 'interface', 'endinterface', 'clocking', 'endclocking', 'task', - 'endtask', 'primitive', 'endprimitive', 'fork', 'join', - 'join_any', 'join_none', 'covergroup', 'endgroup', 'checker', - 'endchecker', 'property', 'endproperty', 'randsequence', 'sequence', - 'endsequence', 'specify', 'endspecify', 'config', 'endconfig', - 'table', 'endtable', 'initial', 'final', 'always', - 'always_comb', 'always_ff', 'always_latch', 'alias', 'assign', - 'force', 'release' - ), - - // types - 5 => array( - 'parameter', 'localparam', 'specparam', 'input', 'output', - 'inout', 'ref', 'byte', 'shortint', 'int', - 'integer', 'longint', 'time', 'bit', 'logic', - 'reg', 'supply0', 'supply1', 'tri', 'triand', - 'trior', 'trireg', 'tri0', 'tri1', 'wire', - 'uwire', 'wand', 'wor', 'signed', 'unsigned', - 'shortreal', 'real', 'realtime', 'type', 'void', - 'struct', 'union', 'tagged', 'const', 'var', - 'automatic', 'static', 'packed', 'vectored', 'scalared', - 'typedef', 'enum', 'string', 'chandle', 'event', - 'null', 'pullup', 'pulldown', 'cmos', 'rcmos', - 'nmos', 'pmos', 'rnmos', 'rpmos', 'and', - 'nand', 'or', 'nor', 'xor', 'xnor', - 'not', 'buf', 'tran', 'rtran', 'tranif0', - 'tranif1', 'rtranif0', 'rtranif1', 'bufif0', 'bufif1', - 'notif0', 'notif1', 'strong0', 'strong1', 'pull0', - 'pull1', 'weak0', 'weak1', 'highz0', 'highz1', - 'small', 'medium', 'large' - ), - - // DPI - 6 => array( - 'DPI', 'DPI-C', 'import', 'export', 'context' - ), - - // stdlib - 7 => array( - 'randomize', 'mailbox', 'semaphore', 'put', 'get', - 'try_put', 'try_get', 'peek', 'try_peek', 'process', - 'state', 'self', 'status', 'kill', 'await', - 'suspend', 'resume', 'size', 'delete', 'insert', - 'num', 'first', 'last', 'next', 'prev', - 'pop_front', 'pop_back', 'push_front', 'push_back', 'find', - 'find_index', 'find_first', 'find_last', 'find_last_index', 'min', - 'max', 'unique_index', 'reverse', 'sort', 'rsort', - 'shuffle', 'sum', 'product', 'List', 'List_Iterator', - 'neq', 'eq', 'data', 'empty', 'front', - 'back', 'start', 'finish', 'insert_range', 'erase', - 'erase_range', 'set', 'swap', 'clear', 'purge' - ), - - // key_deprecated - 8 => array( - 'defparam', 'deassign', 'TODO' - ), - - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', - '^', '&', '|', '~', - '?', ':', - '#', '<<', '<<<', - '>', '<', '>=', '<=', - '@', ';', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #996666; font-weight: bold;', - 2 => 'color: #336600; font-weight: bold;', - 3 => 'color: #996600; font-weight: bold;', - 4 => 'color: #000033; font-weight: bold;', - 5 => 'color: #330033; font-weight: bold;', - 6 => 'color: #996600; font-weight: bold;', - 7 => 'color: #CC9900; font-weight: bold;', - 8 => 'color: #990000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #00008B; font-style: italic;', - 'MULTI' => 'color: #00008B; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #9F79EE' - ), - 'BRACKETS' => array( - 0 => 'color: #9F79EE;' - ), - 'STRINGS' => array( - 0 => 'color: #FF00FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0055;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #5D478B;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff0055;', - 1 => 'color: #ff0055;', - 2 => 'color: #ff0055;', - 3 => 'color: #ff0055;' - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '' - ), - 'REGEXPS' => array( - // integer - 0 => "\d'[bdh][0-9_a-fA-FxXzZ]+", - // realtime - 1 => "\d*\.\d+[munpf]?s", - // time s, ms, us, ns, ps, of fs - 2 => "\d+[munpf]?s", - // real - 3 => "\d*\.\d+" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - 0 => '' - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true - ), - 'TAB_WIDTH' => 3, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_BEFORE' => '(?<=$)' - ) - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/tcl.php b/system/application/libraries/geshi/tcl.php deleted file mode 100644 index 0b52a2687..000000000 --- a/system/application/libraries/geshi/tcl.php +++ /dev/null @@ -1,194 +0,0 @@ -<?php -/************************************************************************************* - * tcl.php - * --------------------------------- - * Author: Reid van Melle (rvanmelle@gmail.com) - * Copyright: (c) 2004 Reid van Melle (sorry@nowhere) - * Release Version: 1.0.8.6 - * Date Started: 2006/05/05 - * - * TCL/iTCL language file for GeSHi. - * - * This was thrown together in about an hour so I don't expect - * really great things. However, it is a good start. I never - * got a change to try out the iTCL or object-based support but - * this is not widely used anyway. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2006/05/05 (1.0.0) - * - First Release - * - * TODO (updated 2006/05/05) - * ------------------------- - * - Get TCL built-in special variables highlighted with a new color.. - * currently, these are listed in //special variables in the keywords - * section, but they get covered by the general REGEXP for symbols - * - General cleanup, testing, and verification - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'TCL', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 1 => '/(?<!\\\\)#(?:\\\\\\\\|\\\\\\n|.)*$/m', - 2 => '/{[^}\n]+}/' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"', "'"), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - /* - * Set 1: reserved words - * http://python.org/doc/current/ref/keywords.html - */ - 1 => array( - 'proc', 'global', 'upvar', 'if', 'then', 'else', 'elseif', 'for', 'foreach', - 'break', 'continue', 'while', 'set', 'eval', 'case', 'in', 'switch', - 'default', 'exit', 'error', 'return', 'uplevel', 'loop', - 'for_array_keys', 'for_recursive_glob', 'for_file', 'unwind_protect', - 'expr', 'catch', 'namespace', 'rename', 'variable', - // itcl - 'method', 'itcl_class', 'public', 'protected'), - - /* - * Set 2: builtins - * http://asps.activatestate.com/ASPN/docs/ActiveTcl/8.4/tcl/tcl_2_contents.htm - */ - 2 => array( - // string handling - 'append', 'binary', 'format', 're_syntax', 'regexp', 'regsub', - 'scan', 'string', 'subst', - // list handling - 'concat', 'join', 'lappend', 'lindex', 'list', 'llength', 'lrange', - 'lreplace', 'lsearch', 'lset', 'lsort', 'split', - // procedures and output - 'incr', 'close', 'eof', 'fblocked', 'fconfigure', 'fcopy', 'file', - 'fileevent', 'flush', 'gets', 'open', 'puts', 'read', 'seek', - 'socket', 'tell', - // packages and source files - 'load', 'loadTk', 'package', 'pgk::create', 'pgk_mkIndex', 'source', - // interpreter routines - 'bgerror', 'history', 'info', 'interp', 'memory', 'unknown', - // library routines - 'enconding', 'http', 'msgcat', - // system related - 'cd', 'clock', 'exec', 'glob', 'pid', 'pwd', 'time', - // platform specified - 'dde', 'registry', 'resource', - // special variables - '$argc', '$argv', '$errorCode', '$errorInfo', '$argv0', - '$auto_index', '$auto_oldpath', '$auto_path', '$env', - '$tcl_interactive', '$tcl_libpath', '$tcl_library', - '$tcl_pkgPath', '$tcl_platform', '$tcl_precision', '$tcl_traceExec', - ), - - /* - * Set 3: standard library - */ - 3 => array( - 'comment', 'filename', 'library', 'packagens', 'tcltest', 'tclvars', - ), - - /* - * Set 4: special methods - */ -// 4 => array( -// ) - - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '$', '*', '&', '%', '!', ';', '<', '>', '?' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, -// 4 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #ff7700;font-weight:bold;', // Reserved - 2 => 'color: #008000;', // Built-ins + self - 3 => 'color: #dc143c;', // Standard lib -// 4 => 'color: #0000cd;' // Special methods - ), - 'COMMENTS' => array( - 1 => 'color: #808080; font-style: italic;', - 2 => 'color: #483d8b;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: black;' - ), - 'STRINGS' => array( - 0 => 'color: #483d8b;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff4500;' - ), - 'METHODS' => array( - 1 => 'color: black;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff3333;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', -// 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '::' - ), - 'REGEXPS' => array( - //Special variables - 0 => '[\\$]+[a-zA-Z_][a-zA-Z0-9_]*', - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'COMMENTS' => array( - 'DISALLOWED_BEFORE' => '\\' - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/teraterm.php b/system/application/libraries/geshi/teraterm.php deleted file mode 100644 index b4ac619df..000000000 --- a/system/application/libraries/geshi/teraterm.php +++ /dev/null @@ -1,317 +0,0 @@ -<?php -/************************************************************************************* - * teraterm.php - * -------- - * Author: Boris Maisuradze (boris at logmett.com) - * Copyright: (c) 2008 Boris Maisuradze (http://logmett.com) - * Release Version: 1.0.8.6 - * Date Started: 2008/09/26 - * - * Tera Term Macro language file for GeSHi. - * - * - * This version of ttl.php was created for Tera Term 4.60 and LogMeTT 2.9.4. - * Newer versions of these application can contain additional Macro commands - * and/or keywords that are not listed here. The latest release of ttl.php - * can be downloaded from Download section of LogMeTT.com - * - * CHANGES - * ------- - * 2008/09/26 (1.0.8) - * - First Release for Tera Term 4.60 and below. - * - * TODO (updated 2008/09/26) - * ------------------------- - * * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Tera Term Macro', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /* Commands */ - 1 => array( - 'Beep', - 'BplusRecv', - 'BplusSend', - 'Break', // (version 4.53 or later) - 'Call', - 'CallMenu', // (version 4.56 or later) - 'ChangeDir', - 'ClearScreen', - 'Clipb2Var', //(version 4.46 or later) - 'ClosesBox', - 'CloseTT', - 'Code2Str', - 'Connect', - 'CRC32', // (version 4.60 or later) - 'CRC32File', // (version 4.60 or later) - 'CygConnect', // (version 4.57 or later) - 'DelPassword', - 'Disconnect', - 'Do', // (version 4.56 or later) - 'Else', - 'EnableKeyb', - 'End', - 'EndIf', - 'EndUntil', // (version 4.56 or later) - 'EndWhile', - 'Exec', - 'ExecCmnd', - 'Exit', - 'FileClose', - 'FileConcat', - 'FileCopy', - 'FileCreate', - 'FileDelete', - 'FileMarkPtr', - 'FilenameBox', //(version 4.54 or later) - 'FileOpen', - 'FileRead', - 'FileReadln', // (version 4.48 or later) - 'FileRename', - 'FileSearch', - 'FileSeek', - 'FileSeekBack', - 'FileStrSeek', - 'FileStrSeek2', - 'FileWrite', - 'FileWriteln', - 'FindOperations', - 'FlushRecv', - 'ForNext', - 'GetDate', - 'GetDir', //(version 4.46 or later) - 'GetEnv', - 'GetPassword', - 'GetTime', - 'GetTitle', - 'GetVer', //(version 4.58 or later) - 'GoTo', - 'If', - 'IfDefined', // (version 4.46 or later) - 'IfThenElseIf', - 'Include', - 'InputBox', - 'Int2Str', - 'KmtFinish', - 'KmtGet', - 'KmtRecv', - 'KmtSend', - 'LoadKeyMap', - 'LogClose', - 'LogOpen', - 'LogPause', - 'LogStart', - 'LogWrite', - 'Loop', // (version 4.56 or later) - 'MakePath', - 'MessageBox', - 'MPause', // (version 4.27 or later) - 'PasswordBox', - 'Pause', - 'QuickvanRecv', - 'QuickvanSend', - 'Random', //(version 4.27 or later) - 'Recvln', - 'RestoreSetup', - 'Return', - 'RotateLeft', //(version 4.54 or later) - 'RotateRight', //(version 4.54 or later) - 'ScpRecv', // (version 4.57 or later) - 'ScpSend', // (version 4.57 or later) - 'Send', - 'SendBreak', - 'SendFile', - 'SendKcode', - 'Sendln', - 'SetBaud', // (version 4.58 or later) - 'SetDate', - 'SetDir', - 'SetDlgPos', - 'SetDTR', // (version 4.59 or later) - 'SetRTS', // (version 4.59 or later) - 'SetEnv', // (version 4.54 or later) - 'SetEcho', - 'SetExitCode', - 'SetSync', - 'SetTime', - 'SetTitle', - 'Show', - 'ShowTT', - 'Sprintf', // (version 4.52 or later) - 'StatusBox', - 'Str2Code', - 'Str2Int', - 'StrCompare', - 'StrConcat', - 'StrCopy', - 'StrLen', - 'StrMatch', // (version 4.59 or later) - 'StrScan', - 'Testlink', - 'Then', - 'ToLower', //(version 4.53 or later) - 'ToUpper', //(version 4.53 or later) - 'Unlink', - 'Until', // (version 4.56 or later) - 'Var2Clipb', //(version 4.46 or later) - 'Wait', - 'WaitEvent', - 'Waitln', - 'WaitRecv', - 'WaitRegex', // (version 4.21 or later) - 'While', - 'XmodemRecv', - 'XmodemSend', - 'YesNoBox', - 'ZmodemRecv', - 'ZmodemSend' - ), - /* System Variables */ - 2 => array( - 'groupmatchstr1', - 'groupmatchstr2', - 'groupmatchstr3', - 'groupmatchstr4', - 'groupmatchstr5', - 'groupmatchstr6', - 'groupmatchstr7', - 'groupmatchstr8', - 'groupmatchstr9', - 'inputstr', - 'matchstr', - 'param2', - 'param3', - 'param4', - 'param5', - 'param6', - 'param7', - 'param8', - 'param9', - 'result', - 'timeout' - ), - /* LogMeTT Key Words */ - 3 => array( - '$[1]', - '$[2]', - '$[3]', - '$[4]', - '$[5]', - '$[6]', - '$[7]', - '$[8]', - '$connection$', - '$email$', - '$logdir$', - '$logfilename$', - '$logit$', - '$mobile$', - '$name$', - '$pager$', - '$parent$', - '$phone$', - '$snippet$', - '$ttdir$', - '$user$', - '$windir$', - ), - /* Keyword Symbols */ - 4 => array( - 'and', - 'not', - 'or', - 'xor' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', - '~', '!', '+', '-', '*', '/', '%', '>>', '<<', '<<<', '>>>', '&', '^', '|', - '<>', '<=', '>=', '=', '==', '<>', '!=', '&&', '||' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold!important;', - 2 => 'color: #808000; font-weight: bold;', // System Variables - 3 => 'color: #ff0000; font-weight: bold;', // LogMeTT Key Words - 4 => 'color: #ff00ff; font-weight: bold;' // Keyword Symbols - ), - 'COMMENTS' => array( - 1 => 'color: #008000; font-style: italic;', - ), - 'ESCAPE_CHAR' => array(), - 'BRACKETS' => array( - 0 => 'color: #ff00ff; font-weight: bold;' - ), - 'STRINGS' => array( - 0 => 'color: #800080;' - ), - 'NUMBERS' => array( - 0 => 'color: #008080;' - ), - 'SCRIPT' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #ff00ff; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff; font-weight: bold;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - 0 => array ( - GESHI_SEARCH => '(\:[_a-zA-Z][_a-zA-Z0-9]+)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/text.php b/system/application/libraries/geshi/text.php deleted file mode 100644 index 24d3f10ee..000000000 --- a/system/application/libraries/geshi/text.php +++ /dev/null @@ -1,84 +0,0 @@ -<?php -/************************************************************************************* - * text.php - * -------- - * Author: Sean Hanna (smokingrope@gmail.com) - * Copyright: (c) 2006 Sean Hanna - * Release Version: 1.0.8.6 - * Date Started: 04/23/2006 - * - * Standard Text File (No Syntax Highlighting). - * Plaintext language file for GeSHi. - * - * CHANGES - * ------- - * 04/23/2006 (0.5.0) - * - Syntax File Created - * - * 04/27/2006 (1.0.0) - * - Documentation Cleaned Up - * - First Release - * - * TODO (updated 04/27/2006) - * ------------------------- - * - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Text', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array(), - 'SYMBOLS' => array(), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false - ), - 'STYLES' => array( - 'KEYWORDS' => array(), - 'COMMENTS' => array(), - 'ESCAPE_CHAR' => array(), - 'BRACKETS' => array(), - 'STRINGS' => array(), - 'NUMBERS' => array(), - 'METHODS' => array(), - 'SYMBOLS' => array(), - 'SCRIPT' => array(), - 'REGEXPS' => array() - ), - 'URLS' => array(), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array(), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'ALL' => GESHI_NEVER - ), - ) -); - -?> diff --git a/system/application/libraries/geshi/thinbasic.php b/system/application/libraries/geshi/thinbasic.php deleted file mode 100644 index 6a0b72f9f..000000000 --- a/system/application/libraries/geshi/thinbasic.php +++ /dev/null @@ -1,868 +0,0 @@ -<?php -/************************************************************************************* - * thinbasic.php - * ------ - * Author: Eros Olmi (eros.olmi@thinbasic.com) - * Copyright: (c) 2006 Eros Olmi (http://www.thinbasic.com), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2006/05/12 - * - * thinBasic language file for GeSHi. - * - * CHANGES - * ------- - * 2006/05/12 (1.0.0) - * - First Release - * - * TODO (updated 2006/05/12) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'thinBasic', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'XOR','XML_TREETOSTRING','XML_PARSEFILE','XML_PARSE','XML_PARENT','XML_NODETYPE','XML_NODETOSTRING','XML_NEXTSIBLING', - 'XML_LASTERROR','XML_GETTAG','XML_FREE','XML_FINDNODE','XML_DECODEPARAM','XML_CHILDDATA','XML_CHILD','XML_ATTRIBVALUE', - 'XML_ATTRIBNAME','XML_ATTRIBCOUNT','WORD','WITH','WIN_SHOW','WIN_SETTITLE','WIN_SETFOREGROUND','WIN_ISZOOMED', - 'WIN_ISVISIBLE','WIN_ISICONIC','WIN_GETTITLE','WIN_GETFOREGROUND','WIN_GETCLASS','WIN_GETACTIVE','WIN_FLASH','WIN_FINDBYTITLE', - 'WIN_FINDBYCLASS','WHILE','WEND','VERIFY','VARPTR','VARIANTVT$','VARIANTVT','VARIANT', - 'VARIABLE_GETINFO','VARIABLE_EXISTS','VARIABLE_EXIST','VALUE','VAL','USING$','USING','USES', - 'USER','UNTIL','UNITS','UNION','UNICODE2ASCII','UDP_SEND','UDP_RECV','UDP_OPENSERVER', - 'UDP_OPEN','UDP_FREEFILE','UDP_CLOSE','UCODE$','UCASE$','UBOUND','TYPE','TRIMFULL$', - 'TRIM$','TOOLTIP','TOKENIZER_MOVETOEOL','TOKENIZER_KEYSETUSERSTRING','TOKENIZER_KEYSETUSERNUMBER','TOKENIZER_KEYGETUSERSTRING','TOKENIZER_KEYGETUSERNUMBER','TOKENIZER_KEYGETSUBTYPE', - 'TOKENIZER_KEYGETNAME','TOKENIZER_KEYGETMAINTYPE','TOKENIZER_KEYFIND','TOKENIZER_KEYADD','TOKENIZER_GETNEXTTOKEN','TOKENIZER_DEFAULT_SET','TOKENIZER_DEFAULT_GET','TOKENIZER_DEFAULT_CODE', - 'TOKENIZER_DEFAULT_CHAR','TO','TIMER','TIME$','THEN','TEXTBOX','TEXT','TCP_SEND', - 'TCP_RECV','TCP_PRINT','TCP_OPEN','TCP_LINEINPUT','TCP_FREEFILE','TCP_CLOSE','TB_IMGCTX_SETIMAGEADJUSTMENT','TB_IMGCTX_LOADIMAGE', - 'TB_IMGCTX_GETIMAGEADJUSTMENT','TBGL_VIEWPORT','TBGL_VERTEX','TBGL_USETEXTUREFLAG','TBGL_USETEXTURE','TBGL_USELINESTIPPLEFLAG','TBGL_USELINESTIPPLE','TBGL_USELIGHTSOURCEFLAG', - 'TBGL_USELIGHTSOURCE','TBGL_USELIGHTINGFLAG','TBGL_USELIGHTING','TBGL_USEFOGFLAG','TBGL_USEFOG','TBGL_USEDEPTHMASK','TBGL_USEDEPTHFLAG','TBGL_USEDEPTH', - 'TBGL_USECLIPPLANEFLAG','TBGL_USECLIPPLANE','TBGL_USEBLENDFLAG','TBGL_USEBLEND','TBGL_USEALPHATEST','TBGL_TRANSLATE','TBGL_TORUS','TBGL_TEXCOORD2D', - 'TBGL_SPHERE','TBGL_SHOWWINDOW','TBGL_SHOWCURSOR','TBGL_SETWINDOWTITLE','TBGL_SETUPLIGHTSOURCE','TBGL_SETUPFOG','TBGL_SETUPCLIPPLANE','TBGL_SETPRIMITIVEQUALITY', - 'TBGL_SETLIGHTPARAMETER','TBGL_SETDRAWDISTANCE','TBGL_SCALE','TBGL_SAVESCREENSHOT','TBGL_ROTATEXYZ','TBGL_ROTATE','TBGL_RESETMATRIX','TBGL_RENDERTOTEXTURE', - 'TBGL_RENDERMATRIX3D','TBGL_RENDERMATRIX2D','TBGL_PUSHMATRIX','TBGL_PRINTFONT','TBGL_PRINTBMP','TBGL_PRINT','TBGL_POS3DTOPOS2D','TBGL_POPMATRIX', - 'TBGL_POLYGONLOOK','TBGL_POINTSIZE','TBGL_POINTINSIDE3D','TBGL_NORMAL','TBGL_NEWLIST','TBGL_MOUSEGETWHEELDELTA','TBGL_MOUSEGETRBUTTON','TBGL_MOUSEGETPOSY', - 'TBGL_MOUSEGETPOSX','TBGL_MOUSEGETMBUTTON','TBGL_MOUSEGETLBUTTON','TBGL_M15SETVERTEXZ','TBGL_M15SETVERTEXY','TBGL_M15SETVERTEXXYZ','TBGL_M15SETVERTEXX','TBGL_M15SETVERTEXTEXY', - 'TBGL_M15SETVERTEXTEXXY','TBGL_M15SETVERTEXTEXX','TBGL_M15SETVERTEXTEXN','TBGL_M15SETVERTEXRGB','TBGL_M15SETVERTEXR','TBGL_M15SETVERTEXPSTOP','TBGL_M15SETVERTEXPARAM','TBGL_M15SETVERTEXLAYER', - 'TBGL_M15SETVERTEXG','TBGL_M15SETVERTEXB','TBGL_M15SETMODELVERTEXCOUNT','TBGL_M15SETBONECHILD','TBGL_M15ROTBONEZ','TBGL_M15ROTBONEY','TBGL_M15ROTBONEX','TBGL_M15ROTBONE', - 'TBGL_M15RESETBONES','TBGL_M15RECALCNORMALS','TBGL_M15LOADMODEL','TBGL_M15INITMODELBUFFERS','TBGL_M15GETVERTEXZ','TBGL_M15GETVERTEXY','TBGL_M15GETVERTEXXYZ','TBGL_M15GETVERTEXX', - 'TBGL_M15GETVERTEXTEXY','TBGL_M15GETVERTEXTEXXY','TBGL_M15GETVERTEXTEXX','TBGL_M15GETVERTEXTEXN','TBGL_M15GETVERTEXRGB','TBGL_M15GETVERTEXR','TBGL_M15GETVERTEXPSTOP','TBGL_M15GETVERTEXPARAM', - 'TBGL_M15GETVERTEXLAYER','TBGL_M15GETVERTEXG','TBGL_M15GETVERTEXB','TBGL_M15GETMODELVERTEXCOUNT','TBGL_M15GETMODELPOLYCOUNT','TBGL_M15ERASECHILDBONES','TBGL_M15DRAWMODEL','TBGL_M15DEFBONERESET', - 'TBGL_M15DEFBONELAYER','TBGL_M15DEFBONEBOX','TBGL_M15DEFBONEANCHOR','TBGL_M15DEFBONEADDVERTEX','TBGL_M15CLEARMODEL','TBGL_M15APPLYBONES','TBGL_M15ADDBONETREEITEM','TBGL_LOADTEXTURE', - 'TBGL_LOADFONT','TBGL_LOADBMPFONT','TBGL_LINEWIDTH','TBGL_LINESTIPPLE','TBGL_KILLFONT','TBGL_ISWINDOW','TBGL_ISPOINTVISIBLE','TBGL_ISPOINTBEHINDVIEW', - 'TBGL_GETWINDOWMULTIKEYSTATE','TBGL_GETWINDOWKEYSTATE','TBGL_GETWINDOWKEYONCE','TBGL_GETWINDOWCLIENT','TBGL_GETTEXTURENAME','TBGL_GETTEXTURELIST','TBGL_GETPIXELINFO','TBGL_GETMULTIASYNCKEYSTATE', - 'TBGL_GETLASTGLERROR','TBGL_GETFRAMERATE','TBGL_GETDESKTOPINFO','TBGL_GETASYNCKEYSTATE','TBGL_ERRORMESSAGES','TBGL_ENDPOLY','TBGL_ENDLIST','TBGL_DRAWFRAME', - 'TBGL_DESTROYWINDOW','TBGL_DELETELIST','TBGL_CYLINDER','TBGL_CREATEWINDOWEX','TBGL_CREATEWINDOW','TBGL_COLORALPHA','TBGL_COLOR','TBGL_CLEARFRAME', - 'TBGL_CAMERA','TBGL_CALLLIST','TBGL_BUILDFONT','TBGL_BOX','TBGL_BLENDFUNC','TBGL_BINDTEXTURE','TBGL_BEGINPOLY','TBGL_BACKCOLOR', - 'TBGL_ALPHAFUNC','TBDI_JOYZ','TBDI_JOYY','TBDI_JOYX','TBDI_JOYSTOPEFFECT','TBDI_JOYSLIDER','TBDI_JOYSETRANGEZ','TBDI_JOYSETRANGEY', - 'TBDI_JOYSETRANGEXYZ','TBDI_JOYSETRANGEX','TBDI_JOYSETDEADZONEZ','TBDI_JOYSETDEADZONEY','TBDI_JOYSETDEADZONEXYZ','TBDI_JOYSETDEADZONEX','TBDI_JOYSETAUTOCENTER','TBDI_JOYRZ', - 'TBDI_JOYRY','TBDI_JOYRX','TBDI_JOYPOV','TBDI_JOYPLAYEFFECT','TBDI_JOYLOADEFFECT','TBDI_JOYHASFF','TBDI_JOYHASEFFECT','TBDI_JOYGETEFFECTNAME', - 'TBDI_JOYGETEFFECTGUID','TBDI_JOYCREATEEFFECT','TBDI_JOYCOUNTPOV','TBDI_JOYCOUNTEFFECTS','TBDI_JOYCOUNTBTN','TBDI_JOYCOUNTAXES','TBDI_JOYBUTTON','TBDI_JOYAVAIL', - 'TBDI_INIT','TBASS_STREAMFREE','TBASS_STREAMCREATEFILE','TBASS_SETVOLUME','TBASS_SETEAXPRESET','TBASS_SETEAXPARAMETERS','TBASS_SETCONFIG','TBASS_SET3DPOSITION', - 'TBASS_SET3DFACTORS','TBASS_SAMPLELOAD','TBASS_SAMPLEGETCHANNEL','TBASS_MUSICLOAD','TBASS_MUSICFREE','TBASS_INIT','TBASS_GETVOLUME','TBASS_GETVERSION', - 'TBASS_GETCONFIG','TBASS_FREE','TBASS_ERRORGETCODE','TBASS_CHANNELSTOP','TBASS_CHANNELSETPOSITION','TBASS_CHANNELSETATTRIBUTES','TBASS_CHANNELSET3DPOSITION','TBASS_CHANNELPLAY', - 'TBASS_CHANNELPAUSE','TBASS_CHANNELISACTIVE','TBASS_CHANNELGETPOSITION','TBASS_CHANNELGETLENGTH','TBASS_CHANNELGETATTRIBUTES','TBASS_APPLY3D','TANH','TANGENT', - 'TAN','TALLY','TABCTRL_ONNOTIFY','TABCTRL_INSERTITEM','TABCTRL_GETCURSEL','SWAP','SUB','STRZIP$', - 'STRUNZIP$','STRREVERSE$','STRPTRLEN','STRPTR','STRINSERT$','STRING$','STRING','STRDELETE$', - 'STR$','STOP','STEP','STDOUT','STDIN','STAT_SUM','STAT_STDERROR','STAT_STDDEVIATION', - 'STAT_RANDOM','STAT_PRODUCT','STAT_MIN','STAT_MEDIAN','STAT_MEANHARMONIC','STAT_MEANGEOMETRIC','STAT_MEANARITHMETIC','STAT_MAX', - 'STAT_INVERSESUM','STAT_HISTOGRAM','STAT_FILLARRAY','STAT_COUNT','STAT_COPYARRAY','STAT_CLONEARRAY','STAT_CHISQUARE','STATIC', - 'STATE','SQR','SPLIT','SORT','SMTP_STATISTICS','SMTP_SETOPTION','SMTP_SETLOGFILE','SMTP_SENDHTML', - 'SMTP_SENDEMAIL','SMTP_GETERROR','SMTP_FINISHED','SMTP_DEBUG','SMTP_CONNECT','SMTP_CLOSE','SLEEP','SIZEOF', - 'SIZE','SINH','SINGLE','SIN','SIGNED','SHOW','SHIFT','SHAPETOBMP', - 'SGN','SETAT','SET','SENDMESSAGE','SENDKEYSBULK','SENDKEYS','SEND','SELECTEXPRESSION', - 'SELECT','SECH','SEC','SCAN','SAPI_SPEAK','SAPI_SETVOLUME','SAPI_SETRATE','SAPI_MODULELOADED', - 'SAPI_GETVOLUME','SAPI_GETRATE','RTRIM$','RTF_SETTEXT','RTF_SETFONTSIZE','RTF_SETFONTNAME','RTF_SETFGCOLOR','RTF_SETEFFECT', - 'RTF_SETBGCOLOR','RTF_SETALIGN','RTF_SAVETOFILE','RTF_LOADFROMFILE','RTF_GETTEXT','RTF_GETFONTSIZE','RTF_GETFONTNAME','RTF_GETEFFECT', - 'RTF_GETCLASS','RTF_APPENDTEXT','RSET$','ROUND','RNDF','RND','RIGHT$','RIGHT', - 'RGB','RESOURCE','RESIZE','RESET','REPLACE$','REPEAT$','REMOVE$','REM', - 'REGISTRY_SETVALUE','REGISTRY_SETTXTNUM','REGISTRY_SETTXTBOOL','REGISTRY_SETDWORD','REGISTRY_GETVALUE','REGISTRY_GETTXTNUM','REGISTRY_GETTXTBOOL','REGISTRY_GETDWORD', - 'REGISTRY_GETALLKEYS','REGISTRY_DELVALUE','REGISTRY_DELKEY','REFERENCE','REF','REDRAW','REDIM','RAS_SETPARAMS', - 'RAS_OPENDIALUPDIALOG','RAS_LOADENTRIES','RAS_HANGUPALL','RAS_HANGUP','RAS_GETENTRY','RAS_BEGINDIAL','RANDOMIZE','RADTODEG', - 'QUERYPERFORMANCEFREQUENCY','QUERYPERFORMANCECOUNTER','QUAD','PTR','PRESERVE','POST','POPUP','POKE$', - 'POKE','PIXELS','PI','PERMUTATIONS','PEEKMESSAGE','PEEK$','PEEK','PC_SYSTEMUPFROM', - 'PC_SUSPENDSTATE','PC_SHUTDOWN','PC_SHOWCARET','PC_SETCARETBLINKTIME','PC_RESTARTDIALOG','PC_PREVENTSHUTDOWN','PC_LOCK','PC_INSERTCD', - 'PC_HIDECARET','PC_GETSTATEONOFF','PC_GETSCROLLLOCKKEYSTATE','PC_GETNUMLOCKKEYSTATE','PC_GETCARETBLINKTIME','PC_GETCAPSLOCKKEYSTATE','PC_EMPTYBIN','PC_EJECTCD', - 'PC_DECODECDERROR','PCT','PARSESET$','PARSECOUNT','PARSE$','PARSE','PARAMETERS','OUTSIDE', - 'OS_WINVERSIONTEXT','OS_WINGETVERSIONTIMELINE','OS_SHELLEXECUTE','OS_SHELLABOUT','OS_SHELL','OS_SETLASTCALLDLLERROR','OS_SERVICESTOP','OS_SERVICESTATUSDESCRIPTION', - 'OS_SERVICESTARTTYPEDESCRIPTION','OS_SERVICESTART','OS_SERVICESETSTARTTYPE','OS_SERVICEQUERY','OS_SERVICEGETSTARTTYPE','OS_SERVICEGETLIST','OS_PROCESSKILLBYNAME','OS_PROCESSKILLBYID', - 'OS_PROCESSISRUNNING','OS_PROCESSGETLIST','OS_PROCESSGETID','OS_PROCESSARERUNNING','OS_MESSAGEBEEP','OS_ISWOW64','OS_ISFEATUREPRESENT','OS_IEVERSION', - 'OS_GETWINDOWSDIR','OS_GETUSERNAME','OS_GETTEMPDIR','OS_GETSYSTEMDIR','OS_GETSPECIALFOLDER','OS_GETLASTCALLDLLSTATUS','OS_GETLASTCALLDLLERROR','OS_GETCURRENTTHREADID', - 'OS_GETCURRENTPROCESSID','OS_GETCOMPUTERNAME','OS_GETCOMMANDS','OS_GETCOMMAND','OS_FLASHWINDOW','OS_FATALAPPEXIT','OS_ENVIRON','OS_CALLDLL', - 'OR','OPTIONAL','OPTION','OPT','ONCE','ON','OFF','NUMBER', - 'NOT','NEXT','NEW','MSGBOX','MOUSEPTR','MODULE','MODELESS','MODAL', - 'MOD','MKWRD$','MKS$','MKQ$','MKL$','MKI$','MKE$','MKDWD$', - 'MKD$','MKCUX$','MKCUR$','MKBYT$','MIN$','MIN','MID$','MENU', - 'MDI_CREATE','MCASE$','MAX$','MAX','MAKWRD','MAKLNG','MAKINT','MAKDWR', - 'LTRIM$','LSET$','LOWRD','LOOP','LONG','LOINT','LOG_WRITE','LOGB', - 'LOG2','LOG10','LOG','LOCAL','LOC','LL_UPDATEBYNAME','LL_UPDATE','LL_TOSTRING', - 'LL_TOFILE','LL_NAME','LL_GETITEM','LL_GETBYNUMBER','LL_FROMFILE','LL_FREE','LL_FINDLAST','LL_FINDBYNAME', - 'LL_FINDBYDATA','LL_DELETELIKE','LL_DELETEBYNAME','LL_DELETE','LL_DATABYNAME','LL_DATA','LL_COUNT','LL_ADD', - 'LISTBOX','LINE','LIBRARY_EXISTS','LIB','LEN','LEFT$','LEFT','LCASE$', - 'LBOUND','LABEL','KILL','JOIN$','ITERATE','ISWINDOW','ISUNICODE','ISTRUE', - 'ISODD','ISLIKE','ISFALSE','ISEVEN','IP_TOSTRING','IP_ADDR','INTERNALINFO','INTEGER', - 'INT','INSTR','INSIDE','INPUTBOX$','INI_SETKEY','INI_GETSECTIONSLIST','INI_GETSECTIONKEYLIST','INI_GETKEY', - 'INET_URLDOWNLOAD','INET_PING','INET_OPENDIALUPDIALOG','INET_GETSTATE','INET_GETREMOTEMACADDRESS','INET_GETIP','INET_GETCONNECTIONMODE','INCR', - 'IN','IMAGE','IIF$','IIF','IF','ICRYPTO_TESTSHA1','ICRYPTO_TESTMD5','ICRYPTO_TESTCRC32', - 'ICRYPTO_TESTCRC16','ICRYPTO_STRING2ASCII','ICRYPTO_SHA1','ICRYPTO_MD5','ICRYPTO_ENCRYPTRIJNDAEL','ICRYPTO_ENCRYPTRC4','ICRYPTO_DECRYPTRIJNDAEL','ICRYPTO_DECRYPTRC4', - 'ICRYPTO_CRC32','ICRYPTO_CRC16','ICRYPTO_BYTEXOR','ICRYPTO_BIN2ASCII','ICRYPTO_ASCII2STRING','ICRYPTO_ASCII2BIN','HOST_ADDR','HOSTNAME_TOIP', - 'HOSTIP_TONAME','HIWRD','HIINT','HEX$','HASH','HANDLE','GUIDTXT$','GUID$', - 'GRAPHIC','GLVOID','GLUSHORT','GLUINT','GLUBYTE','GLSIZEI','GLSHORT','GLOBAL', - 'GLINT','GLFLOAT','GLENUM','GLDOUBLE','GLCLAMPF','GLCLAMPD','GLBYTE','GLBOOLEAN', - 'GLBITFIELD','GETWINDOWMULTIKEYSTATE','GETWINDOWKEYSTATE','GETTICKCOUNT','GETS','GETMULTIASYNCKEYSTATE','GETMESSAGE','GETCURRENTINSTANCE', - 'GETAT','GETASYNCKEYSTATE','GET','FUNCTION_NPARAMS','FUNCTION_EXISTS','FUNCTION_CPARAMS','FUNCTION','FTP_SETSTRING', - 'FTP_SETSERVERDIR','FTP_SETNUMBER','FTP_SETMODE','FTP_SETLOGFILE','FTP_SETLOCALDIR','FTP_QUIT','FTP_PUTFILE','FTP_GETSTRING', - 'FTP_GETSERVERDIR','FTP_GETNUMBER','FTP_GETLOCALDIR','FTP_GETLIST','FTP_GETFILE','FTP_GETERRORSTRING','FTP_GETERRORNUMBER','FTP_FINISHED', - 'FTP_EXTRACT','FTP_DELFILE','FTP_CONNECT','FTP_COMMAND','FRAME','FRAC','FORMAT$','FOR', - 'FONT_LIST','FONT_CREATE','FONT','FOCUS','FLUSH','FIX','FILE_SIZE','FILE_SHELLDELETE', - 'FILE_SHELLCOPY','FILE_SETDATETIME','FILE_SEEK','FILE_SAVE','FILE_RENAME','FILE_PUT','FILE_PATHSPLIT','FILE_OPEN', - 'FILE_LOF','FILE_LOAD','FILE_LINEPRINT','FILE_LINEINPUT','FILE_KILL','FILE_GETVERSIONSTRING','FILE_GETVERSION','FILE_GETTIME', - 'FILE_GETDATETIMESTAMP','FILE_GETDATETIME','FILE_GETDATE','FILE_GET','FILE_EXISTS','FILE_EOF','FILE_COPY','FILE_CLOSE', - 'FILE_CHANGED','FILE_APPEND','FACTORIAL','EXTRACT$','EXT','EXPORT','EXP2','EXP10', - 'EXP','EXIT','EVAL_STRING','EVAL_SETSTRING','EVAL_SETNUMBER','EVAL_MATH','EVAL_LINKEXT','EVAL_GETSTRING', - 'EVAL_GETNUMBER','EVAL_ERRORGETTOKEN','EVAL_ERRORDESCRIPTION','EVAL_ERRORCLEAR','EVAL','ERRCLEAR','ERR','ENGINE_GETCURRENTTOKEN', - 'ENDIF','END','ENABLE','ELSEIF','ELSE','ECHO','DWORD','DT_YEAR', - 'DT_TIMETOSEC','DT_TIMESUBSECONDS','DT_TIMEFORMAT','DT_TIMEADDSECONDS','DT_SETTIMESEPARATOR','DT_SETDATESEPARATOR','DT_SETDATECENTURY','DT_SECTOTIME', - 'DT_SECTODATE','DT_SECOND','DT_MONTH','DT_MINUTE','DT_LASTDAYOFMONTH','DT_ISVALIDDATE','DT_ISLEAPYEAR','DT_HOUR', - 'DT_GETWEEKDAYNAME','DT_GETWEEKDAY','DT_GETTIMESTAMP','DT_GETTIMESEPARATOR','DT_GETMONTHNAME','DT_GETDATESEPARATOR','DT_GETDATECENTURY','DT_DAY', - 'DT_DATETOSEC','DT_DATETIMESUBSECONDS','DT_DATETIMEADDSECONDS','DT_DATESUBDAYS','DT_DATEFORMAT','DT_DATEDIFF','DT_DATEADDDAYS','DT_COOKIEDATE', - 'DRAW','DOUBLE','DOEVENTS','DO','DISABLE','DIR_REMOVE','DIR_MAKEALL','DIR_MAKE', - 'DIR_LISTARRAY','DIR_LIST','DIR_ISEMPTY','DIR_ISDIR','DIR_GETCURRENT','DIR_EXISTS','DIR_CHANGEDRIVE','DIR_CHANGE', - 'DIM','DICTIONARY_MEMINFO','DICTIONARY_LISTKEYS','DICTIONARY_FREE','DICTIONARY_FIND','DICTIONARY_EXISTS','DICTIONARY_CREATE','DICTIONARY_COUNT', - 'DICTIONARY_ADD','DIALOG_STOPEVENTS','DIALOG_SAVEFILE','DIALOG_OPENFILE','DIALOG_GETCONTROL','DIALOG_CHOOSECOLOR','DIALOG_BROWSEFORFOLDER','DIALOG', - 'DESKTOP','DESCENDING','DESCEND','DELETEOBJECT','DELETE','DEGTORAD','DECR','DECLARE', - 'DATE$','CVWRD','CVS','CVQ','CVL','CVI','CVE','CVDWD', - 'CVD','CVCUX','CVCUR','CVBYT','CURRENCY','CUR','CSET$','CSCH', - 'CSC','CRYPTO_GETPROVIDERTYPESCOUNT','CRYPTO_GETPROVIDERSCOUNT','CRYPTO_GETDEFAULTPROVIDER','CRYPTO_GENRANDOMSTRING','CRYPTO_ENUMPROVIDERTYPES','CRYPTO_ENUMPROVIDERS','CRYPTO_ENCRYPT', - 'CRYPTO_DECRYPT','CREATEFONT','COTH','COTAN','COSH','COS','CONTROL_SETTEXT','CONTROL_GETTEXT', - 'CONTROL_GETNUMBER','CONTROL','CONST','CONSOLE_WRITELINE','CONSOLE_WRITE','CONSOLE_WAITKEY','CONSOLE_SHOWWINDOW','CONSOLE_SHOWCURSOR', - 'CONSOLE_SETTITLE','CONSOLE_SETTEXTATTRIBUTE','CONSOLE_SETSTDHANDLE','CONSOLE_SETSCREENBUFFERSIZE','CONSOLE_SETPROGRESSBARCHAR','CONSOLE_SETOUTPUTMODE','CONSOLE_SETOUTPUTCP','CONSOLE_SETINPUTMODE', - 'CONSOLE_SETFILEAPISTOOEM','CONSOLE_SETFILEAPISTOANSI','CONSOLE_SETCURSORSIZE','CONSOLE_SETCURSORPOSITION','CONSOLE_SETCP','CONSOLE_SETACTIVESCREENBUFFER','CONSOLE_SCROLLWINDOW','CONSOLE_SCROLLBUFFERONEROW', - 'CONSOLE_SCROLLBUFFER','CONSOLE_SAVESCREEN','CONSOLE_RESTORESCREEN','CONSOLE_READLINE','CONSOLE_READ','CONSOLE_PROGRESSBAR','CONSOLE_PRINTLINE','CONSOLE_PRINTAT', - 'CONSOLE_PRINT','CONSOLE_NORMALSCREEN','CONSOLE_LINE','CONSOLE_INKEYB','CONSOLE_INKEY','CONSOLE_HIDECURSOR','CONSOLE_GETTITLE','CONSOLE_GETTEXTATTRIBUTE', - 'CONSOLE_GETSTDHANDLE','CONSOLE_GETSIZEY','CONSOLE_GETSIZEX','CONSOLE_GETPROGRESSBARCHAR','CONSOLE_GETOUTPUTMODE','CONSOLE_GETOUTPUTCP','CONSOLE_GETNUMBEROFMOUSEBUTTONS','CONSOLE_GETINPUTMODE', - 'CONSOLE_GETCURSORY','CONSOLE_GETCURSORX','CONSOLE_GETCURSORSIZE','CONSOLE_GETCURRENTFONTINDEX','CONSOLE_GETCP','CONSOLE_GENERATECTRLEVENT','CONSOLE_FULLSCREEN','CONSOLE_FREE', - 'CONSOLE_FOREGROUNDRGB','CONSOLE_ENABLECTRLC','CONSOLE_DISABLECTRLC','CONSOLE_CREATESCREENBUFFER','CONSOLE_COLORAT','CONSOLE_CLS','CONSOLE_BOX','CONSOLE_BACKGROUNDRGB', - 'CONSOLE_ATTACH','CONSOLE_AREFILEAPISANSI','CONSOLE_ALLOC','COM_VARIANTINIT','COM_VARIANTCOPY','COM_VARIANTCLEAR','COM_SUCCEEDED','COM_STRINGFROMCLSID', - 'COM_RELEASE','COM_QUERYINTERFACE','COM_PROGIDFROMCLSID','COM_ISEQUALIID','COM_ISEQUALGUID','COM_ISEQUALCLSID','COM_GETOBJECT','COM_GETENGINEGUID', - 'COM_EXECUTE','COM_DISPLAYERROR','COM_CREATEOBJECT','COM_CLSIDFROMSTRING','COM_CLSIDFROMPROGID','COM_BUILDVARIANT','COMBOBOX','COMBINATIONS', - 'COLOR','CLIPBOARD_SETTEXT','CLIPBOARD_GETTEXT','CLIENT','CLEARMESSAGES','CHR$','CHOOSE$','CHOOSE', - 'CHECKBOX','CHECK3STATE','CHECK','CGI_WRITELOGFILE','CGI_WRITE','CGI_URLDECODESTRING','CGI_UPLOADFILESTIME','CGI_UPLOADFILESNUMBER', - 'CGI_UPLOADFILESIZE','CGI_STARTSESSION','CGI_SETSESSIONVARIABLE','CGI_RESETDEFAULTSETTINGS','CGI_REMOVESPECIALCHARSPREFIX','CGI_REMOVEQUOTE','CGI_READ','CGI_LOADCONFIGFILE', - 'CGI_HEADER','CGI_GETSESSIONVARIABLE','CGI_GETREQUESTMETHOD','CGI_GETQUERYVALUE','CGI_GETCURRENTSESSION','CGI_GETCURRENTGUID','CGI_ENVIRON','CGI_CFGSETOPTION', - 'CGI_CFGGETOPTION','CGI_ADDSPECIALCHARSPREFIX','CGI_ADDQUOTE','CEIL','CASE','CALL','BYVAL','BYTE', - 'BYREF','BYCMD','BUTTON','BUNDLE_SETSCRIPTPARAMETERS','BUNDLE_SETSCRIPTNAME','BUNDLE_SETFLAGOBFUSCATEMAINSCRIPT','BUNDLE_SETFLAGDELETEAFTERRUN','BUNDLE_SETFLAGCOMPRESSALLFILES', - 'BUNDLE_SETFLAGASKBEFOREEXTRACT','BUNDLE_SETEXTRACTIONFOLDER','BUNDLE_SETCREATIONFOLDER','BUNDLE_SETBUNDLENAME','BUNDLE_RESET','BUNDLE_MAKE','BUNDLE_BUILDER','BUNDLE_ADDFOLDER', - 'BUNDLE_ADDFILE','BOUNDCHECK','BIN$','BIFF_WRITETEXT','BIFF_WRITENUMBER','BIFF_WRITEDATE','BIFF_SETROWHEIGHT','BIFF_SETCOLWIDTH', - 'BIFF_SETBUFFER','BIFF_CREATEFILE','BIFF_CLOSEFILE','BETWEEN','BEEP','BAR','ATTACH','ATN', - 'AT','ASSIGN','ASCIZ','ASCIIZ','ASCII2UNICODE','ASCENDING','ASCEND','ASC', - 'AS','ARRAY','ARCTANH','ARCSINH','ARCSIN','ARCSECH','ARCSEC','ARCCSCH', - 'ARCCSC','ARCCOTH','ARCCOT','ARCCOSH','ARCCOS','APP_TIMER','APP_SOURCEPATH','APP_SOURCENAME', - 'APP_SOURCEFULLNAME','APP_PATH','APP_NAME','APP_LISTVARIABLES','APP_LISTKEYWORDS','APP_LISTFUNCTIONS','APP_LISTEQUATES','APP_INCLUDEPATH', - 'APP_GETMODULEFULLPATH','APP_COUNTER','APPEND','ANY','ANIMATE_STOP','ANIMATE_PLAY','ANIMATE_OPEN','AND', - 'ALIAS','ALERT','ADD','ACODE$','ABS','%DEF','#MINVERSION','#IF', - '#ENDIF','#ELSEIF','#ELSE','#DEFAULT','#DEF','SQLWRITEPRIVATEPROFILESTRING','SQLWRITEFILEDSN','SQLWRITEDSNTOINI', - 'SQLVALIDDSN','SQLTRANSACT','SQLTABLES','SQLTABLEPRIVILEGES','SQLSTATISTICS','SQLSPECIALCOLUMNS','SQLSETSTMTOPTION','SQLSETSTMTATTR', - 'SQLSETSCROLLOPTIONS','SQLSETPOS','SQLSETPARAM','SQLSETENVATTR','SQLSETDESCREC','SQLSETDESCFIELD','SQLSETCURSORNAME','SQLSETCONNECTOPTION', - 'SQLSETCONNECTATTR','SQLSETCONFIGMODE','SQLROWCOUNT','SQLREMOVETRANSLATOR','SQLREMOVEDSNFROMINI','SQLREMOVEDRIVERMANAGER','SQLREMOVEDRIVER','SQLREADFILEDSN', - 'SQLPUTDATA','SQLPROCEDURES','SQLPROCEDURECOLUMNS','SQLPRIMARYKEYS','SQLPREPARE','SQLPOSTINSTALLERERROR','SQLPARAMOPTIONS','SQLPARAMDATA', - 'SQLNUMRESULTCOLS','SQLNUMPARAMS','SQLNATIVESQL','SQLMORERESULTS','SQLMANAGEDATASOURCES','SQLINSTALLTRANSLATOREX','SQLINSTALLERERROR','SQLINSTALLDRIVERMANAGER', - 'SQLINSTALLDRIVEREX','SQLGETTYPEINFO','SQLGETTRANSLATOR','SQLGETSTMTOPTION','SQLGETSTMTATTR','SQLGETPRIVATEPROFILESTRING','SQLGETINSTALLEDDRIVERS','SQLGETINFO', - 'SQLGETFUNCTIONS','SQLGETENVATTR','SQLGETDIAGREC','SQLGETDIAGFIELD','SQLGETDESCREC','SQLGETDESCFIELD','SQLGETDATA','SQLGETCURSORNAME', - 'SQLGETCONNECTOPTION','SQLGETCONNECTATTR','SQLGETCONFIGMODE','SQLFREESTMT','SQLFREEHANDLE','SQLFREEENV','SQLFREECONNECT','SQLFOREIGNKEYS', - 'SQLFETCHSCROLL','SQLFETCH','SQLEXTENDEDFETCH','SQLEXECUTE','SQLEXECDIRECT','SQLERROR','SQLENDTRAN','SQLDRIVERS', - 'SQLDRIVERCONNECT','SQLDISCONNECT','SQLDESCRIBEPARAM','SQLDESCRIBECOL','SQLDATASOURCES','SQLCREATEDATASOURCE','SQLCOPYDESC','SQLCONNECT', - 'SQLCONFIGDRIVER','SQLCONFIGDATASOURCE','SQLCOLUMNS','SQLCOLUMNPRIVILEGES','SQLCOLATTRIBUTES','SQLCOLATTRIBUTE','SQLCLOSECURSOR','SQLCANCEL', - 'SQLBULKOPERATIONS','SQLBROWSECONNECT','SQLBINDPARAMETER','SQLBINDPARAM','SQLBINDCOL','SQLALLOCSTMT','SQLALLOCHANDLE','SQLALLOCENV', - 'SQLALLOCCONNECT','ODBCWRONGDRIVER','ODBCWRITEPRIVATEPROFILESTRING','ODBCWRITEFILEDSN','ODBCWRITEDSNTOINI','ODBCVALIDDSN','ODBCUPDATERECORD','ODBCUPDATEBYBOOKMARK', - 'ODBCUNLOCKRECORD','ODBCUNBINDCOLUMNS','ODBCUNBINDCOL','ODBCTABLESCOUNT','ODBCTABLES','ODBCTABLEPRIVILEGESCOUNT','ODBCTABLEPRIVILEGES','ODBCSUPPORTS', - 'ODBCSTATTABLESCHEMANAME','ODBCSTATTABLEPAGES','ODBCSTATTABLECATALOGNAME','ODBCSTATTABLECARDINALITY','ODBCSTATISTICSCOUNT','ODBCSTATISTICS','ODBCSTATINDEXSORTSEQUENCE','ODBCSTATINDEXSCHEMANAME', - 'ODBCSTATINDEXQUALIFIER','ODBCSTATINDEXPAGES','ODBCSTATINDEXFILTERCONDITION','ODBCSTATINDEXCOLUMNORDINALPOSITION','ODBCSTATINDEXCOLUMNNAME','ODBCSTATINDEXCATALOGNAME','ODBCSTATINDEXCARDINALITY','ODBCSTATINDEXALLOWDUPLICATES', - 'ODBCSPECIALCOLUMNSCOUNT','ODBCSPECIALCOLUMNS','ODBCSETTXNISOLATION','ODBCSETTRANSLATELIB','ODBCSETTRACEFILE','ODBCSETTRACE','ODBCSETSTMTUSEBOOKMARKS','ODBCSETSTMTSIMULATECURSOR', - 'ODBCSETSTMTROWSTATUSPTR','ODBCSETSTMTROWSFETCHEDPTR','ODBCSETSTMTROWOPERATIONPTR','ODBCSETSTMTROWBINDTYPE','ODBCSETSTMTROWBINDOFFSETPTR','ODBCSETSTMTROWARRAYSIZE','ODBCSETSTMTRETRIEVEDATA','ODBCSETSTMTQUERYTIMEOUT', - 'ODBCSETSTMTPARAMSTATUSPTR','ODBCSETSTMTPARAMSPROCESSEDPTR','ODBCSETSTMTPARAMSETSIZE','ODBCSETSTMTPARAMOPERATIONPTR','ODBCSETSTMTPARAMBINDTYPE','ODBCSETSTMTPARAMBINDOFFSETPTR','ODBCSETSTMTNOSCAN','ODBCSETSTMTMETADATAID', - 'ODBCSETSTMTMAXROWS','ODBCSETSTMTMAXLENGTH','ODBCSETSTMTKEYSETSIZE','ODBCSETSTMTFETCHBOOKMARKPTR','ODBCSETSTMTENABLEAUTOIPD','ODBCSETSTMTCURSORTYPE','ODBCSETSTMTCURSORSENSITIVITY','ODBCSETSTMTCURSORSCROLLABLE', - 'ODBCSETSTMTCONCURRENCY','ODBCSETSTMTATTR','ODBCSETSTMTASYNCENABLE','ODBCSETSTMTAPPROWDESC','ODBCSETSTMTAPPPARAMDESC','ODBCSETSTATICCURSOR','ODBCSETROWVERCONCURRENCY','ODBCSETRESULT', - 'ODBCSETRELATIVEPOSITION','ODBCSETREADONLYCONCURRENCY','ODBCSETQUIETMODE','ODBCSETPOSITION','ODBCSETPOS','ODBCSETPACKETMODE','ODBCSETOPTIMISTICCONCURRENCY','ODBCSETODBCCURSORS', - 'ODBCSETMULTIUSERKEYSETCURSOR','ODBCSETMETADATAID','ODBCSETLOGINTIMEOUT','ODBCSETLOCKCONCURRENCY','ODBCSETKEYSETDRIVENCURSOR','ODBCSETFORWARDONLYCURSOR','ODBCSETENVOUTPUTNTS','ODBCSETENVODBCVERSION', - 'ODBCSETENVCPMATCH','ODBCSETENVCONNECTIONPOOLING','ODBCSETENVATTR','ODBCSETDYNAMICCURSOR','ODBCSETDESCREC','ODBCSETDESCFIELD','ODBCSETCURSORTYPE','ODBCSETCURSORSENSITIVITY', - 'ODBCSETCURSORSCROLLABILITY','ODBCSETCURSORNAME','ODBCSETCURSORLOCKTYPE','ODBCSETCURSORKEYSETSIZE','ODBCSETCURSORCONCURRENCY','ODBCSETCURRENTCATALOG','ODBCSETCONNECTIONTIMEOUT','ODBCSETCONNECTATTR', - 'ODBCSETCONFIGMODE','ODBCSETCONCURVALUESCONCURRENCY','ODBCSETAUTOCOMMITON','ODBCSETAUTOCOMMITOFF','ODBCSETAUTOCOMMIT','ODBCSETASYNCENABLE','ODBCSETACCESSMODE','ODBCSETABSOLUTEPOSITION', - 'ODBCROWCOUNT','ODBCROLLBACKTRAN','ODBCROLLBACKENVTRAN','ODBCROLLBACKDBCTRAN','ODBCRESULT','ODBCRESETPARAMS','ODBCREMOVETRANSLATOR','ODBCREMOVEDSNFROMINI', - 'ODBCREMOVEDRIVERMANAGER','ODBCREMOVEDRIVER','ODBCREFRESHRECORD','ODBCRECORDCOUNT','ODBCREADFILEDSN','ODBCQUOTEDIDENTIFIERCASE','ODBCPUTDATA','ODBCPROCEDURESCOUNT', - 'ODBCPROCEDURES','ODBCPROCEDURECOLUMNSCOUNT','ODBCPROCEDURECOLUMNS','ODBCPRIMARYKEYSCOUNT','ODBCPRIMARYKEYS','ODBCPREPARE','ODBCPOSTINSTALLERERROR','ODBCPARAMDATA', - 'ODBCOPENSTMT','ODBCOPENCONNECTION','ODBCNUMRESULTCOLS','ODBCNUMPARAMS','ODBCNATIVESQL','ODBCMOVEPREVIOUS','ODBCMOVENEXT','ODBCMOVELAST', - 'ODBCMOVEFIRST','ODBCMOVE','ODBCMORERESULTS','ODBCMANAGEDATASOURCES','ODBCLOCKRECORD','ODBCINSTALLTRANSLATOREX','ODBCINSTALLERERROR','ODBCINSTALLDRIVERMANAGER', - 'ODBCINSTALLDRIVEREX','ODBCGETXOPENCLIYEAR','ODBCGETUSERNAME','ODBCGETUNION','ODBCGETTYPEINFOCOUNT','ODBCGETTYPEINFO','ODBCGETTXNISOLATIONOPTION','ODBCGETTXNISOLATION', - 'ODBCGETTXNCAPABLE','ODBCGETTRANSLATOR','ODBCGETTRANSLATELIB','ODBCGETTRACEFILE','ODBCGETTRACE','ODBCGETTIMEDATEFUNCTIONS','ODBCGETTIMEDATEDIFFINTERVALS','ODBCGETTIMEDATEADDINTERVALS', - 'ODBCGETTABLETERM','ODBCGETSYSTEMFUNCTIONS','ODBCGETSUBQUERIES','ODBCGETSTRINGFUNCTIONS','ODBCGETSTMTUSEBOOKMARKS','ODBCGETSTMTSQLSTATE','ODBCGETSTMTSIMULATECURSOR','ODBCGETSTMTROWSTATUSPTR', - 'ODBCGETSTMTROWSFETCHEDPTR','ODBCGETSTMTROWOPERATIONPTR','ODBCGETSTMTROWNUMBER','ODBCGETSTMTROWBINDTYPE','ODBCGETSTMTROWBINDOFFSETPTR','ODBCGETSTMTROWARRAYSIZE','ODBCGETSTMTRETRIEVEDATA','ODBCGETSTMTQUERYTIMEOUT', - 'ODBCGETSTMTPARAMSTATUSPTR','ODBCGETSTMTPARAMSPROCESSEDPTR','ODBCGETSTMTPARAMSETSIZE','ODBCGETSTMTPARAMOPERATIONPTR','ODBCGETSTMTPARAMBINDTYPE','ODBCGETSTMTPARAMBINDOFFSETPTR','ODBCGETSTMTNOSCAN','ODBCGETSTMTMETADATAID', - 'ODBCGETSTMTMAXROWS','ODBCGETSTMTMAXLENGTH','ODBCGETSTMTKEYSETSIZE','ODBCGETSTMTIMPROWDESC','ODBCGETSTMTIMPPARAMDESC','ODBCGETSTMTFETCHBOOKMARKPTR','ODBCGETSTMTERRORINFO','ODBCGETSTMTENABLEAUTOIPD', - 'ODBCGETSTMTCURSORTYPE','ODBCGETSTMTCURSORSENSITIVITY','ODBCGETSTMTCURSORSCROLLABLE','ODBCGETSTMTCONCURRENCY','ODBCGETSTMTATTR','ODBCGETSTMTASYNCENABLE','ODBCGETSTMTAPPROWDESC','ODBCGETSTMTAPPPARAMDESC', - 'ODBCGETSTATICCURSORATTRIBUTES2','ODBCGETSTATICCURSORATTRIBUTES1','ODBCGETSTATEMENTSQLSTATE','ODBCGETSTATEMENTERRORINFO','ODBCGETSTANDARDCLICONFORMANCE','ODBCGETSQLSTATE','ODBCGETSQLCONFORMANCE','ODBCGETSQL92VALUEEXPRESSIONS', - 'ODBCGETSQL92STRINGFUNCTIONS','ODBCGETSQL92ROWVALUECONSTRUCTOR','ODBCGETSQL92REVOKE','ODBCGETSQL92RELATIONALJOINOPERATORS','ODBCGETSQL92PREDICATES','ODBCGETSQL92NUMERICVALUEFUNCTIONS','ODBCGETSQL92GRANT','ODBCGETSQL92FOREIGNKEYUPDATERULE', - 'ODBCGETSQL92FOREIGNKEYDELETERULE','ODBCGETSQL92DATETIMEFUNCTIONS','ODBCGETSPECIALCHARACTERS','ODBCGETSERVERNAME','ODBCGETSEARCHPATTERNESCAPE','ODBCGETSCROLLOPTIONS','ODBCGETSCHEMAUSAGE','ODBCGETSCHEMATERM', - 'ODBCGETROWUPDATES','ODBCGETQUIETMODE','ODBCGETPROCEDURETERM','ODBCGETPROCEDURESSUPPORT','ODBCGETPRIVATEPROFILESTRING','ODBCGETPOSOPERATIONS','ODBCGETPARAMARRAYSELECTS','ODBCGETPARAMARRAYROWCOUNTS', - 'ODBCGETPACKETMODE','ODBCGETOUTERJOINS','ODBCGETORDERBYCOLUMNSINSELECT','ODBCGETOJCAPABILITIES','ODBCGETODBCVER','ODBCGETODBCINTERFACECONFORMANCE','ODBCGETODBCCURSORS','ODBCGETNUMERICFUNCTIONS', - 'ODBCGETNULLCOLLATION','ODBCGETNONNULLABLECOLUMNS','ODBCGETNEEDLONGDATALEN','ODBCGETMULTRESULTSETS','ODBCGETMULTIPLEACTIVETXN','ODBCGETMETADATAID','ODBCGETMAXUSERNAMELEN','ODBCGETMAXTABLESINSELECT', - 'ODBCGETMAXTABLENAMELEN','ODBCGETMAXSTATEMENTLEN','ODBCGETMAXSCHEMANAMELEN','ODBCGETMAXROWSIZEINCLUDESLONG','ODBCGETMAXROWSIZE','ODBCGETMAXPROCEDURENAMELEN','ODBCGETMAXINDEXSIZE','ODBCGETMAXIDENTIFIERLEN', - 'ODBCGETMAXDRIVERCONNECTIONS','ODBCGETMAXCURSORNAMELEN','ODBCGETMAXCONCURRENTACTIVITIES','ODBCGETMAXCOLUMNSINTABLE','ODBCGETMAXCOLUMNSINSELECT','ODBCGETMAXCOLUMNSINORDERBY','ODBCGETMAXCOLUMNSININDEX','ODBCGETMAXCOLUMNSINGROUPBY', - 'ODBCGETMAXCOLUMNNAMELEN','ODBCGETMAXCHARLITERALLEN','ODBCGETMAXCATALOGNAMELEN','ODBCGETMAXBINARYLITERALLEN','ODBCGETMAXASYNCCONCURRENTSTATEMENTS','ODBCGETLONGVARCHARDATABYCOLNAME','ODBCGETLONGVARCHARDATA','ODBCGETLOGINTIMEOUT', - 'ODBCGETLIKEESCAPECLAUSE','ODBCGETKEYWORDS','ODBCGETKEYSETCURSORATTRIBUTES2','ODBCGETKEYSETCURSORATTRIBUTES1','ODBCGETINTEGRITY','ODBCGETINSTALLERERRORMESSAGE','ODBCGETINSTALLERERRORCODE','ODBCGETINSTALLEDDRIVERS', - 'ODBCGETINSERTSTATEMENT','ODBCGETINFOSTR','ODBCGETINFOSCHEMAVIEWS','ODBCGETINFOLONG','ODBCGETINFOINT','ODBCGETINFO','ODBCGETINDEXKEYWORDS','ODBCGETIMPROWDESCREC', - 'ODBCGETIMPROWDESCFIELDTYPE','ODBCGETIMPROWDESCFIELDSCALE','ODBCGETIMPROWDESCFIELDPRECISION','ODBCGETIMPROWDESCFIELDOCTETLENGTH','ODBCGETIMPROWDESCFIELDNULLABLE','ODBCGETIMPROWDESCFIELDNAME','ODBCGETIMPROWDESCFIELD','ODBCGETIMPPARAMDESCREC', - 'ODBCGETIMPPARAMDESCFIELDTYPE','ODBCGETIMPPARAMDESCFIELDSCALE','ODBCGETIMPPARAMDESCFIELDPRECISION','ODBCGETIMPPARAMDESCFIELDOCTETLENGTH','ODBCGETIMPPARAMDESCFIELDNULLABLE','ODBCGETIMPPARAMDESCFIELDNAME','ODBCGETIMPPARAMDESCFIELD','ODBCGETIDENTIFIERQUOTECHAR', - 'ODBCGETIDENTIFIERCASE','ODBCGETGROUPBY','ODBCGETFUNCTIONS','ODBCGETFORWARDONLYCURSORATTRIBUTES2','ODBCGETFORWARDONLYCURSORATTRIBUTES1','ODBCGETFILEUSAGE','ODBCGETEXPRESSIONSINORDERBY','ODBCGETERRORINFO', - 'ODBCGETENVSQLSTATE','ODBCGETENVOUTPUTNTS','ODBCGETENVODBCVERSION','ODBCGETENVIRONMENTSQLSTATE','ODBCGETENVIRONMENTERRORINFO','ODBCGETENVERRORINFO','ODBCGETENVCPMATCH','ODBCGETENVCONNECTIONPOOLING', - 'ODBCGETENVATTR','ODBCGETDYNAMICCURSORATTRIBUTES2','ODBCGETDYNAMICCURSORATTRIBUTES1','ODBCGETDROPVIEW','ODBCGETDROPTRANSLATION','ODBCGETDROPTABLE','ODBCGETDROPSCHEMA','ODBCGETDROPDOMAIN', - 'ODBCGETDROPCOLLATION','ODBCGETDROPCHARACTERSET','ODBCGETDROPASSERTION','ODBCGETDRIVERVER','ODBCGETDRIVERODBCVER','ODBCGETDRIVERNAME','ODBCGETDRIVERMANAGERINSTALLPATH','ODBCGETDRIVERHLIB', - 'ODBCGETDRIVERHENV','ODBCGETDRIVERHDBC','ODBCGETDMVERMINOR','ODBCGETDMVERMAJOR','ODBCGETDMVER','ODBCGETDIAGREC','ODBCGETDIAGFIELD','ODBCGETDESCSQLSTATE', - 'ODBCGETDESCRIPTORSQLSTATE','ODBCGETDESCRIPTORERRORINFO','ODBCGETDESCRIBEPARAMETER','ODBCGETDESCREC','ODBCGETDESCFIELD','ODBCGETDESCERRORINFO','ODBCGETDEFAULTTXNISOLATION','ODBCGETDDLINDEX', - 'ODBCGETDBMSVER','ODBCGETDBMSNAME','ODBCGETDBCSQLSTATE','ODBCGETDBCERRORINFO','ODBCGETDATETIMELITERALS','ODBCGETDATASTRINGBYCOLNAME','ODBCGETDATASTRING','ODBCGETDATASOURCEREADONLY', - 'ODBCGETDATASOURCENAME','ODBCGETDATAEXTENSIONS','ODBCGETDATABASENAME','ODBCGETDATA','ODBCGETCURSORTYPE','ODBCGETCURSORSENSITIVITYSUPPORT','ODBCGETCURSORSENSITIVITY','ODBCGETCURSORSCROLLABILITY', - 'ODBCGETCURSORROLLBACKBEHAVIOR','ODBCGETCURSORNAME','ODBCGETCURSORLOCKTYPE','ODBCGETCURSORKEYSETSIZE','ODBCGETCURSORCONCURRENCY','ODBCGETCURSORCOMMITBEHAVIOR','ODBCGETCURRENTCATALOG','ODBCGETCREATEVIEW', - 'ODBCGETCREATETRANSLATION','ODBCGETCREATETABLE','ODBCGETCREATESCHEMA','ODBCGETCREATEDOMAIN','ODBCGETCREATECOLLATION','ODBCGETCREATECHARACTERSET','ODBCGETCREATEASSERTION','ODBCGETCORRELATIONNAME', - 'ODBCGETCONVERTVARCHAR','ODBCGETCONVERTVARBINARY','ODBCGETCONVERTTINYINT','ODBCGETCONVERTTIMESTAMP','ODBCGETCONVERTTIME','ODBCGETCONVERTSMALLINT','ODBCGETCONVERTREAL','ODBCGETCONVERTNUMERIC', - 'ODBCGETCONVERTLONGVARCHAR','ODBCGETCONVERTLONGVARBINARY','ODBCGETCONVERTINTERVALYEARMONTH','ODBCGETCONVERTINTERVALDAYTIME','ODBCGETCONVERTINTEGER','ODBCGETCONVERTFUNCTIONS','ODBCGETCONVERTFLOAT','ODBCGETCONVERTDOUBLE', - 'ODBCGETCONVERTDECIMAL','ODBCGETCONVERTDATE','ODBCGETCONVERTCHAR','ODBCGETCONVERTBIT','ODBCGETCONVERTBINARY','ODBCGETCONVERTBIGINT','ODBCGETCONNECTIONTIMEOUT','ODBCGETCONNECTIONSQLSTATE', - 'ODBCGETCONNECTIONERRORINFO','ODBCGETCONNECTIONDEAD','ODBCGETCONNECTATTR','ODBCGETCONFIGMODE','ODBCGETCONCATNULLBEHAVIOR','ODBCGETCOLUMNALIAS','ODBCGETCOLLATIONSEQ','ODBCGETCATALOGUSAGE', - 'ODBCGETCATALOGTERM','ODBCGETCATALOGNAMESEPARATOR','ODBCGETCATALOGNAME','ODBCGETCATALOGLOCATION','ODBCGETBOOKMARKPERSISTENCE','ODBCGETBATCHSUPPORT','ODBCGETBATCHROWCOUNT','ODBCGETAUTOIPD', - 'ODBCGETAUTOCOMMIT','ODBCGETASYNCMODE','ODBCGETASYNCENABLE','ODBCGETALTERTABLE','ODBCGETALTERDOMAIN','ODBCGETAGGREGATEFUNCTIONS','ODBCGETACTIVEENVIRONMENTS','ODBCGETACCESSMODE', - 'ODBCGETACCESSIBLETABLES','ODBCGETACCESSIBLEPROCEDURES','ODBCFREESTMT','ODBCFREEHANDLE','ODBCFREEENV','ODBCFREEDESC','ODBCFREEDBC','ODBCFREECONNECT', - 'ODBCFOREIGNKEYSCOUNT','ODBCFOREIGNKEYS','ODBCFETCHSCROLL','ODBCFETCHBYBOOKMARK','ODBCFETCH','ODBCEXTENDEDFETCH','ODBCEXECUTE','ODBCEXECDIRECT', - 'ODBCERROR','ODBCEOF','ODBCENDTRAN','ODBCDRIVERSCOUNT','ODBCDRIVERS','ODBCDRIVERCONNECT','ODBCDISCONNECT','ODBCDESCRIBEPARAM', - 'ODBCDESCRIBECOL','ODBCDELETERECORD','ODBCDELETEBYBOOKMARK','ODBCDATASOURCES','ODBCCREATEDATASOURCE','ODBCCOPYDESC','ODBCCONNECTIONISDEAD','ODBCCONNECTIONISALIVE', - 'ODBCCONNECT','ODBCCONFIGDRIVER','ODBCCONFIGDATASOURCE','ODBCCOMMITTRAN','ODBCCOMMITENVTRAN','ODBCCOMMITDBCTRAN','ODBCCOLUPDATABLE','ODBCCOLUNSIGNED', - 'ODBCCOLUNNAMED','ODBCCOLUMNSCOUNT','ODBCCOLUMNS','ODBCCOLUMNPRIVILEGESCOUNT','ODBCCOLUMNPRIVILEGES','ODBCCOLUMN','ODBCCOLTYPENAME','ODBCCOLTYPE', - 'ODBCCOLTABLENAME','ODBCCOLSEARCHABLE','ODBCCOLSCHEMANAME','ODBCCOLSCALE','ODBCCOLPRECISION','ODBCCOLOCTETLENGTH','ODBCCOLNUMPRECRADIX','ODBCCOLNULLABLE', - 'ODBCCOLNAME','ODBCCOLLOCALTYPENAME','ODBCCOLLITERALSUFFIX','ODBCCOLLITERALPREFIX','ODBCCOLLENGTH','ODBCCOLLABEL','ODBCCOLISNULL','ODBCCOLFIXEDPRECSCALE', - 'ODBCCOLDISPLAYSIZE','ODBCCOLCOUNT','ODBCCOLCONCISETYPE','ODBCCOLCATALOGNAME','ODBCCOLCASESENSITIVE','ODBCCOLBASETABLENAME','ODBCCOLBASECOLUMNNAME','ODBCCOLAUTOUNIQUEVALUE', - 'ODBCCOLATTRIBUTE','ODBCCLOSESTMTCURSOR','ODBCCLOSESTMT','ODBCCLOSECURSOR','ODBCCLOSECONNECTION','ODBCCLEARRESULT','ODBCCANCEL','ODBCBULKOPERATIONS', - 'ODBCBROWSECONNECT','ODBCBINDPARAMETER','ODBCBINDCOLTOWORD','ODBCBINDCOLTOTIMESTAMP','ODBCBINDCOLTOTIME','ODBCBINDCOLTOSTRING','ODBCBINDCOLTOSINGLE','ODBCBINDCOLTOQUAD', - 'ODBCBINDCOLTONUMERIC','ODBCBINDCOLTOLONG','ODBCBINDCOLTOINTEGER','ODBCBINDCOLTODWORD','ODBCBINDCOLTODOUBLE','ODBCBINDCOLTODECIMAL','ODBCBINDCOLTODATE','ODBCBINDCOLTOCURRENCY', - 'ODBCBINDCOLTOBYTE','ODBCBINDCOLTOBIT','ODBCBINDCOLTOBINARY','ODBCBINDCOL','ODBCALLOCSTMT','ODBCALLOCHANDLE','ODBCALLOCENV','ODBCALLOCDESC', - 'ODBCALLOCDBC','ODBCALLOCCONNECT','ODBCADDRECORD','GLVIEWPORT','GLVERTEXPOINTER','GLVERTEX4SV','GLVERTEX4S','GLVERTEX4IV', - 'GLVERTEX4I','GLVERTEX4FV','GLVERTEX4F','GLVERTEX4DV','GLVERTEX4D','GLVERTEX3SV','GLVERTEX3S','GLVERTEX3IV', - 'GLVERTEX3I','GLVERTEX3FV','GLVERTEX3F','GLVERTEX3DV','GLVERTEX3D','GLVERTEX2SV','GLVERTEX2S','GLVERTEX2IV', - 'GLVERTEX2I','GLVERTEX2FV','GLVERTEX2F','GLVERTEX2DV','GLVERTEX2D','GLUUNPROJECT','GLUTESSVERTEX','GLUTESSPROPERTY', - 'GLUTESSNORMAL','GLUTESSENDPOLYGON','GLUTESSENDCONTOUR','GLUTESSCALLBACK','GLUTESSBEGINPOLYGON','GLUTESSBEGINCONTOUR','GLUSPHERE','GLUSCALEIMAGE', - 'GLUQUADRICTEXTURE','GLUQUADRICORIENTATION','GLUQUADRICNORMALS','GLUQUADRICDRAWSTYLE','GLUQUADRICCALLBACK','GLUPWLCURVE','GLUPROJECT','GLUPICKMATRIX', - 'GLUPERSPECTIVE','GLUPARTIALDISK','GLUORTHO2D','GLUNURBSSURFACE','GLUNURBSPROPERTY','GLUNURBSCURVE','GLUNURBSCALLBACK','GLUNEXTCONTOUR', - 'GLUNEWTESS','GLUNEWQUADRIC','GLUNEWNURBSRENDERER','GLULOOKAT','GLULOADSAMPLINGMATRICES','GLUGETTESSPROPERTY','GLUGETSTRING','GLUGETNURBSPROPERTY', - 'GLUERRORSTRING','GLUENDTRIM','GLUENDSURFACE','GLUENDPOLYGON','GLUENDCURVE','GLUDISK','GLUDELETETESS','GLUDELETEQUADRIC', - 'GLUDELETENURBSRENDERER','GLUCYLINDER','GLUBUILD2DMIPMAPS','GLUBUILD1DMIPMAPS','GLUBEGINTRIM','GLUBEGINSURFACE','GLUBEGINPOLYGON','GLUBEGINCURVE', - 'GLTRANSLATEF','GLTRANSLATED','GLTEXSUBIMAGE2D','GLTEXSUBIMAGE1D','GLTEXPARAMETERIV','GLTEXPARAMETERI','GLTEXPARAMETERFV','GLTEXPARAMETERF', - 'GLTEXIMAGE2D','GLTEXIMAGE1D','GLTEXGENIV','GLTEXGENI','GLTEXGENFV','GLTEXGENF','GLTEXGENDV','GLTEXGEND', - 'GLTEXENVIV','GLTEXENVI','GLTEXENVFV','GLTEXENVF','GLTEXCOORDPOINTER','GLTEXCOORD4SV','GLTEXCOORD4S','GLTEXCOORD4IV', - 'GLTEXCOORD4I','GLTEXCOORD4FV','GLTEXCOORD4F','GLTEXCOORD4DV','GLTEXCOORD4D','GLTEXCOORD3SV','GLTEXCOORD3S','GLTEXCOORD3IV', - 'GLTEXCOORD3I','GLTEXCOORD3FV','GLTEXCOORD3F','GLTEXCOORD3DV','GLTEXCOORD3D','GLTEXCOORD2SV','GLTEXCOORD2S','GLTEXCOORD2IV', - 'GLTEXCOORD2I','GLTEXCOORD2FV','GLTEXCOORD2F','GLTEXCOORD2DV','GLTEXCOORD2D','GLTEXCOORD1SV','GLTEXCOORD1S','GLTEXCOORD1IV', - 'GLTEXCOORD1I','GLTEXCOORD1FV','GLTEXCOORD1F','GLTEXCOORD1DV','GLTEXCOORD1D','GLSTENCILOP','GLSTENCILMASK','GLSTENCILFUNC', - 'GLSHADEMODEL','GLSELECTBUFFER','GLSCISSOR','GLSCALEF','GLSCALED','GLROTATEF','GLROTATED','GLRENDERMODE', - 'GLRECTSV','GLRECTS','GLRECTIV','GLRECTI','GLRECTFV','GLRECTF','GLRECTDV','GLRECTD', - 'GLREADPIXELS','GLREADBUFFER','GLRASTERPOS4SV','GLRASTERPOS4S','GLRASTERPOS4IV','GLRASTERPOS4I','GLRASTERPOS4FV','GLRASTERPOS4F', - 'GLRASTERPOS4DV','GLRASTERPOS4D','GLRASTERPOS3SV','GLRASTERPOS3S','GLRASTERPOS3IV','GLRASTERPOS3I','GLRASTERPOS3FV','GLRASTERPOS3F', - 'GLRASTERPOS3DV','GLRASTERPOS3D','GLRASTERPOS2SV','GLRASTERPOS2S','GLRASTERPOS2IV','GLRASTERPOS2I','GLRASTERPOS2FV','GLRASTERPOS2F', - 'GLRASTERPOS2DV','GLRASTERPOS2D','GLPUSHNAME','GLPUSHMATRIX','GLPUSHCLIENTATTRIB','GLPUSHATTRIB','GLPRIORITIZETEXTURES','GLPOPNAME', - 'GLPOPMATRIX','GLPOPCLIENTATTRIB','GLPOPATTRIB','GLPOLYGONSTIPPLE','GLPOLYGONOFFSET','GLPOLYGONMODE','GLPOINTSIZE','GLPIXELZOOM', - 'GLPIXELTRANSFERI','GLPIXELTRANSFERF','GLPIXELSTOREI','GLPIXELSTOREF','GLPIXELMAPUSV','GLPIXELMAPUIV','GLPIXELMAPFV','GLPASSTHROUGH', - 'GLORTHO','GLNORMALPOINTER','GLNORMAL3SV','GLNORMAL3S','GLNORMAL3IV','GLNORMAL3I','GLNORMAL3FV','GLNORMAL3F', - 'GLNORMAL3DV','GLNORMAL3D','GLNORMAL3BV','GLNORMAL3B','GLNEWLIST','GLMULTMATRIXF','GLMULTMATRIXD','GLMATRIXMODE', - 'GLMATERIALIV','GLMATERIALI','GLMATERIALFV','GLMATERIALF','GLMAPGRID2F','GLMAPGRID2D','GLMAPGRID1F','GLMAPGRID1D', - 'GLMAP2F','GLMAP2D','GLMAP1F','GLMAP1D','GLLOGICOP','GLLOADNAME','GLLOADMATRIXF','GLLOADMATRIXD', - 'GLLOADIDENTITY','GLLISTBASE','GLLINEWIDTH','GLLINESTIPPLE','GLLIGHTMODELIV','GLLIGHTMODELI','GLLIGHTMODELFV','GLLIGHTMODELF', - 'GLLIGHTIV','GLLIGHTI','GLLIGHTFV','GLLIGHTF','GLISTEXTURE','GLISLIST','GLISENABLED','GLINTERLEAVEDARRAYS', - 'GLINITNAMES','GLINDEXUBV','GLINDEXUB','GLINDEXSV','GLINDEXS','GLINDEXPOINTER','GLINDEXMASK','GLINDEXIV', - 'GLINDEXI','GLINDEXFV','GLINDEXF','GLINDEXDV','GLINDEXD','GLHINT','GLGETTEXPARAMETERIV','GLGETTEXPARAMETERFV', - 'GLGETTEXLEVELPARAMETERIV','GLGETTEXLEVELPARAMETERFV','GLGETTEXIMAGE','GLGETTEXGENIV','GLGETTEXGENFV','GLGETTEXGENDV','GLGETTEXENVIV','GLGETTEXENVFV', - 'GLGETSTRING','GLGETPOLYGONSTIPPLE','GLGETPOINTERV','GLGETPIXELMAPUSV','GLGETPIXELMAPUIV','GLGETPIXELMAPFV','GLGETMATERIALIV','GLGETMATERIALFV', - 'GLGETMAPIV','GLGETMAPFV','GLGETMAPDV','GLGETLIGHTIV','GLGETLIGHTFV','GLGETINTEGERV','GLGETFLOATV','GLGETERROR', - 'GLGETDOUBLEV','GLGETCLIPPLANE','GLGETBOOLEANV','GLGENTEXTURES','GLGENLISTS','GLFRUSTUM','GLFRONTFACE','GLFOGIV', - 'GLFOGI','GLFOGFV','GLFOGF','GLFLUSH','GLFINISH','GLFEEDBACKBUFFER','GLEVALPOINT2','GLEVALPOINT1', - 'GLEVALMESH2','GLEVALMESH1','GLEVALCOORD2FV','GLEVALCOORD2F','GLEVALCOORD2DV','GLEVALCOORD2D','GLEVALCOORD1FV','GLEVALCOORD1F', - 'GLEVALCOORD1DV','GLEVALCOORD1D','GLENDLIST','GLEND','GLENABLECLIENTSTATE','GLENABLE','GLEDGEFLAGV','GLEDGEFLAGPOINTER', - 'GLEDGEFLAG','GLDRAWPIXELS','GLDRAWELEMENTS','GLDRAWBUFFER','GLDRAWARRAYS','GLDISABLECLIENTSTATE','GLDISABLE','GLDEPTHRANGE', - 'GLDEPTHMASK','GLDEPTHFUNC','GLDELETETEXTURES','GLDELETELISTS','GLCULLFACE','GLCOPYTEXSUBIMAGE2D','GLCOPYTEXSUBIMAGE1D','GLCOPYTEXIMAGE2D', - 'GLCOPYTEXIMAGE1D','GLCOPYPIXELS','GLCOLORPOINTER','GLCOLORMATERIAL','GLCOLORMASK','GLCOLOR4USV','GLCOLOR4US','GLCOLOR4UIV', - 'GLCOLOR4UI','GLCOLOR4UBV','GLCOLOR4UB','GLCOLOR4SV','GLCOLOR4S','GLCOLOR4IV','GLCOLOR4I','GLCOLOR4FV', - 'GLCOLOR4F','GLCOLOR4DV','GLCOLOR4D','GLCOLOR4BV','GLCOLOR4B','GLCOLOR3USV','GLCOLOR3US','GLCOLOR3UIV', - 'GLCOLOR3UI','GLCOLOR3UBV','GLCOLOR3UB','GLCOLOR3SV','GLCOLOR3S','GLCOLOR3IV','GLCOLOR3I','GLCOLOR3FV', - 'GLCOLOR3F','GLCOLOR3DV','GLCOLOR3D','GLCOLOR3BV','GLCOLOR3B','GLCLIPPLANE','GLCLEARSTENCIL','GLCLEARINDEX', - 'GLCLEARDEPTH','GLCLEARCOLOR','GLCLEARACCUM','GLCLEAR','GLCALLLISTS','GLCALLLIST','GLBLENDFUNC','GLBITMAP', - 'GLBINDTEXTURE','GLBEGIN','GLARRAYELEMENT','GLARETEXTURESRESIDENT','GLALPHAFUNC','GLACCUM'), - 2 => array( - '$BEL','$BS','$CR','$CRLF','$DQ','$DT_DATE_SEPARATOR','$DT_LANGUAGE','$DT_TIME_SEPARATOR', - '$ESC','$FF','$LF','$NUL','$PC_SD_MY_PC','$SPC','$SQL_OPT_TRACE_FILE_DEFAULT','$SQL_SPEC_STRING', - '$TAB','$TRACKBAR_CLASS','$VT','%ACM_OPEN','%ACM_OPENW','%ACM_PLAY','%ACM_STOP','%ACN_START', - '%ACN_STOP','%ACS_AUTOPLAY','%ACS_CENTER','%ACS_TIMER','%ACS_TRANSPARENT','%APP_COUNTER_FUNLOOKUP','%APP_COUNTER_KEYLOOKUP','%APP_COUNTER_LOOKUP', - '%APP_COUNTER_TESTALPHA','%APP_COUNTER_UDTLOOKUP','%APP_COUNTER_VARLOOKUP','%APP_TIMER_EXECTOTAL','%APP_TIMER_INIT','%APP_TIMER_LOAD','%APP_TIMER_PREPROCESSOR','%AW_ACTIVATE', - '%AW_BLEND','%AW_CENTER','%AW_HIDE','%AW_HOR_NEGATIVE','%AW_HOR_POSITIVE','%AW_SLIDE','%AW_VER_NEGATIVE','%AW_VER_POSITIVE', - '%BCM_FIRST','%BLACK','%BLUE','%BM_GETCHECK','%BM_SETCHECK','%BST_CHECKED','%BST_UNCHECKED','%BS_AUTOCHECKBOX', - '%BS_BOTTOM','%BS_CENTER','%BS_DEFAULT','%BS_DEFPUSHBUTTON','%BS_FLAT','%BS_LEFT','%BS_LEFTTEXT','%BS_MULTILINE', - '%BS_NOTIFY','%BS_OWNERDRAW','%BS_PUSHLIKE','%BS_RIGHT','%BS_TOP','%BS_VCENTER','%BUNDLE_BUILDER_CANCELLED','%CBM_FIRST', - '%CBN_CLOSEUP','%CBN_DBLCLK','%CBN_DROPDOWN','%CBN_EDITCHANGE','%CBN_EDITUPDATE','%CBN_ERRSPACE','%CBN_KILLFOCUS','%CBN_SELCANCEL', - '%CBN_SELCHANGE','%CBN_SELENDCANCEL','%CBN_SELENDOK','%CBN_SETFOCUS','%CBS_AUTOHSCROLL','%CBS_DISABLENOSCROLL','%CBS_DROPDOWN','%CBS_DROPDOWNLIST', - '%CBS_HASSTRINGS','%CBS_LOWERCASE','%CBS_NOINTEGRALHEIGHT','%CBS_SIMPLE','%CBS_SORT','%CBS_UPPERCASE','%CB_SELECTSTRING','%CCM_FIRST', - '%CC_ANYCOLOR','%CC_ENABLEHOOK','%CC_ENABLETEMPLATE','%CC_ENABLETEMPLATEHANDLE','%CC_FULLOPEN','%CC_PREVENTFULLOPEN','%CC_RGBINIT','%CC_SHOWHELP', - '%CC_SOLIDCOLOR','%CFE_BOLD','%CFE_ITALIC','%CFE_LINK','%CFE_PROTECTED','%CFE_STRIKEOUT','%CFE_UNDERLINE','%CFM_ANIMATION', - '%CFM_BACKCOLOR','%CFM_BOLD','%CFM_CHARSET','%CFM_COLOR','%CFM_FACE','%CFM_ITALIC','%CFM_KERNING','%CFM_LCID', - '%CFM_LINK','%CFM_OFFSET','%CFM_PROTECTED','%CFM_REVAUTHOR','%CFM_SIZE','%CFM_SPACING','%CFM_STRIKEOUT','%CFM_STYLE', - '%CFM_UNDERLINE','%CFM_UNDERLINETYPE','%CFM_WEIGHT','%CGI_ACCEPT_FILE_UPLOAD','%CGI_AUTO_ADD_SPECIAL_CHARS_PREFIX','%CGI_AUTO_CREATE_VARS','%CGI_BUFFERIZE_OUTPUT','%CGI_DOUBLE_QUOTE', - '%CGI_FILE_UPLOAD_BASEPATH','%CGI_FORCE_SESSION_VALIDATION','%CGI_MAX_BYTE_FROM_STD_IN','%CGI_REQUEST_METHOD_GET','%CGI_REQUEST_METHOD_POST','%CGI_SESSION_FILE_BASEPATH','%CGI_SINGLE_QUOTE','%CGI_SPECIAL_CHARS_PREFIX', - '%CGI_TEMPORARY_UPLOAD_PATH','%CGI_UPLOAD_CAN_OVERWRITE','%CGI_WRITE_LOG_FILE','%CGI_WRITE_VARS_INTO_LOG_FILE','%CONOLE_ATTACH_PARENT_PROCESS','%CONSOLE_BACKGROUND_BLUE','%CONSOLE_BACKGROUND_GREEN','%CONSOLE_BACKGROUND_INTENSITY', - '%CONSOLE_BACKGROUND_RED','%CONSOLE_BOX_FLAG_3DOFF','%CONSOLE_BOX_FLAG_3DON','%CONSOLE_BOX_FLAG_SHADOW','%CONSOLE_COMMON_LVB_GRID_HORIZONTAL','%CONSOLE_COMMON_LVB_GRID_LVERTICAL','%CONSOLE_COMMON_LVB_GRID_RVERTICAL','%CONSOLE_COMMON_LVB_LEADING_BYTE', - '%CONSOLE_COMMON_LVB_REVERSE_VIDEO','%CONSOLE_COMMON_LVB_TRAILING_BYTE','%CONSOLE_COMMON_LVB_UNDERSCORE','%CONSOLE_CTRL_BREAK_EVENT','%CONSOLE_CTRL_C_EVENT','%CONSOLE_DOUBLE_CLICK','%CONSOLE_ENABLE_AUTO_POSITION','%CONSOLE_ENABLE_ECHO_INPUT', - '%CONSOLE_ENABLE_EXTENDED_FLAGS','%CONSOLE_ENABLE_INSERT_MODE','%CONSOLE_ENABLE_LINE_INPUT','%CONSOLE_ENABLE_MOUSE_INPUT','%CONSOLE_ENABLE_PROCESSED_INPUT','%CONSOLE_ENABLE_PROCESSED_OUTPUT','%CONSOLE_ENABLE_QUICK_EDIT_MODE','%CONSOLE_ENABLE_WINDOW_INPUT', - '%CONSOLE_ENABLE_WRAP_AT_EOL_OUTPUT','%CONSOLE_FOREGROUND_BLUE','%CONSOLE_FOREGROUND_GREEN','%CONSOLE_FOREGROUND_INTENSITY','%CONSOLE_FOREGROUND_RED','%CONSOLE_LBUTTON','%CONSOLE_LINE_HORIZONTAL','%CONSOLE_LINE_VERTICAL', - '%CONSOLE_MBUTTON','%CONSOLE_MOUSE_MOVED','%CONSOLE_MOUSE_WHEELED','%CONSOLE_RBUTTON','%CONSOLE_SCROLLBUF_DOWN','%CONSOLE_SCROLLBUF_UP','%CONSOLE_SCROLLWND_ABSOLUTE','%CONSOLE_SCROLLWND_RELATIVE', - '%CONSOLE_STD_ERROR_HANDLE','%CONSOLE_STD_INPUT_HANDLE','%CONSOLE_STD_OUTPUT_HANDLE','%CONSOLE_SW_FORCEMINIMIZE','%CONSOLE_SW_HIDE','%CONSOLE_SW_MAXIMIZE','%CONSOLE_SW_MINIMIZE','%CONSOLE_SW_RESTORE', - '%CONSOLE_SW_SHOW','%CONSOLE_SW_SHOWDEFAULT','%CONSOLE_SW_SHOWMAXIMIZED','%CONSOLE_SW_SHOWMINIMIZED','%CONSOLE_SW_SHOWMINNOACTIVE','%CONSOLE_SW_SHOWNA','%CONSOLE_SW_SHOWNOACTIVATE','%CONSOLE_SW_SHOWNORMAL', - '%CONSOLE_UNAVAILABLE','%CRYPTO_CALG_DES','%CRYPTO_CALG_RC2','%CRYPTO_CALG_RC4','%CRYPTO_PROV_DH_SCHANNEL','%CRYPTO_PROV_DSS','%CRYPTO_PROV_DSS_DH','%CRYPTO_PROV_FORTEZZA', - '%CRYPTO_PROV_MS_EXCHANGE','%CRYPTO_PROV_RSA_FULL','%CRYPTO_PROV_RSA_SCHANNEL','%CRYPTO_PROV_RSA_SIG','%CRYPTO_PROV_SSL','%CSIDL_ADMINTOOLS','%CSIDL_ALTSTARTUP','%CSIDL_APPDATA', - '%CSIDL_BITBUCKET','%CSIDL_CDBURN_AREA','%CSIDL_COMMON_ADMINTOOLS','%CSIDL_COMMON_ALTSTARTUP','%CSIDL_COMMON_APPDATA','%CSIDL_COMMON_DESKTOPDIRECTORY','%CSIDL_COMMON_DOCUMENTS','%CSIDL_COMMON_FAVORITES', - '%CSIDL_COMMON_MUSIC','%CSIDL_COMMON_PICTURES','%CSIDL_COMMON_PROGRAMS','%CSIDL_COMMON_STARTMENU','%CSIDL_COMMON_STARTUP','%CSIDL_COMMON_TEMPLATES','%CSIDL_COMMON_VIDEO','%CSIDL_CONTROLS', - '%CSIDL_COOKIES','%CSIDL_DESKTOP','%CSIDL_DESKTOPDIRECTORY','%CSIDL_DRIVES','%CSIDL_FAVORITES','%CSIDL_FLAG_CREATE','%CSIDL_FONTS','%CSIDL_HISTORY', - '%CSIDL_INTERNET','%CSIDL_INTERNET_CACHE','%CSIDL_LOCAL_APPDATA','%CSIDL_MYDOCUMENTS','%CSIDL_MYMUSIC','%CSIDL_MYPICTURES','%CSIDL_MYVIDEO','%CSIDL_NETHOOD', - '%CSIDL_NETWORK','%CSIDL_PERSONAL','%CSIDL_PRINTERS','%CSIDL_PRINTHOOD','%CSIDL_PROFILE','%CSIDL_PROGRAMS','%CSIDL_PROGRAM_FILES','%CSIDL_PROGRAM_FILES_COMMON', - '%CSIDL_RECENT','%CSIDL_SENDTO','%CSIDL_STARTMENU','%CSIDL_STARTUP','%CSIDL_SYSTEM','%CSIDL_TEMPLATES','%CSIDL_WINDOWS','%CW_USEDEFAULT', - '%CYAN','%DATE_TIME_FILE_CREATION','%DATE_TIME_LAST_FILE_ACCESS','%DATE_TIME_LAST_FILE_WRITE','%DICTIONARY_MEMINFO_DATA','%DICTIONARY_MEMINFO_KEYS','%DICTIONARY_MEMINFO_TOTAL','%DICTIONARY_SORTDESCENDING', - '%DICTIONARY_SORTKEYS','%DSCAPS_CERTIFIED','%DSCAPS_CONTINUOUSRATE','%DSCAPS_EMULDRIVER','%DSCAPS_SECONDARY16BIT','%DSCAPS_SECONDARY8BIT','%DSCAPS_SECONDARYMONO','%DSCAPS_SECONDARYSTEREO', - '%DSCCAPS_CERTIFIED','%DSCCAPS_EMULDRIVER','%DS_3DLOOK','%DS_ABSALIGN','%DS_CENTER','%DS_CENTERMOUSE','%DS_CONTEXTHELP','%DS_CONTROL', - '%DS_MODALFRAME','%DS_NOFAILCREATE','%DS_SETFONT','%DS_SETFOREGROUND','%DS_SYSMODAL','%DTM_FIRST','%DTM_GETMCCOLOR','%DTM_GETMCFONT', - '%DTM_GETMONTHCAL','%DTM_GETRANGE','%DTM_GETSYSTEMTIME','%DTM_SETFORMAT','%DTM_SETFORMATW','%DTM_SETMCCOLOR','%DTM_SETMCFONT','%DTM_SETRANGE', - '%DTM_SETSYSTEMTIME','%DTN_CLOSEUP','%DTN_DATETIMECHANGE','%DTN_DROPDOWN','%DTN_FORMAT','%DTN_FORMATQUERY','%DTN_FORMATQUERYW','%DTN_FORMATW', - '%DTN_USERSTRING','%DTN_USERSTRINGW','%DTN_WMKEYDOWN','%DTN_WMKEYDOWNW','%DTS_APPCANPARSE','%DTS_LONGDATEFORMAT','%DTS_RIGHTALIGN','%DTS_SHORTDATECENTURYFORMAT', - '%DTS_SHORTDATEFORMAT','%DTS_SHOWNONE','%DTS_TIMEFORMAT','%DTS_UPDOWN','%DT_DATE_CENTURY','%DT_DATE_OK','%DT_DAY_IN_YEAR','%DT_DIFF_IN_DAYS', - '%DT_DIFF_IN_HOURS','%DT_DIFF_IN_MINUTES','%DT_DIFF_IN_SECONDS','%DT_HOURS_IN_DAY','%DT_MINUTES_IN_HOUR','%DT_SECONDS_IN_DAY','%DT_SECONDS_IN_HOUR','%DT_SECONDS_IN_MINUTE', - '%DT_SECONDS_IN_YEAR','%DT_USE_LONG_FORM','%DT_USE_SHORT_FORM','%DT_WRONG_DATE','%DT_WRONG_DAY','%DT_WRONG_MONTH','%ECM_FIRST','%ECOOP_AND', - '%ECOOP_OR','%ECOOP_SET','%ECOOP_XOR','%ECO_AUTOHSCROLL','%ECO_AUTOVSCROLL','%ECO_AUTOWORDSELECTION','%ECO_NOHIDESEL','%ECO_READONLY', - '%ECO_SELECTIONBAR','%ECO_WANTRETURN','%EM_AUTOURLDETECT','%EM_CANPASTE','%EM_CANREDO','%EM_CANUNDO','%EM_CHARFROMPOS','%EM_DISPLAYBAND', - '%EM_EMPTYUNDOBUFFER','%EM_EXGETSEL','%EM_EXLIMITTEXT','%EM_EXLINEFROMCHAR','%EM_EXSETSEL','%EM_FINDTEXT','%EM_FINDTEXTEX','%EM_FINDWORDBREAK', - '%EM_FMTLINES','%EM_FORMATRANGE','%EM_GETAUTOURLDETECT','%EM_GETCHARFORMAT','%EM_GETEDITSTYLE','%EM_GETEVENTMASK','%EM_GETFIRSTVISIBLELINE','%EM_GETHANDLE', - '%EM_GETIMESTATUS','%EM_GETLIMITTEXT','%EM_GETLINE','%EM_GETLINECOUNT','%EM_GETMARGINS','%EM_GETMODIFY','%EM_GETOLEINTERFACE','%EM_GETOPTIONS', - '%EM_GETPARAFORMAT','%EM_GETPASSWORDCHAR','%EM_GETRECT','%EM_GETREDONAME','%EM_GETSCROLLPOS','%EM_GETSEL','%EM_GETSELTEXT','%EM_GETTEXTMODE', - '%EM_GETTEXTRANGE','%EM_GETTHUMB','%EM_GETUNDONAME','%EM_GETWORDBREAKPROC','%EM_GETWORDBREAKPROCEX','%EM_HIDESELECTION','%EM_LIMITTEXT','%EM_LINEFROMCHAR', - '%EM_LINEINDEX','%EM_LINELENGTH','%EM_LINESCROLL','%EM_PASTESPECIAL','%EM_POSFROMCHAR','%EM_REDO','%EM_REPLACESEL','%EM_REQUESTRESIZE', - '%EM_SCROLL','%EM_SCROLLCARET','%EM_SELECTIONTYPE','%EM_SETBKGNDCOLOR','%EM_SETCHARFORMAT','%EM_SETEDITSTYLE','%EM_SETEVENTMASK','%EM_SETHANDLE', - '%EM_SETIMESTATUS','%EM_SETLIMITTEXT','%EM_SETMARGINS','%EM_SETMODIFY','%EM_SETOLECALLBACK','%EM_SETOPTIONS','%EM_SETPARAFORMAT','%EM_SETPASSWORDCHAR', - '%EM_SETREADONLY','%EM_SETRECT','%EM_SETRECTNP','%EM_SETSCROLLPOS','%EM_SETSEL','%EM_SETTABSTOPS','%EM_SETTARGETDEVICE','%EM_SETTEXTMODE', - '%EM_SETUNDOLIMIT','%EM_SETWORDBREAKPROC','%EM_SETWORDBREAKPROCEX','%EM_SETWORDWRAPMODE','%EM_SETZOOM','%EM_STOPGROUPTYPING','%EM_STREAMIN','%EM_STREAMOUT', - '%EM_UNDO','%ENM_CHANGE','%ENM_CORRECTTEXT','%ENM_DRAGDROPDONE','%ENM_DROPFILES','%ENM_KEYEVENTS','%ENM_MOUSEEVENTS','%ENM_NONE', - '%ENM_PARAGRAPHEXPANDED','%ENM_PROTECTED','%ENM_REQUESTRESIZE','%ENM_SCROLL','%ENM_SCROLLEVENTS','%ENM_SELCHANGE','%ENM_UPDATE','%EN_CHANGE', - '%EN_MSGFILTER','%EN_SELCHANGE','%EN_UPDATE','%ES_AUTOHSCROLL','%ES_AUTOVSCROLL','%ES_CENTER','%ES_DISABLENOSCROLL','%ES_EX_NOCALLOLEINIT', - '%ES_LEFT','%ES_LOWERCASE','%ES_MULTILINE','%ES_NOHIDESEL','%ES_NOOLEDRAGDROP','%ES_NUMBER','%ES_OEMCONVERT','%ES_PASSWORD', - '%ES_READONLY','%ES_RIGHT','%ES_SAVESEL','%ES_SELECTIONBAR','%ES_SUNKEN','%ES_UPPERCASE','%ES_WANTRETURN','%EVAL_EXEC_STRING', - '%FALSE','%FILE_ADDPATH','%FILE_ARCHIVE','%FILE_BUILDVERSION','%FILE_HIDDEN','%FILE_MAJORVERSION','%FILE_MINORVERSION','%FILE_NORMAL', - '%FILE_READONLY','%FILE_REVISIONVERSION','%FILE_SUBDIR','%FILE_SYSTEM','%FILE_VLABEL','%FTP_GET_CONNECT_STATUS','%FTP_GET_FILE_BYTES_RCVD','%FTP_GET_FILE_BYTES_SENT', - '%FTP_GET_LAST_RESPONSE','%FTP_GET_LOCAL_IP','%FTP_GET_SERVER_IP','%FTP_GET_TOTAL_BYTES_RCVD','%FTP_GET_TOTAL_BYTES_SENT','%FTP_LIST_FULLLIST','%FTP_LIST_FULLLISTDIR','%FTP_LIST_FULLLISTFILE', - '%FTP_SET_ASYNC','%FTP_SET_CONNECT_WAIT','%FTP_SET_MAX_LISTEN_WAIT','%FTP_SET_MAX_RESPONSE_WAIT','%FTP_SET_PASSIVE','%FTP_SET_SYNC','%FW_BLACK','%FW_BOLD', - '%FW_DEMIBOLD','%FW_DONTCARE','%FW_EXTRABOLD','%FW_EXTRALIGHT','%FW_HEAVY','%FW_LIGHT','%FW_MEDIUM','%FW_NORMAL', - '%FW_REGULAR','%FW_SEMIBOLD','%FW_THIN','%FW_ULTRABOLD','%FW_ULTRALIGHT','%GDTR_MAX','%GDTR_MIN','%GLU_AUTO_LOAD_MATRIX', - '%GLU_BEGIN','%GLU_CCW','%GLU_CULLING','%GLU_CW','%GLU_DISPLAY_MODE','%GLU_DOMAIN_DISTANCE','%GLU_EDGE_FLAG','%GLU_END', - '%GLU_ERROR','%GLU_EXTENSIONS','%GLU_EXTERIOR','%GLU_FALSE','%GLU_FILL','%GLU_FLAT','%GLU_INCOMPATIBLE_GL_VERSION','%GLU_INSIDE', - '%GLU_INTERIOR','%GLU_INVALID_ENUM','%GLU_INVALID_VALUE','%GLU_LINE','%GLU_MAP1_TRIM_2','%GLU_MAP1_TRIM_3','%GLU_NONE','%GLU_NURBS_ERROR1', - '%GLU_NURBS_ERROR10','%GLU_NURBS_ERROR11','%GLU_NURBS_ERROR12','%GLU_NURBS_ERROR13','%GLU_NURBS_ERROR14','%GLU_NURBS_ERROR15','%GLU_NURBS_ERROR16','%GLU_NURBS_ERROR17', - '%GLU_NURBS_ERROR18','%GLU_NURBS_ERROR19','%GLU_NURBS_ERROR2','%GLU_NURBS_ERROR20','%GLU_NURBS_ERROR21','%GLU_NURBS_ERROR22','%GLU_NURBS_ERROR23','%GLU_NURBS_ERROR24', - '%GLU_NURBS_ERROR25','%GLU_NURBS_ERROR26','%GLU_NURBS_ERROR27','%GLU_NURBS_ERROR28','%GLU_NURBS_ERROR29','%GLU_NURBS_ERROR3','%GLU_NURBS_ERROR30','%GLU_NURBS_ERROR31', - '%GLU_NURBS_ERROR32','%GLU_NURBS_ERROR33','%GLU_NURBS_ERROR34','%GLU_NURBS_ERROR35','%GLU_NURBS_ERROR36','%GLU_NURBS_ERROR37','%GLU_NURBS_ERROR4','%GLU_NURBS_ERROR5', - '%GLU_NURBS_ERROR6','%GLU_NURBS_ERROR7','%GLU_NURBS_ERROR8','%GLU_NURBS_ERROR9','%GLU_OUTLINE_PATCH','%GLU_OUTLINE_POLYGON','%GLU_OUTSIDE','%GLU_OUT_OF_MEMORY', - '%GLU_PARAMETRIC_ERROR','%GLU_PARAMETRIC_TOLERANCE','%GLU_PATH_LENGTH','%GLU_POINT','%GLU_SAMPLING_METHOD','%GLU_SAMPLING_TOLERANCE','%GLU_SILHOUETTE','%GLU_SMOOTH', - '%GLU_TESS_BEGIN','%GLU_TESS_BEGIN_DATA','%GLU_TESS_BOUNDARY_ONLY','%GLU_TESS_COMBINE','%GLU_TESS_COMBINE_DATA','%GLU_TESS_COORD_TOO_LARGE','%GLU_TESS_EDGE_FLAG','%GLU_TESS_EDGE_FLAG_DATA', - '%GLU_TESS_END','%GLU_TESS_END_DATA','%GLU_TESS_ERROR','%GLU_TESS_ERROR1','%GLU_TESS_ERROR2','%GLU_TESS_ERROR3','%GLU_TESS_ERROR4','%GLU_TESS_ERROR5', - '%GLU_TESS_ERROR6','%GLU_TESS_ERROR7','%GLU_TESS_ERROR8','%GLU_TESS_ERROR_DATA','%GLU_TESS_MISSING_BEGIN_CONTOUR','%GLU_TESS_MISSING_BEGIN_POLYGON','%GLU_TESS_MISSING_END_CONTOUR','%GLU_TESS_MISSING_END_POLYGON', - '%GLU_TESS_NEED_COMBINE_CALLBACK','%GLU_TESS_TOLERANCE','%GLU_TESS_VERTEX','%GLU_TESS_VERTEX_DATA','%GLU_TESS_WINDING_ABS_GEQ_TWO','%GLU_TESS_WINDING_NEGATIVE','%GLU_TESS_WINDING_NONZERO','%GLU_TESS_WINDING_ODD', - '%GLU_TESS_WINDING_POSITIVE','%GLU_TESS_WINDING_RULE','%GLU_TRUE','%GLU_UNKNOWN','%GLU_U_STEP','%GLU_VERSION','%GLU_VERSION_1_1','%GLU_VERSION_1_2', - '%GLU_VERTEX','%GLU_V_STEP','%GL_2D','%GL_2_BYTES','%GL_3D','%GL_3D_COLOR','%GL_3D_COLOR_TEXTURE','%GL_3_BYTES', - '%GL_4D_COLOR_TEXTURE','%GL_4_BYTES','%GL_ABGR_EXT','%GL_ACCUM','%GL_ACCUM_ALPHA_BITS','%GL_ACCUM_BLUE_BITS','%GL_ACCUM_BUFFER_BIT','%GL_ACCUM_CLEAR_VALUE', - '%GL_ACCUM_GREEN_BITS','%GL_ACCUM_RED_BITS','%GL_ADD','%GL_ALL_ATTRIB_BITS','%GL_ALPHA','%GL_ALPHA12','%GL_ALPHA16','%GL_ALPHA4', - '%GL_ALPHA8','%GL_ALPHA_BIAS','%GL_ALPHA_BITS','%GL_ALPHA_SCALE','%GL_ALPHA_TEST','%GL_ALPHA_TEST_FUNC','%GL_ALPHA_TEST_REF','%GL_ALWAYS', - '%GL_AMBIENT','%GL_AMBIENT_AND_DIFFUSE','%GL_AND','%GL_AND_INVERTED','%GL_AND_REVERSE','%GL_ARRAY_ELEMENT_LOCK_COUNT_EXT','%GL_ARRAY_ELEMENT_LOCK_FIRST_EXT','%GL_ATTRIB_STACK_DEPTH', - '%GL_AUTO_NORMAL','%GL_AUX0','%GL_AUX1','%GL_AUX2','%GL_AUX3','%GL_AUX_BUFFERS','%GL_BACK','%GL_BACK_LEFT', - '%GL_BACK_RIGHT','%GL_BGRA_EXT','%GL_BGR_EXT','%GL_BITMAP','%GL_BITMAP_TOKEN','%GL_BLEND','%GL_BLEND_COLOR_EXT','%GL_BLEND_DST', - '%GL_BLEND_EQUATION_EXT','%GL_BLEND_SRC','%GL_BLUE','%GL_BLUE_BIAS','%GL_BLUE_BITS','%GL_BLUE_SCALE','%GL_BYTE','%GL_C3F_V3F', - '%GL_C4F_N3F_V3F','%GL_C4UB_V2F','%GL_C4UB_V3F','%GL_CCW','%GL_CLAMP','%GL_CLEAR','%GL_CLIENT_ALL_ATTRIB_BITS','%GL_CLIENT_ATTRIB_STACK_DEPTH', - '%GL_CLIENT_PIXEL_STORE_BIT','%GL_CLIENT_VERTEX_ARRAY_BIT','%GL_CLIP_PLANE0','%GL_CLIP_PLANE1','%GL_CLIP_PLANE2','%GL_CLIP_PLANE3','%GL_CLIP_PLANE4','%GL_CLIP_PLANE5', - '%GL_CLIP_VOLUME_CLIPPING_HINT_EXT','%GL_COEFF','%GL_COLOR','%GL_COLOR_ARRAY','%GL_COLOR_ARRAY_COUNT_EXT','%GL_COLOR_ARRAY_EXT','%GL_COLOR_ARRAY_POINTER','%GL_COLOR_ARRAY_POINTER_EXT', - '%GL_COLOR_ARRAY_SIZE','%GL_COLOR_ARRAY_SIZE_EXT','%GL_COLOR_ARRAY_STRIDE','%GL_COLOR_ARRAY_STRIDE_EXT','%GL_COLOR_ARRAY_TYPE','%GL_COLOR_ARRAY_TYPE_EXT','%GL_COLOR_BUFFER_BIT','%GL_COLOR_CLEAR_VALUE', - '%GL_COLOR_INDEX','%GL_COLOR_INDEX12_EXT','%GL_COLOR_INDEX16_EXT','%GL_COLOR_INDEX1_EXT','%GL_COLOR_INDEX2_EXT','%GL_COLOR_INDEX4_EXT','%GL_COLOR_INDEX8_EXT','%GL_COLOR_INDEXES', - '%GL_COLOR_LOGIC_OP','%GL_COLOR_MATERIAL','%GL_COLOR_MATERIAL_FACE','%GL_COLOR_MATERIAL_PARAMETER','%GL_COLOR_SUM_EXT','%GL_COLOR_TABLE_ALPHA_SIZE_EXT','%GL_COLOR_TABLE_BIAS_EXT','%GL_COLOR_TABLE_BLUE_SIZE_EXT', - '%GL_COLOR_TABLE_EXT','%GL_COLOR_TABLE_FORMAT_EXT','%GL_COLOR_TABLE_GREEN_SIZE_EXT','%GL_COLOR_TABLE_INTENSITY_SIZE_EXT','%GL_COLOR_TABLE_LUMINANCE_SIZE_EXT','%GL_COLOR_TABLE_RED_SIZE_EXT','%GL_COLOR_TABLE_SCALE_EXT','%GL_COLOR_TABLE_WIDTH_EXT', - '%GL_COLOR_WRITEMASK','%GL_COMPILE','%GL_COMPILE_AND_EXECUTE','%GL_CONSTANT_ALPHA_EXT','%GL_CONSTANT_ATTENUATION','%GL_CONSTANT_COLOR_EXT','%GL_CONVOLUTION_1D_EXT','%GL_CONVOLUTION_2D_EXT', - '%GL_CONVOLUTION_BORDER_MODE_EXT','%GL_CONVOLUTION_FILTER_BIAS_EXT','%GL_CONVOLUTION_FILTER_SCALE_EXT','%GL_CONVOLUTION_FORMAT_EXT','%GL_CONVOLUTION_HEIGHT_EXT','%GL_CONVOLUTION_WIDTH_EXT','%GL_COPY','%GL_COPY_INVERTED', - '%GL_COPY_PIXEL_TOKEN','%GL_CULL_FACE','%GL_CULL_FACE_MODE','%GL_CULL_VERTEX_EXT','%GL_CULL_VERTEX_EYE_POSITION_EXT','%GL_CULL_VERTEX_OBJECT_POSITION_EXT','%GL_CURRENT_BIT','%GL_CURRENT_COLOR', - '%GL_CURRENT_INDEX','%GL_CURRENT_NORMAL','%GL_CURRENT_RASTER_COLOR','%GL_CURRENT_RASTER_DISTANCE','%GL_CURRENT_RASTER_INDEX','%GL_CURRENT_RASTER_POSITION','%GL_CURRENT_RASTER_POSITION_VALID','%GL_CURRENT_RASTER_TEXTURE_COORDS', - '%GL_CURRENT_SECONDARY_COLOR_EXT','%GL_CURRENT_TEXTURE_COORDS','%GL_CW','%GL_DECAL','%GL_DECR','%GL_DEPTH','%GL_DEPTH_BIAS','%GL_DEPTH_BITS', - '%GL_DEPTH_BUFFER_BIT','%GL_DEPTH_CLEAR_VALUE','%GL_DEPTH_COMPONENT','%GL_DEPTH_FUNC','%GL_DEPTH_RANGE','%GL_DEPTH_SCALE','%GL_DEPTH_TEST','%GL_DEPTH_WRITEMASK', - '%GL_DIFFUSE','%GL_DITHER','%GL_DOMAIN','%GL_DONT_CARE','%GL_DOUBLE','%GL_DOUBLEBUFFER','%GL_DOUBLE_EXT','%GL_DRAW_BUFFER', - '%GL_DRAW_PIXEL_TOKEN','%GL_DST_ALPHA','%GL_DST_COLOR','%GL_EDGE_FLAG','%GL_EDGE_FLAG_ARRAY','%GL_EDGE_FLAG_ARRAY_COUNT_EXT','%GL_EDGE_FLAG_ARRAY_EXT','%GL_EDGE_FLAG_ARRAY_POINTER', - '%GL_EDGE_FLAG_ARRAY_POINTER_EXT','%GL_EDGE_FLAG_ARRAY_STRIDE','%GL_EDGE_FLAG_ARRAY_STRIDE_EXT','%GL_EMISSION','%GL_ENABLE_BIT','%GL_EQUAL','%GL_EQUIV','%GL_EVAL_BIT', - '%GL_EXP','%GL_EXP2','%GL_EXTENSIONS','%GL_EXT_ABGR','%GL_EXT_BGRA','%GL_EXT_BLEND_COLOR','%GL_EXT_BLEND_MINMAX','%GL_EXT_BLEND_SUBTRACT', - '%GL_EXT_CLIP_VOLUME_HINT','%GL_EXT_COLOR_TABLE','%GL_EXT_COMPILED_VERTEX_ARRAY','%GL_EXT_CONVOLUTION','%GL_EXT_CULL_VERTEX','%GL_EXT_HISTOGRAM','%GL_EXT_PACKED_PIXELS','%GL_EXT_PALETTED_TEXTURE', - '%GL_EXT_POLYGON_OFFSET','%GL_EXT_SECONDARY_COLOR','%GL_EXT_SEPARATE_SPECULAR_COLOR','%GL_EXT_VERTEX_ARRAY','%GL_EYE_LINEAR','%GL_EYE_PLANE','%GL_FALSE','%GL_FASTEST', - '%GL_FEEDBACK','%GL_FEEDBACK_BUFFER_POINTER','%GL_FEEDBACK_BUFFER_SIZE','%GL_FEEDBACK_BUFFER_TYPE','%GL_FILL','%GL_FLAT','%GL_FLOAT','%GL_FOG', - '%GL_FOG_BIT','%GL_FOG_COLOR','%GL_FOG_DENSITY','%GL_FOG_END','%GL_FOG_HINT','%GL_FOG_INDEX','%GL_FOG_MODE','%GL_FOG_START', - '%GL_FRONT','%GL_FRONT_AND_BACK','%GL_FRONT_FACE','%GL_FRONT_LEFT','%GL_FRONT_RIGHT','%GL_FUNC_ADD_EXT','%GL_FUNC_REVERSE_SUBTRACT_EXT','%GL_FUNC_SUBTRACT_EXT', - '%GL_GEQUAL','%GL_GREATER','%GL_GREEN','%GL_GREEN_BIAS','%GL_GREEN_BITS','%GL_GREEN_SCALE','%GL_HINT_BIT','%GL_HISTOGRAM_ALPHA_SIZE_EXT', - '%GL_HISTOGRAM_BLUE_SIZE_EXT','%GL_HISTOGRAM_EXT','%GL_HISTOGRAM_FORMAT_EXT','%GL_HISTOGRAM_GREEN_SIZE_EXT','%GL_HISTOGRAM_LUMINANCE_SIZE_EXT','%GL_HISTOGRAM_RED_SIZE_EXT','%GL_HISTOGRAM_SINK_EXT','%GL_HISTOGRAM_WIDTH_EXT', - '%GL_INCR','%GL_INDEX_ARRAY','%GL_INDEX_ARRAY_COUNT_EXT','%GL_INDEX_ARRAY_EXT','%GL_INDEX_ARRAY_POINTER','%GL_INDEX_ARRAY_POINTER_EXT','%GL_INDEX_ARRAY_STRIDE','%GL_INDEX_ARRAY_STRIDE_EXT', - '%GL_INDEX_ARRAY_TYPE','%GL_INDEX_ARRAY_TYPE_EXT','%GL_INDEX_BITS','%GL_INDEX_CLEAR_VALUE','%GL_INDEX_LOGIC_OP','%GL_INDEX_MODE','%GL_INDEX_OFFSET','%GL_INDEX_SHIFT', - '%GL_INDEX_WRITEMASK','%GL_INT','%GL_INTENSITY','%GL_INTENSITY12','%GL_INTENSITY16','%GL_INTENSITY4','%GL_INTENSITY8','%GL_INVALID_ENUM', - '%GL_INVALID_OPERATION','%GL_INVALID_VALUE','%GL_INVERT','%GL_KEEP','%GL_LEFT','%GL_LEQUAL','%GL_LESS','%GL_LIGHT0', - '%GL_LIGHT1','%GL_LIGHT2','%GL_LIGHT3','%GL_LIGHT4','%GL_LIGHT5','%GL_LIGHT6','%GL_LIGHT7','%GL_LIGHTING', - '%GL_LIGHTING_BIT','%GL_LIGHT_MODEL_AMBIENT','%GL_LIGHT_MODEL_COLOR_CONTROL_EXT','%GL_LIGHT_MODEL_LOCAL_VIEWER','%GL_LIGHT_MODEL_TWO_SIDE','%GL_LINE','%GL_LINEAR','%GL_LINEAR_ATTENUATION', - '%GL_LINEAR_MIPMAP_LINEAR','%GL_LINEAR_MIPMAP_NEAREST','%GL_LINES','%GL_LINE_BIT','%GL_LINE_LOOP','%GL_LINE_RESET_TOKEN','%GL_LINE_SMOOTH','%GL_LINE_SMOOTH_HINT', - '%GL_LINE_STIPPLE','%GL_LINE_STIPPLE_PATTERN','%GL_LINE_STIPPLE_REPEAT','%GL_LINE_STRIP','%GL_LINE_TOKEN','%GL_LINE_WIDTH','%GL_LINE_WIDTH_GRANULARITY','%GL_LINE_WIDTH_RANGE', - '%GL_LIST_BASE','%GL_LIST_BIT','%GL_LIST_INDEX','%GL_LIST_MODE','%GL_LOAD','%GL_LOGIC_OP','%GL_LOGIC_OP_MODE','%GL_LUMINANCE', - '%GL_LUMINANCE12','%GL_LUMINANCE12_ALPHA12','%GL_LUMINANCE12_ALPHA4','%GL_LUMINANCE16','%GL_LUMINANCE16_ALPHA16','%GL_LUMINANCE4','%GL_LUMINANCE4_ALPHA4','%GL_LUMINANCE6_ALPHA2', - '%GL_LUMINANCE8','%GL_LUMINANCE8_ALPHA8','%GL_LUMINANCE_ALPHA','%GL_MAP1_COLOR_4','%GL_MAP1_GRID_DOMAIN','%GL_MAP1_GRID_SEGMENTS','%GL_MAP1_INDEX','%GL_MAP1_NORMAL', - '%GL_MAP1_TEXTURE_COORD_1','%GL_MAP1_TEXTURE_COORD_2','%GL_MAP1_TEXTURE_COORD_3','%GL_MAP1_TEXTURE_COORD_4','%GL_MAP1_VERTEX_3','%GL_MAP1_VERTEX_4','%GL_MAP2_COLOR_4','%GL_MAP2_GRID_DOMAIN', - '%GL_MAP2_GRID_SEGMENTS','%GL_MAP2_INDEX','%GL_MAP2_NORMAL','%GL_MAP2_TEXTURE_COORD_1','%GL_MAP2_TEXTURE_COORD_2','%GL_MAP2_TEXTURE_COORD_3','%GL_MAP2_TEXTURE_COORD_4','%GL_MAP2_VERTEX_3', - '%GL_MAP2_VERTEX_4','%GL_MAP_COLOR','%GL_MAP_STENCIL','%GL_MATRIX_MODE','%GL_MAX_ATTRIB_STACK_DEPTH','%GL_MAX_CLIENT_ATTRIB_STACK_DEPTH','%GL_MAX_CLIP_PLANES','%GL_MAX_CONVOLUTION_HEIGHT_EXT', - '%GL_MAX_CONVOLUTION_WIDTH_EXT','%GL_MAX_EVAL_ORDER','%GL_MAX_EXT','%GL_MAX_LIGHTS','%GL_MAX_LIST_NESTING','%GL_MAX_MODELVIEW_STACK_DEPTH','%GL_MAX_NAME_STACK_DEPTH','%GL_MAX_PIXEL_MAP_TABLE', - '%GL_MAX_PROJECTION_STACK_DEPTH','%GL_MAX_TEXTURE_SIZE','%GL_MAX_TEXTURE_STACK_DEPTH','%GL_MAX_VIEWPORT_DIMS','%GL_MINMAX_EXT','%GL_MINMAX_FORMAT_EXT','%GL_MINMAX_SINK_EXT','%GL_MIN_EXT', - '%GL_MODELVIEW','%GL_MODELVIEW_MATRIX','%GL_MODELVIEW_STACK_DEPTH','%GL_MODULATE','%GL_MULT','%GL_N3F_V3F','%GL_NAME_STACK_DEPTH','%GL_NAND', - '%GL_NEAREST','%GL_NEAREST_MIPMAP_LINEAR','%GL_NEAREST_MIPMAP_NEAREST','%GL_NEVER','%GL_NICEST','%GL_NONE','%GL_NOOP','%GL_NOR', - '%GL_NORMALIZE','%GL_NORMAL_ARRAY','%GL_NORMAL_ARRAY_COUNT_EXT','%GL_NORMAL_ARRAY_EXT','%GL_NORMAL_ARRAY_POINTER','%GL_NORMAL_ARRAY_POINTER_EXT','%GL_NORMAL_ARRAY_STRIDE','%GL_NORMAL_ARRAY_STRIDE_EXT', - '%GL_NORMAL_ARRAY_TYPE','%GL_NORMAL_ARRAY_TYPE_EXT','%GL_NOTEQUAL','%GL_NO_ERROR','%GL_OBJECT_LINEAR','%GL_OBJECT_PLANE','%GL_ONE','%GL_ONE_MINUS_CONSTANT_ALPHA_EXT', - '%GL_ONE_MINUS_CONSTANT_COLOR_EXT','%GL_ONE_MINUS_DST_ALPHA','%GL_ONE_MINUS_DST_COLOR','%GL_ONE_MINUS_SRC_ALPHA','%GL_ONE_MINUS_SRC_COLOR','%GL_OR','%GL_ORDER','%GL_OR_INVERTED', - '%GL_OR_REVERSE','%GL_OUT_OF_MEMORY','%GL_PACK_ALIGNMENT','%GL_PACK_LSB_FIRST','%GL_PACK_ROW_LENGTH','%GL_PACK_SKIP_PIXELS','%GL_PACK_SKIP_ROWS','%GL_PACK_SWAP_BYTES', - '%GL_PASS_THROUGH_TOKEN','%GL_PERSPECTIVE_CORRECTION_HINT','%GL_PIXEL_MAP_A_TO_A','%GL_PIXEL_MAP_A_TO_A_SIZE','%GL_PIXEL_MAP_B_TO_B','%GL_PIXEL_MAP_B_TO_B_SIZE','%GL_PIXEL_MAP_G_TO_G','%GL_PIXEL_MAP_G_TO_G_SIZE', - '%GL_PIXEL_MAP_I_TO_A','%GL_PIXEL_MAP_I_TO_A_SIZE','%GL_PIXEL_MAP_I_TO_B','%GL_PIXEL_MAP_I_TO_B_SIZE','%GL_PIXEL_MAP_I_TO_G','%GL_PIXEL_MAP_I_TO_G_SIZE','%GL_PIXEL_MAP_I_TO_I','%GL_PIXEL_MAP_I_TO_I_SIZE', - '%GL_PIXEL_MAP_I_TO_R','%GL_PIXEL_MAP_I_TO_R_SIZE','%GL_PIXEL_MAP_R_TO_R','%GL_PIXEL_MAP_R_TO_R_SIZE','%GL_PIXEL_MAP_S_TO_S','%GL_PIXEL_MAP_S_TO_S_SIZE','%GL_PIXEL_MODE_BIT','%GL_POINT', - '%GL_POINTS','%GL_POINT_BIT','%GL_POINT_SIZE','%GL_POINT_SIZE_GRANULARITY','%GL_POINT_SIZE_RANGE','%GL_POINT_SMOOTH','%GL_POINT_SMOOTH_HINT','%GL_POINT_TOKEN', - '%GL_POLYGON','%GL_POLYGON_BIT','%GL_POLYGON_MODE','%GL_POLYGON_OFFSET_BIAS_EXT','%GL_POLYGON_OFFSET_EXT','%GL_POLYGON_OFFSET_FACTOR','%GL_POLYGON_OFFSET_FACTOR_EXT','%GL_POLYGON_OFFSET_FILL', - '%GL_POLYGON_OFFSET_LINE','%GL_POLYGON_OFFSET_POINT','%GL_POLYGON_OFFSET_UNITS','%GL_POLYGON_SMOOTH','%GL_POLYGON_SMOOTH_HINT','%GL_POLYGON_STIPPLE','%GL_POLYGON_STIPPLE_BIT','%GL_POLYGON_TOKEN', - '%GL_POSITION','%GL_POST_COLOR_MATRIX_COLOR_TABLE_EXT','%GL_POST_CONVOLUTION_ALPHA_BIAS_EXT','%GL_POST_CONVOLUTION_ALPHA_SCALE_EXT','%GL_POST_CONVOLUTION_BLUE_BIAS_EXT','%GL_POST_CONVOLUTION_BLUE_SCALE_EXT','%GL_POST_CONVOLUTION_COLOR_TABLE_EXT','%GL_POST_CONVOLUTION_GREEN_BIAS_EXT', - '%GL_POST_CONVOLUTION_GREEN_SCALE_EXT','%GL_POST_CONVOLUTION_RED_BIAS_EXT','%GL_POST_CONVOLUTION_RED_SCALE_EXT','%GL_PROJECTION','%GL_PROJECTION_MATRIX','%GL_PROJECTION_STACK_DEPTH','%GL_PROXY_COLOR_TABLE_EXT','%GL_PROXY_HISTOGRAM_EXT', - '%GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_EXT','%GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_EXT','%GL_PROXY_TEXTURE_1D','%GL_PROXY_TEXTURE_2D','%GL_Q','%GL_QUADRATIC_ATTENUATION','%GL_QUADS','%GL_QUAD_STRIP', - '%GL_R','%GL_R3_G3_B2','%GL_READ_BUFFER','%GL_RED','%GL_REDUCE_EXT','%GL_RED_BIAS','%GL_RED_BITS','%GL_RED_SCALE', - '%GL_RENDER','%GL_RENDERER','%GL_RENDER_MODE','%GL_REPEAT','%GL_REPLACE','%GL_RETURN','%GL_RGB','%GL_RGB10', - '%GL_RGB10_A2','%GL_RGB12','%GL_RGB16','%GL_RGB4','%GL_RGB5','%GL_RGB5_A1','%GL_RGB8','%GL_RGBA', - '%GL_RGBA12','%GL_RGBA16','%GL_RGBA2','%GL_RGBA4','%GL_RGBA8','%GL_RGBA_MODE','%GL_RIGHT','%GL_S', - '%GL_SCISSOR_BIT','%GL_SCISSOR_BOX','%GL_SCISSOR_TEST','%GL_SECONDARY_COLOR_ARRAY_EXT','%GL_SECONDARY_COLOR_ARRAY_POINTER_EXT','%GL_SECONDARY_COLOR_ARRAY_SIZE_EXT','%GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT','%GL_SECONDARY_COLOR_ARRAY_TYPE_EXT', - '%GL_SELECT','%GL_SELECTION_BUFFER_POINTER','%GL_SELECTION_BUFFER_SIZE','%GL_SEPARABLE_2D_EXT','%GL_SEPARATE_SPECULAR_COLOR_EXT','%GL_SET','%GL_SHADE_MODEL','%GL_SHININESS', - '%GL_SHORT','%GL_SINGLE_COLOR_EXT','%GL_SMOOTH','%GL_SPECULAR','%GL_SPHERE_MAP','%GL_SPOT_CUTOFF','%GL_SPOT_DIRECTION','%GL_SPOT_EXPONENT', - '%GL_SRC_ALPHA','%GL_SRC_ALPHA_SATURATE','%GL_SRC_COLOR','%GL_STACK_OVERFLOW','%GL_STACK_UNDERFLOW','%GL_STENCIL','%GL_STENCIL_BITS','%GL_STENCIL_BUFFER_BIT', - '%GL_STENCIL_CLEAR_VALUE','%GL_STENCIL_FAIL','%GL_STENCIL_FUNC','%GL_STENCIL_INDEX','%GL_STENCIL_PASS_DEPTH_FAIL','%GL_STENCIL_PASS_DEPTH_PASS','%GL_STENCIL_REF','%GL_STENCIL_TEST', - '%GL_STENCIL_VALUE_MASK','%GL_STENCIL_WRITEMASK','%GL_STEREO','%GL_SUBPIXEL_BITS','%GL_T','%GL_T2F_C3F_V3F','%GL_T2F_C4F_N3F_V3F','%GL_T2F_C4UB_V3F', - '%GL_T2F_N3F_V3F','%GL_T2F_V3F','%GL_T4F_C4F_N3F_V4F','%GL_T4F_V4F','%GL_TABLE_TOO_LARGE_EXT','%GL_TEXTURE','%GL_TEXTURE_1D','%GL_TEXTURE_2D', - '%GL_TEXTURE_ALPHA_SIZE','%GL_TEXTURE_BINDING_1D','%GL_TEXTURE_BINDING_2D','%GL_TEXTURE_BIT','%GL_TEXTURE_BLUE_SIZE','%GL_TEXTURE_BORDER','%GL_TEXTURE_BORDER_COLOR','%GL_TEXTURE_COMPONENTS', - '%GL_TEXTURE_COORD_ARRAY','%GL_TEXTURE_COORD_ARRAY_COUNT_EXT','%GL_TEXTURE_COORD_ARRAY_EXT','%GL_TEXTURE_COORD_ARRAY_POINTER','%GL_TEXTURE_COORD_ARRAY_POINTER_EXT','%GL_TEXTURE_COORD_ARRAY_SIZE','%GL_TEXTURE_COORD_ARRAY_SIZE_EXT','%GL_TEXTURE_COORD_ARRAY_STRIDE', - '%GL_TEXTURE_COORD_ARRAY_STRIDE_EXT','%GL_TEXTURE_COORD_ARRAY_TYPE','%GL_TEXTURE_COORD_ARRAY_TYPE_EXT','%GL_TEXTURE_ENV','%GL_TEXTURE_ENV_COLOR','%GL_TEXTURE_ENV_MODE','%GL_TEXTURE_GEN_MODE','%GL_TEXTURE_GEN_Q', - '%GL_TEXTURE_GEN_R','%GL_TEXTURE_GEN_S','%GL_TEXTURE_GEN_T','%GL_TEXTURE_GREEN_SIZE','%GL_TEXTURE_HEIGHT','%GL_TEXTURE_INTENSITY_SIZE','%GL_TEXTURE_INTERNAL_FORMAT','%GL_TEXTURE_LUMINANCE_SIZE', - '%GL_TEXTURE_MAG_FILTER','%GL_TEXTURE_MATRIX','%GL_TEXTURE_MIN_FILTER','%GL_TEXTURE_PRIORITY','%GL_TEXTURE_RED_SIZE','%GL_TEXTURE_RESIDENT','%GL_TEXTURE_STACK_DEPTH','%GL_TEXTURE_WIDTH', - '%GL_TEXTURE_WRAP_S','%GL_TEXTURE_WRAP_T','%GL_TRANSFORM_BIT','%GL_TRIANGLES','%GL_TRIANGLE_FAN','%GL_TRIANGLE_STRIP','%GL_TRUE','%GL_UNPACK_ALIGNMENT', - '%GL_UNPACK_LSB_FIRST','%GL_UNPACK_ROW_LENGTH','%GL_UNPACK_SKIP_PIXELS','%GL_UNPACK_SKIP_ROWS','%GL_UNPACK_SWAP_BYTES','%GL_UNSIGNED_BYTE','%GL_UNSIGNED_BYTE_3_3_2_EXT','%GL_UNSIGNED_INT', - '%GL_UNSIGNED_INT_10_10_10_2_EXT','%GL_UNSIGNED_INT_8_8_8_8_EXT','%GL_UNSIGNED_SHORT','%GL_UNSIGNED_SHORT_4_4_4_4_EXT','%GL_UNSIGNED_SHORT_5_5_5_1_EXT','%GL_V2F','%GL_V3F','%GL_VENDOR', - '%GL_VERSION','%GL_VERSION_1_1','%GL_VERTEX_ARRAY','%GL_VERTEX_ARRAY_COUNT_EXT','%GL_VERTEX_ARRAY_EXT','%GL_VERTEX_ARRAY_POINTER','%GL_VERTEX_ARRAY_POINTER_EXT','%GL_VERTEX_ARRAY_SIZE', - '%GL_VERTEX_ARRAY_SIZE_EXT','%GL_VERTEX_ARRAY_STRIDE','%GL_VERTEX_ARRAY_STRIDE_EXT','%GL_VERTEX_ARRAY_TYPE','%GL_VERTEX_ARRAY_TYPE_EXT','%GL_VIEWPORT','%GL_VIEWPORT_BIT','%GL_WIN_SWAP_HINT', - '%GL_XOR','%GL_ZERO','%GL_ZOOM_X','%GL_ZOOM_Y','%GRAY','%GREEN','%GWLP_HINSTANCE','%GWLP_HWNDPARENT', - '%GWLP_ID','%GWLP_USERDATA','%GWLP_WNDPROC','%GWL_EXSTYLE','%GWL_HINSTANCE','%GWL_HWNDPARENT','%GWL_ID','%GWL_STYLE', - '%GWL_USERDATA','%GWL_WNDPROC','%HDM_FIRST','%HTCAPTION','%HWND_BOTTOM','%HWND_DESKTOP','%HWND_MESSAGE','%HWND_NOTOPMOST', - '%HWND_TOP','%HWND_TOPMOST','%ICRYPTO_XOR_DECREASE','%ICRYPTO_XOR_INCREASE','%ICRYPTO_XOR_NORMAL','%IDABORT','%IDCANCEL','%IDCONTINUE', - '%IDIGNORE','%IDNO','%IDOK','%IDRETRY','%IDTIMEOUT','%IDTRYAGAIN','%IDYES','%INTERNET_CONNECTION_CONFIGURED', - '%INTERNET_CONNECTION_LAN','%INTERNET_CONNECTION_MODEM','%INTERNET_CONNECTION_MODEM_BUSY','%INTERNET_CONNECTION_OFFLINE','%INTERNET_CONNECTION_PROXY','%INTERNET_RAS_INSTALLED','%LBN_DBLCLK','%LBN_KILLFOCUS', - '%LBN_SELCANCEL','%LBN_SELCHANGE','%LBN_SETFOCUS','%LBS_DISABLENOSCROLL','%LBS_EXTENDEDSEL','%LBS_MULTICOLUMN','%LBS_MULTIPLESEL','%LBS_NOINTEGRALHEIGHT', - '%LBS_NOSEL','%LBS_NOTIFY','%LBS_SORT','%LBS_STANDARD','%LBS_USETABSTOPS','%LB_ADDFILE','%LB_ADDSTRING','%LB_DELETESTRING', - '%LB_DIR','%LB_FINDSTRING','%LB_FINDSTRINGEXACT','%LB_GETANCHORINDEX','%LB_GETCARETINDEX','%LB_GETCOUNT','%LB_GETCURSEL','%LB_GETHORIZONTALEXTENT', - '%LB_GETITEMDATA','%LB_GETITEMHEIGHT','%LB_GETITEMRECT','%LB_GETLISTBOXINFO','%LB_GETLOCALE','%LB_GETSEL','%LB_GETSELCOUNT','%LB_GETSELITEMS', - '%LB_GETTEXT','%LB_GETTEXTLEN','%LB_GETTOPINDEX','%LB_INITSTORAGE','%LB_INSERTSTRING','%LB_ITEMFROMPOINT','%LB_MULTIPLEADDSTRING','%LB_RESETCONTENT', - '%LB_SELECTSTRING','%LB_SELITEMRANGE','%LB_SELITEMRANGEEX','%LB_SETANCHORINDEX','%LB_SETCARETINDEX','%LB_SETCOLUMNWIDTH','%LB_SETCOUNT','%LB_SETCURSEL', - '%LB_SETHORIZONTALEXTENT','%LB_SETITEMDATA','%LB_SETITEMHEIGHT','%LB_SETLOCALE','%LB_SETSEL','%LB_SETTABSTOPS','%LB_SETTOPINDEX','%LF_FACESIZE', - '%LTGRAY','%LVM_FIRST','%LWA_ALPHA','%LWA_COLORKEY','%MAGENTA','%MAXBYTE','%MAXCHAR','%MAXDWORD', - '%MAXSHORT','%MAXWORD','%MAX_PATH','%MB_ABORTRETRYIGNORE','%MB_APPLMODAL','%MB_CANCELTRYCONTINUE','%MB_DEFBUTTON1','%MB_DEFBUTTON2', - '%MB_DEFBUTTON3','%MB_HELP','%MB_ICONASTERISK','%MB_ICONERROR','%MB_ICONEXCLAMATION','%MB_ICONHAND','%MB_ICONINFORMATION','%MB_ICONQUESTION', - '%MB_ICONSTOP','%MB_ICONWARNING','%MB_OK','%MB_OKCANCEL','%MB_RETRYCANCEL','%MB_SIMPLE','%MB_SYSTEMMODAL','%MB_TOPMOST', - '%MB_YESNO','%MB_YESNOCANCEL','%MF_CHECKED','%MF_DISABLED','%MF_ENABLED','%MF_GRAYED','%MF_SEPARATOR','%MF_UNCHECKED', - '%MINCHAR','%MINLONG','%MINSHORT','%NULL','%ODBC352_INC','%ODBCVER','%ODBC_ADD_DSN','%ODBC_ADD_SYS_DSN', - '%ODBC_BOTH_DSN','%ODBC_CONFIG_DRIVER','%ODBC_CONFIG_DRIVER_MAX','%ODBC_CONFIG_DSN','%ODBC_CONFIG_SYS_DSN','%ODBC_DRIVER_VERSION','%ODBC_ERROR_COMPONENT_NOT_FOUND','%ODBC_ERROR_CREATE_DSN_FAILED', - '%ODBC_ERROR_GENERAL_ERR','%ODBC_ERROR_INVALID_BUFF_LEN','%ODBC_ERROR_INVALID_DSN','%ODBC_ERROR_INVALID_HWND','%ODBC_ERROR_INVALID_INF','%ODBC_ERROR_INVALID_KEYWORD_VALUE','%ODBC_ERROR_INVALID_LOG_FILE','%ODBC_ERROR_INVALID_NAME', - '%ODBC_ERROR_INVALID_PARAM_SEQUENCE','%ODBC_ERROR_INVALID_PATH','%ODBC_ERROR_INVALID_REQUEST_TYPE','%ODBC_ERROR_INVALID_STR','%ODBC_ERROR_LOAD_LIB_FAILED','%ODBC_ERROR_OUTPUT_STRING_TRUNCATED','%ODBC_ERROR_OUT_OF_MEM','%ODBC_ERROR_REMOVE_DSN_FAILED', - '%ODBC_ERROR_REQUEST_FAILED','%ODBC_ERROR_USAGE_UPDATE_FAILED','%ODBC_ERROR_USER_CANCELED','%ODBC_ERROR_WRITING_SYSINFO_FAILED','%ODBC_INSTALL_COMPLETE','%ODBC_INSTALL_DRIVER','%ODBC_INSTALL_INQUIRY','%ODBC_REMOVE_DEFAULT_DSN', - '%ODBC_REMOVE_DRIVER','%ODBC_REMOVE_DSN','%ODBC_REMOVE_SYS_DSN','%ODBC_SYSTEM_DSN','%ODBC_USER_DSN','%OFN_ALLOWMULTISELECT','%OFN_CREATEPROMPT','%OFN_ENABLEHOOK', - '%OFN_ENABLEINCLUDENOTIFY','%OFN_ENABLESIZING','%OFN_ENABLETEMPLATE','%OFN_ENABLETEMPLATEHANDLE','%OFN_EXPLORER','%OFN_EXTENSIONDIFFERENT','%OFN_FILEMUSTEXIST','%OFN_HIDEREADONLY', - '%OFN_LONGNAMES','%OFN_NOCHANGEDIR','%OFN_NODEREFERENCELINKS','%OFN_NOLONGNAMES','%OFN_NONETWORKBUTTON','%OFN_NOREADONLYRETURN','%OFN_NOTESTFILECREATE','%OFN_NOVALIDATE', - '%OFN_OVERWRITEPROMPT','%OFN_PATHMUSTEXIST','%OFN_READONLY','%OFN_SHAREAWARE','%OFN_SHOWHELP','%OS_ERROR_CALLFUNCTION','%OS_ERROR_EMPTYSTRING','%OS_ERROR_LOADLIBRARY', - '%OS_ERROR_SUCCESS','%OS_ERROR_WRONGPARAMETER','%OS_SHELL_ASYNC','%OS_SHELL_SYNC','%OS_WINDOWS_2K','%OS_WINDOWS_95','%OS_WINDOWS_95_OSR2','%OS_WINDOWS_98', - '%OS_WINDOWS_98_SE','%OS_WINDOWS_ME','%OS_WINDOWS_NT','%OS_WINDOWS_SERVER_2003','%OS_WINDOWS_SERVER_LONGHORN','%OS_WINDOWS_SERVER_LONGHORN_DC','%OS_WINDOWS_VISTA','%OS_WINDOWS_XP', - '%OS_WNDSTYLE_HIDE','%OS_WNDSTYLE_MAXIMIZED','%OS_WNDSTYLE_MINIMIZED','%OS_WNDSTYLE_MINIMIZEDNOFOCUS','%OS_WNDSTYLE_NORMAL','%OS_WNDSTYLE_NORMALNOFOCUS','%PATH_EXT','%PATH_FILE', - '%PATH_FILEEXT','%PATH_ROOT','%PATH_ROOTPATH','%PATH_ROOTPATHPROG','%PATH_ROOTPATHPROGEXT','%PBM_DELTAPOS','%PBM_GETPOS','%PBM_GETRANGE', - '%PBM_SETBARCOLOR','%PBM_SETBKCOLOR','%PBM_SETPOS','%PBM_SETRANGE','%PBM_SETRANGE32','%PBM_SETSTEP','%PBM_STEPIT','%PBS_SMOOTH', - '%PBS_VERTICAL','%PC_DISABLEWAKEEVENT_OFF','%PC_DISABLEWAKEEVENT_ON','%PC_EB_NOCONFIRMATION','%PC_EB_NOPROGRESSUI','%PC_EB_NORMAL','%PC_EB_NOSOUND','%PC_FORCECRITICAL_OFF', - '%PC_FORCECRITICAL_ON','%PC_HIBERNATE_OFF','%PC_HIBERNATE_ON','%PC_RD_FORCE','%PC_RD_FORCEIFHUNG','%PC_RD_LOGOFF','%PC_RD_POWEROFF','%PC_RD_REBOOT', - '%PC_RD_SHUTDOWN','%PC_SD_DONOT_FORCE','%PC_SD_DONOT_REBOOT','%PC_SD_FORCE','%PC_SD_REBOOT','%PFA_CENTER','%PFA_LEFT','%PFA_RIGHT', - '%PF_3DNOW_INSTRUCTIONS_AVAILABLE','%PF_CHANNELS_ENABLED','%PF_COMPARE64_EXCHANGE128','%PF_COMPARE_EXCHANGE128','%PF_COMPARE_EXCHANGE_DOUBLE','%PF_FLOATING_POINT_EMULATED','%PF_FLOATING_POINT_PRECISION_ERRATA','%PF_MMX_INSTRUCTIONS_AVAILABLE', - '%PF_NX_ENABLED','%PF_PAE_ENABLED','%PF_RDTSC_INSTRUCTION_AVAILABLE','%PF_SSE3_INSTRUCTIONS_AVAILABLE','%PF_XMMI64_INSTRUCTIONS_AVAILABLE','%PF_XMMI_INSTRUCTIONS_AVAILABLE','%PGM_FIRST','%RED', - '%RTF_UBB','%SAPI_SVSFDEFAULT','%SAPI_SVSFISFILENAME','%SAPI_SVSFISNOTXML','%SAPI_SVSFISXML','%SAPI_SVSFLAGSASYNC','%SAPI_SVSFNLPMASK','%SAPI_SVSFNLPSPEAKPUNC', - '%SAPI_SVSFPERSISTXML','%SAPI_SVSFPURGEBEFORESPEAK','%SAPI_SVSFUNUSEDFLAGS','%SAPI_SVSFVOICEMASK','%SBS_SIZEGRIP','%SB_BOTTOM','%SB_ENDSCROLL','%SB_LEFT', - '%SB_LINEDOWN','%SB_LINELEFT','%SB_LINERIGHT','%SB_LINEUP','%SB_PAGEDOWN','%SB_PAGELEFT','%SB_PAGERIGHT','%SB_PAGEUP', - '%SB_RIGHT','%SB_SETPARTS','%SB_SETTEXT','%SB_THUMBPOSITION','%SB_THUMBTRACK','%SB_TOP','%SCF_ALL','%SCF_ASSOCIATEFONT', - '%SCF_DEFAULT','%SCF_NOKBUPDATE','%SCF_SELECTION','%SCF_USEUIRULES','%SCF_WORD','%SC_CLOSE','%SC_CONTEXTHELP','%SC_HOTKEY', - '%SC_HSCROLL','%SC_KEYMENU','%SC_MAXIMIZE','%SC_MINIMIZE','%SC_MONITORPOWER','%SC_MOUSEMENU','%SC_MOVE','%SC_NEXTWINDOW', - '%SC_PREVWINDOW','%SC_RESTORE','%SC_SCREENSAVE','%SC_SIZE','%SC_TASKLIST','%SC_VSCROLL','%SERVICE_ACTIVE','%SERVICE_AUTO_START', - '%SERVICE_BOOT_START','%SERVICE_CONTINUE_PENDING','%SERVICE_DEMAND_START','%SERVICE_DISABLED','%SERVICE_DRIVER','%SERVICE_INACTIVE','%SERVICE_INFO_DISPLAY_NAME','%SERVICE_INFO_NAME', - '%SERVICE_PAUSED','%SERVICE_PAUSE_PENDING','%SERVICE_RUNNING','%SERVICE_START_PENDING','%SERVICE_STATE_ALL','%SERVICE_STOPPED','%SERVICE_STOP_PENDING','%SERVICE_SYSTEM_START', - '%SERVICE_TYPE_ALL','%SERVICE_WIN32','%SES_ALLOWBEEPS','%SES_BEEPONMAXTEXT','%SES_BIDI','%SES_EMULATE10','%SES_EMULATESYSEDIT','%SES_EXTENDBACKCOLOR', - '%SES_LOWERCASE','%SES_MAPCPS','%SES_NOIME','%SES_NOINPUTSEQUENCECHK','%SES_SCROLLONKILLFOCUS','%SES_UPPERCASE','%SES_USEAIMM','%SES_USECRLF', - '%SES_XLTCRCRLFTOCR','%SF_RTF','%SF_TEXT','%SMTP_SET_ATTACH_CONTENT_TYPE','%SMTP_SET_CONTENT_TYPE_PREFIX','%SQL_AA_FALSE','%SQL_AA_TRUE','%SQL_ACCESSIBLE_PROCEDURES', - '%SQL_ACCESSIBLE_TABLES','%SQL_ACCESS_MODE','%SQL_ACTIVE_CONNECTIONS','%SQL_ACTIVE_ENVIRONMENTS','%SQL_ACTIVE_STATEMENTS','%SQL_ADD','%SQL_AD_ADD_CONSTRAINT_DEFERRABLE','%SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED', - '%SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE','%SQL_AD_ADD_DOMAIN_CONSTRAINT','%SQL_AD_ADD_DOMAIN_DEFAULT','%SQL_AD_CONSTRAINT_NAME_DEFINITION','%SQL_AD_DROP_DOMAIN_CONSTRAINT','%SQL_AD_DROP_DOMAIN_DEFAULT','%SQL_AF_ALL', - '%SQL_AF_AVG','%SQL_AF_COUNT','%SQL_AF_DISTINCT','%SQL_AF_MAX','%SQL_AF_MIN','%SQL_AF_SUM','%SQL_AGGREGATE_FUNCTIONS','%SQL_ALL_EXCEPT_LIKE', - '%SQL_ALL_TYPES','%SQL_ALTER_DOMAIN','%SQL_ALTER_TABLE','%SQL_AM_CONNECTION','%SQL_AM_NONE','%SQL_AM_STATEMENT','%SQL_API_ALL_FUNCTIONS','%SQL_API_LOADBYORDINAL', - '%SQL_API_ODBC3_ALL_FUNCTIONS','%SQL_API_ODBC3_ALL_FUNCTIONS_SIZE','%SQL_API_SQLALLOCCONNECT','%SQL_API_SQLALLOCENV','%SQL_API_SQLALLOCHANDLE','%SQL_API_SQLALLOCHANDLESTD','%SQL_API_SQLALLOCSTMT','%SQL_API_SQLBINDCOL', - '%SQL_API_SQLBINDPARAM','%SQL_API_SQLBINDPARAMETER','%SQL_API_SQLBROWSECONNECT','%SQL_API_SQLBULKOPERATIONS','%SQL_API_SQLCANCEL','%SQL_API_SQLCLOSECURSOR','%SQL_API_SQLCOLATTRIBUTE','%SQL_API_SQLCOLATTRIBUTES', - '%SQL_API_SQLCOLUMNPRIVILEGES','%SQL_API_SQLCOLUMNS','%SQL_API_SQLCONNECT','%SQL_API_SQLCOPYDESC','%SQL_API_SQLDATASOURCES','%SQL_API_SQLDESCRIBECOL','%SQL_API_SQLDESCRIBEPARAM','%SQL_API_SQLDISCONNECT', - '%SQL_API_SQLDRIVERCONNECT','%SQL_API_SQLDRIVERS','%SQL_API_SQLENDTRAN','%SQL_API_SQLERROR','%SQL_API_SQLEXECDIRECT','%SQL_API_SQLEXECUTE','%SQL_API_SQLEXTENDEDFETCH','%SQL_API_SQLFETCH', - '%SQL_API_SQLFETCHSCROLL','%SQL_API_SQLFOREIGNKEYS','%SQL_API_SQLFREECONNECT','%SQL_API_SQLFREEENV','%SQL_API_SQLFREEHANDLE','%SQL_API_SQLFREESTMT','%SQL_API_SQLGETCONNECTATTR','%SQL_API_SQLGETCONNECTOPTION', - '%SQL_API_SQLGETCURSORNAME','%SQL_API_SQLGETDATA','%SQL_API_SQLGETDESCFIELD','%SQL_API_SQLGETDESCREC','%SQL_API_SQLGETDIAGFIELD','%SQL_API_SQLGETDIAGREC','%SQL_API_SQLGETENVATTR','%SQL_API_SQLGETFUNCTIONS', - '%SQL_API_SQLGETINFO','%SQL_API_SQLGETSTMTATTR','%SQL_API_SQLGETSTMTOPTION','%SQL_API_SQLGETTYPEINFO','%SQL_API_SQLMORERESULTS','%SQL_API_SQLNATIVESQL','%SQL_API_SQLNUMPARAMS','%SQL_API_SQLNUMRESULTCOLS', - '%SQL_API_SQLPARAMDATA','%SQL_API_SQLPARAMOPTIONS','%SQL_API_SQLPREPARE','%SQL_API_SQLPRIMARYKEYS','%SQL_API_SQLPROCEDURECOLUMNS','%SQL_API_SQLPROCEDURES','%SQL_API_SQLPUTDATA','%SQL_API_SQLROWCOUNT', - '%SQL_API_SQLSETCONNECTATTR','%SQL_API_SQLSETCONNECTOPTION','%SQL_API_SQLSETCURSORNAME','%SQL_API_SQLSETDESCFIELD','%SQL_API_SQLSETDESCREC','%SQL_API_SQLSETENVATTR','%SQL_API_SQLSETPARAM','%SQL_API_SQLSETPOS', - '%SQL_API_SQLSETSCROLLOPTIONS','%SQL_API_SQLSETSTMTATTR','%SQL_API_SQLSETSTMTOPTION','%SQL_API_SQLSPECIALCOLUMNS','%SQL_API_SQLSTATISTICS','%SQL_API_SQLTABLEPRIVILEGES','%SQL_API_SQLTABLES','%SQL_API_SQLTRANSACT', - '%SQL_ARD_TYPE','%SQL_ASYNC_ENABLE','%SQL_ASYNC_ENABLE_DEFAULT','%SQL_ASYNC_ENABLE_OFF','%SQL_ASYNC_ENABLE_ON','%SQL_ASYNC_MODE','%SQL_ATTR_ACCESS_MODE','%SQL_ATTR_ANSI_APP', - '%SQL_ATTR_APP_PARAM_DESC','%SQL_ATTR_APP_ROW_DESC','%SQL_ATTR_ASYNC_ENABLE','%SQL_ATTR_AUTOCOMMIT','%SQL_ATTR_AUTO_IPD','%SQL_ATTR_CONCURRENCY','%SQL_ATTR_CONNECTION_DEAD','%SQL_ATTR_CONNECTION_POOLING', - '%SQL_ATTR_CONNECTION_TIMEOUT','%SQL_ATTR_CP_MATCH','%SQL_ATTR_CURRENT_CATALOG','%SQL_ATTR_CURSOR_SCROLLABLE','%SQL_ATTR_CURSOR_SENSITIVITY','%SQL_ATTR_CURSOR_TYPE','%SQL_ATTR_DISCONNECT_BEHAVIOR','%SQL_ATTR_ENABLE_AUTO_IPD', - '%SQL_ATTR_ENLIST_IN_DTC','%SQL_ATTR_ENLIST_IN_XA','%SQL_ATTR_FETCH_BOOKMARK_PTR','%SQL_ATTR_IMP_PARAM_DESC','%SQL_ATTR_IMP_ROW_DESC','%SQL_ATTR_KEYSET_SIZE','%SQL_ATTR_LOGIN_TIMEOUT','%SQL_ATTR_MAX_LENGTH', - '%SQL_ATTR_MAX_ROWS','%SQL_ATTR_METADATA_ID','%SQL_ATTR_NOSCAN','%SQL_ATTR_ODBC_CURSORS','%SQL_ATTR_ODBC_VERSION','%SQL_ATTR_OUTPUT_NTS','%SQL_ATTR_PACKET_SIZE','%SQL_ATTR_PARAMSET_SIZE', - '%SQL_ATTR_PARAMS_PROCESSED_PTR','%SQL_ATTR_PARAM_BIND_OFFSET_PTR','%SQL_ATTR_PARAM_BIND_TYPE','%SQL_ATTR_PARAM_OPERATION_PTR','%SQL_ATTR_PARAM_STATUS_PTR','%SQL_ATTR_QUERY_TIMEOUT','%SQL_ATTR_QUIET_MODE','%SQL_ATTR_READONLY', - '%SQL_ATTR_READWRITE_UNKNOWN','%SQL_ATTR_RETRIEVE_DATA','%SQL_ATTR_ROWS_FETCHED_PTR','%SQL_ATTR_ROW_ARRAY_SIZE','%SQL_ATTR_ROW_BIND_OFFSET_PTR','%SQL_ATTR_ROW_BIND_TYPE','%SQL_ATTR_ROW_NUMBER','%SQL_ATTR_ROW_OPERATION_PTR', - '%SQL_ATTR_ROW_STATUS_PTR','%SQL_ATTR_SIMULATE_CURSOR','%SQL_ATTR_TRACE','%SQL_ATTR_TRACEFILE','%SQL_ATTR_TRANSLATE_LIB','%SQL_ATTR_TRANSLATE_OPTION','%SQL_ATTR_TXN_ISOLATION','%SQL_ATTR_USE_BOOKMARKS', - '%SQL_ATTR_WRITE','%SQL_AT_ADD_COLUMN','%SQL_AT_ADD_COLUMN_COLLATION','%SQL_AT_ADD_COLUMN_DEFAULT','%SQL_AT_ADD_COLUMN_SINGLE','%SQL_AT_ADD_CONSTRAINT','%SQL_AT_ADD_TABLE_CONSTRAINT','%SQL_AT_CONSTRAINT_DEFERRABLE', - '%SQL_AT_CONSTRAINT_INITIALLY_DEFERRED','%SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_AT_CONSTRAINT_NAME_DEFINITION','%SQL_AT_CONSTRAINT_NON_DEFERRABLE','%SQL_AT_DROP_COLUMN','%SQL_AT_DROP_COLUMN_CASCADE','%SQL_AT_DROP_COLUMN_DEFAULT','%SQL_AT_DROP_COLUMN_RESTRICT', - '%SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE','%SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT','%SQL_AT_SET_COLUMN_DEFAULT','%SQL_AUTOCOMMIT','%SQL_AUTOCOMMIT_DEFAULT','%SQL_AUTOCOMMIT_OFF','%SQL_AUTOCOMMIT_ON','%SQL_BATCH_ROW_COUNT', - '%SQL_BATCH_SUPPORT','%SQL_BEST_ROWID','%SQL_BIGINT','%SQL_BINARY','%SQL_BIND_BY_COLUMN','%SQL_BIND_TYPE','%SQL_BIND_TYPE_DEFAULT','%SQL_BIT', - '%SQL_BOOKMARK_PERSISTENCE','%SQL_BP_CLOSE','%SQL_BP_DELETE','%SQL_BP_DROP','%SQL_BP_OTHER_HSTMT','%SQL_BP_SCROLL','%SQL_BP_TRANSACTION','%SQL_BP_UPDATE', - '%SQL_BRC_EXPLICIT','%SQL_BRC_PROCEDURES','%SQL_BRC_ROLLED_UP','%SQL_BS_ROW_COUNT_EXPLICIT','%SQL_BS_ROW_COUNT_PROC','%SQL_BS_SELECT_EXPLICIT','%SQL_BS_SELECT_PROC','%SQL_CA1_ABSOLUTE', - '%SQL_CA1_BOOKMARK','%SQL_CA1_BULK_ADD','%SQL_CA1_BULK_DELETE_BY_BOOKMARK','%SQL_CA1_BULK_FETCH_BY_BOOKMARK','%SQL_CA1_BULK_UPDATE_BY_BOOKMARK','%SQL_CA1_LOCK_EXCLUSIVE','%SQL_CA1_LOCK_NO_CHANGE','%SQL_CA1_LOCK_UNLOCK', - '%SQL_CA1_NEXT','%SQL_CA1_POSITIONED_DELETE','%SQL_CA1_POSITIONED_UPDATE','%SQL_CA1_POS_DELETE','%SQL_CA1_POS_POSITION','%SQL_CA1_POS_REFRESH','%SQL_CA1_POS_UPDATE','%SQL_CA1_RELATIVE', - '%SQL_CA1_SELECT_FOR_UPDATE','%SQL_CA2_CRC_APPROXIMATE','%SQL_CA2_CRC_EXACT','%SQL_CA2_LOCK_CONCURRENCY','%SQL_CA2_MAX_ROWS_AFFECTS_ALL','%SQL_CA2_MAX_ROWS_CATALOG','%SQL_CA2_MAX_ROWS_DELETE','%SQL_CA2_MAX_ROWS_INSERT', - '%SQL_CA2_MAX_ROWS_SELECT','%SQL_CA2_MAX_ROWS_UPDATE','%SQL_CA2_OPT_ROWVER_CONCURRENCY','%SQL_CA2_OPT_VALUES_CONCURRENCY','%SQL_CA2_READ_ONLY_CONCURRENCY','%SQL_CA2_SENSITIVITY_ADDITIONS','%SQL_CA2_SENSITIVITY_DELETIONS','%SQL_CA2_SENSITIVITY_UPDATES', - '%SQL_CA2_SIMULATE_NON_UNIQUE','%SQL_CA2_SIMULATE_TRY_UNIQUE','%SQL_CA2_SIMULATE_UNIQUE','%SQL_CASCADE','%SQL_CATALOG_LOCATION','%SQL_CATALOG_NAME','%SQL_CATALOG_NAME_SEPARATOR','%SQL_CATALOG_TERM', - '%SQL_CATALOG_USAGE','%SQL_CA_CONSTRAINT_DEFERRABLE','%SQL_CA_CONSTRAINT_INITIALLY_DEFERRED','%SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CA_CONSTRAINT_NON_DEFERRABLE','%SQL_CA_CREATE_ASSERTION','%SQL_CB_CLOSE','%SQL_CB_DELETE', - '%SQL_CB_NON_NULL','%SQL_CB_NULL','%SQL_CB_PRESERVE','%SQL_CCOL_CREATE_COLLATION','%SQL_CCS_COLLATE_CLAUSE','%SQL_CCS_CREATE_CHARACTER_SET','%SQL_CCS_LIMITED_COLLATION','%SQL_CC_CLOSE', - '%SQL_CC_DELETE','%SQL_CC_PRESERVE','%SQL_CDO_COLLATION','%SQL_CDO_CONSTRAINT','%SQL_CDO_CONSTRAINT_DEFERRABLE','%SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED','%SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CDO_CONSTRAINT_NAME_DEFINITION', - '%SQL_CDO_CONSTRAINT_NON_DEFERRABLE','%SQL_CDO_CREATE_DOMAIN','%SQL_CDO_DEFAULT','%SQL_CD_FALSE','%SQL_CD_TRUE','%SQL_CHAR','%SQL_CLOSE','%SQL_CL_END', - '%SQL_CL_START','%SQL_CN_ANY','%SQL_CN_DIFFERENT','%SQL_CN_NONE','%SQL_CODE_DATE','%SQL_CODE_DAY','%SQL_CODE_DAY_TO_HOUR','%SQL_CODE_DAY_TO_MINUTE', - '%SQL_CODE_DAY_TO_SECOND','%SQL_CODE_HOUR','%SQL_CODE_HOUR_TO_MINUTE','%SQL_CODE_HOUR_TO_SECOND','%SQL_CODE_MINUTE','%SQL_CODE_MINUTE_TO_SECOND','%SQL_CODE_MONTH','%SQL_CODE_SECOND', - '%SQL_CODE_TIME','%SQL_CODE_TIMESTAMP','%SQL_CODE_YEAR','%SQL_CODE_YEAR_TO_MONTH','%SQL_COLATT_OPT_MAX','%SQL_COLATT_OPT_MIN','%SQL_COLLATION_SEQ','%SQL_COLUMN_ALIAS', - '%SQL_COLUMN_AUTO_INCREMENT','%SQL_COLUMN_CASE_SENSITIVE','%SQL_COLUMN_COUNT','%SQL_COLUMN_DISPLAY_SIZE','%SQL_COLUMN_IGNORE','%SQL_COLUMN_LABEL','%SQL_COLUMN_LENGTH','%SQL_COLUMN_MONEY', - '%SQL_COLUMN_NAME','%SQL_COLUMN_NULLABLE','%SQL_COLUMN_NUMBER_UNKNOWN','%SQL_COLUMN_OWNER_NAME','%SQL_COLUMN_PRECISION','%SQL_COLUMN_QUALIFIER_NAME','%SQL_COLUMN_SCALE','%SQL_COLUMN_SEARCHABLE', - '%SQL_COLUMN_TABLE_NAME','%SQL_COLUMN_TYPE','%SQL_COLUMN_TYPE_NAME','%SQL_COLUMN_UNSIGNED','%SQL_COLUMN_UPDATABLE','%SQL_COL_PRED_BASIC','%SQL_COL_PRED_CHAR','%SQL_COMMIT', - '%SQL_CONCAT_NULL_BEHAVIOR','%SQL_CONCURRENCY','%SQL_CONCUR_DEFAULT','%SQL_CONCUR_LOCK','%SQL_CONCUR_READ_ONLY','%SQL_CONCUR_ROWVER','%SQL_CONCUR_TIMESTAMP','%SQL_CONCUR_VALUES', - '%SQL_CONVERT_BIGINT','%SQL_CONVERT_BINARY','%SQL_CONVERT_BIT','%SQL_CONVERT_CHAR','%SQL_CONVERT_DATE','%SQL_CONVERT_DECIMAL','%SQL_CONVERT_DOUBLE','%SQL_CONVERT_FLOAT', - '%SQL_CONVERT_FUNCTIONS','%SQL_CONVERT_GUID','%SQL_CONVERT_INTEGER','%SQL_CONVERT_INTERVAL_DAY_TIME','%SQL_CONVERT_INTERVAL_YEAR_MONTH','%SQL_CONVERT_LONGVARBINARY','%SQL_CONVERT_LONGVARCHAR','%SQL_CONVERT_NUMERIC', - '%SQL_CONVERT_REAL','%SQL_CONVERT_SMALLINT','%SQL_CONVERT_TIME','%SQL_CONVERT_TIMESTAMP','%SQL_CONVERT_TINYINT','%SQL_CONVERT_VARBINARY','%SQL_CONVERT_VARCHAR','%SQL_CONVERT_WCHAR', - '%SQL_CONVERT_WLONGVARCHAR','%SQL_CONVERT_WVARCHAR','%SQL_CORRELATION_NAME','%SQL_CP_DEFAULT','%SQL_CP_MATCH_DEFAULT','%SQL_CP_OFF','%SQL_CP_ONE_PER_DRIVER','%SQL_CP_ONE_PER_HENV', - '%SQL_CP_RELAXED_MATCH','%SQL_CP_STRICT_MATCH','%SQL_CREATE_ASSERTION','%SQL_CREATE_CHARACTER_SET','%SQL_CREATE_COLLATION','%SQL_CREATE_DOMAIN','%SQL_CREATE_SCHEMA','%SQL_CREATE_TABLE', - '%SQL_CREATE_TRANSLATION','%SQL_CREATE_VIEW','%SQL_CR_CLOSE','%SQL_CR_DELETE','%SQL_CR_PRESERVE','%SQL_CS_AUTHORIZATION','%SQL_CS_CREATE_SCHEMA','%SQL_CS_DEFAULT_CHARACTER_SET', - '%SQL_CTR_CREATE_TRANSLATION','%SQL_CT_COLUMN_COLLATION','%SQL_CT_COLUMN_CONSTRAINT','%SQL_CT_COLUMN_DEFAULT','%SQL_CT_COMMIT_DELETE','%SQL_CT_COMMIT_PRESERVE','%SQL_CT_CONSTRAINT_DEFERRABLE','%SQL_CT_CONSTRAINT_INITIALLY_DEFERRED', - '%SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE','%SQL_CT_CONSTRAINT_NAME_DEFINITION','%SQL_CT_CONSTRAINT_NON_DEFERRABLE','%SQL_CT_CREATE_TABLE','%SQL_CT_GLOBAL_TEMPORARY','%SQL_CT_LOCAL_TEMPORARY','%SQL_CT_TABLE_CONSTRAINT','%SQL_CURRENT_QUALIFIER', - '%SQL_CURSOR_COMMIT_BEHAVIOR','%SQL_CURSOR_DYNAMIC','%SQL_CURSOR_FORWARD_ONLY','%SQL_CURSOR_KEYSET_DRIVEN','%SQL_CURSOR_ROLLBACK_BEHAVIOR','%SQL_CURSOR_SENSITIVITY','%SQL_CURSOR_STATIC','%SQL_CURSOR_TYPE', - '%SQL_CURSOR_TYPE_DEFAULT','%SQL_CUR_DEFAULT','%SQL_CUR_USE_DRIVER','%SQL_CUR_USE_IF_NEEDED','%SQL_CUR_USE_ODBC','%SQL_CU_DML_STATEMENTS','%SQL_CU_INDEX_DEFINITION','%SQL_CU_PRIVILEGE_DEFINITION', - '%SQL_CU_PROCEDURE_INVOCATION','%SQL_CU_TABLE_DEFINITION','%SQL_CVT_BIGINT','%SQL_CVT_BINARY','%SQL_CVT_BIT','%SQL_CVT_CHAR','%SQL_CVT_DATE','%SQL_CVT_DECIMAL', - '%SQL_CVT_DOUBLE','%SQL_CVT_FLOAT','%SQL_CVT_GUID','%SQL_CVT_INTEGER','%SQL_CVT_INTERVAL_DAY_TIME','%SQL_CVT_INTERVAL_YEAR_MONTH','%SQL_CVT_LONGVARBINARY','%SQL_CVT_LONGVARCHAR', - '%SQL_CVT_NUMERIC','%SQL_CVT_REAL','%SQL_CVT_SMALLINT','%SQL_CVT_TIME','%SQL_CVT_TIMESTAMP','%SQL_CVT_TINYINT','%SQL_CVT_VARBINARY','%SQL_CVT_VARCHAR', - '%SQL_CVT_WCHAR','%SQL_CVT_WLONGVARCHAR','%SQL_CVT_WVARCHAR','%SQL_CV_CASCADED','%SQL_CV_CHECK_OPTION','%SQL_CV_CREATE_VIEW','%SQL_CV_LOCAL','%SQL_C_BINARY', - '%SQL_C_BIT','%SQL_C_BOOKMARK','%SQL_C_CHAR','%SQL_C_DATE','%SQL_C_DEFAULT','%SQL_C_DOUBLE','%SQL_C_FLOAT','%SQL_C_GUID', - '%SQL_C_INTERVAL_DAY','%SQL_C_INTERVAL_DAY_TO_HOUR','%SQL_C_INTERVAL_DAY_TO_MINUTE','%SQL_C_INTERVAL_DAY_TO_SECOND','%SQL_C_INTERVAL_HOUR','%SQL_C_INTERVAL_HOUR_TO_MINUTE','%SQL_C_INTERVAL_HOUR_TO_SECOND','%SQL_C_INTERVAL_MINUTE', - '%SQL_C_INTERVAL_MINUTE_TO_SECOND','%SQL_C_INTERVAL_MONTH','%SQL_C_INTERVAL_SECOND','%SQL_C_INTERVAL_YEAR','%SQL_C_INTERVAL_YEAR_TO_MONTH','%SQL_C_LONG','%SQL_C_NUMERIC','%SQL_C_SBIGINT', - '%SQL_C_SHORT','%SQL_C_SLONG','%SQL_C_SSHORT','%SQL_C_STINYINT','%SQL_C_TIME','%SQL_C_TIMESTAMP','%SQL_C_TINYINT','%SQL_C_TYPE_DATE', - '%SQL_C_TYPE_TIME','%SQL_C_TYPE_TIMESTAMP','%SQL_C_UBIGINT','%SQL_C_ULONG','%SQL_C_USHORT','%SQL_C_UTINYINT','%SQL_C_VARBOOKMARK','%SQL_DATABASE_NAME', - '%SQL_DATA_AT_EXEC','%SQL_DATA_SOURCE_NAME','%SQL_DATA_SOURCE_READ_ONLY','%SQL_DATE','%SQL_DATETIME','%SQL_DATETIME_LITERALS','%SQL_DATE_LEN','%SQL_DAY', - '%SQL_DAY_TO_HOUR','%SQL_DAY_TO_MINUTE','%SQL_DAY_TO_SECOND','%SQL_DA_DROP_ASSERTION','%SQL_DBMS_NAME','%SQL_DBMS_VER','%SQL_DB_DEFAULT','%SQL_DB_DISCONNECT', - '%SQL_DB_RETURN_TO_POOL','%SQL_DCS_DROP_CHARACTER_SET','%SQL_DC_DROP_COLLATION','%SQL_DDL_INDEX','%SQL_DD_CASCADE','%SQL_DD_DROP_DOMAIN','%SQL_DD_RESTRICT','%SQL_DECIMAL', - '%SQL_DEFAULT','%SQL_DEFAULT_PARAM','%SQL_DEFAULT_TXN_ISOLATION','%SQL_DELETE','%SQL_DELETE_BY_BOOKMARK','%SQL_DESCRIBE_PARAMETER','%SQL_DESC_ALLOC_AUTO','%SQL_DESC_ALLOC_TYPE', - '%SQL_DESC_ALLOC_USER','%SQL_DESC_ARRAY_SIZE','%SQL_DESC_ARRAY_STATUS_PTR','%SQL_DESC_AUTO_UNIQUE_VALUE','%SQL_DESC_BASE_COLUMN_NAME','%SQL_DESC_BASE_TABLE_NAME','%SQL_DESC_BIND_OFFSET_PTR','%SQL_DESC_BIND_TYPE', - '%SQL_DESC_CASE_SENSITIVE','%SQL_DESC_CATALOG_NAME','%SQL_DESC_CONCISE_TYPE','%SQL_DESC_COUNT','%SQL_DESC_DATA_PTR','%SQL_DESC_DATETIME_INTERVAL_CODE','%SQL_DESC_DATETIME_INTERVAL_PRECISION','%SQL_DESC_DISPLAY_SIZE', - '%SQL_DESC_FIXED_PREC_SCALE','%SQL_DESC_INDICATOR_PTR','%SQL_DESC_LABEL','%SQL_DESC_LENGTH','%SQL_DESC_LITERAL_PREFIX','%SQL_DESC_LITERAL_SUFFIX','%SQL_DESC_LOCAL_TYPE_NAME','%SQL_DESC_MAXIMUM_SCALE', - '%SQL_DESC_MINIMUM_SCALE','%SQL_DESC_NAME','%SQL_DESC_NULLABLE','%SQL_DESC_NUM_PREC_RADIX','%SQL_DESC_OCTET_LENGTH','%SQL_DESC_OCTET_LENGTH_PTR','%SQL_DESC_PARAMETER_TYPE','%SQL_DESC_PRECISION', - '%SQL_DESC_ROWS_PROCESSED_PTR','%SQL_DESC_SCALE','%SQL_DESC_SCHEMA_NAME','%SQL_DESC_SEARCHABLE','%SQL_DESC_TABLE_NAME','%SQL_DESC_TYPE','%SQL_DESC_TYPE_NAME','%SQL_DESC_UNNAMED', - '%SQL_DESC_UNSIGNED','%SQL_DESC_UPDATABLE','%SQL_DIAG_ALTER_TABLE','%SQL_DIAG_CALL','%SQL_DIAG_CLASS_ORIGIN','%SQL_DIAG_COLUMN_NUMBER','%SQL_DIAG_CONNECTION_NAME','%SQL_DIAG_CREATE_INDEX', - '%SQL_DIAG_CREATE_TABLE','%SQL_DIAG_CREATE_VIEW','%SQL_DIAG_CURSOR_ROW_COUNT','%SQL_DIAG_DELETE_WHERE','%SQL_DIAG_DROP_INDEX','%SQL_DIAG_DROP_TABLE','%SQL_DIAG_DROP_VIEW','%SQL_DIAG_DYNAMIC_DELETE_CURSOR', - '%SQL_DIAG_DYNAMIC_FUNCTION','%SQL_DIAG_DYNAMIC_FUNCTION_CODE','%SQL_DIAG_DYNAMIC_UPDATE_CURSOR','%SQL_DIAG_GRANT','%SQL_DIAG_INSERT','%SQL_DIAG_MESSAGE_TEXT','%SQL_DIAG_NATIVE','%SQL_DIAG_NUMBER', - '%SQL_DIAG_RETURNCODE','%SQL_DIAG_REVOKE','%SQL_DIAG_ROW_COUNT','%SQL_DIAG_ROW_NUMBER','%SQL_DIAG_SELECT_CURSOR','%SQL_DIAG_SERVER_NAME','%SQL_DIAG_SQLSTATE','%SQL_DIAG_SUBCLASS_ORIGIN', - '%SQL_DIAG_UNKNOWN_STATEMENT','%SQL_DIAG_UPDATE_WHERE','%SQL_DI_CREATE_INDEX','%SQL_DI_DROP_INDEX','%SQL_DL_SQL92_DATE','%SQL_DL_SQL92_INTERVAL_DAY','%SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR','%SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE', - '%SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND','%SQL_DL_SQL92_INTERVAL_HOUR','%SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE','%SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND','%SQL_DL_SQL92_INTERVAL_MINUTE','%SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND','%SQL_DL_SQL92_INTERVAL_MONTH','%SQL_DL_SQL92_INTERVAL_SECOND', - '%SQL_DL_SQL92_INTERVAL_YEAR','%SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH','%SQL_DL_SQL92_TIME','%SQL_DL_SQL92_TIMESTAMP','%SQL_DM_VER','%SQL_DOUBLE','%SQL_DRIVER_COMPLETE','%SQL_DRIVER_COMPLETE_REQUIRED', - '%SQL_DRIVER_HDBC','%SQL_DRIVER_HDESC','%SQL_DRIVER_HENV','%SQL_DRIVER_HLIB','%SQL_DRIVER_HSTMT','%SQL_DRIVER_NAME','%SQL_DRIVER_NOPROMPT','%SQL_DRIVER_ODBC_VER', - '%SQL_DRIVER_PROMPT','%SQL_DRIVER_VER','%SQL_DROP','%SQL_DROP_ASSERTION','%SQL_DROP_CHARACTER_SET','%SQL_DROP_COLLATION','%SQL_DROP_DOMAIN','%SQL_DROP_SCHEMA', - '%SQL_DROP_TABLE','%SQL_DROP_TRANSLATION','%SQL_DROP_VIEW','%SQL_DS_CASCADE','%SQL_DS_DROP_SCHEMA','%SQL_DS_RESTRICT','%SQL_DTC_DONE','%SQL_DTC_ENLIST_EXPENSIVE', - '%SQL_DTC_TRANSITION_COST','%SQL_DTC_UNENLIST_EXPENSIVE','%SQL_DTR_DROP_TRANSLATION','%SQL_DT_CASCADE','%SQL_DT_DROP_TABLE','%SQL_DT_RESTRICT','%SQL_DV_CASCADE','%SQL_DV_DROP_VIEW', - '%SQL_DV_RESTRICT','%SQL_DYNAMIC_CURSOR_ATTRIBUTES1','%SQL_DYNAMIC_CURSOR_ATTRIBUTES2','%SQL_ENSURE','%SQL_ENTIRE_ROWSET','%SQL_ERROR','%SQL_EXPRESSIONS_IN_ORDERBY','%SQL_FALSE', - '%SQL_FD_FETCH_ABSOLUTE','%SQL_FD_FETCH_BOOKMARK','%SQL_FD_FETCH_FIRST','%SQL_FD_FETCH_LAST','%SQL_FD_FETCH_NEXT','%SQL_FD_FETCH_PREV','%SQL_FD_FETCH_PRIOR','%SQL_FD_FETCH_RELATIVE', - '%SQL_FETCH_ABSOLUTE','%SQL_FETCH_BOOKMARK','%SQL_FETCH_BY_BOOKMARK','%SQL_FETCH_DIRECTION','%SQL_FETCH_FIRST','%SQL_FETCH_FIRST_SYSTEM','%SQL_FETCH_FIRST_USER','%SQL_FETCH_LAST', - '%SQL_FETCH_NEXT','%SQL_FETCH_PREV','%SQL_FETCH_PRIOR','%SQL_FETCH_RELATIVE','%SQL_FILE_CATALOG','%SQL_FILE_NOT_SUPPORTED','%SQL_FILE_QUALIFIER','%SQL_FILE_TABLE', - '%SQL_FILE_USAGE','%SQL_FLOAT','%SQL_FN_CVT_CAST','%SQL_FN_CVT_CONVERT','%SQL_FN_NUM_ABS','%SQL_FN_NUM_ACOS','%SQL_FN_NUM_ASIN','%SQL_FN_NUM_ATAN', - '%SQL_FN_NUM_ATAN2','%SQL_FN_NUM_CEILING','%SQL_FN_NUM_COS','%SQL_FN_NUM_COT','%SQL_FN_NUM_DEGREES','%SQL_FN_NUM_EXP','%SQL_FN_NUM_FLOOR','%SQL_FN_NUM_LOG', - '%SQL_FN_NUM_LOG10','%SQL_FN_NUM_MOD','%SQL_FN_NUM_PI','%SQL_FN_NUM_POWER','%SQL_FN_NUM_RADIANS','%SQL_FN_NUM_RAND','%SQL_FN_NUM_ROUND','%SQL_FN_NUM_SIGN', - '%SQL_FN_NUM_SIN','%SQL_FN_NUM_SQRT','%SQL_FN_NUM_TAN','%SQL_FN_NUM_TRUNCATE','%SQL_FN_STR_ASCII','%SQL_FN_STR_BIT_LENGTH','%SQL_FN_STR_CHAR','%SQL_FN_STR_CHARACTER_LENGTH', - '%SQL_FN_STR_CHAR_LENGTH','%SQL_FN_STR_CONCAT','%SQL_FN_STR_DIFFERENCE','%SQL_FN_STR_INSERT','%SQL_FN_STR_LCASE','%SQL_FN_STR_LEFT','%SQL_FN_STR_LENGTH','%SQL_FN_STR_LOCATE', - '%SQL_FN_STR_LOCATE_2','%SQL_FN_STR_LTRIM','%SQL_FN_STR_OCTET_LENGTH','%SQL_FN_STR_POSITION','%SQL_FN_STR_REPEAT','%SQL_FN_STR_REPLACE','%SQL_FN_STR_RIGHT','%SQL_FN_STR_RTRIM', - '%SQL_FN_STR_SOUNDEX','%SQL_FN_STR_SPACE','%SQL_FN_STR_SUBSTRING','%SQL_FN_STR_UCASE','%SQL_FN_SYS_DBNAME','%SQL_FN_SYS_IFNULL','%SQL_FN_SYS_USERNAME','%SQL_FN_TD_CURDATE', - '%SQL_FN_TD_CURRENT_DATE','%SQL_FN_TD_CURRENT_TIME','%SQL_FN_TD_CURRENT_TIMESTAMP','%SQL_FN_TD_CURTIME','%SQL_FN_TD_DAYNAME','%SQL_FN_TD_DAYOFMONTH','%SQL_FN_TD_DAYOFWEEK','%SQL_FN_TD_DAYOFYEAR', - '%SQL_FN_TD_EXTRACT','%SQL_FN_TD_HOUR','%SQL_FN_TD_MINUTE','%SQL_FN_TD_MONTH','%SQL_FN_TD_MONTHNAME','%SQL_FN_TD_NOW','%SQL_FN_TD_QUARTER','%SQL_FN_TD_SECOND', - '%SQL_FN_TD_TIMESTAMPADD','%SQL_FN_TD_TIMESTAMPDIFF','%SQL_FN_TD_WEEK','%SQL_FN_TD_YEAR','%SQL_FN_TSI_DAY','%SQL_FN_TSI_FRAC_SECOND','%SQL_FN_TSI_HOUR','%SQL_FN_TSI_MINUTE', - '%SQL_FN_TSI_MONTH','%SQL_FN_TSI_QUARTER','%SQL_FN_TSI_SECOND','%SQL_FN_TSI_WEEK','%SQL_FN_TSI_YEAR','%SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1','%SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2','%SQL_GB_COLLATE', - '%SQL_GB_GROUP_BY_CONTAINS_SELECT','%SQL_GB_GROUP_BY_EQUALS_SELECT','%SQL_GB_NOT_SUPPORTED','%SQL_GB_NO_RELATION','%SQL_GD_ANY_COLUMN','%SQL_GD_ANY_ORDER','%SQL_GD_BLOCK','%SQL_GD_BOUND', - '%SQL_GETDATA_EXTENSIONS','%SQL_GET_BOOKMARK','%SQL_GROUP_BY','%SQL_GUID','%SQL_HANDLE_DBC','%SQL_HANDLE_DESC','%SQL_HANDLE_ENV','%SQL_HANDLE_SENV', - '%SQL_HANDLE_STMT','%SQL_HOUR','%SQL_HOUR_TO_MINUTE','%SQL_HOUR_TO_SECOND','%SQL_IC_LOWER','%SQL_IC_MIXED','%SQL_IC_SENSITIVE','%SQL_IC_UPPER', - '%SQL_IDENTIFIER_CASE','%SQL_IDENTIFIER_QUOTE_CHAR','%SQL_IGNORE','%SQL_IK_ALL','%SQL_IK_ASC','%SQL_IK_DESC','%SQL_IK_NONE','%SQL_INDEX_ALL', - '%SQL_INDEX_CLUSTERED','%SQL_INDEX_HASHED','%SQL_INDEX_KEYWORDS','%SQL_INDEX_OTHER','%SQL_INDEX_UNIQUE','%SQL_INFO_FIRST','%SQL_INFO_SCHEMA_VIEWS','%SQL_INITIALLY_DEFERRED', - '%SQL_INITIALLY_IMMEDIATE','%SQL_INSENSITIVE','%SQL_INSERT_STATEMENT','%SQL_INTEGER','%SQL_INTEGRITY','%SQL_INTERVAL','%SQL_INTERVAL_DAY','%SQL_INTERVAL_DAY_TO_HOUR', - '%SQL_INTERVAL_DAY_TO_MINUTE','%SQL_INTERVAL_DAY_TO_SECOND','%SQL_INTERVAL_HOUR','%SQL_INTERVAL_HOUR_TO_MINUTE','%SQL_INTERVAL_HOUR_TO_SECOND','%SQL_INTERVAL_MINUTE','%SQL_INTERVAL_MINUTE_TO_SECOND','%SQL_INTERVAL_MONTH', - '%SQL_INTERVAL_SECOND','%SQL_INTERVAL_YEAR','%SQL_INTERVAL_YEAR_TO_MONTH','%SQL_INVALID_HANDLE','%SQL_ISV_ASSERTIONS','%SQL_ISV_CHARACTER_SETS','%SQL_ISV_CHECK_CONSTRAINTS','%SQL_ISV_COLLATIONS', - '%SQL_ISV_COLUMNS','%SQL_ISV_COLUMN_DOMAIN_USAGE','%SQL_ISV_COLUMN_PRIVILEGES','%SQL_ISV_CONSTRAINT_COLUMN_USAGE','%SQL_ISV_CONSTRAINT_TABLE_USAGE','%SQL_ISV_DOMAINS','%SQL_ISV_DOMAIN_CONSTRAINTS','%SQL_ISV_KEY_COLUMN_USAGE', - '%SQL_ISV_REFERENTIAL_CONSTRAINTS','%SQL_ISV_SCHEMATA','%SQL_ISV_SQL_LANGUAGES','%SQL_ISV_TABLES','%SQL_ISV_TABLE_CONSTRAINTS','%SQL_ISV_TABLE_PRIVILEGES','%SQL_ISV_TRANSLATIONS','%SQL_ISV_USAGE_PRIVILEGES', - '%SQL_ISV_VIEWS','%SQL_ISV_VIEW_COLUMN_USAGE','%SQL_ISV_VIEW_TABLE_USAGE','%SQL_IS_DAY','%SQL_IS_DAY_TO_HOUR','%SQL_IS_DAY_TO_MINUTE','%SQL_IS_DAY_TO_SECOND','%SQL_IS_HOUR', - '%SQL_IS_HOUR_TO_MINUTE','%SQL_IS_HOUR_TO_SECOND','%SQL_IS_INSERT_LITERALS','%SQL_IS_INSERT_SEARCHED','%SQL_IS_INTEGER','%SQL_IS_MINUTE','%SQL_IS_MINUTE_TO_SECOND','%SQL_IS_MONTH', - '%SQL_IS_POINTER','%SQL_IS_SECOND','%SQL_IS_SELECT_INTO','%SQL_IS_SMALLINT','%SQL_IS_UINTEGER','%SQL_IS_USMALLINT','%SQL_IS_YEAR','%SQL_IS_YEAR_TO_MONTH', - '%SQL_KEYSET_CURSOR_ATTRIBUTES1','%SQL_KEYSET_CURSOR_ATTRIBUTES2','%SQL_KEYSET_SIZE','%SQL_KEYSET_SIZE_DEFAULT','%SQL_KEYWORDS','%SQL_LCK_EXCLUSIVE','%SQL_LCK_NO_CHANGE','%SQL_LCK_UNLOCK', - '%SQL_LEN_BINARY_ATTR_OFFSET','%SQL_LEN_DATA_AT_EXEC_OFFSET','%SQL_LIKE_ESCAPE_CLAUSE','%SQL_LIKE_ONLY','%SQL_LOCK_EXCLUSIVE','%SQL_LOCK_NO_CHANGE','%SQL_LOCK_TYPES','%SQL_LOCK_UNLOCK', - '%SQL_LOGIN_TIMEOUT','%SQL_LOGIN_TIMEOUT_DEFAULT','%SQL_LONGVARBINARY','%SQL_LONGVARCHAR','%SQL_MAXIMUM_CATALOG_NAME_LENGTH','%SQL_MAXIMUM_COLUMNS_IN_GROUP_BY','%SQL_MAXIMUM_COLUMNS_IN_INDEX','%SQL_MAXIMUM_COLUMNS_IN_ORDER_BY', - '%SQL_MAXIMUM_COLUMNS_IN_SELECT','%SQL_MAXIMUM_COLUMN_NAME_LENGTH','%SQL_MAXIMUM_CONCURRENT_ACTIVITIES','%SQL_MAXIMUM_CURSOR_NAME_LENGTH','%SQL_MAXIMUM_DRIVER_CONNECTIONS','%SQL_MAXIMUM_IDENTIFIER_LENGTH','%SQL_MAXIMUM_INDEX_SIZE','%SQL_MAXIMUM_ROW_SIZE', - '%SQL_MAXIMUM_SCHEMA_NAME_LENGTH','%SQL_MAXIMUM_STATEMENT_LENGTH','%SQL_MAXIMUM_TABLES_IN_SELECT','%SQL_MAXIMUM_USER_NAME_LENGTH','%SQL_MAX_ASYNC_CONCURRENT_STATEMENTS','%SQL_MAX_BINARY_LITERAL_LEN','%SQL_MAX_CATALOG_NAME_LEN','%SQL_MAX_CHAR_LITERAL_LEN', - '%SQL_MAX_COLUMNS_IN_GROUP_BY','%SQL_MAX_COLUMNS_IN_INDEX','%SQL_MAX_COLUMNS_IN_ORDER_BY','%SQL_MAX_COLUMNS_IN_SELECT','%SQL_MAX_COLUMNS_IN_TABLE','%SQL_MAX_COLUMN_NAME_LEN','%SQL_MAX_CONCURRENT_ACTIVITIES','%SQL_MAX_CURSOR_NAME_LEN', - '%SQL_MAX_DRIVER_CONNECTIONS','%SQL_MAX_DSN_LENGTH','%SQL_MAX_IDENTIFIER_LEN','%SQL_MAX_INDEX_SIZE','%SQL_MAX_LENGTH','%SQL_MAX_LENGTH_DEFAULT','%SQL_MAX_MESSAGE_LENGTH','%SQL_MAX_NUMERIC_LEN', - '%SQL_MAX_OPTION_STRING_LENGTH','%SQL_MAX_OWNER_NAME_LEN','%SQL_MAX_PROCEDURE_NAME_LEN','%SQL_MAX_QUALIFIER_NAME_LEN','%SQL_MAX_ROWS','%SQL_MAX_ROWS_DEFAULT','%SQL_MAX_ROW_SIZE','%SQL_MAX_ROW_SIZE_INCLUDES_LONG', - '%SQL_MAX_SCHEMA_NAME_LEN','%SQL_MAX_STATEMENT_LEN','%SQL_MAX_TABLES_IN_SELECT','%SQL_MAX_TABLE_NAME_LEN','%SQL_MAX_USER_NAME_LEN','%SQL_MINUTE','%SQL_MINUTE_TO_SECOND','%SQL_MODE_DEFAULT', - '%SQL_MODE_READ_ONLY','%SQL_MODE_READ_WRITE','%SQL_MONTH','%SQL_MULTIPLE_ACTIVE_TXN','%SQL_MULT_RESULT_SETS','%SQL_NAMED','%SQL_NC_END','%SQL_NC_HIGH', - '%SQL_NC_LOW','%SQL_NC_START','%SQL_NEED_DATA','%SQL_NEED_LONG_DATA_LEN','%SQL_NNC_NON_NULL','%SQL_NNC_NULL','%SQL_NONSCROLLABLE','%SQL_NON_NULLABLE_COLUMNS', - '%SQL_NOSCAN','%SQL_NOSCAN_DEFAULT','%SQL_NOSCAN_OFF','%SQL_NOSCAN_ON','%SQL_NOT_DEFERRABLE','%SQL_NO_ACTION','%SQL_NO_COLUMN_NUMBER','%SQL_NO_DATA', - '%SQL_NO_DATA_FOUND','%SQL_NO_NULLS','%SQL_NO_ROW_NUMBER','%SQL_NO_TOTAL','%SQL_NTS','%SQL_NTSL','%SQL_NULLABLE','%SQL_NULLABLE_UNKNOWN', - '%SQL_NULL_COLLATION','%SQL_NULL_DATA','%SQL_NULL_HANDLE','%SQL_NULL_HDBC','%SQL_NULL_HDESC','%SQL_NULL_HENV','%SQL_NULL_HSTMT','%SQL_NUMERIC', - '%SQL_NUMERIC_FUNCTIONS','%SQL_OAC_LEVEL1','%SQL_OAC_LEVEL2','%SQL_OAC_NONE','%SQL_ODBC_API_CONFORMANCE','%SQL_ODBC_CURSORS','%SQL_ODBC_INTERFACE_CONFORMANCE','%SQL_ODBC_SAG_CLI_CONFORMANCE', - '%SQL_ODBC_SQL_CONFORMANCE','%SQL_ODBC_SQL_OPT_IEF','%SQL_ODBC_VER','%SQL_OIC_CORE','%SQL_OIC_LEVEL1','%SQL_OIC_LEVEL2','%SQL_OJ_ALL_COMPARISON_OPS','%SQL_OJ_CAPABILITIES', - '%SQL_OJ_FULL','%SQL_OJ_INNER','%SQL_OJ_LEFT','%SQL_OJ_NESTED','%SQL_OJ_NOT_ORDERED','%SQL_OJ_RIGHT','%SQL_OPT_TRACE','%SQL_OPT_TRACEFILE', - '%SQL_OPT_TRACE_DEFAULT','%SQL_OPT_TRACE_OFF','%SQL_OPT_TRACE_ON','%SQL_ORDER_BY_COLUMNS_IN_SELECT','%SQL_OSCC_COMPLIANT','%SQL_OSCC_NOT_COMPLIANT','%SQL_OSC_CORE','%SQL_OSC_EXTENDED', - '%SQL_OSC_MINIMUM','%SQL_OUTER_JOINS','%SQL_OUTER_JOIN_CAPABILITIES','%SQL_OU_DML_STATEMENTS','%SQL_OU_INDEX_DEFINITION','%SQL_OU_PRIVILEGE_DEFINITION','%SQL_OU_PROCEDURE_INVOCATION','%SQL_OU_TABLE_DEFINITION', - '%SQL_OV_ODBC2','%SQL_OV_ODBC3','%SQL_OWNER_TERM','%SQL_OWNER_USAGE','%SQL_PACKET_SIZE','%SQL_PARAM_ARRAY_ROW_COUNTS','%SQL_PARAM_ARRAY_SELECTS','%SQL_PARAM_BIND_BY_COLUMN', - '%SQL_PARAM_BIND_TYPE_DEFAULT','%SQL_PARAM_DIAG_UNAVAILABLE','%SQL_PARAM_ERROR','%SQL_PARAM_IGNORE','%SQL_PARAM_INPUT','%SQL_PARAM_INPUT_OUTPUT','%SQL_PARAM_OUTPUT','%SQL_PARAM_PROCEED', - '%SQL_PARAM_SUCCESS','%SQL_PARAM_SUCCESS_WITH_INFO','%SQL_PARAM_TYPE_DEFAULT','%SQL_PARAM_TYPE_UNKNOWN','%SQL_PARAM_UNUSED','%SQL_PARC_BATCH','%SQL_PARC_NO_BATCH','%SQL_PAS_BATCH', - '%SQL_PAS_NO_BATCH','%SQL_PAS_NO_SELECT','%SQL_PC_NON_PSEUDO','%SQL_PC_NOT_PSEUDO','%SQL_PC_PSEUDO','%SQL_PC_UNKNOWN','%SQL_POSITION','%SQL_POSITIONED_STATEMENTS', - '%SQL_POS_ADD','%SQL_POS_DELETE','%SQL_POS_OPERATIONS','%SQL_POS_POSITION','%SQL_POS_REFRESH','%SQL_POS_UPDATE','%SQL_PRED_BASIC','%SQL_PRED_CHAR', - '%SQL_PRED_NONE','%SQL_PRED_SEARCHABLE','%SQL_PROCEDURES','%SQL_PROCEDURE_TERM','%SQL_PS_POSITIONED_DELETE','%SQL_PS_POSITIONED_UPDATE','%SQL_PS_SELECT_FOR_UPDATE','%SQL_PT_FUNCTION', - '%SQL_PT_PROCEDURE','%SQL_PT_UNKNOWN','%SQL_QL_END','%SQL_QL_START','%SQL_QUALIFIER_LOCATION','%SQL_QUALIFIER_NAME_SEPARATOR','%SQL_QUALIFIER_TERM','%SQL_QUALIFIER_USAGE', - '%SQL_QUERY_TIMEOUT','%SQL_QUERY_TIMEOUT_DEFAULT','%SQL_QUICK','%SQL_QUIET_MODE','%SQL_QUOTED_IDENTIFIER_CASE','%SQL_QU_DML_STATEMENTS','%SQL_QU_INDEX_DEFINITION','%SQL_QU_PRIVILEGE_DEFINITION', - '%SQL_QU_PROCEDURE_INVOCATION','%SQL_QU_TABLE_DEFINITION','%SQL_RD_DEFAULT','%SQL_RD_OFF','%SQL_RD_ON','%SQL_REAL','%SQL_REFRESH','%SQL_RESET_PARAMS', - '%SQL_RESTRICT','%SQL_RESULT_COL','%SQL_RETRIEVE_DATA','%SQL_RETURN_VALUE','%SQL_ROLLBACK','%SQL_ROWSET_SIZE','%SQL_ROWSET_SIZE_DEFAULT','%SQL_ROWVER', - '%SQL_ROW_ADDED','%SQL_ROW_DELETED','%SQL_ROW_ERROR','%SQL_ROW_IDENTIFIER','%SQL_ROW_IGNORE','%SQL_ROW_NOROW','%SQL_ROW_NUMBER','%SQL_ROW_NUMBER_UNKNOWN', - '%SQL_ROW_PROCEED','%SQL_ROW_SUCCESS','%SQL_ROW_SUCCESS_WITH_INFO','%SQL_ROW_UPDATED','%SQL_ROW_UPDATES','%SQL_SCCO_LOCK','%SQL_SCCO_OPT_ROWVER','%SQL_SCCO_OPT_TIMESTAMP', - '%SQL_SCCO_OPT_VALUES','%SQL_SCCO_READ_ONLY','%SQL_SCC_ISO92_CLI','%SQL_SCC_XOPEN_CLI_VERSION1','%SQL_SCHEMA_TERM','%SQL_SCHEMA_USAGE','%SQL_SCOPE_CURROW','%SQL_SCOPE_SESSION', - '%SQL_SCOPE_TRANSACTION','%SQL_SCROLLABLE','%SQL_SCROLL_CONCURRENCY','%SQL_SCROLL_DYNAMIC','%SQL_SCROLL_FORWARD_ONLY','%SQL_SCROLL_KEYSET_DRIVEN','%SQL_SCROLL_OPTIONS','%SQL_SCROLL_STATIC', - '%SQL_SC_FIPS127_2_TRANSITIONAL','%SQL_SC_NON_UNIQUE','%SQL_SC_SQL92_ENTRY','%SQL_SC_SQL92_FULL','%SQL_SC_SQL92_INTERMEDIATE','%SQL_SC_TRY_UNIQUE','%SQL_SC_UNIQUE','%SQL_SDF_CURRENT_DATE', - '%SQL_SDF_CURRENT_TIME','%SQL_SDF_CURRENT_TIMESTAMP','%SQL_SEARCHABLE','%SQL_SEARCH_PATTERN_ESCAPE','%SQL_SECOND','%SQL_SENSITIVE','%SQL_SERVER_NAME','%SQL_SETPARAM_VALUE_MAX', - '%SQL_SETPOS_MAX_LOCK_VALUE','%SQL_SETPOS_MAX_OPTION_VALUE','%SQL_SET_DEFAULT','%SQL_SET_NULL','%SQL_SFKD_CASCADE','%SQL_SFKD_NO_ACTION','%SQL_SFKD_SET_DEFAULT','%SQL_SFKD_SET_NULL', - '%SQL_SFKU_CASCADE','%SQL_SFKU_NO_ACTION','%SQL_SFKU_SET_DEFAULT','%SQL_SFKU_SET_NULL','%SQL_SG_DELETE_TABLE','%SQL_SG_INSERT_COLUMN','%SQL_SG_INSERT_TABLE','%SQL_SG_REFERENCES_COLUMN', - '%SQL_SG_REFERENCES_TABLE','%SQL_SG_SELECT_TABLE','%SQL_SG_UPDATE_COLUMN','%SQL_SG_UPDATE_TABLE','%SQL_SG_USAGE_ON_CHARACTER_SET','%SQL_SG_USAGE_ON_COLLATION','%SQL_SG_USAGE_ON_DOMAIN','%SQL_SG_USAGE_ON_TRANSLATION', - '%SQL_SG_WITH_GRANT_OPTION','%SQL_SIGNED_OFFSET','%SQL_SIMULATE_CURSOR','%SQL_SMALLINT','%SQL_SNVF_BIT_LENGTH','%SQL_SNVF_CHARACTER_LENGTH','%SQL_SNVF_CHAR_LENGTH','%SQL_SNVF_EXTRACT', - '%SQL_SNVF_OCTET_LENGTH','%SQL_SNVF_POSITION','%SQL_SO_DYNAMIC','%SQL_SO_FORWARD_ONLY','%SQL_SO_KEYSET_DRIVEN','%SQL_SO_MIXED','%SQL_SO_STATIC','%SQL_SPECIAL_CHARACTERS', - '%SQL_SPEC_MAJOR','%SQL_SPEC_MINOR','%SQL_SP_BETWEEN','%SQL_SP_COMPARISON','%SQL_SP_EXISTS','%SQL_SP_IN','%SQL_SP_ISNOTNULL','%SQL_SP_ISNULL', - '%SQL_SP_LIKE','%SQL_SP_MATCH_FULL','%SQL_SP_MATCH_PARTIAL','%SQL_SP_MATCH_UNIQUE_FULL','%SQL_SP_MATCH_UNIQUE_PARTIAL','%SQL_SP_OVERLAPS','%SQL_SP_QUANTIFIED_COMPARISON','%SQL_SP_UNIQUE', - '%SQL_SQL92_DATETIME_FUNCTIONS','%SQL_SQL92_FOREIGN_KEY_DELETE_RULE','%SQL_SQL92_FOREIGN_KEY_UPDATE_RULE','%SQL_SQL92_GRANT','%SQL_SQL92_NUMERIC_VALUE_FUNCTIONS','%SQL_SQL92_PREDICATES','%SQL_SQL92_RELATIONAL_JOIN_OPERATORS','%SQL_SQL92_REVOKE', - '%SQL_SQL92_ROW_VALUE_CONSTRUCTOR','%SQL_SQL92_STRING_FUNCTIONS','%SQL_SQL92_VALUE_EXPRESSIONS','%SQL_SQLSTATE_SIZE','%SQL_SQL_CONFORMANCE','%SQL_SQ_COMPARISON','%SQL_SQ_CORRELATED_SUBQUERIES','%SQL_SQ_EXISTS', - '%SQL_SQ_IN','%SQL_SQ_QUANTIFIED','%SQL_SRJO_CORRESPONDING_CLAUSE','%SQL_SRJO_CROSS_JOIN','%SQL_SRJO_EXCEPT_JOIN','%SQL_SRJO_FULL_OUTER_JOIN','%SQL_SRJO_INNER_JOIN','%SQL_SRJO_INTERSECT_JOIN', - '%SQL_SRJO_LEFT_OUTER_JOIN','%SQL_SRJO_NATURAL_JOIN','%SQL_SRJO_RIGHT_OUTER_JOIN','%SQL_SRJO_UNION_JOIN','%SQL_SRVC_DEFAULT','%SQL_SRVC_NULL','%SQL_SRVC_ROW_SUBQUERY','%SQL_SRVC_VALUE_EXPRESSION', - '%SQL_SR_CASCADE','%SQL_SR_DELETE_TABLE','%SQL_SR_GRANT_OPTION_FOR','%SQL_SR_INSERT_COLUMN','%SQL_SR_INSERT_TABLE','%SQL_SR_REFERENCES_COLUMN','%SQL_SR_REFERENCES_TABLE','%SQL_SR_RESTRICT', - '%SQL_SR_SELECT_TABLE','%SQL_SR_UPDATE_COLUMN','%SQL_SR_UPDATE_TABLE','%SQL_SR_USAGE_ON_CHARACTER_SET','%SQL_SR_USAGE_ON_COLLATION','%SQL_SR_USAGE_ON_DOMAIN','%SQL_SR_USAGE_ON_TRANSLATION','%SQL_SSF_CONVERT', - '%SQL_SSF_LOWER','%SQL_SSF_SUBSTRING','%SQL_SSF_TRANSLATE','%SQL_SSF_TRIM_BOTH','%SQL_SSF_TRIM_LEADING','%SQL_SSF_TRIM_TRAILING','%SQL_SSF_UPPER','%SQL_SS_ADDITIONS', - '%SQL_SS_DELETIONS','%SQL_SS_UPDATES','%SQL_STANDARD_CLI_CONFORMANCE','%SQL_STATIC_CURSOR_ATTRIBUTES1','%SQL_STATIC_CURSOR_ATTRIBUTES2','%SQL_STATIC_SENSITIVITY','%SQL_STILL_EXECUTING','%SQL_STRING_FUNCTIONS', - '%SQL_SUBQUERIES','%SQL_SUCCESS','%SQL_SUCCESS_WITH_INFO','%SQL_SU_DML_STATEMENTS','%SQL_SU_INDEX_DEFINITION','%SQL_SU_PRIVILEGE_DEFINITION','%SQL_SU_PROCEDURE_INVOCATION','%SQL_SU_TABLE_DEFINITION', - '%SQL_SVE_CASE','%SQL_SVE_CAST','%SQL_SVE_COALESCE','%SQL_SVE_NULLIF','%SQL_SYSTEM_FUNCTIONS','%SQL_TABLE_STAT','%SQL_TABLE_TERM','%SQL_TC_ALL', - '%SQL_TC_DDL_COMMIT','%SQL_TC_DDL_IGNORE','%SQL_TC_DML','%SQL_TC_NONE','%SQL_TIME','%SQL_TIMEDATE_ADD_INTERVALS','%SQL_TIMEDATE_DIFF_INTERVALS','%SQL_TIMEDATE_FUNCTIONS', - '%SQL_TIMESTAMP','%SQL_TIMESTAMP_LEN','%SQL_TIME_LEN','%SQL_TINYINT','%SQL_TRANSACTION_CAPABLE','%SQL_TRANSACTION_ISOLATION_OPTION','%SQL_TRANSACTION_READ_COMMITTED','%SQL_TRANSACTION_READ_UNCOMMITTED', - '%SQL_TRANSACTION_REPEATABLE_READ','%SQL_TRANSACTION_SERIALIZABLE','%SQL_TRANSLATE_DLL','%SQL_TRANSLATE_OPTION','%SQL_TRUE','%SQL_TXN_CAPABLE','%SQL_TXN_ISOLATION','%SQL_TXN_ISOLATION_OPTION', - '%SQL_TXN_READ_COMMITTED','%SQL_TXN_READ_UNCOMMITTED','%SQL_TXN_REPEATABLE_READ','%SQL_TXN_SERIALIZABLE','%SQL_TYPE_DATE','%SQL_TYPE_NULL','%SQL_TYPE_TIME','%SQL_TYPE_TIMESTAMP', - '%SQL_UB_DEFAULT','%SQL_UB_FIXED','%SQL_UB_OFF','%SQL_UB_ON','%SQL_UB_VARIABLE','%SQL_UNBIND','%SQL_UNICODE','%SQL_UNICODE_CHAR', - '%SQL_UNICODE_LONGVARCHAR','%SQL_UNICODE_VARCHAR','%SQL_UNION','%SQL_UNION_STATEMENT','%SQL_UNKNOWN_TYPE','%SQL_UNNAMED','%SQL_UNSEARCHABLE','%SQL_UNSIGNED_OFFSET', - '%SQL_UNSPECIFIED','%SQL_UPDATE','%SQL_UPDATE_BY_BOOKMARK','%SQL_USER_NAME','%SQL_USE_BOOKMARKS','%SQL_US_UNION','%SQL_US_UNION_ALL','%SQL_U_UNION', - '%SQL_U_UNION_ALL','%SQL_VARBINARY','%SQL_VARCHAR','%SQL_XOPEN_CLI_YEAR','%SQL_YEAR','%SQL_YEAR_TO_MONTH','%SRCCOPY','%SS_BITMAP', - '%SS_BLACKFRAME','%SS_BLACKRECT','%SS_CENTER','%SS_CENTERIMAGE','%SS_ENDELLIPSIS','%SS_ETCHEDFRAME','%SS_ETCHEDHORZ','%SS_ETCHEDVERT', - '%SS_GRAYFRAME','%SS_GRAYRECT','%SS_LEFT','%SS_NOPREFIX','%SS_NOTIFY','%SS_NOWORDWRAP','%SS_PATHELLIPSIS','%SS_RIGHT', - '%SS_RIGHTJUST','%SS_SIMPLE','%SS_SUNKEN','%SS_WHITEFRAME','%SS_WHITERECT','%SS_WORDELLIPSIS','%STAT_FILL_FROM_MEMORY','%STAT_FILL_NATURAL', - '%STAT_FILL_NATURAL_ERASTONE','%STAT_FILL_NATURAL_EVEN','%STAT_FILL_NATURAL_FIBONACCI','%STAT_FILL_NATURAL_ODD','%STAT_FILL_WITH_NUMBER','%STAT_MINMAX_INDEX','%STAT_MINMAX_VALUE','%STAT_TYPE_BYTE', - '%STAT_TYPE_CURRENCY','%STAT_TYPE_DOUBLE','%STAT_TYPE_DWORD','%STAT_TYPE_EXT','%STAT_TYPE_INTEGER','%STAT_TYPE_LONG','%STAT_TYPE_QUAD','%STAT_TYPE_SINGLE', - '%STAT_TYPE_WORD','%SWP_ASYNCWINDOWPOS','%SWP_DEFERERASE','%SWP_DRAWFRAME','%SWP_FRAMECHANGED','%SWP_HIDEWINDOW','%SWP_NOACTIVATE','%SWP_NOCOPYBITS', - '%SWP_NOMOVE','%SWP_NOOWNERZORDER','%SWP_NOREDRAW','%SWP_NOREPOSITION','%SWP_NOSENDCHANGING','%SWP_NOSIZE','%SWP_NOZORDER','%SWP_SHOWWINDOW', - '%SW_FORCEMINIMIZE','%SW_HIDE','%SW_MAXIMIZE','%SW_MINIMIZE','%SW_NORMAL','%SW_RESTORE','%SW_SHOW','%SW_SHOWDEFAULT', - '%SW_SHOWMAXIMIZED','%SW_SHOWMINIMIZED','%SW_SHOWMINNOACTIVE','%SW_SHOWNA','%SW_SHOWNOACTIVATE','%SW_SHOWNORMAL','%TBASS_3DALG_DEFAULT','%TBASS_3DALG_FULL', - '%TBASS_3DALG_LIGHT','%TBASS_3DALG_OFF','%TBASS_3DMODE_NORMAL','%TBASS_3DMODE_OFF','%TBASS_3DMODE_RELATIVE','%TBASS_ACTIVE_PAUSED','%TBASS_ACTIVE_PLAYING','%TBASS_ACTIVE_STALLED', - '%TBASS_ACTIVE_STOPPED','%TBASS_CONFIG_3DALGORITHM','%TBASS_CONFIG_BUFFER','%TBASS_CONFIG_CURVE_PAN','%TBASS_CONFIG_CURVE_VOL','%TBASS_CONFIG_FLOATDSP','%TBASS_CONFIG_GVOL_MUSIC','%TBASS_CONFIG_GVOL_SAMPLE', - '%TBASS_CONFIG_GVOL_STREAM','%TBASS_CONFIG_MAXVOL','%TBASS_CONFIG_MP3_CODEC','%TBASS_CONFIG_NET_AGENT','%TBASS_CONFIG_NET_BUFFER','%TBASS_CONFIG_NET_PASSIVE','%TBASS_CONFIG_NET_PREBUF','%TBASS_CONFIG_NET_PROXY', - '%TBASS_CONFIG_NET_TIMEOUT','%TBASS_CONFIG_PAUSE_NOPLAY','%TBASS_CONFIG_UPDATEPERIOD','%TBASS_CTYPE_MUSIC_IT','%TBASS_CTYPE_MUSIC_MO3','%TBASS_CTYPE_MUSIC_MOD','%TBASS_CTYPE_MUSIC_MTM','%TBASS_CTYPE_MUSIC_S3M', - '%TBASS_CTYPE_MUSIC_XM','%TBASS_CTYPE_RECORD','%TBASS_CTYPE_SAMPLE','%TBASS_CTYPE_STREAM','%TBASS_CTYPE_STREAM_AIFF','%TBASS_CTYPE_STREAM_MP1','%TBASS_CTYPE_STREAM_MP2','%TBASS_CTYPE_STREAM_MP3', - '%TBASS_CTYPE_STREAM_OGG','%TBASS_CTYPE_STREAM_WAV','%TBASS_CTYPE_STREAM_WAV_FLOAT','%TBASS_CTYPE_STREAM_WAV_PCM','%TBASS_DATA_AVAILABLE','%TBASS_DATA_FFT1024','%TBASS_DATA_FFT2048','%TBASS_DATA_FFT4096', - '%TBASS_DATA_FFT512','%TBASS_DATA_FFT_INDIVIDUAL','%TBASS_DATA_FFT_NOWINDOW','%TBASS_DATA_FLOAT','%TBASS_DEVICE_3D','%TBASS_DEVICE_8BITS','%TBASS_DEVICE_LATENCY','%TBASS_DEVICE_MONO', - '%TBASS_DEVICE_NOSPEAKER','%TBASS_DEVICE_SPEAKERS','%TBASS_EAX_ENVIRONMENT_ALLEY','%TBASS_EAX_ENVIRONMENT_ARENA','%TBASS_EAX_ENVIRONMENT_AUDITORIUM','%TBASS_EAX_ENVIRONMENT_BATHROOM','%TBASS_EAX_ENVIRONMENT_CARPETEDHALLWAY','%TBASS_EAX_ENVIRONMENT_CAVE', - '%TBASS_EAX_ENVIRONMENT_CITY','%TBASS_EAX_ENVIRONMENT_CONCERTHALL','%TBASS_EAX_ENVIRONMENT_COUNT','%TBASS_EAX_ENVIRONMENT_DIZZY','%TBASS_EAX_ENVIRONMENT_DRUGGED','%TBASS_EAX_ENVIRONMENT_FOREST','%TBASS_EAX_ENVIRONMENT_GENERIC','%TBASS_EAX_ENVIRONMENT_HALLWAY', - '%TBASS_EAX_ENVIRONMENT_HANGAR','%TBASS_EAX_ENVIRONMENT_LIVINGROOM','%TBASS_EAX_ENVIRONMENT_MOUNTAINS','%TBASS_EAX_ENVIRONMENT_PADDEDCELL','%TBASS_EAX_ENVIRONMENT_PARKINGLOT','%TBASS_EAX_ENVIRONMENT_PLAIN','%TBASS_EAX_ENVIRONMENT_PSYCHOTIC','%TBASS_EAX_ENVIRONMENT_QUARRY', - '%TBASS_EAX_ENVIRONMENT_ROOM','%TBASS_EAX_ENVIRONMENT_SEWERPIPE','%TBASS_EAX_ENVIRONMENT_STONECORRIDOR','%TBASS_EAX_ENVIRONMENT_STONEROOM','%TBASS_EAX_ENVIRONMENT_UNDERWATER','%TBASS_ERROR_ALREADY','%TBASS_ERROR_BUFLOST','%TBASS_ERROR_CODEC', - '%TBASS_ERROR_CREATE','%TBASS_ERROR_DECODE','%TBASS_ERROR_DEVICE','%TBASS_ERROR_DRIVER','%TBASS_ERROR_DX','%TBASS_ERROR_EMPTY','%TBASS_ERROR_FILEFORM','%TBASS_ERROR_FILEOPEN', - '%TBASS_ERROR_FORMAT','%TBASS_ERROR_FREQ','%TBASS_ERROR_HANDLE','%TBASS_ERROR_ILLPARAM','%TBASS_ERROR_ILLTYPE','%TBASS_ERROR_INIT','%TBASS_ERROR_MEM','%TBASS_ERROR_NO3D', - '%TBASS_ERROR_NOCHAN','%TBASS_ERROR_NOEAX','%TBASS_ERROR_NOFX','%TBASS_ERROR_NOHW','%TBASS_ERROR_NONET','%TBASS_ERROR_NOPAUSE','%TBASS_ERROR_NOPLAY','%TBASS_ERROR_NOTAVAIL', - '%TBASS_ERROR_NOTFILE','%TBASS_ERROR_PLAYING','%TBASS_ERROR_POSITION','%TBASS_ERROR_SPEAKER','%TBASS_ERROR_START','%TBASS_ERROR_TIMEOUT','%TBASS_ERROR_UNKNOWN','%TBASS_ERROR_VERSION', - '%TBASS_FALSE','%TBASS_FILEPOS_CURRENT','%TBASS_FILEPOS_DECODE','%TBASS_FILEPOS_DOWNLOAD','%TBASS_FILEPOS_END','%TBASS_FILEPOS_START','%TBASS_FILE_CLOSE','%TBASS_FILE_LEN', - '%TBASS_FILE_READ','%TBASS_FILE_SEEK','%TBASS_FX_CHORUS','%TBASS_FX_COMPRESSOR','%TBASS_FX_DISTORTION','%TBASS_FX_ECHO','%TBASS_FX_FLANGER','%TBASS_FX_GARGLE', - '%TBASS_FX_I3DL2REVERB','%TBASS_FX_PARAMEQ','%TBASS_FX_PHASE_180','%TBASS_FX_PHASE_90','%TBASS_FX_PHASE_NEG_180','%TBASS_FX_PHASE_NEG_90','%TBASS_FX_PHASE_ZERO','%TBASS_FX_REVERB', - '%TBASS_INPUT_LEVEL','%TBASS_INPUT_OFF','%TBASS_INPUT_ON','%TBASS_INPUT_TYPE_ANALOG','%TBASS_INPUT_TYPE_AUX','%TBASS_INPUT_TYPE_CD','%TBASS_INPUT_TYPE_DIGITAL','%TBASS_INPUT_TYPE_LINE', - '%TBASS_INPUT_TYPE_MASK','%TBASS_INPUT_TYPE_MIC','%TBASS_INPUT_TYPE_PHONE','%TBASS_INPUT_TYPE_SPEAKER','%TBASS_INPUT_TYPE_SYNTH','%TBASS_INPUT_TYPE_UNDEF','%TBASS_INPUT_TYPE_WAVE','%TBASS_MP3_SETPOS', - '%TBASS_MUSIC_3D','%TBASS_MUSIC_ATTRIB_AMPLIFY','%TBASS_MUSIC_ATTRIB_BPM','%TBASS_MUSIC_ATTRIB_PANSEP','%TBASS_MUSIC_ATTRIB_PSCALER','%TBASS_MUSIC_ATTRIB_SPEED','%TBASS_MUSIC_ATTRIB_VOL_CHAN','%TBASS_MUSIC_ATTRIB_VOL_GLOBAL', - '%TBASS_MUSIC_ATTRIB_VOL_INST','%TBASS_MUSIC_AUTOFREE','%TBASS_MUSIC_CALCLEN','%TBASS_MUSIC_DECODE','%TBASS_MUSIC_FLOAT','%TBASS_MUSIC_FT2MOD','%TBASS_MUSIC_FX','%TBASS_MUSIC_LOOP', - '%TBASS_MUSIC_MONO','%TBASS_MUSIC_NONINTER','%TBASS_MUSIC_NOSAMPLE','%TBASS_MUSIC_POSRESET','%TBASS_MUSIC_POSRESETEX','%TBASS_MUSIC_PRESCAN','%TBASS_MUSIC_PT1MOD','%TBASS_MUSIC_RAMP', - '%TBASS_MUSIC_RAMPS','%TBASS_MUSIC_STOPBACK','%TBASS_MUSIC_SURROUND','%TBASS_MUSIC_SURROUND2','%TBASS_OBJECT_DS','%TBASS_OBJECT_DS3DL','%TBASS_OK','%TBASS_RECORD_PAUSE', - '%TBASS_SAMPLE_3D','%TBASS_SAMPLE_8BITS','%TBASS_SAMPLE_FLOAT','%TBASS_SAMPLE_FX','%TBASS_SAMPLE_LOOP','%TBASS_SAMPLE_MONO','%TBASS_SAMPLE_MUTEMAX','%TBASS_SAMPLE_OVER_DIST', - '%TBASS_SAMPLE_OVER_POS','%TBASS_SAMPLE_OVER_VOL','%TBASS_SAMPLE_SOFTWARE','%TBASS_SAMPLE_VAM','%TBASS_SLIDE_FREQ','%TBASS_SLIDE_PAN','%TBASS_SLIDE_VOL','%TBASS_SPEAKER_CENLFE', - '%TBASS_SPEAKER_CENTER','%TBASS_SPEAKER_FRONT','%TBASS_SPEAKER_FRONTLEFT','%TBASS_SPEAKER_FRONTRIGHT','%TBASS_SPEAKER_LEFT','%TBASS_SPEAKER_LFE','%TBASS_SPEAKER_REAR','%TBASS_SPEAKER_REAR2', - '%TBASS_SPEAKER_REAR2LEFT','%TBASS_SPEAKER_REAR2RIGHT','%TBASS_SPEAKER_REARLEFT','%TBASS_SPEAKER_REARRIGHT','%TBASS_SPEAKER_RIGHT','%TBASS_STREAMPROC_END','%TBASS_STREAM_AUTOFREE','%TBASS_STREAM_BLOCK', - '%TBASS_STREAM_DECODE','%TBASS_STREAM_PRESCAN','%TBASS_STREAM_RESTRATE','%TBASS_STREAM_STATUS','%TBASS_SYNC_DOWNLOAD','%TBASS_SYNC_END','%TBASS_SYNC_FREE','%TBASS_SYNC_MESSAGE', - '%TBASS_SYNC_META','%TBASS_SYNC_MIXTIME','%TBASS_SYNC_MUSICFX','%TBASS_SYNC_MUSICINST','%TBASS_SYNC_MUSICPOS','%TBASS_SYNC_ONETIME','%TBASS_SYNC_POS','%TBASS_SYNC_SLIDE', - '%TBASS_SYNC_STALL','%TBASS_TAG_HTTP','%TBASS_TAG_ICY','%TBASS_TAG_ID3','%TBASS_TAG_ID3V2','%TBASS_TAG_META','%TBASS_TAG_MUSIC_INST','%TBASS_TAG_MUSIC_MESSAGE', - '%TBASS_TAG_MUSIC_NAME','%TBASS_TAG_MUSIC_SAMPLE','%TBASS_TAG_OGG','%TBASS_TAG_RIFF_INFO','%TBASS_TAG_VENDOR','%TBASS_TRUE','%TBASS_UNICODE','%TBASS_VAM_HARDWARE', - '%TBASS_VAM_SOFTWARE','%TBASS_VAM_TERM_DIST','%TBASS_VAM_TERM_PRIO','%TBASS_VAM_TERM_TIME','%TBASS_VERSION','%TBCD_CHANNEL','%TBCD_THUMB','%TBCD_TICS', - '%TBGL_ALIGN_CENTER','%TBGL_ALIGN_CENTER_CENTER','%TBGL_ALIGN_CENTER_DOWN','%TBGL_ALIGN_CENTER_UP','%TBGL_ALIGN_LEFT','%TBGL_ALIGN_LEFT_CENTER','%TBGL_ALIGN_LEFT_DOWN','%TBGL_ALIGN_LEFT_UP', - '%TBGL_ALIGN_RIGHT','%TBGL_ALIGN_RIGHT_CENTER','%TBGL_ALIGN_RIGHT_DOWN','%TBGL_ALIGN_RIGHT_UP','%TBGL_ALWAYS','%TBGL_EQUAL','%TBGL_ERROR_FILE','%TBGL_ERROR_MSGBOX', - '%TBGL_ERROR_NONE','%TBGL_GEQUAL','%TBGL_GREATER','%TBGL_LEQUAL','%TBGL_LESS','%TBGL_LIGHT_AMBIENT','%TBGL_LIGHT_CONSTANT_ATTENUATION','%TBGL_LIGHT_DIFFUSE', - '%TBGL_LIGHT_LINEAR_ATTENUATION','%TBGL_LIGHT_POSITION','%TBGL_LIGHT_QUADRATIC_ATTENUATION','%TBGL_LIGHT_SPECULAR','%TBGL_LIGHT_SPOT_CUTOFF','%TBGL_LIGHT_SPOT_DIRECTION','%TBGL_LIGHT_SPOT_EXPONENT','%TBGL_M15B', - '%TBGL_M15G','%TBGL_M15LAYER','%TBGL_M15PSTOP','%TBGL_M15R','%TBGL_M15TEXN','%TBGL_M15TEXX','%TBGL_M15TEXY','%TBGL_M15X', - '%TBGL_M15Y','%TBGL_M15Z','%TBGL_NEVER','%TBGL_NORMAL_NONE','%TBGL_NORMAL_PRECISE','%TBGL_NORMAL_SMOOTH','%TBGL_NOTEQUAL','%TBGL_OBJ_CUBE', - '%TBGL_OBJ_CUBE3','%TBGL_OBJ_CYLINDER','%TBGL_OBJ_SPHERE','%TBGL_PINFO_RGB','%TBGL_PINFO_XYZ','%TBGL_TEX_LINEAR','%TBGL_TEX_MIPMAP','%TBGL_TEX_NEAREST', - '%TBM_CLEARSEL','%TBM_CLEARTICS','%TBM_GETBUDDY','%TBM_GETCHANNELRECT','%TBM_GETLINESIZE','%TBM_GETNUMTICS','%TBM_GETPAGESIZE','%TBM_GETPOS', - '%TBM_GETPTICS','%TBM_GETRANGEMAX','%TBM_GETRANGEMIN','%TBM_GETSELEND','%TBM_GETSELSTART','%TBM_GETTHUMBLENGTH','%TBM_GETTHUMBRECT','%TBM_GETTIC', - '%TBM_GETTICPOS','%TBM_GETTOOLTIPS','%TBM_GETUNICODEFORMAT','%TBM_SETBUDDY','%TBM_SETLINESIZE','%TBM_SETPAGESIZE','%TBM_SETPOS','%TBM_SETRANGE', - '%TBM_SETRANGEMAX','%TBM_SETRANGEMIN','%TBM_SETSEL','%TBM_SETSELEND','%TBM_SETSELSTART','%TBM_SETTHUMBLENGTH','%TBM_SETTIC','%TBM_SETTICFREQ', - '%TBM_SETTIPSIDE','%TBM_SETTOOLTIPS','%TBM_SETUNICODEFORMAT','%TBS_AUTOTICKS','%TBS_BOTH','%TBS_BOTTOM','%TBS_DOWNISLEFT','%TBS_ENABLESELRANGE', - '%TBS_FIXEDLENGTH','%TBS_HORZ','%TBS_LEFT','%TBS_NOTHUMB','%TBS_NOTICKS','%TBS_REVERSED','%TBS_RIGHT','%TBS_TOOLTIPS', - '%TBS_TOP','%TBS_VERT','%TBTS_BOTTOM','%TBTS_LEFT','%TBTS_RIGHT','%TBTS_TOP','%TB_%VT_BSTR','%TB_%VT_CY', - '%TB_%VT_DATE','%TB_%VT_EMPTY','%TB_%VT_I2','%TB_%VT_I4','%TB_%VT_NULL','%TB_%VT_R4','%TB_%VT_R8','%TB_BOTTOM', - '%TB_CLASS_E_NOAGGREGATION','%TB_CO_E_CLASSSTRING','%TB_DISPATCH_METHOD','%TB_DISPATCH_PROPERTYGET','%TB_DISPATCH_PROPERTYPUT','%TB_DISPATCH_PROPERTYPUTREF','%TB_ENDTRACK','%TB_E_INVALIDARG', - '%TB_E_NOINTERFACE','%TB_E_OUTOFMEMORY','%TB_IMGCTX_ACTUALSIZE','%TB_IMGCTX_AUTOSIZE','%TB_IMGCTX_FITTOHEIGHT','%TB_IMGCTX_FITTOWIDTH','%TB_IMGCTX_STRETCH','%TB_LINEDOWN', - '%TB_LINEUP','%TB_MK_E_CONNECTMANUALLY','%TB_MK_E_EXCEEDEDDEADLINE','%TB_MK_E_INTERMEDIATEINTERFACENOTSUPPORTED','%TB_MK_E_NOOBJECT','%TB_MK_E_SYNTAX','%TB_PAGEDOWN','%TB_PAGEUP', - '%TB_REGDB_E_CLASSNOTREG','%TB_REGDB_E_WRITEREGDB','%TB_SIZEOF_TBVARIANT','%TB_S_FALSE','%TB_S_OK','%TB_THUMBPOSITION','%TB_THUMBTRACK','%TB_TOP', - '%TCM_FIRST','%TCM_GETCURSEL','%TCN_FOCUSCHANGE','%TCN_GETOBJECT','%TCN_SELCHANGE','%TCN_SELCHANGING','%TCS_BOTTOM','%TCS_BUTTONS', - '%TCS_EX_FLATSEPARATORS','%TCS_EX_REGISTERDROP','%TCS_FIXEDWIDTH','%TCS_FLATBUTTONS','%TCS_FOCUSNEVER','%TCS_FOCUSONBUTTONDOWN','%TCS_FORCEICONLEFT','%TCS_FORCELABELLEFT', - '%TCS_HOTTRACK','%TCS_MULTILINE','%TCS_MULTISELECT','%TCS_OWNERDRAWFIXED','%TCS_RAGGEDRIGHT','%TCS_RIGHT','%TCS_RIGHTJUSTIFY','%TCS_SCROLLOPPOSITE', - '%TCS_SINGLELINE','%TCS_TABS','%TCS_TOOLTIPS','%TCS_VERTICAL','%TM_PLAINTEXT','%TM_RICHTEXT','%TOKENIZER_DEFAULT_ALPHA','%TOKENIZER_DEFAULT_DELIM', - '%TOKENIZER_DEFAULT_DQUOTE','%TOKENIZER_DEFAULT_NEWLINE','%TOKENIZER_DEFAULT_NUMERIC','%TOKENIZER_DEFAULT_SPACE','%TOKENIZER_DELIMITER','%TOKENIZER_EOL','%TOKENIZER_ERROR','%TOKENIZER_FINISHED', - '%TOKENIZER_NUMBER','%TOKENIZER_QUOTE','%TOKENIZER_STRING','%TOKENIZER_UNDEFTOK','%TRUE','%TV_FIRST','%UDM_GETACCEL','%UDM_GETBASE', - '%UDM_GETBUDDY','%UDM_GETPOS','%UDM_GETPOS32','%UDM_GETRANGE','%UDM_GETRANGE32','%UDM_GETUNICODEFORMAT','%UDM_SETACCEL','%UDM_SETBASE', - '%UDM_SETBUDDY','%UDM_SETPOS','%UDM_SETPOS32','%UDM_SETRANGE','%UDM_SETRANGE32','%UDM_SETUNICODEFORMAT','%UDS_ALIGNLEFT','%UDS_ALIGNRIGHT', - '%UDS_ARROWKEYS','%UDS_AUTOBUDDY','%UDS_HORZ','%UDS_HOTTRACK','%UDS_NOTHOUSANDS','%UDS_SETBUDDYINT','%UDS_WRAP','%UD_MAXVAL', - '%UD_MINVAL','%VK_0','%VK_1','%VK_2','%VK_3','%VK_4','%VK_5','%VK_6', - '%VK_7','%VK_8','%VK_9','%VK_A','%VK_ACCEPT','%VK_ADD','%VK_APPS','%VK_B', - '%VK_BACK','%VK_C','%VK_CANCEL','%VK_CAPITAL','%VK_CLEAR','%VK_CONTROL','%VK_CONVERT','%VK_D', - '%VK_DECIMAL','%VK_DELETE','%VK_DIVIDE','%VK_DOWN','%VK_E','%VK_END','%VK_ESCAPE','%VK_EXECUTE', - '%VK_F','%VK_F1','%VK_F10','%VK_F11','%VK_F12','%VK_F13','%VK_F14','%VK_F15', - '%VK_F16','%VK_F17','%VK_F18','%VK_F19','%VK_F2','%VK_F20','%VK_F21','%VK_F22', - '%VK_F23','%VK_F24','%VK_F3','%VK_F4','%VK_F5','%VK_F6','%VK_F7','%VK_F8', - '%VK_F9','%VK_FINAL','%VK_G','%VK_H','%VK_HANGEUL','%VK_HANGUL','%VK_HANJA','%VK_HELP', - '%VK_HOME','%VK_I','%VK_INSERT','%VK_J','%VK_JUNJA','%VK_K','%VK_KANA','%VK_KANJI', - '%VK_L','%VK_LBUTTON','%VK_LEFT','%VK_LINEFEED','%VK_LWIN','%VK_M','%VK_MBUTTON','%VK_MENU', - '%VK_MODECHANGE','%VK_MULTIPLY','%VK_N','%VK_NEXT','%VK_NONCONVERT','%VK_NUMLOCK','%VK_NUMPAD0','%VK_NUMPAD1', - '%VK_NUMPAD2','%VK_NUMPAD3','%VK_NUMPAD4','%VK_NUMPAD5','%VK_NUMPAD6','%VK_NUMPAD7','%VK_NUMPAD8','%VK_NUMPAD9', - '%VK_O','%VK_P','%VK_PAUSE','%VK_PGDN','%VK_PGUP','%VK_PRINT','%VK_PRIOR','%VK_Q', - '%VK_R','%VK_RBUTTON','%VK_RETURN','%VK_RIGHT','%VK_RWIN','%VK_S','%VK_SCROLL','%VK_SELECT', - '%VK_SEPARATOR','%VK_SHIFT','%VK_SLEEP','%VK_SNAPSHOT','%VK_SPACE','%VK_SUBTRACT','%VK_T','%VK_TAB', - '%VK_U','%VK_UP','%VK_V','%VK_W','%VK_X','%VK_XBUTTON1','%VK_XBUTTON2','%VK_Y', - '%VK_Z','%VT_ARRAY','%VT_BLOB','%VT_BLOB_OBJECT','%VT_BOOL','%VT_BSTR','%VT_BYREF','%VT_CARRAY', - '%VT_CF','%VT_CLSID','%VT_CY','%VT_DATE','%VT_DISPATCH','%VT_EMPTY','%VT_ERROR','%VT_FILETIME', - '%VT_HRESULT','%VT_I1','%VT_I2','%VT_I4','%VT_I8','%VT_INT','%VT_LPSTR','%VT_LPWSTR', - '%VT_NULL','%VT_PTR','%VT_R4','%VT_R8','%VT_RECORD','%VT_RESERVED','%VT_SAFEARRAY','%VT_STORAGE', - '%VT_STORED_OBJECT','%VT_STREAM','%VT_STREAMED_OBJECT','%VT_UI1','%VT_UI2','%VT_UI4','%VT_UI8','%VT_UINT', - '%VT_UNKNOWN','%VT_USERDEFINED','%VT_VARIANT','%VT_VECTOR','%VT_VOID','%WAVE_FORMAT_1M08','%WAVE_FORMAT_1M16','%WAVE_FORMAT_1S08', - '%WAVE_FORMAT_1S16','%WAVE_FORMAT_2M08','%WAVE_FORMAT_2M16','%WAVE_FORMAT_2S08','%WAVE_FORMAT_2S16','%WAVE_FORMAT_4M08','%WAVE_FORMAT_4M16','%WAVE_FORMAT_4S08', - '%WAVE_FORMAT_4S16','%WBF_CUSTOM','%WBF_LEVEL1','%WBF_LEVEL2','%WBF_OVERFLOW','%WBF_WORDBREAK','%WBF_WORDWRAP','%WHITE', - '%WIN_FINDTITLECONTAIN','%WIN_FINDTITLEEND','%WIN_FINDTITLEEQUAL','%WIN_FINDTITLESTART','%WM_ACTIVATE','%WM_ACTIVATEAPP','%WM_CAPTURECHANGED','%WM_CHAR', - '%WM_CLOSE','%WM_COMMAND','%WM_DESTROY','%WM_DROPFILES','%WM_ERASEBKGND','%WM_GETTEXTLENGTH','%WM_HOTKEY','%WM_HSCROLL', - '%WM_IDLE','%WM_INITDIALOG','%WM_KEYDOWN','%WM_KEYUP','%WM_KILLFOCUS','%WM_LBUTTONDBLCLK','%WM_LBUTTONDOWN','%WM_LBUTTONUP', - '%WM_MBUTTONDBLCLK','%WM_MBUTTONDOWN','%WM_MBUTTONUP','%WM_MOUSEFIRST','%WM_MOUSEMOVE','%WM_MOUSEWHEEL','%WM_MOVE','%WM_MOVING', - '%WM_NCLBUTTONDOWN','%WM_NCRBUTTONDOWN','%WM_NEXTDLGCTL','%WM_NOTIFY','%WM_PAINT','%WM_QUIT','%WM_RBUTTONDBLCLK','%WM_RBUTTONDOWN', - '%WM_RBUTTONUP','%WM_SETFOCUS','%WM_SETFONT','%WM_SETTEXT','%WM_SIZE','%WM_SIZING','%WM_SYSCOMMAND','%WM_TIMER', - '%WM_USER','%WM_VSCROLL','%WS_BORDER','%WS_CAPTION','%WS_CHILD','%WS_CLIPCHILDREN','%WS_CLIPSIBLINGS','%WS_DISABLED', - '%WS_DLGFRAME','%WS_EX_ACCEPTFILES','%WS_EX_APPWINDOW','%WS_EX_CLIENTEDGE','%WS_EX_CONTEXTHELP','%WS_EX_CONTROLPARENT','%WS_EX_LAYERED','%WS_EX_LEFT', - '%WS_EX_LEFTSCROLLBAR','%WS_EX_LTRREADING','%WS_EX_MDICHILD','%WS_EX_NOPARENTNOTIFY','%WS_EX_OVERLAPPEDWINDOW','%WS_EX_PALETTEWINDOW','%WS_EX_RIGHT','%WS_EX_RIGHTSCROLLBAR', - '%WS_EX_RTLREADING','%WS_EX_STATICEDGE','%WS_EX_TOOLWINDOW','%WS_EX_TOPMOST','%WS_EX_TRANSPARENT','%WS_EX_WINDOWEDGE','%WS_GROUP','%WS_HSCROLL', - '%WS_ICONIC','%WS_MAXIMIZE','%WS_MAXIMIZEBOX','%WS_MINIMIZE','%WS_MINIMIZEBOX','%WS_OVERLAPPEDWINDOW','%WS_POPUP','%WS_POPUPWINDOW', - '%WS_SYSMENU','%WS_TABSTOP','%WS_THICKFRAME','%WS_VISIBLE','%WS_VSCROLL','%YELLOW','%ZERO','CRLF', - 'FALSE','M_E','M_PI','NULL','TAB','TRUE' - ) - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #993333; font-style: italic; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - 0 => 'color: #333333;' - ), - 'STRINGS' => array( - 0 => 'color: #800080;' - ), - 'NUMBERS' => array( - 0 => 'color: #CC0000;' - ), - 'METHODS' => array( - 1 => 'color: #66cc66;' - ), - 'SYMBOLS' => array( - 0 => 'color: #333333;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '_' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/tsql.php b/system/application/libraries/geshi/tsql.php deleted file mode 100644 index 4750997a3..000000000 --- a/system/application/libraries/geshi/tsql.php +++ /dev/null @@ -1,375 +0,0 @@ -<?php -/************************************************************************************* - * tsql.php - * -------- - * Author: Duncan Lock (dunc@dflock.co.uk) - * Copyright: (c) 2006 Duncan Lock (http://dflock.co.uk/), Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2005/11/22 - * - * T-SQL language file for GeSHi. - * - * CHANGES - * ------- - * 2004/01/23 (1.0.0) - * - First Release - * - * TODO (updated 2006/01/23) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'T-SQL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - // Datatypes - 'bigint', 'tinyint', 'money', - 'smallmoney', 'datetime', 'smalldatetime', - 'text', 'nvarchar', 'ntext', 'varbinary', 'image', - 'sql_variant', 'uniqueidentifier', - - // Keywords - 'ABSOLUTE', 'ACTION', 'ADD', 'ADMIN', 'AFTER', 'AGGREGATE', 'ALIAS', 'ALLOCATE', 'ALTER', 'ARE', 'ARRAY', 'AS', - 'ASC', 'ASSERTION', 'AT', 'AUTHORIZATION', 'BACKUP', 'BEFORE', 'BEGIN', 'BINARY', 'BIT', 'BLOB', 'BOOLEAN', 'BOTH', 'BREADTH', - 'BREAK', 'BROWSE', 'BULK', 'BY', 'CALL', 'CASCADE', 'CASCADED', 'CASE', 'CAST', 'CATALOG', 'CHAR', 'CHARACTER', 'CHECK', 'CHECKPOINT', - 'CLASS', 'CLOB', 'CLOSE', 'CLUSTERED', 'COALESCE', 'COLLATE', 'COLLATION', 'COLUMN', 'COMMIT', 'COMPLETION', 'COMPUTE', 'CONNECT', - 'CONNECTION', 'CONSTRAINT', 'CONSTRAINTS', 'CONSTRUCTOR', 'CONTAINS', 'CONTAINSTABLE', 'CONTINUE', 'CONVERT', 'CORRESPONDING', 'CREATE', - 'CUBE', 'CURRENT', 'CURRENT_DATE', 'CURRENT_PATH', 'CURRENT_ROLE', 'CURRENT_TIME', 'CURRENT_TIMESTAMP', 'CURRENT_USER', - 'CURSOR', 'CYCLE', 'DATA', 'DATABASE', 'DATE', 'DAY', 'DBCC', 'DEALLOCATE', 'DEC', 'DECIMAL', 'DECLARE', 'DEFAULT', 'DEFERRABLE', - 'DEFERRED', 'DELETE', 'DENY', 'DEPTH', 'DEREF', 'DESC', 'DESCRIBE', 'DESCRIPTOR', 'DESTROY', 'DESTRUCTOR', 'DETERMINISTIC', - 'DIAGNOSTICS', 'DICTIONARY', 'DISCONNECT', 'DISK', 'DISTINCT', 'DISTRIBUTED', 'DOMAIN', 'DOUBLE', 'DROP', 'DUMMY', 'DUMP', 'DYNAMIC', - 'EACH', 'ELSE', 'END', 'END-EXEC', 'EQUALS', 'ERRLVL', 'ESCAPE', 'EVERY', 'EXCEPT', 'EXCEPTION', 'EXEC', 'EXECUTE', 'EXIT', - 'EXTERNAL', 'FALSE', 'FETCH', 'FILE', 'FILLFACTOR', 'FIRST', 'FLOAT', 'FOR', 'FOREIGN', 'FOUND', 'FREE', 'FREETEXT', 'FREETEXTTABLE', - 'FROM', 'FULL', 'FUNCTION', 'GENERAL', 'GET', 'GLOBAL', 'GOTO', 'GRANT', 'GROUP', 'GROUPING', 'HAVING', 'HOLDLOCK', 'HOST', 'HOUR', - 'IDENTITY', 'IDENTITY_INSERT', 'IDENTITYCOL', 'IF', 'IGNORE', 'IMMEDIATE', 'INDEX', 'INDICATOR', 'INITIALIZE', 'INITIALLY', - 'INNER', 'INOUT', 'INPUT', 'INSERT', 'INT', 'INTEGER', 'INTERSECT', 'INTERVAL', 'INTO', 'IS', 'ISOLATION', 'ITERATE', 'KEY', - 'KILL', 'LANGUAGE', 'LARGE', 'LAST', 'LATERAL', 'LEADING', 'LEFT', 'LESS', 'LEVEL', 'LIMIT', 'LINENO', 'LOAD', 'LOCAL', - 'LOCALTIME', 'LOCALTIMESTAMP', 'LOCATOR', 'MAP', 'MATCH', 'MINUTE', 'MODIFIES', 'MODIFY', 'MODULE', 'MONTH', 'NAMES', 'NATIONAL', - 'NATURAL', 'NCHAR', 'NCLOB', 'NEW', 'NEXT', 'NO', 'NOCHECK', 'NONCLUSTERED', 'NONE', 'NULLIF', 'NUMERIC', 'OBJECT', 'OF', - 'OFF', 'OFFSETS', 'OLD', 'ON', 'ONLY', 'OPEN', 'OPENDATASOURCE', 'OPENQUERY', 'OPENROWSET', 'OPENXML', 'OPERATION', 'OPTION', - 'ORDER', 'ORDINALITY', 'OUT', 'OUTPUT', 'OVER', 'PAD', 'PARAMETER', 'PARAMETERS', 'PARTIAL', 'PATH', 'PERCENT', 'PLAN', - 'POSTFIX', 'PRECISION', 'PREFIX', 'PREORDER', 'PREPARE', 'PRESERVE', 'PRIMARY', 'PRINT', 'PRIOR', 'PRIVILEGES', 'PROC', 'PROCEDURE', - 'PUBLIC', 'RAISERROR', 'READ', 'READS', 'READTEXT', 'REAL', 'RECONFIGURE', 'RECURSIVE', 'REF', 'REFERENCES', 'REFERENCING', 'RELATIVE', - 'REPLICATION', 'RESTORE', 'RESTRICT', 'RESULT', 'RETURN', 'RETURNS', 'REVOKE', 'RIGHT', 'ROLE', 'ROLLBACK', 'ROLLUP', 'ROUTINE', 'ROW', - 'ROWGUIDCOL', 'ROWS', 'RULE', 'SAVE', 'SAVEPOINT', 'SCHEMA', 'SCOPE', 'SCROLL', 'SEARCH', 'SECOND', 'SECTION', 'SELECT', - 'SEQUENCE', 'SESSION', 'SESSION_USER', 'SET', 'SETS', 'SETUSER', 'SHUTDOWN', 'SIZE', 'SMALLINT', 'SPACE', 'SPECIFIC', - 'SPECIFICTYPE', 'SQL', 'SQLEXCEPTION', 'SQLSTATE', 'SQLWARNING', 'START', 'STATE', 'STATEMENT', 'STATIC', 'STATISTICS', 'STRUCTURE', - 'SYSTEM_USER', 'TABLE', 'TEMPORARY', 'TERMINATE', 'TEXTSIZE', 'THAN', 'THEN', 'TIME', 'TIMESTAMP', 'TIMEZONE_HOUR', 'TIMEZONE_MINUTE', - 'TO', 'TOP', 'TRAILING', 'TRAN', 'TRANSACTION', 'TRANSLATION', 'TREAT', 'TRIGGER', 'TRUE', 'TRUNCATE', 'TSEQUAL', 'UNDER', 'UNION', - 'UNIQUE', 'UNKNOWN', 'UNNEST', 'UPDATE', 'UPDATETEXT', 'USAGE', 'USE', 'USER', 'USING', 'VALUE', 'VALUES', 'VARCHAR', 'VARIABLE', - 'VARYING', 'VIEW', 'WAITFOR', 'WHEN', 'WHENEVER', 'WHERE', 'WHILE', 'WITH', 'WITHOUT', 'WORK', 'WRITE', 'WRITETEXT', 'YEAR', 'ZONE', - 'UNCOMMITTED', 'NOCOUNT', - ), - 2 => array( - /* - Built-in functions - Highlighted in pink. - */ - - //Configuration Functions - '@@DATEFIRST','@@OPTIONS','@@DBTS','@@REMSERVER','@@LANGID','@@SERVERNAME', - '@@LANGUAGE','@@SERVICENAME','@@LOCK_TIMEOUT','@@SPID','@@MAX_CONNECTIONS', - '@@TEXTSIZE','@@MAX_PRECISION','@@VERSION','@@NESTLEVEL', - - //Cursor Functions - '@@CURSOR_ROWS','@@FETCH_STATUS', - - //Date and Time Functions - 'DATEADD','DATEDIFF','DATENAME','DATEPART','GETDATE','GETUTCDATE', - - //Mathematical Functions - 'ABS','DEGREES','RAND','ACOS','EXP','ROUND','ASIN','FLOOR','SIGN', - 'ATAN','LOG','SIN','ATN2','LOG10','SQUARE','CEILING','PI','SQRT','COS', - 'POWER','TAN','COT','RADIANS', - - //Meta Data Functions - 'COL_LENGTH','COL_NAME','FULLTEXTCATALOGPROPERTY', - 'COLUMNPROPERTY','FULLTEXTSERVICEPROPERTY','DATABASEPROPERTY','INDEX_COL', - 'DATABASEPROPERTYEX','INDEXKEY_PROPERTY','DB_ID','INDEXPROPERTY','DB_NAME', - 'OBJECT_ID','FILE_ID','OBJECT_NAME','FILE_NAME','OBJECTPROPERTY','FILEGROUP_ID', - '@@PROCID','FILEGROUP_NAME','SQL_VARIANT_PROPERTY','FILEGROUPPROPERTY', - 'TYPEPROPERTY','FILEPROPERTY', - - //Security Functions - 'IS_SRVROLEMEMBER','SUSER_SID','SUSER_SNAME','USER_ID', - 'HAS_DBACCESS','IS_MEMBER', - - //String Functions - 'ASCII','SOUNDEX','PATINDEX','CHARINDEX','REPLACE','STR', - 'DIFFERENCE','QUOTENAME','STUFF','REPLICATE','SUBSTRING','LEN', - 'REVERSE','UNICODE','LOWER','UPPER','LTRIM','RTRIM', - - //System Functions - 'APP_NAME','COLLATIONPROPERTY','@@ERROR','FORMATMESSAGE', - 'GETANSINULL','HOST_ID','HOST_NAME','IDENT_CURRENT','IDENT_INCR', - 'IDENT_SEED','@@IDENTITY','ISDATE','ISNUMERIC','PARSENAME','PERMISSIONS', - '@@ROWCOUNT','ROWCOUNT_BIG','SCOPE_IDENTITY','SERVERPROPERTY','SESSIONPROPERTY', - 'STATS_DATE','@@TRANCOUNT','USER_NAME', - - //System Statistical Functions - '@@CONNECTIONS','@@PACK_RECEIVED','@@CPU_BUSY','@@PACK_SENT', - '@@TIMETICKS','@@IDLE','@@TOTAL_ERRORS','@@IO_BUSY', - '@@TOTAL_READ','@@PACKET_ERRORS','@@TOTAL_WRITE', - - //Text and Image Functions - 'TEXTPTR','TEXTVALID', - - //Aggregate functions - 'AVG', 'MAX', 'BINARY_CHECKSUM', 'MIN', 'CHECKSUM', 'SUM', 'CHECKSUM_AGG', - 'STDEV', 'COUNT', 'STDEVP', 'COUNT_BIG', 'VAR', 'VARP' - ), - 3 => array( - /* - System stored procedures - Higlighted dark brown - */ - - //Active Directory Procedures - 'sp_ActiveDirectory_Obj', 'sp_ActiveDirectory_SCP', - - //Catalog Procedures - 'sp_column_privileges', 'sp_special_columns', 'sp_columns', 'sp_sproc_columns', - 'sp_databases', 'sp_statistics', 'sp_fkeys', 'sp_stored_procedures', 'sp_pkeys', - 'sp_table_privileges', 'sp_server_info', 'sp_tables', - - //Cursor Procedures - 'sp_cursor_list', 'sp_describe_cursor_columns', 'sp_describe_cursor', 'sp_describe_cursor_tables', - - //Database Maintenance Plan Procedures - 'sp_add_maintenance_plan', 'sp_delete_maintenance_plan_db', 'sp_add_maintenance_plan_db', - 'sp_delete_maintenance_plan_job', 'sp_add_maintenance_plan_job', 'sp_help_maintenance_plan', - 'sp_delete_maintenance_plan', - - //Distributed Queries Procedures - 'sp_addlinkedserver', 'sp_indexes', 'sp_addlinkedsrvlogin', 'sp_linkedservers', 'sp_catalogs', - 'sp_primarykeys', 'sp_column_privileges_ex', 'sp_columns_ex', - 'sp_table_privileges_ex', 'sp_tables_ex', 'sp_foreignkeys', - - //Full-Text Search Procedures - 'sp_fulltext_catalog', 'sp_help_fulltext_catalogs_cursor', 'sp_fulltext_column', - 'sp_help_fulltext_columns', 'sp_fulltext_database', 'sp_help_fulltext_columns_cursor', - 'sp_fulltext_service', 'sp_help_fulltext_tables', 'sp_fulltext_table', - 'sp_help_fulltext_tables_cursor', 'sp_help_fulltext_catalogs', - - //Log Shipping Procedures - 'sp_add_log_shipping_database', 'sp_delete_log_shipping_database', 'sp_add_log_shipping_plan', - 'sp_delete_log_shipping_plan', 'sp_add_log_shipping_plan_database', - 'sp_delete_log_shipping_plan_database', 'sp_add_log_shipping_primary', - 'sp_delete_log_shipping_primary', 'sp_add_log_shipping_secondary', - 'sp_delete_log_shipping_secondary', 'sp_can_tlog_be_applied', 'sp_get_log_shipping_monitor_info', - 'sp_change_monitor_role', 'sp_remove_log_shipping_monitor', 'sp_change_primary_role', - 'sp_resolve_logins', 'sp_change_secondary_role', 'sp_update_log_shipping_monitor_info', - 'sp_create_log_shipping_monitor_account', 'sp_update_log_shipping_plan', - 'sp_define_log_shipping_monitor', 'sp_update_log_shipping_plan_database', - - //OLE Automation Extended Stored Procedures - 'sp_OACreate', 'sp_OAMethod', 'sp_OADestroy', 'sp_OASetProperty', 'sp_OAGetErrorInfo', - 'sp_OAStop', 'sp_OAGetProperty', - - //Replication Procedures - 'sp_add_agent_parameter', 'sp_enableagentoffload', 'sp_add_agent_profile', - 'sp_enumcustomresolvers', 'sp_addarticle', 'sp_enumdsn', 'sp_adddistpublisher', - 'sp_enumfullsubscribers', 'sp_adddistributiondb', 'sp_expired_subscription_cleanup', - 'sp_adddistributor', 'sp_generatefilters', 'sp_addmergealternatepublisher', - 'sp_getagentoffloadinfo', 'sp_addmergearticle', 'sp_getmergedeletetype', 'sp_addmergefilter', - 'sp_get_distributor', 'sp_addmergepublication', 'sp_getqueuedrows', 'sp_addmergepullsubscription', - 'sp_getsubscriptiondtspackagename', 'sp_addmergepullsubscription_agent', 'sp_grant_publication_access', - 'sp_addmergesubscription', 'sp_help_agent_default', 'sp_addpublication', 'sp_help_agent_parameter', - 'sp_addpublication_snapshot', 'sp_help_agent_profile', 'sp_addpublisher70', 'sp_helparticle', - 'sp_addpullsubscription', 'sp_helparticlecolumns', 'sp_addpullsubscription_agent', 'sp_helparticledts', - 'sp_addscriptexec', 'sp_helpdistpublisher', 'sp_addsubscriber', 'sp_helpdistributiondb', - 'sp_addsubscriber_schedule', 'sp_helpdistributor', 'sp_addsubscription', 'sp_helpmergealternatepublisher', - 'sp_addsynctriggers', 'sp_helpmergearticle', 'sp_addtabletocontents', 'sp_helpmergearticlecolumn', - 'sp_adjustpublisheridentityrange', 'sp_helpmergearticleconflicts', 'sp_article_validation', - 'sp_helpmergeconflictrows', 'sp_articlecolumn', 'sp_helpmergedeleteconflictrows', 'sp_articlefilter', - 'sp_helpmergefilter', 'sp_articlesynctranprocs', 'sp_helpmergepublication', 'sp_articleview', - 'sp_helpmergepullsubscription', 'sp_attachsubscription', 'sp_helpmergesubscription', 'sp_browsesnapshotfolder', - 'sp_helppublication', 'sp_browsemergesnapshotfolder', 'sp_help_publication_access', 'sp_browsereplcmds', - 'sp_helppullsubscription', 'sp_change_agent_parameter', 'sp_helpreplfailovermode', 'sp_change_agent_profile', - 'sp_helpreplicationdboption', 'sp_changearticle', 'sp_helpreplicationoption', 'sp_changedistpublisher', - 'sp_helpsubscriberinfo', 'sp_changedistributiondb', 'sp_helpsubscription', 'sp_changedistributor_password', - 'sp_ivindexhasnullcols', 'sp_changedistributor_property', 'sp_helpsubscription_properties', 'sp_changemergearticle', - 'sp_link_publication', 'sp_changemergefilter', 'sp_marksubscriptionvalidation', 'sp_changemergepublication', - 'sp_mergearticlecolumn', 'sp_changemergepullsubscription', 'sp_mergecleanupmetadata', 'sp_changemergesubscription', - 'sp_mergedummyupdate', 'sp_changepublication', 'sp_mergesubscription_cleanup', 'sp_changesubscriber', - 'sp_publication_validation', 'sp_changesubscriber_schedule', 'sp_refreshsubscriptions', 'sp_changesubscriptiondtsinfo', - 'sp_reinitmergepullsubscription', 'sp_changesubstatus', 'sp_reinitmergesubscription', 'sp_change_subscription_properties', - 'sp_reinitpullsubscription', 'sp_check_for_sync_trigger', 'sp_reinitsubscription', 'sp_copymergesnapshot', - 'sp_removedbreplication', 'sp_copysnapshot', 'sp_repladdcolumn', 'sp_copysubscription', 'sp_replcmds', - 'sp_deletemergeconflictrow', 'sp_replcounters', 'sp_disableagentoffload', 'sp_repldone', 'sp_drop_agent_parameter', - 'sp_repldropcolumn', 'sp_drop_agent_profile', 'sp_replflush', 'sp_droparticle', 'sp_replicationdboption', - 'sp_dropanonymouseagent', 'sp_replication_agent_checkup', 'sp_dropdistpublisher', 'sp_replqueuemonitor', - 'sp_dropdistributiondb', 'sp_replsetoriginator', 'sp_dropmergealternatepublisher', 'sp_replshowcmds', - 'sp_dropdistributor', 'sp_repltrans', 'sp_dropmergearticle', 'sp_restoredbreplication', 'sp_dropmergefilter', - 'sp_revoke_publication_access', 'sp_scriptsubconflicttable', 'sp_dropmergepublication', 'sp_script_synctran_commands', - 'sp_dropmergepullsubscription', 'sp_setreplfailovermode', 'sp_showrowreplicainfo', 'sp_dropmergesubscription', - 'sp_subscription_cleanup', 'sp_droppublication', 'sp_table_validation', 'sp_droppullsubscription', - 'sp_update_agent_profile', 'sp_dropsubscriber', 'sp_validatemergepublication', 'sp_dropsubscription', - 'sp_validatemergesubscription', 'sp_dsninfo', 'sp_vupgrade_replication', 'sp_dumpparamcmd', - - //Security Procedures - 'sp_addalias', 'sp_droprolemember', 'sp_addapprole', 'sp_dropserver', 'sp_addgroup', 'sp_dropsrvrolemember', - 'sp_dropuser', 'sp_addlogin', 'sp_grantdbaccess', 'sp_addremotelogin', - 'sp_grantlogin', 'sp_addrole', 'sp_helpdbfixedrole', 'sp_addrolemember', 'sp_helpgroup', - 'sp_addserver', 'sp_helplinkedsrvlogin', 'sp_addsrvrolemember', 'sp_helplogins', 'sp_adduser', - 'sp_helpntgroup', 'sp_approlepassword', 'sp_helpremotelogin', 'sp_changedbowner', 'sp_helprole', - 'sp_changegroup', 'sp_helprolemember', 'sp_changeobjectowner', 'sp_helprotect', 'sp_change_users_login', - 'sp_helpsrvrole', 'sp_dbfixedrolepermission', 'sp_helpsrvrolemember', 'sp_defaultdb', 'sp_helpuser', - 'sp_defaultlanguage', 'sp_MShasdbaccess', 'sp_denylogin', 'sp_password', 'sp_dropalias', 'sp_remoteoption', - 'sp_dropapprole', 'sp_revokedbaccess', 'sp_dropgroup', 'sp_revokelogin', 'sp_droplinkedsrvlogin', - 'sp_setapprole', 'sp_droplogin', 'sp_srvrolepermission', 'sp_dropremotelogin', 'sp_validatelogins', 'sp_droprole', - - //SQL Mail Procedures - 'sp_processmail', 'xp_sendmail', 'xp_deletemail', 'xp_startmail', 'xp_findnextmsg', 'xp_stopmail', 'xp_readmail', - - //SQL Profiler Procedures - 'sp_trace_create', 'sp_trace_setfilter', 'sp_trace_generateevent', 'sp_trace_setstatus', 'sp_trace_setevent', - - //SQL Server Agent Procedures - 'sp_add_alert', 'sp_help_jobhistory', 'sp_add_category', 'sp_help_jobschedule', 'sp_add_job', - 'sp_help_jobserver', 'sp_add_jobschedule', 'sp_help_jobstep', 'sp_add_jobserver', 'sp_help_notification', - 'sp_add_jobstep', 'sp_help_operator', 'sp_add_notification', 'sp_help_targetserver', - 'sp_add_operator', 'sp_help_targetservergroup', 'sp_add_targetservergroup', 'sp_helptask', - 'sp_add_targetsvrgrp_member', 'sp_manage_jobs_by_login', 'sp_addtask', 'sp_msx_defect', - 'sp_apply_job_to_targets', 'sp_msx_enlist', 'sp_delete_alert', 'sp_post_msx_operation', - 'sp_delete_category', 'sp_purgehistory', 'sp_delete_job', 'sp_purge_jobhistory', 'sp_delete_jobschedule', - 'sp_reassigntask', 'sp_delete_jobserver', 'sp_remove_job_from_targets', 'sp_delete_jobstep', - 'sp_resync_targetserver', 'sp_delete_notification', 'sp_start_job', 'sp_delete_operator', - 'sp_stop_job', 'sp_delete_targetserver', 'sp_update_alert', 'sp_delete_targetservergroup', - 'sp_update_category', 'sp_delete_targetsvrgrp_member', 'sp_update_job', 'sp_droptask', - 'sp_update_jobschedule', 'sp_help_alert', 'sp_update_jobstep', 'sp_help_category', - 'sp_update_notification', 'sp_help_downloadlist', 'sp_update_operator', 'sp_helphistory', - 'sp_update_targetservergroup', 'sp_help_job', 'sp_updatetask', 'xp_sqlagent_proxy_account', - - //System Procedures - 'sp_add_data_file_recover_suspect_db', 'sp_helpconstraint', 'sp_addextendedproc', - 'sp_helpdb', 'sp_addextendedproperty', 'sp_helpdevice', 'sp_add_log_file_recover_suspect_db', - 'sp_helpextendedproc', 'sp_addmessage', 'sp_helpfile', 'sp_addtype', 'sp_helpfilegroup', - 'sp_addumpdevice', 'sp_helpindex', 'sp_altermessage', 'sp_helplanguage', 'sp_autostats', - 'sp_helpserver', 'sp_attach_db', 'sp_helpsort', 'sp_attach_single_file_db', 'sp_helpstats', - 'sp_bindefault', 'sp_helptext', 'sp_bindrule', 'sp_helptrigger', 'sp_bindsession', - 'sp_indexoption', 'sp_certify_removable', 'sp_invalidate_textptr', 'sp_configure', - 'sp_lock', 'sp_create_removable', 'sp_monitor', 'sp_createstats', 'sp_procoption', - 'sp_cycle_errorlog', 'sp_recompile', 'sp_datatype_info', 'sp_refreshview', 'sp_dbcmptlevel', - 'sp_releaseapplock', 'sp_dboption', 'sp_rename', 'sp_dbremove', 'sp_renamedb', - 'sp_delete_backuphistory', 'sp_resetstatus', 'sp_depends', 'sp_serveroption', 'sp_detach_db', - 'sp_setnetname', 'sp_dropdevice', 'sp_settriggerorder', 'sp_dropextendedproc', 'sp_spaceused', - 'sp_dropextendedproperty', 'sp_tableoption', 'sp_dropmessage', 'sp_unbindefault', 'sp_droptype', - 'sp_unbindrule', 'sp_executesql', 'sp_updateextendedproperty', 'sp_getapplock', 'sp_updatestats', - 'sp_getbindtoken', 'sp_validname', 'sp_help', 'sp_who', - - //Web Assistant Procedures - 'sp_dropwebtask', 'sp_makewebtask', 'sp_enumcodepages', 'sp_runwebtask', - - //XML Procedures - 'sp_xml_preparedocument', 'sp_xml_removedocument', - - //General Extended Procedures - 'xp_cmdshellxp_logininfo', 'xp_enumgroups', 'xp_msver', 'xp_findnextmsgxp_revokelogin', - 'xp_grantlogin', 'xp_sprintf', 'xp_logevent', 'xp_sqlmaint', 'xp_loginconfig', 'xp_sscanf', - - //API System Stored Procedures - 'sp_cursor', 'sp_cursorclose', 'sp_cursorexecute', 'sp_cursorfetch', 'sp_cursoropen', - 'sp_cursoroption', 'sp_cursorprepare', 'sp_cursorunprepare', 'sp_execute', 'sp_prepare', 'sp_unprepare', - - //Misc - 'sp_createorphan', 'sp_droporphans', 'sp_reset_connection', 'sp_sdidebug' - ), - 4 => array( - //Function/sp's higlighted brown. - 'fn_helpcollations', 'fn_listextendedproperty ', 'fn_servershareddrives', - 'fn_trace_geteventinfo', 'fn_trace_getfilterinfo', 'fn_trace_getinfo', - 'fn_trace_gettable', 'fn_virtualfilestats','fn_listextendedproperty', - ), - ), - 'SYMBOLS' => array( - '!', '!=', '%', '&', '&&', '(', ')', '*', '+', '-', '/', '<', '<<', '<=', - '<=>', '<>', '=', '>', '>=', '>>', '^', 'ALL', 'AND', 'ANY', 'BETWEEN', 'CROSS', - 'EXISTS', 'IN', 'JOIN', 'LIKE', 'NOT', 'NULL', 'OR', 'OUTER', 'SOME', '|', '||', '~' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #FF00FF;', - 3 => 'color: #AF0000;', - 4 => 'color: #AF0000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008080;', - 'MULTI' => 'color: #008080;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #808080;' - ), - 'STRINGS' => array( - 0 => 'color: #FF0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #808080;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/typoscript.php b/system/application/libraries/geshi/typoscript.php deleted file mode 100644 index be809e856..000000000 --- a/system/application/libraries/geshi/typoscript.php +++ /dev/null @@ -1,300 +0,0 @@ -<?php -/************************************************************************************* - * typoscript.php - * -------- - * Author: Jan-Philipp Halle (typo3@jphalle.de) - * Copyright: (c) 2005 Jan-Philipp Halle (http://www.jphalle.de/) - * Release Version: 1.0.8.6 - * Date Started: 2005/07/29 - * - * TypoScript language file for GeSHi. - * - * CHANGES - * ------- - * 2008/07/11 (1.0.8) - * - Michiel Roos <geshi@typofree.org> Complete rewrite - * 2005/07/29 (1.0.0) - * - First Release - * - * TODO (updated 2004/07/14) - * ------------------------- - * <things-to-do> - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'TypoScript', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(2 => '/(?<!(#|\'|"))(?:#(?!(?:[a-fA-F0-9]{6}|[a-fA-F0-9]{3}))[^\n#]+|#{2}[^\n#]+|#{7,999}[^\n]+)/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - // Conditions: http://documentation.typo3.org/documentation/tsref/conditions/ - 1 => array( - 'browser', 'compatVersion', 'dayofmonth', 'dayofweek', 'device', - 'globalString', 'globalVars', 'hostname', 'hour', - 'ip', 'language', 'loginUser', 'loginuser', 'minute', - 'month', 'PIDinRootline', 'PIDupinRootline', - 'system', 'treelevel', 'useragent', 'userFunc', - 'usergroup', 'version' - ), - - // Functions: http://documentation.typo3.org/documentation/tsref/functions/ - 2 => array( - 'addParams', 'encapsLines', 'filelink', 'HTMLparser', - 'HTMLparser_tags', 'if', 'imageLinkWrap', - 'imgResource', 'makelinks', 'numRows', 'parseFunc', - 'select', 'split', 'stdWrap', 'tableStyle', 'tags', - 'textStyle', 'typolink' - ), - - // Toplevel objects: http://documentation.typo3.org/documentation/tsref/tlo-objects/ - 3 => array( - 'CARRAY', 'CONFIG', 'CONSTANTS', 'FE_DATA', 'FE_TABLE', 'FRAME', - 'FRAMESET', 'META', 'PAGE', 'plugin' - ), - - // Content Objects (cObject) : http://documentation.typo3.org/documentation/tsref/cobjects/ - 4 => array( - 'CASE', 'CLEARGIF', 'COA', 'COA_INT', 'COBJ_ARRAY', 'COLUMNS', - 'CONTENT', 'CTABLE', 'EDITPANEL', 'FILE', 'FORM', - 'HMENU', 'HRULER', 'HTML', 'IMAGE', 'IMGTEXT', - 'IMG_RESOURCE', 'LOAD_REGISTER', 'MULTIMEDIA', - 'OTABLE', 'PHP_SCRIPT', 'PHP_SCRIPT_EXT', - 'PHP_SCRIPT_INT', 'RECORDS', 'RESTORE_REGISTER', - 'SEARCHRESULT', 'TEMPLATE', 'TEXT', 'USER', - 'USER_INT' - ), - - // GIFBUILDER toplevel link: http://documentation.typo3.org/documentation/tsref/gifbuilder/ - 5 => array( - 'GIFBUILDER', - ), - - // GIFBUILDER: http://documentation.typo3.org/documentation/tsref/gifbuilder/ - // skipped fields: IMAGE, TEXT - // NOTE! the IMAGE and TEXT field already are linked in group 4, they - // cannot be linked twice . . . . unfortunately - 6 => array( - 'ADJUST', 'BOX', 'CROP', 'EFFECT', 'EMBOSS', - 'IMGMAP', 'OUTLINE', 'SCALE', 'SHADOW', - 'WORKAREA' - ), - - // MENU Objects: http://documentation.typo3.org/documentation/tsref/menu/ - 7 => array( - 'GMENU', 'GMENU_FOLDOUT', 'GMENU_LAYERS', 'IMGMENU', - 'IMGMENUITEM', 'JSMENU', 'JSMENUITEM', 'TMENU', - 'TMENUITEM', 'TMENU_LAYERS' - ), - - // MENU common properties: http://documentation.typo3.org/documentation/tsref/menu/common-properties/ - 8 => array( - 'alternativeSortingField', 'begin', 'debugItemConf', - 'imgNameNotRandom', 'imgNamePrefix', - 'itemArrayProcFunc', 'JSWindow', 'maxItems', - 'minItems', 'overrideId', 'sectionIndex', - 'showAccessRestrictedPages', 'submenuObjSuffixes' - ), - - // MENU item states: http://documentation.typo3.org/documentation/tsref/menu/item-states/ - 9 => array( - 'ACT', 'ACTIFSUB', 'ACTIFSUBRO', 'ACTRO', 'CUR', 'CURIFSUB', - 'CURIFSUBRO', 'CURRO', 'IFSUB', 'IFSUBRO', 'NO', - 'SPC', 'USERDEF1', 'USERDEF1RO', 'USERDEF2', - 'USERDEF2RO', 'USR', 'USRRO' - ), - ), - - // Does not include '-' because of stuff like htmlTag_langKey = en-GB and - // lib.nav-sub - 'SYMBOLS' => array( - 0 => array( - '|', - '+', '*', '/', '%', - '!', '&&', '^', - '<', '>', '=', - '?', ':', - '.' - ), - 1 => array( - '(', ')', '{', '}', '[', ']' - ) - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true, - 4 => true, - 5 => true, - 6 => true, - 7 => true, - 8 => true, - 9 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #ed7d14;', - 2 => 'font-weight: bold;', - 3 => 'color: #990000; font-weight: bold;', - 4 => 'color: #990000; font-weight: bold;', - 5 => 'color: #990000; font-weight: bold;', - 6 => 'color: #990000; font-weight: bold;', - 7 => 'color: #990000; font-weight: bold;', - 8 => 'font-weight: bold;', - 9 => 'color: #990000; font-weight: bold;', - ), - 'COMMENTS' => array( - 1 => 'color: #aaa; font-style: italic;', - 2 => 'color: #aaa; font-style: italic;', - 'MULTI' => 'color: #aaa; font-style: italic;' - ), - 'STRINGS' => array( - 0 => 'color: #ac14aa;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000e0; font-weight: bold;', - 2 => 'color: #0000e0; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'SYMBOLS' => array( - 0 => 'color: #339933; font-weight: bold;', - // Set this to the same value as brackets above - 1 => 'color: #009900; font-weight: bold;' - ), - 'REGEXPS' => array( - 0 => 'color: #009900;', - 1 => 'color: #009900; font-weight: bold;', - 2 => 'color: #3366CC;', - 3 => 'color: #000066; font-weight: bold;', - 4 => 'color: #ed7d14;', - 5 => 'color: #000066; font-weight: bold;', - 6 => 'color: #009900;', - 7 => 'color: #3366CC;' - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => 'http://documentation.typo3.org/documentation/tsref/conditions/{FNAME}/', - 2 => 'http://documentation.typo3.org/documentation/tsref/functions/{FNAME}/', - 3 => 'http://documentation.typo3.org/documentation/tsref/tlo-objects/{FNAME}/', - 4 => 'http://documentation.typo3.org/documentation/tsref/cobjects/{FNAME}/', - 5 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/', - 6 => 'http://documentation.typo3.org/documentation/tsref/gifbuilder/{FNAME}/', - 7 => 'http://documentation.typo3.org/documentation/tsref/menu/{FNAME}/', - 8 => 'http://documentation.typo3.org/documentation/tsref/menu/common-properties/', - 9 => 'http://documentation.typo3.org/documentation/tsref/menu/item-states/' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - // Constant - 0 => array( - GESHI_SEARCH => '(\{)(\$[a-zA-Z_\.]+[a-zA-Z0-9_\.]*)(\})', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '\\3' - ), - - // Constant dollar sign - 1 => array( - GESHI_SEARCH => '(\$)([a-zA-Z_\.]+[a-zA-Z0-9_\.]*)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '\\2' - ), - - // xhtml tag - 2 => array( - GESHI_SEARCH => '(<[a-zA-Z\!\/].*?>)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 's', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - - // extension keys / tables: (static|user|ttx|tx|tt|fe)_something[_something] - 3 => array( - GESHI_SEARCH => '(plugin\.|[^\.]\b)((?:static|user|ttx|tx|tt|fe)(?:_[0-9A-Za-z_]+?)\b)', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - - // conditions and controls - 4 => array( - GESHI_SEARCH => '(\[)(globalVar|global|end)\b', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - - // lowlevel setup and constant objects - 5 => array( - GESHI_SEARCH => '([^\.\$-\{]\b)(cObj|field|config|content|file|frameset|includeLibs|lib|page|plugin|register|resources|sitemap|sitetitle|styles|temp|tt_content|tt_news|types|xmlnews)\b', - GESHI_REPLACE => '\\2', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '\\1', - GESHI_AFTER => '' - ), - - // markers - 6 => array( - GESHI_SEARCH => '(###[^#]+###)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - - // hex color codes - 7 => array( - GESHI_SEARCH => '(#[a-fA-F0-9]{6}\b|#[a-fA-F0-9]{3}\b)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ) - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), -); - -?> diff --git a/system/application/libraries/geshi/vb.php b/system/application/libraries/geshi/vb.php deleted file mode 100644 index 9849b3e86..000000000 --- a/system/application/libraries/geshi/vb.php +++ /dev/null @@ -1,133 +0,0 @@ -<?php -/************************************************************************************* - * vb.php - * ------ - * Author: Roberto Rossi (rsoftware@altervista.org) - * Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), - * Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/08/30 - * - * Visual Basic language file for GeSHi. - * - * CHANGES - * ------- - * 2008/08/27 (1.0.8.1) - * - changed keyword list for better Visual Studio compliance - * 2008/08/26 (1.0.8.1) - * - Fixed multiline comments - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/08/30 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Visual Basic', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - // Comments (either single or multiline with _ - 1 => '/\'.*(?<! _)\n/sU', - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'AddressOf', 'Alias', 'And', 'Append', 'As', 'BF', 'Binary', - 'Boolean', 'ByRef', 'Byte', 'ByVal', 'Call', 'Case', 'CBool', - 'CByte', 'CCur', 'CDate', 'CDbl', 'CDec', 'CInt', 'CLng', - 'Close', 'Collection', 'Const', 'Control', 'CSng', 'CStr', - 'Currency', 'CVar', 'Date', 'Declare', 'Dim', 'Do', 'Double', - 'Each', 'Else', 'ElseIf', 'End', 'Enum', 'Erase', 'Error', - 'Event', 'Exit', 'Explicit', 'False', 'For', 'Friend', - 'Function', 'Get', 'GoSub', 'Goto', 'If', 'Implements', 'In', - 'Input', 'Integer', 'Is', 'LBound', 'Let', 'Lib', 'Like', - 'Line', 'Long', 'Loop', 'Mod', 'New', 'Next', 'Not', - 'Nothing', 'Object', 'On', 'Open', 'Option', 'Optional', - 'Or', 'Output', 'ParamArray', 'Preserve', 'Print', 'Private', - 'Property', 'Public', 'RaiseEvent', 'Random', 'ReDim', - 'Resume', 'Select', 'Set', 'Single', 'Static', 'Step', - 'Stop', 'String', 'Sub', 'Then', 'To', 'True', 'Type', - 'TypeOf', 'UBound', 'Until', 'Variant', 'While', 'With', - 'WithEvents', 'Xor' - ) - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000;' - ), - 'BRACKETS' => array( - ), - 'STRINGS' => array( - 0 => 'color: #800000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #800000; font-weight: bold;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - ) - ), - 'URLS' => array( - 1 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/vbnet.php b/system/application/libraries/geshi/vbnet.php deleted file mode 100644 index 683b744f9..000000000 --- a/system/application/libraries/geshi/vbnet.php +++ /dev/null @@ -1,201 +0,0 @@ -<?php -/************************************************************************************* - * vbnet.php - * --------- - * Author: Alan Juden (alan@judenware.org) - * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter) - * Release Version: 1.0.8.6 - * Date Started: 2004/06/04 - * - * VB.NET language file for GeSHi. - * - * CHANGES - * ------- - * 2004/11/27 (1.0.0) - * - Initial release - * - * TODO (updated 2004/11/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'vb.net', - 'COMMENT_SINGLE' => array(1 => "'"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - '3DDKSHADOW', '3DHIGHLIGHT', '3DLIGHT', 'ABORT', 'ABORTRETRYIGNORE', 'ACTIVEBORDER', - 'ACTIVETITLEBAR', 'ALIAS', 'APPLICATIONMODAL', 'APPLICATIONWORKSPACE', 'ARCHIVE', - 'BACK', 'BINARYCOMPARE', 'BLACK', 'BLUE', 'BUTTONFACE', 'BUTTONSHADOW', 'BUTTONTEXT', - 'CANCEL', 'CDROM', 'CR', 'CRITICAL', 'CRLF', 'CYAN', 'DEFAULT', 'DEFAULTBUTTON1', - 'DEFAULTBUTTON2', 'DEFAULTBUTTON3', 'DESKTOP', 'DIRECTORY', 'EXCLAMATION', 'FALSE', - 'FIXED', 'FORAPPENDING', 'FORMFEED', 'FORREADING', 'FORWRITING', 'FROMUNICODE', - 'GRAYTEXT', 'GREEN', 'HIDDEN', 'HIDE', 'HIGHLIGHT', 'HIGHLIGHTTEXT', 'HIRAGANA', - 'IGNORE', 'INACTIVEBORDER', 'INACTIVECAPTIONTEXT', 'INACTIVETITLEBAR', 'INFOBACKGROUND', - 'INFORMATION', 'INFOTEXT', 'KATAKANALF', 'LOWERCASE', 'MAGENTA', 'MAXIMIZEDFOCUS', - 'MENUBAR', 'MENUTEXT', 'METHOD', 'MINIMIZEDFOCUS', 'MINIMIZEDNOFOCUS', 'MSGBOXRIGHT', - 'MSGBOXRTLREADING', 'MSGBOXSETFOREGROUND', 'NARROW', 'NEWLINE', 'NO', 'NORMAL', - 'NORMALFOCUS', 'NORMALNOFOCUS', 'NULLSTRING', 'OBJECTERROR', 'OK', 'OKCANCEL', 'OKONLY', - 'PROPERCASE', 'QUESTION', 'RAMDISK', 'READONLY', 'RED', 'REMOTE', 'REMOVABLE', 'RETRY', - 'RETRYCANCEL', 'SCROLLBARS', 'SYSTEMFOLDER', 'SYSTEMMODAL', 'TEMPORARYFOLDER', - 'TEXTCOMPARE', 'TITLEBARTEXT', 'TRUE', 'UNICODE', 'UNKNOWN', 'UPPERCASE', 'VERTICALTAB', - 'VOLUME', 'WHITE', 'WIDE', 'WIN16', 'WIN32', 'WINDOWBACKGROUND', 'WINDOWFRAME', - 'WINDOWSFOLDER', 'WINDOWTEXT', 'YELLOW', 'YES', 'YESNO', 'YESNOCANCEL' - ), - 2 => array( - 'AndAlso', 'As', 'ADDHANDLER', 'ASSEMBLY', 'AUTO', 'Binary', 'ByRef', 'ByVal', 'BEGINEPILOGUE', - 'Else', 'ElseIf', 'Empty', 'Error', 'ENDPROLOGUE', 'EXTERNALSOURCE', 'ENVIRON', 'For', - 'Friend', 'Func', 'GET', 'HANDLES', 'Input', 'Is', 'IsNot', 'Len', 'Lock', 'Me', 'Mid', 'MUSTINHERIT', 'MustOverride', - 'MYBASE', 'MYCLASS', 'New', 'Next', 'Nothing', 'Null', 'NOTINHERITABLE', - 'NOTOVERRIDABLE', 'Of', 'OFF', 'On', 'Option', 'Optional', 'Overloads', 'OVERRIDABLE', 'Overrides', 'ParamArray', 'Predicate', - 'Print', 'Private', 'Property', 'Public', 'Resume', 'Return', 'Seek', 'Static', 'Step', - 'String', 'SHELL', 'SENDKEYS', 'SET', 'Shared', 'Then', 'Time', 'To', 'THROW', 'WithEvents' - ), - 3 => array( - 'COLLECTION', 'DEBUG', 'DICTIONARY', 'DRIVE', 'DRIVES', 'ERR', 'FILE', 'FILES', - 'FILESYSTEMOBJECT', 'FOLDER', 'FOLDERS', 'TEXTSTREAM' - ), - 4 => array( - 'BOOLEAN', 'BYTE', 'DATE', 'DECIMIAL', 'DOUBLE', 'INTEGER', 'LONG', 'OBJECT', - 'SINGLE STRING' - ), - 5 => array( - 'ADDRESSOF', 'AND', 'BITAND', 'BITNOT', 'BITOR', 'BITXOR', - 'GETTYPE', 'LIKE', 'MOD', 'NOT', 'ORXOR' - ), - 6 => array( - 'APPACTIVATE', 'BEEP', 'CALL', 'CHDIR', 'CHDRIVE', 'CLASS', 'CASE', 'CATCH', 'CONST', - 'DECLARE', 'DELEGATE', 'DELETESETTING', 'DIM', 'DO', 'DOEVENTS', 'END', 'ENUM', - 'EVENT', 'EXIT', 'EACH', 'FUNCTION', 'FINALLY', 'IF', 'IMPORTS', 'INHERITS', - 'INTERFACE', 'IMPLEMENTS', 'KILL', 'LOOP', 'NAMESPACE', 'OPEN', 'PUT', - 'RAISEEVENT', 'RANDOMIZE', 'REDIM', 'REM', 'RESET', 'SAVESETTING', 'SELECT', - 'SETATTR', 'STOP', 'SUB', 'SYNCLOCK', 'STRUCTURE', 'SHADOWS', 'SWITCH', - 'TRY', 'WIDTH', 'WITH', 'WRITE', 'WHILE' - ), - 7 => array( - 'ABS', 'ARRAY', 'ASC', 'ASCB', 'ASCW', 'CALLBYNAME', 'CBOOL', 'CBYTE', 'CCHAR', - 'CCHR', 'CDATE', 'CDBL', 'CDEC', 'CHOOSE', 'CHR', 'CHR$', 'CHRB', 'CHRB$', 'CHRW', - 'CINT', 'CLNG', 'CLNG8', 'CLOSE', 'COBJ', 'COMMAND', 'COMMAND$', 'CONVERSION', - 'COS', 'CREATEOBJECT', 'CSHORT', 'CSTR', 'CURDIR', 'CTYPE', 'CVDATE', 'DATEADD', - 'DATEDIFF', 'DATEPART', 'DATESERIAL', 'DATEVALUE', 'DAY', 'DDB', 'DIR', 'DIR$', - 'EOF', 'ERROR$', 'EXP', 'FILEATTR', 'FILECOPY', 'FILEDATATIME', 'FILELEN', 'FILTER', - 'FIX', 'FORMAT', 'FORMAT$', 'FORMATCURRENCY', 'FORMATDATETIME', 'FORMATNUMBER', - 'FORMATPERCENT', 'FREEFILE', 'FV', 'GETALLSETTINGS', 'GETATTRGETOBJECT', 'GETSETTING', - 'HEX', 'HEX$', 'HOUR', 'IIF', 'IMESTATUS', 'INPUT$', 'INPUTB', 'INPUTB$', 'INPUTBOX', - 'INSTR', 'INSTRB', 'INSTRREV', 'INT', 'IPMT', 'IRR', 'ISARRAY', 'ISDATE', 'ISEMPTY', - 'ISERROR', 'ISNULL', 'ISNUMERIC', 'ISOBJECT', 'JOIN', 'LBOUND', 'LCASE', 'LCASE$', - 'LEFT', 'LEFT$', 'LEFTB', 'LEFTB$', 'LENB', 'LINEINPUT', 'LOC', 'LOF', 'LOG', 'LTRIM', - 'LTRIM$', 'MID$', 'MIDB', 'MIDB$', 'MINUTE', 'MIRR', 'MKDIR', 'MONTH', 'MONTHNAME', - 'MSGBOX', 'NOW', 'NPER', 'NPV', 'OCT', 'OCT$', 'PARTITION', 'PMT', 'PPMT', 'PV', - 'RATE', 'REPLACE', 'RIGHT', 'RIGHT$', 'RIGHTB', 'RIGHTB$', 'RMDIR', 'RND', 'RTRIM', - 'RTRIM$', 'SECOND', 'SIN', 'SLN', 'SPACE', 'SPACE$', 'SPC', 'SPLIT', 'SQRT', 'STR', 'STR$', - 'STRCOMP', 'STRCONV', 'STRING$', 'STRREVERSE', 'SYD', 'TAB', 'TAN', 'TIMEOFDAY', - 'TIMER', 'TIMESERIAL', 'TIMEVALUE', 'TODAY', 'TRIM', 'TRIM$', 'TYPENAME', 'UBOUND', - 'UCASE', 'UCASE$', 'VAL', 'WEEKDAY', 'WEEKDAYNAME', 'YEAR' - ), - 8 => array( - 'ANY', 'ATN', 'CALENDAR', 'CIRCLE', 'CURRENCY', 'DEFBOOL', 'DEFBYTE', 'DEFCUR', - 'DEFDATE', 'DEFDBL', 'DEFDEC', 'DEFINT', 'DEFLNG', 'DEFOBJ', 'DEFSNG', 'DEFSTR', - 'DEFVAR', 'EQV', 'GOSUB', 'IMP', 'INITIALIZE', 'ISMISSING', 'LET', 'LINE', 'LSET', - 'RSET', 'SGN', 'SQR', 'TERMINATE', 'VARIANT', 'VARTYPE', 'WEND' - ), - ), - 'SYMBOLS' => array( - '&', '&=', '*', '*=', '+', '+=', '-', '-=', '//', '/', '/=', '=', '\\', '\\=', - '^', '^=' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false, - 6 => false, - 7 => false, - 8 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0600FF;', //Constants - 2 => 'color: #FF8000;', //Keywords - 3 => 'color: #008000;', //Data Types - 4 => 'color: #FF0000;', //Objects - 5 => 'color: #804040;', //Operators - 6 => 'color: #0600FF;', //Statements - 7 => 'color: #0600FF;', //Functions - 8 => 'color: #0600FF;' //Deprecated - ), - 'COMMENTS' => array( - 1 => 'color: #008080; font-style: italic;', - 'MULTI' => 'color: #008080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #808080;' - ), - 'NUMBERS' => array( - 0 => 'color: #FF0000;' - ), - 'METHODS' => array( - 1 => 'color: #0000FF;' - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.google.com/search?q={FNAMEU}+site:msdn.microsoft.com', - 4 => '', - 5 => '', - 6 => '', - 7 => '', - 8 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 =>'.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/verilog.php b/system/application/libraries/geshi/verilog.php deleted file mode 100644 index 6fc469487..000000000 --- a/system/application/libraries/geshi/verilog.php +++ /dev/null @@ -1,173 +0,0 @@ -<?php -/** - * verilog.php - * ----------- - * Author: G�nter Dannoritzer <dannoritzer@web.de> - * Copyright: (C) 2008 Guenter Dannoritzer - * Release Version: 1.0.8.6 - * Date Started: 2008/05/28 - * - * Verilog language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/29 - * - added regular expression to find numbers of the form 4'b001xz - * - added regular expression to find values for `timescale command - * - extended macro keywords - * - * TODO (updated 2008/05/29) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Verilog', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'COMMENT_REGEXP' => array(1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - // keywords - 1 => array('always', 'and', 'assign', 'begin', 'buf', 'bufif0', 'bufif1', 'case', - 'casex', 'casez', 'cmos', 'deassign', 'default', 'defparam', - 'disable', 'edge', 'else', 'end', 'endcase', 'endfunction', - 'endmodule', 'endprimitive', 'endspecify', 'endtable', 'endtask', - 'event', 'for', 'force', 'forever', 'function', 'highz0', - 'highz1', 'if', 'ifnone', 'initial', 'inout', 'input', 'integer', - 'join', 'large', 'macromodule', 'medium', 'module', 'nand', - 'negedge', 'nmos', 'nor', 'not', 'notif0', 'notif1', 'or', - 'output', 'parameter', 'pmos', 'posedge', 'primitive', 'pull0', - 'pull1', 'pulldown', 'pullup', 'rcmos', 'real', 'realtime', 'reg', - 'release', 'repeat', 'rnmos', 'rpmos', 'rtran', 'rtranif0', - 'rtranif1', 'scalared', 'small', 'specify', 'specparam', - 'strong0', 'strong1', 'supply0', 'supply1', 'table', 'task', - 'time', 'tran', 'tranif0', 'tranif1', 'tri', 'tri0', 'tri1', - 'triand', 'trior', 'trireg', 'vectored', 'wait', 'wand', 'weak0', - 'weak1', 'while', 'wire', 'wor', 'xnor', 'xor' - ), - // system tasks - 2 => array( - '$display', '$monitor', - '$dumpall', '$dumpfile', '$dumpflush', '$dumplimit', '$dumpoff', - '$dumpon', '$dumpvars', - '$fclose', '$fdisplay', '$fopen', - '$finish', '$fmonitor', '$fstrobe', '$fwrite', - '$fgetc', '$ungetc', '$fgets', '$fscanf', '$fread', '$ftell', - '$fseek', '$frewind', '$ferror', '$fflush', '$feof', - '$random', - '$readmemb', '$readmemh', '$readmemx', - '$signed', '$stime', '$stop', - '$strobe', '$time', '$unsigned', '$write' - ), - // macros - 3 => array( - '`default-net', '`define', - '`celldefine', '`default_nettype', '`else', '`elsif', '`endcelldefine', - '`endif', '`ifdef', '`ifndef', '`include', '`line', '`nounconnected_drive', - '`resetall', '`timescale', '`unconnected_drive', '`undef' - ), - ), - 'SYMBOLS' => array( - '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', - '^', '&', '|', '~', - '?', ':', - '#', '<<', '<<<', - '>', '<', '>=', '<=', - '@', ';', ',' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #A52A2A; font-weight: bold;', - 2 => 'color: #9932CC;', - 3 => 'color: #008800;' - ), - 'COMMENTS' => array( - 1 => 'color: #00008B; font-style: italic;', - 'MULTI' => 'color: #00008B; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #9F79EE' - ), - 'BRACKETS' => array( - 0 => 'color: #9F79EE;' - ), - 'STRINGS' => array( - 0 => 'color: #FF00FF;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0055;' - ), - 'METHODS' => array( - 1 => 'color: #202020;', - 2 => 'color: #202020;' - ), - 'SYMBOLS' => array( - 0 => 'color: #5D478B;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff0055;', - 1 => 'color: #ff0055;', - ), - 'SCRIPT' => array( - 0 => '', - 1 => '', - 2 => '', - 3 => '' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - 1 => '' - ), - 'REGEXPS' => array( - // numbers - 0 => "\d'[bdh][0-9_a-fA-FxXzZ]+", - // time -> 1, 10, or 100; s, ms, us, ns, ps, of fs - 1 => "1[0]{0,2}[munpf]?s" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - 1 => '' - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - 0 => true, - 1 => true, - 2 => true, - 3 => true - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/vhdl.php b/system/application/libraries/geshi/vhdl.php deleted file mode 100644 index ea93cf87b..000000000 --- a/system/application/libraries/geshi/vhdl.php +++ /dev/null @@ -1,144 +0,0 @@ -<?php -/************************************************************************************* - * vhdl.php - * -------- - * Author: Alexander 'E-Razor' Krause (admin@erazor-zone.de) - * Copyright: (c) 2005 Alexander Krause - * Release Version: 1.0.8.6 - * Date Started: 2005/06/15 - * - * VHDL (VHSICADL, very high speed integrated circuit HDL) language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * - Optimized regexp group 0 somewhat - * 2006/06/15 (1.0.0) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'VHDL', - 'COMMENT_SINGLE' => array(1 => '--'), - 'COMMENT_MULTI' => array('%' => '%'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*keywords*/ - 1 => array( - 'access','after','alias','all','assert','attribute','architecture','begin', - 'block','body','buffer','bus','case','component','configuration','constant', - 'disconnect','downto','else','elsif','end','entity','exit','file','for', - 'function','generate','generic','group','guarded','if','impure','in', - 'inertial','inout','is','label','library','linkage','literal','loop', - 'map','new','next','null','of','on','open','others','out','package', - 'port','postponed','procedure','process','pure','range','record','register', - 'reject','report','return','select','severity','signal','shared','subtype', - 'then','to','transport','type','unaffected','units','until','use','variable', - 'wait','when','while','with','note','warning','error','failure','and', - 'or','xor','not','nor','used','memory','segments','dff','dffe','help_id', - 'mod','info','latch','rising_edge','falling_edge' - ), - /*types*/ - 2 => array( - 'bit','bit_vector','character','boolean','integer','real','time','string', - 'severity_level','positive','natural','signed','unsigned','line','text', - 'std_logic','std_logic_vector','std_ulogic','std_ulogic_vector','qsim_state', - 'qsim_state_vector','qsim_12state','qsim_12state_vector','qsim_strength', - 'mux_bit','mux_vector','reg_bit','reg_vector','wor_bit','wor_vector', - 'work','ieee','std_logic_signed','std_logic_1164','std_logic_arith', - 'numeric_std' - - ), - /*operators*/ - ), - 'SYMBOLS' => array( - '[', ']', '(', ')', - ';',':', - '<','>','=','<=',':=','=>','==' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #000080; font-weight: bold;', - 2 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000; font-style: italic;', - 'MULTI' => 'color: #008000; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #000066;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #ff0000;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000066;' - ), - 'REGEXPS' => array( - 0 => 'color: #ff0000;', - 1 => 'color: #ff0000;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers and scientific notation for numbers - 0 => '(\b0x[0-9a-fA-F]+|\b\d[0-9a-fA-F]+[hH])|'. - '(\b\d+?(\.\d+?)?E[+\-]?\d+)|(\bns)|'. - "('[0-9a-zA-Z]+(?!'))", - //Number characters? - 1 => "\b(''\d'')" - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/vim.php b/system/application/libraries/geshi/vim.php deleted file mode 100644 index a95dc244c..000000000 --- a/system/application/libraries/geshi/vim.php +++ /dev/null @@ -1,419 +0,0 @@ -<?php - -/************************************************************************************* - * vim.php - * ---------------- - * Author: Swaroop C H (swaroop@swaroopch.com) - * Contributors: - * - Laurent Peuch (psycojoker@gmail.com) - * Copyright: (c) 2008 Swaroop C H (http://www.swaroopch.com) - * Release Version: 1.0.8.6 - * Date Started: 2008/10/19 - * - * Vim scripting language file for GeSHi. - * - * Reference: http://qbnz.com/highlighter/geshi-doc.html#language-files - * All keywords scraped from `:help expression-commands`. - * All method names scraped from `:help function-list`. - * - * CHANGES - * ------- - * 2008/10/19 (1.0.8.2) - * - Started. - * 2009/07/05 - * - Fill out list of zillion commands (maybe somes still miss). - * - fix a part of the regex, now works for comment that have white space before the " - * - * TODO (updated 2009/07/05) - * ------------------------- - * - Make this damn string with "" work correctly. I've just remove it for my wiki. - * - Make the comment regex able to find comment after some code. - * (i.e: let rocks " unworking comment) - * - Make <F1> <F2> ... <Esc> <CR> ... works event if they aren't surround by space. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array( - 'LANG_NAME' => 'Vim Script', - 'COMMENT_SINGLE' => array(), - 'COMMENT_REGEXP' => array( - 1 => "/^\s*\"[^\"]*?$/m" - ), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'au', 'augroup', 'autocmd', 'brea', 'break', 'bufadd', - 'bufcreate', 'bufdelete', 'bufenter', 'buffilepost', - 'buffilepre', 'bufhidden', 'bufleave', 'bufnew', 'bufnewfile', - 'bufread', 'bufreadcmd', 'bufreadpost', 'bufreadpre', - 'bufunload', 'bufwinenter', 'bufwinleave', 'bufwipeout', - 'bufwrite', 'bufwritecmd', 'bufwritepost', 'bufwritepre', - 'call', 'cat', 'catc', 'catch', 'cmd-event', 'cmdwinenter', - 'cmdwinleave', 'colorscheme', 'con', 'cont', 'conti', - 'contin', 'continu', 'continue', 'cursorhold', 'cursorholdi', - 'cursormoved', 'cursormovedi', 'ec', 'echo', 'echoe', - 'echoer', 'echoerr', 'echoh', 'echohl', 'echom', 'echoms', - 'echomsg', 'echon', 'el', 'els', 'else', 'elsei', 'elseif', - 'en', 'encodingchanged', 'end', 'endfo', 'endfor', 'endi', - 'endif', 'endt', 'endtr', 'endtry', 'endw', 'endwh', 'endwhi', - 'endwhil', 'endwhile', 'exe', 'exec', 'execu', 'execut', - 'execute', 'fileappendcmd', 'fileappendpost', 'fileappendpre', - 'filechangedro', 'filechangedshell', 'filechangedshellpost', - 'fileencoding', 'filereadcmd', 'filereadpost', 'filereadpre', - 'filetype', 'filewritecmd', 'filewritepost', 'filewritepre', - 'filterreadpost', 'filterreadpre', 'filterwritepost', - 'filterwritepre', 'fina', 'final', 'finall', 'finally', - 'finish', 'focusgained', 'focuslost', 'for', 'fun', 'func', - 'funct', 'functi', 'functio', 'function', 'funcundefined', - 'guienter', 'guifailed', 'hi', 'highlight', 'if', 'in', - 'insertchange', 'insertenter', 'insertleave', 'let', 'lockv', - 'lockva', 'lockvar', 'map', 'match', 'menupopup', 'nnoremap', - 'quickfixcmdpost', 'quickfixcmdpre', 'remotereply', 'retu', - 'retur', 'return', 'sessionloadpost', 'set', 'setlocal', - 'shellcmdpost', 'shellfilterpost', 'sourcecmd', 'sourcepre', - 'spellfilemissing', 'stdinreadpost', 'stdinreadpre', - 'swapexists', 'syntax', 'tabenter', 'tableave', 'termchanged', - 'termresponse', 'th', 'thr', 'thro', 'throw', 'try', 'unl', - 'unle', 'unlet', 'unlo', 'unloc', 'unlock', 'unlockv', - 'unlockva', 'unlockvar', 'user', 'usergettingbored', - 'vimenter', 'vimleave', 'vimleavepre', 'vimresized', 'wh', - 'whi', 'whil', 'while', 'winenter', 'winleave' - ), - 2 => array( - '<CR>', '<Esc>', '<F1>', '<F10>', - '<F11>', '<F12>', '<F2>', '<F3>', - '<F4>', '<F5>', '<F6>', '<F7>', - '<F8>', '<F9>', '<cr>', '<silent>', - '-nargs', 'acd', 'ai', 'akm', 'al', 'aleph', - 'allowrevins', 'altkeymap', 'ambiwidth', 'ambw', - 'anti', 'antialias', 'ar', 'arab', 'arabic', - 'arabicshape', 'ari', 'arshape', 'autochdir', - 'autoindent', 'autoread', 'autowrite', 'autowriteall', - 'aw', 'awa', 'background', 'backspace', 'backup', - 'backupcopy', 'backupdir', 'backupext', - 'backupskip', 'balloondelay', 'ballooneval', 'balloonexpr', - 'bdir', 'bdlay', 'beval', 'bex', 'bexpr', 'bg', - 'bh', 'bin', 'binary', 'biosk', 'bioskey', - 'bk', 'bkc', 'bl', 'bomb', 'breakat', 'brk', - 'browsedir', 'bs', 'bsdir', 'bsk', 'bt', 'bufhidden', - 'buflisted', 'buftype', 'casemap', 'cb', - 'ccv', 'cd', 'cdpath', 'cedit', 'cf', 'cfu', 'ch', - 'charconvert', 'ci', 'cin', 'cindent', 'cink', - 'cinkeys', 'cino', 'cinoptions', 'cinw', 'cinwords', - 'clipboard', 'cmdheight', 'cmdwinheight', - 'cmp', 'cms', 'co', 'columns', 'com', - 'comc', 'comcl', 'comcle', 'comclea', 'comclear', 'comm', - 'comma', 'comman', 'command', 'comments', 'commentstring', - 'compatible', 'complete', 'completefunc', 'completeopt', - 'confirm', 'consk', 'conskey', 'copyindent', - 'cot', 'cp', 'cpo', 'cpoptions', 'cpt', - 'cscopepathcomp', 'cscopeprg', 'cscopequickfix', 'cscopetag', - 'cscopetagorder', 'cscopeverbose', - 'cspc', 'csprg', 'csqf', 'cst', 'csto', 'csverb', 'cuc', - 'cul', 'cursorcolumn', 'cursorline', 'cwh', 'debug', - 'deco', 'def', 'define', 'delc', 'delco', 'delcom', - 'delcombine', 'delcomm', 'delcomman', 'delcommand', 'dex', - 'dg', 'dict', 'dictionary', 'diff', 'diffexpr', - 'diffopt', 'digraph', 'dip', 'dir', 'directory', 'display', - 'dlcomma', 'dy', 'ea', 'ead', 'eadirection', - 'eb', 'ed', 'edcompatible', 'ef', 'efm', - 'ei', 'ek', 'enc', 'encoding', 'endofline', - 'eol', 'ep', 'equalalways', 'equalprg', 'errorbells', - 'errorfile', 'errorformat', 'esckeys', 'et', - 'eventignore', 'ex', 'expandtab', 'exrc', 'fcl', - 'fcs', 'fdc', 'fde', 'fdi', 'fdl', 'fdls', 'fdm', - 'fdn', 'fdo', 'fdt', 'fen', 'fenc', 'fencs', 'fex', - 'ff', 'ffs', 'fileencoding', 'fileencodings', 'fileformat', - 'fileformats', 'filetype', 'fillchars', 'fk', - 'fkmap', 'flp', 'fml', 'fmr', 'fo', 'foldclose', - 'foldcolumn', 'foldenable', 'foldexpr', 'foldignore', - 'foldlevel', 'foldlevelstart', 'foldmarker', - 'foldmethod', 'foldminlines', 'foldnestmax', 'foldopen', - 'foldtext', 'formatexpr', 'formatlistpat', - 'formatoptions', 'formatprg', 'fp', 'fs', 'fsync', 'ft', - 'gcr', 'gd', 'gdefault', 'gfm', 'gfn', 'gfs', 'gfw', - 'ghr', 'go', 'gp', 'grepformat', 'grepprg', 'gtl', - 'gtt', 'guicursor', 'guifont', 'guifontset', - 'guifontwide', 'guiheadroom', 'guioptions', 'guipty', - 'guitablabel', 'guitabtooltip', 'helpfile', - 'helpheight', 'helplang', 'hf', 'hh', 'hid', 'hidden', - 'history', 'hk', 'hkmap', 'hkmapp', 'hkp', 'hl', - 'hlg', 'hls', 'hlsearch', 'ic', 'icon', 'iconstring', - 'ignorecase', 'im', 'imactivatekey', 'imak', 'imc', - 'imcmdline', 'imd', 'imdisable', 'imi', 'iminsert', 'ims', - 'imsearch', 'inc', 'include', 'includeexpr', - 'incsearch', 'inde', 'indentexpr', 'indentkeys', - 'indk', 'inex', 'inf', 'infercase', 'insertmode', 'is', 'isf', - 'isfname', 'isi', 'isident', 'isk', 'iskeyword', - 'isp', 'isprint', 'joinspaces', 'js', 'key', - 'keymap', 'keymodel', 'keywordprg', 'km', 'kmp', 'kp', - 'langmap', 'langmenu', 'laststatus', 'lazyredraw', 'lbr', - 'lcs', 'linebreak', 'lines', 'linespace', 'lisp', - 'lispwords', 'list', 'listchars', 'lm', 'lmap', - 'loadplugins', 'lpl', 'ls', 'lsp', 'lw', 'lz', 'ma', - 'macatsui', 'magic', 'makeef', 'makeprg', 'mat', - 'matchpairs', 'matchtime', 'maxcombine', 'maxfuncdepth', - 'maxmapdepth', 'maxmem', 'maxmempattern', - 'maxmemtot', 'mco', 'mef', 'menuitems', 'mfd', 'mh', - 'mis', 'mkspellmem', 'ml', 'mls', 'mm', 'mmd', 'mmp', - 'mmt', 'mod', 'modeline', 'modelines', 'modifiable', - 'modified', 'more', 'mouse', 'mousef', 'mousefocus', - 'mousehide', 'mousem', 'mousemodel', 'mouses', - 'mouseshape', 'mouset', 'mousetime', 'mp', 'mps', 'msm', - 'mzq', 'mzquantum', 'nf', 'noacd', 'noai', 'noakm', - 'noallowrevins', 'noaltkeymap', 'noanti', 'noantialias', - 'noar', 'noarab', 'noarabic', 'noarabicshape', 'noari', - 'noarshape', 'noautochdir', 'noautoindent', 'noautoread', - 'noautowrite', 'noautowriteall', 'noaw', 'noawa', 'nobackup', - 'noballooneval', 'nobeval', 'nobin', 'nobinary', 'nobiosk', - 'nobioskey', 'nobk', 'nobl', 'nobomb', 'nobuflisted', 'nocf', - 'noci', 'nocin', 'nocindent', 'nocompatible', 'noconfirm', - 'noconsk', 'noconskey', 'nocopyindent', 'nocp', 'nocscopetag', - 'nocscopeverbose', 'nocst', 'nocsverb', 'nocuc', 'nocul', - 'nocursorcolumn', 'nocursorline', 'nodeco', 'nodelcombine', - 'nodg', 'nodiff', 'nodigraph', 'nodisable', 'noea', 'noeb', - 'noed', 'noedcompatible', 'noek', 'noendofline', 'noeol', - 'noequalalways', 'noerrorbells', 'noesckeys', 'noet', - 'noex', 'noexpandtab', 'noexrc', 'nofen', 'nofk', 'nofkmap', - 'nofoldenable', 'nogd', 'nogdefault', 'noguipty', 'nohid', - 'nohidden', 'nohk', 'nohkmap', 'nohkmapp', 'nohkp', 'nohls', - 'nohlsearch', 'noic', 'noicon', 'noignorecase', 'noim', - 'noimc', 'noimcmdline', 'noimd', 'noincsearch', 'noinf', - 'noinfercase', 'noinsertmode', 'nois', 'nojoinspaces', - 'nojs', 'nolazyredraw', 'nolbr', 'nolinebreak', 'nolisp', - 'nolist', 'noloadplugins', 'nolpl', 'nolz', 'noma', - 'nomacatsui', 'nomagic', 'nomh', 'noml', 'nomod', - 'nomodeline', 'nomodifiable', 'nomodified', 'nomore', - 'nomousef', 'nomousefocus', 'nomousehide', 'nonu', - 'nonumber', 'noodev', 'noopendevice', 'nopaste', 'nopi', - 'nopreserveindent', 'nopreviewwindow', 'noprompt', 'nopvw', - 'noreadonly', 'noremap', 'norestorescreen', 'norevins', - 'nori', 'norightleft', 'norightleftcmd', 'norl', 'norlc', - 'noro', 'nors', 'noru', 'noruler', 'nosb', 'nosc', 'noscb', - 'noscrollbind', 'noscs', 'nosecure', 'nosft', 'noshellslash', - 'noshelltemp', 'noshiftround', 'noshortname', 'noshowcmd', - 'noshowfulltag', 'noshowmatch', 'noshowmode', 'nosi', 'nosm', - 'nosmartcase', 'nosmartindent', 'nosmarttab', 'nosmd', - 'nosn', 'nosol', 'nospell', 'nosplitbelow', 'nosplitright', - 'nospr', 'nosr', 'nossl', 'nosta', 'nostartofline', - 'nostmp', 'noswapfile', 'noswf', 'nota', 'notagbsearch', - 'notagrelative', 'notagstack', 'notbi', 'notbidi', 'notbs', - 'notermbidi', 'noterse', 'notextauto', 'notextmode', - 'notf', 'notgst', 'notildeop', 'notimeout', 'notitle', - 'noto', 'notop', 'notr', 'nottimeout', 'nottybuiltin', - 'nottyfast', 'notx', 'novb', 'novisualbell', 'nowa', - 'nowarn', 'nowb', 'noweirdinvert', 'nowfh', 'nowfw', - 'nowildmenu', 'nowinfixheight', 'nowinfixwidth', 'nowiv', - 'nowmnu', 'nowrap', 'nowrapscan', 'nowrite', 'nowriteany', - 'nowritebackup', 'nows', 'nrformats', 'nu', 'number', - 'numberwidth', 'nuw', 'odev', 'oft', 'ofu', - 'omnifunc', 'opendevice', 'operatorfunc', 'opfunc', - 'osfiletype', 'pa', 'para', 'paragraphs', - 'paste', 'pastetoggle', 'patchexpr', - 'patchmode', 'path', 'pdev', 'penc', 'pex', 'pexpr', - 'pfn', 'ph', 'pheader', 'pi', 'pm', 'pmbcs', - 'pmbfn', 'popt', 'preserveindent', 'previewheight', - 'previewwindow', 'printdevice', 'printencoding', 'printexpr', - 'printfont', 'printheader', 'printmbcharset', - 'printmbfont', 'printoptions', 'prompt', 'pt', 'pumheight', - 'pvh', 'pvw', 'qe', 'quoteescape', 'rdt', - 'readonly', 'redrawtime', 'remap', 'report', - 'restorescreen', 'revins', 'ri', 'rightleft', 'rightleftcmd', - 'rl', 'rlc', 'ro', 'rs', 'rtp', 'ru', - 'ruf', 'ruler', 'rulerformat', 'runtimepath', 'sb', 'sbo', - 'sbr', 'sc', 'scb', 'scr', 'scroll', 'scrollbind', - 'scrolljump', 'scrolloff', 'scrollopt', - 'scs', 'sect', 'sections', 'secure', 'sel', - 'selection', 'selectmode', 'sessionoptions', 'sft', - 'sh', 'shcf', 'shell', 'shellcmdflag', 'shellpipe', - 'shellquote', 'shellredir', 'shellslash', - 'shelltemp', 'shelltype', 'shellxquote', 'shiftround', - 'shiftwidth', 'shm', 'shortmess', 'shortname', - 'showbreak', 'showcmd', 'showfulltag', 'showmatch', - 'showmode', 'showtabline', 'shq', 'si', 'sidescroll', - 'sidescrolloff', 'siso', 'sj', 'slm', 'sm', 'smartcase', - 'smartindent', 'smarttab', 'smc', 'smd', 'sn', - 'so', 'softtabstop', 'sol', 'sp', 'spc', 'spell', - 'spellcapcheck', 'spellfile', 'spelllang', 'spellsuggest', - 'spf', 'spl', 'splitbelow', 'splitright', 'spr', - 'sps', 'sr', 'srr', 'ss', 'ssl', 'ssop', 'st', 'sta', - 'stal', 'startofline', 'statusline', 'stl', 'stmp', - 'sts', 'su', 'sua', 'suffixes', 'suffixesadd', 'sw', - 'swapfile', 'swapsync', 'swb', 'swf', 'switchbuf', - 'sws', 'sxq', 'syn', 'synmaxcol', 'syntax', 'ta', - 'tabline', 'tabpagemax', 'tabstop', 'tag', - 'tagbsearch', 'taglength', 'tagrelative', 'tags', 'tagstack', - 'tal', 'tb', 'tbi', 'tbidi', 'tbis', 'tbs', - 'tenc', 'term', 'termbidi', 'termencoding', 'terse', - 'textauto', 'textmode', 'textwidth', 'tf', 'tgst', - 'thesaurus', 'tildeop', 'timeout', 'timeoutlen', - 'title', 'titlelen', 'titleold', 'titlestring', - 'tl', 'tm', 'to', 'toolbar', 'toolbariconsize', 'top', - 'tpm', 'tr', 'ts', 'tsl', 'tsr', 'ttimeout', - 'ttimeoutlen', 'ttm', 'tty', 'ttybuiltin', 'ttyfast', 'ttym', - 'ttymouse', 'ttyscroll', 'ttytype', 'tw', 'tx', 'uc', - 'ul', 'undolevels', 'updatecount', 'updatetime', 'ut', - 'vb', 'vbs', 'vdir', 've', 'verbose', 'verbosefile', - 'vfile', 'vi', 'viewdir', 'viewoptions', 'viminfo', - 'virtualedit', 'visualbell', 'vop', 'wa', 'wak', - 'warn', 'wb', 'wc', 'wcm', 'wd', 'weirdinvert', 'wfh', - 'wfw', 'wh', 'whichwrap', 'wi', 'wig', 'wildchar', - 'wildcharm', 'wildignore', 'wildmenu', - 'wildmode', 'wildoptions', 'wim', 'winaltkeys', 'window', - 'winfixheight', 'winfixwidth', 'winheight', - 'winminheight', 'winminwidth', 'winwidth', 'wiv', - 'wiw', 'wm', 'wmh', 'wmnu', 'wmw', 'wop', 'wrap', - 'wrapmargin', 'wrapscan', 'write', 'writeany', - 'writebackup', 'writedelay', 'ws', 'ww' - ), - 3 => array( - 'BufAdd', 'BufCreate', 'BufDelete', 'BufEnter', 'BufFilePost', - 'BufFilePre', 'BufHidden', 'BufLeave', 'BufNew', 'BufNewFile', - 'BufRead', 'BufReadCmd', 'BufReadPost', 'BufReadPre', - 'BufUnload', 'BufWinEnter', 'BufWinLeave', 'BufWipeout', - 'BufWrite', 'BufWriteCmd', 'BufWritePost', 'BufWritePre', - 'Cmd-event', 'CmdwinEnter', 'CmdwinLeave', 'ColorScheme', - 'CursorHold', 'CursorHoldI', 'CursorMoved', 'CursorMovedI', - 'EncodingChanged', 'FileAppendCmd', 'FileAppendPost', - 'FileAppendPre', 'FileChangedRO', 'FileChangedShell', - 'FileChangedShellPost', 'FileEncoding', 'FileReadCmd', - 'FileReadPost', 'FileReadPre', 'FileType', - 'FileWriteCmd', 'FileWritePost', 'FileWritePre', - 'FilterReadPost', 'FilterReadPre', 'FilterWritePost', - 'FilterWritePre', 'FocusGained', 'FocusLost', 'FuncUndefined', - 'GUIEnter', 'GUIFailed', 'InsertChange', 'InsertEnter', - 'InsertLeave', 'MenuPopup', 'QuickFixCmdPost', - 'QuickFixCmdPre', 'RemoteReply', 'SessionLoadPost', - 'ShellCmdPost', 'ShellFilterPost', 'SourceCmd', - 'SourcePre', 'SpellFileMissing', 'StdinReadPost', - 'StdinReadPre', 'SwapExists', 'Syntax', 'TabEnter', - 'TabLeave', 'TermChanged', 'TermResponse', 'User', - 'UserGettingBored', 'VimEnter', 'VimLeave', 'VimLeavePre', - 'VimResized', 'WinEnter', 'WinLeave', 'abs', 'add', 'append', - 'argc', 'argidx', 'argv', 'atan', 'browse', 'browsedir', - 'bufexists', 'buflisted', 'bufloaded', 'bufname', 'bufnr', - 'bufwinnr', 'byte2line', 'byteidx', 'ceil', 'changenr', - 'char2nr', 'cindent', 'clearmatches', 'col', 'complete', - 'complete_add', 'complete_check', 'confirm', 'copy', - 'cos', 'count', 'cscope_connection', 'cursor', 'deepcopy', - 'delete', 'did_filetype', 'diff_filler', 'diff_hlID', - 'empty', 'escape', 'eval', 'eventhandler', 'executable', - 'exists', 'expand', 'extend', 'feedkeys', 'filereadable', - 'filewritable', 'filter', 'finddir', 'findfile', 'float2nr', - 'floor', 'fnameescape', 'fnamemodify', 'foldclosed', - 'foldclosedend', 'foldlevel', 'foldtext', 'foldtextresult', - 'foreground', 'garbagecollect', 'get', 'getbufline', - 'getbufvar', 'getchar', 'getcharmod', 'getcmdline', - 'getcmdpos', 'getcmdtype', 'getcwd', 'getfontname', - 'getfperm', 'getfsize', 'getftime', 'getftype', 'getline', - 'getloclist', 'getmatches', 'getpid', 'getpos', 'getqflist', - 'getreg', 'getregtype', 'gettabwinvar', 'getwinposx', - 'getwinposy', 'getwinvar', 'glob', 'globpath', 'has', - 'has_key', 'haslocaldir', 'hasmapto', 'histadd', 'histdel', - 'histget', 'histnr', 'hlID', 'hlexists', 'hostname', 'iconv', - 'indent', 'index', 'input', 'inputdialog', 'inputlist', - 'inputrestore', 'inputsave', 'inputsecret', 'insert', - 'isdirectory', 'islocked', 'items', 'join', 'keys', 'len', - 'libcall', 'libcallnr', 'line', 'line2byte', 'lispindent', - 'localtime', 'log10', 'maparg', 'mapcheck', 'matchadd', - 'matcharg', 'matchdelete', 'matchend', 'matchlist', - 'matchstr', 'max', 'min', 'mkdir', 'mode', 'nextnonblank', - 'nr2char', 'off', 'on', 'pathshorten', 'plugin', 'pow', - 'prevnonblank', 'printf', 'pumvisible', 'range', 'readfile', - 'reltime', 'reltimestr', 'remote_expr', 'remote_foreground', - 'remote_peek', 'remote_read', 'remote_send', 'remove', - 'rename', 'repeat', 'resolve', 'reverse', 'round', 'search', - 'searchdecl', 'searchpair', 'searchpairpos', 'searchpos', - 'server2client', 'serverlist', 'setbufvar', 'setcmdpos', - 'setline', 'setloclist', 'setmatches', 'setpos', 'setqflist', - 'setreg', 'settabwinvar', 'setwinvar', 'shellescape', - 'simplify', 'sin', 'sort', 'soundfold', 'spellbadword', - 'spellsuggest', 'split', 'sqrt', 'str2float', 'str2nr', - 'strftime', 'stridx', 'string', 'strlen', 'strpart', - 'strridx', 'strtrans', 'submatch', 'substitute', - 'synID', 'synIDattr', 'synIDtrans', 'synstack', 'system', - 'tabpagebuflist', 'tabpagenr', 'tabpagewinnr', 'tagfiles', - 'taglist', 'tempname', 'tolower', 'toupper', 'tr', 'trunc', - 'type', 'values', 'virtcol', 'visualmode', 'winbufnr', - 'wincol', 'winheight', 'winline', 'winnr', 'winrestcmd', - 'winrestview', 'winsaveview', 'winwidth', 'writefile' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '%', '&', '*', '|', '/', '<', '>', - '^', '-', '+', '~', '?', ':', '$', '@', '.' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => true, - 2 => true, - 3 => true - ), - 'STYLES' => array( - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => '' - ), - 'KEYWORDS' => array( - 1 => 'color: #804040;', - 2 => 'color: #668080;', - 3 => 'color: #25BB4D;' - ), - 'METHODS' => array( - 0 => 'color: #000000;', - ), - 'NUMBERS' => array( - 0 => 'color: #000000; font-weight:bold;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ), - 'STRINGS' => array( - 0 => 'color: #C5A22D;' - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, //Save some time as OO identifiers aren't used - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array(), - 'HIGHLIGHT_STRICT_BLOCK' => array() -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/visualfoxpro.php b/system/application/libraries/geshi/visualfoxpro.php deleted file mode 100644 index 4d9f649ce..000000000 --- a/system/application/libraries/geshi/visualfoxpro.php +++ /dev/null @@ -1,456 +0,0 @@ -<?php -/************************************************************************************* - * visualfoxpro.php - * ---------------- - * Author: Roberto Armellin (r.armellin@tin.it) - * Copyright: (c) 2004 Roberto Armellin, Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/09/17 - * - * Visual FoxPro language file for GeSHi. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Removed tab as a symbol char - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/10/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Visual Fox Pro', - 'COMMENT_SINGLE' => array(1 => "//", 2 => "\n*"), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'Case', 'Else', '#Else', 'Then', - 'Endcase', 'Enddefine', 'Enddo', 'Endfor', 'Endfunc', 'Endif', 'Endprintjob', - 'Endproc', 'Endscan', 'Endtext', 'Endwith', '#Endif', - '#Elif','#Define','#If','#Include', - '#Itsexpression','#Readclauses','#Region','#Section','#Undef','#Wname', - 'Define','Do', - 'For','Function','Hidden', - 'If','Local','Lparameter','Lparameters','Next','Otherwise', - 'Parameters','Printjob','Procedure','Protected','Public','Scan', - 'Text','While','With','Abs','Accept','Access','Aclass','Acopy', - 'Acos','Adatabases','Adbobjects','Addbs','Addrelationtoenv','Addtabletoenv', - 'Adel','Adir','Aelement','Aerror','Afields','Afont', - 'Agetclass','Agetfileversion','Ains','Ainstance','Alen','Align', - 'Alines','Alltrim','Alter','Amembers','Amouseobj','Anetresources', - 'Ansitooem','Append','Aprinters','Ascan','Aselobj','Asin', - 'Asort','Assert','Asserts','Assist','Asubscript','Asynchronous', - 'At_c','Atan','Atc','Atcc','Atcline','Atline', - 'Atn2','Aused','Autoform','Autoreport','Avcxclasses','Average', - 'BarCount','BarPrompt','BatchMode','BatchUpdateCount','Begin','BellSound', - 'BinToC','Bitand','Bitclear','Bitlshift','Bitnot', - 'Bitor','Bitrshift','Bitset','Bittest','Bitxor','Bof', - 'Browse','BrowseRefresh','Buffering','BuilderLock','COMArray','COMReturnError', - 'CToBin','Calculate','Call','Capslock','Cd','Cdow', - 'Ceiling','Central','Change','Char','Chdir','Chr', - 'Chrsaw','Chrtran','Chrtranc','Close','Cmonth','Cntbar', - 'Cntpad','Col','Comclassinfo','CommandTargetQuery','Compile','Completed', - 'Compobj','Compute','Concat','ConnectBusy','ConnectHandle','ConnectName', - 'ConnectString','ConnectTimeOut','ContainerReleaseType','Continue','Copy','Cos', - 'Cot','Count','Coverage','Cpconvert','Cpcurrent','Cpdbf', - 'Cpnotrans','Create','CreateBinary','Createobject','Createobjectex','Createoffline', - 'CrsBuffering','CrsFetchMemo','CrsFetchSize','CrsMaxRows','CrsMethodUsed','CrsNumBatch', - 'CrsShareConnection','CrsUseMemoSize','CrsWhereClause','Ctod','Ctot', - 'Curdate','Curdir','CurrLeft','CurrSymbol','CursorGetProp','CursorSetProp', - 'Curtime','Curval','DBGetProp','DBSetProp','DB_BufLockRow','DB_BufLockTable', - 'DB_BufOff','DB_BufOptRow','DB_BufOptTable','DB_Complette','DB_DeleteInsert','DB_KeyAndModified', - 'DB_KeyAndTimestamp','DB_KeyAndUpdatable','DB_LocalSQL','DB_NoPrompt','DB_Prompt','DB_RemoteSQL', - 'DB_TransAuto','DB_TransManual','DB_TransNone','DB_Update','Datetime','Day', - 'Dayname','Dayofmonth','Dayofweek','Dayofyear','Dbalias','Dbused', - 'Ddeaborttrans','Ddeadvise','Ddeenabled','Ddeexecute','Ddeinitiate','Ddelasterror', - 'Ddepoke','Dderequest','Ddesetoption','Ddesetservice','Ddesettopic','Ddeterminate', - 'Debugout','Declare','DefOLELCid','DefaultValue','Defaultext','Degrees', - 'DeleteTrigger','Desc','Description','Difference','Dimension','Dir', - 'Directory','Diskspace','DispLogin','DispWarnings','Display','Dll', - 'Dmy','DoDefault','DoEvents','Doc','Dow', - 'Drivetype','Drop','Dropoffline','Dtoc','Dtor','Dtos', - 'Dtot','DynamicInputMask','Each','Edit','Eject','Elif', - 'End','Eof','Erase','Evaluate','Event','Eventtracking', - 'Exclude','Exclusive','Exit','Exp','Export','External', - 'FDate','FTime','Fchsize','Fclose','Fcount','Fcreate', - 'Feof','Ferror','FetchMemo','FetchSize','Fflush','Fgets', - 'Filer','Filetostr','Find','Fklabel','Fkmax','Fldlist', - 'Flock','Floor','Flush','Fontmetric','Fopen','Forceext', - 'Forcepath','FormSetClass','FormSetLib','FormsClass','FormsLib','Found', - 'FoxPro','Foxcode','Foxdoc','Foxgen','Foxgraph','Foxview', - 'Fputs','Fread','French','Fseek','Fsize','Fv', - 'Fwrite','Gather','German','GetPem','Getbar','Getcolor', - 'Getcp','Getdir','Getenv','Getexpr','Getfile','Getfldstate', - 'Getfont','Gethost','Getnextmodified','Getobject','Getpad','Getpict', - 'Getprinter','Go','Gomonth','Goto','Graph','GridHorz', - 'GridShow','GridShowPos','GridSnap','GridVert','Help','HelpOn', - 'HelpTo','HighLightRow','Home','Hour','IMEStatus','IdleTimeOut', - 'Idxcollate','Ifdef','Ifndef','Iif','Import','Include', - 'Indbc','Index','Indexseek','Inkey','Inlist','Input', - 'Insert','InsertTrigger','Insmode','IsBlank','IsFLocked','IsLeadByte', - 'IsMouse','IsNull','IsRLocked','Isalpha','Iscolor','Isdigit', - 'IsExclusive','Ishosted','IsLower','IsReadOnly', - 'IsUpper','Italian','Japan','Join','Justdrive','Justext', - 'Justfname','Justpath','Juststem','KeyField','KeyFieldList','Keyboard' - ), - 2 => array('Keymatch','LastProject','Lastkey','Lcase','Leftc','Len', - 'Lenc','Length','Likec','Lineno','LoadPicture', - 'Locate','Locfile','Log','Log10','Logout','Lookup', - 'Loop','Lower','Ltrim','Lupdate','Mail','MaxRecords', - 'Mcol','Md','Mdown','Mdx','Mdy','Memlines', - 'Menu','Messagebox','Minute','Mkdir','Mline','Modify', - 'Month','Monthname','Mouse','Mrkbar','Mrkpad','Mrow', - 'Mtdll','Mton','Mwindow','Native','Ndx','Network', - 'NoFilter','Nodefault','Normalize','Note','Now','Ntom', - 'NullString','Numlock','Nvl','ODBChdbc','ODBChstmt','OLEDropTextInsertion', - 'OLELCid','Objnum','Objref','Objtoclient','Objvar','Occurs', - 'Oemtoansi','Oldval','OlePublic','Olereturnerror','On','Open', - 'Oracle','Order','Os','Outer','PCount','Pack', - 'PacketSize','Padc','Padl','Padr','Payment','Pcol', - 'PemStatus','Pi','Pivot','Play','Pop','Popup', - 'Power','PrimaryKey','Printstatus','Private','Prmbar','Prmpad', - 'ProjectClick','Proper','Prow','Prtinfo','Push','Putfile', - 'Pv','Qpr','Quater','QueryTimeOut','Quit','Radians', - 'Rand','Rat','Ratc','Ratline','Rd','Rdlevel', - 'Read','Readkey','Recall','Reccount','RecentlyUsedFiles','Recno', - 'Recsize','Regional','Reindex','RelatedChild','RelatedTable','RelatedTag', - 'Remove','Rename','Repeat','Replace','Replicate','Report', - 'ResHeight','ResWidth','ResourceOn','ResourceTo','Resources','Restore', - 'Resume','Retry','Return','Revertoffline','Rgbscheme','Rightc', - 'Rlock','Rmdir','Rollback','Round','Rtod','Rtrim', - 'RuleExpression','RuleText','Run','Runscript','Rview','SQLAsynchronous', - 'SQLBatchMode','SQLCancel','SQLColumns','SQLConnect','SQLConnectTimeOut','SQLDisconnect', - 'SQLDispLogin','SQLDispWarnings','SQLExec','SQLGetProp','SQLIdleTimeOut','SQLMoreResults', - 'SQLPrepare','SQLQueryTimeOut','SQLSetProp','SQLTables','SQLTransactions','SQLWaitTime', - 'Save','SavePicture','ScaleUnits','Scatter','Scols', - 'Scroll','Sec','Second','Seek','Select','SendUpdates', - 'Set','SetDefault','Setfldstate','Setup','ShareConnection','ShowOLEControls', - 'ShowOLEInsertable','ShowVCXs','Sign','Sin','Size','SizeBox', - 'Skpbar','Skppad','Sort','Soundex','SourceName','Sqlcommit', - 'Sqll','Sqlrollback','Sqlstringconnect','Sqrt','Srows','StatusBar', - 'Store','Str','Strconv','Strtofile','Strtran','Stuff', - 'Stuffc','Substr','Substrc','Substring','Sum','Suspend', - 'Sys','Sysmetric','TabOrdering','Table','TableRefresh','Tablerevert', - 'Tableupdate','TagCount','TagNo','Tan','Target','This', - 'Thisform','Thisformset','Timestamp','Timestampdiff','Total','Transactions', - 'Transform','Trim','Truncate','Ttoc','Ttod','Txnlevel', - 'Txtwidth','Type','Ucase','Undefine','Unlock','Unpack', - 'Updatable','UpdatableFieldList','Update','UpdateName','UpdateNameList','UpdateTrigger', - 'UpdateType','Updated','Upper','Upsizing','Usa','Use', - 'UseMemoSize','Used','Val','Validate','Varread','Vartype', - 'Version','VersionLanguage','Wait','WaitTime','Wborder','Wchild', - 'Wcols','Week','Wexist','Wfont','WhereType','Windcmd', - 'Windhelp','Windmemo','Windmenu','Windmodify','Windquery','Windscreen', - 'Windsnip','Windstproc','WizardPrompt','Wlast','Wlcol','Wlrow', - 'Wmaximum','Wminimum','Wontop','Woutput','Wparent','Wread', - 'Wrows','Wtitle','Wvisible','Year','Zap','_Alignment', - '_Asciicols','_Asciirows','_Assist','_Beautify','_Box','_Browser', - '_Builder','_Calcmem','_Calcvalue','_Cliptext','_Converter','_Coverage', - '_Curobj','_Dblclick','_Diarydate','_Dos','_Foxdoc','_Foxgraph', - '_Gallery','_Gengraph','_Genhtml','_Genmenu','_Genpd','_Genscrn', - '_Genxtab','_Getexpr','_Include','_Indent','_Lmargin','_Mac', - '_Mbr_appnd','_Mbr_cpart','_Mbr_delet','_Mbr_font','_Mbr_goto','_Mbr_grid', - '_Mbr_link','_Mbr_mode','_Mbr_mvfld','_Mbr_mvprt','_Mbr_seek','_Mbr_sp100', - '_Mbr_sp200','_Mbr_szfld','_Mbrowse','_Mda_appnd','_Mda_avg','_Mda_brow', - '_Mda_calc','_Mda_copy','_Mda_count','_Mda_label','_Mda_pack','_Mda_reprt', - '_Mda_rindx','_Mda_setup','_Mda_sort','_Mda_sp100','_Mda_sp200','_Mda_sp300', - '_Mda_sum','_Mda_total','_Mdata','_Mdiary','_Med_clear','_Med_copy', - '_Med_cut','_Med_cvtst','_Med_find','_Med_finda','_Med_goto','_Med_insob', - '_Med_link','_Med_obj','_Med_paste','_Med_pref','_Med_pstlk','_Med_redo', - '_Med_repl','_Med_repla','_Med_slcta','_Med_sp100','_Med_sp200','_Med_sp300', - '_Med_sp400','_Med_sp500','_Med_undo','_Medit','_Mfi_clall','_Mfi_close', - '_Mfi_export','_Mfi_import','_Mfi_new','_Mfi_open','_Mfi_pgset','_Mfi_prevu', - '_Mfi_print','_Mfi_quit','_Mfi_revrt','_Mfi_savas','_Mfi_save','_Mfi_send', - '_Mfi_setup','_Mfi_sp100','_Mfi_sp200','_Mfi_sp300','_Mfi_sp400','_Mfile', - '_Mfiler','_Mfirst','_Mlabel','_Mlast','_Mline','_Mmacro', - '_Mmbldr','_Mpr_beaut','_Mpr_cancl','_Mpr_compl','_Mpr_do','_Mpr_docum', - '_Mpr_formwz','_Mpr_gener','_Mpr_graph','_Mpr_resum','_Mpr_sp100','_Mpr_sp200', - '_Mpr_sp300','_Mpr_suspend','_Mprog','_Mproj','_Mrc_appnd','_Mrc_chnge', - '_Mrc_cont','_Mrc_delet','_Mrc_goto','_Mrc_locat','_Mrc_recal','_Mrc_repl', - '_Mrc_seek','_Mrc_sp100','_Mrc_sp200','_Mrecord','_Mreport','_Mrqbe', - '_Mscreen','_Msm_data','_Msm_edit','_Msm_file','_Msm_format','_Msm_prog', - '_Msm_recrd','_Msm_systm','_Msm_text','_Msm_tools','_Msm_view','_Msm_windo', - '_Mst_about','_Mst_ascii','_Mst_calcu','_Mst_captr','_Mst_dbase','_Mst_diary', - '_Mst_filer','_Mst_help','_Mst_hphow','_Mst_hpsch','_Mst_macro','_Mst_office', - '_Mst_puzzl','_Mst_sp100','_Mst_sp200','_Mst_sp300','_Mst_specl','_Msysmenu', - '_Msystem','_Mtable','_Mtb_appnd','_Mtb_cpart','_Mtb_delet','_Mtb_delrc', - '_Mtb_goto','_Mtb_link','_Mtb_mvfld','_Mtb_mvprt','_Mtb_props','_Mtb_recal', - '_Mtb_sp100','_Mtb_sp200','_Mtb_sp300','_Mtb_sp400','_Mtb_szfld','_Mwi_arran', - '_Mwi_clear','_Mwi_cmd','_Mwi_color','_Mwi_debug','_Mwi_hide','_Mwi_hidea', - '_Mwi_min','_Mwi_move','_Mwi_rotat','_Mwi_showa','_Mwi_size','_Mwi_sp100', - '_Mwi_sp200','_Mwi_toolb','_Mwi_trace','_Mwi_view','_Mwi_zoom','_Mwindow', - '_Mwizards','_Mwz_all','_Mwz_form','_Mwz_foxdoc','_Mwz_import','_Mwz_label', - '_Mwz_mail','_Mwz_pivot','_Mwz_query','_Mwz_reprt','_Mwz_setup','_Mwz_table', - '_Mwz_upsizing','_Netware','_Oracle','_Padvance','_Pageno','_Pbpage', - '_Pcolno','_Pcopies','_Pdparms','_Pdriver','_Pdsetup','_Pecode', - '_Peject','_Pepage','_Pform','_Plength','_Plineno','_Ploffset', - '_Ppitch','_Pquality','_Pretext','_Pscode','_Pspacing','_Pwait', - '_Rmargin','_Runactivedoc','_Samples','_Screen','_Shell','_Spellchk', - '_Sqlserver','_Startup','_Tabs','_Tally','_Text','_Throttle', - '_Transport','_Triggerlevel','_Unix','_WebDevOnly','_WebMenu','_WebMsftHomePage', - '_WebVFPHomePage','_WebVfpOnlineSupport','_Windows','_Wizard','_Wrap','_scctext', - '_vfp','Additive','After','Again','Aindent','Alignright', - 'All','Alt','Alternate','And','Ansi','Any', - 'Aplabout','App','Array','As','Asc','Ascending', - 'Ascii','At','Attributes','Automatic','Autosave','Avg', - 'Bar','Before','Bell','Between','Bitmap','Blank', - 'Blink','Blocksize','Border','Bottom','Brstatus','Bucket', - 'Buffers','By','Candidate','Carry','Cascade','Catalog', - 'Cdx','Center','Century','Cga','Character','Check', - 'Classlib','Clock','Cnt','Codepage','Collate','Color', - 'Com1','Com2','Command','Compact','Compatible','Compress', - 'Confirm','Connection','Connections','Connstring','Console','Copies', - 'Cpcompile','Cpdialog','Csv','Currency','Cycle','Databases', - 'Datasource','Date','Db4','Dbc','Dbf','Dbmemo3', - 'Debug','Decimals','Defaultsource','Deletetables','Delimited','Delimiters', - 'Descending','Design','Development','Device','Dif','Disabled', - 'Distinct','Dlls','Dohistory','Dos','Dosmem','Double', - 'Driver','Duplex','Echo','Editwork','Ega25','Ega43', - 'Ems','Ems64','Encrypt','Encryption','Environment','Escape', - 'Events','Exact','Except','Exe','Exists','Expression', - 'Extended','F','Fdow','Fetch','Field','Fields', - 'File','Files','Fill','Fixed','Float','Foldconst', - 'Font','Footer','Force','Foreign','Fox2x','Foxplus', - 'Free','Freeze','From','Fullpath','Fw2','Fweek', - 'Get','Gets','Global','Group','Grow','Halfheight', - 'Having','Heading','Headings','Helpfilter','History','Hmemory', - 'Hours','Id','In','Indexes','Information','Instruct', - 'Int','Integer','Intensity','Intersect','Into','Is', - 'Isometric','Key','Keycolumns','Keycomp','Keyset','Last', - 'Ledit','Level','Library','Like','Linked','Lock', - 'Logerrors','Long','Lpartition','Mac','Macdesktop','Machelp', - 'Mackey','Macros','Mark','Master','Max','Maxmem', - 'Mdi','Memlimit','Memory','Memos','Memowidth','Memvar', - 'Menus','Messages','Middle','Min','Minimize','Minus', - 'Mod','Modal','Module','Mono43','Movers','Multilocks', - 'Mvarsiz','Mvcount','N','Near','Negotiate','Noalias', - 'Noappend','Noclear','Noclose','Noconsole','Nocptrans','Nodata', - 'Nodebug','Nodelete','Nodup','Noedit','Noeject','Noenvironment', - 'Nofloat','Nofollow','Nogrow','Noinit','Nolgrid','Nolink', - 'Nolock','Nomargin','Nomdi','Nomenu','Nominimize','Nomodify' - ), - 3 => array('Nomouse','None','Nooptimize','Nooverwrite','Noprojecthook','Noprompt', - 'Noread','Norefresh','Norequery','Norgrid','Norm','Normal', - 'Nosave','Noshadow','Noshow','Nospace','Not','Notab', - 'Notify','Noupdate','Novalidate','Noverify','Nowait','Nowindow', - 'Nowrap','Nozoom','Npv','Null','Number','Objects', - 'Odometer','Of','Off','Oleobjects','Only','Optimize', - 'Or','Orientation','Output','Outshow','Overlay','Overwrite', - 'Pad','Palette','Paperlength','Papersize','Paperwidth','Password', - 'Path','Pattern','Pause','Pdox','Pdsetup','Pen', - 'Pfs','Pixels','Plain','Popups','Precision','Preference', - 'Preview','Primary','Printer','Printquality','Procedures','Production', - 'Program','Progwork','Project','Prompt','Query','Random', - 'Range','Readborder','Readerror','Record','Recover','Redit', - 'Reference','References','Relative','Remote','Reprocess','Resource', - 'Rest','Restrict','Rgb','Right','Row','Rowset', - 'Rpd','Runtime','Safety','Same','Sample','Say', - 'Scale','Scheme','Scoreboard','Screen','Sdf','Seconds', - 'Selection','Shadows','Shared','Sheet','Shell','Shift', - 'Shutdown','Single','Some','Sortwork','Space','Sql', - 'Standalone','Status','Std','Step','Sticky','String', - 'Structure','Subclass','Summary','Sylk','Sysformats','Sysmenus', - 'System','T','Tab','Tables','Talk','Tedit', - 'Textmerge','Time','Timeout','Titles','Tmpfiles','To', - 'Topic','Transaction','Trap','Trbetween','Trigger','Ttoption', - 'Typeahead','Udfparms','Union','Unique','Userid','Users', - 'Values','Var','Verb','Vga25','Vga50','Views', - 'Volume','Where','Windows','Wk1','Wk3','Wks', - 'Workarea','Wp','Wr1','Wrap','Wrk','Xcmdfile', - 'Xl5','Xl8','Xls','Y','Yresolution','Zoom', - 'Activate','ActivateCell','Add','AddColumn','AddItem','AddListItem', - 'AddObject','AddProperty','AddToSCC','AfterBuild','AfterCloseTables','AfterDock', - 'AfterRowColChange','BeforeBuild','BeforeDock','BeforeOpenTables','BeforeRowColChange','Box', - 'Build','CheckIn','CheckOut','Circle','Clear','ClearData', - 'Cleanup','Click','CloneObject','CloseEditor','CloseTables','Cls', - 'CommandTargetExec','CommandTargetQueryStas','ContainerRelease','DataToClip','DblClick','Deactivate', - 'Delete','DeleteColumn','Deleted','Destroy','DoCmd','Dock', - 'DoScroll','DoVerb','DownClick','Drag','DragDrop','DragOver', - 'DropDown','Draw','EnterFocus','Error','ErrorMessage','Eval', - 'ExitFocus','FormatChange','GetData','GetFormat','GetLatestVersion','GoBack', - 'GotFocus','GoForward','GridHitTest','Hide','HideDoc','IndexToItemId', - 'Init','InteractiveChange','Item','ItemIdToIndex','KeyPress','Line', - 'Load','LostFocus','Message','MiddleClick','MouseDown','MouseMove', - 'MouseUp','MouseWheel','Move','Moved','NavigateTo','Newobject', - 'OLECompleteDrag','OLEDrag','OLEDragDrop','OLEDragOver','OLEGiveFeedback','OLESetData', - 'OLEStartDrag','OpenEditor','OpenTables','Paint','Point','Print', - 'ProgrammaticChange','PSet','QueryAddFile','QueryModifyFile','QueryRemoveFile','QueryRunFile', - 'QueryUnload','RangeHigh','RangeLow','ReadActivate','ReadExpression','ReadDeactivate', - 'ReadMethod','ReadShow','ReadValid','ReadWhen','Refresh','Release', - 'RemoveFromSCC','RemoveItem','RemoveListItem','RemoveObject','Requery','RequestData', - 'Reset','ResetToDefault','Resize','RightClick','SaveAs','SaveAsClass', - 'Scrolled','SetAll','SetData','SetFocus','SetFormat','SetMain', - 'SetVar','SetViewPort','ShowDoc','ShowWhatsThis','TextHeight','TextWidth', - 'Timer','UIEnable','UnDock','UndoCheckOut','Unload','UpClick', - 'Valid','WhatsThisMode','When','WriteExpression','WriteMethod','ZOrder', - 'ATGetColors','ATListColors','Accelerate','ActiveColumn','ActiveControl','ActiveForm', - 'ActiveObjectId','ActivePage','ActiveProject','ActiveRow','AddLineFeeds','Alias', - 'Alignment','AllowAddNew','AllowHeaderSizing','AllowResize','AllowRowSizing','AllowTabs', - 'AlwaysOnTop','Application','AutoActivate','AutoCenter','AutoCloseTables','AutoIncrement', - 'AutoOpenTables','AutoRelease','AutoSize','AutoVerbMenu','AutoYield','AvailNum', - 'BackColor','BackStyle','BaseClass','BorderColor','BorderStyle','BorderWidth', - 'Bound','BoundColumn','BoundTo','BrowseAlignment','BrowseCellMarg','BrowseDestWidth', - 'BufferMode','BufferModeOverride','BuildDateTime','ButtonCount','ButtonIndex','Buttons', - 'CLSID','CanAccelerate','CanGetFocus','CanLoseFocus','Cancel','Caption', - 'ChildAlias','ChildOrder','Class','ClassLibrary','ClipControls','ClipRect', - 'Closable','ColorScheme','ColorSource','ColumnCount','ColumnHeaders','ColumnLines', - 'ColumnOrder','ColumnWidths','Columns','Comment','ContinuousScroll','ControlBox', - 'ControlCount','ControlIndex','ControlSource','Controls','CurrentControl','CurrentX', - 'CurrentY','CursorSource','Curvature','DataSession','DataSessionId','DataSourceObj', - 'DataType','Database','DateFormat','DateMark','DefButton','DefButtonOrig', - 'DefHeight','DefLeft','DefTop','DefWidth','Default','DefaultFilePath', - 'DefineWindows','DeleteMark','Desktop','Dirty','DisabledBackColor','DisabledByEOF', - 'DisabledForeColor','DisabledItemBackColor','DisabledItemForeColor','DisabledPicture','DispPageHeight','DispPageWidth', - 'DisplayCount','DisplayValue','DoCreate','DockPosition','Docked','DocumentFile', - 'DownPicture','DragIcon','DragMode','DragState','DrawMode','DrawStyle', - 'DrawWidth','DynamicAlignment','DynamicBackColor','DynamicCurrentControl','DynamicFontBold','DynamicFontItalic', - 'DynamicFontName','DynamicFontOutline','DynamicFontShadow','DynamicFontSize','DynamicFontStrikethru','DynamicFontUnderline', - 'DynamicForeColor','EditFlags','Enabled','EnabledByReadLock','Encrypted','EnvLevel', - 'ErasePage','FileClass','FileClassLibrary','FillColor','FillStyle','Filter', - 'FirstElement','FontBold','FontItalic','FontName','FontOutline','FontShadow', - 'FontSize','FontStrikethru','FontUnderline','ForceFocus','ForeColor','FormCount', - 'FormIndex','FormPageCount','FormPageIndex','Format','Forms','FoxFont', - 'FullName','GoFirst','GoLast','GridLineColor','GridLineWidth','GridLines' - ), - 4 => array('HPROJ','HWnd','HalfHeightCaption','HasClip','HeaderGap','HeaderHeight', - 'Height','HelpContextID','HideSelection','Highlight','HomeDir','HostName', - 'HotKey','HscrollSmallChange','IMEMode','Icon','IgnoreInsert','InResize', - 'Increment','IncrementalSearch','InitialSelectedAlias','InputMask','Instancing','IntegralHeight', - 'Interval','ItemBackColor','ItemData','ItemForeColor','ItemIDData','ItemTips', - 'JustReadLocked','KeyPreview','KeyboardHighValue','KeyboardLowValue','LastModified','Left', - 'LeftColumn','LineSlant','LinkMaster','List','ListCount','ListIndex', - 'ListItem','ListItemId','LockDataSource','LockScreen','MDIForm','MainClass', - 'MainFile','Margin','MaxButton','MaxHeight','MaxLeft','MaxLength', - 'MaxTop','MaxWidth','MemoWindow','MinButton','MinHeight','MinWidth', - 'MouseIcon','MousePointer','Movable','MoverBars','MultiSelect','Name', - 'NapTime','NewIndex','NewItemId','NoDataOnLoad','NoDefine','NotifyContainer', - 'NullDisplay','NumberOfElements','OLEDragMode','OLEDragPicture','OLEDropEffects','OLEDropHasData', - 'OLEDropMode','OLERequestPendingTimeOut','OLEServerBusyRaiseError','OLEServerBusyTimeOut','OLETypeAllowed','OleClass', - 'OleClassId','OleControlContainer','OleIDispInValue','OleIDispOutValue','OleIDispatchIncoming','OleIDispatchOutgoing', - 'OnResize','OneToMany','OpenViews','OpenWindow','PageCount','PageHeight', - 'PageOrder','PageWidth','Pages','Panel','PanelLink','Parent', - 'ParentAlias','ParentClass','Partition','PasswordChar','Picture','ProcessID', - 'ProgID','ProjectHookClass','ProjectHookLibrary','Projects','ReadColors','ReadCycle', - 'ReadFiller','ReadLock','ReadMouse','ReadOnly','ReadSave','ReadSize', - 'ReadTimeout','RecordMark','RecordSource','RecordSourceType','Rect','RelationalExpr', - 'RelativeColumn','RelativeRow','ReleaseErase','ReleaseType','ReleaseWindows','Resizable', - 'RightToLeft','RowHeight','RowSource','RowSourceType','SCCProvider','SCCStatus', - 'SDIForm','ScaleMode','ScrollBars','SelLength','SelStart','SelText', - 'SelectOnEntry','Selected','SelectedBackColor','SelectedForeColor','SelectedID','SelectedItemBackColor', - 'SelectedItemForeColor','SelfEdit','ServerClass','ServerClassLibrary','ServerHelpFile','ServerName', - 'ServerProject','ShowTips','ShowWindow','Sizable','Size<height>','Size<maxlength>', - 'Size<width>','Skip','SkipForm','Sorted','SourceType','Sparse', - 'SpecialEffect','SpinnerHighValue','SpinnerLowValue','SplitBar','StartMode','StatusBarText', - 'Stretch','StrictDateEntry','Style','SystemRefCount','TabIndex','TabStop', - 'TabStretch','TabStyle','Tabhit','Tabs','Tag','TerminateRead', - 'ThreadID','TitleBar','ToolTipText','Top','TopIndex','TopItemId', - 'TypeLibCLSID','TypeLibDesc','TypeLibName','UnlockDataSource','Value','ValueDirty', - 'VersionComments','VersionCompany','VersionCopyright','VersionDescription','VersionNumber','VersionProduct', - 'VersionTrademarks','View','ViewPortHeight','ViewPortLeft','ViewPortTop','ViewPortWidth', - 'Visible','VscrollSmallChange','WasActive','WasOpen','WhatsThisButton','WhatsThisHelp', - 'WhatsThisHelpID','Width','WindowList','WindowNTIList','WindowState','WindowType', - 'WordWrap','ZOrderSet','ActiveDoc','Checkbox','Column','ComboBox', - 'CommandButton','CommandGroup','Container','Control','Cursor','Custom', - 'DataEnvironment','EditBox','Empty','FontClass','Form','Formset', - 'General','Grid','Header','HyperLink','Image','Label', - 'ListBox','Memo','OleBaseControl','OleBoundControl','OleClassIDispOut','OleControl', - 'OptionButton','OptionGroup','Page','PageFrame','ProjectHook','RectClass', - 'Relation','Session','Shape','Spinner','TextBox' ,'Toolbar' - ), - ), - 'SYMBOLS' => array( - "!", "@", "$", "%", - "(", ")", "{", "}", "[", "]", - "-", "+", "*", "/", - "=", "<", ">", - ":", ";", ",", ".", "&", - "?", "??", "???" - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: blue;', - 2 => 'color: blue;', - 3 => 'color: blue;', - 4 => 'color: blue;' - ), - 'COMMENTS' => array( - 1 => 'color: green; font-style: italic;', - 2 => 'color: green; font-style: italic;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: blue;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 1 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: blue;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/visualprolog.php b/system/application/libraries/geshi/visualprolog.php deleted file mode 100644 index 5c9bbd4d0..000000000 --- a/system/application/libraries/geshi/visualprolog.php +++ /dev/null @@ -1,129 +0,0 @@ -<?php -/************************************************************************************* - * visualprolog.php - * ---------- - * Author: Thomas Linder Puls (puls@pdc.dk) - * Copyright: (c) 2008 Thomas Linder Puls (puls@pdc.dk) - * Release Version: 1.0.8.6 - * Date Started: 2008/11/20 - * - * Visual Prolog language file for GeSHi. - * - * CHANGES - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Visual Prolog', - 'COMMENT_SINGLE' => array(1 => '%'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'HARDQUOTE' => array('@"', '"'), - 'HARDESCAPE' => array('""'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( - 'clauses','constants','constructors','delegate','domains','facts', - 'goal','guards','inherits','monitor','namespace','open', - 'predicates','properties','resolve','supports' - ), - 2 => array( - 'align','and','anyflow','as','bitsize','catch','determ','digits', - 'div','do','else','elseif','erroneous','externally','failure', - 'finally','from','language','mod','multi','nondeterm','or', - 'procedure','quot','rem','single','then','to' - ), - 3 => array( - '#bininclude','#else','#elseif','#endif','#error','#export', - '#externally','#if','#import','#include','#message','#options', - '#orrequires','#requires','#then','#warning' - ), - ), - 'SYMBOLS' => array( - '+', '-', '*', '?', '=', '/', '>', '<', '^', '!', ':', '(', ')', '{', '}', '[', ']' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => true, - 1 => true, - 2 => true, - 3 => true - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #808000;', - 2 => 'color: #333399;', - 3 => 'color: #800080;', - ), - 'COMMENTS' => array( - 1 => 'color: #AA77BD', - 'MULTI' => 'color: #AA77BD' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #008080;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #00B7B7;' - ), - 'NUMBERS' => array( - 0 => 'color: #0000FF;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #000000;' - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 0 => 'color: #008000;', - 1 => 'color: #808000;', - 2 => 'color: #333399;', - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => ':', - 2 => '::' - ), - 'REGEXPS' => array( - 0 => "(?<![a-zA-Z0-9_])(?!(?:PIPE|SEMI)>)[A-Z_]\w*(?!\w)", - 1 => "\\b(end\\s+)?(implement|class|interface)\\b", - 2 => "\\b(end\\s+)?(foreach|if|try)\\b", - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/whitespace.php b/system/application/libraries/geshi/whitespace.php deleted file mode 100644 index a27a7b920..000000000 --- a/system/application/libraries/geshi/whitespace.php +++ /dev/null @@ -1,121 +0,0 @@ -<?php -/************************************************************************************* - * whitespace.php - * ---------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2009/10/31 - * - * Whitespace language file for GeSHi. - * - * CHANGES - * ------- - * 2008/10/31 (1.0.8.1) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ -$language_data = array ( - 'LANG_NAME' => 'Whitespace', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - 3 => "/[^\n\x20\x09]+/s" - ), - 'CASE_KEYWORDS' => GESHI_CAPS_UPPER, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - 3 => 'color: #666666; font-style: italic;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'ESCAPE_CHAR' => array( - ), - 'SCRIPT' => array( - ), - 'REGEXPS' => array( - 2 => 'background-color: #FF9999;', - 3 => 'background-color: #9999FF;' - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 2 => array( - GESHI_SEARCH => "(?<!\\A)\x20", - GESHI_REPLACE => " ", - GESHI_MODIFIERS => 's', - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - 3 => array( - GESHI_SEARCH => "\x09", - GESHI_REPLACE => "	", - GESHI_MODIFIERS => 's', - GESHI_BEFORE => "", - GESHI_AFTER => "" - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'KEYWORDS' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, -// 'REGEXPS' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/whois.php b/system/application/libraries/geshi/whois.php deleted file mode 100644 index 019e91450..000000000 --- a/system/application/libraries/geshi/whois.php +++ /dev/null @@ -1,181 +0,0 @@ -<?php -/************************************************************************************* - * whois.php - * -------- - * Author: Benny Baumann (BenBE@geshi.org) - * Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2008/09/14 - * - * Whois response (RPSL format) language file for GeSHi. - * - * CHANGES - * ------- - * 2008/09/14 (1.0.0) - * - First Release - * - * TODO - * ---- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Whois (RPSL format)', - 'COMMENT_SINGLE' => array(1 => '% ', 2 => '%ERROR:'), - 'COMMENT_MULTI' => array(), - 'COMMENT_REGEXP' => array( - //Description - 3 => '/(?:(?<=^remarks:)|(?<=^descr:))(.|\n\s)*$/mi', - - //Contact Details - 4 => '/(?<=^address:)(.|\n\s)*$/mi', - 5 => '/\+\d+(?:(?:\s\(\d+(\s\d+)*\))?(?:\s\d+)+|-\d+-\d+)/', - 6 => '/\b(?!-|\.)[\w\-\.]+(?!-|\.)@((?!-)[\w\-]+\.)+\w+\b/', - - //IP, Networks and AS information\links - 7 => '/\b(?<!\.|\-)(?:[\da-f:]+(?!\.)|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?:\/1?\d\d?)?(?<!\.|\-)\b/', - 8 => '/\bAS\d+\b/' - ), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array(), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( //Object Types - 'as-block','as-set','aut-num','domain','filter-set','inet-rtr', - 'inet6num','inetnum','irt','key-cert','limerick','mntner', - 'organisation','peering-set','person','poem','role','route-set', - 'route','route6','rtr-set' - ), - 2 => array( //Field Types - 'abuse-mailbox','address','admin-c','aggr-bndry','aggr-mtd','alias', - 'as-block','as-name','as-set','aut-num','auth','author','certif', - 'changed','components','country','default','descr','dom-net', - 'domain','ds-rdata','e-mail','encryption','export','export-comps', - 'fax-no','filter','filter-set','fingerpr','form','holes','ifaddr', - 'import','inet-rtr','inet6num','inetnum','inject','interface','irt', - 'irt-nfy','key-cert','limerick','local-as','mbrs-by-ref', - 'member-of','members','method','mnt-by','mnt-domains','mnt-irt', - 'mnt-lower','mnt-nfy','mnt-ref','mnt-routes','mntner','mp-default', - 'mp-export','mp-filter','mp-import','mp-members','mp-peer', - 'mp-peering','netname','nic-hdl','notify','nserver','org', - 'org-name','org-type','organisation','origin','owner','peer', - 'peering','peering-set','person','phone','poem','ref-nfy','refer', - 'referral-by','remarks','rev-srv','role','route','route-set', - 'route6','rtr-set','signature','source','status','sub-dom','tech-c', - 'text','upd-to','zone-c' - ), - 3 => array( //RPSL reserved - 'accept','action','and','announce','any','as-any','at','atomic', - 'except','from','inbound','into','networks','not','or','outbound', - 'peeras','refine','rs-any','to' - ) - ), - 'SYMBOLS' => array( - ':' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000FF; font-weight: bold;', - 2 => 'color: #000080; font-weight: bold;', - 3 => 'color: #990000; font-weight: bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #666666; font-style: italic;', - 2 => 'color: #666666; font-style: italic;', - 3 => 'color: #404080;', - 4 => 'color: #408040;', - 5 => 'color: #408040;', - 6 => 'color: #408040;', - 7 => 'color: #804040;', - 8 => 'color: #804040;', - 'MULTI' => 'color: #666666; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;', - 'HARD' => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #009900;' - ), - 'STRINGS' => array( - 0 => '', - ), - 'NUMBERS' => array( - 0 => 'color: #000080;', - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #0000FF;' - ), - 'REGEXPS' => array( - 0 => 'color: #000088;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => 'http://www.irr.net/docs/rpsl.html' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Variables - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*" - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4, - 'PARSER_CONTROL' => array( - 'KEYWORDS' => array( - 1 => array( - 'DISALLOWED_BEFORE' => '(?<=\A |\A \n(?m:^)|\n\n(?m:^))' - ), - 2 => array( - 'DISALLOWED_BEFORE' => '(?m:^)' - ) - ), - 'ENABLE_FLAGS' => array( - 'BRACKETS' => GESHI_NEVER, - 'SYMBOLS' => GESHI_NEVER, - 'BRACKETS' => GESHI_NEVER, - 'STRINGS' => GESHI_NEVER, - 'ESCAPE_CHAR' => GESHI_NEVER, - 'NUMBERS' => GESHI_NEVER, - 'METHODS' => GESHI_NEVER, - 'SCRIPT' => GESHI_NEVER - ) - ), -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/winbatch.php b/system/application/libraries/geshi/winbatch.php deleted file mode 100644 index 5b5dcc1df..000000000 --- a/system/application/libraries/geshi/winbatch.php +++ /dev/null @@ -1,369 +0,0 @@ -<?php -/************************************************************************************* - * winbatch.php - * ------------ - * Author: Craig Storey (storey.craig@gmail.com) - * Copyright: (c) 2004 Craig Storey (craig.xcottawa.ca) - * Release Version: 1.0.8.6 - * Date Started: 2006/05/19 - * - * WinBatch language file for GeSHi. - * - * WinBatch is a Windows scripting language - www.winbatch.com. - * The keywords were pulled from the winbatch/system/WIL.clr file for v2005G. - * Not all extender functions are added, but a very large set of the most common. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2006/05/05 (1.0.0) - * - First Release - * - * TODO (updated 2004/07/14) - * ------------------------- - * - Right now any ':Subroutine' is treated as a comment. This highlights the - * Subroutine's name, but it's not a perfect fix. I should use a RegEx in - * GeSHI_Search&Replace features.. - * - Update the list of extender functions. - * - Use a regular expression to comment UDFs that start with 'udf_'. - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Winbatch', - 'COMMENT_SINGLE' => array(1 => ';', 2 => ':'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"', '`'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - 1 => array( - 'While', 'To', 'Then', 'Switch', 'Select', 'Return', 'Next', 'IntControl', 'Include', 'In', 'If', - 'Goto', 'GoSub', 'ForEach', 'For', 'Exit', 'Execute', 'ErrorMode', 'EndWhile', 'EndSwitch', '#EndSubRoutine', - 'EndSelect', 'EndIf', '#EEndFunction', 'EndFor', 'End', 'Else', 'DropWild', 'Drop', '#DefineSubRoutine', - '#DefineFunction', 'Debug', 'Continue', 'Case', 'CallExt', 'Call', 'By', 'BreakPoint', 'Break' - ), - 2 => array( - 'ZOOMED', 'YES', 'WORD4', 'WORD2', 'WORD1', 'WHOLESECTION', 'WAIT', 'UNSORTED', 'UNCHECK', 'TRUE', 'TILE', - 'TAB', 'STRING', 'STACK', 'SPC2NET', 'SORTED', 'SOK', 'SNET2PC', 'SINGLE', 'SHIFT', 'SERVER', 'SERRWINSOCK', - 'SERRVOICE', 'SERRSOCKET', 'SERRSERVICE', 'SERRSELECT', 'SERRPARAM', 'SERROUTOFMEM', 'SERRNOTFOUND', 'SERRNOCONN', - 'SERRNOANSWER', 'SERRMUSTWAIT', 'SERRIPADDR', 'SERRHOSTNAME', 'SERRFAILURE', 'SERRBUSY', 'SCROLLLOCK', 'SCANCEL', - 'SAVE', 'SALREADY', 'ROWS', 'REGUSERS', 'REGROOT', 'REGMACHINE', 'REGCURRENT', 'REGCLASSES', 'RDBLCLICK', 'RCLICK', - 'RBUTTON', 'RAD2DEG', 'QSUCCESSINFO', 'QSUCCESS', 'QSTILLEX', 'QROLLBACK', 'QNULL', 'QNODATA', 'QNEXT', 'QNEEDDATA', - 'QFIRST', 'QCOMMIT', 'QBADHANDLE', 'PRINTER', 'PLANCKJOULES', 'PLANCKERGS', 'PI', 'PARSEONLY', 'PARSEC', 'P3ERRREPLY', - 'OPEN', 'ON', 'OFF', 'NUMLOCK', 'NOWAIT', 'NOTIFY', 'NORMAL', 'NORESIZE', 'NONE', 'NO', 'NCSAFORMAT', 'MULTIPLE', - 'MSFORMAT', 'MPLAYRDBLCK', 'MPLAYRCLK', 'MPLAYRBUTTON', 'MPLAYMDBLCK', 'MPLAYMCLK', 'MPLAYMBUTTON', 'MPLAYLDBLCK', - 'MPLAYLCLK', 'MPLAYLBUTTON', 'MINOR', 'MDBLCLICK', 'MCLICK', 'MBYESNO', 'MBUTTON', 'MBOKCANCEL', 'MAJOR', 'MAGFIELD', - 'LOCALGROUP', 'LIGHTMTPS', 'LIGHTMPS', 'LF', 'LDBLCLICK', 'LCLICK', 'LBUTTON', 'LAFFDBERROR', 'ICON', 'HTTPS', 'HTTP', - 'HNOHEADER', 'HMETHODPOST', 'HMETHODGET', 'HIDDEN', 'HHEADERONLY', 'HHEADER', 'GRAVITATION', 'GOPHER', 'GOLDENRATIO', - 'GMTSEC', 'GLOBALGROUP', 'GFTSEC', 'GETPROCID', 'GETEXITCODE', 'FWDSCAN', 'FTPPASSIVE', 'FTP', 'FLOAT8', 'FARADAY', - 'FALSE', 'EXTENDED', 'EULERS', 'ENABLE', 'ELECTRIC', 'DRIVE', 'DISABLE', 'DESCENDING', 'DEG2RAD', 'DEFAULT', 'CTRL', - 'CRLF', 'CR', 'COMMONFORMAT', 'COLUMNS', 'CHECK', 'CAPSLOCK', 'CANCEL', 'BOLTZMANN', 'BACKSCAN', 'AVOGADRO', 'ATTR_X', - 'ATTR_T', 'ATTR_SY', 'ATTR_SH', 'ATTR_RO', 'ATTR_RI', 'ATTR_P', 'ATTR_IC', 'ATTR_H', 'ATTR_DM', 'ATTR_DI', 'ATTR_DC', - 'ATTR_CI', 'ATTR_A', 'ASCENDING', 'ARRANGE', 'AMC', 'ACC_WRITE', 'ACC_READ_NT', 'ACC_READ_95', 'ACC_READ', 'ACC_PRINT_NT', - 'ACC_PMANG_NT', 'ACC_PFULL_NT', 'ACC_LIST', 'ACC_FULL_NT', 'ACC_FULL_95', 'ACC_DELETE', 'ACC_CREATE', 'ACC_CONTROL', - 'ACC_CHNG_NT', 'ACC_ATTRIB', 'ABOVEICONS' - ), - 3 => array( - 'Yields', 'Yield', 'WinZoom', 'WinWaitExist', 'WinWaitClose', 'WinWaitChild', 'WinVersion', 'WinTitle', 'WinSysInfo', - 'WinState', 'WinShow', 'WinResources', 'WinPositionChild', 'WinPosition', 'WinPlaceSet', 'WinPlaceGet', 'WinPlaceChild', - 'WinPlace', 'WinParmSet', 'WinParmGet', 'WinName', 'WinMetrics', 'WinItemProcId', 'WinItemNameId', 'WinItemizeEx', - 'WinItemize', 'WinItemChild', 'WinIsDos', 'WinIdGet', 'WinIconize', 'WinHide', 'WinHelp', 'WinGetactive', 'WinExistchild', - 'WinExist', 'WinExename', 'WinConfig', 'WinClosenot', 'WinClose', 'WinArrange', 'WinActivechild', 'WinActivchild', - 'WinActivate', 'WebVerifyCard', 'WebSetTimeout', 'WebParamSize', 'WebParamNames', 'WebParamFile', 'WebParamData', - 'WebParamBuf', 'WebOutFile', 'WebOutBinary', 'WebOut', 'WebDumpError', 'WebDatData', 'WebCounter', 'WebConSize', 'WebConData', - 'WebConBuf', 'WebCmdData', 'WebBaseConv', 'Wallpaper', 'WaitForKeyEX', 'WaitForKey', 'VersionDLL', 'Version', 'VarType', - 'TimeYmdHms', 'TimeWait', 'TimeSubtract', 'TimeJulToYmd', 'TimeJulianDay', 'TimeDiffSecs', 'TimeDiffDays', 'TimeDiff', 'TimeDelay', - 'TimeDate', 'TimeAdd', 'TextSelect', 'TextBoxSort', 'TextBox', 'Terminate', 'Tanh', 'Tan', 'SysParamInfo', 'SvcWaitForCmd', - 'SvcSetState', 'SvcSetAccept', 'StrUpper', 'StrTrim', 'StrSubWild', 'StrSub', 'StrScan', 'StrReplace', 'StrLower', 'StrLenWild', - 'StrLen', 'StrIndexWild', 'StrIndexNC', 'StrIndex', 'StriCmp', 'StrFixLeft', 'StrFixCharsL', 'StrFixChars', 'StrFix', 'StrFill', - 'StrCnt', 'StrCmp', 'StrClean', 'StrCharCount', 'StrCat', 'StrByteCount', 'Sqrt', 'SoundVolume', 'Sounds', 'Snapshot', 'Sinh', 'Sin', - 'ShortCutMake', 'ShortCutInfo', 'ShortCutExtra', 'ShortCutEdit', 'ShortCutDir', 'ShellExecute', 'SendMenusToEx', 'SendMenusTo', - 'SendKeysTo', 'SendKeysChild', 'SendKey', 'RunZoomWait', 'RunZoom', 'RunWithLogon', 'RunWait', 'RunShell', 'RunIconWait', - 'RunIcon', 'RunHideWait', 'RunHide', 'RunExit', 'RunEnviron', 'Run', 'RtStatus', 'Reload', 'RegUnloadHive', 'RegSetValue', - 'RegSetQword', 'RegSetMulSz', 'RegSetExpSz', 'RegSetEx', 'RegSetDword', 'RegSetBin', 'RegQueryValue', 'RegQueryStr', - 'RegQueryQword', 'RegQueryMulSz', 'RegQueryKeys', 'RegQueryKeyLastWriteTime', 'RegQueryKey', 'RegQueryItem', 'RegQueryExpSz', - 'RegQueryEx', 'RegQueryDword', 'RegQueryBin', 'RegOpenKeyEx', 'RegOpenKey', 'RegOpenFlags', 'RegLoadHive', 'RegExistValue', - 'RegExistKey', 'RegEntryType', 'RegDelValue', 'RegDeleteKey', 'RegCreateKey', 'RegConnect', 'RegCloseKey', 'RegApp', 'Random', - 'PtrPersistent', 'PtrGlobalDefine', 'PtrGlobal', 'Print', 'PlayWaveform', 'PlayMidi', 'PlayMedia', 'PipeServerWrite', 'PipeServerRead', - 'PipeServerCreate', 'PipeServerClose', 'PipeInfo', 'PipeClientSendRecvData', 'PipeClientOpen', 'PipeClientClose', 'Pause', - 'ParseData', 'ObjectTypeGet', 'ObjectType', 'ObjectOpen', 'ObjectGet', 'ObjectEventRemove', 'ObjectEventAdd', - 'ObjectCreate', 'ObjectConstToArray', 'ObjectConstantsGet', 'ObjectCollectionOpen', 'ObjectCollectionNext', - 'ObjectCollectionClose', 'ObjectClose', 'ObjectAccess', 'Num2Char', 'NetInfo', 'MsgTextGet', 'MousePlay', 'MouseMove', 'MouseInfo', - 'MouseDrag', 'MouseCoords', 'MouseClickBtn', 'MouseClick', 'mod', 'Min', 'Message', 'Max', 'Loge', 'LogDisk', 'Log10', 'LastError', - 'KeyToggleSet', 'KeyToggleGet', 'ItemSortNc', 'ItemSort', 'ItemSelect', 'ItemReplace', 'ItemRemove', 'ItemLocate', 'ItemInsert', - 'ItemExtractCSV', 'ItemExtract', 'ItemCountCSV', 'ItemCount', 'IsNumber', 'IsLicensed', 'IsKeyDown', 'IsInt', 'IsFloat', 'IsDefined', - 'Int', 'InstallFile', 'IniWritePvt', 'IniWrite', 'IniReadPvt', 'IniRead', 'IniItemizePvt', 'IniItemize', 'IniDeletePvt', 'IniDelete', - 'IgnoreInput', 'IconReplace', 'IconInfo', 'IconExtract', 'IconArrange', 'GetTickCount', 'GetObject', 'GetExactTime', 'Floor', - 'FindWindow', 'FileYmdHms', 'FileWrite', 'FileVerInfo', 'FileTimeTouch', 'FileTimeSetEx', 'FileTimeSet', 'FileTimeGetEx', - 'FileTimeGet', 'FileTimeCode', 'FileSizeEx', 'FileSize', 'FileRoot', 'FileRename', 'FileRead', 'FilePutW', 'FilePut', 'FilePath', - 'FileOpen', 'FileNameShort', 'FileNameLong', 'FileNameEval2', 'FileNameEval1', 'FileMoveAttr', 'FileMove', 'FileMapName', - 'FileLocate', 'FileItemPath', 'FileItemize', 'FileInfoToArray', 'FileGetW', 'FileGet', 'FileFullname', 'FileExtension', 'FileExist', - 'FileDelete', 'FileCreateTemp', 'FileCopyAttr', 'FileCopy', 'FileCompare', 'FileClose', 'FileBaseName', 'FileAttrSetEx', - 'FileAttrSet', 'FileAttrGetEx', 'FileAttrGet', 'FileAppend', 'Fabs', 'ExtractAttachedFile', 'Exp', 'ExeTypeInfo', 'Exclusive', - 'EnvItemize', 'EnvironSet', 'Environment', 'EndSession', 'DosVersion', 'DllLoad', 'DllLastError', 'DllHwnd', 'DllHinst', - 'DllFree', 'DllCallCDecl', 'DllCall', 'Display', 'DiskVolinfo', 'DiskSize', 'DiskScan', 'DiskInfo', 'DiskFree', 'DiskExist', - 'DirWindows', 'DirSize', 'DirScript', 'DirRename', 'DirRemove', 'DirMake', 'DirItemize', 'DirInfoToArray', 'DirHome', 'DirGet', - 'DirExist', 'DirChange', 'DirAttrSetEx', 'DirAttrSet', 'DirAttrGetEx', 'DirAttrGet', 'DialogProcOptions', 'DialogObject', - 'DialogControlState', 'DialogControlSet', 'DialogControlGet', 'DialogBox', 'Dialog', 'Delay', 'Decimals', 'DebugTrace', - 'DebugData', 'DDETimeout', 'DDETerminate', 'DDERequest', 'DDEPoke', 'DDEInitiate', 'DDEExecute', 'DateTime', 'CurrFilepath', - 'CurrentPath', 'CurrentFile', 'CreateObject', 'Cosh', 'Cos', 'ClipPut', 'ClipHasFormat', 'ClipGetEx', 'ClipGet', 'ClipAppend', - 'ChrUnicodeToString', 'ChrUnicodeToHex', 'ChrStringToUnicode', 'ChrSetCodepage', 'ChrHexToUnicode', 'ChrGetCodepage', - 'Char2Num', 'Ceiling', 'ButtonNames', 'BoxUpdates', 'BoxTitle', 'BoxTextFont', 'BoxTextColor', 'BoxText', 'BoxShut', 'BoxPen', - 'BoxOpen', 'BoxNew', 'BoxMapmode', 'BoxesUp', 'BoxDrawText', 'BoxDrawRect', 'BoxDrawLine', 'BoxDrawCircle', 'BoxDestroy', - 'BoxDataTag', 'BoxDataClear', 'BoxColor', 'BoxCaption', 'BoxButtonWait', 'BoxButtonStat', 'BoxButtonKill', 'BoxButtonDraw', - 'BoxBitMap', 'BinaryXor', 'BinaryXlate', 'BinaryWriteEx', 'BinaryWrite', 'BinaryTagRepl', 'BinaryTagLen', 'BinaryTagInit', - 'BinaryTagIndex', 'BinaryTagFind', 'BinaryTagExtr', 'BinaryStrCnt', 'BinarySort', 'BinaryReplace', 'BinaryReadEx', - 'BinaryRead', 'BinaryPokeStrW', 'BinaryPokeStr', 'BinaryPokeHex', 'BinaryPokeFlt', 'BinaryPoke4', 'BinaryPoke2', 'BinaryPoke', - 'BinaryPeekStrW', 'BinaryPeekStr', 'BinaryPeekHex', 'BinaryPeekFlt', 'BinaryPeek4', 'BinaryPeek2', 'BinaryPeek', 'BinaryOr', - 'BinaryOleType', 'BinaryIndexNc', 'BinaryIndexEx', 'BinaryIndexBin', 'BinaryIndex', 'BinaryIncrFlt', 'BinaryIncr4', - 'BinaryIncr2', 'BinaryIncr', 'BinaryHashRec', 'BinaryFree', 'BinaryEodSet', 'BinaryEodGet', 'BinaryCopy', 'BinaryConvert', - 'BinaryCompare', 'BinaryClipPut', 'BinaryClipGet', 'BinaryChecksum', 'BinaryBufInfo', 'BinaryAnd', 'BinaryAllocArray', - 'BinaryAlloc', 'Beep', 'Average', 'Atan', 'AskYesNo', 'AskTextbox', 'AskPassword', 'AskLine', 'AskItemlist', 'AskFont', - 'AskFiletext', 'AskFilename', 'AskDirectory', 'AskColor', 'Asin', 'ArrInitialize', 'ArrInfo', 'ArrDimension', - 'Arrayize', 'ArrayFilePutCSV', 'ArrayFilePut', 'ArrayFileGetCSV', 'ArrayFileGet', 'AppWaitClose', 'AppExist', 'AddExtender', - 'Acos', 'Abs', 'About' - ), - 4 => array( - 'zZipFiles', 'zVersionInfo', 'zVersion', 'zUnZipFiles', 'zSetPortBit', 'zRPortShift', 'zPortOut', 'zPortIn', 'zNotPortBit', - 'zLPortShift', 'zGetPortBit', 'zClrPortBit', 'xVerifyCCard', 'xSendMessage', 'xMessageBox', 'xMemCompact', 'xHex', 'xGetElapsed', - 'xGetChildHwnd', 'xExtenderInfo', 'xEnumStreams', 'xEjectMedia', 'xDriveReady', 'xDiskLabelGet', 'xCursorSet', 'xBaseConvert', - 'wxPing', 'wxParmSet', 'wxParmGet', 'wxMsgSetHdr', 'wxMsgGetHdr', 'wxMsgGetBody', 'wxHost2Addr', 'wxGetLastErr', 'wxGetInfo', - 'wxGetErrDesc', 'wxAddr2Host', 'wtsWaitSystemEvent', 'wtsVersion', 'wtsTerminateProcess', 'wtsShutdownSystem', 'wtsSendMessage', - 'wtsQuerySessionInfo', 'wtsProcIdToSessId', 'wtsLogoffSession', 'wtsLastErrMsg', 'wtsIsTSEnabled', 'wtsIsCitrixEnabled', - 'wtsGetActiveConsoleSessId', 'wtsEnumSessions', 'wtsEnumProcesses', 'wtsDisconnectSession', 'wnWrkGroups', 'wnVersion', 'wntWtsUserSet', - 'wntWtsUserGet', 'wntVersion', 'wntUserSidChk', 'wntUserSetDat', 'wntUserRename', 'wntUserProps', 'wntUserList', 'wntUserInfo', - 'wntUserGetDat', 'wntUserFiles', 'wntUserExist', 'wntUserDel', 'wntUserAddDat', 'wntUserAdd', 'wntSvcStatus', 'wntSvcStart', - 'wntSvcList', 'wntSvcDelete', 'wntSvcCreate', 'wntSvcControl', 'wntSvcCfgSet', 'wntSvcCfgGet', 'wntShutdown', 'wntShareUsers', - 'wntShareSet', 'wntShareList', 'wntShareInfo', 'wntShareDel', 'wntShareAdd', 'wntServiceInf', 'wntServiceAt', 'wntServerType', - 'wntServerList', 'wntServerInfo', 'wntSecurityGet', 'wntRunAsUser', 'wntResources2', 'wntResources', 'wntRemoteTime', 'wntRasUserSet', - 'wntRasUserGet', 'wntProfileInfo', 'wntProfileDel', 'wntPrivUsers', 'wntPrivList', 'wntPrivGet', 'wntPrivDel', 'wntPrivAdd', - 'wntOwnerSet', 'wntOwnerGet', 'wntMemberSet', 'wntMemberLst2', 'wntMemberList', 'wntMemberGrps', 'wntMemberGet', 'wntMemberDel', - 'wntLsaPolSet', 'wntLsaPolGet', 'wntListGroups', 'wntLastErrMsg', 'wntGroupRen', 'wntGroupInfo', 'wntGroupEdit', 'wntGroupDel', - 'wntGroupAdd', 'wntGetUser', 'wntGetDrive', 'wntGetDc', 'wntGetCon', 'wntFileUsers', 'wntFilesOpen', 'wntFileClose', 'wntEventWrite', - 'wntEventLog', 'wntDomainSync', 'wntDirDialog', 'wntDfsList', 'wntDfsGetInfo', 'wntCurrUsers', 'wntChgPswd', 'wntCancelCon', - 'wntAuditMod', 'wntAuditList', 'wntAuditGet', 'wntAuditDel', 'wntAuditAdd2', 'wntAuditAdd', 'wntAddPrinter', 'wntAddDrive', - 'wntAcctPolSet', 'wntAcctPolGet', 'wntAcctList', 'wntAcctInfo', 'wntAccessMod', 'wntAccessList', 'wntAccessGet', 'wntAccessDel', - 'wntaccessadd2', 'wntAccessAdd', 'wnShares', 'wnSharePath', 'wnShareName', 'wnShareCnt', 'wnServers', 'wnRestore', 'wnNetNames', - 'wnGetUser', 'wnGetCon', 'wnGetCaps', 'wnDlgShare', 'wnDlgNoShare', 'wnDlgDiscon', 'wnDlgCon4', 'wnDlgCon3', 'wnDlgCon2', 'wnDlgCon', - 'wnDlgBrowse', 'wnDialog', 'wnCmptrInfo', 'wnCancelCon', 'wnAddCon', 'WaitSRQ', 'w9xVersion', 'w9xUserSetDat', 'w9xUserRename', - 'w9xUserprops', 'w9xUserList', 'w9xUserinfo', 'w9xUserGetDat', 'w9xUserExist', 'w9xUserDel', 'w9xUserAddDat', 'w9xUserAdd', 'w9xShareSet', - 'w9xShareInfo', 'w9xShareDel', 'w9xShareAdd', 'w9xServiceAt', 'w9xServerList', 'w9xRemoteTime', 'w9xOwnerGet', 'w9xMemberSet', - 'w9xMemberList', 'w9xMemberGrps', 'w9xMemberGet', 'w9xMemberDel', 'w9xListGroups', 'w9xGroupInfo', 'w9xGroupDel', 'w9xGroupAdd', - 'w9xGetDC', 'w9xFileUsers', 'w9xAccessList', 'w9xAccessGet', 'w9xAccessDel', 'w9xAccessAdd', 'w95Version', 'w95ShareUsers', - 'w95ShareSet', 'w95ShareList', 'w95ShareInfo', 'w95ShareDel', 'w95ShareAdd', 'w95ServiceInf', 'w95ServiceAt', 'w95ServerType', - 'w95ServerInfo', 'w95Resources', 'w95GetUser', 'w95GetDrive', 'w95GetCon', 'w95FileUsers', 'w95FileClose', 'w95DirDialog', - 'w95CancelCon', 'w95AddPrinter', 'w95AddDrive', 'w95AccessDel', 'w95AccessAdd', 'w3Version', 'w3PrtBrowse', 'w3NetGetUser', - 'w3NetDialog', 'w3GetCon', 'w3GetCaps', 'w3DirBrowse', 'w3CancelCon', 'w3AddCon', 'urlGetScheme', 'urlEncode', 'urlDecode', - 'tVersion', 'tSetPriority', 'TriggerList', 'Trigger', 'tRemoteConn', 'tOpenProc', 'tListProc', 'tListMod', 'tKillProc', 'tGetProcInfo', - 'tGetPriority', 'tGetModInfo', 'tGetLastError', 'tGetData', 'TestSys', 'TestSRQ', 'tCountProc', 'tCompatible', 'tCloseProc', - 'tBrowseCntrs', 'sSendString', 'sSendNum', 'sSendLine', 'sSendBinary', 'sRecvNum', 'sRecvLine', 'sRecvBinary', 'SrchVersion', - 'SrchNext', 'SrchInit', 'SrchFree', 'sOpen', 'sOK2Send', 'sOK2Recv', 'smtpSendText', 'smtpSendFile', 'sListen', 'SetRWLS', - 'SendSetup', 'SendLLO', 'SendList', 'SendIFC', 'SendDataBytes', 'SendCmds', 'Send', 'sConnect', 'sClose', 'SByteOrder32', - 'sByteOrder16', 'sAccept', 'rRegVersion', 'rRegSearch', 'ResetSys', 'ReceiveSetup', 'Receive', 'ReadStsByte', 'RcvRespMsg', - 'RasVersion', 'RasTypeSize', 'RasRename', 'RasNumCons', 'RasNameValid', 'RasListActCon', 'RasItemize', 'RasHangUp', 'RasGetLastErr', - 'RasGetConStat', 'RasEntrySet', 'RasEntryInfo', 'RasEntryExist', 'RasEntryDel', 'RasEntryAdd', 'RasDialInfo', 'RasDial', - 'RasCopy', 'RasConStatus', 'qVersionInfo', 'qTransact', 'qTables', 'qSpecial', 'qSetConnOpt', 'qNumRsltCol', 'qNativeSql', 'qLastCode', - 'qGetData', 'qFreeStmt', 'qFreeEnv', 'qFreeConnect', 'qFetch', 'qExecDirect', 'qError', 'qDriverList', 'qDriverCon', 'qDisconnect', - 'qDataSources', 'qConnect', 'qConfigError', 'qConfigData', 'qColumns', 'qBindCol', 'qAllocStmt', 'qAllocEnv', 'qAllocConnect', - 'pWaitFor', 'pVersionInfo', 'pTimeout', 'pSetPublish', 'pSetPrtInfo', 'pSetPrtAttrib', 'pSetDefPrtEx', 'pSetDefPrt', 'pSendFile', - 'pRecvFile', 'pPutString', 'pPutLine', 'pPutChar', 'pPutByte', 'pPutBinary', 'PPollUnconfig', 'PPollConfig', 'PPoll', 'pPeekChar', - 'pPeekByte', 'pPaperSizes', 'pPaperBins', 'pModemSReg', 'pModemParams', 'pModemInit', 'pModemHangUp', 'pModemDial', 'pModemControl', - 'pModemConnect', 'pModemCommand', 'pModemAnsRing', 'pModemAnsCall', 'pMediaTypes', 'pGetString', 'pGetPublish', 'pGetPrtList', - 'pGetPrtInfo', 'pGetPrtAttrib', 'pGetLine', 'pGetLastError', 'pGetErrorMsg', 'pGetErrorCode', 'pGetDefPrtInf', 'pGetChar', - 'pGetByte', 'pGetBinary', 'pDelPrtConn', 'pDelPrinter', 'pComOpen', 'pComModify', 'pComInfo', 'pComControl', 'pComClose', - 'pCheckSum', 'pCheckBinary', 'pCaptureOn', 'pCaptureOff', 'pCaptureLog', 'PassControl', 'pAddPrtConn', 'pAddPrinter', 'p3RecvText', - 'p3RecvFile', 'p3Peek', 'p3Open', 'p3GetReply', 'p3Delete', 'p3Count', 'p3Close', 'nwWhoAmI', 'nwVfyPassword', 'nwVersion', - 'nwSrvShutdown', 'nwSrvNLMMgr', 'nwSrvGenGUID', 'nwSrvExecNCF', 'nwSetVolLimit', 'nwSetSrvParam', 'nwSetSrvInfo', 'nwSetPrimServ', - 'nwSetPassword', 'nwSetOptions', 'nwSetFileInfo', 'nwSetDirLimit', 'nwSetDirInfo', 'nwSetContext', 'nwSetBcastMode', 'nwServerList', - 'nwSendBcastMsg', 'nwSearchObjects', 'nwSearchFilter', 'nwRenameObject', 'nwRemoveObject', 'nwReceiveBcastMsg', 'nwNameConvert', - 'nwMutateObject', 'nwMoveObject', 'nwModifyObject', 'nwMapDelete', 'nwMap', 'nwLogout', 'nwLogin', 'nwListUserGroups', - 'nwListObjects', 'nwListGroupMembers', 'nwLastErrMsg', 'nwIsUserInGroup', 'nwGetVolLimit', 'nwGetSrvStats', 'nwGetSrvParam', - 'nwGetSrvInfo', 'nwGetSrvCfg', 'nwGetOptions', 'nwGetObjValue', 'nwGetObjInfo', 'nwGetNLMInfo', 'nwGetMapped', 'nwGetFileInfo', - 'nwGetDirLimit', 'nwGetDirInfo', 'nwGetContext', 'nwGetConnInfo', 'nwGetCapture', 'nwGetBcastMode', 'nwGetAttrInfo', - 'nwDriveStatus', 'nwDrivePath', 'nwDetachFromServer', 'nwDelUserFromGroup', 'nwDelConnNum', 'nwCompareObject', 'nwClientInfo', - 'nwChgPassword', 'nwAttachToServer', 'nwAddUserToGroup', 'nwAddObject', 'netVersion', 'netResources', 'netGetUser', 'netGetCon', - 'netDirDialog', 'netCancelCon', 'netAddPrinter', 'netAddDrive', 'n4Version', 'n4UserGroups', 'n4UserGroupEx', 'n4SetPrimServ', - 'n4SetOptions', 'n4SetContextG', 'n4SetContext', 'n4ServerList', 'n4ServerInfo', 'n4ObjSearch', 'n4ObjRename', 'n4ObjOptions', - 'n4ObjMove', 'n4ObjGetVal', 'n4ObjectProps', 'n4ObjectList', 'n4ObjectInfo', 'n4ObjDelete', 'n4NameConvert', 'n4MsgsEndAll', - 'n4MsgsEnd', 'n4MemberSet', 'n4MemberGet', 'n4MemberDel', 'n4MapRoot', 'n4MapDir', 'n4MapDelete', 'n4Map', 'n4LogoutTree', - 'n4Logout', 'n4Login', 'n4GetUserName', 'n4GetUserId', 'n4GetUser', 'n4GetNetAddr', 'n4GetMapped', 'n4GetContext', - 'n4GetConnNum', 'n4FileUsers', 'n4FileTimeGet', 'n4FileAttrSet', 'n4FileAttrGet', 'n4DriveStatus', 'n4DrivePath', 'n4DirTimeGet', - 'n4DirAttrSet', 'n4DirAttrGet', 'n4Detach', 'n4ChgPassword', 'n4CapturePrt', 'n4CaptureGet', 'n4CaptureEnd', 'n4Attach', - 'n3Version', 'n3UserGroups', 'n3ServerList', 'n3ServerInfo', 'n3MsgsEndAll', 'n3MsgsEnd', 'n3MemberSet', 'n3MemberGet', - 'n3MemberDel', 'n3Maproot', 'n3Mapdir', 'n3Mapdelete', 'n3Map', 'n3Logout', 'n3GetUserId', 'n3GetUser', 'n3GetNetAddr', - 'n3GetMapped', 'n3GetConnNum', 'n3FileTimeGet', 'n3FileAttrSet', 'n3FileAttrGet', 'n3DriveStatus', 'n3DrivePath', - 'n3DirTimeGet', 'n3DirAttrSet', 'n3DirAttrGet', 'n3Detach', 'n3ChgPassword', 'n3CapturePrt', 'n3CaptureGet', - 'n3CaptureEnd', 'n3Attach', 'mVersion', 'mSyncMail', 'mSendMailEx', 'mSendMail', 'mrecvmail', 'mReadNextMsg', 'mLogOn', - 'mLogOff', 'mFindNext', 'mError', 'mCompatible', 'kVerInfo', 'kStatusInfo', 'kSendText', 'kSendFile', 'kManageImap4', - 'kInit', 'kGetMail', 'kExtra', 'kDest', 'kDeletePop3', 'iWriteDataBuf', 'iWriteData', 'iVersion', 'IUrlOpen', 'iUrlEncode', - 'iUrlDecode', 'iReadDataBuf', 'iReadData', 'ipVersion', 'ipPing', 'iPing', 'ipHost2Addr', 'ipGetLastErr', 'ipGetAddress', - 'iParseURL', 'ipAddr2Host', 'iOptionSet', 'iOptionGet', 'ImgWave', 'ImgVersion', 'ImgUnsharpMask', 'ImgThreshold', 'ImgSwirl', - 'ImgSpread', 'ImgSolarize', 'ImgShear', 'ImgSharpen', 'ImgShade', 'ImgScale', 'ImgSample', 'ImgRotate', 'ImgResize', - 'ImgReduceNoise', 'ImgRaise', 'ImgOilPaint', 'ImgNormalize', 'ImgNegate', 'ImgMotionBlur', 'ImgModulate', 'ImgMinify', - 'ImgMedianFilter', 'ImgMagnify', 'ImgLevel', 'ImgIsValid', 'ImgIsPalette', 'ImgIsMono', 'ImgIsGray', 'ImgInfo', 'ImgImplode', - 'ImgGetImageType', 'ImgGetColorCount', 'ImgGaussianBlur', 'ImgGamma', 'ImgFrame', 'ImgFlop', 'ImgFlip', 'ImgEqualize', - 'ImgEnhance', 'ImgEmboss', 'ImgCrop', 'ImgConvert', 'ImgContrast', 'ImgCompare', 'ImgColorize', 'ImgChop', 'ImgCharcoal', - 'ImgBorder', 'ImgBlur', 'ImgAddNoise', 'iLocFindNext', 'iLocFindInit', 'iHttpOpen', 'iHttpInit', 'iHttpHeaders', 'iHttpAccept', - 'iHostConnect', 'iHost2Addr', 'iGetResponse', 'iGetLastError', 'iGetIEVer', 'iGetConStatEx', 'iGetConState', 'iFtpRename', - 'iFtpPut', 'iFtpOpen', 'iFtpGet', 'iFtpFindNext', 'iFtpFindInit', 'iFtpDirRemove', 'iFtpDirMake', 'iFtpDirGet', 'iFtpDirChange', - 'iFtpDialog', 'iFtpDelete', 'iFtpCmd', 'iErrorDialog', 'iDialItemize', 'iDialHangUp', 'iDial', 'iCookieSet', 'iCookieGet', - 'iContentURL', 'iContentFile', 'iContentData', 'iClose', 'ibWrtf', 'ibWrt', 'ibWait', 'ibVersion', 'ibUnlock', 'ibTrg', - 'ibTmo', 'ibStop', 'ibStatus', 'ibSta', 'ibSre', 'ibSic', 'ibSad', 'ibRsv', 'ibRsp', 'ibRsc', 'ibRpp', 'ibRdf', 'ibRd', - 'ibPpc', 'ibPoke', 'ibPct', 'ibPad', 'ibOnl', 'ibMakeAddr', 'ibLock', 'ibLoc', 'ibLn', 'ibLines', 'ibIst', 'ibInit', - 'ibGts', 'ibGetSad', 'ibGetPad', 'ibFind', 'ibEvent', 'ibErr', 'ibEot', 'ibEos', 'iBegin', 'ibDma', 'ibDev', 'ibConfig', - 'ibCntl', 'ibCnt', 'ibCmda', 'ibCmd', 'ibClr', 'ibCac', 'ibBna', 'ibAsk', 'iAddr2Host', 'huge_Thousands', 'huge_Subtract', - 'huge_SetOptions', 'huge_Multiply', 'huge_GetLastError', 'huge_ExtenderInfo', 'huge_Divide', 'huge_Decimal', 'huge_Add', - 'httpStripHTML', 'httpRecvTextF', 'httpRecvText', 'httpRecvQuery', 'httpRecvQryF', 'httpRecvFile', 'httpGetServer', - 'httpGetQuery', 'httpGetPath', 'httpGetFile', 'httpGetDir', 'httpGetAnchor', 'httpFullPath', 'httpFirewall', 'httpAuth', - 'ftpRename', 'ftpQuote', 'ftpPut', 'ftpOpen', 'ftpList', 'ftpGet', 'ftpFirewall', 'ftpDelete', 'ftpClose', 'ftpChDir', - 'FindRQS', 'FindLstn', 'EnvSetVar', 'EnvPathDel', 'EnvPathChk', 'EnvPathAdd', 'EnvListVars', 'EnvGetVar', 'EnvGetInfo', - 'EnableRemote', 'EnableLocal', 'ehllapiWait', 'ehllapiVersion', 'ehllapiUninit', 'ehllapiStopKeyIntercept', 'ehllapiStopHostNotify', - 'ehllapiStopCloseIntercept', 'ehllapiStartKeyIntercept', 'ehllapiStartHostNotify', 'ehllapiStartCloseIntercept', - 'ehllapiSetWindowStatus', 'ehllapiSetSessionParams', 'ehllapiSetPSWindowName', 'ehllapiSetCursorLoc', 'ehllapiSendKey', - 'ehllapiSendFile', 'ehllapiSearchPS', 'ehllapiSearchField', 'ehllapiRunProfile', 'ehllapiResetSystem', 'ehllapiReserve', - 'ehllapiRelease', 'ehllapiReceiveFile', 'ehllapiQuerySystem', 'ehllapiQueryPSStatus', 'ehllapiQueryHostNotify', - 'ehllapiQueryFieldAttr', 'ehllapiQueryCursorLoc', 'ehllapiQueryCloseIntercept', 'ehllapiPostInterceptStatus', - 'ehllapiPause', 'ehllapiLastErrMsg', 'ehllapiInit', 'ehllapiGetWindowStatus', 'ehllapiGetPSHWND', 'ehllapiGetKey', - 'ehllapiFindFieldPos', 'ehllapiFindFieldLen', 'ehllapiDisconnectPS', 'ehllapiCvtRCToPos', 'ehllapiCvtPosToRC', - 'ehllapiCopyTextToPS', 'ehllapiCopyTextToField', 'ehllapiCopyTextFromPS', 'ehllapiCopyTextFromField', 'ehllapiCopyOIA', - 'ehllapiConnectPS', 'dunItemize', 'dunDisconnect', 'dunConnectEx', 'dunConnect', 'dsTestParam', 'dsSIDtoHexStr', 'dsSetSecProp', - 'dsSetProperty', 'dsSetPassword', 'dsSetObj', 'dsSetCredentX', 'dsSetCredent', 'dsRemFromGrp', 'dsRelSecObj', 'dsMoveObj', - 'dsIsObject', 'dsIsMemberGrp', 'dsIsContainer', 'dsGetUsersGrps', 'dsGetSecProp', 'dsGetPropName', 'dsGetProperty', - 'dsGetPrntPath', 'dsGetPrimGrp', 'dsGetMemGrp', 'dsGetInfo', 'dsGetClass', 'dsGetChldPath', 'dsFindPath', 'dsDeleteObj', - 'dsCreatSecObj', 'dsCreateObj', 'dsCopySecObj', 'dsAddToGrp', 'dsAclRemAce', 'dsAclOrderAce', 'dsAclGetAces', 'dsAclAddAce', - 'DevClearList', 'DevClear', 'dbTest', 'dbSwapColumns', 'dbSort', 'dbSetRecordField', 'dbSetOptions', 'dbSetErrorReporting', - 'dbSetEntireRecord', 'dbSetDelimiter', 'dbSave', 'dbOpen', 'dbNameColumn', 'dbMakeNewItem', 'dbInsertColumn', 'dbGetVersion', - 'dbGetSaveStatus', 'dbGetRecordField', 'dbGetRecordCount', 'dbGetNextItem', 'dbGetLastError', 'dbGetEntireRecord', - 'dbGetColumnType', 'dbGetColumnNumber', 'dbGetColumnName', 'dbGetColumnCount', 'dbFindRecord', 'dbExist', 'dbEasterEgg', - 'dbDeleteRecord', 'dbDeleteColumn', 'dbDebug', 'dbCookDatabases', 'dbClose', 'dbCloneRecord', 'dbBindCol', 'cWndState', - 'cWndinfo', 'cWndGetWndSpecName', 'cWndGetWndSpec', 'cWndexist', 'cWndByWndSpecName', 'cWndByWndSpec', 'cWndbyseq', - 'cWndbyname', 'cWndbyid', 'cWndbyclass', 'cWinIDConvert', 'cVersionInfo', 'cVendorId', 'cSetWndText', 'cSetUpDownPos', - 'cSetTvItem', 'cSetTrackPos', 'cSetTabItem', 'cSetLvItem', 'cSetLbItemEx', 'cSetLbItem', 'cSetIpAddr', 'cSetFocus', - 'cSetEditText', 'cSetDtpDate', 'cSetCbItem', 'cSetCalDate', 'cSendMessage', 'cRadioButton', 'cPostMessage', 'cPostButton', - 'cMemStat', 'cGetWndCursor', 'cGetUpDownPos', 'cGetUpDownMin', 'cGetUpDownMax', 'cGetTVItem', 'cGetTrackPos', 'cGetTrackMin', - 'cGetTrackMax', 'cGetTbText', 'cGetSbText', 'cGetLvText', 'cGetLvSelText', 'cGetLvFocText', 'cGetLvDdtText', 'cGetLvColText', - 'cGetLbText', 'cGetLbSelText', 'cGetLbCount', 'cGetIpAddr', 'cGetInfo', 'cGetHrText', 'cGetFocus', 'cGetEditText', 'cGetDtpDate', - 'cGetControlImageCRC', 'cGetCBText', 'cGetCbCount', 'cGetCalDate', 'cFindByName', 'cFindByClass', 'cEnablestate', 'cDblClickItem', - 'cCpuSupt', 'cCpuSpeed', 'cCpuIdExt', 'cCpuId', 'cCpuFeat', 'cCpuBenchmark', 'cCloneCheck', 'cClickToolbar', 'cClickButton', - 'cClearTvItem', 'cClearLvItem', 'cClearLbAll', 'cCheckbox', 'aVersion', 'aStatusbar', 'aShellFolder', 'aMsgTimeout', 'AllSPoll', - 'aGetLastError', 'aFileRename', 'aFileMove', 'aFileDelete', 'aFileCopy' - ), - 5 => array( - 'wWordRight', 'wWordLeft', 'wWinTile', 'wWinRestore', 'wWinNext', 'wWinMinimize', 'wWinMaximize', 'wWinCloseAll', 'wWinClose', - 'wWinCascade', 'wWinArricons', 'wViewOutput', 'wViewOptions', 'wViewHtml', 'wUpperCase', 'wUpline', 'wUndo', 'wTopOfFile', 'wToggleIns', - 'wTab', 'wStatusMsg', 'wStartSel', 'wSpellcheck', 'wSetProject', 'wSetPrefs', 'wSetColblk', 'wSetBookmark', 'wSelWordRight', - 'wSelWordLeft', 'wSelUp', 'wSelTop', 'wSelRight', 'wSelPgUp', 'wSelPgDn', 'wSelLeft', 'wSelInfo', 'wSelHome', 'wSelEnd', 'wSelectAll', - 'wSelDown', 'wSelBottom', 'wRunRebuild', 'wRunMake', 'wRunExecute', 'wRunDebug', 'wRunConfig', 'wRunCompile', 'wRunCommand', 'wRight', - 'wRepeat', 'wRedo', 'wRecord', 'wProperties', 'wPrintDirect', 'wPrinSetup', 'wPrevError', 'wPaste', 'wPageUp', 'wPageDown', 'wNextError', - 'wNewLine', 'wLowerCase', 'wLineCount', 'wLeft', 'wInvertCase', 'wInsString', 'wInsLine', 'wHome', 'wHelpKeyword', 'wHelpKeybrd', - 'wHelpIndex', 'wHelpHelp', 'wHelpCmds', 'wHelpAbout', 'wGotoLine', 'wGotoCol', 'wGetWrap', 'wGetWord', 'wGetUndo', 'wGetSelstate', - 'wGetRedo', 'wGetOutput', 'wGetModified', 'wGetLineNo', 'wGetIns', 'wGetFilename', 'wGetColNo', 'wGetChar', 'wFtpOpen', 'wFindNext', - 'wFindInFiles', 'wFind', 'wFileSaveAs', 'wFileSave', 'wFileRevert', 'wFilePrint', 'wFilePgSetup', 'wFileOpen', 'wFileNew', 'wFileMerge', - 'wFileList', 'wFileExit', 'wEndSel', 'wEndOfFile', 'wEnd', 'wEdWrap', 'wEdWordRight', 'wEdWordLeft', 'wEdUpLine', 'wEdUndo', 'wEdTopOfFile', - 'wEdToggleIns', 'wEdTab', 'wEdStartSel', 'wEdSetColBlk', 'wEdSelectAll', 'wEdRight', 'wEdRedo', 'wEdPaste', 'wEdPageUp', 'wEdPageDown', - 'wEdNewLine', 'wEdLeft', 'wEdInsString', 'wEdHome', 'wEdGoToLine', 'wEdGoToCol', 'wEdGetWord', 'wEdEndSel', 'wEdEndOfFile', 'wEdEnd', - 'wEdDownLine', 'wEdDelete', 'wEdCutLine', 'wEdCut', 'wEdCopyLine', 'wEdCopy', 'wEdClearSel', 'wEdBackTab', 'wEdBackspace', 'wDownLine', - 'wDelete', 'wDelButton', 'wCutMarked', 'wCutLine', 'wCutAppend', 'wCut', 'wCopyMarked', 'wCopyLine', 'wCopyAppend', 'wCopy', 'wCompile', - 'wClearSel', 'wChange', 'wCallMacro', 'wBackTab', 'wBackspace', 'wAutoIndent', 'wAddButton', 'edWindowTile', 'edWindowRestore', - 'edWindowNext', 'edWindowMinimize', 'edWindowMaximize', 'edWindowCloseall', 'edWindowClose', 'edWindowCascade', 'edWindowArrangeIcons', - 'edStatusMsg', 'edSearchViewOutput', 'edSearchRepeat', 'edSearchPrevError', 'edSearchNextError', 'edSearchFind', 'edSearchChange', - 'edRunRebuild', 'edRunMake', 'edRunExecute', 'edRunDebug', 'edRunConfigure', 'edRunCompile', 'edRunCommand', 'edRecord', 'edHelpProcedures', - 'edHelpKeyword', 'edHelpKeyboard', 'edHelpIndex', 'edHelpHelp', 'edHelpCommands', 'edHelpAbout', 'edGetWordWrapState', 'edGetWindowName', - 'edGetUndoState', 'edGetSelectionState', 'edGetRedoState', 'edGetModifiedStatus', 'edGetLineNumber', 'edGetInsertState', 'edGetColumnNumber', - 'edGetChar', 'edFileSetPreferences', 'edFileSaveAs', 'edFileSave', 'edFilePrinterSetup', 'edFilePrint', 'edFilePageSetup', 'edFileOpen', - 'edFileNew', 'edFileMerge', 'edFileList', 'edFileExit', 'edEditWrap', 'edEditWordRight', 'edEditWordLeft', 'edEditUpLine', 'edEditUndo', - 'edEditToggleIns', 'edEditTab', 'edEditStartSelection', 'edEditSetColumnBlock', 'edEditSetBookmark', 'edEditSelectAll', 'edEditRight', - 'edEditRedo', 'edEditPaste', 'edEditPageUp', 'edEditPageDown', 'edEditLeft', 'edEditInsertString', 'edEditGoToLine', 'edEditGoToColumn', - 'edEditGoToBookmark', 'edEditGetCurrentWord', 'edEditEndSelection', 'edEditEndOfLine', 'edEditEndOfFile', 'edEditDownline', 'edEditDelete', - 'edEditCutline', 'edEditCut', 'edEditCopyline', 'edEditCopy', 'edEditClearSelection', 'edEditBeginningOfLine', 'edEditBeginningOfFile', - 'edEditBackTab', 'edEditBackspace', 'edDeleteButton', 'edAddButton' - ) - ), - 'SYMBOLS' => array( - '(', ')', '[', ']', '{', '}', '!', '+', '-', '~', '$', '^', '?', '@', '%', '#', '&', '*', '|', '/', '<', '>' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false, - 5 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #800080;', - 2 => 'color: #0080FF; font-weight: bold;', - 3 => 'color: #0000FF;', - 4 => 'color: #FF00FF;', - 5 => 'color: #008000;' - ), - 'COMMENTS' => array( - 1 => 'color: #008000; font-style: italic;', - 2 => 'color: #FF1010; font-weight: bold;', - 'MULTI' => 'color: #808080; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - 0 => 'color: #006600;' - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'REGEXPS' => array( - 0 => 'color: #0000ff;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '', - 5 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array(), - 'REGEXPS' => array(//Variable names - 0 => "[\\$]{1,2}[a-zA-Z_][a-zA-Z0-9_]*" - ), - 'STRICT_MODE_APPLIES' => GESHI_MAYBE, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/geshi/xml.php b/system/application/libraries/geshi/xml.php deleted file mode 100644 index 608c99f00..000000000 --- a/system/application/libraries/geshi/xml.php +++ /dev/null @@ -1,157 +0,0 @@ -<?php -/************************************************************************************* - * xml.php - * ------- - * Author: Nigel McNie (nigel@geshi.org) - * Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/) - * Release Version: 1.0.8.6 - * Date Started: 2004/09/01 - * - * XML language file for GeSHi. Based on the idea/file by Christian Weiske - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2005/12/28 (1.0.2) - * - Removed escape character for strings - * 2004/11/27 (1.0.1) - * - Added support for multiple object splitters - * 2004/10/27 (1.0.0) - * - First Release - * - * TODO (updated 2004/11/27) - * ------------------------- - * * Check regexps work and correctly highlight XML stuff and nothing else - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'XML', - 'COMMENT_SINGLE' => array(), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - ), - 'COMMENTS' => array( - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #66cc66;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #66cc66;' - ), - 'SCRIPT' => array( - -1 => 'color: #808080; font-style: italic;', // comments - 0 => 'color: #00bbdd;', - 1 => 'color: #ddbb00;', - 2 => 'color: #339933;', - 3 => 'color: #009900;' - ), - 'REGEXPS' => array( - 0 => 'color: #000066;', - 1 => 'color: #000000; font-weight: bold;', - 2 => 'color: #000000; font-weight: bold;' - ) - ), - 'URLS' => array( - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - 0 => array(//attribute names - GESHI_SEARCH => '([a-z_:][\w\-\.:]*)(=)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '\\2' - ), - 1 => array(//Initial header line - GESHI_SEARCH => '(<[\/?|(\?xml)]?[a-z_:][\w\-\.:]*(\??>)?)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - 2 => array(//Tag end markers - GESHI_SEARCH => '(([\/|\?])?>)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => 'i', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - ), - 'STRICT_MODE_APPLIES' => GESHI_ALWAYS, - 'SCRIPT_DELIMITERS' => array( - -1 => array( - '<!--' => '-->' - ), - 0 => array( - '<!DOCTYPE' => '>' - ), - 1 => array( - '&' => ';' - ), - 2 => array( - '<![CDATA[' => ']]>' - ), - 3 => array( - '<' => '>' - ) - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - -1 => false, - 0 => false, - 1 => false, - 2 => false, - 3 => true - ), - 'TAB_WIDTH' => 2, - 'PARSER_CONTROL' => array( - 'ENABLE_FLAGS' => array( - 'NUMBERS' => GESHI_NEVER - ) - ) -); - -?> diff --git a/system/application/libraries/geshi/xorg_conf.php b/system/application/libraries/geshi/xorg_conf.php deleted file mode 100644 index cdb6c36c9..000000000 --- a/system/application/libraries/geshi/xorg_conf.php +++ /dev/null @@ -1,124 +0,0 @@ -<?php -/************************************************************************************* - * xorg_conf.php - * ---------- - * Author: Milian Wolff (mail@milianw.de) - * Copyright: (c) 2008 Milian Wolff (http://milianw.de) - * Release Version: 1.0.8.6 - * Date Started: 2008/06/18 - * - * xorg.conf language file for GeSHi. - * - * CHANGES - * ------- - * 2008/06/18 (1.0.8) - * - Initial import - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'Xorg configuration', - 'COMMENT_SINGLE' => array(1 => '#'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array('"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - // sections - 1 => array( - 'Section', 'EndSection', 'SubSection', 'EndSubSection' - ), - 2 => array( - // see http://www.x.org/archive/X11R6.9.0/doc/html/xorg.conf.5.html - 'BiosBase', 'Black', 'Boardname', 'BusID', 'ChipID', 'ChipRev', - 'Chipset', 'ClockChip', 'Clocks', 'DacSpeed', - 'DefaultDepth', 'DefaultFbBpp', 'Depth', 'Device', - 'DisplaySize', 'Driver', 'FbBpp', 'Gamma', - 'HorizSync', 'IOBase', 'Identifier', 'InputDevice', - 'Load', 'MemBase', 'Mode', 'Modeline', 'Modelname', - 'Modes', 'Monitor', 'Option', 'Ramdac', 'RgbPath', - 'Screen', 'TextClockFreq', 'UseModes', 'VendorName', - 'VertRefresh', 'VideoAdaptor', 'VideoRam', - 'ViewPort', 'Virtual', 'Visual', 'Weight', 'White' - ), - 3 => array( - // some sub-keywords - // screen position - 'Above', 'Absolute', 'Below', 'LeftOf', 'Relative', 'RightOf', - // modes - 'DotClock', 'Flags', 'HSkew', 'HTimings', 'VScan', 'VTimings' - ), - ), - 'REGEXPS' => array( - ), - 'SYMBOLS' => array( - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #b1b100;', - 2 => 'color: #990000;', - 3 => 'color: #550000;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - ), - 'BRACKETS' => array( - ), - 'STRINGS' => array( - 0 => 'color: #0000ff;', - ), - 'NUMBERS' => array( - 0 => 'color: #cc66cc;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 4 -); - -?> diff --git a/system/application/libraries/geshi/xpp.php b/system/application/libraries/geshi/xpp.php deleted file mode 100644 index 5f009ec8c..000000000 --- a/system/application/libraries/geshi/xpp.php +++ /dev/null @@ -1,436 +0,0 @@ -<?php -/************************************************************************************* - * xpp.php - * ------- - * Author: Simon Butcher (simon@butcher.name) - * Copyright: (c) 2007 Simon Butcher (http://simon.butcher.name/) - * Release Version: 1.0.8.6 - * Date Started: 2007/02/27 - * - * Axapta/Dynamics Ax X++ language file for GeSHi. - * For details, see <http://msdn.microsoft.com/en-us/library/aa867122.aspx> - * - * CHANGES - * ------- - * 2007/02/28 (1.0.0) - * - First Release - * - * TODO (updated 2007/02/27) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'X++', - 'COMMENT_SINGLE' => array(1 => '//'), - 'COMMENT_MULTI' => array('/*' => '*/'), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '\\', - 'KEYWORDS' => array( - 1 => array( // Primitive types - 'void', - 'str', - 'real', - 'int64', - 'int', - 'date', - 'container', - 'boolean', - 'anytype' - ), - 2 => array( // Keywords - 'window', - 'while', - 'try', - 'true', - 'throw', - 'switch', - 'super', - 'static', - 'server', - 'right', - 'return', - 'retry', - 'public', - 'protected', - 'private', - 'print', - 'pause', - 'null', - 'new', - 'mod', - 'left', - 'interface', - 'implements', - 'if', - 'for', - 'final', - 'false', - 'extends', - 'else', - 'edit', - 'do', - 'div', - 'display', - 'default', - 'continue', - 'client', - 'class', - 'changeCompany', - 'case', - 'breakpoint', - 'break', - 'at', - 'abstract' - ), - 3 => array( // Functions within the Axapta kernel - 'year', - 'wkofyr', - 'webwebpartstr', - 'webstaticfilestr', - 'websitetempstr', - 'websitedefstr', - 'webreportstr', - 'webpagedefstr', - 'weboutputcontentitemstr', - 'webmenustr', - 'webletitemstr', - 'webformstr', - 'webdisplaycontentitemstr', - 'webactionitemstr', - 'varstr', - 'utilmoyr', - 'uint2str', - 'typeof', - 'typeid', - 'trunc', - 'today', - 'timenow', - 'time2str', - 'term', - 'tanh', - 'tan', - 'tablestr', - 'tablestaticmethodstr', - 'tablepname', - 'tablenum', - 'tablename2id', - 'tablemethodstr', - 'tableid2pname', - 'tableid2name', - 'tablefieldgroupstr', - 'tablecollectionstr', - 'systemdateset', - 'systemdateget', - 'syd', - 'substr', - 'strupr', - 'strscan', - 'strrtrim', - 'strrep', - 'strrem', - 'strprompt', - 'strpoke', - 'strnfind', - 'strlwr', - 'strltrim', - 'strline', - 'strlen', - 'strkeep', - 'strins', - 'strfmt', - 'strfind', - 'strdel', - 'strcolseq', - 'strcmp', - 'stralpha', - 'str2time', - 'str2num', - 'str2int64', - 'str2int', - 'str2guid', - 'str2enum', - 'str2date', - 'staticmethodstr', - 'sln', - 'sleep', - 'sinh', - 'sin', - 'setprefix', - 'sessionid', - 'securitykeystr', - 'securitykeynum', - 'runbuf', - 'runas', - 'round', - 'resourcestr', - 'reportstr', - 'refprintall', - 'rate', - 'querystr', - 'pv', - 'pt', - 'prmisdefault', - 'primoyr', - 'prevyr', - 'prevqtr', - 'prevmth', - 'power', - 'pmt', - 'num2str', - 'num2date', - 'num2char', - 'nextyr', - 'nextqtr', - 'nextmth', - 'newguid', - 'mthofyr', - 'mthname', - 'mkdate', - 'minint', - 'min', - 'methodstr', - 'menustr', - 'menuitemoutputstr', - 'menuitemdisplaystr', - 'menuitemactionstr', - 'maxint', - 'maxdate', - 'max', - 'match', - 'logn', - 'log10', - 'literalstr', - 'licensecodestr', - 'licensecodenum', - 'intvnorm', - 'intvno', - 'intvname', - 'intvmax', - 'int64str', - 'indexstr', - 'indexnum', - 'indexname2id', - 'indexid2name', - 'idg', - 'identifierstr', - 'helpfilestr', - 'helpdevstr', - 'helpapplstr', - 'guid2str', - 'getprefix', - 'getCurrentUTCTime', - 'fv', - 'funcname', - 'frac', - 'formstr', - 'fieldstr', - 'fieldpname', - 'fieldnum', - 'fieldname2id', - 'fieldid2pname', - 'fieldid2name', - 'extendedTypeStr', - 'extendedTypeNum', - 'exp10', - 'exp', - 'evalbuf', - 'enumstr', - 'enumnum', - 'enumcnt', - 'enum2str', - 'endmth', - 'dimof', - 'dg', - 'decround', - 'ddb', - 'dayofyr', - 'dayofwk', - 'dayofmth', - 'dayname', - 'date2str', - 'date2num', - 'curuserid', - 'curext', - 'cterm', - 'cosh', - 'cos', - 'corrflagset', - 'corrflagget', - 'convertUTCTimeToLocalTime', - 'convertUTCDateToLocalDate', - 'conpoke', - 'conpeek', - 'connull', - 'conlen', - 'conins', - 'confind', - 'configurationkeystr', - 'configurationkeynum', - 'condel', - 'classstr', - 'classnum', - 'classidget', - 'char2num', - 'beep', - 'atan', - 'asin', - 'ascii2ansi', - 'any2str', - 'any2real', - 'any2int64', - 'any2int', - 'any2guid', - 'any2enum', - 'any2date', - 'ansi2ascii', - 'acos', - 'abs' - ), - 4 => array( // X++ SQL stuff - 'where', - 'update_recordset', - 'ttsCommit', - 'ttsBegin', - 'ttsAbort', - 'sum', - 'setting', - 'select', - 'reverse', - 'pessimisticLock', - 'outer', - 'order by', - 'optimisticLock', - 'notExists', - 'noFetch', - 'next', - 'minof', - 'maxof', - 'like', - 'join', - 'insert_recordset', - 'index hint', - 'index', - 'group by', - 'from', - 'forUpdate', - 'forceSelectOrder', - 'forcePlaceholders', - 'forceNestedLoop', - 'forceLiterals', - 'flush', - 'firstOnly', - 'firstFast', - 'exists', - 'desc', - 'delete_from', - 'count', - 'avg', - 'asc' - ) - ), - 'SYMBOLS' => array( // X++ symbols - '!', - '&', - '(', - ')', - '*', - '^', - '|', - '~', - '+', - ',', - '-', - '/', - ':', - '<', - '=', - '>', - '?', - '[', - ']', - '{', - '}' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - 4 => false - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff;', - 2 => 'color: #0000ff;', - 3 => 'color: #0000ff;', - 4 => 'color: #0000ff;' - ), - 'COMMENTS' => array( - 1 => 'color: #007f00;', - 'MULTI' => 'color: #007f00; font-style: italic;' - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000000;' - ), - 'BRACKETS' => array( - 0 => 'color: #000000;' - ), - 'STRINGS' => array( - 0 => 'color: #ff0000;' - ), - 'NUMBERS' => array( - 0 => 'color: #000000;' - ), - 'METHODS' => array( - 1 => 'color: #000000;', - 2 => 'color: #000000;' - ), - 'SYMBOLS' => array( - 0 => 'color: #00007f;' - ), - 'REGEXPS' => array( - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '', - 4 => '' - ), - 'OOLANG' => true, - 'OBJECT_SPLITTERS' => array( - 1 => '.', - 2 => '::' - ), - 'REGEXPS' => array( - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) -); - -?> diff --git a/system/application/libraries/geshi/z80.php b/system/application/libraries/geshi/z80.php deleted file mode 100644 index b41e80c74..000000000 --- a/system/application/libraries/geshi/z80.php +++ /dev/null @@ -1,144 +0,0 @@ -<?php -/************************************************************************************* - * z80.php - * ------- - * Author: Benny Baumann (BenBE@omorphia.de) - * Copyright: (c) 2007-2008 Benny Baumann (http://www.omorphia.de/) - * Release Version: 1.0.8.6 - * Date Started: 2007/02/06 - * - * ZiLOG Z80 Assembler language file for GeSHi. - * Syntax definition as commonly used with table assembler TASM32 - * This file will contain some undocumented opcodes. - * - * CHANGES - * ------- - * 2008/05/23 (1.0.7.22) - * - Added description of extra language features (SF#1970248) - * 2007/06/03 (1.0.1) - * - Fixed two typos in the language file - * 2007/02/06 (1.0.0) - * - First Release - * - * TODO (updated 2007/02/06) - * ------------------------- - * - ************************************************************************************* - * - * This file is part of GeSHi. - * - * GeSHi is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GeSHi is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GeSHi; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - ************************************************************************************/ - -$language_data = array ( - 'LANG_NAME' => 'ZiLOG Z80 Assembler', - 'COMMENT_SINGLE' => array(1 => ';'), - 'COMMENT_MULTI' => array(), - 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, - 'QUOTEMARKS' => array("'", '"'), - 'ESCAPE_CHAR' => '', - 'KEYWORDS' => array( - /*CPU*/ - 1 => array( - 'adc','add','and','bit','call','ccf','cp','cpd','cpdr','cpir','cpi', - 'cpl','daa','dec','di','djnz','ei','ex','exx','halt','im','in', - 'in0','inc','ind','indr','inir','ini','jp','jr','ld','ldd','lddr', - 'ldir','ldi','mlt','neg','nop','or','otdm','otdmr','otdr','otim', - 'otimr','otir','out','out0','outd','outi','pop','push','res','ret', - 'reti','retn','rl','rla','rlc','rlca','rld','rr','rra','rrc','rrca', - 'rrd','rst','sbc','scf','set','sla','sl1','sll','slp','sra','srl', - 'sub','tst','tstio','xor' - ), - /*registers*/ - 2 => array( - 'a','b','c','d','e','h','l', - 'af','bc','de','hl','ix','iy','sp', - 'af\'','ixh','ixl','iyh','iyl' - ), - /*Directive*/ - 3 => array( - '#define','#endif','#else','#ifdef','#ifndef','#include','#undef', - '.db','.dd','.df','.dq','.dt','.dw','.end','.org','equ' - ), - ), - 'SYMBOLS' => array( - '[', ']', '(', ')', '?', '+', '-', '*', '/', '%', '$' - ), - 'CASE_SENSITIVE' => array( - GESHI_COMMENTS => false, - 1 => false, - 2 => false, - 3 => false, - ), - 'STYLES' => array( - 'KEYWORDS' => array( - 1 => 'color: #0000ff; font-weight:bold;', - 2 => 'color: #0000ff;', - 3 => 'color: #46aa03; font-weight:bold;' - ), - 'COMMENTS' => array( - 1 => 'color: #adadad; font-style: italic;', - ), - 'ESCAPE_CHAR' => array( - 0 => 'color: #000099; font-weight: bold;' - ), - 'BRACKETS' => array( - 0 => 'color: #0000ff;' - ), - 'STRINGS' => array( - 0 => 'color: #7f007f;' - ), - 'NUMBERS' => array( - 0 => 'color: #dd22dd;' - ), - 'METHODS' => array( - ), - 'SYMBOLS' => array( - 0 => 'color: #008000;' - ), - 'REGEXPS' => array( - 0 => 'color: #22bbff;', - 1 => 'color: #22bbff;', - 2 => 'color: #993333;' - ), - 'SCRIPT' => array( - ) - ), - 'URLS' => array( - 1 => '', - 2 => '', - 3 => '' - ), - 'OOLANG' => false, - 'OBJECT_SPLITTERS' => array( - ), - 'REGEXPS' => array( - //Hex numbers - 0 => '0[0-9a-fA-F]{1,32}[hH]', - //Binary numbers - 1 => '\%[01]{1,64}|[01]{1,64}[bB]?(?![^<]*>)', - //Labels - 2 => '^[_a-zA-Z][_a-zA-Z0-9]?\:' - ), - 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ), - 'TAB_WIDTH' => 8 -); - -?>
\ No newline at end of file diff --git a/system/application/libraries/index.html b/system/application/libraries/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/libraries/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/application/models/file_mod.php b/system/application/models/file_mod.php deleted file mode 100644 index 48ae5696b..000000000 --- a/system/application/models/file_mod.php +++ /dev/null @@ -1,419 +0,0 @@ -<?php -/* - * Copyright 2009-2010 Florian "Bluewind" Pritz <bluewind@server-speed.net> - * - * Licensed under GPLv3 - * (see COPYING for full license text) - * - */ - -class File_mod extends Model { - - function __construct() - { - parent::Model(); - } - - // Returns an unused ID - // TODO: make threadsafe - function new_id() - { - $id = $this->random_id(3,6); - - if ($this->id_exists($id) || $id == 'file') { - return $this->new_id(); - } else { - return $id; - } - } - - function id_exists($id) - { - if(!$id) { - return false; - } - - $sql = ' - SELECT id - FROM `files` - WHERE `id` = ? - LIMIT 1'; - $query = $this->db->query($sql, array($id)); - - if ($query->num_rows() == 1) { - return true; - } else { - return false; - } - } - - function get_filedata($id) - { - $sql = ' - SELECT hash, filename, mimetype, date - FROM `files` - WHERE `id` = ? - LIMIT 1'; - $query = $this->db->query($sql, array($id)); - - if ($query->num_rows() == 1) { - $return = $query->result_array(); - return $return[0]; - } else { - return false; - } - } - - // return the folder in which the file with $hash is stored - function folder($hash) { - return $this->config->item('upload_path').'/'.substr($hash, 0, 3); - } - - // Returns the full path to the file with $hash - function file($hash) { - return $this->folder($hash).'/'.$hash; - } - - function hash_password($password) - { - return sha1($this->config->item('passwordsalt').$password); - } - - // Returns the password submitted by the user - function get_password() - { - $password = $this->input->post('password'); - if ($password !== false && $password !== "") { - return $this->hash_password($password); - } elseif (isset($_SERVER['PHP_AUTH_PW']) && $_SERVER['PHP_AUTH_PW'] !== '') { - return $this->hash_password($_SERVER['PHP_AUTH_PW']); - } - return 'NULL'; - } - - // Add a hash to the DB - // TODO: Should only update not insert; see new_id() - function add_file($hash, $id, $filename) - { - $mimetype = exec(FCPATH.'scripts/mimetype -b --orig-name '.escapeshellarg($filename).' '.escapeshellarg($this->file($hash))); - $query = $this->db->query(' - INSERT INTO `files` (`hash`, `id`, `filename`, `password`, `date`, `mimetype`) - VALUES (?, ?, ?, ?, ?, ?)', - array($hash, $id, $filename, $this->get_password(), time(), $mimetype)); - } - - function show_url($id, $mode) - { - $data = array(); - $redirect = false; - - if ($mode) { - $data['url'] = site_url($id).'/'.$mode; - } else { - $data['url'] = site_url($id).'/'; - - $filedata = $this->get_filedata($id); - $file = $this->file($filedata['hash']); - $type = $filedata['mimetype'] ? $filedata['mimetype'] : exec(FCPATH.'scripts/mimetype -b --orig-name '.escapeshellarg($filedata['filename']).' '.escapeshellarg($file)); - $mode = $this->mime2extension($type); - $mode = $this->filename2extension($filedata['filename']) ? $this->filename2extension($filedata['filename']) : $mode; - - // If we detected a highlightable file redirect, - // otherwise show the URL because browsers would just show a DL dialog - if ($mode) { - $redirect = true; - } - } - - if ($this->var->cli_client) { - echo $data['url']."\n"; - } else { - if ($redirect) { - redirect($data['url']); - } else { - $this->load->view('file/header', $data); - $this->load->view('file/show_url', $data); - $this->load->view('file/footer', $data); - } - } - } - - function non_existent() - { - $data["title"] = "Not Found"; - $this->output->set_status_header(404); - $this->load->view('file/header', $data); - $this->load->view('file/non_existent', $data); - $this->load->view('file/footer', $data); - } - - // download a given ID - // TODO: make smaller - function download() - { - $data = array(); - $id = $this->uri->segment(1); - $mode = $this->uri->segment(2); - - $filedata = $this->get_filedata($id); - $file = $this->file($filedata['hash']); - - if (file_exists($file)) { - $oldest_time = (time()-$this->config->item('upload_max_age')); - if (filesize($file) > $this->config->item("small_upload_size") && $filedata["date"] < $oldest_time) { - if (filemtime($file) < $oldest_time) { - unlink($file); - $this->db->query('DELETE FROM files WHERE hash = ?', array($filedata['hash'])); - } else { - $this->db->query('DELETE FROM files WHERE id = ? LIMIT 1', array($id)); - } - $this->non_existent(); - return; - } - // MODIFIED SINCE SUPPORT -- START - // helps to keep traffic low when reloading an image - $filedate = filectime($file); - $etag = strtolower(md5_file($file)); - $modified = true; - - // No need to check because different files have different IDs/hashes - if(isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])) { - $modified = false; - } - - if(isset($_SERVER['HTTP_IF_NONE_MATCH'])) { - $oldtag = trim(strtolower($_SERVER['HTTP_IF_NONE_MATCH']), '"'); - if($oldtag == $etag) { - $modified = false; - } else { - $modified = true; - } - } - // MODIFIED SINCE SUPPORT -- END - - if (!$modified) { - header("HTTP/1.1 304 Not Modified"); - header('Etag: "'.$etag.'"'); - } else { - $type = $filedata['mimetype'] ? $filedata['mimetype'] : exec(FCPATH.'scripts/mimetype -b --orig-name '.escapeshellarg($filedata['filename']).' '.escapeshellarg($file)); - - // /$mode at the end of the URL overwrites autodetection - if (!$mode && substr_count(ltrim($this->uri->uri_string(), "/"), '/') >= 1) { - $mode = $this->mime2extension($type); - $mode = $this->filename2extension($filedata['filename']) ? $this->filename2extension($filedata['filename']) : $mode; - } - $mode = $this->extension_aliases($mode); - - // TODO: cleanup conditions - if ($mode && $mode != 'plain' && $mode != 'qr' - && $this->mime2extension($type) - && filesize($file) <= $this->config->item('upload_max_text_size') - ) { - $data['title'] = $filedata['filename']; - $data['raw_link'] = site_url($id); - $data['new_link'] = site_url(); - $data['plain_link'] = site_url($id.'/plain'); - $data['auto_link'] = site_url($id).'/'; - $data['rmd_link'] = site_url($id.'/rmd'); - $data['delete_link'] = site_url("file/delete/".$id); - - header("Content-Type: text/html\n"); - if ($mode) { - $data['current_highlight'] = $mode; - } else { - $data['current_highlight'] = $this->mime2extension($type); - } - if (filesize($file) > $this->config->item("small_upload_size")) { - $data['timeout'] = date("r", $filedata["date"]+$this->config->item("upload_max_age")); - } else { - $data['timeout'] = "never"; - } - echo $this->load->view('file/html_header', $data, true); - $this->load->library("MemcacheLibrary"); - if (! $cached = $this->memcachelibrary->get($filedata['hash'].'_'.$mode)) { - ob_start(); - if ($mode == "rmd") { - echo '<td class="markdownrender">'."\n"; - passthru('/usr/bin/perl /usr/bin/perlbin/vendor/Markdown.pl '.escapeshellarg($file)); - } else { - echo '<td class="numbers"><pre>'; - // generate line numbers (links) - passthru('/usr/bin/perl -ne \'print "<a href=\"#n$.\" class=\"no\" id=\"n$.\">$.</a>\n"\' '.escapeshellarg($file)); - echo '</pre></td><td class="code">'."\n"; - $this->load->library('geshi'); - $this->geshi->initialize(array('set_language' => $mode, 'set_source' => file_get_contents($file), 'enable_classes' => 'true')); - echo $this->geshi->output(); - } - $cached = ob_get_contents(); - ob_end_clean(); - $this->memcachelibrary->set($filedata['hash'].'_'.$mode, $cached, 100); - } - echo $cached; - echo $this->load->view('file/html_footer', $data, true); - } else { - if ($mode == 'plain') { - header("Content-Type: text/plain\n"); - } elseif ($mode == "qr") { - header("Content-disposition: inline; filename=\"".$id."_qr.png\"\n"); - header("Content-Type: image/png\n"); - passthru('/usr/bin/qrencode -s 10 -o - '.escapeshellarg(site_url($id).'/')); - exit(); - } else { - header("Content-Type: ".$type."\n"); - } - header("Content-disposition: inline; filename=\"".$filedata['filename']."\"\n"); - header("Content-Length: ".filesize($file)."\n"); - header("Last-Modified: ".date('D, d M Y H:i:s', $filedate)." GMT"); - header('Etag: "'.$etag.'"'); - $fp = fopen($file,"r"); - while (!feof($fp)) { - echo fread($fp,4096); - } - fclose($fp); - } - } - exit(); - } else { - if (isset($filedata["hash"])) { - $this->db->query('DELETE FROM files WHERE hash = ?', array($filedata['hash'])); - } - $this->non_existent(); - } - } - - private function unused_file($hash) - { - $sql = ' - SELECT id - FROM `files` - WHERE `hash` = ? - LIMIT 1'; - $query = $this->db->query($sql, array($hash)); - - if ($query->num_rows() == 0) { - return true; - } else { - return false; - } - } - - function delete_id($id) - { - $filedata = $this->get_filedata($id); - $password = $this->get_password(); - - if ($password == "NULL") { - return false; - } - - if(!$this->id_exists($id)) { - return false; - } - - $sql = ' - DELETE - FROM `files` - WHERE `id` = ? - AND password = ? - LIMIT 1'; - $this->db->query($sql, array($id, $password)); - - if($this->id_exists($id)) { - return false; - } - - if($this->unused_file($filedata['hash'])) { - unlink($this->file($filedata['hash'])); - @rmdir($this->folder($filedata['hash'])); - } - return true; - } - - // Generate a random ID - private function random_id($min_length, $max_length) - { - $random = ''; - $char_list = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; - $char_list .= "abcdefghijklmnopqrstuvwxyz"; - $char_list .= "1234567890"; - $length = rand()%($max_length-$min_length) + $min_length; - - for($i = 0; $i < $max_length; $i++) { - if (strlen($random) == $length) break; - $random .= substr($char_list,(rand()%(strlen($char_list))), 1); - } - return $random; - } - - // Map MIME types to extensions needed for highlighting - function mime2extension($type) - { - $typearray = array( - 'text/plain' => 'text', - 'text/x-python' => 'python', - 'text/x-csrc' => 'c', - 'text/x-chdr' => 'c', - 'text/x-c++hdr' => 'c', - 'text/x-c++src' => 'cpp', - 'text/x-patch' => 'diff', - 'text/x-lua' => 'lua', - 'text/x-java' => 'java', - 'text/x-haskell' => 'haskell', - 'text/x-literate-haskell' => 'haskell', - 'text/x-subviewer' => 'bash', - 'text/x-makefile' => 'make', - #'text/x-log' => 'log', - 'text/html' => 'xml', - 'text/css' => 'css', - 'message/rfc822' => 'email', - #'image/svg+xml' => 'xml', - 'application/x-perl' => 'perl', - 'application/xml' => 'xml', - 'application/javascript' => 'javascript', - 'application/x-desktop' => 'text', - 'application/x-m4' => 'text', - 'application/x-awk' => 'text', - 'application/x-java' => 'java', - 'application/x-php' => 'php', - 'application/x-ruby' => 'ruby', - 'application/x-shellscript' => 'bash', - 'application/x-x509-ca-cert' => 'text', - 'application/mbox' => 'email', - 'application/x-genesis-rom' => 'text', - 'application/x-applix-spreadsheet' => 'actionscript' - ); - if (array_key_exists($type, $typearray)) return $typearray[$type]; - - if (strpos($type, 'text/') === 0) return 'text'; - - # default - return false; - } - - // Map special filenames to extensions - function filename2extension($name) - { - $namearray = array( - 'PKGBUILD' => 'bash', - '.vimrc' => 'vim' - ); - if (array_key_exists($name, $namearray)) return $namearray[$name]; - - return false; - } - - // Handle alias extensions - function extension_aliases($alias) - { - if ($alias === false) return false; - $aliasarray = array( - 'py' => 'python' - ); - if (array_key_exists($alias, $aliasarray)) return $aliasarray[$alias]; - - return $alias; - } - -} - -# vim: set noet: diff --git a/system/application/models/index.html b/system/application/models/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/models/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/application/views/file/client.php b/system/application/views/file/client.php deleted file mode 100644 index 0ebc20791..000000000 --- a/system/application/views/file/client.php +++ /dev/null @@ -1,23 +0,0 @@ -<p><b>Shell:</b></p> -<pre> -<?php if(false): ?> ->curl -n -F "content=<-" <?php echo site_url(); ?> < file (not binary safe) -cat file | curl -n -F "content=<-" <?php echo site_url(); ?> (not binary safe) -<?php endif; ?> -curl -n -F "file=@/home/user/foo" <?php echo site_url(); ?> (binary safe) -cat file | curl -n -F "file=@-;filename=stdin" <?php echo site_url(); ?> (binary safe) -</pre> -<p><b>Client:</b><br /> -<p>Development (git): <a href="http://git.server-speed.net/users/flo/fb/">http://git.server-speed.net/users/flo/fb/</a><br /> -Latest release: <a href="<?php echo $client_link; ?>"><?php echo $client_link; ?></a>.<br /> -GPG sigs, older versions: <a href="<?php echo $client_link_dir; ?>"><?php echo $client_link_dir; ?></a> -</p> -<p>If you want to use authentication (needed for deleting) add the following to your ~/.netrc:</p> -<pre> -machine paste.xinu.at password my_secret_password -</pre> -<p><b>Packages:</b><br /> -Arch Linux: pacman -S fb-client<br /> -Debian: <a href="<?php echo $client_link_deb; ?>"><?php echo $client_link_deb; ?></a><br /> -Slackware: <a href="<?php echo $client_link_slackware; ?>"><?php echo $client_link_slackware; ?></a></p> - diff --git a/system/application/views/file/delete_form.php b/system/application/views/file/delete_form.php deleted file mode 100644 index 7d4f2329f..000000000 --- a/system/application/views/file/delete_form.php +++ /dev/null @@ -1,9 +0,0 @@ -<div style="text-align:center"> - <?php echo form_open('file/delete/'.$id); ?> - <p> - <?php if($msg) echo $msg."<br />"; ?> - Password:<input type="password" name="password" size="10" /> - <input type="submit" value="Delete" name="process" /> - </p> - </form> -</div> diff --git a/system/application/views/file/deleted.php b/system/application/views/file/deleted.php deleted file mode 100644 index 865b5304a..000000000 --- a/system/application/views/file/deleted.php +++ /dev/null @@ -1,3 +0,0 @@ -<div style="text-align:center"> - <p><?php echo $id; ?> has been deleted.</p> -</div> diff --git a/system/application/views/file/footer.php b/system/application/views/file/footer.php deleted file mode 100644 index eda863585..000000000 --- a/system/application/views/file/footer.php +++ /dev/null @@ -1,3 +0,0 @@ - </div> -</body> -</html> diff --git a/system/application/views/file/header.php b/system/application/views/file/header.php deleted file mode 100644 index f6073707a..000000000 --- a/system/application/views/file/header.php +++ /dev/null @@ -1,15 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - -<head> - <title><?php echo isset($title) ? $title : ''; ?></title> - <link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>data/default.css" media="screen" /> - <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> -</head> - -<body> - <div class="top"> - <?php echo anchor('file/index', 'New'); ?> - </div> - - <div class="content"> diff --git a/system/application/views/file/html_footer.php b/system/application/views/file/html_footer.php deleted file mode 100644 index ddc460a39..000000000 --- a/system/application/views/file/html_footer.php +++ /dev/null @@ -1,5 +0,0 @@ - </td> - </tr> - </table> - </body> -</html> diff --git a/system/application/views/file/html_header.php b/system/application/views/file/html_header.php deleted file mode 100644 index 52ffab007..000000000 --- a/system/application/views/file/html_header.php +++ /dev/null @@ -1,21 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <title><?php echo $title; ?></title> - <link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>data/paste.css" /> - <link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>data/paste-<?php echo $current_highlight; ?>.css" /> - </head> - <body> - <div class="top_bar"> - <a class="raw_link no" href="<?php echo $new_link; ?>">New</a> | - <a class="raw_link no" href="<?php echo $raw_link; ?>">Raw</a> | - <a class="raw_link no" href="<?php echo $plain_link; ?>">Plain</a> | - Currently: <?php echo $current_highlight; ?> | - Timeout: <a class="raw_link no" href="<?php echo $delete_link; ?>" title="delete"><?php echo $timeout; ?></a> - <div style="float:right;"> - <a class="raw_link no" href="<?php echo $auto_link; ?>">Code</a> | - <a class="raw_link no" href="<?php echo $rmd_link; ?>">Render Markdown</a> - </div> - </div> - <table class="content"> - <tr> diff --git a/system/application/views/file/non_existent.php b/system/application/views/file/non_existent.php deleted file mode 100644 index 9f4a79913..000000000 --- a/system/application/views/file/non_existent.php +++ /dev/null @@ -1,3 +0,0 @@ -<div style="text-align:center"> - <p>I'm sorry, but the requested file doesn't exist.</p> -</div> diff --git a/system/application/views/file/show_url.php b/system/application/views/file/show_url.php deleted file mode 100644 index e0e3dc8a6..000000000 --- a/system/application/views/file/show_url.php +++ /dev/null @@ -1,6 +0,0 @@ -<div style="text-align:center"> - <p> - You can get your file here:<br /> - <a href="<?php echo $url; ?>"><?php echo $url; ?></a><br /> - </p> -</div> diff --git a/system/application/views/file/too_big.php b/system/application/views/file/too_big.php deleted file mode 100644 index aa5c42835..000000000 --- a/system/application/views/file/too_big.php +++ /dev/null @@ -1,3 +0,0 @@ -<div style="text-align:center"> - <p>Sorry, the file you uploaded is too big.</p> -</div> diff --git a/system/application/views/file/upload_error.php b/system/application/views/file/upload_error.php deleted file mode 100644 index e757b58c1..000000000 --- a/system/application/views/file/upload_error.php +++ /dev/null @@ -1,6 +0,0 @@ -<div style="text-align:center"> - <p> - An error occured while uploading.<br /> - Most likely your file is too big. - </p> -</div> diff --git a/system/application/views/file/upload_form.php b/system/application/views/file/upload_form.php deleted file mode 100644 index 4b23783dd..000000000 --- a/system/application/views/file/upload_form.php +++ /dev/null @@ -1,32 +0,0 @@ -<div style="margin-top: 100px; text-align:center"> - <?php echo form_open_multipart('file/do_upload'); ?> - <p> - File: <input type="file" name="file" size="30" /> - <input type="submit" value="Upload" name="process" /><br /> - Optional password (for deletion): <input type="password" name="password" size="10" /> - </p> - </form> - <p>Pasting text directly has been disabled due to extensive bot problems. Please use the file upload instead.</p> -<?php if (false): ?> - <p><b>OR</b></p> - <?php echo form_open_multipart('file/do_paste'); ?> - <p> - <textarea name="content" cols="80" rows="20"></textarea><br /> - <div style="display: none">Email: <input type="text" name="email" size="20" /></div> - Optional password (for deletion): <input type="password" name="password" size="10" /><br /> - <input type="submit" value="Paste" name="process" /> - </p> -<?php endif; ?> - </form> -</div> -<br /> -<p>Uploads/pastes are deleted after 5 days<?php if($small_upload_size > 0): ?> - unless they are smaller than <?php echo format_bytes($small_upload_size); ?> - <?php endif; ?>. Maximum upload size is <?php echo format_bytes($max_upload_size); ?></p> -<p>For shell uploading/pasting and download information for the client go to <a href="<?php echo site_url("file/client"); ?>"><?php echo site_url("file/client"); ?></a></p> -<br /> -<p>If you experience any problems feel free to <a href="http://bluewind.at/?id=1">contact me</a>.</p> -<br /> -<div class="small"> - <p>This service is provided without warranty of any kind and may not be used to distribute copyrighted content.</p> -</div> diff --git a/system/application/views/index.html b/system/application/views/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/application/views/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/cache/index.html b/system/cache/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/cache/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/codeigniter/Base4.php b/system/codeigniter/Base4.php deleted file mode 100644 index 3561c2564..000000000 --- a/system/codeigniter/Base4.php +++ /dev/null @@ -1,69 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.3 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * CI_BASE - For PHP 4 - * - * This file is used only when CodeIgniter is being run under PHP 4. - * - * In order to allow CI to work under PHP 4 we had to make the Loader class - * the parent of the Controller Base class. It's the only way we can - * enable functions like $this->load->library('email') to instantiate - * classes that can then be used within controllers as $this->email->send() - * - * PHP 4 also has trouble referencing the CI super object within application - * constructors since objects do not exist until the class is fully - * instantiated. Basically PHP 4 sucks... - * - * Since PHP 5 doesn't suffer from this problem so we load one of - * two files based on the version of PHP being run. - * - * @package CodeIgniter - * @subpackage codeigniter - * @category front-controller - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/ - */ - class CI_Base extends CI_Loader { - - function CI_Base() - { - // This allows syntax like $this->load->foo() to work - parent::CI_Loader(); - $this->load =& $this; - - // This allows resources used within controller constructors to work - global $OBJ; - $OBJ = $this->load; // Do NOT use a reference. - } -} - -function &get_instance() -{ - global $CI, $OBJ; - - if (is_object($CI)) - { - return $CI; - } - - return $OBJ->load; -} - - -/* End of file Base4.php */ -/* Location: ./system/codeigniter/Base4.php */
\ No newline at end of file diff --git a/system/codeigniter/Base5.php b/system/codeigniter/Base5.php deleted file mode 100644 index 5d944ae5a..000000000 --- a/system/codeigniter/Base5.php +++ /dev/null @@ -1,56 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.3 - * @filesource - */ - - -// ------------------------------------------------------------------------ - -/** - * CI_BASE - For PHP 5 - * - * This file contains some code used only when CodeIgniter is being - * run under PHP 5. It allows us to manage the CI super object more - * gracefully than what is possible with PHP 4. - * - * @package CodeIgniter - * @subpackage codeigniter - * @category front-controller - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/ - */ - -class CI_Base { - - private static $instance; - - public function CI_Base() - { - self::$instance =& $this; - } - - public static function &get_instance() - { - return self::$instance; - } -} - -function &get_instance() -{ - return CI_Base::get_instance(); -} - - - -/* End of file Base5.php */ -/* Location: ./system/codeigniter/Base5.php */
\ No newline at end of file diff --git a/system/codeigniter/CodeIgniter.php b/system/codeigniter/CodeIgniter.php deleted file mode 100644 index 5d5bb144b..000000000 --- a/system/codeigniter/CodeIgniter.php +++ /dev/null @@ -1,280 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * System Front Controller - * - * Loads the base classes and executes the request. - * - * @package CodeIgniter - * @subpackage codeigniter - * @category Front-controller - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/ - */ - -// CI Version -define('CI_VERSION', '1.7.2'); - -/* - * ------------------------------------------------------ - * Load the global functions - * ------------------------------------------------------ - */ -require(BASEPATH.'codeigniter/Common'.EXT); - -/* - * ------------------------------------------------------ - * Load the compatibility override functions - * ------------------------------------------------------ - */ -require(BASEPATH.'codeigniter/Compat'.EXT); - -/* - * ------------------------------------------------------ - * Load the framework constants - * ------------------------------------------------------ - */ -require(APPPATH.'config/constants'.EXT); - -/* - * ------------------------------------------------------ - * Define a custom error handler so we can log PHP errors - * ------------------------------------------------------ - */ -set_error_handler('_exception_handler'); - -if ( ! is_php('5.3')) -{ - @set_magic_quotes_runtime(0); // Kill magic quotes -} - -/* - * ------------------------------------------------------ - * Start the timer... tick tock tick tock... - * ------------------------------------------------------ - */ - -$BM =& load_class('Benchmark'); -$BM->mark('total_execution_time_start'); -$BM->mark('loading_time_base_classes_start'); - -/* - * ------------------------------------------------------ - * Instantiate the hooks class - * ------------------------------------------------------ - */ - -$EXT =& load_class('Hooks'); - -/* - * ------------------------------------------------------ - * Is there a "pre_system" hook? - * ------------------------------------------------------ - */ -$EXT->_call_hook('pre_system'); - -/* - * ------------------------------------------------------ - * Instantiate the base classes - * ------------------------------------------------------ - */ - -$CFG =& load_class('Config'); -$URI =& load_class('URI'); -$RTR =& load_class('Router'); -$OUT =& load_class('Output'); - -/* - * ------------------------------------------------------ - * Is there a valid cache file? If so, we're done... - * ------------------------------------------------------ - */ - -if ($EXT->_call_hook('cache_override') === FALSE) -{ - if ($OUT->_display_cache($CFG, $URI) == TRUE) - { - exit; - } -} - -/* - * ------------------------------------------------------ - * Load the remaining base classes - * ------------------------------------------------------ - */ - -$IN =& load_class('Input'); -$LANG =& load_class('Language'); - -/* - * ------------------------------------------------------ - * Load the app controller and local controller - * ------------------------------------------------------ - * - * Note: Due to the poor object handling in PHP 4 we'll - * conditionally load different versions of the base - * class. Retaining PHP 4 compatibility requires a bit of a hack. - * - * Note: The Loader class needs to be included first - * - */ -if ( ! is_php('5.0.0')) -{ - load_class('Loader', FALSE); - require(BASEPATH.'codeigniter/Base4'.EXT); -} -else -{ - require(BASEPATH.'codeigniter/Base5'.EXT); -} - -// Load the base controller class -load_class('Controller', FALSE); - -// Load the local application controller -// Note: The Router class automatically validates the controller path. If this include fails it -// means that the default controller in the Routes.php file is not resolving to something valid. -if ( ! file_exists(APPPATH.'controllers/'.$RTR->fetch_directory().$RTR->fetch_class().EXT)) -{ - show_error('Unable to load your default controller. Please make sure the controller specified in your Routes.php file is valid.'); -} - -include(APPPATH.'controllers/'.$RTR->fetch_directory().$RTR->fetch_class().EXT); - -// Set a mark point for benchmarking -$BM->mark('loading_time_base_classes_end'); - - -/* - * ------------------------------------------------------ - * Security check - * ------------------------------------------------------ - * - * None of the functions in the app controller or the - * loader class can be called via the URI, nor can - * controller functions that begin with an underscore - */ -$class = $RTR->fetch_class(); -$method = $RTR->fetch_method(); - -if ( ! class_exists($class) - OR $method == 'controller' - OR strncmp($method, '_', 1) == 0 - OR in_array(strtolower($method), array_map('strtolower', get_class_methods('Controller'))) - ) -{ - show_404("{$class}/{$method}"); -} - -/* - * ------------------------------------------------------ - * Is there a "pre_controller" hook? - * ------------------------------------------------------ - */ -$EXT->_call_hook('pre_controller'); - -/* - * ------------------------------------------------------ - * Instantiate the controller and call requested method - * ------------------------------------------------------ - */ - -// Mark a start point so we can benchmark the controller -$BM->mark('controller_execution_time_( '.$class.' / '.$method.' )_start'); - -$CI = new $class(); - -// Is this a scaffolding request? -if ($RTR->scaffolding_request === TRUE) -{ - if ($EXT->_call_hook('scaffolding_override') === FALSE) - { - $CI->_ci_scaffolding(); - } -} -else -{ - /* - * ------------------------------------------------------ - * Is there a "post_controller_constructor" hook? - * ------------------------------------------------------ - */ - $EXT->_call_hook('post_controller_constructor'); - - // Is there a "remap" function? - if (method_exists($CI, '_remap')) - { - $CI->_remap($method); - } - else - { - // is_callable() returns TRUE on some versions of PHP 5 for private and protected - // methods, so we'll use this workaround for consistent behavior - if ( ! in_array(strtolower($method), array_map('strtolower', get_class_methods($CI)))) - { - show_404("{$class}/{$method}"); - } - - // Call the requested method. - // Any URI segments present (besides the class/function) will be passed to the method for convenience - call_user_func_array(array(&$CI, $method), array_slice($URI->rsegments, 2)); - } -} - -// Mark a benchmark end point -$BM->mark('controller_execution_time_( '.$class.' / '.$method.' )_end'); - -/* - * ------------------------------------------------------ - * Is there a "post_controller" hook? - * ------------------------------------------------------ - */ -$EXT->_call_hook('post_controller'); - -/* - * ------------------------------------------------------ - * Send the final rendered output to the browser - * ------------------------------------------------------ - */ - -if ($EXT->_call_hook('display_override') === FALSE) -{ - $OUT->_display(); -} - -/* - * ------------------------------------------------------ - * Is there a "post_system" hook? - * ------------------------------------------------------ - */ -$EXT->_call_hook('post_system'); - -/* - * ------------------------------------------------------ - * Close the DB connection if one exists - * ------------------------------------------------------ - */ -if (class_exists('CI_DB') AND isset($CI->db)) -{ - $CI->db->close(); -} - - -/* End of file CodeIgniter.php */ -/* Location: ./system/codeigniter/CodeIgniter.php */
\ No newline at end of file diff --git a/system/codeigniter/Common.php b/system/codeigniter/Common.php deleted file mode 100644 index 3b84ffcc1..000000000 --- a/system/codeigniter/Common.php +++ /dev/null @@ -1,421 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** -* Determines if the current version of PHP is greater then the supplied value -* -* Since there are a few places where we conditionally test for PHP > 5 -* we'll set a static variable. -* -* @access public -* @param string -* @return bool -*/ -function is_php($version = '5.0.0') -{ - static $_is_php; - $version = (string)$version; - - if ( ! isset($_is_php[$version])) - { - $_is_php[$version] = (version_compare(PHP_VERSION, $version) < 0) ? FALSE : TRUE; - } - - return $_is_php[$version]; -} - -// ------------------------------------------------------------------------ - -/** - * Tests for file writability - * - * is_writable() returns TRUE on Windows servers when you really can't write to - * the file, based on the read-only attribute. is_writable() is also unreliable - * on Unix servers if safe_mode is on. - * - * @access private - * @return void - */ -function is_really_writable($file) -{ - // If we're on a Unix server with safe_mode off we call is_writable - if (DIRECTORY_SEPARATOR == '/' AND @ini_get("safe_mode") == FALSE) - { - return is_writable($file); - } - - // For windows servers and safe_mode "on" installations we'll actually - // write a file then read it. Bah... - if (is_dir($file)) - { - $file = rtrim($file, '/').'/'.md5(rand(1,100)); - - if (($fp = @fopen($file, FOPEN_WRITE_CREATE)) === FALSE) - { - return FALSE; - } - - fclose($fp); - @chmod($file, DIR_WRITE_MODE); - @unlink($file); - return TRUE; - } - elseif (($fp = @fopen($file, FOPEN_WRITE_CREATE)) === FALSE) - { - return FALSE; - } - - fclose($fp); - return TRUE; -} - -// ------------------------------------------------------------------------ - -/** -* Class registry -* -* This function acts as a singleton. If the requested class does not -* exist it is instantiated and set to a static variable. If it has -* previously been instantiated the variable is returned. -* -* @access public -* @param string the class name being requested -* @param bool optional flag that lets classes get loaded but not instantiated -* @return object -*/ -function &load_class($class, $instantiate = TRUE) -{ - static $objects = array(); - - // Does the class exist? If so, we're done... - if (isset($objects[$class])) - { - return $objects[$class]; - } - - // If the requested class does not exist in the application/libraries - // folder we'll load the native class from the system/libraries folder. - if (file_exists(APPPATH.'libraries/'.config_item('subclass_prefix').$class.EXT)) - { - require(BASEPATH.'libraries/'.$class.EXT); - require(APPPATH.'libraries/'.config_item('subclass_prefix').$class.EXT); - $is_subclass = TRUE; - } - else - { - if (file_exists(APPPATH.'libraries/'.$class.EXT)) - { - require(APPPATH.'libraries/'.$class.EXT); - $is_subclass = FALSE; - } - else - { - require(BASEPATH.'libraries/'.$class.EXT); - $is_subclass = FALSE; - } - } - - if ($instantiate == FALSE) - { - $objects[$class] = TRUE; - return $objects[$class]; - } - - if ($is_subclass == TRUE) - { - $name = config_item('subclass_prefix').$class; - - $objects[$class] =& instantiate_class(new $name()); - return $objects[$class]; - } - - $name = ($class != 'Controller') ? 'CI_'.$class : $class; - - $objects[$class] =& instantiate_class(new $name()); - return $objects[$class]; -} - -/** - * Instantiate Class - * - * Returns a new class object by reference, used by load_class() and the DB class. - * Required to retain PHP 4 compatibility and also not make PHP 5.3 cry. - * - * Use: $obj =& instantiate_class(new Foo()); - * - * @access public - * @param object - * @return object - */ -function &instantiate_class(&$class_object) -{ - return $class_object; -} - -/** -* Loads the main config.php file -* -* @access private -* @return array -*/ -function &get_config() -{ - static $main_conf; - - if ( ! isset($main_conf)) - { - if ( ! file_exists(APPPATH.'config/config'.EXT)) - { - exit('The configuration file config'.EXT.' does not exist.'); - } - - require(APPPATH.'config/config'.EXT); - - if ( ! isset($config) OR ! is_array($config)) - { - exit('Your config file does not appear to be formatted correctly.'); - } - - $main_conf[0] =& $config; - } - return $main_conf[0]; -} - -/** -* Gets a config item -* -* @access public -* @return mixed -*/ -function config_item($item) -{ - static $config_item = array(); - - if ( ! isset($config_item[$item])) - { - $config =& get_config(); - - if ( ! isset($config[$item])) - { - return FALSE; - } - $config_item[$item] = $config[$item]; - } - - return $config_item[$item]; -} - - -/** -* Error Handler -* -* This function lets us invoke the exception class and -* display errors using the standard error template located -* in application/errors/errors.php -* This function will send the error page directly to the -* browser and exit. -* -* @access public -* @return void -*/ -function show_error($message, $status_code = 500) -{ - $error =& load_class('Exceptions'); - echo $error->show_error('An Error Was Encountered', $message, 'error_general', $status_code); - exit; -} - - -/** -* 404 Page Handler -* -* This function is similar to the show_error() function above -* However, instead of the standard error template it displays -* 404 errors. -* -* @access public -* @return void -*/ -function show_404($page = '') -{ - $error =& load_class('Exceptions'); - $error->show_404($page); - exit; -} - - -/** -* Error Logging Interface -* -* We use this as a simple mechanism to access the logging -* class and send messages to be logged. -* -* @access public -* @return void -*/ -function log_message($level = 'error', $message, $php_error = FALSE) -{ - static $LOG; - - $config =& get_config(); - if ($config['log_threshold'] == 0) - { - return; - } - - $LOG =& load_class('Log'); - $LOG->write_log($level, $message, $php_error); -} - - -/** - * Set HTTP Status Header - * - * @access public - * @param int the status code - * @param string - * @return void - */ -function set_status_header($code = 200, $text = '') -{ - $stati = array( - 200 => 'OK', - 201 => 'Created', - 202 => 'Accepted', - 203 => 'Non-Authoritative Information', - 204 => 'No Content', - 205 => 'Reset Content', - 206 => 'Partial Content', - - 300 => 'Multiple Choices', - 301 => 'Moved Permanently', - 302 => 'Found', - 304 => 'Not Modified', - 305 => 'Use Proxy', - 307 => 'Temporary Redirect', - - 400 => 'Bad Request', - 401 => 'Unauthorized', - 403 => 'Forbidden', - 404 => 'Not Found', - 405 => 'Method Not Allowed', - 406 => 'Not Acceptable', - 407 => 'Proxy Authentication Required', - 408 => 'Request Timeout', - 409 => 'Conflict', - 410 => 'Gone', - 411 => 'Length Required', - 412 => 'Precondition Failed', - 413 => 'Request Entity Too Large', - 414 => 'Request-URI Too Long', - 415 => 'Unsupported Media Type', - 416 => 'Requested Range Not Satisfiable', - 417 => 'Expectation Failed', - - 500 => 'Internal Server Error', - 501 => 'Not Implemented', - 502 => 'Bad Gateway', - 503 => 'Service Unavailable', - 504 => 'Gateway Timeout', - 505 => 'HTTP Version Not Supported' - ); - - if ($code == '' OR ! is_numeric($code)) - { - show_error('Status codes must be numeric', 500); - } - - if (isset($stati[$code]) AND $text == '') - { - $text = $stati[$code]; - } - - if ($text == '') - { - show_error('No status text available. Please check your status code number or supply your own message text.', 500); - } - - $server_protocol = (isset($_SERVER['SERVER_PROTOCOL'])) ? $_SERVER['SERVER_PROTOCOL'] : FALSE; - - if (substr(php_sapi_name(), 0, 3) == 'cgi') - { - header("Status: {$code} {$text}", TRUE); - } - elseif ($server_protocol == 'HTTP/1.1' OR $server_protocol == 'HTTP/1.0') - { - header($server_protocol." {$code} {$text}", TRUE, $code); - } - else - { - header("HTTP/1.1 {$code} {$text}", TRUE, $code); - } -} - - -/** -* Exception Handler -* -* This is the custom exception handler that is declaired at the top -* of Codeigniter.php. The main reason we use this is permit -* PHP errors to be logged in our own log files since we may -* not have access to server logs. Since this function -* effectively intercepts PHP errors, however, we also need -* to display errors based on the current error_reporting level. -* We do that with the use of a PHP error template. -* -* @access private -* @return void -*/ -function _exception_handler($severity, $message, $filepath, $line) -{ - // We don't bother with "strict" notices since they will fill up - // the log file with information that isn't normally very - // helpful. For example, if you are running PHP 5 and you - // use version 4 style class functions (without prefixes - // like "public", "private", etc.) you'll get notices telling - // you that these have been deprecated. - - if ($severity == E_STRICT) - { - return; - } - - $error =& load_class('Exceptions'); - - // Should we display the error? - // We'll get the current error_reporting level and add its bits - // with the severity bits to find out. - - if (($severity & error_reporting()) == $severity) - { - $error->show_php_error($severity, $message, $filepath, $line); - } - - // Should we log the error? No? We're done... - $config =& get_config(); - if ($config['log_threshold'] == 0) - { - return; - } - - $error->log_exception($severity, $message, $filepath, $line); -} - - - -/* End of file Common.php */ -/* Location: ./system/codeigniter/Common.php */
\ No newline at end of file diff --git a/system/codeigniter/Compat.php b/system/codeigniter/Compat.php deleted file mode 100644 index 40017a93b..000000000 --- a/system/codeigniter/Compat.php +++ /dev/null @@ -1,93 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * Compatibility Functions - * - * Function overrides for older versions of PHP or PHP environments missing - * certain extensions / libraries - * - * @package CodeIgniter - * @subpackage codeigniter - * @category Compatibility Functions - * @author ExpressionEngine Development Team - * @link http://codeigniter.com/user_guide/ - */ - -// ------------------------------------------------------------------------ - -/* - * PHP versions prior to 5.0 don't support the E_STRICT constant - * so we need to explicitly define it otherwise the Exception class - * will generate errors when running under PHP 4 - * - */ -if ( ! defined('E_STRICT')) -{ - define('E_STRICT', 2048); -} - -/** - * ctype_digit() - * - * Determines if a string is comprised only of digits - * http://us.php.net/manual/en/function.ctype_digit.php - * - * @access public - * @param string - * @return bool - */ -if ( ! function_exists('ctype_digit')) -{ - function ctype_digit($str) - { - if ( ! is_string($str) OR $str == '') - { - return FALSE; - } - - return ! preg_match('/[^0-9]/', $str); - } -} - -// -------------------------------------------------------------------- - -/** - * ctype_alnum() - * - * Determines if a string is comprised of only alphanumeric characters - * http://us.php.net/manual/en/function.ctype-alnum.php - * - * @access public - * @param string - * @return bool - */ -if ( ! function_exists('ctype_alnum')) -{ - function ctype_alnum($str) - { - if ( ! is_string($str) OR $str == '') - { - return FALSE; - } - - return ! preg_match('/[^0-9a-z]/i', $str); - } -} - -/* End of file Compat.php */ -/* Location: ./system/codeigniter/Compat.php */
\ No newline at end of file diff --git a/system/codeigniter/index.html b/system/codeigniter/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/codeigniter/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/libraries/Benchmark.php b/system/core/Benchmark.php index d485ee21d..515550e9f 100644..100755 --- a/system/libraries/Benchmark.php +++ b/system/core/Benchmark.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -80,13 +80,13 @@ class CI_Benchmark { { $this->marker[$point2] = microtime(); } - + list($sm, $ss) = explode(' ', $this->marker[$point1]); list($em, $es) = explode(' ', $this->marker[$point2]); return number_format(($em + $es) - ($sm + $ss), $decimals); } - + // -------------------------------------------------------------------- /** @@ -110,4 +110,4 @@ class CI_Benchmark { // END CI_Benchmark class /* End of file Benchmark.php */ -/* Location: ./system/libraries/Benchmark.php */
\ No newline at end of file +/* Location: ./system/core/Benchmark.php */
\ No newline at end of file diff --git a/system/core/CodeIgniter.php b/system/core/CodeIgniter.php new file mode 100755 index 000000000..2d3f24958 --- /dev/null +++ b/system/core/CodeIgniter.php @@ -0,0 +1,340 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * System Initialization File + * + * Loads the base classes and executes the request. + * + * @package CodeIgniter + * @subpackage codeigniter + * @category Front-controller + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/ + */ + +/* + * ------------------------------------------------------ + * Define the CodeIgniter Version + * ------------------------------------------------------ + */ + define('CI_VERSION', '2.0'); + +/* + * ------------------------------------------------------ + * Load the global functions + * ------------------------------------------------------ + */ + require(BASEPATH.'core/Common'.EXT); + +/* + * ------------------------------------------------------ + * Load the framework constants + * ------------------------------------------------------ + */ + require(APPPATH.'config/constants'.EXT); + +/* + * ------------------------------------------------------ + * Define a custom error handler so we can log PHP errors + * ------------------------------------------------------ + */ + set_error_handler('_exception_handler'); + + if ( ! is_php('5.3')) + { + @set_magic_quotes_runtime(0); // Kill magic quotes + } + +/* + * ------------------------------------------------------ + * Set the subclass_prefix + * ------------------------------------------------------ + * + * Normally the "subclass_prefix" is set in the config file. + * The subclass prefix allows CI to know if a core class is + * being extended via a library in the local application + * "libraries" folder. Since CI allows config items to be + * overriden via data set in the main index. php file, + * before proceeding we need to know if a subclass_prefix + * override exists. If so, we will set this value now, + * before any classes are loaded + * Note: Since the config file data is cached it doesn't + * hurt to load it here. + */ + if (isset($assign_to_config['subclass_prefix']) AND $assign_to_config['subclass_prefix'] != '') + { + get_config(array('subclass_prefix' => $assign_to_config['subclass_prefix'])); + } + +/* + * ------------------------------------------------------ + * Set a liberal script execution time limit + * ------------------------------------------------------ + */ + if (function_exists("set_time_limit") == TRUE AND @ini_get("safe_mode") == 0) + { + @set_time_limit(300); + } + +/* + * ------------------------------------------------------ + * Start the timer... tick tock tick tock... + * ------------------------------------------------------ + */ + $BM =& load_class('Benchmark', 'core'); + $BM->mark('total_execution_time_start'); + $BM->mark('loading_time:_base_classes_start'); + +/* + * ------------------------------------------------------ + * Instantiate the hooks class + * ------------------------------------------------------ + */ + $EXT =& load_class('Hooks', 'core'); + +/* + * ------------------------------------------------------ + * Is there a "pre_system" hook? + * ------------------------------------------------------ + */ + $EXT->_call_hook('pre_system'); + +/* + * ------------------------------------------------------ + * Instantiate the config class + * ------------------------------------------------------ + */ + $CFG =& load_class('Config', 'core'); + + // Do we have any manually set config items in the index.php file? + if (isset($assign_to_config)) + { + $CFG->_assign_to_config($assign_to_config); + } + +/* + * ------------------------------------------------------ + * Instantiate the UTF-8 class + * ------------------------------------------------------ + * + * Note: Order here is rather important as the UTF-8 + * class needs to be used very early on, but it cannot + * properly determine if UTf-8 can be supported until + * after the Config class is instantiated. + * + */ + + $UNI =& load_class('Utf8', 'core'); + +/* + * ------------------------------------------------------ + * Instantiate the URI class + * ------------------------------------------------------ + */ + $URI =& load_class('URI', 'core'); + +/* + * ------------------------------------------------------ + * Instantiate the routing class and set the routing + * ------------------------------------------------------ + */ + $RTR =& load_class('Router', 'core'); + $RTR->_set_routing(); + + // Set any routing overrides that may exist in the main index file + if (isset($routing)) + { + $RTR->_set_overrides($routing); + } + +/* + * ------------------------------------------------------ + * Instantiate the output class + * ------------------------------------------------------ + */ + $OUT =& load_class('Output', 'core'); + +/* + * ------------------------------------------------------ + * Is there a valid cache file? If so, we're done... + * ------------------------------------------------------ + */ + if ($EXT->_call_hook('cache_override') === FALSE) + { + if ($OUT->_display_cache($CFG, $URI) == TRUE) + { + exit; + } + } + +/* + * ------------------------------------------------------ + * Load the Input class and sanitize globals + * ------------------------------------------------------ + */ + $IN =& load_class('Input', 'core'); + +/* + * ------------------------------------------------------ + * Load the Language class + * ------------------------------------------------------ + */ + $LANG =& load_class('Lang', 'core'); + +/* + * ------------------------------------------------------ + * Load the app controller and local controller + * ------------------------------------------------------ + * + */ + // Load the base controller class + require BASEPATH.'core/Controller'.EXT; + + function &get_instance() + { + return CI_Controller::get_instance(); + } + + + if (file_exists(APPPATH.'core/'.$CFG->config['subclass_prefix'].'Controller'.EXT)) + { + require APPPATH.'core/'.$CFG->config['subclass_prefix'].'Controller'.EXT; + } + + // Load the local application controller + // Note: The Router class automatically validates the controller path using the router->_validate_request(). + // If this include fails it means that the default controller in the Routes.php file is not resolving to something valid. + if ( ! file_exists(APPPATH.'controllers/'.$RTR->fetch_directory().$RTR->fetch_class().EXT)) + { + show_error('Unable to load your default controller. Please make sure the controller specified in your Routes.php file is valid.'); + } + + include(APPPATH.'controllers/'.$RTR->fetch_directory().$RTR->fetch_class().EXT); + + // Set a mark point for benchmarking + $BM->mark('loading_time:_base_classes_end'); + +/* + * ------------------------------------------------------ + * Security check + * ------------------------------------------------------ + * + * None of the functions in the app controller or the + * loader class can be called via the URI, nor can + * controller functions that begin with an underscore + */ + $class = $RTR->fetch_class(); + $method = $RTR->fetch_method(); + + if ( ! class_exists($class) + OR strncmp($method, '_', 1) == 0 + OR in_array(strtolower($method), array_map('strtolower', get_class_methods('CI_Controller'))) + ) + { + show_404("{$class}/{$method}"); + } + +/* + * ------------------------------------------------------ + * Is there a "pre_controller" hook? + * ------------------------------------------------------ + */ + $EXT->_call_hook('pre_controller'); + +/* + * ------------------------------------------------------ + * Instantiate the requested controller + * ------------------------------------------------------ + */ + // Mark a start point so we can benchmark the controller + $BM->mark('controller_execution_time_( '.$class.' / '.$method.' )_start'); + + $CI = new $class(); + +/* + * ------------------------------------------------------ + * Is there a "post_controller_constructor" hook? + * ------------------------------------------------------ + */ + $EXT->_call_hook('post_controller_constructor'); + +/* + * ------------------------------------------------------ + * Call the requested method + * ------------------------------------------------------ + */ + // Is there a "remap" function? If so, we call it instead + if (method_exists($CI, '_remap')) + { + $CI->_remap($method, array_slice($URI->rsegments, 2)); + } + else + { + // is_callable() returns TRUE on some versions of PHP 5 for private and protected + // methods, so we'll use this workaround for consistent behavior + if ( ! in_array(strtolower($method), array_map('strtolower', get_class_methods($CI)))) + { + show_404("{$class}/{$method}"); + } + + // Call the requested method. + // Any URI segments present (besides the class/function) will be passed to the method for convenience + call_user_func_array(array(&$CI, $method), array_slice($URI->rsegments, 2)); + } + + + // Mark a benchmark end point + $BM->mark('controller_execution_time_( '.$class.' / '.$method.' )_end'); + +/* + * ------------------------------------------------------ + * Is there a "post_controller" hook? + * ------------------------------------------------------ + */ + $EXT->_call_hook('post_controller'); + +/* + * ------------------------------------------------------ + * Send the final rendered output to the browser + * ------------------------------------------------------ + */ + if ($EXT->_call_hook('display_override') === FALSE) + { + $OUT->_display(); + } + +/* + * ------------------------------------------------------ + * Is there a "post_system" hook? + * ------------------------------------------------------ + */ + $EXT->_call_hook('post_system'); + +/* + * ------------------------------------------------------ + * Close the DB connection if one exists + * ------------------------------------------------------ + */ + if (class_exists('CI_DB') AND isset($CI->db)) + { + $CI->db->close(); + } + + +/* End of file CodeIgniter.php */ +/* Location: ./system/core/CodeIgniter.php */
\ No newline at end of file diff --git a/system/core/Common.php b/system/core/Common.php new file mode 100755 index 000000000..b5adfacb3 --- /dev/null +++ b/system/core/Common.php @@ -0,0 +1,503 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * Common Functions + * + * Loads the base classes and executes the request. + * + * @package CodeIgniter + * @subpackage codeigniter + * @category Common Functions + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/ + */ + +// ------------------------------------------------------------------------ + +/** +* Determines if the current version of PHP is greater then the supplied value +* +* Since there are a few places where we conditionally test for PHP > 5 +* we'll set a static variable. +* +* @access public +* @param string +* @return bool TRUE if the current version is $version or higher +*/ + function is_php($version = '5.0.0') + { + static $_is_php; + $version = (string)$version; + + if ( ! isset($_is_php[$version])) + { + $_is_php[$version] = (version_compare(PHP_VERSION, $version) < 0) ? FALSE : TRUE; + } + + return $_is_php[$version]; + } + +// ------------------------------------------------------------------------ + +/** + * Tests for file writability + * + * is_writable() returns TRUE on Windows servers when you really can't write to + * the file, based on the read-only attribute. is_writable() is also unreliable + * on Unix servers if safe_mode is on. + * + * @access private + * @return void + */ + function is_really_writable($file) + { + // If we're on a Unix server with safe_mode off we call is_writable + if (DIRECTORY_SEPARATOR == '/' AND @ini_get("safe_mode") == FALSE) + { + return is_writable($file); + } + + // For windows servers and safe_mode "on" installations we'll actually + // write a file then read it. Bah... + if (is_dir($file)) + { + $file = rtrim($file, '/').'/'.md5(mt_rand(1,100).mt_rand(1,100)); + + if (($fp = @fopen($file, FOPEN_WRITE_CREATE)) === FALSE) + { + return FALSE; + } + + fclose($fp); + @chmod($file, DIR_WRITE_MODE); + @unlink($file); + return TRUE; + } + elseif (($fp = @fopen($file, FOPEN_WRITE_CREATE)) === FALSE) + { + return FALSE; + } + + fclose($fp); + return TRUE; + } + +// ------------------------------------------------------------------------ + +/** +* Class registry +* +* This function acts as a singleton. If the requested class does not +* exist it is instantiated and set to a static variable. If it has +* previously been instantiated the variable is returned. +* +* @access public +* @param string the class name being requested +* @param string the directory where the class should be found +* @param string the class name prefix +* @return object +*/ + function &load_class($class, $directory = 'libraries', $prefix = 'CI_') + { + static $_classes = array(); + + // Does the class exist? If so, we're done... + if (isset($_classes[$class])) + { + return $_classes[$class]; + } + + $name = FALSE; + + // Look for the class first in the native system/libraries folder + // thenin the local application/libraries folder + foreach (array(BASEPATH, APPPATH) as $path) + { + if (file_exists($path.$directory.'/'.$class.EXT)) + { + $name = $prefix.$class; + + if (class_exists($name) === FALSE) + { + require($path.$directory.'/'.$class.EXT); + } + + break; + } + } + + // Is the request a class extension? If so we load it too + if (file_exists(APPPATH.$directory.'/'.config_item('subclass_prefix').$class.EXT)) + { + $name = config_item('subclass_prefix').$class; + + if (class_exists($name) === FALSE) + { + require(APPPATH.$directory.'/'.config_item('subclass_prefix').$class.EXT); + } + } + + // Did we find the class? + if ($name === FALSE) + { + // Note: We use exit() rather then show_error() in order to avoid a + // self-referencing loop with the Excptions class + exit('Unable to locate the specified class: '.$class.EXT); + } + + // Keep track of what we just loaded + is_loaded($class); + + $_classes[$class] = new $name(); + return $_classes[$class]; + } + +// -------------------------------------------------------------------- + +/** +* Keeps track of which libraries have been loaded. This function is +* called by the load_class() function above +* +* @access public +* @return array +*/ + function is_loaded($class = '') + { + static $_is_loaded = array(); + + if ($class != '') + { + $_is_loaded[strtolower($class)] = $class; + } + + return $_is_loaded; + } + +// ------------------------------------------------------------------------ + +/** +* Loads the main config.php file +* +* This function lets us grab the config file even if the Config class +* hasn't been instantiated yet +* +* @access private +* @return array +*/ + function &get_config($replace = array()) + { + static $_config; + + if (isset($_config)) + { + return $_config[0]; + } + + // Fetch the config file + if ( ! file_exists(APPPATH.'config/config'.EXT)) + { + exit('The configuration file does not exist.'); + } + else + { + require(APPPATH.'config/config'.EXT); + } + + // Does the $config array exist in the file? + if ( ! isset($config) OR ! is_array($config)) + { + exit('Your config file does not appear to be formatted correctly.'); + } + + // Are any values being dynamically replaced? + if (count($replace) > 0) + { + foreach ($replace as $key => $val) + { + if (isset($config[$key])) + { + $config[$key] = $val; + } + } + } + + return $_config[0] =& $config; + } + +// ------------------------------------------------------------------------ + +/** +* Returns the specified config item +* +* @access public +* @return mixed +*/ + function config_item($item) + { + static $_config_item = array(); + + if ( ! isset($_config_item[$item])) + { + $config =& get_config(); + + if ( ! isset($config[$item])) + { + return FALSE; + } + $_config_item[$item] = $config[$item]; + } + + return $_config_item[$item]; + } + +// ------------------------------------------------------------------------ + +/** +* Error Handler +* +* This function lets us invoke the exception class and +* display errors using the standard error template located +* in application/errors/errors.php +* This function will send the error page directly to the +* browser and exit. +* +* @access public +* @return void +*/ + function show_error($message, $status_code = 500, $heading = 'An Error Was Encountered') + { + $_error =& load_class('Exceptions', 'core'); + echo $_error->show_error($heading, $message, 'error_general', $status_code); + exit; + } + +// ------------------------------------------------------------------------ + +/** +* 404 Page Handler +* +* This function is similar to the show_error() function above +* However, instead of the standard error template it displays +* 404 errors. +* +* @access public +* @return void +*/ + function show_404($page = '', $log_error = TRUE) + { + $_error =& load_class('Exceptions', 'core'); + $_error->show_404($page, $log_error); + exit; + } + +// ------------------------------------------------------------------------ + +/** +* Error Logging Interface +* +* We use this as a simple mechanism to access the logging +* class and send messages to be logged. +* +* @access public +* @return void +*/ + function log_message($level = 'error', $message, $php_error = FALSE) + { + static $_log; + + if (config_item('log_threshold') == 0) + { + return; + } + + $_log =& load_class('Log'); + $_log->write_log($level, $message, $php_error); + } + +// ------------------------------------------------------------------------ + +/** + * Set HTTP Status Header + * + * @access public + * @param int the status code + * @param string + * @return void + */ + function set_status_header($code = 200, $text = '') + { + $stati = array( + 200 => 'OK', + 201 => 'Created', + 202 => 'Accepted', + 203 => 'Non-Authoritative Information', + 204 => 'No Content', + 205 => 'Reset Content', + 206 => 'Partial Content', + + 300 => 'Multiple Choices', + 301 => 'Moved Permanently', + 302 => 'Found', + 304 => 'Not Modified', + 305 => 'Use Proxy', + 307 => 'Temporary Redirect', + + 400 => 'Bad Request', + 401 => 'Unauthorized', + 403 => 'Forbidden', + 404 => 'Not Found', + 405 => 'Method Not Allowed', + 406 => 'Not Acceptable', + 407 => 'Proxy Authentication Required', + 408 => 'Request Timeout', + 409 => 'Conflict', + 410 => 'Gone', + 411 => 'Length Required', + 412 => 'Precondition Failed', + 413 => 'Request Entity Too Large', + 414 => 'Request-URI Too Long', + 415 => 'Unsupported Media Type', + 416 => 'Requested Range Not Satisfiable', + 417 => 'Expectation Failed', + + 500 => 'Internal Server Error', + 501 => 'Not Implemented', + 502 => 'Bad Gateway', + 503 => 'Service Unavailable', + 504 => 'Gateway Timeout', + 505 => 'HTTP Version Not Supported' + ); + + if ($code == '' OR ! is_numeric($code)) + { + show_error('Status codes must be numeric', 500); + } + + if (isset($stati[$code]) AND $text == '') + { + $text = $stati[$code]; + } + + if ($text == '') + { + show_error('No status text available. Please check your status code number or supply your own message text.', 500); + } + + $server_protocol = (isset($_SERVER['SERVER_PROTOCOL'])) ? $_SERVER['SERVER_PROTOCOL'] : FALSE; + + if (substr(php_sapi_name(), 0, 3) == 'cgi') + { + header("Status: {$code} {$text}", TRUE); + } + elseif ($server_protocol == 'HTTP/1.1' OR $server_protocol == 'HTTP/1.0') + { + header($server_protocol." {$code} {$text}", TRUE, $code); + } + else + { + header("HTTP/1.1 {$code} {$text}", TRUE, $code); + } + } + +// -------------------------------------------------------------------- + +/** +* Exception Handler +* +* This is the custom exception handler that is declaired at the top +* of Codeigniter.php. The main reason we use this is to permit +* PHP errors to be logged in our own log files since the user may +* not have access to server logs. Since this function +* effectively intercepts PHP errors, however, we also need +* to display errors based on the current error_reporting level. +* We do that with the use of a PHP error template. +* +* @access private +* @return void +*/ + function _exception_handler($severity, $message, $filepath, $line) + { + // We don't bother with "strict" notices since they tend to fill up + // the log file with excess information that isn't normally very helpful. + // For example, if you are running PHP 5 and you use version 4 style + // class functions (without prefixes like "public", "private", etc.) + // you'll get notices telling you that these have been deprecated. + if ($severity == E_STRICT) + { + return; + } + + $_error =& load_class('Exceptions', 'core'); + + // Should we display the error? We'll get the current error_reporting + // level and add its bits with the severity bits to find out. + if (($severity & error_reporting()) == $severity) + { + $_error->show_php_error($severity, $message, $filepath, $line); + } + + // Should we log the error? No? We're done... + if (config_item('log_threshold') == 0) + { + return; + } + + $_error->log_exception($severity, $message, $filepath, $line); + } + + // -------------------------------------------------------------------- + + /** + * Remove Invisible Characters + * + * This prevents sandwiching null characters + * between ascii characters, like Java\0script. + * + * @access public + * @param string + * @return string + */ + function remove_invisible_characters($str) + { + static $non_displayables; + + if ( ! isset($non_displayables)) + { + // every control character except newline (dec 10), carriage return (dec 13), and horizontal tab (dec 09), + $non_displayables = array( + '/%0[0-8bcef]/', // url encoded 00-08, 11, 12, 14, 15 + '/%1[0-9a-f]/', // url encoded 16-31 + '/[\x00-\x08]/', // 00-08 + '/\x0b/', '/\x0c/', // 11, 12 + '/[\x0e-\x1f]/' // 14-31 + ); + } + + do + { + $cleaned = $str; + $str = preg_replace($non_displayables, '', $str); + } + while ($cleaned != $str); + + return $str; + } + + +/* End of file Common.php */ +/* Location: ./system/core/Common.php */
\ No newline at end of file diff --git a/system/libraries/Config.php b/system/core/Config.php index 760120779..bfb60fa44 100644..100755 --- a/system/libraries/Config.php +++ b/system/core/Config.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -30,6 +30,7 @@ class CI_Config { var $config = array(); var $is_loaded = array(); + var $_config_paths = array(APPPATH); /** * Constructor @@ -42,12 +43,30 @@ class CI_Config { * @param boolean true if errors should just return false, false if an error message should be displayed * @return boolean if the file was successfully loaded or not */ - function CI_Config() + function __construct() { $this->config =& get_config(); log_message('debug', "Config Class Initialized"); + + // Set the base_url automatically if none was provided + if ($this->config['base_url'] == '') + { + if(isset($_SERVER['HTTP_HOST'])) + { + $base_url = isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off' ? 'https' : 'http'; + $base_url .= '://'. $_SERVER['HTTP_HOST']; + $base_url .= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']); + } + + else + { + $base_url = 'http://localhost/'; + } + + $this->set_item('base_url', $base_url); + } } - + // -------------------------------------------------------------------- /** @@ -56,59 +75,73 @@ class CI_Config { * @access public * @param string the config file name * @return boolean if the file was loaded correctly - */ + */ function load($file = '', $use_sections = FALSE, $fail_gracefully = FALSE) { $file = ($file == '') ? 'config' : str_replace(EXT, '', $file); - - if (in_array($file, $this->is_loaded, TRUE)) - { - return TRUE; - } + $loaded = FALSE; - if ( ! file_exists(APPPATH.'config/'.$file.EXT)) + foreach($this->_config_paths as $path) { - if ($fail_gracefully === TRUE) + $file_path = $path.'config/'.$file.EXT; + + if (in_array($file_path, $this->is_loaded, TRUE)) { - return FALSE; + $loaded = TRUE; + continue; } - show_error('The configuration file '.$file.EXT.' does not exist.'); - } - - include(APPPATH.'config/'.$file.EXT); - if ( ! isset($config) OR ! is_array($config)) - { - if ($fail_gracefully === TRUE) + if ( ! file_exists($path.'config/'.$file.EXT)) { - return FALSE; + continue; } - show_error('Your '.$file.EXT.' file does not appear to contain a valid configuration array.'); - } - if ($use_sections === TRUE) - { - if (isset($this->config[$file])) + include($file_path); + + if ( ! isset($config) OR ! is_array($config)) { - $this->config[$file] = array_merge($this->config[$file], $config); + if ($fail_gracefully === TRUE) + { + return FALSE; + } + show_error('Your '.$file_path.' file does not appear to contain a valid configuration array.'); + } + + if ($use_sections === TRUE) + { + if (isset($this->config[$file])) + { + $this->config[$file] = array_merge($this->config[$file], $config); + } + else + { + $this->config[$file] = $config; + } } else { - $this->config[$file] = $config; + $this->config = array_merge($this->config, $config); } + + $this->is_loaded[] = $file_path; + unset($config); + + $loaded = TRUE; + log_message('debug', 'Config file loaded: '.$file_path); } - else + + if ($loaded === FALSE) { - $this->config = array_merge($this->config, $config); + if ($fail_gracefully === TRUE) + { + return FALSE; + } + show_error('The configuration file '.$file.EXT.' does not exist.'); } - $this->is_loaded[] = $file; - unset($config); - - log_message('debug', 'Config file loaded: config/'.$file.EXT); return TRUE; } - + // -------------------------------------------------------------------- /** @@ -122,9 +155,9 @@ class CI_Config { * @return string */ function item($item, $index = '') - { + { if ($index == '') - { + { if ( ! isset($this->config[$item])) { return FALSE; @@ -149,8 +182,8 @@ class CI_Config { return $pref; } - - // -------------------------------------------------------------------- + + // -------------------------------------------------------------------- /** * Fetch a config file item - adds slash after item @@ -170,16 +203,9 @@ class CI_Config { return FALSE; } - $pref = $this->config[$item]; - - if ($pref != '' && substr($pref, -1) != '/') - { - $pref .= '/'; - } - - return $pref; + return rtrim($this->config[$item], '/').'/'; } - + // -------------------------------------------------------------------- /** @@ -191,22 +217,42 @@ class CI_Config { */ function site_url($uri = '') { - if (is_array($uri)) + if ($uri == '') { - $uri = implode('/', $uri); + return $this->slash_item('base_url').$this->item('index_page'); } - if ($uri == '') + if ($this->item('enable_query_strings') == FALSE) { - return $this->slash_item('base_url').$this->item('index_page'); + if (is_array($uri)) + { + $uri = implode('/', $uri); + } + + $index = $this->item('index_page') == '' ? '' : $this->slash_item('index_page'); + $suffix = ($this->item('url_suffix') == FALSE) ? '' : $this->item('url_suffix'); + return $this->slash_item('base_url').$index.trim($uri, '/').$suffix; } else { - $suffix = ($this->item('url_suffix') == FALSE) ? '' : $this->item('url_suffix'); - return $this->slash_item('base_url').$this->slash_item('index_page').trim($uri, '/').$suffix; + if (is_array($uri)) + { + $i = 0; + $str = ''; + foreach ($uri as $key => $val) + { + $prefix = ($i == 0) ? '' : '&'; + $str .= $prefix.$key.'='.$val; + $i++; + } + + $uri = $str; + } + + return $this->slash_item('base_url').$this->item('index_page').'?'.$uri; } } - + // -------------------------------------------------------------------- /** @@ -220,7 +266,7 @@ class CI_Config { $x = explode("/", preg_replace("|/*(.+?)/*$|", "\\1", BASEPATH)); return $this->slash_item('base_url').end($x).'/'; } - + // -------------------------------------------------------------------- /** @@ -236,9 +282,32 @@ class CI_Config { $this->config[$item] = $value; } + // -------------------------------------------------------------------- + + /** + * Assign to Config + * + * This function is called by the front controller (CodeIgniter.php) + * after the Config class is instantiated. It permits config items + * to be assigned or overriden by variables contained in the index.php file + * + * @access private + * @param array + * @return void + */ + function _assign_to_config($items = array()) + { + if (is_array($items)) + { + foreach ($items as $key => $val) + { + $this->set_item($key, $val); + } + } + } } // END CI_Config class /* End of file Config.php */ -/* Location: ./system/libraries/Config.php */
\ No newline at end of file +/* Location: ./system/core/Config.php */
\ No newline at end of file diff --git a/system/core/Controller.php b/system/core/Controller.php new file mode 100755 index 000000000..469663f09 --- /dev/null +++ b/system/core/Controller.php @@ -0,0 +1,67 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter Application Controller Class + * + * This class object is the super class that every library in + * CodeIgniter will be assigned to. + * + * @package CodeIgniter + * @subpackage Libraries + * @category Libraries + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/general/controllers.html + */ +class CI_Controller { + + private static $instance; + + /** + * Constructor + */ + public function __construct() + { + self::$instance =& $this; + + // Assign all the class objects that were instantiated by the + // bootstrap file (CodeIgniter.php) to local class variables + // so that CI can run as one big super object. + foreach (is_loaded() as $var => $class) + { + $this->$var =& load_class($class); + } + + $this->load =& load_class('Loader', 'core'); + + $this->load->_base_classes =& is_loaded(); + + $this->load->_ci_autoloader(); + + log_message('debug', "Controller Class Initialized"); + + } + + public static function &get_instance() + { + return self::$instance; + } +} +// END Controller class + +/* End of file Controller.php */ +/* Location: ./system/core/Controller.php */
\ No newline at end of file diff --git a/system/libraries/Exceptions.php b/system/core/Exceptions.php index bd567ccdc..f5659561c 100644..100755 --- a/system/libraries/Exceptions.php +++ b/system/core/Exceptions.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -50,14 +50,13 @@ class CI_Exceptions { /** * Constructor - * - */ - function CI_Exceptions() + */ + public function __construct() { $this->ob_level = ob_get_level(); // Note: Do not log messages from this constructor. } - + // -------------------------------------------------------------------- /** @@ -73,9 +72,9 @@ class CI_Exceptions { * @return string */ function log_exception($severity, $message, $filepath, $line) - { + { $severity = ( ! isset($this->levels[$severity])) ? $severity : $this->levels[$severity]; - + log_message('error', 'Severity: '.$severity.' --> '.$message. ' '.$filepath.' '.$line, TRUE); } @@ -88,16 +87,21 @@ class CI_Exceptions { * @param string * @return string */ - function show_404($page = '') - { + function show_404($page = '', $log_error = TRUE) + { $heading = "404 Page Not Found"; $message = "The page you requested was not found."; - log_message('error', '404 Page Not Found --> '.$page); + // By default we log this, but allow a dev to skip it + if ($log_error) + { + log_message('error', '404 Page Not Found --> '.$page); + } + echo $this->show_error($heading, $message, 'error_404', 404); exit; } - + // -------------------------------------------------------------------- /** @@ -116,12 +120,12 @@ class CI_Exceptions { function show_error($heading, $message, $template = 'error_general', $status_code = 500) { set_status_header($status_code); - + $message = '<p>'.implode('</p><p>', ( ! is_array($message)) ? array($message) : $message).'</p>'; if (ob_get_level() > $this->ob_level + 1) { - ob_end_flush(); + ob_end_flush(); } ob_start(); include(APPPATH.'errors/'.$template.EXT); @@ -143,21 +147,21 @@ class CI_Exceptions { * @return string */ function show_php_error($severity, $message, $filepath, $line) - { + { $severity = ( ! isset($this->levels[$severity])) ? $severity : $this->levels[$severity]; - + $filepath = str_replace("\\", "/", $filepath); - + // For safety reasons we do not show the full file path if (FALSE !== strpos($filepath, '/')) { $x = explode('/', $filepath); $filepath = $x[count($x)-2].'/'.end($x); } - + if (ob_get_level() > $this->ob_level + 1) { - ob_end_flush(); + ob_end_flush(); } ob_start(); include(APPPATH.'errors/error_php'.EXT); @@ -171,4 +175,4 @@ class CI_Exceptions { // END Exceptions Class /* End of file Exceptions.php */ -/* Location: ./system/libraries/Exceptions.php */
\ No newline at end of file +/* Location: ./system/core/Exceptions.php */
\ No newline at end of file diff --git a/system/libraries/Hooks.php b/system/core/Hooks.php index 6d736c3f6..75fd811b0 100644..100755 --- a/system/libraries/Hooks.php +++ b/system/core/Hooks.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -18,8 +18,7 @@ /** * CodeIgniter Hooks Class * - * Provides a mechanism to extend the base system without hacking. Most of - * this class is borrowed from Paul's Extension class in ExpressionEngine. + * Provides a mechanism to extend the base system without hacking. * * @package CodeIgniter * @subpackage Libraries @@ -29,20 +28,20 @@ */ class CI_Hooks { - var $enabled = FALSE; - var $hooks = array(); + var $enabled = FALSE; + var $hooks = array(); var $in_progress = FALSE; /** * Constructor * */ - function CI_Hooks() + function __construct() { $this->_initialize(); log_message('debug', "Hooks Class Initialized"); } - + // -------------------------------------------------------------------- /** @@ -50,10 +49,10 @@ class CI_Hooks { * * @access private * @return void - */ - function _initialize() - { - $CFG =& load_class('Config'); + */ + function _initialize() + { + $CFG =& load_class('Config', 'core'); // If hooks are not enabled in the config file // there is nothing else to do @@ -75,8 +74,8 @@ class CI_Hooks { $this->hooks =& $hook; $this->enabled = TRUE; - } - + } + // -------------------------------------------------------------------- /** @@ -223,4 +222,4 @@ class CI_Hooks { // END CI_Hooks class /* End of file Hooks.php */ -/* Location: ./system/libraries/Hooks.php */
\ No newline at end of file +/* Location: ./system/core/Hooks.php */
\ No newline at end of file diff --git a/system/core/Input.php b/system/core/Input.php new file mode 100755 index 000000000..3e82874fd --- /dev/null +++ b/system/core/Input.php @@ -0,0 +1,652 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * Input Class + * + * Pre-processes global input data for security + * + * @package CodeIgniter + * @subpackage Libraries + * @category Input + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/libraries/input.html + */ +class CI_Input { + + var $ip_address = FALSE; + var $user_agent = FALSE; + var $_allow_get_array = TRUE; + var $_standardize_newlines = TRUE; + var $_enable_xss = FALSE; // Set automatically based on config setting + var $_enable_csrf = FALSE; // Set automatically based on config setting + + protected $headers = array(); + + + /** + * Constructor + * + * Sets whether to globally enable the XSS processing + * and whether to allow the $_GET array + * + */ + public function __construct() + { + log_message('debug', "Input Class Initialized"); + + $this->_allow_get_array = (config_item('allow_get_array') === TRUE); + $this->_enable_xss = (config_item('global_xss_filtering') === TRUE); + $this->_enable_csrf = (config_item('csrf_protection') === TRUE); + + // Do we need to load the security class? + if ($this->_enable_xss == TRUE OR $this->_enable_csrf == TRUE) + { + $this->security =& load_class('Security'); + } + + // Do we need the UTF-8 class? + if (UTF8_ENABLED === TRUE) + { + global $UNI; + $this->uni =& $UNI; + } + + // Sanitize global arrays + $this->_sanitize_globals(); + } + + // -------------------------------------------------------------------- + + /** + * Fetch from array + * + * This is a helper function to retrieve values from global arrays + * + * @access private + * @param array + * @param string + * @param bool + * @return string + */ + function _fetch_from_array(&$array, $index = '', $xss_clean = FALSE) + { + if ( ! isset($array[$index])) + { + return FALSE; + } + + if ($xss_clean === TRUE) + { + $_security =& load_class('Security'); + return $_security->xss_clean($array[$index]); + } + + return $array[$index]; + } + + // -------------------------------------------------------------------- + + /** + * Fetch an item from the GET array + * + * @access public + * @param string + * @param bool + * @return string + */ + function get($index = '', $xss_clean = FALSE) + { + return $this->_fetch_from_array($_GET, $index, $xss_clean); + } + + // -------------------------------------------------------------------- + + /** + * Fetch an item from the POST array + * + * @access public + * @param string + * @param bool + * @return string + */ + function post($index = '', $xss_clean = FALSE) + { + return $this->_fetch_from_array($_POST, $index, $xss_clean); + } + + + // -------------------------------------------------------------------- + + /** + * Fetch an item from either the GET array or the POST + * + * @access public + * @param string The index key + * @param bool XSS cleaning + * @return string + */ + function get_post($index = '', $xss_clean = FALSE) + { + if ( ! isset($_POST[$index]) ) + { + return $this->get($index, $xss_clean); + } + else + { + return $this->post($index, $xss_clean); + } + } + + // -------------------------------------------------------------------- + + /** + * Fetch an item from the COOKIE array + * + * @access public + * @param string + * @param bool + * @return string + */ + function cookie($index = '', $xss_clean = FALSE) + { + return $this->_fetch_from_array($_COOKIE, $index, $xss_clean); + } + + // ------------------------------------------------------------------------ + + /** + * Set cookie + * + * Accepts six parameter, or you can submit an associative + * array in the first parameter containing all the values. + * + * @access public + * @param mixed + * @param string the value of the cookie + * @param string the number of seconds until expiration + * @param string the cookie domain. Usually: .yourdomain.com + * @param string the cookie path + * @param string the cookie prefix + * @return void + */ + function set_cookie($name = '', $value = '', $expire = '', $domain = '', $path = '/', $prefix = '') + { + if (is_array($name)) + { + foreach (array('value', 'expire', 'domain', 'path', 'prefix', 'name') as $item) + { + if (isset($name[$item])) + { + $$item = $name[$item]; + } + } + } + + if ($prefix == '' AND config_item('cookie_prefix') != '') + { + $prefix = config_item('cookie_prefix'); + } + if ($domain == '' AND config_item('cookie_domain') != '') + { + $domain = config_item('cookie_domain'); + } + if ($path == '/' AND config_item('cookie_path') != '/') + { + $path = config_item('cookie_path'); + } + + if ( ! is_numeric($expire)) + { + $expire = time() - 86500; + } + else + { + $expire = ($expire > 0) ? time() + $expire : 0; + } + + setcookie($prefix.$name, $value, $expire, $path, $domain, 0); + } + + // -------------------------------------------------------------------- + + /** + * Fetch an item from the SERVER array + * + * @access public + * @param string + * @param bool + * @return string + */ + function server($index = '', $xss_clean = FALSE) + { + return $this->_fetch_from_array($_SERVER, $index, $xss_clean); + } + + // -------------------------------------------------------------------- + + /** + * Fetch the IP Address + * + * @access public + * @return string + */ + function ip_address() + { + if ($this->ip_address !== FALSE) + { + return $this->ip_address; + } + + if (config_item('proxy_ips') != '' && $this->server('HTTP_X_FORWARDED_FOR') && $this->server('REMOTE_ADDR')) + { + $proxies = preg_split('/[\s,]/', config_item('proxy_ips'), -1, PREG_SPLIT_NO_EMPTY); + $proxies = is_array($proxies) ? $proxies : array($proxies); + + $this->ip_address = in_array($_SERVER['REMOTE_ADDR'], $proxies) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']; + } + elseif ($this->server('REMOTE_ADDR') AND $this->server('HTTP_CLIENT_IP')) + { + $this->ip_address = $_SERVER['HTTP_CLIENT_IP']; + } + elseif ($this->server('REMOTE_ADDR')) + { + $this->ip_address = $_SERVER['REMOTE_ADDR']; + } + elseif ($this->server('HTTP_CLIENT_IP')) + { + $this->ip_address = $_SERVER['HTTP_CLIENT_IP']; + } + elseif ($this->server('HTTP_X_FORWARDED_FOR')) + { + $this->ip_address = $_SERVER['HTTP_X_FORWARDED_FOR']; + } + + if ($this->ip_address === FALSE) + { + $this->ip_address = '0.0.0.0'; + return $this->ip_address; + } + + if (strpos($this->ip_address, ',') !== FALSE) + { + $x = explode(',', $this->ip_address); + $this->ip_address = trim(end($x)); + } + + if ( ! $this->valid_ip($this->ip_address)) + { + $this->ip_address = '0.0.0.0'; + } + + return $this->ip_address; + } + + // -------------------------------------------------------------------- + + /** + * Validate IP Address + * + * Updated version suggested by Geert De Deckere + * + * @access public + * @param string + * @return string + */ + function valid_ip($ip) + { + $ip_segments = explode('.', $ip); + + // Always 4 segments needed + if (count($ip_segments) != 4) + { + return FALSE; + } + // IP can not start with 0 + if ($ip_segments[0][0] == '0') + { + return FALSE; + } + // Check each segment + foreach ($ip_segments as $segment) + { + // IP segments must be digits and can not be + // longer than 3 digits or greater then 255 + if ($segment == '' OR preg_match("/[^0-9]/", $segment) OR $segment > 255 OR strlen($segment) > 3) + { + return FALSE; + } + } + + return TRUE; + } + + // -------------------------------------------------------------------- + + /** + * User Agent + * + * @access public + * @return string + */ + function user_agent() + { + if ($this->user_agent !== FALSE) + { + return $this->user_agent; + } + + $this->user_agent = ( ! isset($_SERVER['HTTP_USER_AGENT'])) ? FALSE : $_SERVER['HTTP_USER_AGENT']; + + return $this->user_agent; + } + + // -------------------------------------------------------------------- + + /** + * Sanitize Globals + * + * This function does the following: + * + * Unsets $_GET data (if query strings are not enabled) + * + * Unsets all globals if register_globals is enabled + * + * Standardizes newline characters to \n + * + * @access private + * @return void + */ + function _sanitize_globals() + { + // It would be "wrong" to unset any of these GLOBALS. + $protected = array('_SERVER', '_GET', '_POST', '_FILES', '_REQUEST', + '_SESSION', '_ENV', 'GLOBALS', 'HTTP_RAW_POST_DATA', + 'system_folder', 'application_folder', 'BM', 'EXT', + 'CFG', 'URI', 'RTR', 'OUT', 'IN'); + + // Unset globals for securiy. + // This is effectively the same as register_globals = off + foreach (array($_GET, $_POST, $_COOKIE) as $global) + { + if ( ! is_array($global)) + { + if ( ! in_array($global, $protected)) + { + global $$global; + $$global = NULL; + } + } + else + { + foreach ($global as $key => $val) + { + if ( ! in_array($key, $protected)) + { + global $$key; + $$key = NULL; + } + } + } + } + + // Is $_GET data allowed? If not we'll set the $_GET to an empty array + if ($this->_allow_get_array == FALSE) + { + $_GET = array(); + } + else + { + if (is_array($_GET) AND count($_GET) > 0) + { + foreach($_GET as $key => $val) + { + $_GET[$this->_clean_input_keys($key)] = $this->_clean_input_data($val); + } + } + } + + // Clean $_POST Data + if (is_array($_POST) AND count($_POST) > 0) + { + foreach($_POST as $key => $val) + { + $_POST[$this->_clean_input_keys($key)] = $this->_clean_input_data($val); + } + } + + // Clean $_COOKIE Data + if (is_array($_COOKIE) AND count($_COOKIE) > 0) + { + // Also get rid of specially treated cookies that might be set by a server + // or silly application, that are of no use to a CI application anyway + // but that when present will trip our 'Disallowed Key Characters' alarm + // http://www.ietf.org/rfc/rfc2109.txt + // note that the key names below are single quoted strings, and are not PHP variables + unset($_COOKIE['$Version']); + unset($_COOKIE['$Path']); + unset($_COOKIE['$Domain']); + + foreach($_COOKIE as $key => $val) + { + $_COOKIE[$this->_clean_input_keys($key)] = $this->_clean_input_data($val); + } + } + + // Sanitize PHP_SELF + $_SERVER['PHP_SELF'] = strip_tags($_SERVER['PHP_SELF']); + + + // CSRF Protection check + if ($this->_enable_csrf == TRUE) + { + $this->security->csrf_verify(); + } + + log_message('debug', "Global POST and COOKIE data sanitized"); + } + + // -------------------------------------------------------------------- + + /** + * Clean Input Data + * + * This is a helper function. It escapes data and + * standardizes newline characters to \n + * + * @access private + * @param string + * @return string + */ + function _clean_input_data($str) + { + if (is_array($str)) + { + $new_array = array(); + foreach ($str as $key => $val) + { + $new_array[$this->_clean_input_keys($key)] = $this->_clean_input_data($val); + } + return $new_array; + } + + // We strip slashes if magic quotes is on to keep things consistent + if (function_exists('get_magic_quotes_gpc') AND get_magic_quotes_gpc()) + { + $str = stripslashes($str); + } + + // Clean UTF-8 if supported + if (UTF8_ENABLED === TRUE) + { + $str = $this->uni->clean_string($str); + } + + // Should we filter the input data? + if ($this->_enable_xss === TRUE) + { + $str = $this->security->xss_clean($str); + } + + // Standardize newlines if needed + if ($this->_standardize_newlines == TRUE) + { + if (strpos($str, "\r") !== FALSE) + { + $str = str_replace(array("\r\n", "\r"), PHP_EOL, $str); + } + } + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Clean Keys + * + * This is a helper function. To prevent malicious users + * from trying to exploit keys we make sure that keys are + * only named with alpha-numeric text and a few other items. + * + * @access private + * @param string + * @return string + */ + function _clean_input_keys($str) + { + if ( ! preg_match("/^[a-z0-9:_\/-]+$/i", $str)) + { + exit('Disallowed Key Characters.'); + } + + // Clean UTF-8 if supported + if (UTF8_ENABLED === TRUE) + { + $str = $this->uni->clean_string($str); + } + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Request Headers + * + * In Apache, you can simply call apache_request_headers(), however for + * people running other webservers the function is undefined. + * + * @return array + */ + public function request_headers($xss_clean = FALSE) + { + // Look at Apache go! + if (function_exists('apache_request_headers')) + { + $headers = apache_request_headers(); + } + else + { + $headers['Content-Type'] = (isset($_SERVER['CONTENT_TYPE'])) ? $_SERVER['CONTENT_TYPE'] : @getenv('CONTENT_TYPE'); + + foreach ($_SERVER as $key => $val) + { + if (strncmp($key, 'HTTP_', 5) === 0) + { + $headers[substr($key, 5)] = $this->_fetch_from_array($_SERVER, $key, $xss_clean); + } + } + } + + // take SOME_HEADER and turn it into Some-Header + foreach ($headers as $key => $val) + { + $key = str_replace('_', ' ', strtolower($key)); + $key = str_replace(' ', '-', ucwords($key)); + + $this->headers[$key] = $val; + } + + return $this->headers; + } + + // -------------------------------------------------------------------- + + /** + * Get Request Header + * + * Returns the value of a single member of the headers class member + * + * @param string array key for $this->headers + * @param boolean XSS Clean or not + * @return mixed FALSE on failure, string on success + */ + public function get_request_header($index, $xss_clean = FALSE) + { + if (empty($this->headers)) + { + $this->request_headers(); + } + + if ( ! isset($this->headers[$index])) + { + return FALSE; + } + + if ($xss_clean === TRUE) + { + $_security =& load_class('Security'); + return $_security->xss_clean($this->headers[$index]); + } + + return $this->headers[$index]; + } + + // -------------------------------------------------------------------- + + /** + * Is ajax Request? + * + * Test to see if a request contains the HTTP_X_REQUESTED_WITH header + * + * @return boolean + */ + public function is_ajax_request() + { + return ($this->server('HTTP_X_REQUESTED_WITH') === 'XMLHttpRequest'); + } + + // -------------------------------------------------------------------- + + /** + * Is cli Request? + * + * Test to see if a request was made from the command line + * + * @return boolean + */ + public function is_cli_request() + { + return (bool) defined('STDIN'); + } + +} +// END Input class + +/* End of file Input.php */ +/* Location: ./system/core/Input.php */
\ No newline at end of file diff --git a/system/libraries/Language.php b/system/core/Lang.php index 515d04a40..fb177902e 100644..100755 --- a/system/libraries/Language.php +++ b/system/core/Lang.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -24,7 +24,7 @@ * @author ExpressionEngine Dev Team * @link http://codeigniter.com/user_guide/libraries/language.html */ -class CI_Language { +class CI_Lang { var $language = array(); var $is_loaded = array(); @@ -34,7 +34,7 @@ class CI_Language { * * @access public */ - function CI_Language() + function __construct() { log_message('debug', "Language Class Initialized"); } @@ -49,39 +49,56 @@ class CI_Language { * @param string the language (english, etc.) * @return mixed */ - function load($langfile = '', $idiom = '', $return = FALSE) + function load($langfile = '', $idiom = '', $return = FALSE, $add_suffix = TRUE, $alt_path = '') { - $langfile = str_replace(EXT, '', str_replace('_lang.', '', $langfile)).'_lang'.EXT; + $langfile = str_replace(EXT, '', $langfile); + + if ($add_suffix == TRUE) + { + $langfile = str_replace('_lang.', '', $langfile).'_lang'; + } + + $langfile .= EXT; if (in_array($langfile, $this->is_loaded, TRUE)) { return; } + $config =& get_config(); + if ($idiom == '') { - $CI =& get_instance(); - $deft_lang = $CI->config->item('language'); + $deft_lang = ( ! isset($config['language'])) ? 'english' : $config['language']; $idiom = ($deft_lang == '') ? 'english' : $deft_lang; } // Determine where the language file is and load it - if (file_exists(APPPATH.'language/'.$idiom.'/'.$langfile)) + if ($alt_path != '' && file_exists($alt_path.'language/'.$idiom.'/'.$langfile)) { - include(APPPATH.'language/'.$idiom.'/'.$langfile); + include($alt_path.'language/'.$idiom.'/'.$langfile); } else { - if (file_exists(BASEPATH.'language/'.$idiom.'/'.$langfile)) + $found = FALSE; + + foreach (get_instance()->load->get_package_paths(TRUE) as $package_path) { - include(BASEPATH.'language/'.$idiom.'/'.$langfile); + if (file_exists($package_path.'language/'.$idiom.'/'.$langfile)) + { + include($package_path.'language/'.$idiom.'/'.$langfile); + $found = TRUE; + break; + } } - else + + if ($found !== TRUE) { show_error('Unable to load the requested language file: language/'.$idiom.'/'.$langfile); } } + if ( ! isset($lang)) { log_message('error', 'Language file contains no data: language/'.$idiom.'/'.$langfile); @@ -107,7 +124,7 @@ class CI_Language { * Fetch a single line of text from the language array * * @access public - * @param string $line the language line + * @param string $line the language line * @return string */ function line($line = '') @@ -119,5 +136,5 @@ class CI_Language { } // END Language Class -/* End of file Language.php */ -/* Location: ./system/libraries/Language.php */
\ No newline at end of file +/* End of file Lang.php */ +/* Location: ./system/core/Lang.php */
\ No newline at end of file diff --git a/system/libraries/Loader.php b/system/core/Loader.php index 4a03312c4..07166188e 100644..100755 --- a/system/libraries/Loader.php +++ b/system/core/Loader.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -31,16 +31,17 @@ class CI_Loader { // All these are set automatically. Don't mess with them. var $_ci_ob_level; var $_ci_view_path = ''; - var $_ci_is_php5 = FALSE; - var $_ci_is_instance = FALSE; // Whether we should use $this or $CI =& get_instance() + var $_ci_library_paths = array(); + var $_ci_model_paths = array(); + var $_ci_helper_paths = array(); + var $_base_classes = array(); // Set by the controller class var $_ci_cached_vars = array(); var $_ci_classes = array(); var $_ci_loaded_files = array(); var $_ci_models = array(); var $_ci_helpers = array(); - var $_ci_plugins = array(); var $_ci_varmap = array('unit_test' => 'unit', 'user_agent' => 'agent'); - + /** * Constructor @@ -49,17 +50,19 @@ class CI_Loader { * * @access public */ - function CI_Loader() - { - $this->_ci_is_php5 = (floor(phpversion()) >= 5) ? TRUE : FALSE; + function __construct() + { $this->_ci_view_path = APPPATH.'views/'; $this->_ci_ob_level = ob_get_level(); - + $this->_ci_library_paths = array(APPPATH, BASEPATH); + $this->_ci_helper_paths = array(APPPATH, BASEPATH); + $this->_ci_model_paths = array(APPPATH); + log_message('debug', "Loader Class Initialized"); } - + // -------------------------------------------------------------------- - + /** * Class Loader * @@ -71,15 +74,25 @@ class CI_Loader { * @param mixed the optional parameters * @param string an optional object name * @return void - */ + */ function library($library = '', $params = NULL, $object_name = NULL) { - if ($library == '') + if (is_array($library)) + { + foreach($library as $read) + { + $this->library($read); + } + + return; + } + + if ($library == '' OR isset($this->_base_classes[$library])) { return FALSE; } - if ( ! is_null($params) AND ! is_array($params)) + if ( ! is_null($params) && ! is_array($params)) { $params = NULL; } @@ -95,12 +108,10 @@ class CI_Loader { { $this->_ci_load_class($library, $params, $object_name); } - - $this->_ci_assign_to_models(); } // -------------------------------------------------------------------- - + /** * Model Loader * @@ -111,14 +122,14 @@ class CI_Loader { * @param string name for the model * @param bool database connection * @return void - */ + */ function model($model, $name = '', $db_conn = FALSE) - { + { if (is_array($model)) { foreach($model as $babe) { - $this->model($babe); + $this->model($babe); } return; } @@ -127,68 +138,75 @@ class CI_Loader { { return; } - + + $path = ''; + // Is the model in a sub-folder? If so, parse out the filename and path. - if (strpos($model, '/') === FALSE) + if (($last_slash = strrpos($model, '/')) !== FALSE) { - $path = ''; - } - else - { - $x = explode('/', $model); - $model = end($x); - unset($x[count($x)-1]); - $path = implode('/', $x).'/'; + // The path is in front of the last slash + $path = substr($model, 0, $last_slash + 1); + + // And the model name behind it + $model = substr($model, $last_slash + 1); } - + if ($name == '') { $name = $model; } - + if (in_array($name, $this->_ci_models, TRUE)) { return; } - + $CI =& get_instance(); if (isset($CI->$name)) { show_error('The model name you are loading is the name of a resource that is already being used: '.$name); } - + $model = strtolower($model); - - if ( ! file_exists(APPPATH.'models/'.$path.$model.EXT)) - { - show_error('Unable to locate the model you have specified: '.$model); - } - - if ($db_conn !== FALSE AND ! class_exists('CI_DB')) - { - if ($db_conn === TRUE) - $db_conn = ''; - - $CI->load->database($db_conn, FALSE, TRUE); - } - - if ( ! class_exists('Model')) + + foreach ($this->_ci_model_paths as $mod_path) { - load_class('Model', FALSE); - } + if ( ! file_exists($mod_path.'models/'.$path.$model.EXT)) + { + continue; + } - require_once(APPPATH.'models/'.$path.$model.EXT); + if ($db_conn !== FALSE AND ! class_exists('CI_DB')) + { + if ($db_conn === TRUE) + { + $db_conn = ''; + } + + $CI->load->database($db_conn, FALSE, TRUE); + } + + if ( ! class_exists('CI_Model')) + { + load_class('Model', 'core'); + } + + require_once($mod_path.'models/'.$path.$model.EXT); + + $model = ucfirst($model); - $model = ucfirst($model); - - $CI->$name = new $model(); - $CI->$name->_assign_libraries(); - - $this->_ci_models[] = $name; + $CI->$name = new $model(); + + $this->_ci_models[] = $name; + return; + } + + // couldn't find the model + show_error('Unable to locate the model you have specified: '.$model); } - + // -------------------------------------------------------------------- - + /** * Database Loader * @@ -197,94 +215,87 @@ class CI_Loader { * @param bool whether to return the DB object * @param bool whether to enable active record (this allows us to override the config setting) * @return object - */ - function database($params = '', $return = FALSE, $active_record = FALSE) + */ + function database($params = '', $return = FALSE, $active_record = NULL) { // Grab the super object $CI =& get_instance(); - + // Do we even need to load the database class? - if (class_exists('CI_DB') AND $return == FALSE AND $active_record == FALSE AND isset($CI->db) AND is_object($CI->db)) + if (class_exists('CI_DB') AND $return == FALSE AND $active_record == NULL AND isset($CI->db) AND is_object($CI->db)) { return FALSE; - } - + } + require_once(BASEPATH.'database/DB'.EXT); if ($return === TRUE) { return DB($params, $active_record); } - - // Initialize the db variable. Needed to prevent + + // Initialize the db variable. Needed to prevent // reference errors with some configurations $CI->db = ''; - + // Load the DB class - $CI->db =& DB($params, $active_record); - - // Assign the DB object to any existing models - $this->_ci_assign_to_models(); + $CI->db =& DB($params, $active_record); } - + // -------------------------------------------------------------------- /** * Load the Utilities Class * * @access public - * @return string - */ + * @return string + */ function dbutil() { if ( ! class_exists('CI_DB')) { $this->database(); } - + $CI =& get_instance(); // for backwards compatibility, load dbforge so we can extend dbutils off it // this use is deprecated and strongly discouraged $CI->load->dbforge(); - + require_once(BASEPATH.'database/DB_utility'.EXT); require_once(BASEPATH.'database/drivers/'.$CI->db->dbdriver.'/'.$CI->db->dbdriver.'_utility'.EXT); $class = 'CI_DB_'.$CI->db->dbdriver.'_utility'; - $CI->dbutil =& instantiate_class(new $class()); - - $CI->load->_ci_assign_to_models(); + $CI->dbutil = new $class(); } - + // -------------------------------------------------------------------- /** * Load the Database Forge Class * * @access public - * @return string - */ + * @return string + */ function dbforge() { if ( ! class_exists('CI_DB')) { $this->database(); } - + $CI =& get_instance(); - + require_once(BASEPATH.'database/DB_forge'.EXT); require_once(BASEPATH.'database/drivers/'.$CI->db->dbdriver.'/'.$CI->db->dbdriver.'_forge'.EXT); $class = 'CI_DB_'.$CI->db->dbdriver.'_forge'; $CI->dbforge = new $class(); - - $CI->load->_ci_assign_to_models(); } - + // -------------------------------------------------------------------- - + /** * Load View * @@ -306,9 +317,9 @@ class CI_Loader { { return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_object_to_array($vars), '_ci_return' => $return)); } - + // -------------------------------------------------------------------- - + /** * Load File * @@ -323,9 +334,9 @@ class CI_Loader { { return $this->_ci_load(array('_ci_path' => $path, '_ci_return' => $return)); } - + // -------------------------------------------------------------------- - + /** * Set Variables * @@ -342,9 +353,9 @@ class CI_Loader { { $vars = array($vars => $val); } - + $vars = $this->_ci_object_to_array($vars); - + if (is_array($vars) AND count($vars) > 0) { foreach ($vars as $key => $val) @@ -353,9 +364,9 @@ class CI_Loader { } } } - + // -------------------------------------------------------------------- - + /** * Load Helper * @@ -367,58 +378,56 @@ class CI_Loader { */ function helper($helpers = array()) { - if ( ! is_array($helpers)) + foreach ($this->_ci_prep_filename($helpers, '_helper') as $helper) { - $helpers = array($helpers); - } - - foreach ($helpers as $helper) - { - $helper = strtolower(str_replace(EXT, '', str_replace('_helper', '', $helper)).'_helper'); - if (isset($this->_ci_helpers[$helper])) { continue; } - + $ext_helper = APPPATH.'helpers/'.config_item('subclass_prefix').$helper.EXT; - // Is this a helper extension request? + // Is this a helper extension request? if (file_exists($ext_helper)) { $base_helper = BASEPATH.'helpers/'.$helper.EXT; - + if ( ! file_exists($base_helper)) { show_error('Unable to load the requested file: helpers/'.$helper.EXT); } - + include_once($ext_helper); include_once($base_helper); + + $this->_ci_helpers[$helper] = TRUE; + log_message('debug', 'Helper loaded: '.$helper); + continue; } - elseif (file_exists(APPPATH.'helpers/'.$helper.EXT)) - { - include_once(APPPATH.'helpers/'.$helper.EXT); - } - else - { - if (file_exists(BASEPATH.'helpers/'.$helper.EXT)) - { - include_once(BASEPATH.'helpers/'.$helper.EXT); - } - else + + // Try to load the helper + foreach ($this->_ci_helper_paths as $path) + { + if (file_exists($path.'helpers/'.$helper.EXT)) { - show_error('Unable to load the requested file: helpers/'.$helper.EXT); + include_once($path.'helpers/'.$helper.EXT); + + $this->_ci_helpers[$helper] = TRUE; + log_message('debug', 'Helper loaded: '.$helper); + break; } } - $this->_ci_helpers[$helper] = TRUE; - log_message('debug', 'Helper loaded: '.$helper); - } + // unable to load the helper + if ( ! isset($this->_ci_helpers[$helper])) + { + show_error('Unable to load the requested file: helpers/'.$helper.EXT); + } + } } - + // -------------------------------------------------------------------- - + /** * Load Helpers * @@ -433,156 +442,167 @@ class CI_Loader { { $this->helper($helpers); } - + // -------------------------------------------------------------------- - + /** - * Load Plugin - * - * This function loads the specified plugin. + * Loads a language file * * @access public * @param array + * @param string * @return void */ - function plugin($plugins = array()) + function language($file = array(), $lang = '') { - if ( ! is_array($plugins)) + $CI =& get_instance(); + + if ( ! is_array($file)) { - $plugins = array($plugins); + $file = array($file); } - - foreach ($plugins as $plugin) - { - $plugin = strtolower(str_replace(EXT, '', str_replace('_pi', '', $plugin)).'_pi'); - if (isset($this->_ci_plugins[$plugin])) - { - continue; - } - - if (file_exists(APPPATH.'plugins/'.$plugin.EXT)) - { - include_once(APPPATH.'plugins/'.$plugin.EXT); - } - else - { - if (file_exists(BASEPATH.'plugins/'.$plugin.EXT)) - { - include_once(BASEPATH.'plugins/'.$plugin.EXT); - } - else - { - show_error('Unable to load the requested file: plugins/'.$plugin.EXT); - } - } - - $this->_ci_plugins[$plugin] = TRUE; - log_message('debug', 'Plugin loaded: '.$plugin); - } + foreach ($file as $langfile) + { + $CI->lang->load($langfile, $lang); + } } // -------------------------------------------------------------------- - + /** - * Load Plugins - * - * This is simply an alias to the above function in case the - * user has written the plural form of this function. + * Loads a config file * * @access public - * @param array + * @param string * @return void */ - function plugins($plugins = array()) + function config($file = '', $use_sections = FALSE, $fail_gracefully = FALSE) { - $this->plugin($plugins); + $CI =& get_instance(); + $CI->config->load($file, $use_sections, $fail_gracefully); } - + // -------------------------------------------------------------------- - + /** - * Loads a language file + * Driver * - * @access public - * @param array - * @param string + * Loads a driver library + * + * @param string the name of the class + * @param mixed the optional parameters + * @param string an optional object name * @return void */ - function language($file = array(), $lang = '') + function driver($library = '', $params = NULL, $object_name = NULL) { - $CI =& get_instance(); - - if ( ! is_array($file)) + if ( ! class_exists('CI_Driver_Library')) { - $file = array($file); + // we aren't instantiating an object here, that'll be done by the Library itself + require BASEPATH.'libraries/Driver'.EXT; } - foreach ($file as $langfile) - { - $CI->lang->load($langfile, $lang); + // We can save the loader some time since Drivers will *always* be in a subfolder, + // and typically identically named to the library + if ( ! strpos($library, '/')) + { + $library = ucfirst($library).'/'.$library; } + + return $this->library($library, $params, $object_name); } + // -------------------------------------------------------------------- + /** - * Loads language files for scaffolding + * Add Package Path + * + * Prepends a parent path to the library, model, helper, and config path arrays * * @access public * @param string - * @return arra + * @return void */ - function scaffold_language($file = '', $lang = '', $return = FALSE) + function add_package_path($path) { - $CI =& get_instance(); - return $CI->lang->load($file, $lang, $return); + $path = rtrim($path, '/').'/'; + + array_unshift($this->_ci_library_paths, $path); + array_unshift($this->_ci_model_paths, $path); + array_unshift($this->_ci_helper_paths, $path); + + // Add config file path + $config =& $this->_ci_get_component('config'); + array_unshift($config->_config_paths, $path); } - + // -------------------------------------------------------------------- - + /** - * Loads a config file + * Get Package Paths + * + * Return a list of all package paths, by default it will ignore BASEPATH. * * @access public * @param string * @return void */ - function config($file = '', $use_sections = FALSE, $fail_gracefully = FALSE) - { - $CI =& get_instance(); - $CI->config->load($file, $use_sections, $fail_gracefully); + function get_package_paths($include_base = FALSE) + { + return $include_base === TRUE ? $this->_ci_library_paths : $this->_ci_model_paths; } // -------------------------------------------------------------------- - + /** - * Scaffolding Loader + * Remove Package Path * - * This initializing function works a bit different than the - * others. It doesn't load the class. Instead, it simply - * sets a flag indicating that scaffolding is allowed to be - * used. The actual scaffolding function below is - * called by the front controller based on whether the - * second segment of the URL matches the "secret" scaffolding - * word stored in the application/config/routes.php + * Remove a path from the library, model, and helper path arrays if it exists + * If no path is provided, the most recently added path is removed. * * @access public - * @param string - * @return void - */ - function scaffolding($table = '') - { - if ($table === FALSE) + * @param type + * @return type + */ + function remove_package_path($path = '', $remove_config_path = TRUE) + { + $config =& $this->_ci_get_component('config'); + + if ($path == '') { - show_error('You must include the name of the table you would like to access when you initialize scaffolding'); + $void = array_shift($this->_ci_library_paths); + $void = array_shift($this->_ci_model_paths); + $void = array_shift($this->_ci_helper_paths); + $void = array_shift($config->_config_paths); } - - $CI =& get_instance(); - $CI->_ci_scaffolding = TRUE; - $CI->_ci_scaff_table = $table; + else + { + $path = rtrim($path, '/').'/'; + + foreach (array('_ci_library_paths', '_ci_model_paths', '_ci_helper_paths') as $var) + { + if (($key = array_search($path, $this->{$var})) !== FALSE) + { + unset($this->{$var}[$key]); + } + } + + if (($key = array_search($path, $config->_config_paths)) !== FALSE) + { + unset($config->_config_paths[$key]); + } + } + + // make sure the application default paths are still in the array + $this->_ci_library_paths = array_unique(array_merge($this->_ci_library_paths, array(APPPATH, BASEPATH))); + $this->_ci_helper_paths = array_unique(array_merge($this->_ci_helper_paths, array(APPPATH, BASEPATH))); + $this->_ci_model_paths = array_unique(array_merge($this->_ci_model_paths, array(APPPATH))); + $config->_config_paths = array_unique(array_merge($config->_config_paths, array(APPPATH))); } // -------------------------------------------------------------------- - + /** * Loader * @@ -614,25 +634,21 @@ class CI_Loader { $_ci_x = explode('/', $_ci_path); $_ci_file = end($_ci_x); } - + if ( ! file_exists($_ci_path)) { show_error('Unable to load the requested file: '.$_ci_file); } - + // This allows anything loaded using $this->load (views, files, etc.) // to become accessible from within the Controller and Model functions. - // Only needed when running PHP 5 - - if ($this->_ci_is_instance()) + + $_ci_CI =& get_instance(); + foreach (get_object_vars($_ci_CI) as $_ci_key => $_ci_var) { - $_ci_CI =& get_instance(); - foreach (get_object_vars($_ci_CI) as $_ci_key => $_ci_var) + if ( ! isset($this->$_ci_key)) { - if ( ! isset($this->$_ci_key)) - { - $this->$_ci_key =& $_ci_CI->$_ci_key; - } + $this->$_ci_key =& $_ci_CI->$_ci_key; } } @@ -643,13 +659,13 @@ class CI_Loader { * function or via the second parameter of this function. We'll merge * the two types and cache them so that views that are embedded within * other views can have access to these variables. - */ + */ if (is_array($_ci_vars)) { $this->_ci_cached_vars = array_merge($this->_ci_cached_vars, $_ci_vars); } extract($this->_ci_cached_vars); - + /* * Buffer the output * @@ -663,11 +679,11 @@ class CI_Loader { * the browser and then stop the timer it won't be accurate. */ ob_start(); - + // If the PHP installation does not support short tags we'll // do a little string replacement, changing the short tags // to standard PHP echo statements. - + if ((bool) @ini_get('short_open_tag') === FALSE AND config_item('rewrite_short_tags') == TRUE) { echo eval('?>'.preg_replace("/;*\s*\?>/", "; ?>", str_replace('<?=', '<?php echo ', file_get_contents($_ci_path)))); @@ -676,12 +692,12 @@ class CI_Loader { { include($_ci_path); // include() vs include_once() allows for multiple views with the same name } - + log_message('debug', 'File loaded: '.$_ci_path); - + // Return the file data if requested if ($_ci_return === TRUE) - { + { $buffer = ob_get_contents(); @ob_end_clean(); return $buffer; @@ -696,16 +712,14 @@ class CI_Loader { * it can be seen and included properly by the first included * template and any subsequent ones. Oy! * - */ + */ if (ob_get_level() > $this->_ci_ob_level + 1) { ob_end_flush(); } else { - // PHP 4 requires that we use a global - global $OUT; - $OUT->append_output(ob_get_contents()); + $_ci_CI->output->append_output(ob_get_contents()); @ob_end_clean(); } } @@ -718,34 +732,28 @@ class CI_Loader { * This function loads the requested class. * * @access private - * @param string the item that is being loaded + * @param string the item that is being loaded * @param mixed any additional parameters * @param string an optional object name - * @return void + * @return void */ function _ci_load_class($class, $params = NULL, $object_name = NULL) - { - // Get the class name, and while we're at it trim any slashes. - // The directory path can be included as part of the class name, + { + // Get the class name, and while we're at it trim any slashes. + // The directory path can be included as part of the class name, // but we don't want a leading slash $class = str_replace(EXT, '', trim($class, '/')); - + // Was the path included with the class name? // We look for a slash to determine this $subdir = ''; - if (strpos($class, '/') !== FALSE) + if (($last_slash = strrpos($class, '/')) !== FALSE) { - // explode the path so we can separate the filename from the path - $x = explode('/', $class); - - // Reset the $class variable now that we know the actual filename - $class = end($x); - - // Kill the filename from the array - unset($x[count($x)-1]); - - // Glue the path back together, sans filename - $subdir = implode($x, '/').'/'; + // Extract the path + $subdir = substr($class, 0, $last_slash + 1); + + // Get the filename from the path + $class = substr($class, $last_slash + 1); } // We'll test for both lowercase and capitalized versions of the file name @@ -753,11 +761,11 @@ class CI_Loader { { $subclass = APPPATH.'libraries/'.$subdir.config_item('subclass_prefix').$class.EXT; - // Is this a class extension request? + // Is this a class extension request? if (file_exists($subclass)) { $baseclass = BASEPATH.'libraries/'.ucfirst($class).EXT; - + if ( ! file_exists($baseclass)) { log_message('error', "Unable to load the requested class: ".$class); @@ -775,35 +783,34 @@ class CI_Loader { $CI =& get_instance(); if ( ! isset($CI->$object_name)) { - return $this->_ci_init_class($class, config_item('subclass_prefix'), $params, $object_name); + return $this->_ci_init_class($class, config_item('subclass_prefix'), $params, $object_name); } } - + $is_duplicate = TRUE; log_message('debug', $class." class already loaded. Second attempt ignored."); return; } - - include_once($baseclass); + + include_once($baseclass); include_once($subclass); $this->_ci_loaded_files[] = $subclass; - - return $this->_ci_init_class($class, config_item('subclass_prefix'), $params, $object_name); + + return $this->_ci_init_class($class, config_item('subclass_prefix'), $params, $object_name); } - + // Lets search for the requested library file and load it. - $is_duplicate = FALSE; - for ($i = 1; $i < 3; $i++) + $is_duplicate = FALSE; + foreach ($this->_ci_library_paths as $path) { - $path = ($i % 2) ? APPPATH : BASEPATH; $filepath = $path.'libraries/'.$subdir.$class.EXT; - + // Does the file exist? No? Bummer... if ( ! file_exists($filepath)) { continue; } - + // Safety: Was the class already loaded by a previous call? if (in_array($filepath, $this->_ci_loaded_files)) { @@ -818,16 +825,17 @@ class CI_Loader { return $this->_ci_init_class($class, '', $params, $object_name); } } - + $is_duplicate = TRUE; log_message('debug', $class." class already loaded. Second attempt ignored."); return; } - + include_once($filepath); $this->_ci_loaded_files[] = $filepath; return $this->_ci_init_class($class, '', $params, $object_name); } + } // END FOREACH // One last attempt. Maybe the library is in a subdirectory, but it wasn't specified? @@ -836,7 +844,7 @@ class CI_Loader { $path = strtolower($class).'/'.$class; return $this->_ci_load_class($path, $params); } - + // If we got this far we were unable to find the requested class. // We do not issue errors if the load call failed due to a duplicate request if ($is_duplicate == FALSE) @@ -845,7 +853,7 @@ class CI_Loader { show_error("Unable to load the requested class: ".$class); } } - + // -------------------------------------------------------------------- /** @@ -858,29 +866,42 @@ class CI_Loader { * @return null */ function _ci_init_class($class, $prefix = '', $config = FALSE, $object_name = NULL) - { - // Is there an associated config file for this class? + { + // Is there an associated config file for this class? Note: these should always be lowercase if ($config === NULL) { - // We test for both uppercase and lowercase, for servers that - // are case-sensitive with regard to file names - if (file_exists(APPPATH.'config/'.strtolower($class).EXT)) - { - include_once(APPPATH.'config/'.strtolower($class).EXT); - } - elseif (file_exists(APPPATH.'config/'.ucfirst(strtolower($class)).EXT)) + // Fetch the config paths containing any package paths + $config_component = $this->_ci_get_component('config'); + + if (is_array($config_component->_config_paths)) { - include_once(APPPATH.'config/'.ucfirst(strtolower($class)).EXT); + // Break on the first found file, thus package files + // are not overridden by default paths + foreach ($config_component->_config_paths as $path) + { + // We test for both uppercase and lowercase, for servers that + // are case-sensitive with regard to file names + if (file_exists($path .'config/'.strtolower($class).EXT)) + { + include_once($path .'config/'.strtolower($class).EXT); + break; + } + elseif (file_exists($path .'config/'.ucfirst(strtolower($class)).EXT)) + { + include_once($path .'config/'.ucfirst(strtolower($class)).EXT); + break; + } + } } } - + if ($prefix == '') - { - if (class_exists('CI_'.$class)) + { + if (class_exists('CI_'.$class)) { $name = 'CI_'.$class; } - elseif (class_exists(config_item('subclass_prefix').$class)) + elseif (class_exists(config_item('subclass_prefix').$class)) { $name = config_item('subclass_prefix').$class; } @@ -893,18 +914,18 @@ class CI_Loader { { $name = $prefix.$class; } - + // Is the class name valid? if ( ! class_exists($name)) { log_message('error', "Non-existent class: ".$name); show_error("Non-existent class: ".$class); } - + // Set the variable name we will assign the class to // Was a custom class name supplied? If so we'll use it $class = strtolower($class); - + if (is_null($object_name)) { $classvar = ( ! isset($this->_ci_varmap[$class])) ? $class : $this->_ci_varmap[$class]; @@ -914,68 +935,77 @@ class CI_Loader { $classvar = $object_name; } - // Save the class name and object name + // Save the class name and object name $this->_ci_classes[$class] = $classvar; - // Instantiate the class + // Instantiate the class $CI =& get_instance(); if ($config !== NULL) { $CI->$classvar = new $name($config); } else - { + { $CI->$classvar = new $name; - } - } - + } + } + // -------------------------------------------------------------------- - + /** * Autoloader * * The config/autoload.php file contains an array that permits sub-systems, - * libraries, plugins, and helpers to be loaded automatically. + * libraries, and helpers to be loaded automatically. * * @access private * @param array * @return void */ function _ci_autoloader() - { + { include_once(APPPATH.'config/autoload'.EXT); - + if ( ! isset($autoload)) { return FALSE; } - + + // Autoload packages + if (isset($autoload['packages'])) + { + foreach ($autoload['packages'] as $package_path) + { + $this->add_package_path($package_path); + } + } + // Load any custom config file if (count($autoload['config']) > 0) - { + { $CI =& get_instance(); foreach ($autoload['config'] as $key => $val) { $CI->config->load($val); } - } + } - // Autoload plugins, helpers and languages - foreach (array('helper', 'plugin', 'language') as $type) - { + // Autoload helpers and languages + foreach (array('helper', 'language') as $type) + { if (isset($autoload[$type]) AND count($autoload[$type]) > 0) { $this->$type($autoload[$type]); - } + } } // A little tweak to remain backward compatible // The $autoload['core'] item was deprecated - if ( ! isset($autoload['libraries'])) + if ( ! isset($autoload['libraries']) AND isset($autoload['core'])) { $autoload['libraries'] = $autoload['core']; } - + // Load libraries if (isset($autoload['libraries']) AND count($autoload['libraries']) > 0) { @@ -986,100 +1016,80 @@ class CI_Loader { $autoload['libraries'] = array_diff($autoload['libraries'], array('database')); } - // Load scaffolding - if (in_array('scaffolding', $autoload['libraries'])) - { - $this->scaffolding(); - $autoload['libraries'] = array_diff($autoload['libraries'], array('scaffolding')); - } - // Load all other libraries foreach ($autoload['libraries'] as $item) { $this->library($item); } - } + } // Autoload models if (isset($autoload['model'])) { $this->model($autoload['model']); } - } - + // -------------------------------------------------------------------- /** - * Assign to Models + * Object to Array * - * Makes sure that anything loaded by the loader class (libraries, plugins, etc.) - * will be available to models, if any exist. + * Takes an object as input and converts the class variables to array key/vals * * @access private * @param object * @return array */ - function _ci_assign_to_models() + function _ci_object_to_array($object) { - if (count($this->_ci_models) == 0) - { - return; - } - - if ($this->_ci_is_instance()) - { - $CI =& get_instance(); - foreach ($this->_ci_models as $model) - { - $CI->$model->_assign_libraries(); - } - } - else - { - foreach ($this->_ci_models as $model) - { - $this->$model->_assign_libraries(); - } - } - } + return (is_object($object)) ? get_object_vars($object) : $object; + } // -------------------------------------------------------------------- /** - * Object to Array - * - * Takes an object as input and converts the class variables to array key/vals + * Get a reference to a specific library or model * * @access private - * @param object - * @return array + * @return bool */ - function _ci_object_to_array($object) + function &_ci_get_component($component) { - return (is_object($object)) ? get_object_vars($object) : $object; + $CI =& get_instance(); + return $CI->$component; } // -------------------------------------------------------------------- /** - * Determines whether we should use the CI instance or $this + * Prep filename + * + * This function preps the name of various items to make loading them more reliable. * * @access private - * @return bool + * @param mixed + * @return array */ - function _ci_is_instance() + function _ci_prep_filename($filename, $extension) { - if ($this->_ci_is_php5 == TRUE) + if ( ! is_array($filename)) { - return TRUE; + return array(strtolower(str_replace(EXT, '', str_replace($extension, '', $filename)).$extension)); + } + else + { + foreach ($filename as $key => $val) + { + $filename[$key] = strtolower(str_replace(EXT, '', str_replace($extension, '', $val)).$extension); + } + + return $filename; } - - global $CI; - return (is_object($CI)) ? TRUE : FALSE; } + } /* End of file Loader.php */ -/* Location: ./system/libraries/Loader.php */
\ No newline at end of file +/* Location: ./system/core/Loader.php */
\ No newline at end of file diff --git a/system/core/Model.php b/system/core/Model.php new file mode 100755 index 000000000..8566a0b66 --- /dev/null +++ b/system/core/Model.php @@ -0,0 +1,56 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter Model Class + * + * @package CodeIgniter + * @subpackage Libraries + * @category Libraries + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/libraries/config.html + */ +class CI_Model { + + /** + * Constructor + * + * @access public + */ + function __construct() + { + log_message('debug', "Model Class Initialized"); + } + + /** + * __get + * + * Allows models to access CI's loaded classes using the same + * syntax as controllers. + * + * @access private + */ + function __get($key) + { + $CI =& get_instance(); + return $CI->$key; + } +} +// END Model Class + +/* End of file Model.php */ +/* Location: ./system/core/Model.php */
\ No newline at end of file diff --git a/system/libraries/Output.php b/system/core/Output.php index f320b4142..7fb9f7916 100644..100755 --- a/system/libraries/Output.php +++ b/system/core/Output.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -30,17 +30,22 @@ class CI_Output { var $final_output; var $cache_expiration = 0; - var $headers = array(); - var $enable_profiler = FALSE; + var $headers = array(); + var $enable_profiler = FALSE; + var $parse_exec_vars = TRUE; // whether or not to parse variables like {elapsed_time} and {memory_usage} + var $_zlib_oc = FALSE; + var $_profiler_sections = array(); - function CI_Output() + function __construct() { + $this->_zlib_oc = @ini_get('zlib.output_compression'); + log_message('debug', "Output Class Initialized"); } - + // -------------------------------------------------------------------- - + /** * Get Output * @@ -48,14 +53,14 @@ class CI_Output { * * @access public * @return string - */ + */ function get_output() { return $this->final_output; } - + // -------------------------------------------------------------------- - + /** * Set Output * @@ -64,7 +69,7 @@ class CI_Output { * @access public * @param string * @return void - */ + */ function set_output($output) { $this->final_output = $output; @@ -80,7 +85,7 @@ class CI_Output { * @access public * @param string * @return void - */ + */ function append_output($output) { if ($this->final_output == '') @@ -106,58 +111,87 @@ class CI_Output { * @access public * @param string * @return void - */ + */ function set_header($header, $replace = TRUE) { + // If zlib.output_compression is enabled it will compress the output, + // but it will not modify the content-length header to compensate for + // the reduction, causing the browser to hang waiting for more data. + // We'll just skip content-length in those cases. + + if ($this->_zlib_oc && strncasecmp($header, 'content-length', 14) == 0) + { + return; + } + $this->headers[] = array($header, $replace); } // -------------------------------------------------------------------- - + /** * Set HTTP Status Header * moved to Common procedural functions in 1.7.2 - * + * * @access public - * @param int the status code - * @param string + * @param int the status code + * @param string * @return void - */ - function set_status_header($code = '200', $text = '') + */ + function set_status_header($code = 200, $text = '') { set_status_header($code, $text); } - + // -------------------------------------------------------------------- - + /** * Enable/disable Profiler * * @access public * @param bool * @return void - */ + */ function enable_profiler($val = TRUE) { $this->enable_profiler = (is_bool($val)) ? $val : TRUE; } - + + // -------------------------------------------------------------------- + + /** + * Set Profiler Sections + * + * Allows override of default / config settings for Profiler section display + * + * @access public + * @param array + * @return void + */ + function set_profiler_sections($sections) + { + foreach ($sections as $section => $enable) + { + $this->_profiler_sections[$section] = ($enable !== FALSE) ? TRUE : FALSE; + } + } + // -------------------------------------------------------------------- - + /** * Set Cache * * @access public * @param integer * @return void - */ + */ function cache($time) { $this->cache_expiration = ( ! is_numeric($time)) ? 0 : $time; } - + // -------------------------------------------------------------------- - + /** * Display Output * @@ -171,45 +205,57 @@ class CI_Output { * * @access public * @return mixed - */ + */ function _display($output = '') - { + { // Note: We use globals because we can't use $CI =& get_instance() // since this function is sometimes called by the caching mechanism, // which happens before the CI super object is available. global $BM, $CFG; - + + // Grab the super object if we can. + if (class_exists('CI_Controller')) + { + $CI =& get_instance(); + } + // -------------------------------------------------------------------- - + // Set the output data if ($output == '') { $output =& $this->final_output; } - + // -------------------------------------------------------------------- - - // Do we need to write a cache file? - if ($this->cache_expiration > 0) + + // Do we need to write a cache file? Only if the controller does not have its + // own _output() method and we are not dealing with a cache file, which we + // can determine by the existence of the $CI object above + if ($this->cache_expiration > 0 && isset($CI) && ! method_exists($CI, '_output')) { $this->_write_cache($output); } - + // -------------------------------------------------------------------- // Parse out the elapsed time and memory usage, // then swap the pseudo-variables with the data - $elapsed = $BM->elapsed_time('total_execution_time_start', 'total_execution_time_end'); - $output = str_replace('{elapsed_time}', $elapsed, $output); - - $memory = ( ! function_exists('memory_get_usage')) ? '0' : round(memory_get_usage()/1024/1024, 2).'MB'; - $output = str_replace('{memory_usage}', $memory, $output); + $elapsed = $BM->elapsed_time('total_execution_time_start', 'total_execution_time_end'); + + if ($this->parse_exec_vars === TRUE) + { + $memory = ( ! function_exists('memory_get_usage')) ? '0' : round(memory_get_usage()/1024/1024, 2).'MB'; + + $output = str_replace('{elapsed_time}', $elapsed, $output); + $output = str_replace('{memory_usage}', $memory, $output); + } // -------------------------------------------------------------------- - + // Is compression requested? - if ($CFG->item('compress_output') === TRUE) + if ($CFG->item('compress_output') === TRUE && $this->_zlib_oc == FALSE) { if (extension_loaded('zlib')) { @@ -221,7 +267,7 @@ class CI_Output { } // -------------------------------------------------------------------- - + // Are there any server headers to send? if (count($this->headers) > 0) { @@ -229,32 +275,34 @@ class CI_Output { { @header($header[0], $header[1]); } - } + } // -------------------------------------------------------------------- - - // Does the get_instance() function exist? + + // Does the $CI object exist? // If not we know we are dealing with a cache file so we'll // simply echo out the data and exit. - if ( ! function_exists('get_instance')) + if ( ! isset($CI)) { echo $output; log_message('debug', "Final output sent to browser"); log_message('debug', "Total execution time: ".$elapsed); return TRUE; } - + // -------------------------------------------------------------------- - // Grab the super object. We'll need it in a moment... - $CI =& get_instance(); - // Do we need to generate profile data? // If so, load the Profile class and run it. if ($this->enable_profiler == TRUE) { - $CI->load->library('profiler'); - + $CI->load->library('profiler'); + + if ( ! empty($this->_profiler_sections)) + { + $CI->profiler->set_sections($this->_profiler_sections); + } + // If the output data contains closing </body> and </html> tags // we will remove them and add them back after we insert the profile data if (preg_match("|</body>.*?</html>|is", $output)) @@ -268,7 +316,7 @@ class CI_Output { $output .= $CI->profiler->run(); } } - + // -------------------------------------------------------------------- // Does the controller contain a function named _output()? @@ -281,35 +329,36 @@ class CI_Output { { echo $output; // Send it to the browser! } - + log_message('debug', "Final output sent to browser"); - log_message('debug', "Total execution time: ".$elapsed); + log_message('debug', "Total execution time: ".$elapsed); } - + // -------------------------------------------------------------------- - + /** * Write a Cache File * * @access public * @return void - */ + */ function _write_cache($output) { - $CI =& get_instance(); + $CI =& get_instance(); $path = $CI->config->item('cache_path'); - - $cache_path = ($path == '') ? BASEPATH.'cache/' : $path; - + + $cache_path = ($path == '') ? APPPATH.'cache/' : $path; + if ( ! is_dir($cache_path) OR ! is_really_writable($cache_path)) { + log_message('error', "Unable to write cache file: ".$cache_path); return; } - + $uri = $CI->config->item('base_url'). $CI->config->item('index_page'). $CI->uri->uri_string(); - + $cache_path .= md5($uri); if ( ! $fp = @fopen($cache_path, FOPEN_WRITE_CREATE_DESTRUCTIVE)) @@ -317,9 +366,9 @@ class CI_Output { log_message('error', "Unable to write cache file: ".$cache_path); return; } - + $expire = time() + ($this->cache_expiration * 60); - + if (flock($fp, LOCK_EX)) { fwrite($fp, $expire.'TS--->'.$output); @@ -331,73 +380,71 @@ class CI_Output { return; } fclose($fp); - @chmod($cache_path, DIR_WRITE_MODE); + @chmod($cache_path, FILE_WRITE_MODE); log_message('debug', "Cache file written: ".$cache_path); } // -------------------------------------------------------------------- - + /** * Update/serve a cached file * * @access public * @return void - */ + */ function _display_cache(&$CFG, &$URI) { - $cache_path = ($CFG->item('cache_path') == '') ? BASEPATH.'cache/' : $CFG->item('cache_path'); - - if ( ! is_dir($cache_path) OR ! is_really_writable($cache_path)) - { - return FALSE; - } - + $cache_path = ($CFG->item('cache_path') == '') ? APPPATH.'cache/' : $CFG->item('cache_path'); + // Build the file path. The file name is an MD5 hash of the full URI $uri = $CFG->item('base_url'). $CFG->item('index_page'). $URI->uri_string; - + $filepath = $cache_path.md5($uri); - + if ( ! @file_exists($filepath)) { return FALSE; } - + if ( ! $fp = @fopen($filepath, FOPEN_READ)) { return FALSE; } - + flock($fp, LOCK_SH); - + $cache = ''; if (filesize($filepath) > 0) { $cache = fread($fp, filesize($filepath)); } - + flock($fp, LOCK_UN); fclose($fp); - - // Strip out the embedded timestamp + + // Strip out the embedded timestamp if ( ! preg_match("/(\d+TS--->)/", $cache, $match)) { return FALSE; } - + // Has the file expired? If so we'll delete it. if (time() >= trim(str_replace('TS--->', '', $match['1']))) - { - @unlink($filepath); - log_message('debug', "Cache file has expired. File deleted"); - return FALSE; + { + if (is_really_writable($cache_path)) + { + @unlink($filepath); + log_message('debug', "Cache file has expired. File deleted"); + return FALSE; + } } // Display the cache $this->_display(str_replace($match['0'], '', $cache)); - log_message('debug', "Cache file is current. Sending it to browser."); + log_message('debug', "Cache file is current. Sending it to browser."); return TRUE; } @@ -406,4 +453,4 @@ class CI_Output { // END Output Class /* End of file Output.php */ -/* Location: ./system/libraries/Output.php */
\ No newline at end of file +/* Location: ./system/core/Output.php */
\ No newline at end of file diff --git a/system/libraries/Router.php b/system/core/Router.php index 7dbad0374..7be508fef 100644..100755 --- a/system/libraries/Router.php +++ b/system/core/Router.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -28,31 +28,28 @@ */ class CI_Router { - var $config; - var $routes = array(); + var $config; + var $routes = array(); var $error_routes = array(); var $class = ''; var $method = 'index'; var $directory = ''; - var $uri_protocol = 'auto'; var $default_controller; - var $scaffolding_request = FALSE; // Must be set to FALSE - + /** * Constructor * * Runs the route mapping function. */ - function CI_Router() + function __construct() { - $this->config =& load_class('Config'); - $this->uri =& load_class('URI'); - $this->_set_routing(); + $this->config =& load_class('Config', 'core'); + $this->uri =& load_class('URI', 'core'); log_message('debug', "Router Class Initialized"); } - + // -------------------------------------------------------------------- - + /** * Set the route mapping * @@ -64,20 +61,31 @@ class CI_Router { */ function _set_routing() { - // Are query strings enabled in the config file? - // If so, we're done since segment based URIs are not used with query strings. + // Are query strings enabled in the config file? Normally CI doesn't utilize query strings + // since URI segments are more search-engine friendly, but they can optionally be used. + // If this feature is enabled, we will gather the directory/class/method a little differently + $segments = array(); if ($this->config->item('enable_query_strings') === TRUE AND isset($_GET[$this->config->item('controller_trigger')])) { - $this->set_class(trim($this->uri->_filter_uri($_GET[$this->config->item('controller_trigger')]))); + if (isset($_GET[$this->config->item('directory_trigger')])) + { + $this->set_directory(trim($this->uri->_filter_uri($_GET[$this->config->item('directory_trigger')]))); + $segments[] = $this->fetch_directory(); + } + + if (isset($_GET[$this->config->item('controller_trigger')])) + { + $this->set_class(trim($this->uri->_filter_uri($_GET[$this->config->item('controller_trigger')]))); + $segments[] = $this->fetch_class(); + } if (isset($_GET[$this->config->item('function_trigger')])) { $this->set_method(trim($this->uri->_filter_uri($_GET[$this->config->item('function_trigger')]))); + $segments[] = $this->fetch_method(); } - - return; } - + // Load the routes.php file. @include(APPPATH.'config/routes'.EXT); $this->routes = ( ! isset($route) OR ! is_array($route)) ? array() : $route; @@ -85,57 +93,74 @@ class CI_Router { // Set the default controller so we can display it in the event // the URI doesn't correlated to a valid controller. - $this->default_controller = ( ! isset($this->routes['default_controller']) OR $this->routes['default_controller'] == '') ? FALSE : strtolower($this->routes['default_controller']); - + $this->default_controller = ( ! isset($this->routes['default_controller']) OR $this->routes['default_controller'] == '') ? FALSE : strtolower($this->routes['default_controller']); + + // Were there any query string segments? If so, we'll validate them and bail out since we're done. + if (count($segments) > 0) + { + return $this->_validate_request($segments); + } + // Fetch the complete URI string $this->uri->_fetch_uri_string(); - + // Is there a URI string? If not, the default controller specified in the "routes" file will be shown. if ($this->uri->uri_string == '') { - if ($this->default_controller === FALSE) - { - show_error("Unable to determine what should be displayed. A default route has not been specified in the routing file."); - } - - if (strpos($this->default_controller, '/') !== FALSE) - { - $x = explode('/', $this->default_controller); - - $this->set_class(end($x)); - $this->set_method('index'); - $this->_set_request($x); - } - else - { - $this->set_class($this->default_controller); - $this->set_method('index'); - $this->_set_request(array($this->default_controller, 'index')); - } - - // re-index the routed segments array so it starts with 1 rather than 0 - $this->uri->_reindex_segments(); - - log_message('debug', "No URI present. Default controller set."); - return; + return $this->_set_default_controller(); } - unset($this->routes['default_controller']); - + // Do we need to remove the URL suffix? $this->uri->_remove_url_suffix(); - + // Compile the segments into an array $this->uri->_explode_segments(); - + // Parse any custom routing that may exist - $this->_parse_routes(); - + $this->_parse_routes(); + // Re-index the segment array so that it starts with 1 rather than 0 $this->uri->_reindex_segments(); } - + // -------------------------------------------------------------------- - + + /** + * Set the default controller + * + * @access private + * @return void + */ + function _set_default_controller() + { + if ($this->default_controller === FALSE) + { + show_error("Unable to determine what should be displayed. A default route has not been specified in the routing file."); + } + // Is the method being specified? + if (strpos($this->default_controller, '/') !== FALSE) + { + $x = explode('/', $this->default_controller); + + $this->set_class($x[0]); + $this->set_method($x[1]); + $this->_set_request($x); + } + else + { + $this->set_class($this->default_controller); + $this->set_method('index'); + $this->_set_request(array($this->default_controller, 'index')); + } + + // re-index the routed segments array so it starts with 1 rather than 0 + $this->uri->_reindex_segments(); + + log_message('debug', "No URI present. Default controller set."); + } + + // -------------------------------------------------------------------- + /** * Set the Route * @@ -150,27 +175,18 @@ class CI_Router { function _set_request($segments = array()) { $segments = $this->_validate_request($segments); - + if (count($segments) == 0) { - return; + return $this->_set_default_controller(); } - + $this->set_class($segments[0]); - + if (isset($segments[1])) { - // A scaffolding request. No funny business with the URL - if ($this->routes['scaffolding_trigger'] == $segments[1] AND $segments[1] != '_ci_scaffolding') - { - $this->scaffolding_request = TRUE; - unset($this->routes['scaffolding_trigger']); - } - else - { - // A standard method request - $this->set_method($segments[1]); - } + // A standard method request + $this->set_method($segments[1]); } else { @@ -178,15 +194,15 @@ class CI_Router { // index method is being used. $segments[1] = 'index'; } - + // Update our "routed" segment array to contain the segments. // Note: If there is no custom routing, this array will be // identical to $this->uri->segments $this->uri->rsegments = $segments; } - + // -------------------------------------------------------------------- - + /** * Validates the supplied segments. Attempts to determine the path to * the controller. @@ -194,9 +210,14 @@ class CI_Router { * @access private * @param array * @return array - */ + */ function _validate_request($segments) { + if (count($segments) == 0) + { + return $segments; + } + // Does the requested controller exist in the root folder? if (file_exists(APPPATH.'controllers/'.$segments[0].EXT)) { @@ -205,11 +226,11 @@ class CI_Router { // Is the controller in a sub-folder? if (is_dir(APPPATH.'controllers/'.$segments[0])) - { + { // Set the directory and remove it from the segment array $this->set_directory($segments[0]); $segments = array_slice($segments, 1); - + if (count($segments) > 0) { // Does the requested controller exist in the sub-folder? @@ -220,22 +241,47 @@ class CI_Router { } else { - $this->set_class($this->default_controller); - $this->set_method('index'); - + // Is the method being specified in the route? + if (strpos($this->default_controller, '/') !== FALSE) + { + $x = explode('/', $this->default_controller); + + $this->set_class($x[0]); + $this->set_method($x[1]); + } + else + { + $this->set_class($this->default_controller); + $this->set_method('index'); + } + // Does the default controller exist in the sub-folder? if ( ! file_exists(APPPATH.'controllers/'.$this->fetch_directory().$this->default_controller.EXT)) { $this->directory = ''; return array(); } - + } return $segments; } - // Can't find the requested controller... + + // If we've gotten this far it means that the URI does not correlate to a valid + // controller class. We will now see if there is an override + if (!empty($this->routes['404_override'])) + { + $x = explode('/', $this->routes['404_override']); + + $this->set_class($x[0]); + $this->set_method(isset($x[1]) ? $x[1] : 'index'); + + return $x; + } + + + // Nothing else to do at this point but show a 404 show_404($segments[0]); } @@ -253,41 +299,31 @@ class CI_Router { */ function _parse_routes() { - // Do we even have any custom routing to deal with? - // There is a default scaffolding trigger, so we'll look just for 1 - if (count($this->routes) == 1) - { - $this->_set_request($this->uri->segments); - return; - } - // Turn the segment array into a URI string $uri = implode('/', $this->uri->segments); // Is there a literal match? If so we're done if (isset($this->routes[$uri])) { - $this->_set_request(explode('/', $this->routes[$uri])); - return; + return $this->_set_request(explode('/', $this->routes[$uri])); } - + // Loop through the route array looking for wild-cards foreach ($this->routes as $key => $val) - { + { // Convert wild-cards to RegEx $key = str_replace(':any', '.+', str_replace(':num', '[0-9]+', $key)); - + // Does the RegEx match? if (preg_match('#^'.$key.'$#', $uri)) - { + { // Do we have a back-reference? if (strpos($val, '$') !== FALSE AND strpos($key, '(') !== FALSE) { $val = preg_replace('#^'.$key.'$#', $val, $uri); } - - $this->_set_request(explode('/', $val)); - return; + + return $this->_set_request(explode('/', $val)); } } @@ -297,54 +333,54 @@ class CI_Router { } // -------------------------------------------------------------------- - + /** * Set the class name * * @access public * @param string * @return void - */ + */ function set_class($class) { $this->class = str_replace(array('/', '.'), '', $class); } - + // -------------------------------------------------------------------- - + /** * Fetch the current class * * @access public * @return string - */ + */ function fetch_class() { return $this->class; } - + // -------------------------------------------------------------------- - + /** * Set the method name * * @access public * @param string * @return void - */ + */ function set_method($method) { $this->method = $method; } // -------------------------------------------------------------------- - + /** * Fetch the current method * * @access public * @return string - */ + */ function fetch_method() { if ($this->method == $this->fetch_class()) @@ -356,34 +392,68 @@ class CI_Router { } // -------------------------------------------------------------------- - + /** * Set the directory name * * @access public * @param string * @return void - */ + */ function set_directory($dir) { $this->directory = str_replace(array('/', '.'), '', $dir).'/'; } // -------------------------------------------------------------------- - + /** * Fetch the sub-directory (if any) that contains the requested controller class * * @access public * @return string - */ + */ function fetch_directory() { return $this->directory; } + // -------------------------------------------------------------------- + + /** + * Set the controller overrides + * + * @access public + * @param array + * @return null + */ + function _set_overrides($routing) + { + if ( ! is_array($routing)) + { + return; + } + + if (isset($routing['directory'])) + { + $this->set_directory($routing['directory']); + } + + if (isset($routing['controller']) AND $routing['controller'] != '') + { + $this->set_class($routing['controller']); + } + + if (isset($routing['function'])) + { + $routing['function'] = ($routing['function'] == '') ? 'index' : $routing['function']; + $this->set_method($routing['function']); + } + } + + } // END Router Class /* End of file Router.php */ -/* Location: ./system/libraries/Router.php */
\ No newline at end of file +/* Location: ./system/core/Router.php */
\ No newline at end of file diff --git a/system/libraries/URI.php b/system/core/URI.php index 23efb38c1..999015949 100644..100755 --- a/system/libraries/URI.php +++ b/system/core/URI.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -28,7 +28,7 @@ */ class CI_URI { - var $keyval = array(); + var $keyval = array(); var $uri_string; var $segments = array(); var $rsegments = array(); @@ -42,9 +42,9 @@ class CI_URI { * * @access public */ - function CI_URI() + function __construct() { - $this->config =& load_class('Config'); + $this->config =& load_class('Config', 'core'); log_message('debug', "URI Class Initialized"); } @@ -61,13 +61,17 @@ class CI_URI { { if (strtoupper($this->config->item('uri_protocol')) == 'AUTO') { - // If the URL has a question mark then it's simplest to just - // build the URI string from the zero index of the $_GET array. - // This avoids having to deal with $_SERVER variables, which - // can be unreliable in some environments - if (is_array($_GET) && count($_GET) == 1 && trim(key($_GET), '/') != '') + // Arguments exist, it must be a command line request + if ( ! empty($_SERVER['argv'])) { - $this->uri_string = key($_GET); + $this->uri_string = $this->_parse_cli_args(); + return; + } + + // Let's try the REQUEST_URI first, this will work in most situations + if ($uri = $this->_detect_uri()) + { + $this->uri_string = $uri; return; } @@ -88,12 +92,10 @@ class CI_URI { return; } - // No QUERY_STRING?... Maybe the ORIG_PATH_INFO variable exists? - $path = str_replace($_SERVER['SCRIPT_NAME'], '', (isset($_SERVER['ORIG_PATH_INFO'])) ? $_SERVER['ORIG_PATH_INFO'] : @getenv('ORIG_PATH_INFO')); - if (trim($path, '/') != '' && $path != "/".SELF) + // As a last ditch effort lets try using the $_GET array + if (is_array($_GET) && count($_GET) == 1 && trim(key($_GET), '/') != '') { - // remove path and script information so we have good URI data - $this->uri_string = $path; + $this->uri_string = key($_GET); return; } @@ -106,7 +108,12 @@ class CI_URI { if ($uri == 'REQUEST_URI') { - $this->uri_string = $this->_parse_request_uri(); + $this->uri_string = $this->_detect_uri(); + return; + } + elseif ($uri == 'CLI') + { + $this->uri_string = $this->_parse_cli_args(); return; } @@ -123,54 +130,70 @@ class CI_URI { // -------------------------------------------------------------------- /** - * Parse the REQUEST_URI + * Detects the URI * - * Due to the way REQUEST_URI works it usually contains path info - * that makes it unusable as URI data. We'll trim off the unnecessary - * data, hopefully arriving at a valid URI that we can use. + * This function will detect the URI automatically and fix the query string + * if necessary. * * @access private * @return string */ - function _parse_request_uri() + private function _detect_uri() { - if ( ! isset($_SERVER['REQUEST_URI']) OR $_SERVER['REQUEST_URI'] == '') + if ( ! isset($_SERVER['REQUEST_URI'])) { return ''; } - $request_uri = preg_replace("|/(.*)|", "\\1", str_replace("\\", "/", $_SERVER['REQUEST_URI'])); - - if ($request_uri == '' OR $request_uri == SELF) + $uri = $_SERVER['REQUEST_URI']; + if (strpos($uri, $_SERVER['SCRIPT_NAME']) === 0) { - return ''; + $uri = substr($uri, strlen($_SERVER['SCRIPT_NAME'])); } - - $fc_path = FCPATH.SELF; - if (strpos($request_uri, '?') !== FALSE) + elseif (strpos($uri, dirname($_SERVER['SCRIPT_NAME'])) === 0) { - $fc_path .= '?'; + $uri = substr($uri, strlen(dirname($_SERVER['SCRIPT_NAME']))); } - $parsed_uri = explode("/", $request_uri); - - $i = 0; - foreach(explode("/", $fc_path) as $segment) + // This section ensures that even on servers that require the URI to be in the query string (Nginx) a correct + // URI is found, and also fixes the QUERY_STRING server var and $_GET array. + if (strncmp($uri, '?/', 2) === 0) { - if (isset($parsed_uri[$i]) && $segment == $parsed_uri[$i]) - { - $i++; - } + $uri = substr($uri, 2); } - - $parsed_uri = implode("/", array_slice($parsed_uri, $i)); - - if ($parsed_uri != '') + $parts = preg_split('#\?#i', $uri, 2); + $uri = $parts[0]; + if (isset($parts[1])) + { + $_SERVER['QUERY_STRING'] = $parts[1]; + parse_str($_SERVER['QUERY_STRING'], $_GET); + } + else { - $parsed_uri = '/'.$parsed_uri; + $_SERVER['QUERY_STRING'] = ''; + $_GET = array(); } + $uri = parse_url($uri, PHP_URL_PATH); - return $parsed_uri; + // Do some final cleaning of the URI and return it + return str_replace(array('//', '../'), '/', trim($uri, '/')); + } + + // -------------------------------------------------------------------- + + /** + * Parse cli arguments + * + * Take each command line argument and assume it is a URI segment. + * + * @access private + * @return string + */ + private function _parse_cli_args() + { + $args = array_slice($_SERVER['argv'], 1); + + return $args ? '/' . implode('/', $args) : ''; } // -------------------------------------------------------------------- @@ -195,7 +218,7 @@ class CI_URI { } // Convert programatic characters to entities - $bad = array('$', '(', ')', '%28', '%29'); + $bad = array('$', '(', ')', '%28', '%29'); $good = array('$', '(', ')', '(', ')'); return str_replace($bad, $good, $str); @@ -228,7 +251,7 @@ class CI_URI { */ function _explode_segments() { - foreach(explode("/", preg_replace("|/*(.+?)/*$|", "\\1", $this->uri_string)) as $val) + foreach (explode("/", preg_replace("|/*(.+?)/*$|", "\\1", $this->uri_string)) as $val) { // Filter segments for security $val = trim($this->_filter_uri($val)); @@ -321,7 +344,7 @@ class CI_URI { */ function uri_to_assoc($n = 3, $default = array()) { - return $this->_uri_to_assoc($n, $default, 'segment'); + return $this->_uri_to_assoc($n, $default, 'segment'); } /** * Identical to above only it uses the re-routed segment array @@ -329,7 +352,7 @@ class CI_URI { */ function ruri_to_assoc($n = 3, $default = array()) { - return $this->_uri_to_assoc($n, $default, 'rsegment'); + return $this->_uri_to_assoc($n, $default, 'rsegment'); } // -------------------------------------------------------------------- @@ -482,21 +505,18 @@ class CI_URI { */ function _slash_segment($n, $where = 'trailing', $which = 'segment') { + $leading = '/'; + $trailing = '/'; + if ($where == 'trailing') { - $trailing = '/'; $leading = ''; } elseif ($where == 'leading') { - $leading = '/'; $trailing = ''; } - else - { - $leading = '/'; - $trailing = '/'; - } + return $leading.$this->$which($n).$trailing; } @@ -576,11 +596,11 @@ class CI_URI { */ function ruri_string() { - return '/'.implode('/', $this->rsegment_array()).'/'; + return '/'.implode('/', $this->rsegment_array()); } } // END URI Class /* End of file URI.php */ -/* Location: ./system/libraries/URI.php */
\ No newline at end of file +/* Location: ./system/core/URI.php */
\ No newline at end of file diff --git a/system/core/Utf8.php b/system/core/Utf8.php new file mode 100755 index 000000000..5d5a7ef72 --- /dev/null +++ b/system/core/Utf8.php @@ -0,0 +1,165 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 2.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * Utf8 Class + * + * Provides support for UTF-8 environments + * + * @package CodeIgniter + * @subpackage Libraries + * @category UTF-8 + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/libraries/utf8.html + */ +class CI_Utf8 { + + /** + * Constructor + * + * Determines if UTF-8 support is to be enabled + * + */ + function __construct() + { + log_message('debug', "Utf8 Class Initialized"); + + global $CFG; + + if ( + preg_match('/./u', 'é') === 1 // PCRE must support UTF-8 + AND function_exists('iconv') // iconv must be installed + AND ini_get('mbstring.func_overload') != 1 // Multibyte string function overloading cannot be enabled + AND $CFG->item('charset') == 'UTF-8' // Application charset must be UTF-8 + ) + { + log_message('debug', "UTF-8 Support Enabled"); + + define('UTF8_ENABLED', TRUE); + + // set internal encoding for multibyte string functions if necessary + // and set a flag so we don't have to repeatedly use extension_loaded() + // or function_exists() + if (extension_loaded('mbstring')) + { + define('MB_ENABLED', TRUE); + mb_internal_encoding('UTF-8'); + } + else + { + define('MB_ENABLED', FALSE); + } + } + else + { + log_message('debug', "UTF-8 Support Disabled"); + define('UTF8_ENABLED', FALSE); + } + } + + // -------------------------------------------------------------------- + + /** + * Clean UTF-8 strings + * + * Ensures strings are UTF-8 + * + * @access public + * @param string + * @return string + */ + function clean_string($str) + { + if ($this->_is_ascii($str) === FALSE) + { + $str = @iconv('UTF-8', 'UTF-8//IGNORE', $str); + } + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Remove ASCII control characters + * + * Removes all ASCII control characters except horizontal tabs, + * line feeds, and carriage returns, as all others can cause + * problems in XML + * + * @access public + * @param string + * @return string + */ + function safe_ascii_for_xml($str) + { + return preg_replace('/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]+/S', '', $str); + } + + // -------------------------------------------------------------------- + + /** + * Convert to UTF-8 + * + * Attempts to convert a string to UTF-8 + * + * @access public + * @param string + * @param string - input encoding + * @return string + */ + function convert_to_utf8($str, $encoding) + { + if (function_exists('iconv')) + { + $str = @iconv($encoding, 'UTF-8', $str); + } + elseif (function_exists('mb_convert_encoding')) + { + $str = @mb_convert_encoding($str, 'UTF-8', $encoding); + } + else + { + return FALSE; + } + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Is ASCII? + * + * Tests if a string is standard 7-bit ASCII or not + * + * @access public + * @param string + * @return bool + */ + function _is_ascii($str) + { + return (preg_match('/[^\x00-\x7F]/S', $str) == 0); + } + + // -------------------------------------------------------------------- + +} +// End Utf8 Class + +/* End of file Utf8.php */ +/* Location: ./system/core/Utf8.php */
\ No newline at end of file diff --git a/system/application/config/index.html b/system/core/index.html index c942a79ce..c942a79ce 100755 --- a/system/application/config/index.html +++ b/system/core/index.html diff --git a/system/database/DB.php b/system/database/DB.php index f174687ca..fb0516ba4 100644..100755 --- a/system/database/DB.php +++ b/system/database/DB.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -22,45 +22,45 @@ * @author ExpressionEngine Dev Team * @link http://codeigniter.com/user_guide/database/ */ -function &DB($params = '', $active_record_override = FALSE) +function &DB($params = '', $active_record_override = NULL) { // Load the DB config file if a DSN string wasn't passed if (is_string($params) AND strpos($params, '://') === FALSE) { include(APPPATH.'config/database'.EXT); - + if ( ! isset($db) OR count($db) == 0) { show_error('No database connection settings were found in the database config file.'); } - + if ($params != '') { $active_group = $params; } - + if ( ! isset($active_group) OR ! isset($db[$active_group])) { show_error('You have specified an invalid database connection group.'); } - + $params = $db[$active_group]; } elseif (is_string($params)) { - + /* parse the URL from the DSN string - * Database settings can be passed as discreet - * parameters or as a data source name in the first - * parameter. DSNs must have this prototype: - * $dsn = 'driver://username:password@hostname/database'; - */ - + * Database settings can be passed as discreet + * parameters or as a data source name in the first + * parameter. DSNs must have this prototype: + * $dsn = 'driver://username:password@hostname/database'; + */ + if (($dns = @parse_url($params)) === FALSE) { show_error('Invalid DB Connection String'); } - + $params = array( 'dbdriver' => $dns['scheme'], 'hostname' => (isset($dns['host'])) ? rawurldecode($dns['host']) : '', @@ -68,7 +68,7 @@ function &DB($params = '', $active_record_override = FALSE) 'password' => (isset($dns['pass'])) ? rawurldecode($dns['pass']) : '', 'database' => (isset($dns['path'])) ? rawurldecode(substr($dns['path'], 1)) : '' ); - + // were additional config items set? if (isset($dns['query'])) { @@ -90,7 +90,7 @@ function &DB($params = '', $active_record_override = FALSE) } } } - + // No DB specified yet? Beat them senseless... if ( ! isset($params['dbdriver']) OR $params['dbdriver'] == '') { @@ -101,18 +101,18 @@ function &DB($params = '', $active_record_override = FALSE) // we need to dynamically create a class that extends proper parent class // based on whether we're using the active record class or not. // Kudos to Paul for discovering this clever use of eval() - - if ($active_record_override == TRUE) + + if ($active_record_override !== NULL) { - $active_record = TRUE; + $active_record = $active_record_override; } - + require_once(BASEPATH.'database/DB_driver'.EXT); if ( ! isset($active_record) OR $active_record == TRUE) { require_once(BASEPATH.'database/DB_active_rec'.EXT); - + if ( ! class_exists('CI_DB')) { eval('class CI_DB extends CI_DB_active_record { }'); @@ -125,20 +125,25 @@ function &DB($params = '', $active_record_override = FALSE) eval('class CI_DB extends CI_DB_driver { }'); } } - + require_once(BASEPATH.'database/drivers/'.$params['dbdriver'].'/'.$params['dbdriver'].'_driver'.EXT); // Instantiate the DB adapter $driver = 'CI_DB_'.$params['dbdriver'].'_driver'; - $DB =& instantiate_class(new $driver($params)); - + $DB = new $driver($params); + if ($DB->autoinit == TRUE) { $DB->initialize(); } - + + if (isset($params['stricton']) && $params['stricton'] == TRUE) + { + $DB->query('SET SESSION sql_mode="STRICT_ALL_TABLES"'); + } + return $DB; -} +} diff --git a/system/database/DB_active_rec.php b/system/database/DB_active_rec.php index bf4d5117e..ce9d1c1af 100644..100755 --- a/system/database/DB_active_rec.php +++ b/system/database/DB_active_rec.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -36,17 +36,18 @@ class CI_DB_active_record extends CI_DB_driver { var $ar_like = array(); var $ar_groupby = array(); var $ar_having = array(); + var $ar_keys = array(); var $ar_limit = FALSE; var $ar_offset = FALSE; var $ar_order = FALSE; var $ar_orderby = array(); - var $ar_set = array(); + var $ar_set = array(); var $ar_wherein = array(); var $ar_aliased_tables = array(); var $ar_store_array = array(); - + // Active Record Caching variables - var $ar_caching = FALSE; + var $ar_caching = FALSE; var $ar_cache_exists = array(); var $ar_cache_select = array(); var $ar_cache_from = array(); @@ -56,7 +57,7 @@ class CI_DB_active_record extends CI_DB_driver { var $ar_cache_groupby = array(); var $ar_cache_having = array(); var $ar_cache_orderby = array(); - var $ar_cache_set = array(); + var $ar_cache_set = array(); // -------------------------------------------------------------------- @@ -72,12 +73,12 @@ class CI_DB_active_record extends CI_DB_driver { */ function select($select = '*', $escape = NULL) { - // Set the global value if this was sepecified + // Set the global value if this was sepecified if (is_bool($escape)) { $this->_protect_identifiers = $escape; } - + if (is_string($select)) { $select = explode(',', $select); @@ -117,7 +118,7 @@ class CI_DB_active_record extends CI_DB_driver { { return $this->_max_min_avg_sum($select, $alias, 'MAX'); } - + // -------------------------------------------------------------------- /** @@ -178,7 +179,7 @@ class CI_DB_active_record extends CI_DB_driver { * select_min() * select_avg() * select_sum() - * + * * @access public * @param string the field * @param string an alias @@ -190,29 +191,29 @@ class CI_DB_active_record extends CI_DB_driver { { $this->display_error('db_invalid_query'); } - + $type = strtoupper($type); - + if ( ! in_array($type, array('MAX', 'MIN', 'AVG', 'SUM'))) { show_error('Invalid function type: '.$type); } - + if ($alias == '') { $alias = $this->_create_alias_from_table(trim($select)); } - + $sql = $type.'('.$this->_protect_identifiers(trim($select)).') AS '.$alias; $this->ar_select[] = $sql; - + if ($this->ar_caching === TRUE) { $this->ar_cache_select[] = $sql; $this->ar_cache_exists[] = 'select'; } - + return $this; } @@ -231,7 +232,7 @@ class CI_DB_active_record extends CI_DB_driver { { return end(explode('.', $item)); } - + return $item; } @@ -251,7 +252,7 @@ class CI_DB_active_record extends CI_DB_driver { $this->ar_distinct = (is_bool($val)) ? $val : TRUE; return $this; } - + // -------------------------------------------------------------------- /** @@ -275,12 +276,12 @@ class CI_DB_active_record extends CI_DB_driver { $this->_track_aliases($v); $this->ar_from[] = $this->_protect_identifiers($v, TRUE, NULL, FALSE); - + if ($this->ar_caching === TRUE) { $this->ar_cache_from[] = $this->_protect_identifiers($v, TRUE, NULL, FALSE); $this->ar_cache_exists[] = 'from'; - } + } } } @@ -289,11 +290,11 @@ class CI_DB_active_record extends CI_DB_driver { $val = trim($val); // Extract any aliases that might exist. We use this information - // in the _protect_identifiers to know whether to add a table prefix + // in the _protect_identifiers to know whether to add a table prefix $this->_track_aliases($val); - + $this->ar_from[] = $this->_protect_identifiers($val, TRUE, NULL, FALSE); - + if ($this->ar_caching === TRUE) { $this->ar_cache_from[] = $this->_protect_identifiers($val, TRUE, NULL, FALSE); @@ -319,7 +320,7 @@ class CI_DB_active_record extends CI_DB_driver { * @return object */ function join($table, $cond, $type = '') - { + { if ($type != '') { $type = strtoupper(trim($type)); @@ -335,7 +336,7 @@ class CI_DB_active_record extends CI_DB_driver { } // Extract any aliases that might exist. We use this information - // in the _protect_identifiers to know whether to add a table prefix + // in the _protect_identifiers to know whether to add a table prefix $this->_track_aliases($table); // Strip apart the condition and protect the identifiers @@ -343,10 +344,10 @@ class CI_DB_active_record extends CI_DB_driver { { $match[1] = $this->_protect_identifiers($match[1]); $match[3] = $this->_protect_identifiers($match[3]); - - $cond = $match[1].$match[2].$match[3]; + + $cond = $match[1].$match[2].$match[3]; } - + // Assemble the JOIN statement $join = $type.'JOIN '.$this->_protect_identifiers($table, TRUE, NULL, FALSE).' ON '.$cond; @@ -377,7 +378,7 @@ class CI_DB_active_record extends CI_DB_driver { { return $this->_where($key, $value, 'AND ', $escape); } - + // -------------------------------------------------------------------- /** @@ -399,18 +400,6 @@ class CI_DB_active_record extends CI_DB_driver { // -------------------------------------------------------------------- /** - * orwhere() is an alias of or_where() - * this function is here for backwards compatibility, as - * orwhere() has been deprecated - */ - function orwhere($key, $value = NULL, $escape = TRUE) - { - return $this->or_where($key, $value, $escape); - } - - // -------------------------------------------------------------------- - - /** * Where * * Called by where() or orwhere() @@ -427,7 +416,7 @@ class CI_DB_active_record extends CI_DB_driver { { $key = array($key => $value); } - + // If the escape value was not set will will base it on the global setting if ( ! is_bool($escape)) { @@ -443,13 +432,13 @@ class CI_DB_active_record extends CI_DB_driver { // value appears not to have been set, assign the test to IS NULL $k .= ' IS NULL'; } - + if ( ! is_null($v)) { if ($escape === TRUE) { $k = $this->_protect_identifiers($k, FALSE, $escape); - + $v = ' '.$this->escape($v); } @@ -460,19 +449,19 @@ class CI_DB_active_record extends CI_DB_driver { } else { - $k = $this->_protect_identifiers($k, FALSE, $escape); + $k = $this->_protect_identifiers($k, FALSE, $escape); } $this->ar_where[] = $prefix.$k.$v; - + if ($this->ar_caching === TRUE) { $this->ar_cache_where[] = $prefix.$k.$v; $this->ar_cache_exists[] = 'where'; } - + } - + return $this; } @@ -493,7 +482,7 @@ class CI_DB_active_record extends CI_DB_driver { { return $this->_where_in($key, $values); } - + // -------------------------------------------------------------------- /** @@ -529,7 +518,7 @@ class CI_DB_active_record extends CI_DB_driver { { return $this->_where_in($key, $values, TRUE); } - + // -------------------------------------------------------------------- /** @@ -559,7 +548,7 @@ class CI_DB_active_record extends CI_DB_driver { * @param string The field to search * @param array The values searched on * @param boolean If the statement would be IN or NOT IN - * @param string + * @param string * @return object */ function _where_in($key = NULL, $values = NULL, $not = FALSE, $type = 'AND ') @@ -568,12 +557,12 @@ class CI_DB_active_record extends CI_DB_driver { { return; } - + if ( ! is_array($values)) { $values = array($values); } - + $not = ($not) ? ' NOT' : ''; foreach ($values as $value) @@ -582,7 +571,7 @@ class CI_DB_active_record extends CI_DB_driver { } $prefix = (count($this->ar_where) == 0) ? '' : $type; - + $where_in = $prefix . $this->_protect_identifiers($key) . $not . " IN (" . implode(", ", $this->ar_wherein) . ") "; $this->ar_where[] = $where_in; @@ -596,7 +585,7 @@ class CI_DB_active_record extends CI_DB_driver { $this->ar_wherein = array(); return $this; } - + // -------------------------------------------------------------------- /** @@ -632,7 +621,7 @@ class CI_DB_active_record extends CI_DB_driver { { return $this->_like($field, $match, 'AND ', $side, 'NOT'); } - + // -------------------------------------------------------------------- /** @@ -668,19 +657,7 @@ class CI_DB_active_record extends CI_DB_driver { { return $this->_like($field, $match, 'OR ', $side, 'NOT'); } - - // -------------------------------------------------------------------- - /** - * orlike() is an alias of or_like() - * this function is here for backwards compatibility, as - * orlike() has been deprecated - */ - function orlike($field, $match = '', $side = 'both') - { - return $this->or_like($field, $match, $side); - } - // -------------------------------------------------------------------- /** @@ -700,7 +677,7 @@ class CI_DB_active_record extends CI_DB_driver { { $field = array($field => $match); } - + foreach ($field as $k => $v) { $k = $this->_protect_identifiers($k); @@ -721,24 +698,24 @@ class CI_DB_active_record extends CI_DB_driver { { $like_statement = $prefix." $k $not LIKE '%{$v}%'"; } - + // some platforms require an escape sequence definition for LIKE wildcards if ($this->_like_escape_str != '') { - $like_statement = $like_statement.sprintf($this->_like_escape_str, $this->_like_escape_char); + $like_statement = $like_statement.sprintf($this->_like_escape_str, $this->_like_escape_chr); } - + $this->ar_like[] = $like_statement; if ($this->ar_caching === TRUE) { $this->ar_cache_like[] = $like_statement; $this->ar_cache_exists[] = 'like'; } - + } return $this; } - + // -------------------------------------------------------------------- /** @@ -754,15 +731,15 @@ class CI_DB_active_record extends CI_DB_driver { { $by = explode(',', $by); } - + foreach ($by as $val) { $val = trim($val); - + if ($val != '') { $this->ar_groupby[] = $this->_protect_identifiers($val); - + if ($this->ar_caching === TRUE) { $this->ar_cache_groupby[] = $this->_protect_identifiers($val); @@ -776,18 +753,6 @@ class CI_DB_active_record extends CI_DB_driver { // -------------------------------------------------------------------- /** - * groupby() is an alias of group_by() - * this function is here for backwards compatibility, as - * groupby() has been deprecated - */ - function groupby($by) - { - return $this->group_by($by); - } - - // -------------------------------------------------------------------- - - /** * Sets the HAVING value * * Separates multiple calls with AND @@ -805,18 +770,6 @@ class CI_DB_active_record extends CI_DB_driver { // -------------------------------------------------------------------- /** - * orhaving() is an alias of or_having() - * this function is here for backwards compatibility, as - * orhaving() has been deprecated - */ - - function orhaving($key, $value = '', $escape = TRUE) - { - return $this->or_having($key, $value, $escape); - } - // -------------------------------------------------------------------- - - /** * Sets the OR HAVING value * * Separates multiple calls with OR @@ -830,7 +783,7 @@ class CI_DB_active_record extends CI_DB_driver { { return $this->_having($key, $value, 'OR ', $escape); } - + // -------------------------------------------------------------------- /** @@ -849,7 +802,7 @@ class CI_DB_active_record extends CI_DB_driver { { $key = array($key => $value); } - + foreach ($key as $k => $v) { $prefix = (count($this->ar_having) == 0) ? '' : $type; @@ -868,7 +821,7 @@ class CI_DB_active_record extends CI_DB_driver { { $v = ' '.$this->escape_str($v); } - + $this->ar_having[] = $prefix.$k.$v; if ($this->ar_caching === TRUE) { @@ -876,10 +829,10 @@ class CI_DB_active_record extends CI_DB_driver { $this->ar_cache_exists[] = 'having'; } } - + return $this; } - + // -------------------------------------------------------------------- /** @@ -901,8 +854,8 @@ class CI_DB_active_record extends CI_DB_driver { { $direction = (in_array(strtoupper(trim($direction)), array('ASC', 'DESC'), TRUE)) ? ' '.$direction : ' ASC'; } - - + + if (strpos($orderby, ',') !== FALSE) { $temp = array(); @@ -913,19 +866,19 @@ class CI_DB_active_record extends CI_DB_driver { { $part = $this->_protect_identifiers(trim($part)); } - + $temp[] = $part; } - - $orderby = implode(', ', $temp); + + $orderby = implode(', ', $temp); } else if ($direction != $this->_random_keyword) { $orderby = $this->_protect_identifiers($orderby); } - + $orderby_statement = $orderby.$direction; - + $this->ar_orderby[] = $orderby_statement; if ($this->ar_caching === TRUE) { @@ -935,19 +888,7 @@ class CI_DB_active_record extends CI_DB_driver { return $this; } - - // -------------------------------------------------------------------- - /** - * orderby() is an alias of order_by() - * this function is here for backwards compatibility, as - * orderby() has been deprecated - */ - function orderby($orderby, $direction = '') - { - return $this->order_by($orderby, $direction); - } - // -------------------------------------------------------------------- /** @@ -966,10 +907,10 @@ class CI_DB_active_record extends CI_DB_driver { { $this->ar_offset = $offset; } - + return $this; } - + // -------------------------------------------------------------------- /** @@ -984,7 +925,7 @@ class CI_DB_active_record extends CI_DB_driver { $this->ar_offset = $offset; return $this; } - + // -------------------------------------------------------------------- /** @@ -999,11 +940,11 @@ class CI_DB_active_record extends CI_DB_driver { function set($key, $value = '', $escape = TRUE) { $key = $this->_object_to_array($key); - + if ( ! is_array($key)) { $key = array($key => $value); - } + } foreach ($key as $k => $v) { @@ -1016,10 +957,10 @@ class CI_DB_active_record extends CI_DB_driver { $this->ar_set[$this->_protect_identifiers($k)] = $this->escape($v); } } - + return $this; } - + // -------------------------------------------------------------------- /** @@ -1041,12 +982,12 @@ class CI_DB_active_record extends CI_DB_driver { $this->_track_aliases($table); $this->from($table); } - + if ( ! is_null($limit)) { $this->limit($limit, $offset); } - + $sql = $this->_compile_select(); $result = $this->query($sql); @@ -1057,7 +998,7 @@ class CI_DB_active_record extends CI_DB_driver { /** * "Count All Results" query * - * Generates a platform-specific query string that counts all records + * Generates a platform-specific query string that counts all records * returned by an Active Record query. * * @access public @@ -1071,12 +1012,12 @@ class CI_DB_active_record extends CI_DB_driver { $this->_track_aliases($table); $this->from($table); } - + $sql = $this->_compile_select($this->_count_string . $this->_protect_identifiers('numrows')); $query = $this->query($sql); $this->_reset_select(); - + if ($query->num_rows() == 0) { return '0'; @@ -1110,12 +1051,12 @@ class CI_DB_active_record extends CI_DB_driver { { $this->where($where); } - + if ( ! is_null($limit)) { $this->limit($limit, $offset); } - + $sql = $this->_compile_select(); $result = $this->query($sql); @@ -1126,15 +1067,123 @@ class CI_DB_active_record extends CI_DB_driver { // -------------------------------------------------------------------- /** - * getwhere() is an alias of get_where() - * this function is here for backwards compatibility, as - * getwhere() has been deprecated + * Insert_Batch + * + * Compiles batch insert strings and runs the queries + * + * @access public + * @param string the table to retrieve the results from + * @param array an associative array of insert values + * @return object */ - function getwhere($table = '', $where = null, $limit = null, $offset = null) + function insert_batch($table = '', $set = NULL) { - return $this->get_where($table, $where, $limit, $offset); + if ( ! is_null($set)) + { + $this->set_insert_batch($set); + } + + if (count($this->ar_set) == 0) + { + if ($this->db_debug) + { + //No valid data array. Folds in cases where keys and values did not match up + return $this->display_error('db_must_use_set'); + } + return FALSE; + } + + if ($table == '') + { + if ( ! isset($this->ar_from[0])) + { + if ($this->db_debug) + { + return $this->display_error('db_must_set_table'); + } + return FALSE; + } + + $table = $this->ar_from[0]; + } + + // Batch this baby + for ($i = 0, $total = count($this->ar_set); $i < $total; $i = $i + 100) + { + + $sql = $this->_insert_batch($this->_protect_identifiers($table, TRUE, NULL, FALSE), $this->ar_keys, array_slice($this->ar_set, $i, 100)); + + //echo $sql; + + $this->query($sql); + } + + $this->_reset_write(); + + + return TRUE; } - + + // -------------------------------------------------------------------- + + /** + * The "set_insert_batch" function. Allows key/value pairs to be set for batch inserts + * + * @access public + * @param mixed + * @param string + * @param boolean + * @return object + */ + + function set_insert_batch($key, $value = '', $escape = TRUE) + { + $key = $this->_object_to_array_batch($key); + + if ( ! is_array($key)) + { + $key = array($key => $value); + } + + $keys = array_keys(current($key)); + sort($keys); + + foreach ($key as $row) + { + if (count(array_diff($keys, array_keys($row))) > 0 OR count(array_diff(array_keys($row), $keys)) > 0) + { + // batch function above returns an error on an empty array + $this->ar_set[] = array(); + return; + } + + ksort($row); // puts $row in the same order as our keys + + if ($escape === FALSE) + { + $this->ar_set[] = '('.implode(',', $row).')'; + } + else + { + $clean = array(); + + foreach($row as $value) + { + $clean[] = $this->escape($value); + } + + $this->ar_set[] = '('.implode(',', $clean).')'; + } + } + + foreach ($keys as $k) + { + $this->ar_keys[] = $this->_protect_identifiers($k); + } + + return $this; + } + // -------------------------------------------------------------------- /** @@ -1148,12 +1197,12 @@ class CI_DB_active_record extends CI_DB_driver { * @return object */ function insert($table = '', $set = NULL) - { + { if ( ! is_null($set)) { $this->set($set); } - + if (count($this->ar_set) == 0) { if ($this->db_debug) @@ -1173,16 +1222,52 @@ class CI_DB_active_record extends CI_DB_driver { } return FALSE; } - + $table = $this->ar_from[0]; } $sql = $this->_insert($this->_protect_identifiers($table, TRUE, NULL, FALSE), array_keys($this->ar_set), array_values($this->ar_set)); - + $this->_reset_write(); - return $this->query($sql); + return $this->query($sql); } - + + function replace($table = '', $set = NULL) + { + if ( ! is_null($set)) + { + $this->set($set); + } + + if (count($this->ar_set) == 0) + { + if ($this->db_debug) + { + return $this->display_error('db_must_use_set'); + } + return FALSE; + } + + if ($table == '') + { + if ( ! isset($this->ar_from[0])) + { + if ($this->db_debug) + { + return $this->display_error('db_must_set_table'); + } + return FALSE; + } + + $table = $this->ar_from[0]; + } + + $sql = $this->_replace($this->_protect_identifiers($table, TRUE, NULL, FALSE), array_keys($this->ar_set), array_values($this->ar_set)); + + $this->_reset_write(); + return $this->query($sql); + } + // -------------------------------------------------------------------- /** @@ -1205,7 +1290,7 @@ class CI_DB_active_record extends CI_DB_driver { { $this->set($set); } - + if (count($this->ar_set) == 0) { if ($this->db_debug) @@ -1225,10 +1310,10 @@ class CI_DB_active_record extends CI_DB_driver { } return FALSE; } - + $table = $this->ar_from[0]; } - + if ($where != NULL) { $this->where($where); @@ -1238,13 +1323,140 @@ class CI_DB_active_record extends CI_DB_driver { { $this->limit($limit); } - + $sql = $this->_update($this->_protect_identifiers($table, TRUE, NULL, FALSE), $this->ar_set, $this->ar_where, $this->ar_orderby, $this->ar_limit); - + $this->_reset_write(); return $this->query($sql); } + + // -------------------------------------------------------------------- + + /** + * Update_Batch + * + * Compiles an update string and runs the query + * + * @access public + * @param string the table to retrieve the results from + * @param array an associative array of update values + * @param string the where key + * @return object + */ + function update_batch($table = '', $set = NULL, $index = NULL) + { + // Combine any cached components with the current statements + $this->_merge_cache(); + + if (is_null($index)) + { + if ($this->db_debug) + { + return $this->display_error('db_myst_use_index'); + } + + return FALSE; + } + + if ( ! is_null($set)) + { + $this->set_update_batch($set, $index); + } + + if (count($this->ar_set) == 0) + { + if ($this->db_debug) + { + return $this->display_error('db_must_use_set'); + } + + return FALSE; + } + + if ($table == '') + { + if ( ! isset($this->ar_from[0])) + { + if ($this->db_debug) + { + return $this->display_error('db_must_set_table'); + } + return FALSE; + } + + $table = $this->ar_from[0]; + } + + // Batch this baby + for ($i = 0, $total = count($this->ar_set); $i < $total; $i = $i + 100) + { + $sql = $this->_update_batch($this->_protect_identifiers($table, TRUE, NULL, FALSE), array_slice($this->ar_set, $i, 100), $this->_protect_identifiers($index), $this->ar_where); + + $this->query($sql); + } + + $this->_reset_write(); + } + + // -------------------------------------------------------------------- + + /** + * The "set_update_batch" function. Allows key/value pairs to be set for batch updating + * + * @access public + * @param array + * @param string + * @param boolean + * @return object + */ + + function set_update_batch($key, $index = '', $escape = TRUE) + { + $key = $this->_object_to_array_batch($key); + + if ( ! is_array($key)) + { + // @todo error + } + + foreach ($key as $k => $v) + { + $index_set = FALSE; + $clean = array(); + + foreach($v as $k2 => $v2) + { + if ($k2 == $index) + { + $index_set = TRUE; + } + else + { + $not[] = $k.'-'.$v; + } + + if ($escape === FALSE) + { + $clean[$this->_protect_identifiers($k2)] = $v2; + } + else + { + $clean[$this->_protect_identifiers($k2)] = $this->escape($v2); + } + } + + if ($index_set == FALSE) + { + return $this->display_error('db_batch_missing_index'); + } + + $this->ar_set[] = $clean; + } + + return $this; + } + // -------------------------------------------------------------------- /** @@ -1279,7 +1491,7 @@ class CI_DB_active_record extends CI_DB_driver { $sql = $this->_delete($table); $this->_reset_write(); - + return $this->query($sql); } @@ -1319,10 +1531,10 @@ class CI_DB_active_record extends CI_DB_driver { $sql = $this->_truncate($table); $this->_reset_write(); - + return $this->query($sql); } - + // -------------------------------------------------------------------- /** @@ -1388,7 +1600,7 @@ class CI_DB_active_record extends CI_DB_driver { } return FALSE; - } + } $sql = $this->_delete($table, $this->ar_where, $this->ar_like, $this->ar_limit); @@ -1396,7 +1608,7 @@ class CI_DB_active_record extends CI_DB_driver { { $this->_reset_write(); } - + return $this->query($sql); } @@ -1431,7 +1643,7 @@ class CI_DB_active_record extends CI_DB_driver { * @access private * @param string The table to inspect * @return string - */ + */ function _track_aliases($table) { if (is_array($table)) @@ -1442,23 +1654,23 @@ class CI_DB_active_record extends CI_DB_driver { } return; } - + // Does the string contain a comma? If so, we need to separate // the string into discreet statements if (strpos($table, ',') !== FALSE) { return $this->_track_aliases(explode(',', $table)); } - + // if a table alias is used we can recognize it by a space if (strpos($table, " ") !== FALSE) { // if the alias is written with the AS keyword, remove it $table = preg_replace('/ AS /i', ' ', $table); - + // Grab the alias $table = trim(strrchr($table, " ")); - + // Store the alias, if it doesn't already exist if ( ! in_array($table, $this->ar_aliased_tables)) { @@ -1484,7 +1696,7 @@ class CI_DB_active_record extends CI_DB_driver { $this->_merge_cache(); // ---------------------------------------------------------------- - + // Write the "select" portion of the query if ($select_override !== FALSE) @@ -1494,13 +1706,13 @@ class CI_DB_active_record extends CI_DB_driver { else { $sql = ( ! $this->ar_distinct) ? 'SELECT ' : 'SELECT DISTINCT '; - + if (count($this->ar_select) == 0) { - $sql .= '*'; + $sql .= '*'; } else - { + { // Cycle through the "select" portion of the query and prep each column name. // The reason we protect identifiers here rather then in the select() function // is because until the user calls the from() function we don't know if there are aliases @@ -1508,13 +1720,13 @@ class CI_DB_active_record extends CI_DB_driver { { $this->ar_select[$key] = $this->_protect_identifiers($val); } - + $sql .= implode(', ', $this->ar_select); } } // ---------------------------------------------------------------- - + // Write the "FROM" portion of the query if (count($this->ar_from) > 0) @@ -1525,7 +1737,7 @@ class CI_DB_active_record extends CI_DB_driver { } // ---------------------------------------------------------------- - + // Write the "JOIN" portion of the query if (count($this->ar_join) > 0) @@ -1536,7 +1748,7 @@ class CI_DB_active_record extends CI_DB_driver { } // ---------------------------------------------------------------- - + // Write the "WHERE" portion of the query if (count($this->ar_where) > 0 OR count($this->ar_like) > 0) @@ -1549,9 +1761,9 @@ class CI_DB_active_record extends CI_DB_driver { $sql .= implode("\n", $this->ar_where); // ---------------------------------------------------------------- - + // Write the "LIKE" portion of the query - + if (count($this->ar_like) > 0) { if (count($this->ar_where) > 0) @@ -1563,20 +1775,20 @@ class CI_DB_active_record extends CI_DB_driver { } // ---------------------------------------------------------------- - + // Write the "GROUP BY" portion of the query - + if (count($this->ar_groupby) > 0) { $sql .= "\nGROUP BY "; - + $sql .= implode(', ', $this->ar_groupby); } // ---------------------------------------------------------------- - + // Write the "HAVING" portion of the query - + if (count($this->ar_having) > 0) { $sql .= "\nHAVING "; @@ -1584,24 +1796,24 @@ class CI_DB_active_record extends CI_DB_driver { } // ---------------------------------------------------------------- - + // Write the "ORDER BY" portion of the query if (count($this->ar_orderby) > 0) { $sql .= "\nORDER BY "; $sql .= implode(', ', $this->ar_orderby); - + if ($this->ar_order !== FALSE) { $sql .= ($this->ar_order == 'desc') ? ' DESC' : ' ASC'; - } + } } // ---------------------------------------------------------------- - + // Write the "LIMIT" portion of the query - + if (is_numeric($this->ar_limit)) { $sql .= "\n"; @@ -1628,20 +1840,60 @@ class CI_DB_active_record extends CI_DB_driver { { return $object; } - + $array = array(); foreach (get_object_vars($object) as $key => $val) { // There are some built in keys we need to ignore for this conversion - if ( ! is_object($val) && ! is_array($val) && $key != '_parent_name' && $key != '_ci_scaffolding' && $key != '_ci_scaff_table') + if ( ! is_object($val) && ! is_array($val) && $key != '_parent_name') { $array[$key] = $val; } } - + + return $array; + } + + // -------------------------------------------------------------------- + + /** + * Object to Array + * + * Takes an object as input and converts the class variables to array key/vals + * + * @access public + * @param object + * @return array + */ + function _object_to_array_batch($object) + { + if ( ! is_object($object)) + { + return $object; + } + + $array = array(); + $out = get_object_vars($object); + $fields = array_keys($out); + + foreach ($fields as $val) + { + // There are some built in keys we need to ignore for this conversion + if ($val != '_parent_name') + { + + $i = 0; + foreach ($out[$val] as $data) + { + $array[$i][$val] = $data; + $i++; + } + } + } + return $array; } - + // -------------------------------------------------------------------- /** @@ -1651,7 +1903,7 @@ class CI_DB_active_record extends CI_DB_driver { * * @access public * @return void - */ + */ function start_cache() { $this->ar_caching = TRUE; @@ -1666,7 +1918,7 @@ class CI_DB_active_record extends CI_DB_driver { * * @access public * @return void - */ + */ function stop_cache() { $this->ar_caching = FALSE; @@ -1681,23 +1933,23 @@ class CI_DB_active_record extends CI_DB_driver { * * @access public * @return void - */ + */ function flush_cache() - { + { $this->_reset_run( array( - 'ar_cache_select' => array(), - 'ar_cache_from' => array(), + 'ar_cache_select' => array(), + 'ar_cache_from' => array(), 'ar_cache_join' => array(), - 'ar_cache_where' => array(), - 'ar_cache_like' => array(), - 'ar_cache_groupby' => array(), - 'ar_cache_having' => array(), - 'ar_cache_orderby' => array(), + 'ar_cache_where' => array(), + 'ar_cache_like' => array(), + 'ar_cache_groupby' => array(), + 'ar_cache_having' => array(), + 'ar_cache_orderby' => array(), 'ar_cache_set' => array(), 'ar_cache_exists' => array() ) - ); + ); } // -------------------------------------------------------------------- @@ -1705,7 +1957,7 @@ class CI_DB_active_record extends CI_DB_driver { /** * Merge Cache * - * When called, this function merges any cached AR arrays with + * When called, this function merges any cached AR arrays with * locally called ones. * * @access private @@ -1770,50 +2022,51 @@ class CI_DB_active_record extends CI_DB_driver { function _reset_select() { $ar_reset_items = array( - 'ar_select' => array(), - 'ar_from' => array(), - 'ar_join' => array(), - 'ar_where' => array(), - 'ar_like' => array(), - 'ar_groupby' => array(), - 'ar_having' => array(), - 'ar_orderby' => array(), - 'ar_wherein' => array(), + 'ar_select' => array(), + 'ar_from' => array(), + 'ar_join' => array(), + 'ar_where' => array(), + 'ar_like' => array(), + 'ar_groupby' => array(), + 'ar_having' => array(), + 'ar_orderby' => array(), + 'ar_wherein' => array(), 'ar_aliased_tables' => array(), - 'ar_distinct' => FALSE, - 'ar_limit' => FALSE, - 'ar_offset' => FALSE, + 'ar_distinct' => FALSE, + 'ar_limit' => FALSE, + 'ar_offset' => FALSE, 'ar_order' => FALSE, ); - + $this->_reset_run($ar_reset_items); } - + // -------------------------------------------------------------------- /** * Resets the active record "write" values. * - * Called by the insert() update() and delete() functions + * Called by the insert() update() insert_batch() update_batch() and delete() functions * * @access private * @return void */ function _reset_write() - { + { $ar_reset_items = array( - 'ar_set' => array(), - 'ar_from' => array(), - 'ar_where' => array(), + 'ar_set' => array(), + 'ar_from' => array(), + 'ar_where' => array(), 'ar_like' => array(), - 'ar_orderby' => array(), - 'ar_limit' => FALSE, + 'ar_orderby' => array(), + 'ar_keys' => array(), + 'ar_limit' => FALSE, 'ar_order' => FALSE ); $this->_reset_run($ar_reset_items); } - + } /* End of file DB_active_rec.php */ diff --git a/system/database/DB_cache.php b/system/database/DB_cache.php index d3968b315..3bf065ca5 100644..100755 --- a/system/database/DB_cache.php +++ b/system/database/DB_cache.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -32,14 +32,14 @@ class CI_DB_Cache { * * Grabs the CI super object instance so we can access it. * - */ + */ function CI_DB_Cache(&$db) { // Assign the main CI object to $this->CI // and load the file helper since we use it a lot $this->CI =& get_instance(); $this->db =& $db; - $this->CI->load->helper('file'); + $this->CI->load->helper('file'); } // -------------------------------------------------------------------- @@ -50,7 +50,7 @@ class CI_DB_Cache { * @access public * @param string the path to the cache directory * @return bool - */ + */ function check_path($path = '') { if ($path == '') @@ -59,10 +59,10 @@ class CI_DB_Cache { { return $this->db->cache_off(); } - + $path = $this->db->cachedir; } - + // Add a trailing slash to the path if needed $path = preg_replace("/(.+?)\/*$/", "\\1/", $path); @@ -71,11 +71,11 @@ class CI_DB_Cache { // If the path is wrong we'll turn off caching return $this->db->cache_off(); } - + $this->db->cachedir = $path; return TRUE; } - + // -------------------------------------------------------------------- /** @@ -95,18 +95,18 @@ class CI_DB_Cache { } $segment_one = ($this->CI->uri->segment(1) == FALSE) ? 'default' : $this->CI->uri->segment(1); - + $segment_two = ($this->CI->uri->segment(2) == FALSE) ? 'index' : $this->CI->uri->segment(2); - - $filepath = $this->db->cachedir.$segment_one.'+'.$segment_two.'/'.md5($sql); - + + $filepath = $this->db->cachedir.$segment_one.'+'.$segment_two.'/'.md5($sql); + if (FALSE === ($cachedata = read_file($filepath))) - { + { return FALSE; } - - return unserialize($cachedata); - } + + return unserialize($cachedata); + } // -------------------------------------------------------------------- @@ -124,29 +124,29 @@ class CI_DB_Cache { } $segment_one = ($this->CI->uri->segment(1) == FALSE) ? 'default' : $this->CI->uri->segment(1); - + $segment_two = ($this->CI->uri->segment(2) == FALSE) ? 'index' : $this->CI->uri->segment(2); - + $dir_path = $this->db->cachedir.$segment_one.'+'.$segment_two.'/'; - + $filename = md5($sql); - + if ( ! @is_dir($dir_path)) { if ( ! @mkdir($dir_path, DIR_WRITE_MODE)) { return FALSE; } - - @chmod($dir_path, DIR_WRITE_MODE); + + @chmod($dir_path, DIR_WRITE_MODE); } - + if (write_file($dir_path.$filename, serialize($object)) === FALSE) { return FALSE; } - - @chmod($dir_path.$filename, DIR_WRITE_MODE); + + @chmod($dir_path.$filename, FILE_WRITE_MODE); return TRUE; } @@ -159,19 +159,19 @@ class CI_DB_Cache { * @return bool */ function delete($segment_one = '', $segment_two = '') - { + { if ($segment_one == '') { $segment_one = ($this->CI->uri->segment(1) == FALSE) ? 'default' : $this->CI->uri->segment(1); } - + if ($segment_two == '') { $segment_two = ($this->CI->uri->segment(2) == FALSE) ? 'index' : $this->CI->uri->segment(2); } - + $dir_path = $this->db->cachedir.$segment_one.'+'.$segment_two.'/'; - + delete_files($dir_path, TRUE); } diff --git a/system/database/DB_driver.php b/system/database/DB_driver.php index b2a3c2ebd..2d8f592e3 100644..100755 --- a/system/database/DB_driver.php +++ b/system/database/DB_driver.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -71,13 +71,13 @@ class CI_DB_driver { var $limit_used; - + /** * Constructor. Accepts one parameter containing the database * connection settings. * * @param array - */ + */ function CI_DB_driver($params) { if (is_array($params)) @@ -90,7 +90,7 @@ class CI_DB_driver { log_message('debug', 'Database Driver Class Initialized'); } - + // -------------------------------------------------------------------- /** @@ -99,7 +99,7 @@ class CI_DB_driver { * @access private Called by the constructor * @param mixed * @return void - */ + */ function initialize() { // If an existing connection resource is available @@ -108,9 +108,9 @@ class CI_DB_driver { { return TRUE; } - + // ---------------------------------------------------------------- - + // Connect to the database and set the connection ID $this->conn_id = ($this->pconnect == FALSE) ? $this->db_connect() : $this->db_pconnect(); @@ -118,7 +118,7 @@ class CI_DB_driver { if ( ! $this->conn_id) { log_message('error', 'Unable to connect to the database'); - + if ($this->db_debug) { $this->display_error('db_unable_to_connect'); @@ -134,12 +134,12 @@ class CI_DB_driver { if ( ! $this->db_select()) { log_message('error', 'Unable to select database: '.$this->database); - + if ($this->db_debug) { $this->display_error('db_unable_to_select', $this->database); } - return FALSE; + return FALSE; } else { @@ -148,14 +148,14 @@ class CI_DB_driver { { return FALSE; } - + return TRUE; } } return TRUE; } - + // -------------------------------------------------------------------- /** @@ -171,26 +171,26 @@ class CI_DB_driver { if ( ! $this->_db_set_charset($this->char_set, $this->dbcollat)) { log_message('error', 'Unable to set database connection charset: '.$this->char_set); - + if ($this->db_debug) { $this->display_error('db_unable_to_set_charset', $this->char_set); } - + return FALSE; } - + return TRUE; } - + // -------------------------------------------------------------------- /** * The name of the platform in use (mysql, mssql, etc...) * * @access public - * @return string - */ + * @return string + */ function platform() { return $this->dbdriver; @@ -203,8 +203,8 @@ class CI_DB_driver { * version of the database being used * * @access public - * @return string - */ + * @return string + */ function version() { if (FALSE === ($sql = $this->_version())) @@ -215,16 +215,22 @@ class CI_DB_driver { } return FALSE; } - - if ($this->dbdriver == 'oci8') + + // Some DBs have functions that return the version, and don't run special + // SQL queries per se. In these instances, just return the result. + $driver_version_exceptions = array('oci8', 'sqlite'); + + if (in_array($this->dbdriver, $driver_version_exceptions)) { return $sql; } - - $query = $this->query($sql); - return $query->row('ver'); + else + { + $query = $this->query($sql); + return $query->row('ver'); + } } - + // -------------------------------------------------------------------- /** @@ -239,8 +245,8 @@ class CI_DB_driver { * @access public * @param string An SQL query string * @param array An array of binding data - * @return mixed - */ + * @return mixed + */ function query($sql, $binds = FALSE, $return_object = TRUE) { if ($sql == '') @@ -255,10 +261,10 @@ class CI_DB_driver { // Verify table prefix and replace if necessary if ( ($this->dbprefix != '' AND $this->swap_pre != '') AND ($this->dbprefix != $this->swap_pre) ) - { + { $sql = preg_replace("/(\W)".$this->swap_pre."(\S+?)/", "\\1".$this->dbprefix."\\2", $sql); } - + // Is query caching enabled? If the query is a "read type" // we will load the caching class and return the previously // cached query if it exists @@ -273,7 +279,7 @@ class CI_DB_driver { } } } - + // Compile binds if needed if ($binds !== FALSE) { @@ -285,10 +291,10 @@ class CI_DB_driver { { $this->queries[] = $sql; } - + // Start the Query Timer $time_start = list($sm, $ss) = explode(' ', microtime()); - + // Run the Query if (FALSE === ($this->result_id = $this->simple_query($sql))) { @@ -296,7 +302,7 @@ class CI_DB_driver { { $this->query_times[] = 0; } - + // This will trigger a rollback if transactions are being used $this->_trans_status = FALSE; @@ -306,10 +312,10 @@ class CI_DB_driver { // additional queries before displaying the error $error_no = $this->_error_number(); $error_msg = $this->_error_message(); - + // We call this function in order to roll-back queries // if transactions are enabled. If we don't call this here - // the error message will trigger an exit, causing the + // the error message will trigger an exit, causing the // transactions to remain in limbo. $this->trans_complete(); @@ -323,10 +329,10 @@ class CI_DB_driver { ) ); } - + return FALSE; } - + // Stop and aggregate the query time results $time_end = list($em, $es) = explode(' ', microtime()); $this->benchmark += ($em + $es) - ($sm + $ss); @@ -335,10 +341,10 @@ class CI_DB_driver { { $this->query_times[] = ($em + $es) - ($sm + $ss); } - + // Increment the query counter $this->query_count++; - + // Was the query a "write" type? // If so we'll simply return true if ($this->is_write_type($sql) === TRUE) @@ -349,10 +355,10 @@ class CI_DB_driver { { $this->CACHE->delete(); } - + return TRUE; } - + // Return TRUE if we don't need to create a result object // Currently only the Oracle driver uses this when stored // procedures are used @@ -360,11 +366,11 @@ class CI_DB_driver { { return TRUE; } - - // Load and instantiate the result driver - - $driver = $this->load_rdriver(); - $RES = new $driver(); + + // Load and instantiate the result driver + + $driver = $this->load_rdriver(); + $RES = new $driver(); $RES->conn_id = $this->conn_id; $RES->result_id = $this->result_id; @@ -375,10 +381,10 @@ class CI_DB_driver { $RES->limit_used = $this->limit_used; $this->stmt_id = FALSE; } - + // oci8 vars must be set before calling this $RES->num_rows = $RES->num_rows(); - + // Is query caching enabled? If so, we'll serialize the // result object and save it to a cache file. if ($this->cache_on == TRUE AND $this->_cache_init()) @@ -390,17 +396,17 @@ class CI_DB_driver { // result object, so we'll have to compile the data // and save it) $CR = new CI_DB_result(); - $CR->num_rows = $RES->num_rows(); + $CR->num_rows = $RES->num_rows(); $CR->result_object = $RES->result_object(); $CR->result_array = $RES->result_array(); - + // Reset these since cached objects can not utilize resource IDs. $CR->conn_id = NULL; $CR->result_id = NULL; $this->CACHE->write($sql, $CR); } - + return $RES; } @@ -410,8 +416,8 @@ class CI_DB_driver { * Load the result drivers * * @access public - * @return string the name of the result class - */ + * @return string the name of the result class + */ function load_rdriver() { $driver = 'CI_DB_'.$this->dbdriver.'_result'; @@ -421,10 +427,10 @@ class CI_DB_driver { include_once(BASEPATH.'database/DB_result'.EXT); include_once(BASEPATH.'database/drivers/'.$this->dbdriver.'/'.$this->dbdriver.'_result'.EXT); } - + return $driver; } - + // -------------------------------------------------------------------- /** @@ -435,8 +441,8 @@ class CI_DB_driver { * * @access public * @param string the sql query - * @return mixed - */ + * @return mixed + */ function simple_query($sql) { if ( ! $this->conn_id) @@ -446,7 +452,7 @@ class CI_DB_driver { return $this->_execute($sql); } - + // -------------------------------------------------------------------- /** @@ -454,8 +460,8 @@ class CI_DB_driver { * This permits transactions to be disabled at run-time. * * @access public - * @return void - */ + * @return void + */ function trans_off() { $this->trans_enabled = FALSE; @@ -471,23 +477,23 @@ class CI_DB_driver { * a failure of one group will not affect any others * * @access public - * @return void - */ + * @return void + */ function trans_strict($mode = TRUE) { $this->trans_strict = is_bool($mode) ? $mode : TRUE; } - + // -------------------------------------------------------------------- /** * Start Transaction * * @access public - * @return void - */ + * @return void + */ function trans_start($test_mode = FALSE) - { + { if ( ! $this->trans_enabled) { return FALSE; @@ -499,7 +505,7 @@ class CI_DB_driver { $this->_trans_depth += 1; return; } - + $this->trans_begin($test_mode); } @@ -509,27 +515,27 @@ class CI_DB_driver { * Complete Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_complete() { if ( ! $this->trans_enabled) { return FALSE; } - + // When transactions are nested we only begin/commit/rollback the outermost ones if ($this->_trans_depth > 1) { $this->_trans_depth -= 1; return TRUE; } - + // The query() function will set this flag to FALSE in the event that a query failed if ($this->_trans_status === FALSE) { $this->trans_rollback(); - + // If we are NOT running in strict mode, we will reset // the _trans_status flag so that subsequent groups of transactions // will be permitted. @@ -541,7 +547,7 @@ class CI_DB_driver { log_message('debug', 'DB Transaction Failure'); return FALSE; } - + $this->trans_commit(); return TRUE; } @@ -552,8 +558,8 @@ class CI_DB_driver { * Lets you retrieve the transaction flag to determine if it has failed * * @access public - * @return bool - */ + * @return bool + */ function trans_status() { return $this->_trans_status; @@ -567,20 +573,20 @@ class CI_DB_driver { * @access public * @param string the sql statement * @param array an array of bind data - * @return string - */ + * @return string + */ function compile_binds($sql, $binds) { if (strpos($sql, $this->bind_marker) === FALSE) { return $sql; } - + if ( ! is_array($binds)) { $binds = array($binds); } - + // Get the sql segments around the bind markers $segments = explode($this->bind_marker, $sql); @@ -601,7 +607,7 @@ class CI_DB_driver { return $result; } - + // -------------------------------------------------------------------- /** @@ -609,8 +615,8 @@ class CI_DB_driver { * * @access public * @param string An SQL query string - * @return boolean - */ + * @return boolean + */ function is_write_type($sql) { if ( ! preg_match('/^\s*"?(SET|INSERT|UPDATE|DELETE|REPLACE|CREATE|DROP|TRUNCATE|LOAD DATA|COPY|ALTER|GRANT|REVOKE|LOCK|UNLOCK)\s+/i', $sql)) @@ -619,7 +625,7 @@ class CI_DB_driver { } return TRUE; } - + // -------------------------------------------------------------------- /** @@ -627,34 +633,34 @@ class CI_DB_driver { * * @access public * @param integer The number of decimal places - * @return integer - */ + * @return integer + */ function elapsed_time($decimals = 6) { return number_format($this->benchmark, $decimals); } - + // -------------------------------------------------------------------- /** * Returns the total number of queries * * @access public - * @return integer - */ + * @return integer + */ function total_queries() { return $this->query_count; } - + // -------------------------------------------------------------------- /** * Returns the last query that was executed * * @access public - * @return void - */ + * @return void + */ function last_query() { return end($this->queries); @@ -670,8 +676,8 @@ class CI_DB_driver { * * @access public * @param string - * @return mixed - */ + * @return mixed + */ function escape($str) { if (is_string($str)) @@ -691,24 +697,24 @@ class CI_DB_driver { } // -------------------------------------------------------------------- - + /** * Escape LIKE String * * Calls the individual driver for platform * specific escaping for LIKE conditions - * + * * @access public * @param string * @return mixed */ - function escape_like_str($str) - { - return $this->escape_str($str, TRUE); + function escape_like_str($str) + { + return $this->escape_str($str, TRUE); } // -------------------------------------------------------------------- - + /** * Primary * @@ -717,12 +723,12 @@ class CI_DB_driver { * * @access public * @param string the table name - * @return string - */ + * @return string + */ function primary($table = '') - { + { $fields = $this->list_fields($table); - + if ( ! is_array($fields)) { return FALSE; @@ -737,8 +743,8 @@ class CI_DB_driver { * Returns an array of table names * * @access public - * @return array - */ + * @return array + */ function list_tables($constrain_by_prefix = FALSE) { // Is there a cached result? @@ -746,7 +752,7 @@ class CI_DB_driver { { return $this->data_cache['table_names']; } - + if (FALSE === ($sql = $this->_list_tables($constrain_by_prefix))) { if ($this->db_debug) @@ -758,7 +764,7 @@ class CI_DB_driver { $retval = array(); $query = $this->query($sql); - + if ($query->num_rows() > 0) { foreach($query->result_array() as $row) @@ -777,7 +783,7 @@ class CI_DB_driver { $this->data_cache['table_names'] = $retval; return $this->data_cache['table_names']; } - + // -------------------------------------------------------------------- /** @@ -786,10 +792,10 @@ class CI_DB_driver { * @return boolean */ function table_exists($table_name) - { + { return ( ! in_array($this->_protect_identifiers($table_name, TRUE, FALSE, FALSE), $this->list_tables())) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- /** @@ -797,7 +803,7 @@ class CI_DB_driver { * * @access public * @param string the table name - * @return array + * @return array */ function list_fields($table = '') { @@ -806,7 +812,7 @@ class CI_DB_driver { { return $this->data_cache['field_names'][$table]; } - + if ($table == '') { if ($this->db_debug) @@ -815,8 +821,8 @@ class CI_DB_driver { } return FALSE; } - - if (FALSE === ($sql = $this->_list_columns($this->_protect_identifiers($table, TRUE, NULL, FALSE)))) + + if (FALSE === ($sql = $this->_list_columns($table))) { if ($this->db_debug) { @@ -824,9 +830,9 @@ class CI_DB_driver { } return FALSE; } - + $query = $this->query($sql); - + $retval = array(); foreach($query->result_array() as $row) { @@ -837,9 +843,9 @@ class CI_DB_driver { else { $retval[] = current($row); - } + } } - + $this->data_cache['field_names'][$table] = $retval; return $this->data_cache['field_names'][$table]; } @@ -854,10 +860,10 @@ class CI_DB_driver { * @return boolean */ function field_exists($field_name, $table_name) - { + { return ( ! in_array($field_name, $this->list_fields($table_name))) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- /** @@ -865,8 +871,8 @@ class CI_DB_driver { * * @access public * @param string the table name - * @return object - */ + * @return object + */ function field_data($table = '') { if ($table == '') @@ -877,36 +883,36 @@ class CI_DB_driver { } return FALSE; } - + $query = $this->query($this->_field_data($this->_protect_identifiers($table, TRUE, NULL, FALSE))); return $query->field_data(); - } + } // -------------------------------------------------------------------- - + /** * Generate an insert string * * @access public * @param string the table upon which the query will be performed * @param array an associative array data of key/values - * @return string - */ + * @return string + */ function insert_string($table, $data) { $fields = array(); $values = array(); - + foreach($data as $key => $val) { $fields[] = $this->_escape_identifiers($key); $values[] = $this->escape($val); } - + return $this->_insert($this->_protect_identifiers($table, TRUE, NULL, FALSE), $fields, $values); - } - + } + // -------------------------------------------------------------------- /** @@ -916,15 +922,15 @@ class CI_DB_driver { * @param string the table upon which the query will be performed * @param array an associative array data of key/values * @param mixed the "where" statement - * @return string - */ + * @return string + */ function update_string($table, $data, $where) { if ($where == '') { return false; } - + $fields = array(); foreach($data as $key => $val) { @@ -941,23 +947,23 @@ class CI_DB_driver { foreach ($where as $key => $val) { $prefix = (count($dest) == 0) ? '' : ' AND '; - + if ($val !== '') { if ( ! $this->_has_operator($key)) { $key .= ' ='; } - + $val = ' '.$this->escape($val); } - + $dest[] = $prefix.$key.$val; } - } + } return $this->_update($this->_protect_identifiers($table, TRUE, NULL, FALSE), $fields, $dest); - } + } // -------------------------------------------------------------------- @@ -987,17 +993,17 @@ class CI_DB_driver { * @access public * @param string the function name * @param mixed any parameters needed by the function - * @return mixed - */ + * @return mixed + */ function call_function($function) { $driver = ($this->dbdriver == 'postgre') ? 'pg_' : $this->dbdriver.'_'; - + if (FALSE === strpos($driver, $function)) { $function = $driver.$function; } - + if ( ! function_exists($function)) { if ($this->db_debug) @@ -1022,7 +1028,7 @@ class CI_DB_driver { * @access public * @param string the path to the cache directory * @return void - */ + */ function cache_set_path($path = '') { $this->cachedir = $path; @@ -1035,7 +1041,7 @@ class CI_DB_driver { * * @access public * @return void - */ + */ function cache_on() { $this->cache_on = TRUE; @@ -1049,13 +1055,13 @@ class CI_DB_driver { * * @access public * @return void - */ + */ function cache_off() { $this->cache_on = FALSE; return FALSE; } - + // -------------------------------------------------------------------- @@ -1064,7 +1070,7 @@ class CI_DB_driver { * * @access public * @return void - */ + */ function cache_delete($segment_one = '', $segment_two = '') { if ( ! $this->_cache_init()) @@ -1081,7 +1087,7 @@ class CI_DB_driver { * * @access public * @return void - */ + */ function cache_delete_all() { if ( ! $this->_cache_init()) @@ -1099,7 +1105,7 @@ class CI_DB_driver { * * @access private * @return void - */ + */ function _cache_init() { if (is_object($this->CACHE) AND class_exists('CI_DB_Cache')) @@ -1125,8 +1131,8 @@ class CI_DB_driver { * Close DB Connection * * @access public - * @return void - */ + * @return void + */ function close() { if (is_resource($this->conn_id) OR is_object($this->conn_id)) @@ -1135,7 +1141,7 @@ class CI_DB_driver { } $this->conn_id = FALSE; } - + // -------------------------------------------------------------------- /** @@ -1145,11 +1151,11 @@ class CI_DB_driver { * @param string the error message * @param string any "swap" values * @param boolean whether to localize the message - * @return string sends the application/error_db.php template - */ + * @return string sends the application/error_db.php template + */ function display_error($error = '', $swap = '', $native = FALSE) { - $LANG =& load_class('Language'); + $LANG =& load_class('Lang', 'core'); $LANG->load('db'); $heading = $LANG->line('db_error_heading'); @@ -1162,8 +1168,26 @@ class CI_DB_driver { { $message = ( ! is_array($error)) ? array(str_replace('%s', $swap, $LANG->line($error))) : $error; } - - $error =& load_class('Exceptions'); + + // Find the most likely culprit of the error by going through + // the backtrace until the source file is no longer in the + // database folder. + + $trace = debug_backtrace(); + + foreach($trace as $call) + { + if (isset($call['file']) && strpos($call['file'], BASEPATH.'database') === FALSE) + { + // Found it - use a relative path for safety + $message[] = 'Filename: '.str_replace(array(BASEPATH, APPPATH), '', $call['file']); + $message[] = 'Line Number: '.$call['line']; + + break; + } + } + + $error =& load_class('Exceptions', 'core'); echo $error->show_error($heading, $message, 'error_db'); exit; } @@ -1190,7 +1214,7 @@ class CI_DB_driver { * Protect Identifiers * * This function is used extensively by the Active Record class, and by - * a couple functions in this class. + * a couple functions in this class. * It takes a column or table name (optionally with an alias) and inserts * the table prefix onto it. Some logic is necessary in order to deal with * column names that include the path. Consider a query like this: @@ -1212,7 +1236,7 @@ class CI_DB_driver { * @param mixed * @param bool * @return string - */ + */ function _protect_identifiers($item, $prefix_single = FALSE, $protect_identifiers = NULL, $field_exists = TRUE) { if ( ! is_bool($protect_identifiers)) @@ -1234,7 +1258,7 @@ class CI_DB_driver { // Convert tabs or multiple spaces into single spaces $item = preg_replace('/[\t ]+/', ' ', $item); - + // If the item has an alias declaration we remove it and set it aside. // Basically we remove everything to the right of the first space $alias = ''; @@ -1245,7 +1269,7 @@ class CI_DB_driver { } // This is basically a bug fix for queries that use MAX, MIN, etc. - // If a parenthesis is found we know that we do not need to + // If a parenthesis is found we know that we do not need to // escape the data or add a prefix. There's probably a more graceful // way to deal with this, but I'm not thinking of it -- Rick if (strpos($item, '(') !== FALSE) @@ -1259,7 +1283,7 @@ class CI_DB_driver { if (strpos($item, '.') !== FALSE) { $parts = explode('.', $item); - + // Does the first segment of the exploded item match // one of the aliases previously identified? If so, // we have nothing more to do other than escape the item @@ -1274,12 +1298,12 @@ class CI_DB_driver { $parts[$key] = $this->_escape_identifiers($val); } } - + $item = implode('.', $parts); - } + } return $item.$alias; } - + // Is there a table prefix defined in the config file? If not, no need to do anything if ($this->dbprefix != '') { @@ -1302,7 +1326,7 @@ class CI_DB_driver { { $i = 0; } - + // This flag is set when the supplied $item does not contain a field name. // This can happen when this function is being called from a JOIN. if ($field_exists == FALSE) @@ -1315,22 +1339,22 @@ class CI_DB_driver { { $parts[$i] = preg_replace("/^".$this->swap_pre."(\S+?)/", $this->dbprefix."\\1", $parts[$i]); } - + // We only add the table prefix if it does not already exist if (substr($parts[$i], 0, strlen($this->dbprefix)) != $this->dbprefix) { $parts[$i] = $this->dbprefix.$parts[$i]; } - + // Put the parts back together $item = implode('.', $parts); } - + if ($protect_identifiers === TRUE) { $item = $this->_escape_identifiers($item); } - + return $item.$alias; } @@ -1347,14 +1371,14 @@ class CI_DB_driver { if ($prefix_single == TRUE AND substr($item, 0, strlen($this->dbprefix)) != $this->dbprefix) { $item = $this->dbprefix.$item; - } + } } if ($protect_identifiers === TRUE AND ! in_array($item, $this->_reserved_identifiers)) { $item = $this->_escape_identifiers($item); } - + return $item.$alias; } diff --git a/system/database/DB_forge.php b/system/database/DB_forge.php index c5931db27..27f2c372d 100644..100755 --- a/system/database/DB_forge.php +++ b/system/database/DB_forge.php @@ -2,11 +2,11 @@ /** * Code Igniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -24,9 +24,9 @@ */ class CI_DB_forge { - var $fields = array(); + var $fields = array(); var $keys = array(); - var $primary_keys = array(); + var $primary_keys = array(); var $db_char_set = ''; /** @@ -34,7 +34,7 @@ class CI_DB_forge { * * Grabs the CI super object instance so we can access it. * - */ + */ function CI_DB_forge() { // Assign the main database object to $this->db @@ -55,12 +55,12 @@ class CI_DB_forge { function create_database($db_name) { $sql = $this->_create_database($db_name); - + if (is_bool($sql)) { return $sql; } - + return $this->db->query($sql); } @@ -76,12 +76,12 @@ class CI_DB_forge { function drop_database($db_name) { $sql = $this->_drop_database($db_name); - + if (is_bool($sql)) { return $sql; } - + return $this->db->query($sql); } @@ -103,15 +103,15 @@ class CI_DB_forge { { $this->add_key($one, $primary); } - + return; } - + if ($key == '') { show_error('Key information is required for that operation.'); } - + if ($primary === TRUE) { $this->primary_keys[] = $key; @@ -137,7 +137,7 @@ class CI_DB_forge { { show_error('Field information is required.'); } - + if (is_string($field)) { if ($field == 'id') @@ -157,16 +157,16 @@ class CI_DB_forge { { show_error('Field information is required for that operation.'); } - + $this->fields[] = $field; } } - + if (is_array($field)) { $this->fields = array_merge($this->fields, $field); } - + } // -------------------------------------------------------------------- @@ -179,19 +179,19 @@ class CI_DB_forge { * @return bool */ function create_table($table = '', $if_not_exists = FALSE) - { + { if ($table == '') { show_error('A table name is required for that operation.'); } - + if (count($this->fields) == 0) - { + { show_error('Field information is required.'); } $sql = $this->_create_table($this->db->dbprefix.$table, $this->fields, $this->primary_keys, $this->keys, $if_not_exists); - + $this->_reset(); return $this->db->query($sql); } @@ -208,12 +208,12 @@ class CI_DB_forge { function drop_table($table_name) { $sql = $this->_drop_table($this->db->dbprefix.$table_name); - + if (is_bool($sql)) { return $sql; } - + return $this->db->query($sql); } @@ -233,7 +233,7 @@ class CI_DB_forge { { show_error('A table name is required for that operation.'); } - + $sql = $this->_rename_table($table_name, $new_table_name); return $this->db->query($sql); } @@ -261,24 +261,25 @@ class CI_DB_forge { foreach ($field as $k => $v) { - $this->add_field(array($k => $field[$k])); + $this->add_field(array($k => $field[$k])); if (count($this->fields) == 0) - { + { show_error('Field information is required.'); } - + $sql = $this->_alter_table('ADD', $this->db->dbprefix.$table, $this->fields, $after_field); $this->_reset(); - + if ($this->db->query($sql) === FALSE) { return FALSE; } } - + return TRUE; + } // -------------------------------------------------------------------- @@ -293,7 +294,7 @@ class CI_DB_forge { */ function drop_column($table = '', $column_name = '') { - + if ($table == '') { show_error('A table name is required for that operation.'); @@ -305,7 +306,7 @@ class CI_DB_forge { } $sql = $this->_alter_table('DROP', $this->db->dbprefix.$table, $column_name); - + return $this->db->query($sql); } @@ -332,23 +333,29 @@ class CI_DB_forge { foreach ($field as $k => $v) { + // If no name provided, use the current name + if ( ! isset($field[$k]['name'])) + { + $field[$k]['name'] = $k; + } + $this->add_field(array($k => $field[$k])); if (count($this->fields) == 0) - { + { show_error('Field information is required.'); } - + $sql = $this->_alter_table('CHANGE', $this->db->dbprefix.$table, $this->fields); $this->_reset(); - + if ($this->db->query($sql) === FALSE) { return FALSE; } } - + return TRUE; } @@ -364,9 +371,9 @@ class CI_DB_forge { */ function _reset() { - $this->fields = array(); + $this->fields = array(); $this->keys = array(); - $this->primary_keys = array(); + $this->primary_keys = array(); } } diff --git a/system/database/DB_result.php b/system/database/DB_result.php index b9e64feeb..fb4268c21 100644..100755 --- a/system/database/DB_result.php +++ b/system/database/DB_result.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -28,13 +28,14 @@ */ class CI_DB_result { - var $conn_id = NULL; - var $result_id = NULL; - var $result_array = array(); - var $result_object = array(); - var $current_row = 0; - var $num_rows = 0; - var $row_data = NULL; + var $conn_id = NULL; + var $result_id = NULL; + var $result_array = array(); + var $result_object = array(); + var $custom_result_object = array(); + var $current_row = 0; + var $num_rows = 0; + var $row_data = NULL; /** @@ -42,30 +43,67 @@ class CI_DB_result { * * @access public * @param string can be "object" or "array" - * @return mixed either a result object or array - */ + * @return mixed either a result object or array + */ function result($type = 'object') - { - return ($type == 'object') ? $this->result_object() : $this->result_array(); + { + if ($type == 'array') return $this->result_array(); + else if ($type == 'object') return $this->result_object(); + else return $this->custom_result_object($type); } // -------------------------------------------------------------------- + /** + * Custom query result. + * + * @param class_name A string that represents the type of object you want back + * @return array of objects + */ + function custom_result_object($class_name) + { + if (array_key_exists($class_name, $this->custom_result_object)) + { + return $this->custom_result_object[$class_name]; + } + + if ($this->result_id === FALSE OR $this->num_rows() == 0) + { + return array(); + } + + // add the data to the object + $this->_data_seek(0); + $result_object = array(); + while ($row = $this->_fetch_object()) + { + $object = new $class_name(); + foreach($row as $key => $value) + { + $object->$key = $value; + } + $result_object[] = $object; + } + + // return the array + return $this->custom_result_object[$class_name] = $result_object; + } + /** * Query result. "object" version. * * @access public * @return object - */ + */ function result_object() { if (count($this->result_object) > 0) { return $this->result_object; } - - // In the event that query caching is on the result_id variable - // will return FALSE since there isn't a valid SQL resource so + + // In the event that query caching is on the result_id variable + // will return FALSE since there isn't a valid SQL resource so // we'll simply return an empty array. if ($this->result_id === FALSE OR $this->num_rows() == 0) { @@ -77,10 +115,10 @@ class CI_DB_result { { $this->result_object[] = $row; } - + return $this->result_object; } - + // -------------------------------------------------------------------- /** @@ -88,7 +126,7 @@ class CI_DB_result { * * @access public * @return array - */ + */ function result_array() { if (count($this->result_array) > 0) @@ -96,8 +134,8 @@ class CI_DB_result { return $this->result_array; } - // In the event that query caching is on the result_id variable - // will return FALSE since there isn't a valid SQL resource so + // In the event that query caching is on the result_id variable + // will return FALSE since there isn't a valid SQL resource so // we'll simply return an empty array. if ($this->result_id === FALSE OR $this->num_rows() == 0) { @@ -109,7 +147,7 @@ class CI_DB_result { { $this->result_array[] = $row; } - + return $this->result_array; } @@ -121,8 +159,8 @@ class CI_DB_result { * @access public * @param string * @param string can be "object" or "array" - * @return mixed either a result object or array - */ + * @return mixed either a result object or array + */ function row($n = 0, $type = 'object') { if ( ! is_numeric($n)) @@ -132,17 +170,19 @@ class CI_DB_result { { $this->row_data = $this->row_array(0); } - + // array_key_exists() instead of isset() to allow for MySQL NULL values if (array_key_exists($n, $this->row_data)) { return $this->row_data[$n]; } - // reset the $n variable if the result was not achieved + // reset the $n variable if the result was not achieved $n = 0; } - - return ($type == 'object') ? $this->row_object($n) : $this->row_array($n); + + if ($type == 'object') return $this->row_object($n); + else if ($type == 'array') return $this->row_array($n); + else return $this->custom_row_object($n, $type); } // -------------------------------------------------------------------- @@ -152,7 +192,7 @@ class CI_DB_result { * * @access public * @return object - */ + */ function set_row($key, $value = NULL) { // We cache the row data for subsequent uses @@ -160,17 +200,17 @@ class CI_DB_result { { $this->row_data = $this->row_array(0); } - + if (is_array($key)) { foreach ($key as $k => $v) { $this->row_data[$k] = $v; } - + return; } - + if ($key != '' AND ! is_null($value)) { $this->row_data[$key] = $value; @@ -179,16 +219,39 @@ class CI_DB_result { // -------------------------------------------------------------------- - /** + /** + * Returns a single result row - custom object version + * + * @access public + * @return object + */ + function custom_row_object($n, $type) + { + $result = $this->custom_result_object($type); + + if (count($result) == 0) + { + return $result; + } + + if ($n != $this->current_row AND isset($result[$n])) + { + $this->current_row = $n; + } + + return $result[$this->current_row]; + } + + /** * Returns a single result row - object version * * @access public * @return object - */ + */ function row_object($n = 0) { $result = $this->result_object(); - + if (count($result) == 0) { return $result; @@ -209,7 +272,7 @@ class CI_DB_result { * * @access public * @return array - */ + */ function row_array($n = 0) { $result = $this->result_array(); @@ -218,16 +281,16 @@ class CI_DB_result { { return $result; } - + if ($n != $this->current_row AND isset($result[$n])) { $this->current_row = $n; } - + return $result[$this->current_row]; } - + // -------------------------------------------------------------------- /** @@ -235,7 +298,7 @@ class CI_DB_result { * * @access public * @return object - */ + */ function first_row($type = 'object') { $result = $this->result($type); @@ -246,7 +309,7 @@ class CI_DB_result { } return $result[0]; } - + // -------------------------------------------------------------------- /** @@ -254,7 +317,7 @@ class CI_DB_result { * * @access public * @return object - */ + */ function last_row($type = 'object') { $result = $this->result($type); @@ -264,7 +327,7 @@ class CI_DB_result { return $result; } return $result[count($result) -1]; - } + } // -------------------------------------------------------------------- @@ -273,7 +336,7 @@ class CI_DB_result { * * @access public * @return object - */ + */ function next_row($type = 'object') { $result = $this->result($type); @@ -287,10 +350,10 @@ class CI_DB_result { { ++$this->current_row; } - + return $result[$this->current_row]; } - + // -------------------------------------------------------------------- /** @@ -298,7 +361,7 @@ class CI_DB_result { * * @access public * @return object - */ + */ function previous_row($type = 'object') { $result = $this->result($type); @@ -329,14 +392,14 @@ class CI_DB_result { function num_rows() { return $this->num_rows; } function num_fields() { return 0; } function list_fields() { return array(); } - function field_data() { return array(); } + function field_data() { return array(); } function free_result() { return TRUE; } function _data_seek() { return TRUE; } - function _fetch_assoc() { return array(); } + function _fetch_assoc() { return array(); } function _fetch_object() { return array(); } - + } // END DB_result class /* End of file DB_result.php */ -/* Location: ./system/database/DB_result.php */
\ No newline at end of file +/* Location: ./system/database/DB_result.php */ diff --git a/system/database/DB_utility.php b/system/database/DB_utility.php index 94e7a0bda..a5f174f0a 100644..100755 --- a/system/database/DB_utility.php +++ b/system/database/DB_utility.php @@ -2,11 +2,11 @@ /** * Code Igniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -25,20 +25,20 @@ class CI_DB_utility extends CI_DB_forge { var $db; - var $data_cache = array(); + var $data_cache = array(); /** * Constructor * * Grabs the CI super object instance so we can access it. * - */ + */ function CI_DB_utility() { // Assign the main database object to $this->db $CI =& get_instance(); $this->db =& $CI->db; - + log_message('debug', "Database Utility Class Initialized"); } @@ -51,13 +51,13 @@ class CI_DB_utility extends CI_DB_forge { * @return bool */ function list_databases() - { + { // Is there a cached result? if (isset($this->data_cache['db_names'])) { return $this->data_cache['db_names']; } - + $query = $this->db->query($this->_list_databases()); $dbs = array(); if ($query->num_rows() > 0) @@ -67,7 +67,7 @@ class CI_DB_utility extends CI_DB_forge { $dbs[] = current($row); } } - + $this->data_cache['db_names'] = $dbs; return $this->data_cache['db_names']; } @@ -75,6 +75,31 @@ class CI_DB_utility extends CI_DB_forge { // -------------------------------------------------------------------- /** + * Determine if a particular database exists + * + * @access public + * @param string + * @return boolean + */ + function database_exists($database_name) + { + // Some databases won't have access to the list_databases() function, so + // this is intended to allow them to override with their own functions as + // defined in $driver_utility.php + if (method_exists($this, '_database_exists')) + { + return $this->_database_exists($database_name); + } + else + { + return ( ! in_array($database_name, $this->list_databases())) ? FALSE : TRUE; + } + } + + + // -------------------------------------------------------------------- + + /** * Optimize Table * * @access public @@ -84,15 +109,15 @@ class CI_DB_utility extends CI_DB_forge { function optimize_table($table_name) { $sql = $this->_optimize_table($table_name); - + if (is_bool($sql)) { show_error('db_must_use_set'); } - + $query = $this->db->query($sql); $res = $query->result_array(); - + // Note: Due to a bug in current() that affects some versions // of PHP we can not pass function call directly into it return current($res); @@ -112,14 +137,14 @@ class CI_DB_utility extends CI_DB_forge { foreach ($this->db->list_tables() as $table_name) { $sql = $this->_optimize_table($table_name); - + if (is_bool($sql)) { return $sql; } - + $query = $this->db->query($sql); - + // Build the result array... // Note: Due to a bug in current() that affects some versions // of PHP we can not pass function call directly into it @@ -128,7 +153,7 @@ class CI_DB_utility extends CI_DB_forge { $key = str_replace($this->db->database.'.', '', current($res)); $keys = array_keys($res); unset($res[$keys[0]]); - + $result[$key] = $res; } @@ -147,20 +172,20 @@ class CI_DB_utility extends CI_DB_forge { function repair_table($table_name) { $sql = $this->_repair_table($table_name); - + if (is_bool($sql)) { return $sql; } - + $query = $this->db->query($sql); - + // Note: Due to a bug in current() that affects some versions // of PHP we can not pass function call directly into it $res = $query->result_array(); return current($res); } - + // -------------------------------------------------------------------- /** @@ -178,25 +203,25 @@ class CI_DB_utility extends CI_DB_forge { if ( ! is_object($query) OR ! method_exists($query, 'list_fields')) { show_error('You must submit a valid result object'); - } - + } + $out = ''; - + // First generate the headings from the table column names foreach ($query->list_fields() as $name) { $out .= $enclosure.str_replace($enclosure, $enclosure.$enclosure, $name).$enclosure.$delim; } - + $out = rtrim($out); $out .= $newline; - + // Next blast through the result array and build out the rows foreach ($query->result_array() as $row) { foreach ($row as $item) { - $out .= $enclosure.str_replace($enclosure, $enclosure.$enclosure, $item).$enclosure.$delim; + $out .= $enclosure.str_replace($enclosure, $enclosure.$enclosure, $item).$enclosure.$delim; } $out = rtrim($out); $out .= $newline; @@ -204,7 +229,7 @@ class CI_DB_utility extends CI_DB_forge { return $out; } - + // -------------------------------------------------------------------- /** @@ -221,7 +246,7 @@ class CI_DB_utility extends CI_DB_forge { { show_error('You must submit a valid result object'); } - + // Set our default values foreach (array('root' => 'root', 'element' => 'element', 'newline' => "\n", 'tab' => "\t") as $key => $val) { @@ -230,10 +255,10 @@ class CI_DB_utility extends CI_DB_forge { $params[$key] = $val; } } - + // Create variables for convenience extract($params); - + // Load the xml helper $CI =& get_instance(); $CI->load->helper('xml'); @@ -243,7 +268,7 @@ class CI_DB_utility extends CI_DB_forge { foreach ($query->result_array() as $row) { $xml .= $tab."<{$element}>".$newline; - + foreach ($row as $key => $val) { $xml .= $tab.$tab."<{$key}>".xml_convert($val)."</{$key}>".$newline; @@ -251,7 +276,7 @@ class CI_DB_utility extends CI_DB_forge { $xml .= $tab."</{$element}>".$newline; } $xml .= "</$root>".$newline; - + return $xml; } @@ -272,9 +297,9 @@ class CI_DB_utility extends CI_DB_forge { { $params = array('tables' => $params); } - + // ------------------------------------------------------ - + // Set up our default preferences $prefs = array( 'tables' => array(), @@ -300,13 +325,13 @@ class CI_DB_utility extends CI_DB_forge { // ------------------------------------------------------ - // Are we backing up a complete database or individual tables? + // Are we backing up a complete database or individual tables? // If no table names were submitted we'll fetch the entire table list if (count($prefs['tables']) == 0) { $prefs['tables'] = $this->db->list_tables(); } - + // ------------------------------------------------------ // Validate the format @@ -320,13 +345,13 @@ class CI_DB_utility extends CI_DB_forge { // Is the encoder supported? If not, we'll either issue an // error or use plain text depending on the debug settings if (($prefs['format'] == 'gzip' AND ! @function_exists('gzencode')) - OR ($prefs['format'] == 'zip' AND ! @function_exists('gzcompress'))) + OR ($prefs['format'] == 'zip' AND ! @function_exists('gzcompress'))) { if ($this->db->db_debug) { return $this->db->display_error('db_unsuported_compression'); } - + $prefs['format'] = 'txt'; } @@ -340,7 +365,7 @@ class CI_DB_utility extends CI_DB_forge { } // ------------------------------------------------------ - + // Was a Gzip file requested? if ($prefs['format'] == 'gzip') { @@ -348,7 +373,7 @@ class CI_DB_utility extends CI_DB_forge { } // ------------------------------------------------------ - + // Was a text file requested? if ($prefs['format'] == 'txt') { @@ -357,7 +382,7 @@ class CI_DB_utility extends CI_DB_forge { // ------------------------------------------------------ - // Was a Zip file requested? + // Was a Zip file requested? if ($prefs['format'] == 'zip') { // If they included the .zip file extension we'll remove it @@ -365,7 +390,7 @@ class CI_DB_utility extends CI_DB_forge { { $prefs['filename'] = str_replace('.zip', '', $prefs['filename']); } - + // Tack on the ".sql" file extension if needed if ( ! preg_match("|.+?\.sql$|", $prefs['filename'])) { @@ -373,13 +398,13 @@ class CI_DB_utility extends CI_DB_forge { } // Load the Zip class and output it - + $CI =& get_instance(); $CI->load->library('zip'); - $CI->zip->add_data($prefs['filename'], $this->_backup($prefs)); + $CI->zip->add_data($prefs['filename'], $this->_backup($prefs)); return $CI->zip->get_zip(); } - + } } diff --git a/system/database/drivers/index.html b/system/database/drivers/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/drivers/index.html +++ b/system/database/drivers/index.html diff --git a/system/database/drivers/mssql/index.html b/system/database/drivers/mssql/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/drivers/mssql/index.html +++ b/system/database/drivers/mssql/index.html diff --git a/system/database/drivers/mssql/mssql_driver.php b/system/database/drivers/mssql/mssql_driver.php index f301ba533..5a69132cd 100644..100755 --- a/system/database/drivers/mssql/mssql_driver.php +++ b/system/database/drivers/mssql/mssql_driver.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -31,14 +31,14 @@ class CI_DB_mssql_driver extends CI_DB { var $dbdriver = 'mssql'; - + // The character used for escaping var $_escape_char = ''; // clause and character used for LIKE escape sequences var $_like_escape_str = " ESCAPE '%s' "; var $_like_escape_chr = '!'; - + /** * The syntax to count rows is slightly different across different * database engines, so this string appears in each driver and is @@ -52,7 +52,7 @@ class CI_DB_mssql_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_connect() { if ($this->port != '') @@ -62,7 +62,7 @@ class CI_DB_mssql_driver extends CI_DB { return @mssql_connect($this->hostname, $this->username, $this->password); } - + // -------------------------------------------------------------------- /** @@ -70,7 +70,7 @@ class CI_DB_mssql_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_pconnect() { if ($this->port != '') @@ -80,9 +80,9 @@ class CI_DB_mssql_driver extends CI_DB { return @mssql_pconnect($this->hostname, $this->username, $this->password); } - + // -------------------------------------------------------------------- - + /** * Reconnect * @@ -98,13 +98,13 @@ class CI_DB_mssql_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Select the database * * @access private called by the base class * @return resource - */ + */ function db_select() { // Note: The brackets are required in the event that the DB name @@ -113,7 +113,7 @@ class CI_DB_mssql_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Set client character set * @@ -129,20 +129,20 @@ class CI_DB_mssql_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Execute the query * * @access private called by the base class * @param string an SQL query * @return resource - */ + */ function _execute($sql) { $sql = $this->_prep_query($sql); return @mssql_query($sql, $this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -153,7 +153,7 @@ class CI_DB_mssql_driver extends CI_DB { * @access private called by execute() * @param string an SQL query * @return string - */ + */ function _prep_query($sql) { return $sql; @@ -165,15 +165,15 @@ class CI_DB_mssql_driver extends CI_DB { * Begin Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_begin($test_mode = FALSE) { if ( ! $this->trans_enabled) { return TRUE; } - + // When transactions are nested we only begin/commit/rollback the outermost ones if ($this->_trans_depth > 0) { @@ -195,8 +195,8 @@ class CI_DB_mssql_driver extends CI_DB { * Commit Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_commit() { if ( ! $this->trans_enabled) @@ -220,8 +220,8 @@ class CI_DB_mssql_driver extends CI_DB { * Rollback Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_rollback() { if ( ! $this->trans_enabled) @@ -238,7 +238,7 @@ class CI_DB_mssql_driver extends CI_DB { $this->simple_query('ROLLBACK TRAN'); return TRUE; } - + // -------------------------------------------------------------------- /** @@ -254,19 +254,16 @@ class CI_DB_mssql_driver extends CI_DB { if (is_array($str)) { foreach($str as $key => $val) - { + { $str[$key] = $this->escape_str($val, $like); - } - - return $str; - } - - // Access the CI object - $CI =& get_instance(); - + } + + return $str; + } + // Escape single quotes - $str = str_replace("'", "''", $CI->input->_remove_invisible_characters($str)); - + $str = str_replace("'", "''", remove_invisible_characters($str)); + // escape LIKE condition wildcards if ($like === TRUE) { @@ -274,10 +271,10 @@ class CI_DB_mssql_driver extends CI_DB { array($this->_like_escape_chr.'%', $this->_like_escape_chr.'_', $this->_like_escape_chr.$this->_like_escape_chr), $str); } - + return $str; } - + // -------------------------------------------------------------------- /** @@ -290,7 +287,7 @@ class CI_DB_mssql_driver extends CI_DB { { return @mssql_rows_affected($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -315,7 +312,7 @@ class CI_DB_mssql_driver extends CI_DB { /** * Parse major version * - * Grabs the major version number from the + * Grabs the major version number from the * database server version string passed in. * * @access private @@ -385,14 +382,14 @@ class CI_DB_mssql_driver extends CI_DB { function _list_tables($prefix_limit = FALSE) { $sql = "SELECT name FROM sysobjects WHERE type = 'U' ORDER BY name"; - + // for future compatibility if ($prefix_limit !== FALSE AND $this->dbprefix != '') { - //$sql .= " LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_char); + //$sql .= " LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_chr); return FALSE; // not currently supported } - + return $sql; } @@ -409,7 +406,7 @@ class CI_DB_mssql_driver extends CI_DB { */ function _list_columns($table = '') { - return "SELECT * FROM INFORMATION_SCHEMA.Columns WHERE TABLE_NAME = '".$table."'"; + return "SELECT * FROM INFORMATION_SCHEMA.Columns WHERE TABLE_NAME = '".$table."'"; } // -------------------------------------------------------------------- @@ -425,7 +422,7 @@ class CI_DB_mssql_driver extends CI_DB { */ function _field_data($table) { - return "SELECT TOP 1 * FROM ".$table; + return "SELECT TOP 1 * FROM ".$table; } // -------------------------------------------------------------------- @@ -440,7 +437,7 @@ class CI_DB_mssql_driver extends CI_DB { { return mssql_get_last_message(); } - + // -------------------------------------------------------------------- /** @@ -477,26 +474,26 @@ class CI_DB_mssql_driver extends CI_DB { { if (strpos($item, '.'.$id) !== FALSE) { - $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); - + $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); - } + } } if (strpos($item, '.') !== FALSE) { - $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; + $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; } else { $str = $this->_escape_char.$item.$this->_escape_char; } - + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); } - + // -------------------------------------------------------------------- /** @@ -515,12 +512,12 @@ class CI_DB_mssql_driver extends CI_DB { { $tables = array($tables); } - + return implode(', ', $tables); } // -------------------------------------------------------------------- - + /** * Insert statement * @@ -533,10 +530,10 @@ class CI_DB_mssql_driver extends CI_DB { * @return string */ function _insert($table, $keys, $values) - { + { return "INSERT INTO ".$table." (".implode(', ', $keys).") VALUES (".implode(', ', $values).")"; } - + // -------------------------------------------------------------------- /** @@ -558,21 +555,21 @@ class CI_DB_mssql_driver extends CI_DB { { $valstr[] = $key." = ".$val; } - + $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + $orderby = (count($orderby) >= 1)?' ORDER BY '.implode(", ", $orderby):''; - + $sql = "UPDATE ".$table." SET ".implode(', ', $valstr); $sql .= ($where != '' AND count($where) >=1) ? " WHERE ".implode(" ", $where) : ''; $sql .= $orderby.$limit; - + return $sql; } - + // -------------------------------------------------------------------- /** @@ -585,12 +582,12 @@ class CI_DB_mssql_driver extends CI_DB { * @access public * @param string the table name * @return string - */ + */ function _truncate($table) { return "TRUNCATE ".$table; } - + // -------------------------------------------------------------------- /** @@ -603,7 +600,7 @@ class CI_DB_mssql_driver extends CI_DB { * @param array the where clause * @param string the limit clause * @return string - */ + */ function _delete($table, $where = array(), $like = array(), $limit = FALSE) { $conditions = ''; @@ -621,7 +618,7 @@ class CI_DB_mssql_driver extends CI_DB { } $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + return "DELETE FROM ".$table.$conditions.$limit; } @@ -641,8 +638,8 @@ class CI_DB_mssql_driver extends CI_DB { function _limit($sql, $limit, $offset) { $i = $limit + $offset; - - return preg_replace('/(^\SELECT (DISTINCT)?)/i','\\1 TOP '.$i.' ', $sql); + + return preg_replace('/(^\SELECT (DISTINCT)?)/i','\\1 TOP '.$i.' ', $sql); } // -------------------------------------------------------------------- @@ -657,7 +654,7 @@ class CI_DB_mssql_driver extends CI_DB { function _close($conn_id) { @mssql_close($conn_id); - } + } } diff --git a/system/database/drivers/mssql/mssql_forge.php b/system/database/drivers/mssql/mssql_forge.php index f6a17811f..70b20ecf8 100644..100755 --- a/system/database/drivers/mssql/mssql_forge.php +++ b/system/database/drivers/mssql/mssql_forge.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -79,12 +79,12 @@ class CI_DB_mssql_forge extends CI_DB_forge { function _create_table($table, $fields, $primary_keys, $keys, $if_not_exists) { $sql = 'CREATE TABLE '; - + if ($if_not_exists === TRUE) { $sql .= 'IF NOT EXISTS '; } - + $sql .= $this->db->_escape_identifiers($table)." ("; $current_field_count = 0; @@ -100,41 +100,41 @@ class CI_DB_mssql_forge extends CI_DB_forge { else { $attributes = array_change_key_case($attributes, CASE_UPPER); - + $sql .= "\n\t".$this->db->_protect_identifiers($field); - + $sql .= ' '.$attributes['TYPE']; - + if (array_key_exists('CONSTRAINT', $attributes)) { $sql .= '('.$attributes['CONSTRAINT'].')'; } - + if (array_key_exists('UNSIGNED', $attributes) && $attributes['UNSIGNED'] === TRUE) { $sql .= ' UNSIGNED'; } - + if (array_key_exists('DEFAULT', $attributes)) { $sql .= ' DEFAULT \''.$attributes['DEFAULT'].'\''; } - + if (array_key_exists('NULL', $attributes) && $attributes['NULL'] === TRUE) { $sql .= ' NULL'; } else { - $sql .= ' NOT NULL'; + $sql .= ' NOT NULL'; } - + if (array_key_exists('AUTO_INCREMENT', $attributes) && $attributes['AUTO_INCREMENT'] === TRUE) { $sql .= ' AUTO_INCREMENT'; } } - + // don't add a comma on the end of the last field if (++$current_field_count < count($fields)) { @@ -147,24 +147,24 @@ class CI_DB_mssql_forge extends CI_DB_forge { $primary_keys = $this->db->_protect_identifiers($primary_keys); $sql .= ",\n\tPRIMARY KEY (" . implode(', ', $primary_keys) . ")"; } - + if (is_array($keys) && count($keys) > 0) { foreach ($keys as $key) { if (is_array($key)) { - $key = $this->db->_protect_identifiers($key); + $key = $this->db->_protect_identifiers($key); } else { $key = array($this->db->_protect_identifiers($key)); } - + $sql .= ",\n\tFOREIGN KEY (" . implode(', ', $key) . ")"; } } - + $sql .= "\n)"; return $sql; @@ -218,9 +218,9 @@ class CI_DB_mssql_forge extends CI_DB_forge { { $sql .= ' AFTER ' . $this->db->_protect_identifiers($after_field); } - + return $sql; - + } // -------------------------------------------------------------------- diff --git a/system/database/drivers/mssql/mssql_result.php b/system/database/drivers/mssql/mssql_result.php index e7b338045..2897ca5a5 100644..100755 --- a/system/database/drivers/mssql/mssql_result.php +++ b/system/database/drivers/mssql/mssql_result.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -25,7 +25,7 @@ * @link http://codeigniter.com/user_guide/database/ */ class CI_DB_mssql_result extends CI_DB_result { - + /** * Number of rows in the result set * @@ -36,7 +36,7 @@ class CI_DB_mssql_result extends CI_DB_result { { return @mssql_num_rows($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -67,7 +67,7 @@ class CI_DB_mssql_result extends CI_DB_result { { $field_names[] = $field->name; } - + return $field_names; } @@ -85,17 +85,17 @@ class CI_DB_mssql_result extends CI_DB_result { { $retval = array(); while ($field = mssql_fetch_field($this->result_id)) - { - $F = new stdClass(); - $F->name = $field->name; - $F->type = $field->type; + { + $F = new stdClass(); + $F->name = $field->name; + $F->type = $field->type; $F->max_length = $field->max_length; $F->primary_key = 0; $F->default = ''; - + $retval[] = $F; } - + return $retval; } @@ -105,7 +105,7 @@ class CI_DB_mssql_result extends CI_DB_result { * Free the result * * @return null - */ + */ function free_result() { if (is_resource($this->result_id)) @@ -131,7 +131,7 @@ class CI_DB_mssql_result extends CI_DB_result { { return mssql_data_seek($this->result_id, $n); } - + // -------------------------------------------------------------------- /** @@ -146,7 +146,7 @@ class CI_DB_mssql_result extends CI_DB_result { { return mssql_fetch_assoc($this->result_id); } - + // -------------------------------------------------------------------- /** diff --git a/system/database/drivers/mssql/mssql_utility.php b/system/database/drivers/mssql/mssql_utility.php index da887b815..48ecbc72a 100644..100755 --- a/system/database/drivers/mssql/mssql_utility.php +++ b/system/database/drivers/mssql/mssql_utility.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -52,7 +52,7 @@ class CI_DB_mssql_utility extends CI_DB_utility { } // -------------------------------------------------------------------- - + /** * Repair table query * @@ -82,42 +82,7 @@ class CI_DB_mssql_utility extends CI_DB_utility { return $this->db->display_error('db_unsuported_feature'); } - /** - * - * The functions below have been deprecated as of 1.6, and are only here for backwards - * compatibility. They now reside in dbforge(). The use of dbutils for database manipulation - * is STRONGLY discouraged in favour if using dbforge. - * - */ - - /** - * Create database - * - * @access private - * @param string the database name - * @return bool - */ - function _create_database($name) - { - return "CREATE DATABASE ".$name; - } - - // -------------------------------------------------------------------- - - /** - * Drop database - * - * @access private - * @param string the database name - * @return bool - */ - function _drop_database($name) - { - return "DROP DATABASE ".$name; - } - } - /* End of file mssql_utility.php */ /* Location: ./system/database/drivers/mssql/mssql_utility.php */
\ No newline at end of file diff --git a/system/database/drivers/mysql/index.html b/system/database/drivers/mysql/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/drivers/mysql/index.html +++ b/system/database/drivers/mysql/index.html diff --git a/system/database/drivers/mysql/mysql_driver.php b/system/database/drivers/mysql/mysql_driver.php index 85a6ef4a0..df18c912e 100644..100755 --- a/system/database/drivers/mysql/mysql_driver.php +++ b/system/database/drivers/mysql/mysql_driver.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -43,9 +43,9 @@ class CI_DB_mysql_driver extends CI_DB { * Whether to use the MySQL "delete hack" which allows the number * of affected rows to be shown. Uses a preg_replace when enabled, * adding a bit more processing to all queries. - */ + */ var $delete_hack = TRUE; - + /** * The syntax to count rows is slightly different across different * database engines, so this string appears in each driver and is @@ -59,17 +59,17 @@ class CI_DB_mysql_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_connect() { if ($this->port != '') { $this->hostname .= ':'.$this->port; } - + return @mysql_connect($this->hostname, $this->username, $this->password, TRUE); } - + // -------------------------------------------------------------------- /** @@ -77,7 +77,7 @@ class CI_DB_mysql_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_pconnect() { if ($this->port != '') @@ -87,7 +87,7 @@ class CI_DB_mysql_driver extends CI_DB { return @mysql_pconnect($this->hostname, $this->username, $this->password); } - + // -------------------------------------------------------------------- /** @@ -108,13 +108,13 @@ class CI_DB_mysql_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Select the database * * @access private called by the base class * @return resource - */ + */ function db_select() { return @mysql_select_db($this->database, $this->conn_id); @@ -136,7 +136,7 @@ class CI_DB_mysql_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Version number query string * @@ -156,13 +156,13 @@ class CI_DB_mysql_driver extends CI_DB { * @access private called by the base class * @param string an SQL query * @return resource - */ + */ function _execute($sql) { $sql = $this->_prep_query($sql); return @mysql_query($sql, $this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -173,7 +173,7 @@ class CI_DB_mysql_driver extends CI_DB { * @access private called by execute() * @param string an SQL query * @return string - */ + */ function _prep_query($sql) { // "DELETE FROM TABLE" returns 0 affected rows This hack modifies @@ -185,7 +185,7 @@ class CI_DB_mysql_driver extends CI_DB { $sql = preg_replace("/^\s*DELETE\s+FROM\s+(\S+)\s*$/", "DELETE FROM \\1 WHERE 1=1", $sql); } } - + return $sql; } @@ -195,15 +195,15 @@ class CI_DB_mysql_driver extends CI_DB { * Begin Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_begin($test_mode = FALSE) { if ( ! $this->trans_enabled) { return TRUE; } - + // When transactions are nested we only begin/commit/rollback the outermost ones if ($this->_trans_depth > 0) { @@ -214,7 +214,7 @@ class CI_DB_mysql_driver extends CI_DB { // If the $test_mode flag is set to TRUE transactions will be rolled back // even if the queries produce a successful result. $this->_trans_failure = ($test_mode === TRUE) ? TRUE : FALSE; - + $this->simple_query('SET AUTOCOMMIT=0'); $this->simple_query('START TRANSACTION'); // can also be BEGIN or BEGIN WORK return TRUE; @@ -226,8 +226,8 @@ class CI_DB_mysql_driver extends CI_DB { * Commit Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_commit() { if ( ! $this->trans_enabled) @@ -252,8 +252,8 @@ class CI_DB_mysql_driver extends CI_DB { * Rollback Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_rollback() { if ( ! $this->trans_enabled) @@ -271,7 +271,7 @@ class CI_DB_mysql_driver extends CI_DB { $this->simple_query('SET AUTOCOMMIT=1'); return TRUE; } - + // -------------------------------------------------------------------- /** @@ -282,17 +282,17 @@ class CI_DB_mysql_driver extends CI_DB { * @param bool whether or not the string will be used in a LIKE condition * @return string */ - function escape_str($str, $like = FALSE) - { + function escape_str($str, $like = FALSE) + { if (is_array($str)) { foreach($str as $key => $val) - { + { $str[$key] = $this->escape_str($val, $like); - } - - return $str; - } + } + + return $str; + } if (function_exists('mysql_real_escape_string') AND is_resource($this->conn_id)) { @@ -306,16 +306,16 @@ class CI_DB_mysql_driver extends CI_DB { { $str = addslashes($str); } - + // escape LIKE condition wildcards if ($like === TRUE) { $str = str_replace(array('%', '_'), array('\\%', '\\_'), $str); } - + return $str; } - + // -------------------------------------------------------------------- /** @@ -328,7 +328,7 @@ class CI_DB_mysql_driver extends CI_DB { { return @mysql_affected_rows($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -360,7 +360,7 @@ class CI_DB_mysql_driver extends CI_DB { { return 0; } - + $query = $this->query($this->_count_string . $this->_protect_identifiers('numrows') . " FROM " . $this->_protect_identifiers($table, TRUE, NULL, FALSE)); if ($query->num_rows() == 0) @@ -385,7 +385,7 @@ class CI_DB_mysql_driver extends CI_DB { */ function _list_tables($prefix_limit = FALSE) { - $sql = "SHOW TABLES FROM ".$this->_escape_char.$this->database.$this->_escape_char; + $sql = "SHOW TABLES FROM ".$this->_escape_char.$this->database.$this->_escape_char; if ($prefix_limit !== FALSE AND $this->dbprefix != '') { @@ -394,7 +394,7 @@ class CI_DB_mysql_driver extends CI_DB { return $sql; } - + // -------------------------------------------------------------------- /** @@ -408,7 +408,7 @@ class CI_DB_mysql_driver extends CI_DB { */ function _list_columns($table = '') { - return "SHOW COLUMNS FROM ".$table; + return "SHOW COLUMNS FROM ".$this->_protect_identifiers($table, TRUE, NULL, FALSE); } // -------------------------------------------------------------------- @@ -439,7 +439,7 @@ class CI_DB_mysql_driver extends CI_DB { { return mysql_error($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -475,26 +475,26 @@ class CI_DB_mysql_driver extends CI_DB { { if (strpos($item, '.'.$id) !== FALSE) { - $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); - + $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); - } + } } - + if (strpos($item, '.') !== FALSE) { - $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; + $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; } else { $str = $this->_escape_char.$item.$this->_escape_char; } - + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); } - + // -------------------------------------------------------------------- /** @@ -513,12 +513,12 @@ class CI_DB_mysql_driver extends CI_DB { { $tables = array($tables); } - + return '('.implode(', ', $tables).')'; } // -------------------------------------------------------------------- - + /** * Insert statement * @@ -531,12 +531,50 @@ class CI_DB_mysql_driver extends CI_DB { * @return string */ function _insert($table, $keys, $values) - { + { return "INSERT INTO ".$table." (".implode(', ', $keys).") VALUES (".implode(', ', $values).")"; } - + // -------------------------------------------------------------------- + + /** + * Replace statement + * + * Generates a platform-specific replace string from the supplied data + * + * @access public + * @param string the table name + * @param array the insert keys + * @param array the insert values + * @return string + */ + function _replace($table, $keys, $values) + { + return "REPLACE INTO ".$table." (".implode(', ', $keys).") VALUES (".implode(', ', $values).")"; + } + + // -------------------------------------------------------------------- + + /** + * Insert_batch statement + * + * Generates a platform-specific insert string from the supplied data + * + * @access public + * @param string the table name + * @param array the insert keys + * @param array the insert values + * @return string + */ + function _insert_batch($table, $keys, $values) + { + return "INSERT INTO ".$table." (".implode(', ', $keys).") VALUES ".implode(', ', $values); + } + + // -------------------------------------------------------------------- + + /** * Update statement * @@ -556,22 +594,76 @@ class CI_DB_mysql_driver extends CI_DB { { $valstr[] = $key." = ".$val; } - + $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + $orderby = (count($orderby) >= 1)?' ORDER BY '.implode(", ", $orderby):''; - + $sql = "UPDATE ".$table." SET ".implode(', ', $valstr); $sql .= ($where != '' AND count($where) >=1) ? " WHERE ".implode(" ", $where) : ''; $sql .= $orderby.$limit; - + + return $sql; + } + + // -------------------------------------------------------------------- + + + /** + * Update_Batch statement + * + * Generates a platform-specific batch update string from the supplied data + * + * @access public + * @param string the table name + * @param array the update data + * @param array the where clause + * @return string + */ + function _update_batch($table, $values, $index, $where = NULL) + { + $ids = array(); + $where = ($where != '' AND count($where) >=1) ? implode(" ", $where).' AND ' : ''; + + foreach($values as $key => $val) + { + $ids[] = $val[$index]; + + foreach(array_keys($val) as $field) + { + if ($field != $index) + { + $final[$field][] = 'WHEN '.$index.' = '.$val[$index].' THEN '.$val[$field]; + } + } + } + + $sql = "UPDATE ".$table." SET "; + $cases = ''; + + foreach($final as $k => $v) + { + $cases .= $k.' = CASE '."\n"; + foreach ($v as $row) + { + $cases .= $row."\n"; + } + + $cases .= 'ELSE '.$k.' END, '; + } + + $sql .= substr($cases, 0, -2); + + $sql .= ' WHERE '.$where.$index.' IN ('.implode(',', $ids).')'; + return $sql; } // -------------------------------------------------------------------- + /** * Truncate statement * @@ -582,12 +674,12 @@ class CI_DB_mysql_driver extends CI_DB { * @access public * @param string the table name * @return string - */ + */ function _truncate($table) { return "TRUNCATE ".$table; } - + // -------------------------------------------------------------------- /** @@ -600,7 +692,7 @@ class CI_DB_mysql_driver extends CI_DB { * @param array the where clause * @param string the limit clause * @return string - */ + */ function _delete($table, $where = array(), $like = array(), $limit = FALSE) { $conditions = ''; @@ -618,7 +710,7 @@ class CI_DB_mysql_driver extends CI_DB { } $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + return "DELETE FROM ".$table.$conditions.$limit; } @@ -636,7 +728,7 @@ class CI_DB_mysql_driver extends CI_DB { * @return string */ function _limit($sql, $limit, $offset) - { + { if ($offset == 0) { $offset = ''; @@ -645,7 +737,7 @@ class CI_DB_mysql_driver extends CI_DB { { $offset .= ", "; } - + return $sql."LIMIT ".$offset.$limit; } @@ -662,7 +754,7 @@ class CI_DB_mysql_driver extends CI_DB { { @mysql_close($conn_id); } - + } diff --git a/system/database/drivers/mysql/mysql_forge.php b/system/database/drivers/mysql/mysql_forge.php index ccacf99f8..529ec980d 100644..100755 --- a/system/database/drivers/mysql/mysql_forge.php +++ b/system/database/drivers/mysql/mysql_forge.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -23,7 +23,7 @@ * @link http://codeigniter.com/user_guide/database/ */ class CI_DB_mysql_forge extends CI_DB_forge { - + /** * Create database * @@ -76,52 +76,67 @@ class CI_DB_mysql_forge extends CI_DB_forge { else { $attributes = array_change_key_case($attributes, CASE_UPPER); - + $sql .= "\n\t".$this->db->_protect_identifiers($field); if (array_key_exists('NAME', $attributes)) { $sql .= ' '.$this->db->_protect_identifiers($attributes['NAME']).' '; } - + if (array_key_exists('TYPE', $attributes)) { $sql .= ' '.$attributes['TYPE']; + + if (array_key_exists('CONSTRAINT', $attributes)) + { + switch ($attributes['TYPE']) + { + case 'decimal': + case 'float': + case 'numeric': + $sql .= '('.implode(',', $attributes['CONSTRAINT']).')'; + break; + + case 'enum': + case 'set': + $sql .= '("'.implode('","', $attributes['CONSTRAINT']).'")'; + break; + + default: + $sql .= '('.$attributes['CONSTRAINT'].')'; + } + } } - - if (array_key_exists('CONSTRAINT', $attributes)) - { - $sql .= '('.$attributes['CONSTRAINT'].')'; - } - + if (array_key_exists('UNSIGNED', $attributes) && $attributes['UNSIGNED'] === TRUE) { $sql .= ' UNSIGNED'; } - + if (array_key_exists('DEFAULT', $attributes)) { $sql .= ' DEFAULT \''.$attributes['DEFAULT'].'\''; } - + if (array_key_exists('NULL', $attributes)) { $sql .= ($attributes['NULL'] === TRUE) ? ' NULL' : ' NOT NULL'; } - + if (array_key_exists('AUTO_INCREMENT', $attributes) && $attributes['AUTO_INCREMENT'] === TRUE) { $sql .= ' AUTO_INCREMENT'; } } - + // don't add a comma on the end of the last field if (++$current_field_count < count($fields)) { $sql .= ','; } } - + return $sql; } @@ -141,12 +156,12 @@ class CI_DB_mysql_forge extends CI_DB_forge { function _create_table($table, $fields, $primary_keys, $keys, $if_not_exists) { $sql = 'CREATE TABLE '; - + if ($if_not_exists === TRUE) { $sql .= 'IF NOT EXISTS '; } - + $sql .= $this->db->_escape_identifiers($table)." ("; $sql .= $this->_process_fields($fields); @@ -165,14 +180,14 @@ class CI_DB_mysql_forge extends CI_DB_forge { if (is_array($key)) { $key_name = $this->db->_protect_identifiers(implode('_', $key)); - $key = $this->db->_protect_identifiers($key); + $key = $this->db->_protect_identifiers($key); } else { $key_name = $this->db->_protect_identifiers($key); $key = array($key_name); } - + $sql .= ",\n\tKEY {$key_name} (" . implode(', ', $key) . ")"; } } @@ -226,7 +241,7 @@ class CI_DB_mysql_forge extends CI_DB_forge { { $sql .= ' AFTER ' . $this->db->_protect_identifiers($after_field); } - + return $sql; } diff --git a/system/database/drivers/mysql/mysql_result.php b/system/database/drivers/mysql/mysql_result.php index acc586626..507389603 100644..100755 --- a/system/database/drivers/mysql/mysql_result.php +++ b/system/database/drivers/mysql/mysql_result.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -36,7 +36,7 @@ class CI_DB_mysql_result extends CI_DB_result { { return @mysql_num_rows($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -49,7 +49,7 @@ class CI_DB_mysql_result extends CI_DB_result { { return @mysql_num_fields($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -67,7 +67,7 @@ class CI_DB_mysql_result extends CI_DB_result { { $field_names[] = $field->name; } - + return $field_names; } @@ -85,27 +85,27 @@ class CI_DB_mysql_result extends CI_DB_result { { $retval = array(); while ($field = mysql_fetch_field($this->result_id)) - { + { $F = new stdClass(); - $F->name = $field->name; - $F->type = $field->type; + $F->name = $field->name; + $F->type = $field->type; $F->default = $field->def; $F->max_length = $field->max_length; $F->primary_key = $field->primary_key; - + $retval[] = $F; } - + return $retval; } - + // -------------------------------------------------------------------- /** * Free the result * * @return null - */ + */ function free_result() { if (is_resource($this->result_id)) @@ -146,7 +146,7 @@ class CI_DB_mysql_result extends CI_DB_result { { return mysql_fetch_assoc($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -161,7 +161,7 @@ class CI_DB_mysql_result extends CI_DB_result { { return mysql_fetch_object($this->result_id); } - + } diff --git a/system/database/drivers/mysql/mysql_utility.php b/system/database/drivers/mysql/mysql_utility.php index 3277b0ff7..e9747c540 100644..100755 --- a/system/database/drivers/mysql/mysql_utility.php +++ b/system/database/drivers/mysql/mysql_utility.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -84,7 +84,7 @@ class CI_DB_mysql_utility extends CI_DB_utility { // Extract the prefs for simplicity extract($params); - + // Build the output $output = ''; foreach ((array)$tables as $table) @@ -97,31 +97,31 @@ class CI_DB_mysql_utility extends CI_DB_utility { // Get the table schema $query = $this->db->query("SHOW CREATE TABLE `".$this->db->database.'`.'.$table); - + // No result means the table name was invalid if ($query === FALSE) { continue; } - + // Write out the table schema $output .= '#'.$newline.'# TABLE STRUCTURE FOR: '.$table.$newline.'#'.$newline.$newline; - if ($add_drop == TRUE) - { + if ($add_drop == TRUE) + { $output .= 'DROP TABLE IF EXISTS '.$table.';'.$newline.$newline; } - + $i = 0; $result = $query->result_array(); foreach ($result[0] as $val) { if ($i++ % 2) - { + { $output .= $val.';'.$newline.$newline; } } - + // If inserts are not needed we're done... if ($add_insert == FALSE) { @@ -130,16 +130,16 @@ class CI_DB_mysql_utility extends CI_DB_utility { // Grab all the data from the current table $query = $this->db->query("SELECT * FROM $table"); - + if ($query->num_rows() == 0) { continue; } - + // Fetch the field names and determine if the field is an // integer type. We use this info to decide whether to // surround the data with quotes or not - + $i = 0; $field_str = ''; $is_int = array(); @@ -148,24 +148,24 @@ class CI_DB_mysql_utility extends CI_DB_utility { // Most versions of MySQL store timestamp as a string $is_int[$i] = (in_array( strtolower(mysql_field_type($query->result_id, $i)), - array('tinyint', 'smallint', 'mediumint', 'int', 'bigint'), //, 'timestamp'), + array('tinyint', 'smallint', 'mediumint', 'int', 'bigint'), //, 'timestamp'), TRUE) ) ? TRUE : FALSE; - + // Create a string of field names $field_str .= '`'.$field->name.'`, '; $i++; } - + // Trim off the end comma $field_str = preg_replace( "/, $/" , "" , $field_str); - - + + // Build the insert string foreach ($query->result_array() as $row) { $val_str = ''; - + $i = 0; foreach ($row as $v) { @@ -184,61 +184,26 @@ class CI_DB_mysql_utility extends CI_DB_utility { else { $val_str .= $v; - } - } - + } + } + // Append a comma $val_str .= ', '; $i++; } - + // Remove the comma at the end of the string $val_str = preg_replace( "/, $/" , "" , $val_str); - + // Build the INSERT string $output .= 'INSERT INTO '.$table.' ('.$field_str.') VALUES ('.$val_str.');'.$newline; } - + $output .= $newline.$newline; } return $output; } - - /** - * - * The functions below have been deprecated as of 1.6, and are only here for backwards - * compatibility. They now reside in dbforge(). The use of dbutils for database manipulation - * is STRONGLY discouraged in favour if using dbforge. - * - */ - - /** - * Create database - * - * @access private - * @param string the database name - * @return bool - */ - function _create_database($name) - { - return "CREATE DATABASE ".$name; - } - - // -------------------------------------------------------------------- - - /** - * Drop database - * - * @access private - * @param string the database name - * @return bool - */ - function _drop_database($name) - { - return "DROP DATABASE ".$name; - } - } /* End of file mysql_utility.php */ diff --git a/system/database/drivers/mysqli/index.html b/system/database/drivers/mysqli/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/drivers/mysqli/index.html +++ b/system/database/drivers/mysqli/index.html diff --git a/system/database/drivers/mysqli/mysqli_driver.php b/system/database/drivers/mysqli/mysqli_driver.php index 5d7200fbd..8942100d4 100644..100755 --- a/system/database/drivers/mysqli/mysqli_driver.php +++ b/system/database/drivers/mysqli/mysqli_driver.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -31,7 +31,7 @@ class CI_DB_mysqli_driver extends CI_DB { var $dbdriver = 'mysqli'; - + // The character used for escaping var $_escape_char = '`'; @@ -51,7 +51,7 @@ class CI_DB_mysqli_driver extends CI_DB { * Whether to use the MySQL "delete hack" which allows the number * of affected rows to be shown. Uses a preg_replace when enabled, * adding a bit more processing to all queries. - */ + */ var $delete_hack = TRUE; // -------------------------------------------------------------------- @@ -61,12 +61,12 @@ class CI_DB_mysqli_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_connect() { if ($this->port != '') { - return @mysqli_connect($this->hostname, $this->username, $this->password, $this->database, $this->port); + return @mysqli_connect($this->hostname, $this->username, $this->password, $this->database, $this->port); } else { @@ -82,12 +82,12 @@ class CI_DB_mysqli_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_pconnect() { return $this->db_connect(); } - + // -------------------------------------------------------------------- /** @@ -114,7 +114,7 @@ class CI_DB_mysqli_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_select() { return @mysqli_select_db($this->conn_id, $this->database); @@ -136,7 +136,7 @@ class CI_DB_mysqli_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Version number query string * @@ -156,14 +156,14 @@ class CI_DB_mysqli_driver extends CI_DB { * @access private called by the base class * @param string an SQL query * @return resource - */ + */ function _execute($sql) { - $sql = $this->_prep_query($sql); + $sql = $this->_prep_query($sql); $result = @mysqli_query($this->conn_id, $sql); return $result; } - + // -------------------------------------------------------------------- /** @@ -174,7 +174,7 @@ class CI_DB_mysqli_driver extends CI_DB { * @access private called by execute() * @param string an SQL query * @return string - */ + */ function _prep_query($sql) { // "DELETE FROM TABLE" returns 0 affected rows This hack modifies @@ -186,7 +186,7 @@ class CI_DB_mysqli_driver extends CI_DB { $sql = preg_replace("/^\s*DELETE\s+FROM\s+(\S+)\s*$/", "DELETE FROM \\1 WHERE 1=1", $sql); } } - + return $sql; } @@ -196,15 +196,15 @@ class CI_DB_mysqli_driver extends CI_DB { * Begin Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_begin($test_mode = FALSE) { if ( ! $this->trans_enabled) { return TRUE; } - + // When transactions are nested we only begin/commit/rollback the outermost ones if ($this->_trans_depth > 0) { @@ -227,8 +227,8 @@ class CI_DB_mysqli_driver extends CI_DB { * Commit Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_commit() { if ( ! $this->trans_enabled) @@ -253,8 +253,8 @@ class CI_DB_mysqli_driver extends CI_DB { * Rollback Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_rollback() { if ( ! $this->trans_enabled) @@ -283,17 +283,17 @@ class CI_DB_mysqli_driver extends CI_DB { * @param bool whether or not the string will be used in a LIKE condition * @return string */ - function escape_str($str, $like = FALSE) + function escape_str($str, $like = FALSE) { if (is_array($str)) { foreach($str as $key => $val) - { + { $str[$key] = $this->escape_str($val, $like); - } - - return $str; - } + } + + return $str; + } if (function_exists('mysqli_real_escape_string') AND is_object($this->conn_id)) { @@ -307,16 +307,16 @@ class CI_DB_mysqli_driver extends CI_DB { { $str = addslashes($str); } - + // escape LIKE condition wildcards if ($like === TRUE) { $str = str_replace(array('%', '_'), array('\\%', '\\_'), $str); } - + return $str; } - + // -------------------------------------------------------------------- /** @@ -329,7 +329,7 @@ class CI_DB_mysqli_driver extends CI_DB { { return @mysqli_affected_rows($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -386,13 +386,13 @@ class CI_DB_mysqli_driver extends CI_DB { */ function _list_tables($prefix_limit = FALSE) { - $sql = "SHOW TABLES FROM ".$this->_escape_char.$this->database.$this->_escape_char; - + $sql = "SHOW TABLES FROM ".$this->_escape_char.$this->database.$this->_escape_char; + if ($prefix_limit !== FALSE AND $this->dbprefix != '') { $sql .= " LIKE '".$this->escape_like_str($this->dbprefix)."%'"; } - + return $sql; } @@ -409,7 +409,7 @@ class CI_DB_mysqli_driver extends CI_DB { */ function _list_columns($table = '') { - return "SHOW COLUMNS FROM ".$table; + return "SHOW COLUMNS FROM ".$this->_protect_identifiers($table, TRUE, NULL, FALSE); } // -------------------------------------------------------------------- @@ -440,7 +440,7 @@ class CI_DB_mysqli_driver extends CI_DB { { return mysqli_error($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -471,31 +471,31 @@ class CI_DB_mysqli_driver extends CI_DB { { return $item; } - + foreach ($this->_reserved_identifiers as $id) { if (strpos($item, '.'.$id) !== FALSE) { - $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); - + $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); - } + } } - + if (strpos($item, '.') !== FALSE) { - $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; + $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; } else { $str = $this->_escape_char.$item.$this->_escape_char; } - + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); } - + // -------------------------------------------------------------------- /** @@ -514,12 +514,12 @@ class CI_DB_mysqli_driver extends CI_DB { { $tables = array($tables); } - + return '('.implode(', ', $tables).')'; } // -------------------------------------------------------------------- - + /** * Insert statement * @@ -532,9 +532,27 @@ class CI_DB_mysqli_driver extends CI_DB { * @return string */ function _insert($table, $keys, $values) - { + { return "INSERT INTO ".$table." (".implode(', ', $keys).") VALUES (".implode(', ', $values).")"; } + + // -------------------------------------------------------------------- + + /** + * Insert_batch statement + * + * Generates a platform-specific insert string from the supplied data + * + * @access public + * @param string the table name + * @param array the insert keys + * @param array the insert values + * @return string + */ + function _insert_batch($table, $keys, $values) + { + return "INSERT INTO ".$table." (".implode(', ', $keys).") VALUES ".implode(', ', $values); + } // -------------------------------------------------------------------- @@ -557,21 +575,72 @@ class CI_DB_mysqli_driver extends CI_DB { { $valstr[] = $key." = ".$val; } - + $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + $orderby = (count($orderby) >= 1)?' ORDER BY '.implode(", ", $orderby):''; - + $sql = "UPDATE ".$table." SET ".implode(', ', $valstr); - + $sql .= ($where != '' AND count($where) >=1) ? " WHERE ".implode(" ", $where) : ''; - + $sql .= $orderby.$limit; - + + return $sql; + } + + // -------------------------------------------------------------------- + + /** + * Update_Batch statement + * + * Generates a platform-specific batch update string from the supplied data + * + * @access public + * @param string the table name + * @param array the update data + * @param array the where clause + * @return string + */ + function _update_batch($table, $values, $index, $where = NULL) + { + $ids = array(); + $where = ($where != '' AND count($where) >=1) ? implode(" ", $where).' AND ' : ''; + + foreach($values as $key => $val) + { + $ids[] = $val[$index]; + + foreach(array_keys($val) as $field) + { + if ($field != $index) + { + $final[$field][] = 'WHEN '.$index.' = '.$val[$index].' THEN '.$val[$field]; + } + } + } + + $sql = "UPDATE ".$table." SET "; + $cases = ''; + + foreach($final as $k => $v) + { + $cases .= $k.' = CASE '."\n"; + foreach ($v as $row) + { + $cases .= $row."\n"; + } + + $cases .= 'ELSE '.$k.' END, '; + } + + $sql .= substr($cases, 0, -2); + + $sql .= ' WHERE '.$where.$index.' IN ('.implode(',', $ids).')'; + return $sql; } - // -------------------------------------------------------------------- /** @@ -584,12 +653,12 @@ class CI_DB_mysqli_driver extends CI_DB { * @access public * @param string the table name * @return string - */ + */ function _truncate($table) { return "TRUNCATE ".$table; } - + // -------------------------------------------------------------------- /** @@ -602,7 +671,7 @@ class CI_DB_mysqli_driver extends CI_DB { * @param array the where clause * @param string the limit clause * @return string - */ + */ function _delete($table, $where = array(), $like = array(), $limit = FALSE) { $conditions = ''; @@ -620,7 +689,7 @@ class CI_DB_mysqli_driver extends CI_DB { } $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + return "DELETE FROM ".$table.$conditions.$limit; } @@ -638,14 +707,14 @@ class CI_DB_mysqli_driver extends CI_DB { * @return string */ function _limit($sql, $limit, $offset) - { + { $sql .= "LIMIT ".$limit; - + if ($offset > 0) { $sql .= " OFFSET ".$offset; } - + return $sql; } diff --git a/system/database/drivers/mysqli/mysqli_forge.php b/system/database/drivers/mysqli/mysqli_forge.php index 262d491ed..d5097335e 100644..100755 --- a/system/database/drivers/mysqli/mysqli_forge.php +++ b/system/database/drivers/mysqli/mysqli_forge.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -23,7 +23,7 @@ * @link http://codeigniter.com/user_guide/database/ */ class CI_DB_mysqli_forge extends CI_DB_forge { - + /** * Create database * @@ -76,52 +76,52 @@ class CI_DB_mysqli_forge extends CI_DB_forge { else { $attributes = array_change_key_case($attributes, CASE_UPPER); - + $sql .= "\n\t".$this->db->_protect_identifiers($field); if (array_key_exists('NAME', $attributes)) { $sql .= ' '.$this->db->_protect_identifiers($attributes['NAME']).' '; } - + if (array_key_exists('TYPE', $attributes)) { $sql .= ' '.$attributes['TYPE']; } - + if (array_key_exists('CONSTRAINT', $attributes)) { $sql .= '('.$attributes['CONSTRAINT'].')'; } - + if (array_key_exists('UNSIGNED', $attributes) && $attributes['UNSIGNED'] === TRUE) { $sql .= ' UNSIGNED'; } - + if (array_key_exists('DEFAULT', $attributes)) { $sql .= ' DEFAULT \''.$attributes['DEFAULT'].'\''; } - + if (array_key_exists('NULL', $attributes)) { $sql .= ($attributes['NULL'] === TRUE) ? ' NULL' : ' NOT NULL'; } - + if (array_key_exists('AUTO_INCREMENT', $attributes) && $attributes['AUTO_INCREMENT'] === TRUE) { $sql .= ' AUTO_INCREMENT'; } } - + // don't add a comma on the end of the last field if (++$current_field_count < count($fields)) { $sql .= ','; } } - + return $sql; } @@ -141,12 +141,12 @@ class CI_DB_mysqli_forge extends CI_DB_forge { function _create_table($table, $fields, $primary_keys, $keys, $if_not_exists) { $sql = 'CREATE TABLE '; - + if ($if_not_exists === TRUE) { $sql .= 'IF NOT EXISTS '; } - + $sql .= $this->db->_escape_identifiers($table)." ("; $sql .= $this->_process_fields($fields); @@ -165,14 +165,14 @@ class CI_DB_mysqli_forge extends CI_DB_forge { if (is_array($key)) { $key_name = $this->db->_protect_identifiers(implode('_', $key)); - $key = $this->db->_protect_identifiers($key); + $key = $this->db->_protect_identifiers($key); } else { $key_name = $this->db->_protect_identifiers($key); $key = array($key_name); } - + $sql .= ",\n\tKEY {$key_name} (" . implode(', ', $key) . ")"; } } @@ -226,7 +226,7 @@ class CI_DB_mysqli_forge extends CI_DB_forge { { $sql .= ' AFTER ' . $this->db->_protect_identifiers($after_field); } - + return $sql; } diff --git a/system/database/drivers/mysqli/mysqli_result.php b/system/database/drivers/mysqli/mysqli_result.php index 81d22cc9c..c4d8f5d58 100644..100755 --- a/system/database/drivers/mysqli/mysqli_result.php +++ b/system/database/drivers/mysqli/mysqli_result.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -25,7 +25,7 @@ * @link http://codeigniter.com/user_guide/database/ */ class CI_DB_mysqli_result extends CI_DB_result { - + /** * Number of rows in the result set * @@ -36,7 +36,7 @@ class CI_DB_mysqli_result extends CI_DB_result { { return @mysqli_num_rows($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -67,7 +67,7 @@ class CI_DB_mysqli_result extends CI_DB_result { { $field_names[] = $field->name; } - + return $field_names; } @@ -85,17 +85,17 @@ class CI_DB_mysqli_result extends CI_DB_result { { $retval = array(); while ($field = mysqli_fetch_field($this->result_id)) - { - $F = new stdClass(); - $F->name = $field->name; - $F->type = $field->type; + { + $F = new stdClass(); + $F->name = $field->name; + $F->type = $field->type; $F->default = $field->def; $F->max_length = $field->max_length; $F->primary_key = ($field->flags & MYSQLI_PRI_KEY_FLAG) ? 1 : 0; - + $retval[] = $F; } - + return $retval; } @@ -105,7 +105,7 @@ class CI_DB_mysqli_result extends CI_DB_result { * Free the result * * @return null - */ + */ function free_result() { if (is_object($this->result_id)) @@ -146,7 +146,7 @@ class CI_DB_mysqli_result extends CI_DB_result { { return mysqli_fetch_assoc($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -161,7 +161,7 @@ class CI_DB_mysqli_result extends CI_DB_result { { return mysqli_fetch_object($this->result_id); } - + } diff --git a/system/database/drivers/mysqli/mysqli_utility.php b/system/database/drivers/mysqli/mysqli_utility.php index 44fd0f7aa..e17889b8c 100644..100755 --- a/system/database/drivers/mysqli/mysqli_utility.php +++ b/system/database/drivers/mysqli/mysqli_utility.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -23,7 +23,7 @@ * @link http://codeigniter.com/user_guide/database/ */ class CI_DB_mysqli_utility extends CI_DB_utility { - + /** * List databases * @@ -34,7 +34,7 @@ class CI_DB_mysqli_utility extends CI_DB_utility { { return "SHOW DATABASES"; } - + // -------------------------------------------------------------------- /** @@ -81,42 +81,6 @@ class CI_DB_mysqli_utility extends CI_DB_utility { // Currently unsupported return $this->db->display_error('db_unsuported_feature'); } - - - /** - * - * The functions below have been deprecated as of 1.6, and are only here for backwards - * compatibility. They now reside in dbforge(). The use of dbutils for database manipulation - * is STRONGLY discouraged in favour if using dbforge. - * - */ - - /** - * Create database - * - * @access private - * @param string the database name - * @return bool - */ - function _create_database($name) - { - return "CREATE DATABASE ".$name; - } - - // -------------------------------------------------------------------- - - /** - * Drop database - * - * @access private - * @param string the database name - * @return bool - */ - function _drop_database($name) - { - return "DROP DATABASE ".$name; - } - } /* End of file mysqli_utility.php */ diff --git a/system/database/drivers/oci8/index.html b/system/database/drivers/oci8/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/drivers/oci8/index.html +++ b/system/database/drivers/oci8/index.html diff --git a/system/database/drivers/oci8/oci8_driver.php b/system/database/drivers/oci8/oci8_driver.php index 758192358..64f53cc3f 100644..100755 --- a/system/database/drivers/oci8/oci8_driver.php +++ b/system/database/drivers/oci8/oci8_driver.php @@ -2,14 +2,14 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com - * @since Version 1.0 + * @since Version 1.0 * @filesource */ @@ -22,10 +22,10 @@ * creates dynamically based on whether the active record * class is being used or not. * - * @package CodeIgniter + * @package CodeIgniter * @subpackage Drivers * @category Database - * @author ExpressionEngine Dev Team + * @author ExpressionEngine Dev Team * @link http://codeigniter.com/user_guide/database/ */ @@ -44,14 +44,14 @@ class CI_DB_oci8_driver extends CI_DB { var $dbdriver = 'oci8'; - + // The character used for excaping var $_escape_char = '"'; - + // clause and character used for LIKE escape sequences var $_like_escape_str = " escape '%s' "; var $_like_escape_chr = '!'; - + /** * The syntax to count rows is slightly different across different * database engines, so this string appears in each driver and is @@ -141,7 +141,7 @@ class CI_DB_oci8_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Version number query string * @@ -248,7 +248,7 @@ class CI_DB_oci8_driver extends CI_DB { } return FALSE; } - + // build the query string $sql = "begin $package.$procedure("; @@ -256,20 +256,20 @@ class CI_DB_oci8_driver extends CI_DB { foreach($params as $param) { $sql .= $param['name'] . ","; - + if (array_key_exists('type', $param) && ($param['type'] == OCI_B_CURSOR)) { $have_cursor = TRUE; } } $sql = trim($sql, ",") . "); end;"; - + $this->stmt_id = FALSE; $this->_set_stmt_id($sql); $this->_bind_params($params); $this->query($sql, FALSE, $have_cursor); } - + // -------------------------------------------------------------------- /** @@ -284,10 +284,10 @@ class CI_DB_oci8_driver extends CI_DB { { return; } - + foreach ($params as $param) { - foreach (array('name', 'value', 'type', 'length') as $val) + foreach (array('name', 'value', 'type', 'length') as $val) { if ( ! isset($param[$val])) { @@ -305,26 +305,26 @@ class CI_DB_oci8_driver extends CI_DB { * Begin Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_begin($test_mode = FALSE) { if ( ! $this->trans_enabled) { return TRUE; } - + // When transactions are nested we only begin/commit/rollback the outermost ones if ($this->_trans_depth > 0) { return TRUE; } - + // Reset the transaction failure flag. // If the $test_mode flag is set to TRUE transactions will be rolled back // even if the queries produce a successful result. $this->_trans_failure = ($test_mode === TRUE) ? TRUE : FALSE; - + $this->_commit = OCI_DEFAULT; return TRUE; } @@ -335,8 +335,8 @@ class CI_DB_oci8_driver extends CI_DB { * Commit Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_commit() { if ( ! $this->trans_enabled) @@ -361,8 +361,8 @@ class CI_DB_oci8_driver extends CI_DB { * Rollback Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_rollback() { if ( ! $this->trans_enabled) @@ -396,18 +396,15 @@ class CI_DB_oci8_driver extends CI_DB { if (is_array($str)) { foreach($str as $key => $val) - { + { $str[$key] = $this->escape_str($val, $like); - } - - return $str; - } + } + + return $str; + } - // Access the CI object - $CI =& get_instance(); + $str = remove_invisible_characters($str); - $str = $CI->input->_remove_invisible_characters($str); - // escape LIKE condition wildcards if ($like === TRUE) { @@ -415,7 +412,7 @@ class CI_DB_oci8_driver extends CI_DB { array($this->_like_escape_chr.'%', $this->_like_escape_chr.'_', $this->_like_escape_chr.$this->_like_escape_chr), $str); } - + return $str; } @@ -493,9 +490,9 @@ class CI_DB_oci8_driver extends CI_DB { if ($prefix_limit !== FALSE AND $this->dbprefix != '') { - $sql .= " WHERE TABLE_NAME LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_char); + $sql .= " WHERE TABLE_NAME LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_chr); } - + return $sql; } @@ -558,7 +555,7 @@ class CI_DB_oci8_driver extends CI_DB { $error = ocierror($this->conn_id); return $error['code']; } - + // -------------------------------------------------------------------- /** @@ -581,26 +578,26 @@ class CI_DB_oci8_driver extends CI_DB { { if (strpos($item, '.'.$id) !== FALSE) { - $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); - + $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); - } + } } - + if (strpos($item, '.') !== FALSE) { - $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; + $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; } else { $str = $this->_escape_char.$item.$this->_escape_char; } - + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); } - + // -------------------------------------------------------------------- /** @@ -619,12 +616,12 @@ class CI_DB_oci8_driver extends CI_DB { { $tables = array($tables); } - + return implode(', ', $tables); } // -------------------------------------------------------------------- - + /** * Insert statement * @@ -662,17 +659,17 @@ class CI_DB_oci8_driver extends CI_DB { { $valstr[] = $key." = ".$val; } - + $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + $orderby = (count($orderby) >= 1)?' ORDER BY '.implode(", ", $orderby):''; - + $sql = "UPDATE ".$table." SET ".implode(', ', $valstr); $sql .= ($where != '' AND count($where) >=1) ? " WHERE ".implode(" ", $where) : ''; $sql .= $orderby.$limit; - + return $sql; } @@ -688,12 +685,12 @@ class CI_DB_oci8_driver extends CI_DB { * @access public * @param string the table name * @return string - */ + */ function _truncate($table) { return "TRUNCATE TABLE ".$table; } - + // -------------------------------------------------------------------- /** @@ -706,7 +703,7 @@ class CI_DB_oci8_driver extends CI_DB { * @param array the where clause * @param string the limit clause * @return string - */ + */ function _delete($table, $where = array(), $like = array(), $limit = FALSE) { $conditions = ''; @@ -724,7 +721,7 @@ class CI_DB_oci8_driver extends CI_DB { } $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + return "DELETE FROM ".$table.$conditions.$limit; } @@ -755,7 +752,7 @@ class CI_DB_oci8_driver extends CI_DB { $this->limit_used = TRUE; return $newsql; - } + } // -------------------------------------------------------------------- diff --git a/system/database/drivers/oci8/oci8_forge.php b/system/database/drivers/oci8/oci8_forge.php index d77ed8de6..3cd17585a 100644..100755 --- a/system/database/drivers/oci8/oci8_forge.php +++ b/system/database/drivers/oci8/oci8_forge.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -66,12 +66,12 @@ class CI_DB_oci8_forge extends CI_DB_forge { function _create_table($table, $fields, $primary_keys, $keys, $if_not_exists) { $sql = 'CREATE TABLE '; - + if ($if_not_exists === TRUE) { $sql .= 'IF NOT EXISTS '; } - + $sql .= $this->db->_escape_identifiers($table)." ("; $current_field_count = 0; @@ -87,41 +87,41 @@ class CI_DB_oci8_forge extends CI_DB_forge { else { $attributes = array_change_key_case($attributes, CASE_UPPER); - + $sql .= "\n\t".$this->db->_protect_identifiers($field); - + $sql .= ' '.$attributes['TYPE']; - + if (array_key_exists('CONSTRAINT', $attributes)) { $sql .= '('.$attributes['CONSTRAINT'].')'; } - + if (array_key_exists('UNSIGNED', $attributes) && $attributes['UNSIGNED'] === TRUE) { $sql .= ' UNSIGNED'; } - + if (array_key_exists('DEFAULT', $attributes)) { $sql .= ' DEFAULT \''.$attributes['DEFAULT'].'\''; } - + if (array_key_exists('NULL', $attributes) && $attributes['NULL'] === TRUE) { $sql .= ' NULL'; } else { - $sql .= ' NOT NULL'; + $sql .= ' NOT NULL'; } - + if (array_key_exists('AUTO_INCREMENT', $attributes) && $attributes['AUTO_INCREMENT'] === TRUE) { $sql .= ' AUTO_INCREMENT'; } } - + // don't add a comma on the end of the last field if (++$current_field_count < count($fields)) { @@ -141,17 +141,17 @@ class CI_DB_oci8_forge extends CI_DB_forge { { if (is_array($key)) { - $key = $this->db->_protect_identifiers($key); + $key = $this->db->_protect_identifiers($key); } else { $key = array($this->db->_protect_identifiers($key)); } - + $sql .= ",\n\tUNIQUE COLUMNS (" . implode(', ', $key) . ")"; } } - + $sql .= "\n)"; return $sql; @@ -218,9 +218,9 @@ class CI_DB_oci8_forge extends CI_DB_forge { { $sql .= ' AFTER ' . $this->db->_protect_identifiers($after_field); } - + return $sql; - + } // -------------------------------------------------------------------- diff --git a/system/database/drivers/oci8/oci8_result.php b/system/database/drivers/oci8/oci8_result.php index cab538e21..88531b436 100644..100755 --- a/system/database/drivers/oci8/oci8_result.php +++ b/system/database/drivers/oci8/oci8_result.php @@ -2,14 +2,14 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com - * @since Version 1.0 + * @since Version 1.0 * @filesource */ @@ -21,7 +21,7 @@ * This class extends the parent result class: CI_DB_result * * @category Database - * @author ExpressionEngine Dev Team + * @author ExpressionEngine Dev Team * @link http://codeigniter.com/user_guide/database/ */ class CI_DB_oci8_result extends CI_DB_result { @@ -35,7 +35,7 @@ class CI_DB_oci8_result extends CI_DB_result { * * Oracle doesn't have a graceful way to retun the number of rows * so we have to use what amounts to a hack. - * + * * * @access public * @return integer @@ -111,7 +111,7 @@ class CI_DB_oci8_result extends CI_DB_result { $fieldCount = $this->num_fields(); for ($c = 1; $c <= $fieldCount; $c++) { - $F = new stdClass(); + $F = new stdClass(); $F->name = ocicolumnname($this->stmt_id, $c); $F->type = ocicolumntype($this->stmt_id, $c); $F->max_length = ocicolumnsize($this->stmt_id, $c); @@ -128,12 +128,12 @@ class CI_DB_oci8_result extends CI_DB_result { * Free the result * * @return null - */ + */ function free_result() { if (is_resource($this->result_id)) { - ocifreestatement($this->result_id); + ocifreestatement($this->result_id); $this->result_id = FALSE; } } @@ -151,8 +151,8 @@ class CI_DB_oci8_result extends CI_DB_result { function _fetch_assoc(&$row) { $id = ($this->curs_id) ? $this->curs_id : $this->stmt_id; - - return ocifetchinto($id, $row, OCI_ASSOC + OCI_RETURN_NULLS); + + return ocifetchinto($id, $row, OCI_ASSOC + OCI_RETURN_NULLS); } // -------------------------------------------------------------------- @@ -166,17 +166,17 @@ class CI_DB_oci8_result extends CI_DB_result { * @return object */ function _fetch_object() - { + { $result = array(); // If PHP 5 is being used we can fetch an result object if (function_exists('oci_fetch_object')) { $id = ($this->curs_id) ? $this->curs_id : $this->stmt_id; - + return @oci_fetch_object($id); } - + // If PHP 4 is being used we have to build our own result foreach ($this->result_array() as $key => $val) { @@ -192,7 +192,7 @@ class CI_DB_oci8_result extends CI_DB_result { { $obj->$key = $val; } - + $result[] = $obj; } diff --git a/system/database/drivers/oci8/oci8_utility.php b/system/database/drivers/oci8/oci8_utility.php index 74670eaab..854b467e1 100644..100755 --- a/system/database/drivers/oci8/oci8_utility.php +++ b/system/database/drivers/oci8/oci8_utility.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -81,41 +81,6 @@ class CI_DB_oci8_utility extends CI_DB_utility { // Currently unsupported return $this->db->display_error('db_unsuported_feature'); } - - /** - * - * The functions below have been deprecated as of 1.6, and are only here for backwards - * compatibility. They now reside in dbforge(). The use of dbutils for database manipulation - * is STRONGLY discouraged in favour if using dbforge. - * - */ - - /** - * Create database - * - * @access public - * @param string the database name - * @return bool - */ - function _create_database($name) - { - return FALSE; - } - - // -------------------------------------------------------------------- - - /** - * Drop database - * - * @access private - * @param string the database name - * @return bool - */ - function _drop_database($name) - { - return FALSE; - } - } /* End of file oci8_utility.php */ diff --git a/system/database/drivers/odbc/index.html b/system/database/drivers/odbc/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/drivers/odbc/index.html +++ b/system/database/drivers/odbc/index.html diff --git a/system/database/drivers/odbc/odbc_driver.php b/system/database/drivers/odbc/odbc_driver.php index 6cb3080d4..c8e03c356 100644..100755 --- a/system/database/drivers/odbc/odbc_driver.php +++ b/system/database/drivers/odbc/odbc_driver.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -31,14 +31,14 @@ class CI_DB_odbc_driver extends CI_DB { var $dbdriver = 'odbc'; - + // the character used to excape - not necessary for ODBC var $_escape_char = ''; - + // clause and character used for LIKE escape sequences var $_like_escape_str = " {escape '%s'} "; var $_like_escape_chr = '!'; - + /** * The syntax to count rows is slightly different across different * database engines, so this string appears in each driver and is @@ -51,7 +51,7 @@ class CI_DB_odbc_driver extends CI_DB { function CI_DB_odbc_driver($params) { parent::CI_DB($params); - + $this->_random_keyword = ' RND('.time().')'; // database specific random keyword } @@ -60,12 +60,12 @@ class CI_DB_odbc_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_connect() { return @odbc_connect($this->hostname, $this->username, $this->password); } - + // -------------------------------------------------------------------- /** @@ -73,12 +73,12 @@ class CI_DB_odbc_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_pconnect() { return @odbc_pconnect($this->hostname, $this->username, $this->password); } - + // -------------------------------------------------------------------- /** @@ -102,7 +102,7 @@ class CI_DB_odbc_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_select() { // Not needed for ODBC @@ -126,7 +126,7 @@ class CI_DB_odbc_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Version number query string * @@ -146,13 +146,13 @@ class CI_DB_odbc_driver extends CI_DB { * @access private called by the base class * @param string an SQL query * @return resource - */ + */ function _execute($sql) { $sql = $this->_prep_query($sql); return @odbc_exec($this->conn_id, $sql); } - + // -------------------------------------------------------------------- /** @@ -163,7 +163,7 @@ class CI_DB_odbc_driver extends CI_DB { * @access private called by execute() * @param string an SQL query * @return string - */ + */ function _prep_query($sql) { return $sql; @@ -175,15 +175,15 @@ class CI_DB_odbc_driver extends CI_DB { * Begin Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_begin($test_mode = FALSE) { if ( ! $this->trans_enabled) { return TRUE; } - + // When transactions are nested we only begin/commit/rollback the outermost ones if ($this->_trans_depth > 0) { @@ -204,8 +204,8 @@ class CI_DB_odbc_driver extends CI_DB { * Commit Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_commit() { if ( ! $this->trans_enabled) @@ -230,8 +230,8 @@ class CI_DB_odbc_driver extends CI_DB { * Rollback Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_rollback() { if ( ! $this->trans_enabled) @@ -265,19 +265,16 @@ class CI_DB_odbc_driver extends CI_DB { if (is_array($str)) { foreach($str as $key => $val) - { + { $str[$key] = $this->escape_str($val, $like); - } - - return $str; - } - - // Access the CI object - $CI =& get_instance(); - + } + + return $str; + } + // ODBC doesn't require escaping - $str = $CI->input->_remove_invisible_characters($str); - + $str = remove_invisible_characters($str); + // escape LIKE condition wildcards if ($like === TRUE) { @@ -285,10 +282,10 @@ class CI_DB_odbc_driver extends CI_DB { array($this->_like_escape_chr.'%', $this->_like_escape_chr.'_', $this->_like_escape_chr.$this->_like_escape_chr), $str); } - + return $str; } - + // -------------------------------------------------------------------- /** @@ -301,7 +298,7 @@ class CI_DB_odbc_driver extends CI_DB { { return @odbc_num_rows($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -362,13 +359,13 @@ class CI_DB_odbc_driver extends CI_DB { if ($prefix_limit !== FALSE AND $this->dbprefix != '') { - //$sql .= " LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_char); + //$sql .= " LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_chr); return FALSE; // not currently supported } - + return $sql; } - + // -------------------------------------------------------------------- /** @@ -413,7 +410,7 @@ class CI_DB_odbc_driver extends CI_DB { { return odbc_errormsg($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -449,26 +446,26 @@ class CI_DB_odbc_driver extends CI_DB { { if (strpos($item, '.'.$id) !== FALSE) { - $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); - + $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); - } + } } - + if (strpos($item, '.') !== FALSE) { - $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; + $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; } else { $str = $this->_escape_char.$item.$this->_escape_char; } - + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); } - + // -------------------------------------------------------------------- /** @@ -487,12 +484,12 @@ class CI_DB_odbc_driver extends CI_DB { { $tables = array($tables); } - + return '('.implode(', ', $tables).')'; } // -------------------------------------------------------------------- - + /** * Insert statement * @@ -505,10 +502,10 @@ class CI_DB_odbc_driver extends CI_DB { * @return string */ function _insert($table, $keys, $values) - { + { return "INSERT INTO ".$table." (".implode(', ', $keys).") VALUES (".implode(', ', $values).")"; } - + // -------------------------------------------------------------------- /** @@ -530,21 +527,21 @@ class CI_DB_odbc_driver extends CI_DB { { $valstr[] = $key." = ".$val; } - + $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + $orderby = (count($orderby) >= 1)?' ORDER BY '.implode(", ", $orderby):''; - + $sql = "UPDATE ".$table." SET ".implode(', ', $valstr); $sql .= ($where != '' AND count($where) >=1) ? " WHERE ".implode(" ", $where) : ''; $sql .= $orderby.$limit; - + return $sql; } - + // -------------------------------------------------------------------- /** @@ -557,12 +554,12 @@ class CI_DB_odbc_driver extends CI_DB { * @access public * @param string the table name * @return string - */ + */ function _truncate($table) { return $this->_delete($table); } - + // -------------------------------------------------------------------- /** @@ -575,7 +572,7 @@ class CI_DB_odbc_driver extends CI_DB { * @param array the where clause * @param string the limit clause * @return string - */ + */ function _delete($table, $where = array(), $like = array(), $limit = FALSE) { $conditions = ''; @@ -593,7 +590,7 @@ class CI_DB_odbc_driver extends CI_DB { } $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + return "DELETE FROM ".$table.$conditions.$limit; } @@ -630,7 +627,7 @@ class CI_DB_odbc_driver extends CI_DB { @odbc_close($conn_id); } - + } diff --git a/system/database/drivers/odbc/odbc_forge.php b/system/database/drivers/odbc/odbc_forge.php index 1ae559b6e..3ec86b4e9 100644..100755 --- a/system/database/drivers/odbc/odbc_forge.php +++ b/system/database/drivers/odbc/odbc_forge.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -54,7 +54,7 @@ class CI_DB_odbc_forge extends CI_DB_forge { function _drop_database($name) { // ODBC has no "drop database" command since it's - // designed to connect to an existing database + // designed to connect to an existing database if ($this->db->db_debug) { return $this->db->display_error('db_unsuported_feature'); @@ -78,12 +78,12 @@ class CI_DB_odbc_forge extends CI_DB_forge { function _create_table($table, $fields, $primary_keys, $keys, $if_not_exists) { $sql = 'CREATE TABLE '; - + if ($if_not_exists === TRUE) { $sql .= 'IF NOT EXISTS '; } - + $sql .= $this->db->_escape_identifiers($table)." ("; $current_field_count = 0; @@ -99,41 +99,41 @@ class CI_DB_odbc_forge extends CI_DB_forge { else { $attributes = array_change_key_case($attributes, CASE_UPPER); - + $sql .= "\n\t".$this->db->_protect_identifiers($field); - + $sql .= ' '.$attributes['TYPE']; - + if (array_key_exists('CONSTRAINT', $attributes)) { $sql .= '('.$attributes['CONSTRAINT'].')'; } - + if (array_key_exists('UNSIGNED', $attributes) && $attributes['UNSIGNED'] === TRUE) { $sql .= ' UNSIGNED'; } - + if (array_key_exists('DEFAULT', $attributes)) { $sql .= ' DEFAULT \''.$attributes['DEFAULT'].'\''; } - + if (array_key_exists('NULL', $attributes) && $attributes['NULL'] === TRUE) { $sql .= ' NULL'; } else { - $sql .= ' NOT NULL'; + $sql .= ' NOT NULL'; } - + if (array_key_exists('AUTO_INCREMENT', $attributes) && $attributes['AUTO_INCREMENT'] === TRUE) { $sql .= ' AUTO_INCREMENT'; } } - + // don't add a comma on the end of the last field if (++$current_field_count < count($fields)) { @@ -146,24 +146,24 @@ class CI_DB_odbc_forge extends CI_DB_forge { $primary_keys = $this->db->_protect_identifiers($primary_keys); $sql .= ",\n\tPRIMARY KEY (" . implode(', ', $primary_keys) . ")"; } - + if (is_array($keys) && count($keys) > 0) { foreach ($keys as $key) { if (is_array($key)) { - $key = $this->db->_protect_identifiers($key); + $key = $this->db->_protect_identifiers($key); } else { $key = array($this->db->_protect_identifiers($key)); } - + $sql .= ",\n\tFOREIGN KEY (" . implode(', ', $key) . ")"; } } - + $sql .= "\n)"; return $sql; @@ -179,7 +179,7 @@ class CI_DB_odbc_forge extends CI_DB_forge { */ function _drop_table($table) { - // Not a supported ODBC feature + // Not a supported ODBC feature if ($this->db->db_debug) { return $this->db->display_error('db_unsuported_feature'); @@ -235,9 +235,9 @@ class CI_DB_odbc_forge extends CI_DB_forge { { $sql .= ' AFTER ' . $this->db->_protect_identifiers($after_field); } - + return $sql; - + } diff --git a/system/database/drivers/odbc/odbc_result.php b/system/database/drivers/odbc/odbc_result.php index 5ae46df62..a81a2b8b7 100644..100755 --- a/system/database/drivers/odbc/odbc_result.php +++ b/system/database/drivers/odbc/odbc_result.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -25,7 +25,7 @@ * @link http://codeigniter.com/user_guide/database/ */ class CI_DB_odbc_result extends CI_DB_result { - + /** * Number of rows in the result set * @@ -36,7 +36,7 @@ class CI_DB_odbc_result extends CI_DB_result { { return @odbc_num_rows($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -65,9 +65,9 @@ class CI_DB_odbc_result extends CI_DB_result { $field_names = array(); for ($i = 0; $i < $this->num_fields(); $i++) { - $field_names[] = odbc_field_name($this->result_id, $i); + $field_names[] = odbc_field_name($this->result_id, $i); } - + return $field_names; } @@ -86,16 +86,16 @@ class CI_DB_odbc_result extends CI_DB_result { $retval = array(); for ($i = 0; $i < $this->num_fields(); $i++) { - $F = new stdClass(); - $F->name = odbc_field_name($this->result_id, $i); - $F->type = odbc_field_type($this->result_id, $i); + $F = new stdClass(); + $F->name = odbc_field_name($this->result_id, $i); + $F->type = odbc_field_type($this->result_id, $i); $F->max_length = odbc_field_len($this->result_id, $i); $F->primary_key = 0; $F->default = ''; $retval[] = $F; } - + return $retval; } @@ -105,7 +105,7 @@ class CI_DB_odbc_result extends CI_DB_result { * Free the result * * @return null - */ + */ function free_result() { if (is_resource($this->result_id)) diff --git a/system/database/drivers/odbc/odbc_utility.php b/system/database/drivers/odbc/odbc_utility.php index 4e6848e82..d335bed99 100644..100755 --- a/system/database/drivers/odbc/odbc_utility.php +++ b/system/database/drivers/odbc/odbc_utility.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -32,7 +32,7 @@ class CI_DB_odbc_utility extends CI_DB_utility { */ function _list_databases() { - // Not sure if ODBC lets you list all databases... + // Not sure if ODBC lets you list all databases... if ($this->db->db_debug) { return $this->db->display_error('db_unsuported_feature'); @@ -53,7 +53,7 @@ class CI_DB_odbc_utility extends CI_DB_utility { */ function _optimize_table($table) { - // Not a supported ODBC feature + // Not a supported ODBC feature if ($this->db->db_debug) { return $this->db->display_error('db_unsuported_feature'); @@ -74,7 +74,7 @@ class CI_DB_odbc_utility extends CI_DB_utility { */ function _repair_table($table) { - // Not a supported ODBC feature + // Not a supported ODBC feature if ($this->db->db_debug) { return $this->db->display_error('db_unsuported_feature'); @@ -96,52 +96,7 @@ class CI_DB_odbc_utility extends CI_DB_utility { // Currently unsupported return $this->db->display_error('db_unsuported_feature'); } - - /** - * - * The functions below have been deprecated as of 1.6, and are only here for backwards - * compatibility. They now reside in dbforge(). The use of dbutils for database manipulation - * is STRONGLY discouraged in favour if using dbforge. - * - */ - /** - * Create database - * - * @access private - * @param string the database name - * @return bool - */ - function _create_database() - { - // ODBC has no "create database" command since it's - // designed to connect to an existing database - if ($this->db->db_debug) - { - return $this->db->display_error('db_unsuported_feature'); - } - return FALSE; - } - - // -------------------------------------------------------------------- - - /** - * Drop database - * - * @access private - * @param string the database name - * @return bool - */ - function _drop_database($name) - { - // ODBC has no "drop database" command since it's - // designed to connect to an existing database - if ($this->db->db_debug) - { - return $this->db->display_error('db_unsuported_feature'); - } - return FALSE; - } } /* End of file odbc_utility.php */ diff --git a/system/database/drivers/postgre/index.html b/system/database/drivers/postgre/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/drivers/postgre/index.html +++ b/system/database/drivers/postgre/index.html diff --git a/system/database/drivers/postgre/postgre_driver.php b/system/database/drivers/postgre/postgre_driver.php index bac179d40..0bb7974d8 100644..100755 --- a/system/database/drivers/postgre/postgre_driver.php +++ b/system/database/drivers/postgre/postgre_driver.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -31,7 +31,7 @@ class CI_DB_postgre_driver extends CI_DB { var $dbdriver = 'postgre'; - + var $_escape_char = '"'; // clause and character used for LIKE escape sequences @@ -51,7 +51,7 @@ class CI_DB_postgre_driver extends CI_DB { * * @access private * @return string - */ + */ function _connect_string() { $components = array( @@ -61,7 +61,7 @@ class CI_DB_postgre_driver extends CI_DB { 'username' => 'user', 'password' => 'password' ); - + $connect_string = ""; foreach ($components as $key => $val) { @@ -80,9 +80,9 @@ class CI_DB_postgre_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_connect() - { + { return @pg_connect($this->_connect_string()); } @@ -93,12 +93,12 @@ class CI_DB_postgre_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_pconnect() { return @pg_pconnect($this->_connect_string()); } - + // -------------------------------------------------------------------- /** @@ -125,7 +125,7 @@ class CI_DB_postgre_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_select() { // Not needed for Postgre so we'll return TRUE @@ -149,7 +149,7 @@ class CI_DB_postgre_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Version number query string * @@ -169,13 +169,13 @@ class CI_DB_postgre_driver extends CI_DB { * @access private called by the base class * @param string an SQL query * @return resource - */ + */ function _execute($sql) { $sql = $this->_prep_query($sql); return @pg_query($this->conn_id, $sql); } - + // -------------------------------------------------------------------- /** @@ -186,7 +186,7 @@ class CI_DB_postgre_driver extends CI_DB { * @access private called by execute() * @param string an SQL query * @return string - */ + */ function _prep_query($sql) { return $sql; @@ -198,15 +198,15 @@ class CI_DB_postgre_driver extends CI_DB { * Begin Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_begin($test_mode = FALSE) { if ( ! $this->trans_enabled) { return TRUE; } - + // When transactions are nested we only begin/commit/rollback the outermost ones if ($this->_trans_depth > 0) { @@ -227,8 +227,8 @@ class CI_DB_postgre_driver extends CI_DB { * Commit Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_commit() { if ( ! $this->trans_enabled) @@ -251,8 +251,8 @@ class CI_DB_postgre_driver extends CI_DB { * Rollback Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_rollback() { if ( ! $this->trans_enabled) @@ -284,15 +284,15 @@ class CI_DB_postgre_driver extends CI_DB { if (is_array($str)) { foreach($str as $key => $val) - { + { $str[$key] = $this->escape_str($val, $like); - } - - return $str; - } + } + + return $str; + } $str = pg_escape_string($str); - + // escape LIKE condition wildcards if ($like === TRUE) { @@ -300,10 +300,10 @@ class CI_DB_postgre_driver extends CI_DB { array($this->_like_escape_chr.'%', $this->_like_escape_chr.'_', $this->_like_escape_chr.$this->_like_escape_chr), $str); } - + return $str; } - + // -------------------------------------------------------------------- /** @@ -316,7 +316,7 @@ class CI_DB_postgre_driver extends CI_DB { { return @pg_affected_rows($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -329,10 +329,10 @@ class CI_DB_postgre_driver extends CI_DB { { $v = $this->_version(); $v = $v['server']; - + $table = func_num_args() > 0 ? func_get_arg(0) : null; $column = func_num_args() > 1 ? func_get_arg(1) : null; - + if ($table == null && $v >= '8.1') { $sql='SELECT LASTVAL() as ins_id'; @@ -400,17 +400,17 @@ class CI_DB_postgre_driver extends CI_DB { * @return string */ function _list_tables($prefix_limit = FALSE) - { - $sql = "SELECT table_name FROM information_schema.tables WHERE table_schema = 'public'"; - + { + $sql = "SELECT table_name FROM information_schema.tables WHERE table_schema = 'public'"; + if ($prefix_limit !== FALSE AND $this->dbprefix != '') { - $sql .= " AND table_name LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_char); + $sql .= " AND table_name LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_chr); } - + return $sql; } - + // -------------------------------------------------------------------- /** @@ -455,7 +455,7 @@ class CI_DB_postgre_driver extends CI_DB { { return pg_last_error($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -491,26 +491,26 @@ class CI_DB_postgre_driver extends CI_DB { { if (strpos($item, '.'.$id) !== FALSE) { - $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); - + $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); - } + } } - + if (strpos($item, '.') !== FALSE) { - $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; + $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; } else { $str = $this->_escape_char.$item.$this->_escape_char; } - + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); } - + // -------------------------------------------------------------------- /** @@ -529,12 +529,12 @@ class CI_DB_postgre_driver extends CI_DB { { $tables = array($tables); } - + return implode(', ', $tables); } // -------------------------------------------------------------------- - + /** * Insert statement * @@ -547,10 +547,10 @@ class CI_DB_postgre_driver extends CI_DB { * @return string */ function _insert($table, $keys, $values) - { + { return "INSERT INTO ".$table." (".implode(', ', $keys).") VALUES (".implode(', ', $values).")"; } - + // -------------------------------------------------------------------- /** @@ -572,17 +572,17 @@ class CI_DB_postgre_driver extends CI_DB { { $valstr[] = $key." = ".$val; } - + $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + $orderby = (count($orderby) >= 1)?' ORDER BY '.implode(", ", $orderby):''; - + $sql = "UPDATE ".$table." SET ".implode(', ', $valstr); $sql .= ($where != '' AND count($where) >=1) ? " WHERE ".implode(" ", $where) : ''; $sql .= $orderby.$limit; - + return $sql; } @@ -598,12 +598,12 @@ class CI_DB_postgre_driver extends CI_DB { * @access public * @param string the table name * @return string - */ + */ function _truncate($table) { return "TRUNCATE ".$table; } - + // -------------------------------------------------------------------- /** @@ -616,7 +616,7 @@ class CI_DB_postgre_driver extends CI_DB { * @param array the where clause * @param string the limit clause * @return string - */ + */ function _delete($table, $where = array(), $like = array(), $limit = FALSE) { $conditions = ''; @@ -634,7 +634,7 @@ class CI_DB_postgre_driver extends CI_DB { } $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + return "DELETE FROM ".$table.$conditions.$limit; } @@ -651,14 +651,14 @@ class CI_DB_postgre_driver extends CI_DB { * @return string */ function _limit($sql, $limit, $offset) - { + { $sql .= "LIMIT ".$limit; - + if ($offset > 0) { $sql .= " OFFSET ".$offset; } - + return $sql; } diff --git a/system/database/drivers/postgre/postgre_forge.php b/system/database/drivers/postgre/postgre_forge.php index c98ef425d..91a1c6861 100644..100755 --- a/system/database/drivers/postgre/postgre_forge.php +++ b/system/database/drivers/postgre/postgre_forge.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -66,12 +66,15 @@ class CI_DB_postgre_forge extends CI_DB_forge { function _create_table($table, $fields, $primary_keys, $keys, $if_not_exists) { $sql = 'CREATE TABLE '; - + if ($if_not_exists === TRUE) { - $sql .= 'IF NOT EXISTS '; + if ($this->db->table_exists($table)) + { + return "SELECT * FROM $table"; // Needs to return innocous but valid SQL statement + } } - + $sql .= $this->db->_escape_identifiers($table)." ("; $current_field_count = 0; @@ -87,41 +90,81 @@ class CI_DB_postgre_forge extends CI_DB_forge { else { $attributes = array_change_key_case($attributes, CASE_UPPER); - + $sql .= "\n\t".$this->db->_protect_identifiers($field); - - $sql .= ' '.$attributes['TYPE']; - - if (array_key_exists('CONSTRAINT', $attributes)) + + $is_unsigned = (array_key_exists('UNSIGNED', $attributes) && $attributes['UNSIGNED'] === TRUE); + + // Convert datatypes to be PostgreSQL-compatible + switch (strtoupper($attributes['TYPE'])) { - $sql .= '('.$attributes['CONSTRAINT'].')'; + case 'TINYINT': + $attributes['TYPE'] = 'SMALLINT'; + break; + case 'SMALLINT': + $attributes['TYPE'] = ($is_unsigned) ? 'INTEGER' : 'SMALLINT'; + break; + case 'MEDIUMINT': + $attributes['TYPE'] = 'INTEGER'; + break; + case 'INT': + $attributes['TYPE'] = ($is_unsigned) ? 'BIGINT' : 'INTEGER'; + break; + case 'BIGINT': + $attributes['TYPE'] = ($is_unsigned) ? 'NUMERIC' : 'BIGINT'; + break; + case 'DOUBLE': + $attributes['TYPE'] = 'DOUBLE PRECISION'; + break; + case 'DATETIME': + $attributes['TYPE'] = 'TIMESTAMP'; + break; + case 'LONGTEXT': + $attributes['TYPE'] = 'TEXT'; + break; + case 'BLOB': + $attributes['TYPE'] = 'BYTEA'; + break; + } + + // If this is an auto-incrementing primary key, use the serial data type instead + if (in_array($field, $primary_keys) && array_key_exists('AUTO_INCREMENT', $attributes) + && $attributes['AUTO_INCREMENT'] === TRUE) + { + $sql .= ' SERIAL'; } - - if (array_key_exists('UNSIGNED', $attributes) && $attributes['UNSIGNED'] === TRUE) + else { - $sql .= ' UNSIGNED'; + $sql .= ' '.$attributes['TYPE']; } - + + // Modified to prevent constraints with integer data types + if (array_key_exists('CONSTRAINT', $attributes) && strpos($attributes['TYPE'], 'INT') === false) + { + $sql .= '('.$attributes['CONSTRAINT'].')'; + } + if (array_key_exists('DEFAULT', $attributes)) { $sql .= ' DEFAULT \''.$attributes['DEFAULT'].'\''; } - + if (array_key_exists('NULL', $attributes) && $attributes['NULL'] === TRUE) { $sql .= ' NULL'; } else { - $sql .= ' NOT NULL'; + $sql .= ' NOT NULL'; } - - if (array_key_exists('AUTO_INCREMENT', $attributes) && $attributes['AUTO_INCREMENT'] === TRUE) + + // Added new attribute to create unqite fields. Also works with MySQL + if (array_key_exists('UNIQUE', $attributes) && $attributes['UNIQUE'] === TRUE) { - $sql .= ' AUTO_INCREMENT'; + $sql .= ' UNIQUE'; } } - + // don't add a comma on the end of the last field if (++$current_field_count < count($fields)) { @@ -131,29 +174,37 @@ class CI_DB_postgre_forge extends CI_DB_forge { if (count($primary_keys) > 0) { - $primary_keys = $this->db->_protect_identifiers($primary_keys); + // Something seems to break when passing an array to _protect_identifiers() + foreach ($primary_keys as $index => $key) + { + $primary_keys[$index] = $this->db->_protect_identifiers($key); + } + $sql .= ",\n\tPRIMARY KEY (" . implode(', ', $primary_keys) . ")"; } - + + $sql .= "\n);"; + if (is_array($keys) && count($keys) > 0) { foreach ($keys as $key) { if (is_array($key)) { - $key = $this->db->_protect_identifiers($key); + $key = $this->db->_protect_identifiers($key); } else { $key = array($this->db->_protect_identifiers($key)); } - - $sql .= ",\n\tFOREIGN KEY (" . implode(', ', $key) . ")"; + + foreach ($key as $field) + { + $sql .= "CREATE INDEX " . $table . "_" . str_replace(array('"', "'"), '', $field) . "_index ON $table ($field); "; + } } } - $sql .= "\n);"; - return $sql; } @@ -162,12 +213,12 @@ class CI_DB_postgre_forge extends CI_DB_forge { /** * Drop Table * - * @access private - * @return bool + * @access private + * @return bool */ function _drop_table($table) { - return "DROP TABLE ".$this->db->_escape_identifiers($table)." CASCADE"; + return "DROP TABLE IF EXISTS ".$this->db->_escape_identifiers($table)." CASCADE"; } // -------------------------------------------------------------------- @@ -218,9 +269,9 @@ class CI_DB_postgre_forge extends CI_DB_forge { { $sql .= ' AFTER ' . $this->db->_protect_identifiers($after_field); } - + return $sql; - + } // -------------------------------------------------------------------- diff --git a/system/database/drivers/postgre/postgre_result.php b/system/database/drivers/postgre/postgre_result.php index 545f413e8..e9a1d1607 100644..100755 --- a/system/database/drivers/postgre/postgre_result.php +++ b/system/database/drivers/postgre/postgre_result.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -36,7 +36,7 @@ class CI_DB_postgre_result extends CI_DB_result { { return @pg_num_rows($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -67,7 +67,7 @@ class CI_DB_postgre_result extends CI_DB_result { { $field_names[] = pg_field_name($this->result_id, $i); } - + return $field_names; } @@ -86,16 +86,16 @@ class CI_DB_postgre_result extends CI_DB_result { $retval = array(); for ($i = 0; $i < $this->num_fields(); $i++) { - $F = new stdClass(); - $F->name = pg_field_name($this->result_id, $i); - $F->type = pg_field_type($this->result_id, $i); + $F = new stdClass(); + $F->name = pg_field_name($this->result_id, $i); + $F->type = pg_field_type($this->result_id, $i); $F->max_length = pg_field_size($this->result_id, $i); $F->primary_key = 0; $F->default = ''; $retval[] = $F; } - + return $retval; } @@ -105,7 +105,7 @@ class CI_DB_postgre_result extends CI_DB_result { * Free the result * * @return null - */ + */ function free_result() { if (is_resource($this->result_id)) @@ -146,7 +146,7 @@ class CI_DB_postgre_result extends CI_DB_result { { return pg_fetch_assoc($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -161,7 +161,7 @@ class CI_DB_postgre_result extends CI_DB_result { { return pg_fetch_object($this->result_id); } - + } diff --git a/system/database/drivers/postgre/postgre_utility.php b/system/database/drivers/postgre/postgre_utility.php index dda22ddb0..741c52ea8 100644..100755 --- a/system/database/drivers/postgre/postgre_utility.php +++ b/system/database/drivers/postgre/postgre_utility.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -81,42 +81,6 @@ class CI_DB_postgre_utility extends CI_DB_utility { // Currently unsupported return $this->db->display_error('db_unsuported_feature'); } - - /** - * - * The functions below have been deprecated as of 1.6, and are only here for backwards - * compatibility. They now reside in dbforge(). The use of dbutils for database manipulation - * is STRONGLY discouraged in favour if using dbforge. - * - */ - - /** - * Create database - * - * @access private - * @param string the database name - * @return bool - */ - function _create_database($name) - { - return "CREATE DATABASE ".$name; - } - - // -------------------------------------------------------------------- - - /** - * Drop database - * - * @access private - * @param string the database name - * @return bool - */ - function _drop_database($name) - { - return "DROP DATABASE ".$name; - } - - } diff --git a/system/database/drivers/sqlite/index.html b/system/database/drivers/sqlite/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/drivers/sqlite/index.html +++ b/system/database/drivers/sqlite/index.html diff --git a/system/database/drivers/sqlite/sqlite_driver.php b/system/database/drivers/sqlite/sqlite_driver.php index 05e38848a..5bfc1f558 100644..100755 --- a/system/database/drivers/sqlite/sqlite_driver.php +++ b/system/database/drivers/sqlite/sqlite_driver.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -33,14 +33,14 @@ class CI_DB_sqlite_driver extends CI_DB { var $dbdriver = 'sqlite'; - + // The character used to escape with - not needed for SQLite var $_escape_char = ''; // clause and character used for LIKE escape sequences - var $_like_escape_str = " ESCAPE '%s' "; + var $_like_escape_str = " ESCAPE '%s' "; var $_like_escape_chr = '!'; - + /** * The syntax to count rows is slightly different across different * database engines, so this string appears in each driver and is @@ -54,24 +54,24 @@ class CI_DB_sqlite_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_connect() { if ( ! $conn_id = @sqlite_open($this->database, FILE_WRITE_MODE, $error)) { log_message('error', $error); - + if ($this->db_debug) { $this->display_error($error, '', TRUE); } - + return FALSE; } - + return $conn_id; } - + // -------------------------------------------------------------------- /** @@ -79,24 +79,24 @@ class CI_DB_sqlite_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_pconnect() { if ( ! $conn_id = @sqlite_popen($this->database, FILE_WRITE_MODE, $error)) { log_message('error', $error); - + if ($this->db_debug) { $this->display_error($error, '', TRUE); } - + return FALSE; } - + return $conn_id; } - + // -------------------------------------------------------------------- /** @@ -120,7 +120,7 @@ class CI_DB_sqlite_driver extends CI_DB { * * @access private called by the base class * @return resource - */ + */ function db_select() { return TRUE; @@ -143,7 +143,7 @@ class CI_DB_sqlite_driver extends CI_DB { } // -------------------------------------------------------------------- - + /** * Version number query string * @@ -154,7 +154,7 @@ class CI_DB_sqlite_driver extends CI_DB { { return sqlite_libversion(); } - + // -------------------------------------------------------------------- /** @@ -163,13 +163,13 @@ class CI_DB_sqlite_driver extends CI_DB { * @access private called by the base class * @param string an SQL query * @return resource - */ + */ function _execute($sql) { $sql = $this->_prep_query($sql); return @sqlite_query($this->conn_id, $sql); } - + // -------------------------------------------------------------------- /** @@ -180,7 +180,7 @@ class CI_DB_sqlite_driver extends CI_DB { * @access private called by execute() * @param string an SQL query * @return string - */ + */ function _prep_query($sql) { return $sql; @@ -192,15 +192,15 @@ class CI_DB_sqlite_driver extends CI_DB { * Begin Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_begin($test_mode = FALSE) { if ( ! $this->trans_enabled) { return TRUE; } - + // When transactions are nested we only begin/commit/rollback the outermost ones if ($this->_trans_depth > 0) { @@ -222,8 +222,8 @@ class CI_DB_sqlite_driver extends CI_DB { * Commit Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_commit() { if ( ! $this->trans_enabled) @@ -247,8 +247,8 @@ class CI_DB_sqlite_driver extends CI_DB { * Rollback Transaction * * @access public - * @return bool - */ + * @return bool + */ function trans_rollback() { if ( ! $this->trans_enabled) @@ -265,7 +265,7 @@ class CI_DB_sqlite_driver extends CI_DB { $this->simple_query('ROLLBACK'); return TRUE; } - + // -------------------------------------------------------------------- /** @@ -281,15 +281,15 @@ class CI_DB_sqlite_driver extends CI_DB { if (is_array($str)) { foreach($str as $key => $val) - { + { $str[$key] = $this->escape_str($val, $like); - } - - return $str; - } - + } + + return $str; + } + $str = sqlite_escape_string($str); - + // escape LIKE condition wildcards if ($like === TRUE) { @@ -297,10 +297,10 @@ class CI_DB_sqlite_driver extends CI_DB { array($this->_like_escape_chr.'%', $this->_like_escape_chr.'_', $this->_like_escape_chr.$this->_like_escape_chr), $str); } - + return $str; } - + // -------------------------------------------------------------------- /** @@ -313,7 +313,7 @@ class CI_DB_sqlite_driver extends CI_DB { { return sqlite_changes($this->conn_id); } - + // -------------------------------------------------------------------- /** @@ -347,7 +347,7 @@ class CI_DB_sqlite_driver extends CI_DB { } $query = $this->query($this->_count_string . $this->_protect_identifiers('numrows') . " FROM " . $this->_protect_identifiers($table, TRUE, NULL, FALSE)); - + if ($query->num_rows() == 0) { return 0; @@ -374,7 +374,7 @@ class CI_DB_sqlite_driver extends CI_DB { if ($prefix_limit !== FALSE AND $this->dbprefix != '') { - $sql .= " AND 'name' LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_char); + $sql .= " AND 'name' LIKE '".$this->escape_like_str($this->dbprefix)."%' ".sprintf($this->_like_escape_str, $this->_like_escape_chr); } return $sql; } @@ -424,7 +424,7 @@ class CI_DB_sqlite_driver extends CI_DB { { return sqlite_error_string(sqlite_last_error($this->conn_id)); } - + // -------------------------------------------------------------------- /** @@ -460,26 +460,26 @@ class CI_DB_sqlite_driver extends CI_DB { { if (strpos($item, '.'.$id) !== FALSE) { - $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); - + $str = $this->_escape_char. str_replace('.', $this->_escape_char.'.', $item); + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); - } + } } - + if (strpos($item, '.') !== FALSE) { - $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; + $str = $this->_escape_char.str_replace('.', $this->_escape_char.'.'.$this->_escape_char, $item).$this->_escape_char; } else { $str = $this->_escape_char.$item.$this->_escape_char; } - + // remove duplicates if the user already included the escape return preg_replace('/['.$this->_escape_char.']+/', $this->_escape_char, $str); } - + // -------------------------------------------------------------------- /** @@ -498,12 +498,12 @@ class CI_DB_sqlite_driver extends CI_DB { { $tables = array($tables); } - + return '('.implode(', ', $tables).')'; } // -------------------------------------------------------------------- - + /** * Insert statement * @@ -516,10 +516,10 @@ class CI_DB_sqlite_driver extends CI_DB { * @return string */ function _insert($table, $keys, $values) - { + { return "INSERT INTO ".$table." (".implode(', ', $keys).") VALUES (".implode(', ', $values).")"; } - + // -------------------------------------------------------------------- /** @@ -541,21 +541,21 @@ class CI_DB_sqlite_driver extends CI_DB { { $valstr[] = $key." = ".$val; } - + $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + $orderby = (count($orderby) >= 1)?' ORDER BY '.implode(", ", $orderby):''; - + $sql = "UPDATE ".$table." SET ".implode(', ', $valstr); $sql .= ($where != '' AND count($where) >=1) ? " WHERE ".implode(" ", $where) : ''; $sql .= $orderby.$limit; - + return $sql; } - + // -------------------------------------------------------------------- /** @@ -568,12 +568,12 @@ class CI_DB_sqlite_driver extends CI_DB { * @access public * @param string the table name * @return string - */ + */ function _truncate($table) { return $this->_delete($table); } - + // -------------------------------------------------------------------- /** @@ -586,7 +586,7 @@ class CI_DB_sqlite_driver extends CI_DB { * @param array the where clause * @param string the limit clause * @return string - */ + */ function _delete($table, $where = array(), $like = array(), $limit = FALSE) { $conditions = ''; @@ -604,10 +604,10 @@ class CI_DB_sqlite_driver extends CI_DB { } $limit = ( ! $limit) ? '' : ' LIMIT '.$limit; - + return "DELETE FROM ".$table.$conditions.$limit; } - + // -------------------------------------------------------------------- /** @@ -622,7 +622,7 @@ class CI_DB_sqlite_driver extends CI_DB { * @return string */ function _limit($sql, $limit, $offset) - { + { if ($offset == 0) { $offset = ''; @@ -631,7 +631,7 @@ class CI_DB_sqlite_driver extends CI_DB { { $offset .= ", "; } - + return $sql."LIMIT ".$offset.$limit; } diff --git a/system/database/drivers/sqlite/sqlite_forge.php b/system/database/drivers/sqlite/sqlite_forge.php index b7d25e755..56904082e 100644..100755 --- a/system/database/drivers/sqlite/sqlite_forge.php +++ b/system/database/drivers/sqlite/sqlite_forge.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -75,13 +75,13 @@ class CI_DB_sqlite_forge extends CI_DB_forge { function _create_table($table, $fields, $primary_keys, $keys, $if_not_exists) { $sql = 'CREATE TABLE '; - + // IF NOT EXISTS added to SQLite in 3.3.0 - if ($if_not_exists === TRUE && version_compare($this->_version(), '3.3.0', '>=') === TRUE) + if ($if_not_exists === TRUE && version_compare($this->db->_version(), '3.3.0', '>=') === TRUE) { $sql .= 'IF NOT EXISTS '; } - + $sql .= $this->db->_escape_identifiers($table)."("; $current_field_count = 0; @@ -97,41 +97,41 @@ class CI_DB_sqlite_forge extends CI_DB_forge { else { $attributes = array_change_key_case($attributes, CASE_UPPER); - + $sql .= "\n\t".$this->db->_protect_identifiers($field); - + $sql .= ' '.$attributes['TYPE']; - + if (array_key_exists('CONSTRAINT', $attributes)) { $sql .= '('.$attributes['CONSTRAINT'].')'; } - + if (array_key_exists('UNSIGNED', $attributes) && $attributes['UNSIGNED'] === TRUE) { $sql .= ' UNSIGNED'; } - + if (array_key_exists('DEFAULT', $attributes)) { $sql .= ' DEFAULT \''.$attributes['DEFAULT'].'\''; } - + if (array_key_exists('NULL', $attributes) && $attributes['NULL'] === TRUE) { $sql .= ' NULL'; } else { - $sql .= ' NOT NULL'; + $sql .= ' NOT NULL'; } - + if (array_key_exists('AUTO_INCREMENT', $attributes) && $attributes['AUTO_INCREMENT'] === TRUE) { $sql .= ' AUTO_INCREMENT'; } } - + // don't add a comma on the end of the last field if (++$current_field_count < count($fields)) { @@ -151,13 +151,13 @@ class CI_DB_sqlite_forge extends CI_DB_forge { { if (is_array($key)) { - $key = $this->db->_protect_identifiers($key); + $key = $this->db->_protect_identifiers($key); } else { $key = array($this->db->_protect_identifiers($key)); } - + $sql .= ",\n\tUNIQUE (" . implode(', ', $key) . ")"; } } @@ -237,9 +237,9 @@ class CI_DB_sqlite_forge extends CI_DB_forge { { $sql .= ' AFTER ' . $this->db->_protect_identifiers($after_field); } - + return $sql; - + } // -------------------------------------------------------------------- diff --git a/system/database/drivers/sqlite/sqlite_result.php b/system/database/drivers/sqlite/sqlite_result.php index 7b0631221..7bd30db7c 100644..100755 --- a/system/database/drivers/sqlite/sqlite_result.php +++ b/system/database/drivers/sqlite/sqlite_result.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -25,7 +25,7 @@ * @link http://codeigniter.com/user_guide/database/ */ class CI_DB_sqlite_result extends CI_DB_result { - + /** * Number of rows in the result set * @@ -36,7 +36,7 @@ class CI_DB_sqlite_result extends CI_DB_result { { return @sqlite_num_rows($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -67,7 +67,7 @@ class CI_DB_sqlite_result extends CI_DB_result { { $field_names[] = sqlite_field_name($this->result_id, $i); } - + return $field_names; } @@ -86,16 +86,16 @@ class CI_DB_sqlite_result extends CI_DB_result { $retval = array(); for ($i = 0; $i < $this->num_fields(); $i++) { - $F = new stdClass(); - $F->name = sqlite_field_name($this->result_id, $i); - $F->type = 'varchar'; + $F = new stdClass(); + $F->name = sqlite_field_name($this->result_id, $i); + $F->type = 'varchar'; $F->max_length = 0; $F->primary_key = 0; $F->default = ''; $retval[] = $F; } - + return $retval; } @@ -105,7 +105,7 @@ class CI_DB_sqlite_result extends CI_DB_result { * Free the result * * @return null - */ + */ function free_result() { // Not implemented in SQLite @@ -142,7 +142,7 @@ class CI_DB_sqlite_result extends CI_DB_result { { return sqlite_fetch_array($this->result_id); } - + // -------------------------------------------------------------------- /** @@ -168,7 +168,7 @@ class CI_DB_sqlite_result extends CI_DB_result { return $obj; } else { return NULL; - } + } } } diff --git a/system/database/drivers/sqlite/sqlite_utility.php b/system/database/drivers/sqlite/sqlite_utility.php index 5629dac99..508023e2f 100644..100755 --- a/system/database/drivers/sqlite/sqlite_utility.php +++ b/system/database/drivers/sqlite/sqlite_utility.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -39,7 +39,7 @@ class CI_DB_sqlite_utility extends CI_DB_utility { { if ($this->db_debug) { - return $this->display_error('db_unsuported_feature'); + return $this->db->display_error('db_unsuported_feature'); } return array(); } @@ -90,51 +90,6 @@ class CI_DB_sqlite_utility extends CI_DB_utility { // Currently unsupported return $this->db->display_error('db_unsuported_feature'); } - - /** - * - * The functions below have been deprecated as of 1.6, and are only here for backwards - * compatibility. They now reside in dbforge(). The use of dbutils for database manipulation - * is STRONGLY discouraged in favour if using dbforge. - * - */ - - /** - * Create database - * - * @access public - * @param string the database name - * @return bool - */ - function _create_database() - { - // In SQLite, a database is created when you connect to the database. - // We'll return TRUE so that an error isn't generated - return TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Drop database - * - * @access private - * @param string the database name - * @return bool - */ - function _drop_database($name) - { - if ( ! @file_exists($this->db->database) OR ! @unlink($this->db->database)) - { - if ($this->db->db_debug) - { - return $this->db->display_error('db_unable_to_drop'); - } - return FALSE; - } - return TRUE; - } - } /* End of file sqlite_utility.php */ diff --git a/system/database/index.html b/system/database/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/database/index.html +++ b/system/database/index.html diff --git a/system/fonts/index.html b/system/fonts/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/fonts/index.html +++ b/system/fonts/index.html diff --git a/system/fonts/texb.ttf b/system/fonts/texb.ttf Binary files differindex a7aa6469a..6792342a3 100644..100755 --- a/system/fonts/texb.ttf +++ b/system/fonts/texb.ttf diff --git a/system/helpers/array_helper.php b/system/helpers/array_helper.php index b7289900f..6b2415df2 100644..100755 --- a/system/helpers/array_helper.php +++ b/system/helpers/array_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -38,7 +38,7 @@ * @param array * @param mixed * @return mixed depends on what the array contains - */ + */ if ( ! function_exists('element')) { function element($item, $array, $default = FALSE) @@ -49,7 +49,7 @@ if ( ! function_exists('element')) } return $array[$item]; - } + } } // ------------------------------------------------------------------------ @@ -60,7 +60,7 @@ if ( ! function_exists('element')) * @access public * @param array * @return mixed depends on what the array contains - */ + */ if ( ! function_exists('random_element')) { function random_element($array) @@ -70,9 +70,49 @@ if ( ! function_exists('random_element')) return $array; } return $array[array_rand($array)]; - } + } } +// -------------------------------------------------------------------- + +/** + * Elements + * + * Returns only the array items specified. Will return a default value if + * it is not set. + * + * @access public + * @param array + * @param array + * @param mixed + * @return mixed depends on what the array contains + */ +if ( ! function_exists('elements')) +{ + function elements($items, $array, $default = FALSE) + { + $return = array(); + + if ( ! is_array($items)) + { + $items = array($items); + } + + foreach ($items as $item) + { + if (isset($array[$item])) + { + $return[$item] = $array[$item]; + } + else + { + $return[$item] = $default; + } + } + + return $return; + } +} /* End of file array_helper.php */ /* Location: ./system/helpers/array_helper.php */
\ No newline at end of file diff --git a/system/helpers/captcha_helper.php b/system/helpers/captcha_helper.php new file mode 100755 index 000000000..c0e3798f4 --- /dev/null +++ b/system/helpers/captcha_helper.php @@ -0,0 +1,246 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter CAPTCHA Helper + * + * @package CodeIgniter + * @subpackage Helpers + * @category Helpers + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/helpers/xml_helper.html + */ + +// ------------------------------------------------------------------------ + +/** + * Create CAPTCHA + * + * @access public + * @param array array of data for the CAPTCHA + * @param string path to create the image in + * @param string URL to the CAPTCHA image folder + * @param string server path to font + * @return string + */ +if ( ! function_exists('create_captcha')) +{ + function create_captcha($data = '', $img_path = '', $img_url = '', $font_path = '') + { + $defaults = array('word' => '', 'img_path' => '', 'img_url' => '', 'img_width' => '150', 'img_height' => '30', 'font_path' => '', 'expiration' => 7200); + + foreach ($defaults as $key => $val) + { + if ( ! is_array($data)) + { + if ( ! isset($$key) OR $$key == '') + { + $$key = $val; + } + } + else + { + $$key = ( ! isset($data[$key])) ? $val : $data[$key]; + } + } + + if ($img_path == '' OR $img_url == '') + { + return FALSE; + } + + if ( ! @is_dir($img_path)) + { + return FALSE; + } + + if ( ! is_writable($img_path)) + { + return FALSE; + } + + if ( ! extension_loaded('gd')) + { + return FALSE; + } + + // ----------------------------------- + // Remove old images + // ----------------------------------- + + list($usec, $sec) = explode(" ", microtime()); + $now = ((float)$usec + (float)$sec); + + $current_dir = @opendir($img_path); + + while($filename = @readdir($current_dir)) + { + if ($filename != "." and $filename != ".." and $filename != "index.html") + { + $name = str_replace(".jpg", "", $filename); + + if (($name + $expiration) < $now) + { + @unlink($img_path.$filename); + } + } + } + + @closedir($current_dir); + + // ----------------------------------- + // Do we have a "word" yet? + // ----------------------------------- + + if ($word == '') + { + $pool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; + + $str = ''; + for ($i = 0; $i < 8; $i++) + { + $str .= substr($pool, mt_rand(0, strlen($pool) -1), 1); + } + + $word = $str; + } + + // ----------------------------------- + // Determine angle and position + // ----------------------------------- + + $length = strlen($word); + $angle = ($length >= 6) ? rand(-($length-6), ($length-6)) : 0; + $x_axis = rand(6, (360/$length)-16); + $y_axis = ($angle >= 0 ) ? rand($img_height, $img_width) : rand(6, $img_height); + + // ----------------------------------- + // Create image + // ----------------------------------- + + // PHP.net recommends imagecreatetruecolor(), but it isn't always available + if (function_exists('imagecreatetruecolor')) + { + $im = imagecreatetruecolor($img_width, $img_height); + } + else + { + $im = imagecreate($img_width, $img_height); + } + + // ----------------------------------- + // Assign colors + // ----------------------------------- + + $bg_color = imagecolorallocate ($im, 255, 255, 255); + $border_color = imagecolorallocate ($im, 153, 102, 102); + $text_color = imagecolorallocate ($im, 204, 153, 153); + $grid_color = imagecolorallocate($im, 255, 182, 182); + $shadow_color = imagecolorallocate($im, 255, 240, 240); + + // ----------------------------------- + // Create the rectangle + // ----------------------------------- + + ImageFilledRectangle($im, 0, 0, $img_width, $img_height, $bg_color); + + // ----------------------------------- + // Create the spiral pattern + // ----------------------------------- + + $theta = 1; + $thetac = 7; + $radius = 16; + $circles = 20; + $points = 32; + + for ($i = 0; $i < ($circles * $points) - 1; $i++) + { + $theta = $theta + $thetac; + $rad = $radius * ($i / $points ); + $x = ($rad * cos($theta)) + $x_axis; + $y = ($rad * sin($theta)) + $y_axis; + $theta = $theta + $thetac; + $rad1 = $radius * (($i + 1) / $points); + $x1 = ($rad1 * cos($theta)) + $x_axis; + $y1 = ($rad1 * sin($theta )) + $y_axis; + imageline($im, $x, $y, $x1, $y1, $grid_color); + $theta = $theta - $thetac; + } + + // ----------------------------------- + // Write the text + // ----------------------------------- + + $use_font = ($font_path != '' AND file_exists($font_path) AND function_exists('imagettftext')) ? TRUE : FALSE; + + if ($use_font == FALSE) + { + $font_size = 5; + $x = rand(0, $img_width/($length/3)); + $y = 0; + } + else + { + $font_size = 16; + $x = rand(0, $img_width/($length/1.5)); + $y = $font_size+2; + } + + for ($i = 0; $i < strlen($word); $i++) + { + if ($use_font == FALSE) + { + $y = rand(0 , $img_height/2); + imagestring($im, $font_size, $x, $y, substr($word, $i, 1), $text_color); + $x += ($font_size*2); + } + else + { + $y = rand($img_height/2, $img_height-3); + imagettftext($im, $font_size, $angle, $x, $y, $text_color, $font_path, substr($word, $i, 1)); + $x += $font_size; + } + } + + + // ----------------------------------- + // Create the border + // ----------------------------------- + + imagerectangle($im, 0, 0, $img_width-1, $img_height-1, $border_color); + + // ----------------------------------- + // Generate the image + // ----------------------------------- + + $img_name = $now.'.jpg'; + + ImageJPEG($im, $img_path.$img_name); + + $img = "<img src=\"$img_url$img_name\" width=\"$img_width\" height=\"$img_height\" style=\"border:0;\" alt=\" \" />"; + + ImageDestroy($im); + + return array('word' => $word, 'time' => $now, 'image' => $img); + } +} + +// ------------------------------------------------------------------------ + +/* End of file captcha_helper.php */ +/* Location: ./system/heleprs/captcha_helper.php */
\ No newline at end of file diff --git a/system/helpers/compatibility_helper.php b/system/helpers/compatibility_helper.php deleted file mode 100644 index e7b21c660..000000000 --- a/system/helpers/compatibility_helper.php +++ /dev/null @@ -1,498 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * CodeIgniter Compatibility Helpers - * - * This helper contains some functions based on the PEAR PHP_Compat library - * http://pear.php.net/package/PHP_Compat - * - * The PEAR compat library is a little bloated and the code doesn't harmonize - * well with CodeIgniter, so those functions have been refactored. - * We cheat a little and use CI's _exception_handler() to output our own PHP errors - * so that the behavior fully mimicks the PHP 5 counterparts. -- Derek Jones - * - * @package CodeIgniter - * @subpackage Helpers - * @category Helpers - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/helpers/compatibility_helper.html - */ - -// ------------------------------------------------------------------------ - -if ( ! defined('PHP_EOL')) -{ - define('PHP_EOL', (DIRECTORY_SEPARATOR == '/') ? "\n" : "\r\n"); -} - -// ------------------------------------------------------------------------ - -/** - * file_put_contents() - * - * Writes a string to a file - * http://us.php.net/manual/en/function.file_put_contents.php - * argument 4, $context, not supported - * - * @access public - * @param string file name - * @param mixed data to be written - * @param int flags - * @return int length of written string - */ -if ( ! function_exists('file_put_contents')) -{ - function file_put_contents($filename, $data, $flags = NULL) - { - if (is_scalar($data)) - { - settype($data, 'STRING'); - } - - if ( ! is_string($data) && ! is_array($data) && ! is_resource($data)) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'file_put_contents(): the 2nd parameter should be either a string or an array', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - // read stream if given a stream resource - if (is_resource($data)) - { - if (get_resource_type($data) !== 'stream') - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'file_put_contents(): supplied resource is not a valid stream resource', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - $text = ''; - - while ( ! feof($data)) - { - $text .= fread($data, 4096); - } - - $data = $text; - unset($text); - } - - // strings only please! - if (is_array($data)) - { - $data = implode('', $data); - } - - // Set the appropriate mode - if (($flags & 8) > 0) // 8 = FILE_APPEND flag - { - $mode = FOPEN_WRITE_CREATE; - } - else - { - $mode = FOPEN_WRITE_CREATE_DESTRUCTIVE; - } - - // Check if we're using the include path - if (($flags & 1) > 0) // 1 = FILE_USE_INCLUDE_PATH flag - { - $use_include_path = TRUE; - } - else - { - $use_include_path = FALSE; - } - - $fp = @fopen($filename, $mode, $use_include_path); - - if ($fp === FALSE) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'file_put_contents('.htmlentities($filename).') failed to open stream', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - if (($flags & LOCK_EX) > 0) - { - if ( ! flock($fp, LOCK_EX)) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'file_put_contents('.htmlentities($filename).') unable to acquire an exclusive lock on file', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - } - - // write it - if (($written = @fwrite($fp, $data)) === FALSE) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'file_put_contents('.htmlentities($filename).') failed to write to '.htmlentities($filename), $backtrace[0]['file'], $backtrace[0]['line']); - } - - // Close the handle - @fclose($fp); - - // Return length - return $written; - } -} - -// ------------------------------------------------------------------------ - -/** - * fputcsv() - * - * Format line as CSV and write to file pointer - * http://us.php.net/manual/en/function.fputcsv.php - * - * @access public - * @param resource file pointer - * @param array data to be written - * @param string delimiter - * @param string enclosure - * @return int length of written string - */ -if ( ! function_exists('fputcsv')) -{ - function fputcsv($handle, $fields, $delimiter = ',', $enclosure = '"') - { - // Checking for a handle resource - if ( ! is_resource($handle)) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'fputcsv() expects parameter 1 to be stream resource, '.gettype($handle).' given', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - // OK, it is a resource, but is it a stream? - if (get_resource_type($handle) !== 'stream') - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'fputcsv() expects parameter 1 to be stream resource, '.get_resource_type($handle).' given', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - // Checking for an array of fields - if ( ! is_array($fields)) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'fputcsv() expects parameter 2 to be array, '.gettype($fields).' given', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - // validate delimiter - if (strlen($delimiter) > 1) - { - $delimiter = substr($delimiter, 0, 1); - $backtrace = debug_backtrace(); - _exception_handler(E_NOTICE, 'fputcsv() delimiter must be one character long, "'.htmlentities($delimiter).'" used', $backtrace[0]['file'], $backtrace[0]['line']); - } - - // validate enclosure - if (strlen($enclosure) > 1) - { - $enclosure = substr($enclosure, 0, 1); - $backtrace = debug_backtrace(); - _exception_handler(E_NOTICE, 'fputcsv() enclosure must be one character long, "'.htmlentities($enclosure).'" used', $backtrace[0]['file'], $backtrace[0]['line']); - - } - - $out = ''; - - foreach ($fields as $cell) - { - $cell = str_replace($enclosure, $enclosure.$enclosure, $cell); - - if (strpos($cell, $delimiter) !== FALSE OR strpos($cell, $enclosure) !== FALSE OR strpos($cell, "\n") !== FALSE) - { - $out .= $enclosure.$cell.$enclosure.$delimiter; - } - else - { - $out .= $cell.$delimiter; - } - } - - $length = @fwrite($handle, substr($out, 0, -1)."\n"); - - return $length; - } -} - -// ------------------------------------------------------------------------ - -/** - * stripos() - * - * Find position of first occurrence of a case-insensitive string - * http://us.php.net/manual/en/function.stripos.php - * - * @access public - * @param string haystack - * @param string needle - * @param int offset - * @return int numeric position of the first occurrence of needle in the haystack - */ -if ( ! function_exists('stripos')) -{ - function stripos($haystack, $needle, $offset = NULL) - { - // Cast non string scalar values - if (is_scalar($haystack)) - { - settype($haystack, 'STRING'); - } - - if ( ! is_string($haystack)) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'stripos() expects parameter 1 to be string, '.gettype($haystack).' given', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - if ( ! is_scalar($needle)) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'stripos() needle is not a string or an integer in '.$backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - if (is_float($offset)) - { - $offset = (int)$offset; - } - - if ( ! is_int($offset) && ! is_bool($offset) && ! is_null($offset)) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'stripos() expects parameter 3 to be long, '.gettype($offset).' given', $backtrace[0]['file'], $backtrace[0]['line']); - return NULL; - } - - return strpos(strtolower($haystack), strtolower($needle), $offset); - } -} - -// ------------------------------------------------------------------------ - -/** - * str_ireplace() - * - * Find position of first occurrence of a case-insensitive string - * http://us.php.net/manual/en/function.str-ireplace.php - * (parameter 4, $count, is not supported as to do so in PHP 4 would make - * it a required parameter) - * - * @access public - * @param mixed search - * @param mixed replace - * @param mixed subject - * @return int numeric position of the first occurrence of needle in the haystack - */ -if ( ! function_exists('str_ireplace')) -{ - function str_ireplace($search, $replace, $subject) - { - // Nothing to do here - if ($search === NULL OR $subject === NULL) - { - return $subject; - } - - // Crazy arguments - if (is_scalar($search) && is_array($replace)) - { - $backtrace = debug_backtrace(); - - if (is_object($replace)) - { - show_error('Object of class '.get_class($replace).' could not be converted to string in '.$backtrace[0]['file'].' on line '.$backtrace[0]['line']); - } - else - { - _exception_handler(E_USER_NOTICE, 'Array to string conversion in '.$backtrace[0]['file'], $backtrace[0]['line']); - } - } - - // Searching for an array - if (is_array($search)) - { - // Replacing with an array - if (is_array($replace)) - { - $search = array_values($search); - $replace = array_values($replace); - - if (count($search) >= count($replace)) - { - $replace = array_pad($replace, count($search), ''); - } - else - { - $replace = array_slice($replace, 0, count($search)); - } - } - else - { - // Replacing with a string all positions - $replace = array_fill(0, count($search), $replace); - } - } - else - { - //Searching for a string and replacing with a string. - $search = array((string)$search); - $replace = array((string)$replace); - } - - // Prepare the search array - foreach ($search as $search_key => $search_value) - { - $search[$search_key] = '/'.preg_quote($search_value, '/').'/i'; - } - - // Prepare the replace array (escape backreferences) - foreach ($replace as $k => $v) - { - $replace[$k] = str_replace(array(chr(92), '$'), array(chr(92).chr(92), '\$'), $v); - } - - // do the replacement - $result = preg_replace($search, $replace, (array)$subject); - - // Check if subject was initially a string and return it as a string - if ( ! is_array($subject)) - { - return current($result); - } - - // Otherwise, just return the array - return $result; - } -} - -// ------------------------------------------------------------------------ - -/** - * http_build_query() - * - * Generate URL-encoded query string - * http://us.php.net/manual/en/function.http-build-query.php - * - * @access public - * @param array form data - * @param string numeric prefix - * @param string argument separator - * @return string URL-encoded string - */ -if ( ! function_exists('http_build_query')) -{ - function http_build_query($formdata, $numeric_prefix = NULL, $separator = NULL) - { - // Check the data - if ( ! is_array($formdata) && ! is_object($formdata)) - { - $backtrace = debug_backtrace(); - _exception_handler(E_USER_WARNING, 'http_build_query() Parameter 1 expected to be Array or Object. Incorrect value given', $backtrace[0]['file'], $backtrace[0]['line']); - return FALSE; - } - - // Cast it as array - if (is_object($formdata)) - { - $formdata = get_object_vars($formdata); - } - - // If the array is empty, return NULL - if (empty($formdata)) - { - return NULL; - } - - // Argument separator - if ($separator === NULL) - { - $separator = ini_get('arg_separator.output'); - - if (strlen($separator) == 0) - { - $separator = '&'; - } - } - - // Start building the query - $tmp = array(); - - foreach ($formdata as $key => $val) - { - if ($val === NULL) - { - continue; - } - - if (is_integer($key) && $numeric_prefix != NULL) - { - $key = $numeric_prefix.$key; - } - - if (is_resource($val)) - { - return NULL; - } - - // hand it off to a recursive parser - $tmp[] = _http_build_query_helper($key, $val, $separator); - } - - return implode($separator, $tmp); - } - - - // Helper helper. Remind anyone of college? - // Required to handle recursion in nested arrays. - // - // You could shave fractions of fractions of a second by moving where - // the urlencoding takes place, but it's much less intuitive, and if - // your application has 10,000 form fields, well, you have other problems ;) - function _http_build_query_helper($key, $val, $separator = '&') - { - if (is_scalar($val)) - { - return urlencode($key).'='.urlencode($val); - } - else - { - // arrays please - if (is_object($val)) - { - $val = get_object_vars($val); - } - - foreach ($val as $k => $v) - { - $tmp[] = _http_build_query_helper($key.'['.$k.']', $v, $separator); - } - } - - return implode($separator, $tmp); - } -} - - -/* End of file compatibility_helper.php */ -/* Location: ./system/helpers/compatibility_helper.php */
\ No newline at end of file diff --git a/system/helpers/cookie_helper.php b/system/helpers/cookie_helper.php index 40afadb57..7701d503f 100644..100755 --- a/system/helpers/cookie_helper.php +++ b/system/helpers/cookie_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -46,53 +46,12 @@ if ( ! function_exists('set_cookie')) { function set_cookie($name = '', $value = '', $expire = '', $domain = '', $path = '/', $prefix = '') { - if (is_array($name)) - { - foreach (array('value', 'expire', 'domain', 'path', 'prefix', 'name') as $item) - { - if (isset($name[$item])) - { - $$item = $name[$item]; - } - } - } - // Set the config file options $CI =& get_instance(); - - if ($prefix == '' AND $CI->config->item('cookie_prefix') != '') - { - $prefix = $CI->config->item('cookie_prefix'); - } - if ($domain == '' AND $CI->config->item('cookie_domain') != '') - { - $domain = $CI->config->item('cookie_domain'); - } - if ($path == '/' AND $CI->config->item('cookie_path') != '/') - { - $path = $CI->config->item('cookie_path'); - } - - if ( ! is_numeric($expire)) - { - $expire = time() - 86500; - } - else - { - if ($expire > 0) - { - $expire = time() + $expire; - } - else - { - $expire = 0; - } - } - - setcookie($prefix.$name, $value, $expire, $path, $domain, 0); + $CI->input->set_cookie($name, $value, $expire, $domain, $path, $prefix); } } - + // -------------------------------------------------------------------- /** @@ -108,14 +67,14 @@ if ( ! function_exists('get_cookie')) function get_cookie($index = '', $xss_clean = FALSE) { $CI =& get_instance(); - + $prefix = ''; - + if ( ! isset($_COOKIE[$index]) && config_item('cookie_prefix') != '') { $prefix = config_item('cookie_prefix'); } - + return $CI->input->cookie($prefix.$index, $xss_clean); } } diff --git a/system/helpers/date_helper.php b/system/helpers/date_helper.php index 0e9781666..553e8d7ee 100644..100755 --- a/system/helpers/date_helper.php +++ b/system/helpers/date_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -34,24 +34,24 @@ * * @access public * @return integer - */ + */ if ( ! function_exists('now')) { function now() { $CI =& get_instance(); - + if (strtolower($CI->config->item('time_reference')) == 'gmt') { $now = time(); $system_time = mktime(gmdate("H", $now), gmdate("i", $now), gmdate("s", $now), gmdate("m", $now), gmdate("d", $now), gmdate("Y", $now)); - + if (strlen($system_time) < 10) { $system_time = time(); log_message('error', 'The Date class could not set a proper GMT timestamp so the local time() value was used.'); } - + return $system_time; } else @@ -60,7 +60,7 @@ if ( ! function_exists('now')) } } } - + // ------------------------------------------------------------------------ /** @@ -79,22 +79,22 @@ if ( ! function_exists('now')) * @param string * @param integer * @return integer - */ + */ if ( ! function_exists('mdate')) { function mdate($datestr = '', $time = '') { if ($datestr == '') return ''; - + if ($time == '') $time = now(); - + $datestr = str_replace('%\\', '', preg_replace("/([a-z]+?){1}/i", "\\\\\\1", $datestr)); return date($datestr, $time); } } - + // ------------------------------------------------------------------------ /** @@ -106,7 +106,7 @@ if ( ! function_exists('mdate')) * @param string the chosen format * @param integer Unix timestamp * @return string - */ + */ if ( ! function_exists('standard_date')) { function standard_date($fmt = 'DATE_RFC822', $time = '') @@ -114,7 +114,7 @@ if ( ! function_exists('standard_date')) $formats = array( 'DATE_ATOM' => '%Y-%m-%dT%H:%i:%s%Q', 'DATE_COOKIE' => '%l, %d-%M-%y %H:%i:%s UTC', - 'DATE_ISO8601' => '%Y-%m-%dT%H:%i:%s%O', + 'DATE_ISO8601' => '%Y-%m-%dT%H:%i:%s%Q', 'DATE_RFC822' => '%D, %d %M %y %H:%i:%s %O', 'DATE_RFC850' => '%l, %d-%M-%y %H:%m:%i UTC', 'DATE_RFC1036' => '%D, %d %M %y %H:%i:%s %O', @@ -127,11 +127,11 @@ if ( ! function_exists('standard_date')) { return FALSE; } - + return mdate($formats[$fmt], $time); } } - + // ------------------------------------------------------------------------ /** @@ -144,7 +144,7 @@ if ( ! function_exists('standard_date')) * @param integer a number of seconds * @param integer Unix timestamp * @return integer - */ + */ if ( ! function_exists('timespan')) { function timespan($seconds = 1, $time = '') @@ -156,12 +156,12 @@ if ( ! function_exists('timespan')) { $seconds = 1; } - + if ( ! is_numeric($time)) { $time = time(); } - + if ($time <= $seconds) { $seconds = 1; @@ -170,85 +170,85 @@ if ( ! function_exists('timespan')) { $seconds = $time - $seconds; } - + $str = ''; $years = floor($seconds / 31536000); - + if ($years > 0) - { + { $str .= $years.' '.$CI->lang->line((($years > 1) ? 'date_years' : 'date_year')).', '; - } - + } + $seconds -= $years * 31536000; $months = floor($seconds / 2628000); - + if ($years > 0 OR $months > 0) { if ($months > 0) - { + { $str .= $months.' '.$CI->lang->line((($months > 1) ? 'date_months' : 'date_month')).', '; - } - + } + $seconds -= $months * 2628000; } $weeks = floor($seconds / 604800); - + if ($years > 0 OR $months > 0 OR $weeks > 0) { if ($weeks > 0) - { + { $str .= $weeks.' '.$CI->lang->line((($weeks > 1) ? 'date_weeks' : 'date_week')).', '; } - + $seconds -= $weeks * 604800; - } + } $days = floor($seconds / 86400); - + if ($months > 0 OR $weeks > 0 OR $days > 0) { if ($days > 0) - { + { $str .= $days.' '.$CI->lang->line((($days > 1) ? 'date_days' : 'date_day')).', '; } - + $seconds -= $days * 86400; } - + $hours = floor($seconds / 3600); - + if ($days > 0 OR $hours > 0) { if ($hours > 0) { $str .= $hours.' '.$CI->lang->line((($hours > 1) ? 'date_hours' : 'date_hour')).', '; } - + $seconds -= $hours * 3600; } - + $minutes = floor($seconds / 60); - + if ($days > 0 OR $hours > 0 OR $minutes > 0) { if ($minutes > 0) - { + { $str .= $minutes.' '.$CI->lang->line((($minutes > 1) ? 'date_minutes' : 'date_minute')).', '; } - + $seconds -= $minutes * 60; } - + if ($str == '') { $str .= $seconds.' '.$CI->lang->line((($seconds > 1) ? 'date_seconds' : 'date_second')).', '; } - + return substr(trim($str), 0, -1); } } - + // ------------------------------------------------------------------------ /** @@ -261,7 +261,7 @@ if ( ! function_exists('timespan')) * @param integer a numeric month * @param integer a numeric year * @return integer - */ + */ if ( ! function_exists('days_in_month')) { function days_in_month($month = 0, $year = '') @@ -270,12 +270,12 @@ if ( ! function_exists('days_in_month')) { return 0; } - + if ( ! is_numeric($year) OR strlen($year) != 4) { $year = date('Y'); } - + if ($month == 2) { if ($year % 400 == 0 OR ($year % 4 == 0 AND $year % 100 != 0)) @@ -288,7 +288,7 @@ if ( ! function_exists('days_in_month')) return $days_in_month[$month - 1]; } } - + // ------------------------------------------------------------------------ /** @@ -297,18 +297,18 @@ if ( ! function_exists('days_in_month')) * @access public * @param integer Unix timestamp * @return integer - */ + */ if ( ! function_exists('local_to_gmt')) { function local_to_gmt($time = '') { if ($time == '') $time = time(); - + return mktime( gmdate("H", $time), gmdate("i", $time), gmdate("s", $time), gmdate("m", $time), gmdate("d", $time), gmdate("Y", $time)); } } - + // ------------------------------------------------------------------------ /** @@ -323,27 +323,27 @@ if ( ! function_exists('local_to_gmt')) * @param string timezone * @param bool whether DST is active * @return integer - */ + */ if ( ! function_exists('gmt_to_local')) { function gmt_to_local($time = '', $timezone = 'UTC', $dst = FALSE) - { + { if ($time == '') { return now(); } - + $time += timezones($timezone) * 3600; if ($dst == TRUE) { $time += 3600; } - + return $time; } } - + // ------------------------------------------------------------------------ /** @@ -352,7 +352,7 @@ if ( ! function_exists('gmt_to_local')) * @access public * @param integer Unix timestamp * @return integer - */ + */ if ( ! function_exists('mysql_to_unix')) { function mysql_to_unix($time = '') @@ -360,11 +360,11 @@ if ( ! function_exists('mysql_to_unix')) // We'll remove certain characters for backward compatibility // since the formatting changed with MySQL 4.1 // YYYY-MM-DD HH:MM:SS - + $time = str_replace('-', '', $time); $time = str_replace(':', '', $time); $time = str_replace(' ', '', $time); - + // YYYYMMDDHHMMSS return mktime( substr($time, 8, 2), @@ -376,7 +376,7 @@ if ( ! function_exists('mysql_to_unix')) ); } } - + // ------------------------------------------------------------------------ /** @@ -389,13 +389,13 @@ if ( ! function_exists('mysql_to_unix')) * @param bool whether to show seconds * @param string format: us or euro * @return string - */ + */ if ( ! function_exists('unix_to_human')) { function unix_to_human($time = '', $seconds = FALSE, $fmt = 'us') { $r = date('Y', $time).'-'.date('m', $time).'-'.date('d', $time).' '; - + if ($fmt == 'us') { $r .= date('h', $time).':'.date('i', $time); @@ -404,21 +404,21 @@ if ( ! function_exists('unix_to_human')) { $r .= date('H', $time).':'.date('i', $time); } - + if ($seconds) { $r .= ':'.date('s', $time); } - + if ($fmt == 'us') { $r .= ' '.date('A', $time); } - + return $r; } } - + // ------------------------------------------------------------------------ /** @@ -429,7 +429,7 @@ if ( ! function_exists('unix_to_human')) * @access public * @param string format: us or euro * @return integer - */ + */ if ( ! function_exists('human_to_unix')) { function human_to_unix($datestr = '') @@ -438,25 +438,25 @@ if ( ! function_exists('human_to_unix')) { return FALSE; } - + $datestr = trim($datestr); - $datestr = preg_replace("/\040+/", "\040", $datestr); + $datestr = preg_replace("/\040+/", ' ', $datestr); if ( ! preg_match('/^[0-9]{2,4}\-[0-9]{1,2}\-[0-9]{1,2}\s[0-9]{1,2}:[0-9]{1,2}(?::[0-9]{1,2})?(?:\s[AP]M)?$/i', $datestr)) { return FALSE; } - $split = preg_split("/\040/", $datestr); + $split = explode(' ', $datestr); $ex = explode("-", $split['0']); - + $year = (strlen($ex['0']) == 2) ? '20'.$ex['0'] : $ex['0']; $month = (strlen($ex['1']) == 1) ? '0'.$ex['1'] : $ex['1']; $day = (strlen($ex['2']) == 1) ? '0'.$ex['2'] : $ex['2']; $ex = explode(":", $split['1']); - + $hour = (strlen($ex['0']) == 1) ? '0'.$ex['0'] : $ex['0']; $min = (strlen($ex['1']) == 1) ? '0'.$ex['1'] : $ex['1']; @@ -469,25 +469,25 @@ if ( ! function_exists('human_to_unix')) // Unless specified, seconds get set to zero. $sec = '00'; } - + if (isset($split['2'])) { $ampm = strtolower($split['2']); - + if (substr($ampm, 0, 1) == 'p' AND $hour < 12) $hour = $hour + 12; - + if (substr($ampm, 0, 1) == 'a' AND $hour == 12) $hour = '00'; - + if (strlen($hour) == 1) $hour = '0'.$hour; } - + return mktime($hour, $min, $sec, $month, $day, $year); } } - + // ------------------------------------------------------------------------ /** @@ -500,26 +500,26 @@ if ( ! function_exists('human_to_unix')) * @param string classname * @param string menu name * @return string - */ + */ if ( ! function_exists('timezone_menu')) { function timezone_menu($default = 'UTC', $class = "", $name = 'timezones') { $CI =& get_instance(); $CI->lang->load('date'); - + if ($default == 'GMT') $default = 'UTC'; $menu = '<select name="'.$name.'"'; - + if ($class != '') { $menu .= ' class="'.$class.'"'; } - + $menu .= ">\n"; - + foreach (timezones() as $key => $val) { $selected = ($default == $key) ? " selected='selected'" : ''; @@ -531,7 +531,7 @@ if ( ! function_exists('timezone_menu')) return $menu; } } - + // ------------------------------------------------------------------------ /** @@ -543,15 +543,15 @@ if ( ! function_exists('timezone_menu')) * @access public * @param string timezone * @return string - */ + */ if ( ! function_exists('timezones')) { function timezones($tz = '') { // Note: Don't change the order of these even though // some items appear to be in the wrong order - - $zones = array( + + $zones = array( 'UM12' => -12, 'UM11' => -11, 'UM10' => -10, @@ -593,15 +593,15 @@ if ( ! function_exists('timezones')) 'UP13' => +13, 'UP14' => +14 ); - + if ($tz == '') { return $zones; } - + if ($tz == 'GMT') $tz = 'UTC'; - + return ( ! isset($zones[$tz])) ? 0 : $zones[$tz]; } } diff --git a/system/helpers/directory_helper.php b/system/helpers/directory_helper.php index 791cf0d10..38347fa62 100644..100755 --- a/system/helpers/directory_helper.php +++ b/system/helpers/directory_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -36,46 +36,42 @@ * * @access public * @param string path to source - * @param bool whether to limit the result to the top level only + * @param int depth of directories to traverse (0 = fully recursive, 1 = current dir, etc) * @return array - */ + */ if ( ! function_exists('directory_map')) { - function directory_map($source_dir, $top_level_only = FALSE, $hidden = FALSE) - { + function directory_map($source_dir, $directory_depth = 0, $hidden = FALSE) + { if ($fp = @opendir($source_dir)) { - $source_dir = rtrim($source_dir, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR; - $filedata = array(); - + $filedata = array(); + $new_depth = $directory_depth - 1; + $source_dir = rtrim($source_dir, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR; + while (FALSE !== ($file = readdir($fp))) { - if (($hidden == FALSE && strncmp($file, '.', 1) == 0) OR ($file == '.' OR $file == '..')) + // Remove '.', '..', and hidden files [optional] + if ( ! trim($file, '.') OR ($hidden == FALSE && $file[0] == '.')) { continue; } - - if ($top_level_only == FALSE && @is_dir($source_dir.$file)) + + if (($directory_depth < 1 OR $new_depth > 0) && @is_dir($source_dir.$file)) { - $temp_array = array(); - - $temp_array = directory_map($source_dir.$file.DIRECTORY_SEPARATOR, $top_level_only, $hidden); - - $filedata[$file] = $temp_array; + $filedata[$file] = directory_map($source_dir.$file.DIRECTORY_SEPARATOR, $new_depth, $hidden); } else { $filedata[] = $file; } } - + closedir($fp); return $filedata; } - else - { - return FALSE; - } + + return FALSE; } } diff --git a/system/helpers/download_helper.php b/system/helpers/download_helper.php index 638ebaa88..6cecd0d11 100644..100755 --- a/system/helpers/download_helper.php +++ b/system/helpers/download_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -36,7 +36,7 @@ * @param string filename * @param mixed the data to be downloaded * @return void - */ + */ if ( ! function_exists('force_download')) { function force_download($filename = '', $data = '') @@ -52,14 +52,14 @@ if ( ! function_exists('force_download')) { return FALSE; } - + // Grab the file extension $x = explode('.', $filename); $extension = end($x); // Load the mime types @include(APPPATH.'config/mimes'.EXT); - + // Set a default mime if we can't find it if ( ! isset($mimes[$extension])) { @@ -69,9 +69,9 @@ if ( ! function_exists('force_download')) { $mime = (is_array($mimes[$extension])) ? $mimes[$extension][0] : $mimes[$extension]; } - + // Generate the server headers - if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE")) + if (strpos($_SERVER['HTTP_USER_AGENT'], "MSIE") !== FALSE) { header('Content-Type: "'.$mime.'"'); header('Content-Disposition: attachment; filename="'.$filename.'"'); @@ -90,7 +90,7 @@ if ( ! function_exists('force_download')) header('Pragma: no-cache'); header("Content-Length: ".strlen($data)); } - + exit($data); } } diff --git a/system/helpers/email_helper.php b/system/helpers/email_helper.php index 046562a91..651aef439 100644..100755 --- a/system/helpers/email_helper.php +++ b/system/helpers/email_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -32,7 +32,7 @@ * * @access public * @return bool - */ + */ if ( ! function_exists('valid_email')) { function valid_email($address) @@ -48,7 +48,7 @@ if ( ! function_exists('valid_email')) * * @access public * @return bool - */ + */ if ( ! function_exists('send_email')) { function send_email($recipient, $subject = 'Test email', $message = 'Hello World') diff --git a/system/helpers/file_helper.php b/system/helpers/file_helper.php index fea54a1f6..334eef87c 100644..100755 --- a/system/helpers/file_helper.php +++ b/system/helpers/file_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -35,7 +35,7 @@ * @access public * @param string path to file * @return string - */ + */ if ( ! function_exists('read_file')) { function read_file($file) @@ -44,19 +44,19 @@ if ( ! function_exists('read_file')) { return FALSE; } - + if (function_exists('file_get_contents')) { - return file_get_contents($file); + return file_get_contents($file); } if ( ! $fp = @fopen($file, FOPEN_READ)) { return FALSE; } - + flock($fp, LOCK_SH); - + $data = ''; if (filesize($file) > 0) { @@ -69,7 +69,7 @@ if ( ! function_exists('read_file')) return $data; } } - + // ------------------------------------------------------------------------ /** @@ -82,7 +82,7 @@ if ( ! function_exists('read_file')) * @param string path to file * @param string file data * @return bool - */ + */ if ( ! function_exists('write_file')) { function write_file($path, $data, $mode = FOPEN_WRITE_CREATE_DESTRUCTIVE) @@ -91,16 +91,16 @@ if ( ! function_exists('write_file')) { return FALSE; } - + flock($fp, LOCK_EX); fwrite($fp, $data); flock($fp, LOCK_UN); - fclose($fp); + fclose($fp); return TRUE; } } - + // ------------------------------------------------------------------------ /** @@ -115,17 +115,19 @@ if ( ! function_exists('write_file')) * @param string path to file * @param bool whether to delete any directories found in the path * @return bool - */ + */ if ( ! function_exists('delete_files')) { function delete_files($path, $del_dir = FALSE, $level = 0) - { + { // Trim the trailing slash $path = rtrim($path, DIRECTORY_SEPARATOR); - + if ( ! $current_dir = @opendir($path)) - return; - + { + return FALSE; + } + while(FALSE !== ($filename = @readdir($current_dir))) { if ($filename != "." and $filename != "..") @@ -136,7 +138,7 @@ if ( ! function_exists('delete_files')) if (substr($filename, 0, 1) != '.') { delete_files($path.DIRECTORY_SEPARATOR.$filename, $del_dir, $level + 1); - } + } } else { @@ -145,11 +147,13 @@ if ( ! function_exists('delete_files')) } } @closedir($current_dir); - + if ($del_dir == TRUE AND $level > 0) { - @rmdir($path); + return @rmdir($path); } + + return TRUE; } } @@ -158,7 +162,7 @@ if ( ! function_exists('delete_files')) /** * Get Filenames * - * Reads the specified directory and builds an array containing the filenames. + * Reads the specified directory and builds an array containing the filenames. * Any sub-folders contained within the specified path are read as well. * * @access public @@ -166,13 +170,13 @@ if ( ! function_exists('delete_files')) * @param bool whether to include the path as part of the filename * @param bool internal variable to determine recursion status - do not use in calls * @return array - */ + */ if ( ! function_exists('get_filenames')) { function get_filenames($source_dir, $include_path = FALSE, $_recursion = FALSE) { static $_filedata = array(); - + if ($fp = @opendir($source_dir)) { // reset the array and make sure $source_dir has a trailing slash on the initial call @@ -181,12 +185,12 @@ if ( ! function_exists('get_filenames')) $_filedata = array(); $source_dir = rtrim(realpath($source_dir), DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR; } - + while (FALSE !== ($file = readdir($fp))) { if (@is_dir($source_dir.$file) && strncmp($file, '.', 1) !== 0) { - get_filenames($source_dir.$file.DIRECTORY_SEPARATOR, $include_path, TRUE); + get_filenames($source_dir.$file.DIRECTORY_SEPARATOR, $include_path, TRUE); } elseif (strncmp($file, '.', 1) !== 0) { @@ -207,20 +211,20 @@ if ( ! function_exists('get_filenames')) /** * Get Directory File Information * - * Reads the specified directory and builds an array containing the filenames, + * Reads the specified directory and builds an array containing the filenames, * filesize, dates, and permissions * * Any sub-folders contained within the specified path are read as well. * * @access public * @param string path to source - * @param bool whether to include the path as part of the filename + * @param bool Look only at the top level directory specified? * @param bool internal variable to determine recursion status - do not use in calls * @return array - */ + */ if ( ! function_exists('get_dir_file_info')) { - function get_dir_file_info($source_dir, $include_path = FALSE, $_recursion = FALSE) + function get_dir_file_info($source_dir, $top_level_only = TRUE, $_recursion = FALSE) { static $_filedata = array(); $relative_path = $source_dir; @@ -234,11 +238,12 @@ if ( ! function_exists('get_dir_file_info')) $source_dir = rtrim(realpath($source_dir), DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR; } + // foreach (scandir($source_dir, 1) as $file) // In addition to being PHP5+, scandir() is simply not as fast while (FALSE !== ($file = readdir($fp))) { - if (@is_dir($source_dir.$file) && strncmp($file, '.', 1) !== 0) + if (@is_dir($source_dir.$file) AND strncmp($file, '.', 1) !== 0 AND $top_level_only === FALSE) { - get_dir_file_info($source_dir.$file.DIRECTORY_SEPARATOR, $include_path, TRUE); + get_dir_file_info($source_dir.$file.DIRECTORY_SEPARATOR, $top_level_only, TRUE); } elseif (strncmp($file, '.', 1) !== 0) { @@ -246,6 +251,7 @@ if ( ! function_exists('get_dir_file_info')) $_filedata[$file]['relative_path'] = $relative_path; } } + return $_filedata; } else @@ -299,7 +305,7 @@ if ( ! function_exists('get_file_info')) $fileinfo['size'] = filesize($file); break; case 'date': - $fileinfo['date'] = filectime($file); + $fileinfo['date'] = filemtime($file); break; case 'readable': $fileinfo['readable'] = is_readable($file); @@ -326,7 +332,7 @@ if ( ! function_exists('get_file_info')) /** * Get Mime by Extension * - * Translates a file extension into a mime type based on config/mimes.php. + * Translates a file extension into a mime type based on config/mimes.php. * Returns FALSE if it can't determine the type, or open the mime config file * * Note: this is NOT an accurate way of determining file mime types, and is here strictly as a convenience @@ -335,12 +341,12 @@ if ( ! function_exists('get_file_info')) * @access public * @param string path to file * @return mixed - */ + */ if ( ! function_exists('get_mime_by_extension')) { function get_mime_by_extension($file) { - $extension = substr(strrchr($file, '.'), 1); + $extension = strtolower(substr(strrchr($file, '.'), 1)); global $mimes; @@ -382,11 +388,11 @@ if ( ! function_exists('get_mime_by_extension')) * @access public * @param int * @return string - */ + */ if ( ! function_exists('symbolic_permissions')) { function symbolic_permissions($perms) - { + { if (($perms & 0xC000) == 0xC000) { $symbolic = 's'; // Socket @@ -435,7 +441,7 @@ if ( ! function_exists('symbolic_permissions')) $symbolic .= (($perms & 0x0002) ? 'w' : '-'); $symbolic .= (($perms & 0x0001) ? (($perms & 0x0200) ? 't' : 'x' ) : (($perms & 0x0200) ? 'T' : '-')); - return $symbolic; + return $symbolic; } } @@ -450,7 +456,7 @@ if ( ! function_exists('symbolic_permissions')) * @access public * @param int * @return string - */ + */ if ( ! function_exists('octal_permissions')) { function octal_permissions($perms) diff --git a/system/helpers/form_helper.php b/system/helpers/form_helper.php index 31b36efd0..758056b50 100644..100755 --- a/system/helpers/form_helper.php +++ b/system/helpers/form_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -37,7 +37,7 @@ * @param array a key/value pair of attributes * @param array a key/value pair hidden data * @return string - */ + */ if ( ! function_exists('form_open')) { function form_open($action = '', $attributes = '', $hidden = array()) @@ -52,14 +52,20 @@ if ( ! function_exists('form_open')) $action = ( strpos($action, '://') === FALSE) ? $CI->config->site_url($action) : $action; $form = '<form action="'.$action.'"'; - + $form .= _attributes_to_string($attributes, TRUE); - + $form .= '>'; + // CSRF + if ($CI->config->item('csrf_protection') === TRUE) + { + $hidden[$CI->security->csrf_token_name] = $CI->security->csrf_hash; + } + if (is_array($hidden) AND count($hidden) > 0) { - $form .= form_hidden($hidden); + $form .= sprintf("\n<div class=\"hidden\">%s</div>", form_hidden($hidden)); } return $form; @@ -83,7 +89,15 @@ if ( ! function_exists('form_open_multipart')) { function form_open_multipart($action, $attributes = array(), $hidden = array()) { - $attributes['enctype'] = 'multipart/form-data'; + if (is_string($attributes)) + { + $attributes .= ' enctype="multipart/form-data"'; + } + else + { + $attributes['enctype'] = 'multipart/form-data'; + } + return form_open($action, $attributes, $hidden); } } @@ -129,7 +143,7 @@ if ( ! function_exists('form_hidden')) { foreach ($value as $k => $v) { - $k = (is_int($k)) ? '' : $k; + $k = (is_int($k)) ? '' : $k; form_hidden($name.'['.$k.']', $v, TRUE); } } @@ -236,10 +250,10 @@ if ( ! function_exists('form_textarea')) } else { - $val = $data['value']; + $val = $data['value']; unset($data['value']); // textareas don't use the value attribute } - + $name = (is_array($data)) ? $data['name'] : $data; return "<textarea "._parse_form_attributes($data, $defaults).$extra.">".form_prep($val, $name)."</textarea>"; } @@ -257,7 +271,7 @@ if ( ! function_exists('form_textarea')) * @param string * @return type */ -if (! function_exists('form_multiselect')) +if ( ! function_exists('form_multiselect')) { function form_multiselect($name = '', $options = array(), $selected = array(), $extra = '') { @@ -265,7 +279,7 @@ if (! function_exists('form_multiselect')) { $extra .= ' multiple="multiple"'; } - + return form_dropdown($name, $options, $selected, $extra); } } @@ -311,7 +325,7 @@ if ( ! function_exists('form_dropdown')) { $key = (string) $key; - if (is_array($val)) + if (is_array($val) && ! empty($val)) { $form .= '<optgroup label="'.$key.'">'."\n"; @@ -400,7 +414,7 @@ if ( ! function_exists('form_radio')) function form_radio($data = '', $value = '', $checked = FALSE, $extra = '') { if ( ! is_array($data)) - { + { $data = array('name' => $data); } @@ -421,7 +435,7 @@ if ( ! function_exists('form_radio')) * @return string */ if ( ! function_exists('form_submit')) -{ +{ function form_submit($data = '', $value = '', $extra = '') { $defaults = array('type' => 'submit', 'name' => (( ! is_array($data)) ? $data : ''), 'value' => $value); @@ -498,7 +512,7 @@ if ( ! function_exists('form_label')) if ($id != '') { - $label .= " for=\"$id\""; + $label .= " for=\"$id\""; } if (is_array($attributes) AND count($attributes) > 0) @@ -596,7 +610,7 @@ if ( ! function_exists('form_prep')) function form_prep($str = '', $field_name = '') { static $prepped_fields = array(); - + // if the field name is an array we do this recursively if (is_array($str)) { @@ -621,7 +635,7 @@ if ( ! function_exists('form_prep')) { return $str; } - + $str = htmlspecialchars($str); // In case htmlspecialchars misses these. @@ -629,9 +643,9 @@ if ( ! function_exists('form_prep')) if ($field_name != '') { - $prepped_fields[$field_name] = $str; + $prepped_fields[$field_name] = $field_name; } - + return $str; } } @@ -743,7 +757,7 @@ if ( ! function_exists('set_checkbox')) $OBJ =& _get_validation_object(); if ($OBJ === FALSE) - { + { if ( ! isset($_POST[$field])) { if (count($_POST) === 0 AND $default == TRUE) @@ -754,7 +768,7 @@ if ( ! function_exists('set_checkbox')) } $field = $_POST[$field]; - + if (is_array($field)) { if ( ! in_array($value, $field)) @@ -809,7 +823,7 @@ if ( ! function_exists('set_radio')) } $field = $_POST[$field]; - + if (is_array($field)) { if ( ! in_array($value, $field)) @@ -919,7 +933,7 @@ if ( ! function_exists('_parse_form_attributes')) } $att = ''; - + foreach ($default as $key => $val) { if ($key == 'value') @@ -957,9 +971,14 @@ if ( ! function_exists('_attributes_to_string')) $attributes .= ' method="post"'; } + if ($formtag == TRUE AND strpos($attributes, 'accept-charset=') === FALSE) + { + $attributes .= ' accept-charset="'.strtolower(config_item('charset')).'"'; + } + return ' '.$attributes; } - + if (is_object($attributes) AND count($attributes) > 0) { $attributes = (array)$attributes; @@ -967,19 +986,24 @@ if ( ! function_exists('_attributes_to_string')) if (is_array($attributes) AND count($attributes) > 0) { - $atts = ''; + $atts = ''; - if ( ! isset($attributes['method']) AND $formtag === TRUE) - { - $atts .= ' method="post"'; - } + if ( ! isset($attributes['method']) AND $formtag === TRUE) + { + $atts .= ' method="post"'; + } - foreach ($attributes as $key => $val) - { - $atts .= ' '.$key.'="'.$val.'"'; - } + if ( ! isset($attributes['accept-charset']) AND $formtag === TRUE) + { + $atts .= ' accept-charset="'.strtolower(config_item('charset')).'"'; + } + + foreach ($attributes as $key => $val) + { + $atts .= ' '.$key.'="'.$val.'"'; + } - return $atts; + return $atts; } } } diff --git a/system/helpers/html_helper.php b/system/helpers/html_helper.php index c18a68778..68c6f5908 100644..100755 --- a/system/helpers/html_helper.php +++ b/system/helpers/html_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -97,7 +97,7 @@ if ( ! function_exists('ol')) * @param string * @param mixed * @param mixed - * @param intiger + * @param integer * @return string */ if ( ! function_exists('_list')) @@ -199,6 +199,12 @@ if ( ! function_exists('img')) $src = array('src' => $src); } + // If there is no alt attribute defined, set it to an empty string + if ( ! isset($src['alt'])) + { + $src['alt'] = ''; + } + $img = '<img'; foreach ($src as $k=>$v) @@ -210,16 +216,16 @@ if ( ! function_exists('img')) if ($index_page === TRUE) { - $img .= ' src="'.$CI->config->site_url($v).'" '; + $img .= ' src="'.$CI->config->site_url($v).'"'; } else { - $img .= ' src="'.$CI->config->slash_item('base_url').$v.'" '; + $img .= ' src="'.$CI->config->slash_item('base_url').$v.'"'; } } else { - $img .= " $k=\"$v\" "; + $img .= " $k=\"$v\""; } } @@ -301,11 +307,11 @@ if ( ! function_exists('link_tag')) { if ($index_page === TRUE) { - $link .= ' href="'.$CI->config->site_url($v).'" '; + $link .= 'href="'.$CI->config->site_url($v).'" '; } else { - $link .= ' href="'.$CI->config->slash_item('base_url').$v.'" '; + $link .= 'href="'.$CI->config->slash_item('base_url').$v.'" '; } } else @@ -320,15 +326,15 @@ if ( ! function_exists('link_tag')) { if ( strpos($href, '://') !== FALSE) { - $link .= ' href="'.$href.'" '; + $link .= 'href="'.$href.'" '; } elseif ($index_page === TRUE) { - $link .= ' href="'.$CI->config->site_url($href).'" '; + $link .= 'href="'.$CI->config->site_url($href).'" '; } else { - $link .= ' href="'.$CI->config->slash_item('base_url').$href.'" '; + $link .= 'href="'.$CI->config->slash_item('base_url').$href.'" '; } $link .= 'rel="'.$rel.'" type="'.$type.'" '; @@ -382,9 +388,9 @@ if ( ! function_exists('meta')) $str = ''; foreach ($name as $meta) { - $type = ( ! isset($meta['type']) OR $meta['type'] == 'name') ? 'name' : 'http-equiv'; - $name = ( ! isset($meta['name'])) ? '' : $meta['name']; - $content = ( ! isset($meta['content'])) ? '' : $meta['content']; + $type = ( ! isset($meta['type']) OR $meta['type'] == 'name') ? 'name' : 'http-equiv'; + $name = ( ! isset($meta['name'])) ? '' : $meta['name']; + $content = ( ! isset($meta['content'])) ? '' : $meta['content']; $newline = ( ! isset($meta['newline'])) ? "\n" : $meta['newline']; $str .= '<meta '.$type.'="'.$name.'" content="'.$content.'" />'.$newline; diff --git a/system/helpers/index.html b/system/helpers/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/helpers/index.html +++ b/system/helpers/index.html diff --git a/system/helpers/inflector_helper.php b/system/helpers/inflector_helper.php index ffa99cc26..4cd7486b4 100644..100755 --- a/system/helpers/inflector_helper.php +++ b/system/helpers/inflector_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -36,14 +36,14 @@ * @access public * @param string * @return str - */ + */ if ( ! function_exists('singular')) -{ +{ function singular($str) { $str = strtolower(trim($str)); $end = substr($str, -3); - + if ($end == 'ies') { $str = substr($str, 0, strlen($str)-3).'y'; @@ -55,13 +55,13 @@ if ( ! function_exists('singular')) else { $end = substr($str, -1); - + if ($end == 's') { $str = substr($str, 0, strlen($str)-1); } } - + return $str; } } @@ -77,9 +77,9 @@ if ( ! function_exists('singular')) * @param string * @param bool * @return str - */ + */ if ( ! function_exists('plural')) -{ +{ function plural($str, $force = FALSE) { $str = strtolower(trim($str)); @@ -91,6 +91,17 @@ if ( ! function_exists('plural')) $vowels = array('a', 'e', 'i', 'o', 'u'); $str = in_array(substr($str, -2, 1), $vowels) ? $str.'s' : substr($str, 0, -1).'ies'; } + elseif ($end == 'h') + { + if (substr($str, -2) == 'ch' OR substr($str, -2) == 'sh') + { + $str .= 'es'; + } + else + { + $str .= 's'; + } + } elseif ($end == 's') { if ($force == TRUE) @@ -117,11 +128,11 @@ if ( ! function_exists('plural')) * @access public * @param string * @return str - */ + */ if ( ! function_exists('camelize')) -{ +{ function camelize($str) - { + { $str = 'x'.strtolower(trim($str)); $str = ucwords(preg_replace('/[\s_]+/', ' ', $str)); return substr(str_replace(' ', '', $str), 1); @@ -138,7 +149,7 @@ if ( ! function_exists('camelize')) * @access public * @param string * @return str - */ + */ if ( ! function_exists('underscore')) { function underscore($str) @@ -157,15 +168,15 @@ if ( ! function_exists('underscore')) * @access public * @param string * @return str - */ + */ if ( ! function_exists('humanize')) -{ +{ function humanize($str) { return ucwords(preg_replace('/[_]+/', ' ', strtolower(trim($str)))); } } - + /* End of file inflector_helper.php */ /* Location: ./system/helpers/inflector_helper.php */
\ No newline at end of file diff --git a/system/helpers/language_helper.php b/system/helpers/language_helper.php index 442619c93..68c1a1fc6 100644..100755 --- a/system/helpers/language_helper.php +++ b/system/helpers/language_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -36,7 +36,7 @@ * @param string the language line * @param string the id of the form element * @return string - */ + */ if ( ! function_exists('lang')) { function lang($line, $id = '') diff --git a/system/helpers/number_helper.php b/system/helpers/number_helper.php index cf683f2a1..a2caea5e3 100644..100755 --- a/system/helpers/number_helper.php +++ b/system/helpers/number_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -36,29 +36,29 @@ */ if ( ! function_exists('byte_format')) { - function byte_format($num) + function byte_format($num, $precision = 1) { $CI =& get_instance(); $CI->lang->load('number'); - - if ($num >= 1000000000000) + + if ($num >= 1000000000000) { - $num = round($num / 1099511627776, 1); + $num = round($num / 1099511627776, $precision); $unit = $CI->lang->line('terabyte_abbr'); } - elseif ($num >= 1000000000) + elseif ($num >= 1000000000) { - $num = round($num / 1073741824, 1); + $num = round($num / 1073741824, $precision); $unit = $CI->lang->line('gigabyte_abbr'); } - elseif ($num >= 1000000) + elseif ($num >= 1000000) { - $num = round($num / 1048576, 1); + $num = round($num / 1048576, $precision); $unit = $CI->lang->line('megabyte_abbr'); } - elseif ($num >= 1000) + elseif ($num >= 1000) { - $num = round($num / 1024, 1); + $num = round($num / 1024, $precision); $unit = $CI->lang->line('kilobyte_abbr'); } else @@ -67,9 +67,10 @@ if ( ! function_exists('byte_format')) return number_format($num).' '.$unit; } - return number_format($num, 1).' '.$unit; - } + return number_format($num, $precision).' '.$unit; + } } + /* End of file number_helper.php */ /* Location: ./system/helpers/number_helper.php */
\ No newline at end of file diff --git a/system/helpers/path_helper.php b/system/helpers/path_helper.php index 030b6bff1..ffcf46842 100644..100755 --- a/system/helpers/path_helper.php +++ b/system/helpers/path_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -34,7 +34,7 @@ * @param string * @param bool checks to see if the path exists * @return string - */ + */ if ( ! function_exists('set_realpath')) { function set_realpath($path, $check_existance = FALSE) @@ -44,16 +44,16 @@ if ( ! function_exists('set_realpath')) { show_error('The path you submitted must be a local server path, not a URL'); } - + // Resolve the path if (function_exists('realpath') AND @realpath($path) !== FALSE) { $path = realpath($path).'/'; } - + // Add a trailing slash $path = preg_replace("#([^/])/*$#", "\\1/", $path); - + // Make sure the path exists if ($check_existance == TRUE) { @@ -62,7 +62,7 @@ if ( ! function_exists('set_realpath')) show_error('Not a valid path: '.$path); } } - + return $path; } } diff --git a/system/helpers/security_helper.php b/system/helpers/security_helper.php index 1fc47b34b..61ebf46f9 100644..100755 --- a/system/helpers/security_helper.php +++ b/system/helpers/security_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -34,35 +34,69 @@ * @param string * @param bool whether or not the content is an image file * @return string - */ + */ if ( ! function_exists('xss_clean')) { function xss_clean($str, $is_image = FALSE) { $CI =& get_instance(); - return $CI->input->xss_clean($str, $is_image); + return $CI->security->xss_clean($str, $is_image); } } -// -------------------------------------------------------------------- +// ------------------------------------------------------------------------ /** - * Hash encode a string + * Sanitize Filename * * @access public * @param string * @return string - */ + */ +if ( ! function_exists('sanitize_filename')) +{ + function sanitize_filename($filename) + { + $CI =& get_instance(); + return $CI->security->sanitize_filename($filename); + } +} + +// -------------------------------------------------------------------- + +/** + * Hash encode a string + * + * This is simply an alias for do_hash() + * dohash() is now deprecated + */ if ( ! function_exists('dohash')) -{ +{ function dohash($str, $type = 'sha1') { + return do_hash($str, $type); + } +} + +// -------------------------------------------------------------------- + +/** + * Hash encode a string + * + * @access public + * @param string + * @return string + */ +if ( ! function_exists('do_hash')) +{ + function do_hash($str, $type = 'sha1') + { if ($type == 'sha1') { if ( ! function_exists('sha1')) { if ( ! function_exists('mhash')) - { + { require_once(BASEPATH.'libraries/Sha1'.EXT); $SH = new CI_SHA; return $SH->generate($str); @@ -75,7 +109,7 @@ if ( ! function_exists('dohash')) else { return sha1($str); - } + } } else { @@ -83,7 +117,7 @@ if ( ! function_exists('dohash')) } } } - + // ------------------------------------------------------------------------ /** @@ -92,18 +126,18 @@ if ( ! function_exists('dohash')) * @access public * @param string * @return string - */ + */ if ( ! function_exists('strip_image_tags')) { function strip_image_tags($str) { $str = preg_replace("#<img\s+.*?src\s*=\s*[\"'](.+?)[\"'].*?\>#", "\\1", $str); $str = preg_replace("#<img\s+.*?src\s*=\s*(.+?).*?\>#", "\\1", $str); - + return $str; } } - + // ------------------------------------------------------------------------ /** @@ -112,7 +146,7 @@ if ( ! function_exists('strip_image_tags')) * @access public * @param string * @return string - */ + */ if ( ! function_exists('encode_php_tags')) { function encode_php_tags($str) diff --git a/system/helpers/smiley_helper.php b/system/helpers/smiley_helper.php index 3a31be36e..80a8d79ad 100644..100755 --- a/system/helpers/smiley_helper.php +++ b/system/helpers/smiley_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -40,12 +40,12 @@ */ if ( ! function_exists('smiley_js')) { - function smiley_js($alias = '', $field_id = '') + function smiley_js($alias = '', $field_id = '', $inline = TRUE) { static $do_setup = TRUE; $r = ''; - + if ($alias != '' && ! is_array($alias)) { $alias = array($alias => $field_id); @@ -54,9 +54,9 @@ if ( ! function_exists('smiley_js')) if ($do_setup === TRUE) { $do_setup = FALSE; - + $m = array(); - + if (is_array($alias)) { foreach($alias as $name => $id) @@ -64,23 +64,22 @@ if ( ! function_exists('smiley_js')) $m[] = '"'.$name.'" : "'.$id.'"'; } } - + $m = '{'.implode(',', $m).'}'; - + $r .= <<<EOF - var smiley_map = {$m}; function insert_smiley(smiley, field_id) { var el = document.getElementById(field_id), newStart; - + if ( ! el && smiley_map[field_id]) { el = document.getElementById(smiley_map[field_id]); - + if ( ! el) return false; } - + el.focus(); smiley = " " + smiley; @@ -93,7 +92,7 @@ if ( ! function_exists('smiley_js')) el.setSelectionRange(newStart, newStart); } else if (document.selection) { - document.selection.createRange().text = text; + document.selection.createRange().text = smiley; } } EOF; @@ -109,7 +108,14 @@ EOF; } } - return '<script type="text/javascript" charset="utf-8">'.$r.'</script>'; + if ($inline) + { + return '<script type="text/javascript" charset="utf-8">/*<![CDATA[ */'.$r.'// ]]></script>'; + } + else + { + return $r; + } } } @@ -118,8 +124,8 @@ EOF; /** * Get Clickable Smileys * - * Returns an array of image tag links that can be clicked to be inserted - * into a form field. + * Returns an array of image tag links that can be clicked to be inserted + * into a form field. * * @access public * @param string the URL to the folder containing the smiley images @@ -130,12 +136,12 @@ if ( ! function_exists('get_clickable_smileys')) function get_clickable_smileys($image_url, $alias = '', $smileys = NULL) { // For backward compatibility with js_insert_smiley - + if (is_array($alias)) { $smileys = $alias; } - + if ( ! is_array($smileys)) { if (FALSE === ($smileys = _get_smiley_array())) @@ -146,7 +152,7 @@ if ( ! function_exists('get_clickable_smileys')) // Add a trailing slash to the file path if needed $image_url = rtrim($image_url, '/').'/'; - + $used = array(); foreach ($smileys as $key => $val) { @@ -158,12 +164,12 @@ if ( ! function_exists('get_clickable_smileys')) { continue; } - - $link[] = "<a href=\"javascript:void(0);\" onClick=\"insert_smiley('".$key."', '".$alias."')\"><img src=\"".$image_url.$smileys[$key][0]."\" width=\"".$smileys[$key][1]."\" height=\"".$smileys[$key][2]."\" alt=\"".$smileys[$key][3]."\" style=\"border:0;\" /></a>"; - + + $link[] = "<a href=\"javascript:void(0);\" onclick=\"insert_smiley('".$key."', '".$alias."')\"><img src=\"".$image_url.$smileys[$key][0]."\" width=\"".$smileys[$key][1]."\" height=\"".$smileys[$key][2]."\" alt=\"".$smileys[$key][3]."\" style=\"border:0;\" /></a>"; + $used[$smileys[$key][0]] = TRUE; } - + return $link; } } diff --git a/system/helpers/string_helper.php b/system/helpers/string_helper.php index c0409dc5a..7765bba31 100644..100755 --- a/system/helpers/string_helper.php +++ b/system/helpers/string_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -30,7 +30,7 @@ /** * Trim Slashes * - * Removes any leading/traling slashes from a string: + * Removes any leading/trailing slashes from a string: * * /this/that/theother/ * @@ -41,15 +41,15 @@ * @access public * @param string * @return string - */ + */ if ( ! function_exists('trim_slashes')) { function trim_slashes($str) { return trim($str, '/'); - } + } } - + // ------------------------------------------------------------------------ /** @@ -60,13 +60,13 @@ if ( ! function_exists('trim_slashes')) * @access public * @param mixed string or array * @return mixed string or array - */ + */ if ( ! function_exists('strip_slashes')) { function strip_slashes($str) { if (is_array($str)) - { + { foreach ($str as $key => $val) { $str[$key] = strip_slashes($val); @@ -76,7 +76,7 @@ if ( ! function_exists('strip_slashes')) { $str = stripslashes($str); } - + return $str; } } @@ -91,7 +91,7 @@ if ( ! function_exists('strip_slashes')) * @access public * @param string * @return string - */ + */ if ( ! function_exists('strip_quotes')) { function strip_quotes($str) @@ -110,16 +110,17 @@ if ( ! function_exists('strip_quotes')) * @access public * @param string * @return string - */ + */ if ( ! function_exists('quotes_to_entities')) { function quotes_to_entities($str) - { + { return str_replace(array("\'","\"","'",'"'), array("'",""","'","""), $str); } } // ------------------------------------------------------------------------ + /** * Reduce Double Slashes * @@ -135,15 +136,15 @@ if ( ! function_exists('quotes_to_entities')) * @access public * @param string * @return string - */ + */ if ( ! function_exists('reduce_double_slashes')) { function reduce_double_slashes($str) { - return preg_replace("#([^:])//+#", "\\1/", $str); + return preg_replace("#(^|[^:])//+#", "\\1/", $str); } } - + // ------------------------------------------------------------------------ /** @@ -162,7 +163,7 @@ if ( ! function_exists('reduce_double_slashes')) * @param string the character you wish to reduce * @param bool TRUE/FALSE - whether to trim the character from the beginning/end * @return string - */ + */ if ( ! function_exists('reduce_multiples')) { function reduce_multiples($str, $character = ',', $trim = FALSE) @@ -177,7 +178,7 @@ if ( ! function_exists('reduce_multiples')) return $str; } } - + // ------------------------------------------------------------------------ /** @@ -186,22 +187,27 @@ if ( ! function_exists('reduce_multiples')) * Useful for generating passwords or hashes. * * @access public - * @param string type of random string. Options: alunum, numeric, nozero, unique + * @param string type of random string. basic, alpha, alunum, numeric, nozero, unique, md5, encrypt and sha1 * @param integer number of characters * @return string */ if ( ! function_exists('random_string')) -{ +{ function random_string($type = 'alnum', $len = 8) - { + { switch($type) { + case 'basic' : return mt_rand(); + break; case 'alnum' : case 'numeric' : case 'nozero' : - + case 'alpha' : + switch ($type) { + case 'alpha' : $pool = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; + break; case 'alnum' : $pool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; break; case 'numeric' : $pool = '0123456789'; @@ -216,9 +222,20 @@ if ( ! function_exists('random_string')) $str .= substr($pool, mt_rand(0, strlen($pool) -1), 1); } return $str; - break; - case 'unique' : return md5(uniqid(mt_rand())); - break; + break; + case 'unique' : + case 'md5' : + + return md5(uniqid(mt_rand())); + break; + case 'encrypt' : + case 'sha1' : + + $CI =& get_instance(); + $CI->load->helper('security'); + + return do_hash(uniqid(mt_rand(), TRUE), 'sha1'); + break; } } } @@ -233,12 +250,12 @@ if ( ! function_exists('random_string')) * @access public * @param string (as many parameters as needed) * @return string - */ + */ if ( ! function_exists('alternator')) { function alternator() { - static $i; + static $i; if (func_num_args() == 0) { @@ -259,13 +276,13 @@ if ( ! function_exists('alternator')) * @param string * @param integer number of repeats * @return string - */ + */ if ( ! function_exists('repeater')) { function repeater($data, $num = 1) { return (($num > 0) ? str_repeat($data, $num) : ''); - } + } } diff --git a/system/helpers/text_helper.php b/system/helpers/text_helper.php index 1e672937b..47e6ccc93 100644..100755 --- a/system/helpers/text_helper.php +++ b/system/helpers/text_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -37,7 +37,7 @@ * @param integer * @param string the end character. Usually an ellipsis * @return string - */ + */ if ( ! function_exists('word_limiter')) { function word_limiter($str, $limit = 100, $end_char = '…') @@ -46,18 +46,18 @@ if ( ! function_exists('word_limiter')) { return $str; } - + preg_match('/^\s*+(?:\S++\s*+){1,'.(int) $limit.'}/', $str, $matches); - + if (strlen($str) == strlen($matches[0])) { $end_char = ''; } - + return rtrim($matches[0]).$end_char; } } - + // ------------------------------------------------------------------------ /** @@ -71,7 +71,7 @@ if ( ! function_exists('word_limiter')) * @param integer * @param string the end character. Usually an ellipsis * @return string - */ + */ if ( ! function_exists('character_limiter')) { function character_limiter($str, $n = 500, $end_char = '…') @@ -80,7 +80,7 @@ if ( ! function_exists('character_limiter')) { return $str; } - + $str = preg_replace("/\s+/", ' ', str_replace(array("\r\n", "\r", "\n"), ' ', $str)); if (strlen($str) <= $n) @@ -92,16 +92,16 @@ if ( ! function_exists('character_limiter')) foreach (explode(' ', trim($str)) as $val) { $out .= $val.' '; - + if (strlen($out) >= $n) { $out = trim($out); return (strlen($out) == strlen($str)) ? $out : $out.$end_char; - } + } } } } - + // ------------------------------------------------------------------------ /** @@ -112,21 +112,21 @@ if ( ! function_exists('character_limiter')) * @access public * @param string * @return string - */ + */ if ( ! function_exists('ascii_to_entities')) { function ascii_to_entities($str) { - $count = 1; - $out = ''; - $temp = array(); - - for ($i = 0, $s = strlen($str); $i < $s; $i++) - { - $ordinal = ord($str[$i]); - - if ($ordinal < 128) - { + $count = 1; + $out = ''; + $temp = array(); + + for ($i = 0, $s = strlen($str); $i < $s; $i++) + { + $ordinal = ord($str[$i]); + + if ($ordinal < 128) + { /* If the $temp array has a value but we have moved on, then it seems only fair that we output that entity and restart $temp before continuing. -Paul @@ -138,31 +138,31 @@ if ( ! function_exists('ascii_to_entities')) } $out .= $str[$i]; - } - else - { - if (count($temp) == 0) - { - $count = ($ordinal < 224) ? 2 : 3; - } - - $temp[] = $ordinal; - - if (count($temp) == $count) - { - $number = ($count == 3) ? (($temp['0'] % 16) * 4096) + (($temp['1'] % 64) * 64) + ($temp['2'] % 64) : (($temp['0'] % 32) * 64) + ($temp['1'] % 64); - - $out .= '&#'.$number.';'; - $count = 1; - $temp = array(); - } - } - } - - return $out; + } + else + { + if (count($temp) == 0) + { + $count = ($ordinal < 224) ? 2 : 3; + } + + $temp[] = $ordinal; + + if (count($temp) == $count) + { + $number = ($count == 3) ? (($temp['0'] % 16) * 4096) + (($temp['1'] % 64) * 64) + ($temp['2'] % 64) : (($temp['0'] % 32) * 64) + ($temp['1'] % 64); + + $out .= '&#'.$number.';'; + $count = 1; + $temp = array(); + } + } + } + + return $out; } } - + // ------------------------------------------------------------------------ /** @@ -174,51 +174,51 @@ if ( ! function_exists('ascii_to_entities')) * @param string * @param bool * @return string - */ + */ if ( ! function_exists('entities_to_ascii')) { function entities_to_ascii($str, $all = TRUE) { - if (preg_match_all('/\&#(\d+)\;/', $str, $matches)) - { - for ($i = 0, $s = count($matches['0']); $i < $s; $i++) - { - $digits = $matches['1'][$i]; - - $out = ''; - - if ($digits < 128) - { - $out .= chr($digits); - - } - elseif ($digits < 2048) - { - $out .= chr(192 + (($digits - ($digits % 64)) / 64)); - $out .= chr(128 + ($digits % 64)); - } - else - { - $out .= chr(224 + (($digits - ($digits % 4096)) / 4096)); - $out .= chr(128 + ((($digits % 4096) - ($digits % 64)) / 64)); - $out .= chr(128 + ($digits % 64)); - } - - $str = str_replace($matches['0'][$i], $out, $str); - } - } - - if ($all) - { - $str = str_replace(array("&", "<", ">", """, "'", "-"), - array("&","<",">","\"", "'", "-"), - $str); - } - - return $str; + if (preg_match_all('/\&#(\d+)\;/', $str, $matches)) + { + for ($i = 0, $s = count($matches['0']); $i < $s; $i++) + { + $digits = $matches['1'][$i]; + + $out = ''; + + if ($digits < 128) + { + $out .= chr($digits); + + } + elseif ($digits < 2048) + { + $out .= chr(192 + (($digits - ($digits % 64)) / 64)); + $out .= chr(128 + ($digits % 64)); + } + else + { + $out .= chr(224 + (($digits - ($digits % 4096)) / 4096)); + $out .= chr(128 + ((($digits % 4096) - ($digits % 64)) / 64)); + $out .= chr(128 + ($digits % 64)); + } + + $str = str_replace($matches['0'][$i], $out, $str); + } + } + + if ($all) + { + $str = str_replace(array("&", "<", ">", """, "'", "-"), + array("&","<",">","\"", "'", "-"), + $str); + } + + return $str; } } - + // ------------------------------------------------------------------------ /** @@ -233,7 +233,7 @@ if ( ! function_exists('entities_to_ascii')) * @param string the array of censoered words * @param string the optional replacement value * @return string - */ + */ if ( ! function_exists('word_censor')) { function word_censor($str, $censored, $replacement = '') @@ -242,13 +242,13 @@ if ( ! function_exists('word_censor')) { return $str; } - - $str = ' '.$str.' '; + + $str = ' '.$str.' '; // \w, \b and a few others do not match on a unicode character // set for performance reasons. As a result words like über // will not match on a word boundary. Instead, we'll assume that - // a bad word will be bookended by any of these characters. + // a bad word will be bookeneded by any of these characters. $delim = '[-_\'\"`(){}<>\[\]|!?@#%&,.:;^~*+=\/ 0-9\n\r\t]'; foreach ($censored as $badword) @@ -263,10 +263,10 @@ if ( ! function_exists('word_censor')) } } - return trim($str); + return trim($str); } } - + // ------------------------------------------------------------------------ /** @@ -277,26 +277,26 @@ if ( ! function_exists('word_censor')) * @access public * @param string the text string * @return string - */ + */ if ( ! function_exists('highlight_code')) { function highlight_code($str) - { + { // The highlight string function encodes and highlights // brackets so we need them to start raw $str = str_replace(array('<', '>'), array('<', '>'), $str); - + // Replace any existing PHP tags to temporary markers so they don't accidentally // break the string out of PHP, and thus, thwart the highlighting. - - $str = str_replace(array('<?', '?>', '<%', '%>', '\\', '</script>'), + + $str = str_replace(array('<?', '?>', '<%', '%>', '\\', '</script>'), array('phptagopen', 'phptagclose', 'asptagopen', 'asptagclose', 'backslashtmp', 'scriptclose'), $str); // The highlight_string function requires that the text be surrounded // by PHP tags, which we will remove later $str = '<?php '.$str.' ?>'; // <? - // All the magic happens here, baby! + // All the magic happens here, baby! $str = highlight_string($str, TRUE); // Prior to PHP 5, the highligh function used icky <font> tags @@ -307,20 +307,20 @@ if ( ! function_exists('highlight_code')) $str = str_replace(array('<font ', '</font>'), array('<span ', '</span>'), $str); $str = preg_replace('#color="(.*?)"#', 'style="color: \\1"', $str); } - + // Remove our artificially added PHP, and the syntax highlighting that came with it $str = preg_replace('/<span style="color: #([A-Z0-9]+)"><\?php( | )/i', '<span style="color: #$1">', $str); $str = preg_replace('/(<span style="color: #[A-Z0-9]+">.*?)\?><\/span>\n<\/span>\n<\/code>/is', "$1</span>\n</span>\n</code>", $str); $str = preg_replace('/<span style="color: #[A-Z0-9]+"\><\/span>/i', '', $str); - + // Replace our markers back to PHP tags. $str = str_replace(array('phptagopen', 'phptagclose', 'asptagopen', 'asptagclose', 'backslashtmp', 'scriptclose'), array('<?', '?>', '<%', '%>', '\\', '</script>'), $str); - + return $str; } } - + // ------------------------------------------------------------------------ /** @@ -334,7 +334,7 @@ if ( ! function_exists('highlight_code')) * @param string the openging tag to precede the phrase with * @param string the closing tag to end the phrase with * @return string - */ + */ if ( ! function_exists('highlight_phrase')) { function highlight_phrase($str, $phrase, $tag_open = '<strong>', $tag_close = '</strong>') @@ -343,7 +343,7 @@ if ( ! function_exists('highlight_phrase')) { return ''; } - + if ($phrase != '') { return preg_replace('/('.preg_quote($phrase, '/').')/i', $tag_open."\\1".$tag_close, $str); @@ -352,7 +352,36 @@ if ( ! function_exists('highlight_phrase')) return $str; } } - + +// ------------------------------------------------------------------------ + +/** + * Convert Accented Foreign Characters to ASCII + * + * @access public + * @param string the text string + * @return string + */ +if ( ! function_exists('convert_accented_characters')) +{ + function convert_accented_characters($str) + { + if ( ! file_exists(APPPATH.'config/foreign_chars'.EXT)) + { + return $str; + } + + include APPPATH.'config/foreign_chars'.EXT; + + if ( ! isset($foreign_characters)) + { + return $str; + } + + return preg_replace(array_keys($foreign_characters), array_values($foreign_characters), $str); + } +} + // ------------------------------------------------------------------------ /** @@ -366,7 +395,7 @@ if ( ! function_exists('highlight_phrase')) * @param string the text string * @param integer the number of characters to wrap at * @return string - */ + */ if ( ! function_exists('word_wrap')) { function word_wrap($str, $charlim = '76') @@ -374,47 +403,47 @@ if ( ! function_exists('word_wrap')) // Se the character limit if ( ! is_numeric($charlim)) $charlim = 76; - + // Reduce multiple spaces $str = preg_replace("| +|", " ", $str); - + // Standardize newlines if (strpos($str, "\r") !== FALSE) { - $str = str_replace(array("\r\n", "\r"), "\n", $str); + $str = str_replace(array("\r\n", "\r"), "\n", $str); } - - // If the current word is surrounded by {unwrap} tags we'll + + // If the current word is surrounded by {unwrap} tags we'll // strip the entire chunk and replace it with a marker. $unwrap = array(); if (preg_match_all("|(\{unwrap\}.+?\{/unwrap\})|s", $str, $matches)) { for ($i = 0; $i < count($matches['0']); $i++) { - $unwrap[] = $matches['1'][$i]; + $unwrap[] = $matches['1'][$i]; $str = str_replace($matches['1'][$i], "{{unwrapped".$i."}}", $str); } } - - // Use PHP's native function to do the initial wordwrap. - // We set the cut flag to FALSE so that any individual words that are + + // Use PHP's native function to do the initial wordwrap. + // We set the cut flag to FALSE so that any individual words that are // too long get left alone. In the next step we'll deal with them. $str = wordwrap($str, $charlim, "\n", FALSE); - + // Split the string into individual lines of text and cycle through them $output = ""; - foreach (explode("\n", $str) as $line) + foreach (explode("\n", $str) as $line) { // Is the line within the allowed character count? // If so we'll join it to the output and continue if (strlen($line) <= $charlim) { - $output .= $line."\n"; + $output .= $line."\n"; continue; } - + $temp = ''; - while((strlen($line)) > $charlim) + while((strlen($line)) > $charlim) { // If the over-length word is a URL we won't wrap it if (preg_match("!\[url.+\]|://|wwww.!", $line)) @@ -426,12 +455,12 @@ if ( ! function_exists('word_wrap')) $temp .= substr($line, 0, $charlim-1); $line = substr($line, $charlim-1); } - - // If $temp contains data it means we had to split up an over-length + + // If $temp contains data it means we had to split up an over-length // word into smaller chunks so we'll add it back to our current line if ($temp != '') { - $output .= $temp . "\n" . $line; + $output .= $temp."\n".$line; } else { @@ -443,7 +472,7 @@ if ( ! function_exists('word_wrap')) // Put our markers back if (count($unwrap) > 0) - { + { foreach ($unwrap as $key => $val) { $output = str_replace("{{unwrapped".$key."}}", $val, $output); @@ -453,10 +482,52 @@ if ( ! function_exists('word_wrap')) // Remove the unwrap tags $output = str_replace(array('{unwrap}', '{/unwrap}'), '', $output); - return $output; + return $output; } } +// ------------------------------------------------------------------------ + +/** + * Ellipsize String + * + * This function will strip tags from a string, split it at its max_length and ellipsize + * + * @param string string to ellipsize + * @param integer max length of string + * @param mixed int (1|0) or float, .5, .2, etc for position to split + * @param string ellipsis ; Default '...' + * @return string ellipsized string + */ +if ( ! function_exists('ellipsize')) +{ + function ellipsize($str, $max_length, $position = 1, $ellipsis = '…') + { + // Strip tags + $str = trim(strip_tags($str)); + + // Is the string long enough to ellipsize? + if (strlen($str) <= $max_length) + { + return $str; + } + + $beg = substr($str, 0, floor($max_length * $position)); + + $position = ($position > 1) ? 1 : $position; + + if ($position === 1) + { + $end = substr($str, 0, -($max_length - strlen($beg))); + } + else + { + $end = substr($str, -($max_length - strlen($beg))); + } + + return $beg.$ellipsis.$end; + } +} /* End of file text_helper.php */ /* Location: ./system/helpers/text_helper.php */
\ No newline at end of file diff --git a/system/helpers/typography_helper.php b/system/helpers/typography_helper.php index 5621e6dd0..302bf45c5 100644..100755 --- a/system/helpers/typography_helper.php +++ b/system/helpers/typography_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -33,19 +33,19 @@ * @access public * @param string * @return string - */ + */ if ( ! function_exists('nl2br_except_pre')) { function nl2br_except_pre($str) { $CI =& get_instance(); - + $CI->load->library('typography'); - + return $CI->typography->nl2br_except_pre($str); } } - + // ------------------------------------------------------------------------ /** @@ -54,16 +54,39 @@ if ( ! function_exists('nl2br_except_pre')) * * @access public * @param string + * @param bool whether to allow javascript event handlers * @param bool whether to reduce multiple instances of double newlines to two * @return string */ if ( ! function_exists('auto_typography')) { - function auto_typography($str, $reduce_linebreaks = FALSE) + function auto_typography($str, $strip_js_event_handlers = TRUE, $reduce_linebreaks = FALSE) { - $CI =& get_instance(); + $CI =& get_instance(); $CI->load->library('typography'); - return $CI->typography->auto_typography($str, $reduce_linebreaks); + return $CI->typography->auto_typography($str, $strip_js_event_handlers, $reduce_linebreaks); + } +} + + +// -------------------------------------------------------------------- + +/** + * HTML Entities Decode + * + * This function is a replacement for html_entity_decode() + * + * @access public + * @param string + * @return string + */ +if ( ! function_exists('entity_decode')) +{ + function entity_decode($str, $charset='UTF-8') + { + $CI =& get_instance(); + $CI->load->library('security'); + return $CI->security->entity_decode($str, $charset); } } diff --git a/system/helpers/url_helper.php b/system/helpers/url_helper.php index 90ea9207e..d0516cee6 100644..100755 --- a/system/helpers/url_helper.php +++ b/system/helpers/url_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -70,7 +70,7 @@ if ( ! function_exists('base_url')) /** * Current URL * - * Returns the full URL (including segments) of the page where this + * Returns the full URL (including segments) of the page where this * function is placed * * @access public @@ -224,7 +224,7 @@ if ( ! function_exists('anchor_popup')) * @access public * @param string the email address * @param string the link title - * @param mixed any attributes + * @param mixed any attributes * @return string */ if ( ! function_exists('mailto')) @@ -254,7 +254,7 @@ if ( ! function_exists('mailto')) * @access public * @param string the email address * @param string the link title - * @param mixed any attributes + * @param mixed any attributes * @return string */ if ( ! function_exists('safe_mailto')) @@ -320,7 +320,7 @@ if ( ! function_exists('safe_mailto')) { $count = ($ordinal < 224) ? 2 : 3; } - + $temp[] = $ordinal; if (count($temp) == $count) { @@ -369,7 +369,7 @@ if ( ! function_exists('safe_mailto')) * @access public * @param string the string * @param string the type: email, url, or both - * @param bool whether to create pop-up links + * @param bool whether to create pop-up links * @return string */ if ( ! function_exists('auto_link')) @@ -381,7 +381,7 @@ if ( ! function_exists('auto_link')) if (preg_match_all("#(^|\s|\()((http(s?)://)|(www\.))(\w+[^\s\)\<]+)#i", $str, $matches)) { $pop = ($popup == TRUE) ? " target=\"_blank\" " : ""; - + for ($i = 0; $i < count($matches['0']); $i++) { $period = ''; @@ -390,7 +390,7 @@ if ( ! function_exists('auto_link')) $period = '.'; $matches['6'][$i] = substr($matches['6'][$i], 0, -1); } - + $str = str_replace($matches['0'][$i], $matches['1'][$i].'<a href="http'. $matches['4'][$i].'://'. @@ -416,7 +416,7 @@ if ( ! function_exists('auto_link')) $period = '.'; $matches['3'][$i] = substr($matches['3'][$i], 0, -1); } - + $str = str_replace($matches['0'][$i], safe_mailto($matches['1'][$i].'@'.$matches['2'][$i].'.'.$matches['3'][$i]).$period, $str); } } @@ -431,7 +431,7 @@ if ( ! function_exists('auto_link')) /** * Prep URL * - * Simply adds the http:// part if missing + * Simply adds the http:// part if no scheme is included * * @access public * @param string the URL @@ -446,7 +446,9 @@ if ( ! function_exists('prep_url')) return ''; } - if (substr($str, 0, 7) != 'http://' && substr($str, 0, 8) != 'https://') + $url = parse_url($str); + + if ( ! $url OR ! isset($url['scheme'])) { $str = 'http://'.$str; } @@ -493,7 +495,7 @@ if ( ! function_exists('url_title')) $replace.'$' => $replace, '^'.$replace => $replace, '\.+$' => '' - ); + ); $str = strip_tags($str); @@ -506,7 +508,7 @@ if ( ! function_exists('url_title')) { $str = strtolower($str); } - + return trim(stripslashes($str)); } } @@ -533,7 +535,7 @@ if ( ! function_exists('redirect')) { $uri = site_url($uri); } - + switch($method) { case 'refresh' : header("Refresh:0;url=".$uri); diff --git a/system/helpers/xml_helper.php b/system/helpers/xml_helper.php index 712f6777e..cdd81ad70 100644..100755 --- a/system/helpers/xml_helper.php +++ b/system/helpers/xml_helper.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -33,30 +33,39 @@ * @access public * @param string * @return string - */ + */ if ( ! function_exists('xml_convert')) { - function xml_convert($str) + function xml_convert($str, $protect_all = FALSE) { $temp = '__TEMP_AMPERSANDS__'; - // Replace entities to temporary markers so that + // Replace entities to temporary markers so that // ampersands won't get messed up $str = preg_replace("/&#(\d+);/", "$temp\\1;", $str); - $str = preg_replace("/&(\w+);/", "$temp\\1;", $str); - + + if ($protect_all === TRUE) + { + $str = preg_replace("/&(\w+);/", "$temp\\1;", $str); + } + $str = str_replace(array("&","<",">","\"", "'", "-"), - array("&", "<", ">", """, "'", "-"), - $str); + array("&", "<", ">", """, "'", "-"), + $str); - // Decode the temp markers back to entities + // Decode the temp markers back to entities $str = preg_replace("/$temp(\d+);/","&#\\1;",$str); - $str = preg_replace("/$temp(\w+);/","&\\1;", $str); - + + if ($protect_all === TRUE) + { + $str = preg_replace("/$temp(\w+);/","&\\1;", $str); + } + return $str; } } +// ------------------------------------------------------------------------ /* End of file xml_helper.php */ /* Location: ./system/helpers/xml_helper.php */
\ No newline at end of file diff --git a/system/index.html b/system/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/index.html +++ b/system/index.html diff --git a/system/language/english/calendar_lang.php b/system/language/english/calendar_lang.php index e26f84930..3e6312361 100644..100755 --- a/system/language/english/calendar_lang.php +++ b/system/language/english/calendar_lang.php @@ -1,19 +1,19 @@ <?php $lang['cal_su'] = "Su"; -$lang['cal_mo'] = "Mo"; -$lang['cal_tu'] = "Tu"; -$lang['cal_we'] = "We"; -$lang['cal_th'] = "Th"; -$lang['cal_fr'] = "Fr"; -$lang['cal_sa'] = "Sa"; -$lang['cal_sun'] = "Sun"; -$lang['cal_mon'] = "Mon"; -$lang['cal_tue'] = "Tue"; -$lang['cal_wed'] = "Wed"; -$lang['cal_thu'] = "Thu"; -$lang['cal_fri'] = "Fri"; -$lang['cal_sat'] = "Sat"; +$lang['cal_mo'] = "Mo"; +$lang['cal_tu'] = "Tu"; +$lang['cal_we'] = "We"; +$lang['cal_th'] = "Th"; +$lang['cal_fr'] = "Fr"; +$lang['cal_sa'] = "Sa"; +$lang['cal_sun'] = "Sun"; +$lang['cal_mon'] = "Mon"; +$lang['cal_tue'] = "Tue"; +$lang['cal_wed'] = "Wed"; +$lang['cal_thu'] = "Thu"; +$lang['cal_fri'] = "Fri"; +$lang['cal_sat'] = "Sat"; $lang['cal_sunday'] = "Sunday"; $lang['cal_monday'] = "Monday"; $lang['cal_tuesday'] = "Tuesday"; @@ -21,30 +21,30 @@ $lang['cal_wednesday'] = "Wednesday"; $lang['cal_thursday'] = "Thursday"; $lang['cal_friday'] = "Friday"; $lang['cal_saturday'] = "Saturday"; -$lang['cal_jan'] = "Jan"; -$lang['cal_feb'] = "Feb"; -$lang['cal_mar'] = "Mar"; -$lang['cal_apr'] = "Apr"; -$lang['cal_may'] = "May"; -$lang['cal_jun'] = "Jun"; -$lang['cal_jul'] = "Jul"; -$lang['cal_aug'] = "Aug"; -$lang['cal_sep'] = "Sep"; -$lang['cal_oct'] = "Oct"; -$lang['cal_nov'] = "Nov"; -$lang['cal_dec'] = "Dec"; -$lang['cal_january'] = "January"; -$lang['cal_february'] = "February"; -$lang['cal_march'] = "March"; +$lang['cal_jan'] = "Jan"; +$lang['cal_feb'] = "Feb"; +$lang['cal_mar'] = "Mar"; +$lang['cal_apr'] = "Apr"; +$lang['cal_may'] = "May"; +$lang['cal_jun'] = "Jun"; +$lang['cal_jul'] = "Jul"; +$lang['cal_aug'] = "Aug"; +$lang['cal_sep'] = "Sep"; +$lang['cal_oct'] = "Oct"; +$lang['cal_nov'] = "Nov"; +$lang['cal_dec'] = "Dec"; +$lang['cal_january'] = "January"; +$lang['cal_february'] = "February"; +$lang['cal_march'] = "March"; $lang['cal_april'] = "April"; -$lang['cal_mayl'] = "May"; -$lang['cal_june'] = "June"; -$lang['cal_july'] = "July"; +$lang['cal_mayl'] = "May"; +$lang['cal_june'] = "June"; +$lang['cal_july'] = "July"; $lang['cal_august'] = "August"; $lang['cal_september'] = "September"; -$lang['cal_october'] = "October"; +$lang['cal_october'] = "October"; $lang['cal_november'] = "November"; -$lang['cal_december'] = "December"; +$lang['cal_december'] = "December"; /* End of file calendar_lang.php */ diff --git a/system/language/english/date_lang.php b/system/language/english/date_lang.php index 628e55b1a..c0ace16ef 100644..100755 --- a/system/language/english/date_lang.php +++ b/system/language/english/date_lang.php @@ -56,5 +56,6 @@ $lang['UP1275'] = '(UTC +12:45) Chatham Islands Standard Time'; $lang['UP13'] = '(UTC +13:00) Phoenix Islands Time, Tonga'; $lang['UP14'] = '(UTC +14:00) Line Islands'; + /* End of file date_lang.php */ /* Location: ./system/language/english/date_lang.php */
\ No newline at end of file diff --git a/system/language/english/db_lang.php b/system/language/english/db_lang.php index dc98afcad..79b82c73a 100644..100755 --- a/system/language/english/db_lang.php +++ b/system/language/english/db_lang.php @@ -6,8 +6,9 @@ $lang['db_unable_to_select'] = 'Unable to select the specified database: %s'; $lang['db_unable_to_create'] = 'Unable to create the specified database: %s'; $lang['db_invalid_query'] = 'The query you submitted is not valid.'; $lang['db_must_set_table'] = 'You must set the database table to be used with your query.'; -$lang['db_must_set_database'] = 'You must set the database name in your database config file.'; $lang['db_must_use_set'] = 'You must use the "set" method to update an entry.'; +$lang['db_must_use_index'] = 'You must specify an index to match on for batch updates.'; +$lang['db_batch_missing_index'] = 'One or more rows submitted for batch updating is missing the specified index.'; $lang['db_must_use_where'] = 'Updates are not allowed unless they contain a "where" clause.'; $lang['db_del_must_use_where'] = 'Deletes are not allowed unless they contain a "where" or "like" clause.'; $lang['db_field_param_missing'] = 'To fetch fields requires the name of the table as a parameter.'; diff --git a/system/language/english/email_lang.php b/system/language/english/email_lang.php index e3bd113cb..e3bd113cb 100644..100755 --- a/system/language/english/email_lang.php +++ b/system/language/english/email_lang.php diff --git a/system/language/english/form_validation_lang.php b/system/language/english/form_validation_lang.php index 8a123f4bd..b01885091 100644..100755 --- a/system/language/english/form_validation_lang.php +++ b/system/language/english/form_validation_lang.php @@ -1,11 +1,11 @@ <?php -$lang['required'] = "The %s field is required."; +$lang['required'] = "The %s field is required."; $lang['isset'] = "The %s field must have a value."; $lang['valid_email'] = "The %s field must contain a valid email address."; -$lang['valid_emails'] = "The %s field must contain all valid email addresses."; -$lang['valid_url'] = "The %s field must contain a valid URL."; -$lang['valid_ip'] = "The %s field must contain a valid IP."; +$lang['valid_emails'] = "The %s field must contain all valid email addresses."; +$lang['valid_url'] = "The %s field must contain a valid URL."; +$lang['valid_ip'] = "The %s field must contain a valid IP."; $lang['min_length'] = "The %s field must be at least %s characters in length."; $lang['max_length'] = "The %s field can not exceed %s characters in length."; $lang['exact_length'] = "The %s field must be exactly %s characters in length."; @@ -15,6 +15,7 @@ $lang['alpha_dash'] = "The %s field may only contain alpha-numeric characters, $lang['numeric'] = "The %s field must contain only numbers."; $lang['is_numeric'] = "The %s field must contain only numeric characters."; $lang['integer'] = "The %s field must contain an integer."; +$lang['regex_match'] = "The %s field is not in the correct format."; $lang['matches'] = "The %s field does not match the %s field."; $lang['is_natural'] = "The %s field must contain only positive numbers."; $lang['is_natural_no_zero'] = "The %s field must contain a number greater than zero."; diff --git a/system/language/english/ftp_lang.php b/system/language/english/ftp_lang.php index 42403b971..392b2b272 100644..100755 --- a/system/language/english/ftp_lang.php +++ b/system/language/english/ftp_lang.php @@ -7,6 +7,7 @@ $lang['ftp_unable_to_makdir'] = "Unable to create the directory you have specif $lang['ftp_unable_to_changedir'] = "Unable to change directories."; $lang['ftp_unable_to_chmod'] = "Unable to set file permissions. Please check your path. Note: This feature is only available in PHP 5 or higher."; $lang['ftp_unable_to_upload'] = "Unable to upload the specified file. Please check your path."; +$lang['ftp_unable_to_download'] = "Unable to download the specified file. Please check your path."; $lang['ftp_no_source_file'] = "Unable to locate the source file. Please check your path."; $lang['ftp_unable_to_rename'] = "Unable to rename the file."; $lang['ftp_unable_to_delete'] = "Unable to delete the file."; diff --git a/system/language/english/imglib_lang.php b/system/language/english/imglib_lang.php index 66505da07..66505da07 100644..100755 --- a/system/language/english/imglib_lang.php +++ b/system/language/english/imglib_lang.php diff --git a/system/language/english/index.html b/system/language/english/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/language/english/index.html +++ b/system/language/english/index.html diff --git a/system/language/english/number_lang.php b/system/language/english/number_lang.php index 908580914..908580914 100644..100755 --- a/system/language/english/number_lang.php +++ b/system/language/english/number_lang.php diff --git a/system/language/english/profiler_lang.php b/system/language/english/profiler_lang.php index 7c40e3f3e..b6460fb83 100644..100755 --- a/system/language/english/profiler_lang.php +++ b/system/language/english/profiler_lang.php @@ -1,6 +1,6 @@ <?php -$lang['profiler_database'] = 'DATABASE'; +$lang['profiler_database'] = 'DATABASE'; $lang['profiler_controller_info'] = 'CLASS/METHOD'; $lang['profiler_benchmarks'] = 'BENCHMARKS'; $lang['profiler_queries'] = 'QUERIES'; @@ -8,12 +8,15 @@ $lang['profiler_get_data'] = 'GET DATA'; $lang['profiler_post_data'] = 'POST DATA'; $lang['profiler_uri_string'] = 'URI STRING'; $lang['profiler_memory_usage'] = 'MEMORY USAGE'; +$lang['profiler_config'] = 'CONFIG VARIABLES'; +$lang['profiler_headers'] = 'HTTP HEADERS'; $lang['profiler_no_db'] = 'Database driver is not currently loaded'; $lang['profiler_no_queries'] = 'No queries were run'; $lang['profiler_no_post'] = 'No POST data exists'; $lang['profiler_no_get'] = 'No GET data exists'; $lang['profiler_no_uri'] = 'No URI data exists'; $lang['profiler_no_memory'] = 'Memory Usage Unavailable'; +$lang['profiler_no_profiles'] = 'No Profile data - all Profiler sections have been disabled.'; /* End of file profiler_lang.php */ /* Location: ./system/language/english/profiler_lang.php */
\ No newline at end of file diff --git a/system/language/english/scaffolding_lang.php b/system/language/english/scaffolding_lang.php deleted file mode 100644 index c4d54d5c6..000000000 --- a/system/language/english/scaffolding_lang.php +++ /dev/null @@ -1,17 +0,0 @@ -<?php - -$lang['scaff_view_records'] = 'View Records'; -$lang['scaff_create_record'] = 'Create New Record'; -$lang['scaff_add'] = 'Add Data'; -$lang['scaff_view'] = 'View Data'; -$lang['scaff_edit'] = 'Edit'; -$lang['scaff_delete'] = 'Delete'; -$lang['scaff_view_all'] = 'View All'; -$lang['scaff_yes'] = 'Yes'; -$lang['scaff_no'] = 'No'; -$lang['scaff_no_data'] = 'No data exists for this table yet.'; -$lang['scaff_del_confirm'] = 'Are you sure you want to delete the following row:'; - - -/* End of file scaffolding_lang.php */ -/* Location: ./system/language/english/scaffolding_lang.php */
\ No newline at end of file diff --git a/system/language/english/unit_test_lang.php b/system/language/english/unit_test_lang.php index 45b5acf55..070bcd1f2 100644..100755 --- a/system/language/english/unit_test_lang.php +++ b/system/language/english/unit_test_lang.php @@ -18,6 +18,7 @@ $lang['ut_array'] = 'Array'; $lang['ut_object'] = 'Object'; $lang['ut_resource'] = 'Resource'; $lang['ut_null'] = 'Null'; +$lang['ut_notes'] = 'Notes'; /* End of file unit_test_lang.php */ diff --git a/system/language/english/upload_lang.php b/system/language/english/upload_lang.php index 4de9e9e74..4de9e9e74 100644..100755 --- a/system/language/english/upload_lang.php +++ b/system/language/english/upload_lang.php diff --git a/system/language/english/validation_lang.php b/system/language/english/validation_lang.php deleted file mode 100644 index a287892fe..000000000 --- a/system/language/english/validation_lang.php +++ /dev/null @@ -1,24 +0,0 @@ -<?php - -$lang['required'] = "The %s field is required."; -$lang['isset'] = "The %s field must have a value."; -$lang['valid_email'] = "The %s field must contain a valid email address."; -$lang['valid_emails'] = "The %s field must contain all valid email addresses."; -$lang['valid_url'] = "The %s field must contain a valid URL."; -$lang['valid_ip'] = "The %s field must contain a valid IP."; -$lang['min_length'] = "The %s field must be at least %s characters in length."; -$lang['max_length'] = "The %s field can not exceed %s characters in length."; -$lang['exact_length'] = "The %s field must be exactly %s characters in length."; -$lang['alpha'] = "The %s field may only contain alphabetical characters."; -$lang['alpha_numeric'] = "The %s field may only contain alpha-numeric characters."; -$lang['alpha_dash'] = "The %s field may only contain alpha-numeric characters, underscores, and dashes."; -$lang['numeric'] = "The %s field must contain a number."; -$lang['is_numeric'] = "The %s field must contain a number."; -$lang['integer'] = "The %s field must contain an integer."; -$lang['matches'] = "The %s field does not match the %s field."; -$lang['is_natural'] = "The %s field must contain a number."; -$lang['is_natural_no_zero'] = "The %s field must contain a number greater than zero."; - - -/* End of file validation_lang.php */ -/* Location: ./system/language/english/validation_lang.php */
\ No newline at end of file diff --git a/system/language/index.html b/system/language/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/language/index.html +++ b/system/language/index.html diff --git a/system/libraries/Cache/Cache.php b/system/libraries/Cache/Cache.php new file mode 100755 index 000000000..d3f6105ea --- /dev/null +++ b/system/libraries/Cache/Cache.php @@ -0,0 +1,216 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 4.3.2 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2006 - 2011 EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 2.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter Caching Class + * + * @package CodeIgniter + * @subpackage Libraries + * @category Core + * @author ExpressionEngine Dev Team + * @link + */ +class Cache extends CI_Driver_Library { + + protected $valid_drivers = array( + 'cache_apc', 'cache_file', 'cache_memcached', 'cache_dummy' + ); + + protected $_cache_path = NULL; // Path of cache files (if file-based cache) + protected $_adapter = 'dummy'; + protected $_backup_driver; + + // ------------------------------------------------------------------------ + + /** + * Constructor + * + * @param array + */ + public function __construct($config = array()) + { + if ( ! empty($config)) + { + $this->_initialize($config); + } + } + + // ------------------------------------------------------------------------ + + /** + * Get + * + * Look for a value in the cache. If it exists, return the data + * if not, return FALSE + * + * @param string + * @return mixed value that is stored/FALSE on failure + */ + public function get($id) + { + return $this->{$this->_adapter}->get($id); + } + + // ------------------------------------------------------------------------ + + /** + * Cache Save + * + * @param string Unique Key + * @param mixed Data to store + * @param int Length of time (in seconds) to cache the data + * + * @return boolean true on success/false on failure + */ + public function save($id, $data, $ttl = 60) + { + return $this->{$this->_adapter}->save($id, $data, $ttl); + } + + // ------------------------------------------------------------------------ + + /** + * Delete from Cache + * + * @param mixed unique identifier of the item in the cache + * @return boolean true on success/false on failure + */ + public function delete($id) + { + return $this->{$this->_adapter}->delete($id); + } + + // ------------------------------------------------------------------------ + + /** + * Clean the cache + * + * @return boolean false on failure/true on success + */ + public function clean() + { + return $this->{$this->_adapter}->clean(); + } + + // ------------------------------------------------------------------------ + + /** + * Cache Info + * + * @param string user/filehits + * @return mixed array on success, false on failure + */ + public function cache_info($type = 'user') + { + return $this->{$this->_adapter}->cache_info($type); + } + + // ------------------------------------------------------------------------ + + /** + * Get Cache Metadata + * + * @param mixed key to get cache metadata on + * @return mixed return value from child method + */ + public function get_metadata($id) + { + return $this->{$this->_adapter}->get_metadata($id); + } + + // ------------------------------------------------------------------------ + + /** + * Initialize + * + * Initialize class properties based on the configuration array. + * + * @param array + * @return void + */ + private function _initialize($config) + { + $default_config = array( + 'adapter', + 'memcached' + ); + + foreach ($default_config as $key) + { + if (isset($config[$key])) + { + $param = '_'.$key; + + $this->{$param} = $config[$key]; + } + } + + if (isset($config['backup'])) + { + if (in_array('cache_'.$config['backup'], $this->valid_drivers)) + { + $this->_backup_driver = $config['backup']; + } + } + } + + // ------------------------------------------------------------------------ + + /** + * Is the requested driver supported in this environment? + * + * @param string The driver to test. + * @return array + */ + public function is_supported($driver) + { + static $support = array(); + + if ( ! isset($support[$driver])) + { + $support[$driver] = $this->{$driver}->is_supported(); + } + + return $support[$driver]; + } + + // ------------------------------------------------------------------------ + + /** + * __get() + * + * @param child + * @return object + */ + public function __get($child) + { + $obj = parent::__get($child); + + if ( ! $this->is_supported($child)) + { + $this->_adapter = $this->_backup_driver; + } + + return $obj; + } + + // ------------------------------------------------------------------------ +} +// End Class + +/* End of file Cache.php */ +/* Location: ./system/libraries/Cache/Cache.php */
\ No newline at end of file diff --git a/system/libraries/Cache/drivers/Cache_apc.php b/system/libraries/Cache/drivers/Cache_apc.php new file mode 100755 index 000000000..e82e8e1f5 --- /dev/null +++ b/system/libraries/Cache/drivers/Cache_apc.php @@ -0,0 +1,151 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2006 - 2011 EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 2.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter APC Caching Class + * + * @package CodeIgniter + * @subpackage Libraries + * @category Core + * @author ExpressionEngine Dev Team + * @link + */ + +class Cache_apc extends CI_Driver { + + /** + * Get + * + * Look for a value in the cache. If it exists, return the data + * if not, return FALSE + * + * @param string + * @return mixed value that is stored/FALSE on failure + */ + public function get($id) + { + $data = apc_fetch($id); + + return (is_array($data)) ? $data[0] : FALSE; + } + + // ------------------------------------------------------------------------ + + /** + * Cache Save + * + * @param string Unique Key + * @param mixed Data to store + * @param int Length of time (in seconds) to cache the data + * + * @return boolean true on success/false on failure + */ + public function save($id, $data, $ttl = 60) + { + return apc_store($id, array($data, time(), $ttl), $ttl); + } + + // ------------------------------------------------------------------------ + + /** + * Delete from Cache + * + * @param mixed unique identifier of the item in the cache + * @param boolean true on success/false on failure + */ + public function delete($id) + { + return apc_delete($id); + } + + // ------------------------------------------------------------------------ + + /** + * Clean the cache + * + * @return boolean false on failure/true on success + */ + public function clean() + { + return apc_clear_cache('user'); + } + + // ------------------------------------------------------------------------ + + /** + * Cache Info + * + * @param string user/filehits + * @return mixed array on success, false on failure + */ + public function cache_info($type = NULL) + { + return apc_cache_info($type); + } + + // ------------------------------------------------------------------------ + + /** + * Get Cache Metadata + * + * @param mixed key to get cache metadata on + * @return mixed array on success/false on failure + */ + public function get_metadata($id) + { + $stored = apc_fetch($id); + + if (count($stored) !== 3) + { + return FALSE; + } + + list($value, $time, $ttl) = $stored; + + return array( + 'expire' => $time + $ttl, + 'mtime' => $time, + 'data' => $data + ); + } + + // ------------------------------------------------------------------------ + + /** + * is_supported() + * + * Check to see if APC is available on this system, bail if it isn't. + */ + public function is_supported() + { + if ( ! extension_loaded('apc') OR ! function_exists('apc_store')) + { + log_message('error', 'The APC PHP extension must be loaded to use APC Cache.'); + return FALSE; + } + + return TRUE; + } + + // ------------------------------------------------------------------------ + + +} +// End Class + +/* End of file Cache_apc.php */ +/* Location: ./system/libraries/Cache/drivers/Cache_apc.php */
\ No newline at end of file diff --git a/system/libraries/Cache/drivers/Cache_dummy.php b/system/libraries/Cache/drivers/Cache_dummy.php new file mode 100755 index 000000000..74f689241 --- /dev/null +++ b/system/libraries/Cache/drivers/Cache_dummy.php @@ -0,0 +1,129 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 4.3.2 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2006 - 2011 EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 2.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter Dummy Caching Class + * + * @package CodeIgniter + * @subpackage Libraries + * @category Core + * @author ExpressionEngine Dev Team + * @link + */ + +class Cache_dummy extends CI_Driver { + + /** + * Get + * + * Since this is the dummy class, it's always going to return FALSE. + * + * @param string + * @return Boolean FALSE + */ + public function get($id) + { + return FALSE; + } + + // ------------------------------------------------------------------------ + + /** + * Cache Save + * + * @param string Unique Key + * @param mixed Data to store + * @param int Length of time (in seconds) to cache the data + * + * @return boolean TRUE, Simulating success + */ + public function save($id, $data, $ttl = 60) + { + return TRUE; + } + + // ------------------------------------------------------------------------ + + /** + * Delete from Cache + * + * @param mixed unique identifier of the item in the cache + * @param boolean TRUE, simulating success + */ + public function delete($id) + { + return TRUE; + } + + // ------------------------------------------------------------------------ + + /** + * Clean the cache + * + * @return boolean TRUE, simulating success + */ + public function clean() + { + return TRUE; + } + + // ------------------------------------------------------------------------ + + /** + * Cache Info + * + * @param string user/filehits + * @return boolean FALSE + */ + public function cache_info($type = NULL) + { + return FALSE; + } + + // ------------------------------------------------------------------------ + + /** + * Get Cache Metadata + * + * @param mixed key to get cache metadata on + * @return boolean FALSE + */ + public function get_metadata($id) + { + return FALSE; + } + + // ------------------------------------------------------------------------ + + /** + * Is this caching driver supported on the system? + * Of course this one is. + * + * @return TRUE; + */ + public function is_supported() + { + return TRUE; + } + + // ------------------------------------------------------------------------ + +} +// End Class + +/* End of file Cache_apc.php */ +/* Location: ./system/libraries/Cache/drivers/Cache_apc.php */
\ No newline at end of file diff --git a/system/libraries/Cache/drivers/Cache_file.php b/system/libraries/Cache/drivers/Cache_file.php new file mode 100755 index 000000000..3ed357f2f --- /dev/null +++ b/system/libraries/Cache/drivers/Cache_file.php @@ -0,0 +1,196 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 4.3.2 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2006 - 2011 EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 2.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter Memcached Caching Class + * + * @package CodeIgniter + * @subpackage Libraries + * @category Core + * @author ExpressionEngine Dev Team + * @link + */ + +class Cache_file extends CI_Driver { + + protected $_cache_path; + + /** + * Constructor + */ + public function __construct() + { + $CI =& get_instance(); + $CI->load->helper('file'); + + $path = $CI->config->item('cache_path'); + + $this->_cache_path = ($path == '') ? BASEPATH.'cache/' : $path; + } + + // ------------------------------------------------------------------------ + + /** + * Fetch from cache + * + * @param mixed unique key id + * @return mixed data on success/false on failure + */ + public function get($id) + { + if ( ! file_exists($this->_cache_path.$id)) + { + return FALSE; + } + + $data = read_file($this->_cache_path.$id); + $data = unserialize($data); + + if (time() > $data['time'] + $data['ttl']) + { + unlink($this->_cache_path.$id); + return FALSE; + } + + return $data['data']; + } + + // ------------------------------------------------------------------------ + + /** + * Save into cache + * + * @param string unique key + * @param mixed data to store + * @param int length of time (in seconds) the cache is valid + * - Default is 60 seconds + * @return boolean true on success/false on failure + */ + public function save($id, $data, $ttl = 60) + { + $contents = array( + 'time' => time(), + 'ttl' => $ttl, + 'data' => $data + ); + + if (write_file($this->_cache_path.$id, serialize($contents))) + { + @chmod($this->_cache_path.$id, 0777); + return TRUE; + } + + return FALSE; + } + + // ------------------------------------------------------------------------ + + /** + * Delete from Cache + * + * @param mixed unique identifier of item in cache + * @return boolean true on success/false on failure + */ + public function delete($id) + { + return unlink($this->_cache_path.$id); + } + + // ------------------------------------------------------------------------ + + /** + * Clean the Cache + * + * @return boolean false on failure/true on success + */ + public function clean() + { + return delete_files($this->_cache_path); + } + + // ------------------------------------------------------------------------ + + /** + * Cache Info + * + * Not supported by file-based caching + * + * @param string user/filehits + * @return mixed FALSE + */ + public function cache_info($type = NULL) + { + return get_dir_file_info($this->_cache_path); + } + + // ------------------------------------------------------------------------ + + /** + * Get Cache Metadata + * + * @param mixed key to get cache metadata on + * @return mixed FALSE on failure, array on success. + */ + public function get_metadata($id) + { + if ( ! file_exists($this->_cache_path.$id)) + { + return FALSE; + } + + $data = read_file($this->_cache_path.$id); + $data = unserialize($data); + + if (is_array($data)) + { + $data = $data['data']; + $mtime = filemtime($this->_cache_path.$id); + + if ( ! isset($data['ttl'])) + { + return FALSE; + } + + return array( + 'expire' => $mtime + $data['ttl'], + 'mtime' => $mtime + ); + } + + return FALSE; + } + + // ------------------------------------------------------------------------ + + /** + * Is supported + * + * In the file driver, check to see that the cache directory is indeed writable + * + * @return boolean + */ + public function is_supported() + { + return is_really_writable($this->_cache_path); + } + + // ------------------------------------------------------------------------ +} +// End Class + +/* End of file Cache_file.php */ +/* Location: ./system/libraries/Cache/drivers/Cache_file.php */
\ No newline at end of file diff --git a/system/libraries/Cache/drivers/Cache_memcached.php b/system/libraries/Cache/drivers/Cache_memcached.php new file mode 100755 index 000000000..a7efdc5de --- /dev/null +++ b/system/libraries/Cache/drivers/Cache_memcached.php @@ -0,0 +1,209 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 4.3.2 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2006 - 2011 EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 2.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter Memcached Caching Class + * + * @package CodeIgniter + * @subpackage Libraries + * @category Core + * @author ExpressionEngine Dev Team + * @link + */ + +class Cache_memcached extends CI_Driver { + + private $_memcached; // Holds the memcached object + + protected $_memcache_conf = array( + 'default' => array( + 'default_host' => '127.0.0.1', + 'default_port' => 11211, + 'default_weight' => 1 + ) + ); + + // ------------------------------------------------------------------------ + + /** + * Fetch from cache + * + * @param mixed unique key id + * @return mixed data on success/false on failure + */ + public function get($id) + { + $data = $this->_memcached->get($id); + + return (is_array($data)) ? $data[0] : FALSE; + } + + // ------------------------------------------------------------------------ + + /** + * Save + * + * @param string unique identifier + * @param mixed data being cached + * @param int time to live + * @return boolean true on success, false on failure + */ + public function save($id, $data, $ttl = 60) + { + return $this->_memcached->add($id, array($data, time(), $ttl), $ttl); + } + + // ------------------------------------------------------------------------ + + /** + * Delete from Cache + * + * @param mixed key to be deleted. + * @return boolean true on success, false on failure + */ + public function delete($id) + { + return $this->_memcached->delete($id); + } + + // ------------------------------------------------------------------------ + + /** + * Clean the Cache + * + * @return boolean false on failure/true on success + */ + public function clean() + { + return $this->_memcached->flush(); + } + + // ------------------------------------------------------------------------ + + /** + * Cache Info + * + * @param null type not supported in memcached + * @return mixed array on success, false on failure + */ + public function cache_info($type = NULL) + { + return $this->_memcached->getStats(); + } + + // ------------------------------------------------------------------------ + + /** + * Get Cache Metadata + * + * @param mixed key to get cache metadata on + * @return mixed FALSE on failure, array on success. + */ + public function get_metadata($id) + { + $stored = $this->_memcached->get($id); + + if (count($stored) !== 3) + { + return FALSE; + } + + list($value, $time, $ttl) = $stored; + + return array( + 'expire' => $time + $ttl, + 'mtime' => $time, + 'data' => $data + ); + } + + // ------------------------------------------------------------------------ + + /** + * Setup memcached. + */ + private function _setup_memcached() + { + // Try to load memcached server info from the config file. + $CI =& get_instance(); + if ($CI->config->load('memcached', TRUE, TRUE)) + { + if (is_array($CI->config->config['memcached'])) + { + $this->_memcache_conf = NULL; + + foreach ($CI->config->config['memcached'] as $name => $conf) + { + $this->_memcache_conf[$name] = $conf; + } + } + } + + $this->_memcached = new Memcached(); + + foreach ($this->_memcache_conf as $name => $cache_server) + { + if ( ! array_key_exists('hostname', $cache_server)) + { + $cache_server['hostname'] = $this->_default_options['default_host']; + } + + if ( ! array_key_exists('port', $cache_server)) + { + $cache_server['port'] = $this->_default_options['default_port']; + } + + if ( ! array_key_exists('weight', $cache_server)) + { + $cache_server['weight'] = $this->_default_options['default_weight']; + } + + $this->_memcached->addServer( + $cache_server['hostname'], $cache_server['port'], $cache_server['weight'] + ); + } + } + + // ------------------------------------------------------------------------ + + + /** + * Is supported + * + * Returns FALSE if memcached is not supported on the system. + * If it is, we setup the memcached object & return TRUE + */ + public function is_supported() + { + if ( ! extension_loaded('memcached')) + { + log_message('error', 'The Memcached Extension must be loaded to use Memcached Cache.'); + + return FALSE; + } + + $this->_setup_memcached(); + return TRUE; + } + + // ------------------------------------------------------------------------ + +} +// End Class + +/* End of file Cache_memcached.php */ +/* Location: ./system/libraries/Cache/drivers/Cache_memcached.php */
\ No newline at end of file diff --git a/system/libraries/Calendar.php b/system/libraries/Calendar.php index 275bf2451..72d228e73 100644..100755 --- a/system/libraries/Calendar.php +++ b/system/libraries/Calendar.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -33,7 +33,7 @@ class CI_Calendar { var $local_time; var $template = ''; var $start_day = 'sunday'; - var $month_type = 'long'; + var $month_type = 'long'; var $day_type = 'abr'; var $show_next_prev = FALSE; var $next_prev_url = ''; @@ -42,30 +42,28 @@ class CI_Calendar { * Constructor * * Loads the calendar language file and sets the default time reference - * - * @access public */ - function CI_Calendar($config = array()) - { + public function __construct($config = array()) + { $this->CI =& get_instance(); - + if ( ! in_array('calendar_lang'.EXT, $this->CI->lang->is_loaded, TRUE)) { $this->CI->lang->load('calendar'); } $this->local_time = time(); - + if (count($config) > 0) { $this->initialize($config); } - + log_message('debug', "Calendar Class Initialized"); } - + // -------------------------------------------------------------------- - + /** * Initialize the user preferences * @@ -74,7 +72,7 @@ class CI_Calendar { * @access public * @param array config preferences * @return void - */ + */ function initialize($config = array()) { foreach ($config as $key => $val) @@ -85,7 +83,7 @@ class CI_Calendar { } } } - + // -------------------------------------------------------------------- /** @@ -102,66 +100,66 @@ class CI_Calendar { // Set and validate the supplied month/year if ($year == '') $year = date("Y", $this->local_time); - + if ($month == '') $month = date("m", $this->local_time); - - if (strlen($year) == 1) + + if (strlen($year) == 1) $year = '200'.$year; - - if (strlen($year) == 2) + + if (strlen($year) == 2) $year = '20'.$year; - if (strlen($month) == 1) + if (strlen($month) == 1) $month = '0'.$month; - + $adjusted_date = $this->adjust_date($month, $year); - + $month = $adjusted_date['month']; $year = $adjusted_date['year']; - + // Determine the total days in the month $total_days = $this->get_total_days($month, $year); - + // Set the starting day of the week $start_days = array('sunday' => 0, 'monday' => 1, 'tuesday' => 2, 'wednesday' => 3, 'thursday' => 4, 'friday' => 5, 'saturday' => 6); $start_day = ( ! isset($start_days[$this->start_day])) ? 0 : $start_days[$this->start_day]; - + // Set the starting day number $local_date = mktime(12, 0, 0, $month, 1, $year); $date = getdate($local_date); $day = $start_day + 1 - $date["wday"]; - + while ($day > 1) { $day -= 7; } - + // Set the current month/year/day // We use this to determine the "today" date $cur_year = date("Y", $this->local_time); $cur_month = date("m", $this->local_time); $cur_day = date("j", $this->local_time); - + $is_current_month = ($cur_year == $year AND $cur_month == $month) ? TRUE : FALSE; - + // Generate the template data array $this->parse_template(); - - // Begin building the calendar output + + // Begin building the calendar output $out = $this->temp['table_open']; - $out .= "\n"; + $out .= "\n"; - $out .= "\n"; + $out .= "\n"; $out .= $this->temp['heading_row_start']; $out .= "\n"; - + // "previous" month link if ($this->show_next_prev == TRUE) { // Add a trailing slash to the URL if needed $this->next_prev_url = preg_replace("/(.+?)\/*$/", "\\1/", $this->next_prev_url); - + $adjusted_date = $this->adjust_date($month - 1, $year); $out .= str_replace('{previous_url}', $this->next_prev_url.$adjusted_date['year'].'/'.$adjusted_date['month'], $this->temp['heading_previous_cell']); $out .= "\n"; @@ -169,26 +167,26 @@ class CI_Calendar { // Heading containing the month/year $colspan = ($this->show_next_prev == TRUE) ? 5 : 7; - + $this->temp['heading_title_cell'] = str_replace('{colspan}', $colspan, $this->temp['heading_title_cell']); $this->temp['heading_title_cell'] = str_replace('{heading}', $this->get_month_name($month)." ".$year, $this->temp['heading_title_cell']); - + $out .= $this->temp['heading_title_cell']; $out .= "\n"; // "next" month link if ($this->show_next_prev == TRUE) - { + { $adjusted_date = $this->adjust_date($month + 1, $year); $out .= str_replace('{next_url}', $this->next_prev_url.$adjusted_date['year'].'/'.$adjusted_date['month'], $this->temp['heading_next_cell']); } - $out .= "\n"; + $out .= "\n"; $out .= $this->temp['heading_row_end']; $out .= "\n"; // Write the cells containing the days of the week - $out .= "\n"; + $out .= "\n"; $out .= $this->temp['week_row_start']; $out .= "\n"; @@ -213,11 +211,11 @@ class CI_Calendar { for ($i = 0; $i < 7; $i++) { $out .= ($is_current_month == TRUE AND $day == $cur_day) ? $this->temp['cal_cell_start_today'] : $this->temp['cal_cell_start']; - + if ($day > 0 AND $day <= $total_days) - { + { if (isset($data[$day])) - { + { // Cells with content $temp = ($is_current_month == TRUE AND $day == $cur_day) ? $this->temp['cal_cell_content_today'] : $this->temp['cal_cell_content']; $out .= str_replace('{day}', $day, str_replace('{content}', $data[$day], $temp)); @@ -234,22 +232,22 @@ class CI_Calendar { // Blank cells $out .= $this->temp['cal_cell_blank']; } - - $out .= ($is_current_month == TRUE AND $day == $cur_day) ? $this->temp['cal_cell_end_today'] : $this->temp['cal_cell_end']; + + $out .= ($is_current_month == TRUE AND $day == $cur_day) ? $this->temp['cal_cell_end_today'] : $this->temp['cal_cell_end']; $day++; } - - $out .= "\n"; + + $out .= "\n"; $out .= $this->temp['cal_row_end']; - $out .= "\n"; + $out .= "\n"; } - $out .= "\n"; + $out .= "\n"; $out .= $this->temp['table_close']; return $out; } - + // -------------------------------------------------------------------- /** @@ -272,9 +270,9 @@ class CI_Calendar { { $month_names = array('01' => 'cal_january', '02' => 'cal_february', '03' => 'cal_march', '04' => 'cal_april', '05' => 'cal_mayl', '06' => 'cal_june', '07' => 'cal_july', '08' => 'cal_august', '09' => 'cal_september', '10' => 'cal_october', '11' => 'cal_november', '12' => 'cal_december'); } - + $month = $month_names[$month]; - + if ($this->CI->lang->line($month) === FALSE) { return ucfirst(str_replace('cal_', '', $month)); @@ -282,7 +280,7 @@ class CI_Calendar { return $this->CI->lang->line($month); } - + // -------------------------------------------------------------------- /** @@ -299,7 +297,7 @@ class CI_Calendar { { if ($day_type != '') $this->day_type = $day_type; - + if ($this->day_type == 'long') { $day_names = array('sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'); @@ -312,16 +310,16 @@ class CI_Calendar { { $day_names = array('su', 'mo', 'tu', 'we', 'th', 'fr', 'sa'); } - + $days = array(); foreach ($day_names as $val) - { + { $days[] = ($this->CI->lang->line('cal_'.$val) === FALSE) ? ucfirst($val) : $this->CI->lang->line('cal_'.$val); } - + return $days; } - + // -------------------------------------------------------------------- /** @@ -362,7 +360,7 @@ class CI_Calendar { return $date; } - + // -------------------------------------------------------------------- /** @@ -393,7 +391,7 @@ class CI_Calendar { return $days_in_month[$month - 1]; } - + // -------------------------------------------------------------------- /** @@ -407,17 +405,17 @@ class CI_Calendar { function default_template() { return array ( - 'table_open' => '<table border="0" cellpadding="4" cellspacing="0">', - 'heading_row_start' => '<tr>', + 'table_open' => '<table border="0" cellpadding="4" cellspacing="0">', + 'heading_row_start' => '<tr>', 'heading_previous_cell' => '<th><a href="{previous_url}"><<</a></th>', - 'heading_title_cell' => '<th colspan="{colspan}">{heading}</th>', - 'heading_next_cell' => '<th><a href="{next_url}">>></a></th>', - 'heading_row_end' => '</tr>', - 'week_row_start' => '<tr>', - 'week_day_cell' => '<td>{week_day}</td>', - 'week_row_end' => '</tr>', - 'cal_row_start' => '<tr>', - 'cal_cell_start' => '<td>', + 'heading_title_cell' => '<th colspan="{colspan}">{heading}</th>', + 'heading_next_cell' => '<th><a href="{next_url}">>></a></th>', + 'heading_row_end' => '</tr>', + 'week_row_start' => '<tr>', + 'week_day_cell' => '<td>{week_day}</td>', + 'week_row_end' => '</tr>', + 'cal_row_start' => '<tr>', + 'cal_cell_start' => '<td>', 'cal_cell_start_today' => '<td>', 'cal_cell_content' => '<a href="{content}">{day}</a>', 'cal_cell_content_today' => '<a href="{content}"><strong>{day}</strong></a>', @@ -428,9 +426,9 @@ class CI_Calendar { 'cal_cell_end_today' => '</td>', 'cal_row_end' => '</tr>', 'table_close' => '</table>' - ); + ); } - + // -------------------------------------------------------------------- /** @@ -442,17 +440,17 @@ class CI_Calendar { * @access public * @return void */ - function parse_template() - { + function parse_template() + { $this->temp = $this->default_template(); - - if ($this->template == '') - { - return; - } - + + if ($this->template == '') + { + return; + } + $today = array('cal_cell_start_today', 'cal_cell_content_today', 'cal_cell_no_content_today', 'cal_cell_end_today'); - + foreach (array('table_open', 'table_close', 'heading_row_start', 'heading_previous_cell', 'heading_title_cell', 'heading_next_cell', 'heading_row_end', 'week_row_start', 'week_day_cell', 'week_row_end', 'cal_row_start', 'cal_cell_start', 'cal_cell_content', 'cal_cell_no_content', 'cal_cell_blank', 'cal_cell_end', 'cal_row_end', 'cal_cell_start_today', 'cal_cell_content_today', 'cal_cell_no_content_today', 'cal_cell_end_today') as $val) { if (preg_match("/\{".$val."\}(.*?)\{\/".$val."\}/si", $this->template, $match)) @@ -466,8 +464,8 @@ class CI_Calendar { $this->temp[$val] = $this->temp[str_replace('_today', '', $val)]; } } - } - } + } + } } diff --git a/system/libraries/Cart.php b/system/libraries/Cart.php index 643d2eca4..7f65b48b9 100644..100755 --- a/system/libraries/Cart.php +++ b/system/libraries/Cart.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2006 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2006 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -29,7 +29,7 @@ class CI_Cart { // These are the regular expression rules that we use to validate the product ID and product name var $product_id_rules = '\.a-z0-9_-'; // alpha-numeric, dashes, underscores, or periods var $product_name_rules = '\.\:\-_ a-z0-9'; // alpha-numeric, dashes, underscores, colons or periods - + // Private variables. Do not change! var $CI; var $_cart_contents = array(); @@ -39,12 +39,12 @@ class CI_Cart { * Shopping Class Constructor * * The constructor loads the Session class, used to store the shopping cart contents. - */ - function CI_Cart($params = array()) - { + */ + public function __construct($params = array()) + { // Set the super object to a local variable for use later $this->CI =& get_instance(); - + // Are any config settings being passed manually? If so, set them $config = array(); if (count($params) > 0) @@ -54,10 +54,10 @@ class CI_Cart { $config[$key] = $val; } } - + // Load the Sessions class $this->CI->load->library('session', $config); - + // Grab the shopping cart array from the session table, if it exists if ($this->CI->session->userdata('cart_contents') !== FALSE) { @@ -66,15 +66,15 @@ class CI_Cart { else { // No cart exists so we'll set some base values - $this->_cart_contents['cart_total'] = 0; - $this->_cart_contents['total_items'] = 0; + $this->_cart_contents['cart_total'] = 0; + $this->_cart_contents['total_items'] = 0; } - + log_message('debug', "Cart Class Initialized"); } // -------------------------------------------------------------------- - + /** * Insert items into the cart and save it to the session table * @@ -90,15 +90,15 @@ class CI_Cart { log_message('error', 'The insert method must be passed an array containing data.'); return FALSE; } - - // You can either insert a single product using a one-dimensional array, + + // You can either insert a single product using a one-dimensional array, // or multiple products using a multi-dimensional one. The way we // determine the array type is by looking for a required array key named "id" // at the top level. If it's not found, we will assume it's a multi-dimensional array. - - $save_cart = FALSE; + + $save_cart = FALSE; if (isset($items['id'])) - { + { if ($this->_insert($items) == TRUE) { $save_cart = TRUE; @@ -114,7 +114,7 @@ class CI_Cart { { $save_cart = TRUE; } - } + } } } @@ -129,7 +129,7 @@ class CI_Cart { } // -------------------------------------------------------------------- - + /** * Insert * @@ -145,9 +145,9 @@ class CI_Cart { log_message('error', 'The insert method must be passed an array containing data.'); return FALSE; } - + // -------------------------------------------------------------------- - + // Does the $items array contain an id, quantity, price, and name? These are required if ( ! isset($items['id']) OR ! isset($items['qty']) OR ! isset($items['price']) OR ! isset($items['name'])) { @@ -156,7 +156,7 @@ class CI_Cart { } // -------------------------------------------------------------------- - + // Prep the quantity. It can only be a number. Duh... $items['qty'] = trim(preg_replace('/([^0-9])/i', '', $items['qty'])); // Trim any leading zeros @@ -167,9 +167,9 @@ class CI_Cart { { return FALSE; } - + // -------------------------------------------------------------------- - + // Validate the product ID. It can only be alpha-numeric, dashes, underscores or periods // Not totally sure we should impose this rule, but it seems prudent to standardize IDs. // Note: These can be user-specified by setting the $this->product_id_rules variable. @@ -180,7 +180,7 @@ class CI_Cart { } // -------------------------------------------------------------------- - + // Validate the product name. It can only be alpha-numeric, dashes, underscores, colons or periods. // Note: These can be user-specified by setting the $this->product_name_rules variable. if ( ! preg_match("/^[".$this->product_name_rules."]+$/i", $items['name'])) @@ -195,7 +195,7 @@ class CI_Cart { $items['price'] = trim(preg_replace('/([^0-9\.])/i', '', $items['price'])); // Trim any leading zeros $items['price'] = trim(preg_replace('/(^[0]+)/i', '', $items['price'])); - + // Is the price a valid number? if ( ! is_numeric($items['price'])) { @@ -204,13 +204,13 @@ class CI_Cart { } // -------------------------------------------------------------------- - + // We now need to create a unique identifier for the item being inserted into the cart. - // Every time something is added to the cart it is stored in the master cart array. - // Each row in the cart array, however, must have a unique index that identifies not only - // a particular product, but makes it possible to store identical products with different options. - // For example, what if someone buys two identical t-shirts (same product ID), but in - // different sizes? The product ID (and other attributes, like the name) will be identical for + // Every time something is added to the cart it is stored in the master cart array. + // Each row in the cart array, however, must have a unique index that identifies not only + // a particular product, but makes it possible to store identical products with different options. + // For example, what if someone buys two identical t-shirts (same product ID), but in + // different sizes? The product ID (and other attributes, like the name) will be identical for // both sizes because it's the same shirt. The only difference will be the size. // Internally, we need to treat identical submissions, but with different options, as a unique product. // Our solution is to convert the options array to a string and MD5 it along with the product ID. @@ -225,19 +225,19 @@ class CI_Cart { // Technically, we don't need to MD5 the ID in this case, but it makes // sense to standardize the format of array indexes for both conditions $rowid = md5($items['id']); - } + } // -------------------------------------------------------------------- // Now that we have our unique "row ID", we'll add our cart items to the master array - + // let's unset this first, just to make sure our index contains only the data from this submission - unset($this->_cart_contents[$rowid]); - + unset($this->_cart_contents[$rowid]); + // Create a new index with our new row ID $this->_cart_contents[$rowid]['rowid'] = $rowid; - - // And add the new items to the cart array + + // And add the new items to the cart array foreach ($items as $key => $val) { $this->_cart_contents[$rowid][$key] = $val; @@ -248,11 +248,11 @@ class CI_Cart { } // -------------------------------------------------------------------- - + /** * Update the cart * - * This function permits the quantity of a given item to be changed. + * This function permits the quantity of a given item to be changed. * Typically it is called from the "view cart" page if a user makes * changes to the quantity before checkout. That array must contain the * product ID and quantity for each item. @@ -269,8 +269,8 @@ class CI_Cart { { return FALSE; } - - // You can either update a single product using a one-dimensional array, + + // You can either update a single product using a one-dimensional array, // or multiple products using a multi-dimensional one. The way we // determine the array type is by looking for a required array key named "id". // If it's not found we assume it's a multi-dimensional array @@ -292,7 +292,7 @@ class CI_Cart { { $save_cart = TRUE; } - } + } } } @@ -307,11 +307,11 @@ class CI_Cart { } // -------------------------------------------------------------------- - + /** * Update the cart * - * This function permits the quantity of a given item to be changed. + * This function permits the quantity of a given item to be changed. * Typically it is called from the "view cart" page if a user makes * changes to the quantity before checkout. That array must contain the * product ID and quantity for each item. @@ -319,7 +319,7 @@ class CI_Cart { * @access private * @param array * @return bool - */ + */ function _update($items = array()) { // Without these array indexes there is nothing we can do @@ -327,7 +327,7 @@ class CI_Cart { { return FALSE; } - + // Prep the quantity $items['qty'] = preg_replace('/([^0-9])/i', '', $items['qty']); @@ -336,7 +336,7 @@ class CI_Cart { { return FALSE; } - + // Is the new quantity different than what is already saved in the cart? // If it's the same there's nothing to do if ($this->_cart_contents[$items['rowid']]['qty'] == $items['qty']) @@ -348,18 +348,18 @@ class CI_Cart { // If the quantity is greater than zero we are updating if ($items['qty'] == 0) { - unset($this->_cart_contents[$items['rowid']]); + unset($this->_cart_contents[$items['rowid']]); } else { $this->_cart_contents[$items['rowid']]['qty'] = $items['qty']; } - + return TRUE; } // -------------------------------------------------------------------- - + /** * Save the cart array to the session DB * @@ -383,20 +383,20 @@ class CI_Cart { } $total += ($val['price'] * $val['qty']); - + // Set the subtotal $this->_cart_contents[$key]['subtotal'] = ($this->_cart_contents[$key]['price'] * $this->_cart_contents[$key]['qty']); } // Set the cart total and total items. - $this->_cart_contents['total_items'] = count($this->_cart_contents); + $this->_cart_contents['total_items'] = count($this->_cart_contents); $this->_cart_contents['cart_total'] = $total; - + // Is our cart empty? If so we delete it from the session if (count($this->_cart_contents) <= 2) { $this->CI->session->unset_userdata('cart_contents'); - + // Nothing more to do... coffee time! return FALSE; } @@ -406,11 +406,11 @@ class CI_Cart { $this->CI->session->set_userdata(array('cart_contents' => $this->_cart_contents)); // Woot! - return TRUE; + return TRUE; } // -------------------------------------------------------------------- - + /** * Cart Total * @@ -423,7 +423,7 @@ class CI_Cart { } // -------------------------------------------------------------------- - + /** * Total Items * @@ -438,7 +438,7 @@ class CI_Cart { } // -------------------------------------------------------------------- - + /** * Cart Contents * @@ -450,16 +450,16 @@ class CI_Cart { function contents() { $cart = $this->_cart_contents; - + // Remove these so they don't create a problem when showing the cart table unset($cart['total_items']); unset($cart['cart_total']); - + return $cart; } // -------------------------------------------------------------------- - + /** * Has options * @@ -475,12 +475,12 @@ class CI_Cart { { return FALSE; } - + return TRUE; } // -------------------------------------------------------------------- - + /** * Product options * @@ -500,7 +500,7 @@ class CI_Cart { } // -------------------------------------------------------------------- - + /** * Format Number * @@ -515,15 +515,15 @@ class CI_Cart { { return ''; } - + // Remove anything that isn't a number or decimal point. $n = trim(preg_replace('/([^0-9\.])/i', '', $n)); - + return number_format($n, 2, '.', ','); } - + // -------------------------------------------------------------------- - + /** * Destroy the cart * @@ -535,9 +535,9 @@ class CI_Cart { function destroy() { unset($this->_cart_contents); - - $this->_cart_contents['cart_total'] = 0; - $this->_cart_contents['total_items'] = 0; + + $this->_cart_contents['cart_total'] = 0; + $this->_cart_contents['total_items'] = 0; $this->CI->session->unset_userdata('cart_contents'); } diff --git a/system/libraries/Controller.php b/system/libraries/Controller.php deleted file mode 100644 index c5637c951..000000000 --- a/system/libraries/Controller.php +++ /dev/null @@ -1,127 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * CodeIgniter Application Controller Class - * - * This class object is the super class that every library in - * CodeIgniter will be assigned to. - * - * @package CodeIgniter - * @subpackage Libraries - * @category Libraries - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/general/controllers.html - */ -class Controller extends CI_Base { - - var $_ci_scaffolding = FALSE; - var $_ci_scaff_table = FALSE; - - /** - * Constructor - * - * Calls the initialize() function - */ - function Controller() - { - parent::CI_Base(); - $this->_ci_initialize(); - log_message('debug', "Controller Class Initialized"); - } - - // -------------------------------------------------------------------- - - /** - * Initialize - * - * Assigns all the bases classes loaded by the front controller to - * variables in this class. Also calls the autoload routine. - * - * @access private - * @return void - */ - function _ci_initialize() - { - // Assign all the class objects that were instantiated by the - // front controller to local class variables so that CI can be - // run as one big super object. - $classes = array( - 'config' => 'Config', - 'input' => 'Input', - 'benchmark' => 'Benchmark', - 'uri' => 'URI', - 'output' => 'Output', - 'lang' => 'Language', - 'router' => 'Router' - ); - - foreach ($classes as $var => $class) - { - $this->$var =& load_class($class); - } - - // In PHP 5 the Loader class is run as a discreet - // class. In PHP 4 it extends the Controller - if (floor(phpversion()) >= 5) - { - $this->load =& load_class('Loader'); - $this->load->_ci_autoloader(); - } - else - { - $this->_ci_autoloader(); - - // sync up the objects since PHP4 was working from a copy - foreach (array_keys(get_object_vars($this)) as $attribute) - { - if (is_object($this->$attribute)) - { - $this->load->$attribute =& $this->$attribute; - } - } - } - } - - // -------------------------------------------------------------------- - - /** - * Run Scaffolding - * - * @access private - * @return void - */ - function _ci_scaffolding() - { - if ($this->_ci_scaffolding === FALSE OR $this->_ci_scaff_table === FALSE) - { - show_404('Scaffolding unavailable'); - } - - $method = ( ! in_array($this->uri->segment(3), array('add', 'insert', 'edit', 'update', 'view', 'delete', 'do_delete'), TRUE)) ? 'view' : $this->uri->segment(3); - - require_once(BASEPATH.'scaffolding/Scaffolding'.EXT); - $scaff = new Scaffolding($this->_ci_scaff_table); - $scaff->$method(); - } - - -} -// END _Controller class - -/* End of file Controller.php */ -/* Location: ./system/libraries/Controller.php */
\ No newline at end of file diff --git a/system/libraries/Driver.php b/system/libraries/Driver.php new file mode 100755 index 000000000..15fc3da26 --- /dev/null +++ b/system/libraries/Driver.php @@ -0,0 +1,229 @@ +<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author EllisLab Dev Team + * @copyright Copyright (c) 2006 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * CodeIgniter Driver Library Class + * + * This class enables you to create "Driver" libraries that add runtime ability + * to extend the capabilities of a class via additional driver objects + * + * @package CodeIgniter + * @subpackage Libraries + * @category Libraries + * @author EllisLab Dev Team + * @link + */ +class CI_Driver_Library { + + protected $valid_drivers = array(); + protected static $lib_name; + + // The first time a child is used it won't exist, so we instantiate it + // subsequents calls will go straight to the proper child. + function __get($child) + { + if (! isset($this->lib_name)) + { + $this->lib_name = get_class($this); + } + + // The class will be prefixed with the parent lib + $child_class = $this->lib_name.'_'.$child; + + if (in_array(strtolower($child_class), array_map('strtolower', $this->valid_drivers))) + { + // check and see if the driver is in a separate file + if ( ! class_exists($child_class)) + { + // check application path first + foreach (array(APPPATH, BASEPATH) as $path) + { + // and check for case sensitivity of both the parent and child libs + foreach (array(ucfirst($this->lib_name), strtolower($this->lib_name)) as $lib) + { + // loves me some nesting! + foreach (array(ucfirst($child_class), strtolower($child_class)) as $class) + { + $filepath = $path.'libraries/'.$this->lib_name.'/drivers/'.$child_class.EXT; + + if (file_exists($filepath)) + { + include_once $filepath; + break; + } + } + } + } + + // it's a valid driver, but the file simply can't be found + if ( ! class_exists($child_class)) + { + log_message('error', "Unable to load the requested driver: ".$child_class); + show_error("Unable to load the requested driver: ".$child_class); + } + } + + $obj = new $child_class; + $obj->decorate($this); + $this->$child = $obj; + return $this->$child; + } + + // The requested driver isn't valid! + log_message('error', "Invalid driver requested: ".$child_class); + show_error("Invalid driver requested: ".$child_class); + } + + // -------------------------------------------------------------------- + +} +// END CI_Driver_Library CLASS + + +/** + * CodeIgniter Driver Class + * + * This class enables you to create drivers for a Library based on the Driver Library. + * It handles the drivers' access to the parent library + * + * @package CodeIgniter + * @subpackage Libraries + * @category Libraries + * @author EllisLab Dev Team + * @link + */ +class CI_Driver { + protected $parent; + + private $methods = array(); + private $properties = array(); + + private static $reflections = array(); + + /** + * Decorate + * + * Decorates the child with the parent driver lib's methods and properties + * + * @param object + * @return void + */ + public function decorate($parent) + { + $this->parent = $parent; + + // Lock down attributes to what is defined in the class + // and speed up references in magic methods + + $class_name = get_class($parent); + + if ( ! isset(self::$reflections[$class_name])) + { + $r = new ReflectionObject($parent); + + foreach ($r->getMethods() as $method) + { + if ($method->isPublic()) + { + $this->methods[] = $method->getName(); + } + } + + foreach($r->getProperties() as $prop) + { + if ($prop->isPublic()) + { + $this->properties[] = $prop->getName(); + } + } + + self::$reflections[$class_name] = array($this->methods, $this->properties); + } + else + { + list($this->methods, $this->properties) = self::$reflections[$class_name]; + } + } + + // -------------------------------------------------------------------- + + /** + * __call magic method + * + * Handles access to the parent driver library's methods + * + * @access public + * @param string + * @param array + * @return mixed + */ + public function __call($method, $args = array()) + { + if (in_array($method, $this->methods)) + { + return call_user_func_array(array($this->parent, $method), $args); + } + + $trace = debug_backtrace(); + _exception_handler(E_ERROR, "No such method '{$method}'", $trace[1]['file'], $trace[1]['line']); + exit; + } + + // -------------------------------------------------------------------- + + /** + * __get magic method + * + * Handles reading of the parent driver library's properties + * + * @param string + * @return mixed + */ + public function __get($var) + { + if (in_array($var, $this->properties)) + { + return $this->parent->$var; + } + } + + // -------------------------------------------------------------------- + + /** + * __set magic method + * + * Handles writing to the parent driver library's properties + * + * @param string + * @param array + * @return mixed + */ + public function __set($var, $val) + { + if (in_array($var, $this->properties)) + { + $this->parent->$var = $val; + } + } + + // -------------------------------------------------------------------- + +} +// END CI_Driver CLASS + +/* End of file Driver.php */ +/* Location: ./system/libraries/Driver.php */
\ No newline at end of file diff --git a/system/libraries/Email.php b/system/libraries/Email.php index d0f2ea9a5..e5af38f45 100644..100755 --- a/system/libraries/Email.php +++ b/system/libraries/Email.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -82,7 +82,7 @@ class CI_Email { * * The constructor can be passed an array of config values */ - function CI_Email($config = array()) + public function __construct($config = array()) { if (count($config) > 0) { @@ -106,9 +106,8 @@ class CI_Email { * @param array * @return void */ - function initialize($config = array()) + public function initialize($config = array()) { - $this->clear(); foreach ($config as $key => $val) { if (isset($this->$key)) @@ -125,11 +124,14 @@ class CI_Email { } } } + $this->clear(); $this->_smtp_auth = ($this->smtp_user == '' AND $this->smtp_pass == '') ? FALSE : TRUE; $this->_safe_mode = ((boolean)@ini_get("safe_mode") === FALSE) ? FALSE : TRUE; + + return $this; } - + // -------------------------------------------------------------------- /** @@ -138,7 +140,7 @@ class CI_Email { * @access public * @return void */ - function clear($clear_attachments = FALSE) + public function clear($clear_attachments = FALSE) { $this->_subject = ""; $this->_body = ""; @@ -146,6 +148,8 @@ class CI_Email { $this->_header_str = ""; $this->_replyto_flag = FALSE; $this->_recipients = array(); + $this->_cc_array = array(); + $this->_bcc_array = array(); $this->_headers = array(); $this->_debug_msg = array(); @@ -158,8 +162,10 @@ class CI_Email { $this->_attach_type = array(); $this->_attach_disp = array(); } + + return $this; } - + // -------------------------------------------------------------------- /** @@ -170,7 +176,7 @@ class CI_Email { * @param string * @return void */ - function from($from, $name = '') + public function from($from, $name = '') { if (preg_match( '/\<(.*)\>/', $from, $match)) { @@ -199,8 +205,10 @@ class CI_Email { $this->_set_header('From', $name.' <'.$from.'>'); $this->_set_header('Return-Path', '<'.$from.'>'); + + return $this; } - + // -------------------------------------------------------------------- /** @@ -211,7 +219,7 @@ class CI_Email { * @param string * @return void */ - function reply_to($replyto, $name = '') + public function reply_to($replyto, $name = '') { if (preg_match( '/\<(.*)\>/', $replyto, $match)) { @@ -235,8 +243,10 @@ class CI_Email { $this->_set_header('Reply-To', $name.' <'.$replyto.'>'); $this->_replyto_flag = TRUE; + + return $this; } - + // -------------------------------------------------------------------- /** @@ -246,7 +256,7 @@ class CI_Email { * @param string * @return void */ - function to($to) + public function to($to) { $to = $this->_str_to_array($to); $to = $this->clean_email($to); @@ -263,15 +273,18 @@ class CI_Email { switch ($this->_get_protocol()) { - case 'smtp' : $this->_recipients = $to; - break; - case 'sendmail' : $this->_recipients = implode(", ", $to); + case 'smtp' : + $this->_recipients = $to; break; - case 'mail' : $this->_recipients = implode(", ", $to); + case 'sendmail' : + case 'mail' : + $this->_recipients = implode(", ", $to); break; } + + return $this; } - + // -------------------------------------------------------------------- /** @@ -281,7 +294,7 @@ class CI_Email { * @param string * @return void */ - function cc($cc) + public function cc($cc) { $cc = $this->_str_to_array($cc); $cc = $this->clean_email($cc); @@ -297,8 +310,10 @@ class CI_Email { { $this->_cc_array = $cc; } + + return $this; } - + // -------------------------------------------------------------------- /** @@ -309,7 +324,7 @@ class CI_Email { * @param string * @return void */ - function bcc($bcc, $limit = '') + public function bcc($bcc, $limit = '') { if ($limit != '' && is_numeric($limit)) { @@ -333,8 +348,10 @@ class CI_Email { { $this->_set_header('Bcc', implode(", ", $bcc)); } + + return $this; } - + // -------------------------------------------------------------------- /** @@ -344,12 +361,13 @@ class CI_Email { * @param string * @return void */ - function subject($subject) + public function subject($subject) { $subject = $this->_prep_q_encoding($subject); $this->_set_header('Subject', $subject); + return $this; } - + // -------------------------------------------------------------------- /** @@ -359,11 +377,12 @@ class CI_Email { * @param string * @return void */ - function message($body) + public function message($body) { $this->_body = stripslashes(rtrim(str_replace("\r", "", $body))); + return $this; } - + // -------------------------------------------------------------------- /** @@ -373,11 +392,12 @@ class CI_Email { * @param string * @return void */ - function attach($filename, $disposition = 'attachment') + public function attach($filename, $disposition = 'attachment') { $this->_attach_name[] = $filename; $this->_attach_type[] = $this->_mime_types(next(explode('.', basename($filename)))); $this->_attach_disp[] = $disposition; // Can also be 'inline' Not sure if it matters + return $this; } // -------------------------------------------------------------------- @@ -390,11 +410,11 @@ class CI_Email { * @param string * @return void */ - function _set_header($header, $value) + private function _set_header($header, $value) { $this->_headers[$header] = $value; } - + // -------------------------------------------------------------------- /** @@ -404,7 +424,7 @@ class CI_Email { * @param string * @return array */ - function _str_to_array($email) + private function _str_to_array($email) { if ( ! is_array($email)) { @@ -420,7 +440,7 @@ class CI_Email { } return $email; } - + // -------------------------------------------------------------------- /** @@ -430,11 +450,12 @@ class CI_Email { * @param string * @return void */ - function set_alt_message($str = '') + public function set_alt_message($str = '') { $this->alt_message = ($str == '') ? '' : $str; + return $this; } - + // -------------------------------------------------------------------- /** @@ -444,11 +465,12 @@ class CI_Email { * @param string * @return void */ - function set_mailtype($type = 'text') + public function set_mailtype($type = 'text') { $this->mailtype = ($type == 'html') ? 'html' : 'text'; + return $this; } - + // -------------------------------------------------------------------- /** @@ -458,11 +480,12 @@ class CI_Email { * @param string * @return void */ - function set_wordwrap($wordwrap = TRUE) + public function set_wordwrap($wordwrap = TRUE) { $this->wordwrap = ($wordwrap === FALSE) ? FALSE : TRUE; + return $this; } - + // -------------------------------------------------------------------- /** @@ -472,11 +495,12 @@ class CI_Email { * @param string * @return void */ - function set_protocol($protocol = 'mail') + public function set_protocol($protocol = 'mail') { $this->protocol = ( ! in_array($protocol, $this->_protocols, TRUE)) ? 'mail' : strtolower($protocol); + return $this; } - + // -------------------------------------------------------------------- /** @@ -486,7 +510,7 @@ class CI_Email { * @param integer * @return void */ - function set_priority($n = 3) + public function set_priority($n = 3) { if ( ! is_numeric($n)) { @@ -501,8 +525,9 @@ class CI_Email { } $this->priority = $n; + return $this; } - + // -------------------------------------------------------------------- /** @@ -512,7 +537,7 @@ class CI_Email { * @param string * @return void */ - function set_newline($newline = "\n") + public function set_newline($newline = "\n") { if ($newline != "\n" AND $newline != "\r\n" AND $newline != "\r") { @@ -521,8 +546,10 @@ class CI_Email { } $this->newline = $newline; + + return $this; } - + // -------------------------------------------------------------------- /** @@ -532,7 +559,7 @@ class CI_Email { * @param string * @return void */ - function set_crlf($crlf = "\n") + public function set_crlf($crlf = "\n") { if ($crlf != "\n" AND $crlf != "\r\n" AND $crlf != "\r") { @@ -541,8 +568,10 @@ class CI_Email { } $this->crlf = $crlf; + + return $this; } - + // -------------------------------------------------------------------- /** @@ -551,12 +580,12 @@ class CI_Email { * @access private * @return void */ - function _set_boundaries() + private function _set_boundaries() { $this->_alt_boundary = "B_ALT_".uniqid(''); // multipart/alternative $this->_atc_boundary = "B_ATC_".uniqid(''); // attachment boundary } - + // -------------------------------------------------------------------- /** @@ -565,7 +594,7 @@ class CI_Email { * @access private * @return string */ - function _get_message_id() + private function _get_message_id() { $from = $this->_headers['Return-Path']; $from = str_replace(">", "", $from); @@ -573,7 +602,7 @@ class CI_Email { return "<".uniqid('').strstr($from, '@').">"; } - + // -------------------------------------------------------------------- /** @@ -583,7 +612,7 @@ class CI_Email { * @param bool * @return string */ - function _get_protocol($return = TRUE) + private function _get_protocol($return = TRUE) { $this->protocol = strtolower($this->protocol); $this->protocol = ( ! in_array($this->protocol, $this->_protocols, TRUE)) ? 'mail' : $this->protocol; @@ -593,7 +622,7 @@ class CI_Email { return $this->protocol; } } - + // -------------------------------------------------------------------- /** @@ -603,7 +632,7 @@ class CI_Email { * @param bool * @return string */ - function _get_encoding($return = TRUE) + private function _get_encoding($return = TRUE) { $this->_encoding = ( ! in_array($this->_encoding, $this->_bit_depths)) ? '8bit' : $this->_encoding; @@ -629,7 +658,7 @@ class CI_Email { * @access private * @return string */ - function _get_content_type() + private function _get_content_type() { if ($this->mailtype == 'html' && count($this->_attach_name) == 0) { @@ -648,7 +677,7 @@ class CI_Email { return 'plain'; } } - + // -------------------------------------------------------------------- /** @@ -657,7 +686,7 @@ class CI_Email { * @access private * @return string */ - function _set_date() + private function _set_date() { $timezone = date("Z"); $operator = (strncmp($timezone, '-', 1) == 0) ? '-' : '+'; @@ -666,7 +695,7 @@ class CI_Email { return sprintf("%s %s%04d", date("D, j M Y H:i:s"), $operator, $timezone); } - + // -------------------------------------------------------------------- /** @@ -675,11 +704,11 @@ class CI_Email { * @access private * @return string */ - function _get_mime_message() + private function _get_mime_message() { return "This is a multi-part message in MIME format.".$this->newline."Your email application may not support this format."; } - + // -------------------------------------------------------------------- /** @@ -689,7 +718,7 @@ class CI_Email { * @param string * @return bool */ - function validate_email($email) + public function validate_email($email) { if ( ! is_array($email)) { @@ -708,7 +737,7 @@ class CI_Email { return TRUE; } - + // -------------------------------------------------------------------- /** @@ -718,11 +747,11 @@ class CI_Email { * @param string * @return bool */ - function valid_email($address) + public function valid_email($address) { return ( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $address)) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- /** @@ -732,17 +761,17 @@ class CI_Email { * @param string * @return string */ - function clean_email($email) + public function clean_email($email) { if ( ! is_array($email)) { if (preg_match('/\<(.*)\>/', $email, $match)) { - return $match['1']; + return $match['1']; } - else + else { - return $email; + return $email; } } @@ -752,23 +781,23 @@ class CI_Email { { if (preg_match( '/\<(.*)\>/', $addy, $match)) { - $clean_email[] = $match['1']; + $clean_email[] = $match['1']; } - else + else { - $clean_email[] = $addy; + $clean_email[] = $addy; } } return $clean_email; } - + // -------------------------------------------------------------------- /** * Build alternative plain text message * - * This function provides the raw message for use + * This public function provides the raw message for use * in plain-text headers of HTML-formatted emails. * If the user hasn't specified his own alternative message * it creates one by stripping the HTML @@ -776,7 +805,7 @@ class CI_Email { * @access private * @return string */ - function _get_alt_message() + private function _get_alt_message() { if ($this->alt_message != "") { @@ -802,7 +831,7 @@ class CI_Email { for ($x = 1; $x <= $i; $x ++) { - $n .= "\n"; + $n .= "\n"; } $body = str_replace($n, "\n\n", $body); @@ -810,7 +839,7 @@ class CI_Email { return $this->word_wrap($body, '76'); } - + // -------------------------------------------------------------------- /** @@ -821,7 +850,7 @@ class CI_Email { * @param integer * @return string */ - function word_wrap($str, $charlim = '') + public function word_wrap($str, $charlim = '') { // Se the character limit if ($charlim == '') @@ -850,7 +879,7 @@ class CI_Email { } } - // Use PHP's native function to do the initial wordwrap. + // Use PHP's native public function to do the initial wordwrap. // We set the cut flag to FALSE so that any individual words that are // too long get left alone. In the next step we'll deal with them. $str = wordwrap($str, $charlim, "\n", FALSE); @@ -906,7 +935,7 @@ class CI_Email { return $output; } - + // -------------------------------------------------------------------- /** @@ -916,7 +945,7 @@ class CI_Email { * @param string * @return string */ - function _build_headers() + private function _build_headers() { $this->_set_header('X-Sender', $this->clean_email($this->_headers['From'])); $this->_set_header('X-Mailer', $this->useragent); @@ -924,7 +953,7 @@ class CI_Email { $this->_set_header('Message-ID', $this->_get_message_id()); $this->_set_header('Mime-Version', '1.0'); } - + // -------------------------------------------------------------------- /** @@ -933,7 +962,7 @@ class CI_Email { * @access private * @return void */ - function _write_headers() + private function _write_headers() { if ($this->protocol == 'mail') { @@ -959,7 +988,7 @@ class CI_Email { $this->_header_str = rtrim($this->_header_str); } } - + // -------------------------------------------------------------------- /** @@ -968,7 +997,7 @@ class CI_Email { * @access private * @return void */ - function _build_message() + private function _build_message() { if ($this->wordwrap === TRUE AND $this->mailtype != 'html') { @@ -979,6 +1008,7 @@ class CI_Email { $this->_write_headers(); $hdr = ($this->_get_protocol() == 'mail') ? $this->newline : ''; + $body = ''; switch ($this->_get_content_type()) { @@ -991,13 +1021,12 @@ class CI_Email { { $this->_header_str .= $hdr; $this->_finalbody = $this->_body; - - return; + } + else + { + $this->_finalbody = $hdr . $this->newline . $this->newline . $this->_body; } - $hdr .= $this->newline . $this->newline . $this->_body; - - $this->_finalbody = $hdr; return; break; @@ -1011,93 +1040,81 @@ class CI_Email { else { $hdr .= "Content-Type: multipart/alternative; boundary=\"" . $this->_alt_boundary . "\"" . $this->newline . $this->newline; - $hdr .= $this->_get_mime_message() . $this->newline . $this->newline; - $hdr .= "--" . $this->_alt_boundary . $this->newline; - $hdr .= "Content-Type: text/plain; charset=" . $this->charset . $this->newline; - $hdr .= "Content-Transfer-Encoding: " . $this->_get_encoding() . $this->newline . $this->newline; - $hdr .= $this->_get_alt_message() . $this->newline . $this->newline . "--" . $this->_alt_boundary . $this->newline; + $body .= $this->_get_mime_message() . $this->newline . $this->newline; + $body .= "--" . $this->_alt_boundary . $this->newline; - $hdr .= "Content-Type: text/html; charset=" . $this->charset . $this->newline; - $hdr .= "Content-Transfer-Encoding: quoted-printable"; + $body .= "Content-Type: text/plain; charset=" . $this->charset . $this->newline; + $body .= "Content-Transfer-Encoding: " . $this->_get_encoding() . $this->newline . $this->newline; + $body .= $this->_get_alt_message() . $this->newline . $this->newline . "--" . $this->_alt_boundary . $this->newline; + + $body .= "Content-Type: text/html; charset=" . $this->charset . $this->newline; + $body .= "Content-Transfer-Encoding: quoted-printable" . $this->newline . $this->newline; } - $this->_body = $this->_prep_quoted_printable($this->_body); + $this->_finalbody = $body . $this->_prep_quoted_printable($this->_body) . $this->newline . $this->newline; + if ($this->_get_protocol() == 'mail') { $this->_header_str .= $hdr; - $this->_finalbody = $this->_body . $this->newline . $this->newline; - - if ($this->send_multipart !== FALSE) - { - $this->_finalbody .= "--" . $this->_alt_boundary . "--"; - } - - return; + } + else + { + $this->_finalbody = $hdr . $this->_finalbody; } - $hdr .= $this->newline . $this->newline; - $hdr .= $this->_body . $this->newline . $this->newline; if ($this->send_multipart !== FALSE) { - $hdr .= "--" . $this->_alt_boundary . "--"; + $this->_finalbody .= "--" . $this->_alt_boundary . "--"; } - $this->_finalbody = $hdr; return; break; case 'plain-attach' : $hdr .= "Content-Type: multipart/".$this->multipart."; boundary=\"" . $this->_atc_boundary."\"" . $this->newline . $this->newline; - $hdr .= $this->_get_mime_message() . $this->newline . $this->newline; - $hdr .= "--" . $this->_atc_boundary . $this->newline; - - $hdr .= "Content-Type: text/plain; charset=" . $this->charset . $this->newline; - $hdr .= "Content-Transfer-Encoding: " . $this->_get_encoding(); if ($this->_get_protocol() == 'mail') { $this->_header_str .= $hdr; - - $body = $this->_body . $this->newline . $this->newline; } - $hdr .= $this->newline . $this->newline; - $hdr .= $this->_body . $this->newline . $this->newline; + $body .= $this->_get_mime_message() . $this->newline . $this->newline; + $body .= "--" . $this->_atc_boundary . $this->newline; + + $body .= "Content-Type: text/plain; charset=" . $this->charset . $this->newline; + $body .= "Content-Transfer-Encoding: " . $this->_get_encoding() . $this->newline . $this->newline; + + $body .= $this->_body . $this->newline . $this->newline; break; case 'html-attach' : $hdr .= "Content-Type: multipart/".$this->multipart."; boundary=\"" . $this->_atc_boundary."\"" . $this->newline . $this->newline; - $hdr .= $this->_get_mime_message() . $this->newline . $this->newline; - $hdr .= "--" . $this->_atc_boundary . $this->newline; - - $hdr .= "Content-Type: multipart/alternative; boundary=\"" . $this->_alt_boundary . "\"" . $this->newline .$this->newline; - $hdr .= "--" . $this->_alt_boundary . $this->newline; - - $hdr .= "Content-Type: text/plain; charset=" . $this->charset . $this->newline; - $hdr .= "Content-Transfer-Encoding: " . $this->_get_encoding() . $this->newline . $this->newline; - $hdr .= $this->_get_alt_message() . $this->newline . $this->newline . "--" . $this->_alt_boundary . $this->newline; - - $hdr .= "Content-Type: text/html; charset=" . $this->charset . $this->newline; - $hdr .= "Content-Transfer-Encoding: quoted-printable"; - - $this->_body = $this->_prep_quoted_printable($this->_body); if ($this->_get_protocol() == 'mail') { $this->_header_str .= $hdr; - - $body = $this->_body . $this->newline . $this->newline; - $body .= "--" . $this->_alt_boundary . "--" . $this->newline . $this->newline; } - $hdr .= $this->newline . $this->newline; - $hdr .= $this->_body . $this->newline . $this->newline; - $hdr .= "--" . $this->_alt_boundary . "--" . $this->newline . $this->newline; + $body .= $this->_get_mime_message() . $this->newline . $this->newline; + $body .= "--" . $this->_atc_boundary . $this->newline; + + $body .= "Content-Type: multipart/alternative; boundary=\"" . $this->_alt_boundary . "\"" . $this->newline .$this->newline; + $body .= "--" . $this->_alt_boundary . $this->newline; + + $body .= "Content-Type: text/plain; charset=" . $this->charset . $this->newline; + $body .= "Content-Transfer-Encoding: " . $this->_get_encoding() . $this->newline . $this->newline; + $body .= $this->_get_alt_message() . $this->newline . $this->newline . "--" . $this->_alt_boundary . $this->newline; + + $body .= "Content-Type: text/html; charset=" . $this->charset . $this->newline; + $body .= "Content-Transfer-Encoding: quoted-printable" . $this->newline . $this->newline; + + $body .= $this->_prep_quoted_printable($this->_body) . $this->newline . $this->newline; + $body .= "--" . $this->_alt_boundary . "--" . $this->newline . $this->newline; break; } @@ -1137,18 +1154,21 @@ class CI_Email { fclose($fp); } + $body .= implode($this->newline, $attachment).$this->newline."--".$this->_atc_boundary."--"; + + if ($this->_get_protocol() == 'mail') { - $this->_finalbody = $body . implode($this->newline, $attachment).$this->newline."--".$this->_atc_boundary."--"; - - return; + $this->_finalbody = $body; + } + else + { + $this->_finalbody = $hdr . $body; } - - $this->_finalbody = $hdr.implode($this->newline, $attachment).$this->newline."--".$this->_atc_boundary."--"; return; } - + // -------------------------------------------------------------------- /** @@ -1162,7 +1182,7 @@ class CI_Email { * @param integer * @return string */ - function _prep_quoted_printable($str, $charlim = '') + private function _prep_quoted_printable($str, $charlim = '') { // Set the character limit // Don't allow over 76, as that will make servers and MUAs barf @@ -1243,7 +1263,7 @@ class CI_Email { } // -------------------------------------------------------------------- - + /** * Prep Q Encoding * @@ -1255,7 +1275,7 @@ class CI_Email { * @param bool // set to TRUE for processing From: headers * @return str */ - function _prep_q_encoding($str, $from = FALSE) + private function _prep_q_encoding($str, $from = FALSE) { $str = str_replace(array("\r", "\n"), array('', ''), $str); @@ -1315,14 +1335,14 @@ class CI_Email { } // -------------------------------------------------------------------- - + /** * Send Email * * @access public * @return bool */ - function send() + public function send() { if ($this->_replyto_flag == FALSE) { @@ -1356,7 +1376,7 @@ class CI_Email { return TRUE; } } - + // -------------------------------------------------------------------- /** @@ -1365,7 +1385,7 @@ class CI_Email { * @access public * @return bool */ - function batch_bcc_send() + public function batch_bcc_send() { $float = $this->bcc_batch_size -1; @@ -1414,7 +1434,7 @@ class CI_Email { $this->_spool_email(); } } - + // -------------------------------------------------------------------- /** @@ -1423,11 +1443,11 @@ class CI_Email { * @access private * @return void */ - function _unwrap_specials() + private function _unwrap_specials() { $this->_finalbody = preg_replace_callback("/\{unwrap\}(.*?)\{\/unwrap\}/si", array($this, '_remove_nl_callback'), $this->_finalbody); } - + // -------------------------------------------------------------------- /** @@ -1436,7 +1456,7 @@ class CI_Email { * @access private * @return string */ - function _remove_nl_callback($matches) + private function _remove_nl_callback($matches) { if (strpos($matches[1], "\r") !== FALSE OR strpos($matches[1], "\n") !== FALSE) { @@ -1445,7 +1465,7 @@ class CI_Email { return $matches[1]; } - + // -------------------------------------------------------------------- /** @@ -1454,7 +1474,7 @@ class CI_Email { * @access private * @return bool */ - function _spool_email() + private function _spool_email() { $this->_unwrap_specials(); @@ -1490,7 +1510,7 @@ class CI_Email { $this->_set_error_message('email_sent', $this->_get_protocol()); return TRUE; } - + // -------------------------------------------------------------------- /** @@ -1499,7 +1519,7 @@ class CI_Email { * @access private * @return bool */ - function _send_with_mail() + private function _send_with_mail() { if ($this->_safe_mode == TRUE) { @@ -1516,6 +1536,7 @@ class CI_Email { { // most documentation of sendmail using the "-f" flag lacks a space after it, however // we've encountered servers that seem to require it to be in place. + if ( ! mail($this->_recipients, $this->_subject, $this->_finalbody, $this->_header_str, "-f ".$this->clean_email($this->_headers['From']))) { return FALSE; @@ -1526,7 +1547,7 @@ class CI_Email { } } } - + // -------------------------------------------------------------------- /** @@ -1535,7 +1556,7 @@ class CI_Email { * @access private * @return bool */ - function _send_with_sendmail() + private function _send_with_sendmail() { $fp = @popen($this->mailpath . " -oi -f ".$this->clean_email($this->_headers['From'])." -t", 'w'); @@ -1544,17 +1565,17 @@ class CI_Email { // server probably has popen disabled, so nothing we can do to get a verbose error. return FALSE; } - + fputs($fp, $this->_header_str); fputs($fp, $this->_finalbody); - $status = pclose($fp); - + $status = pclose($fp); + if (version_compare(PHP_VERSION, '4.2.3') == -1) { $status = $status >> 8 & 0xFF; - } - + } + if ($status != 0) { $this->_set_error_message('email_exit_status', $status); @@ -1564,7 +1585,7 @@ class CI_Email { return TRUE; } - + // -------------------------------------------------------------------- /** @@ -1573,7 +1594,7 @@ class CI_Email { * @access private * @return bool */ - function _send_with_smtp() + private function _send_with_smtp() { if ($this->smtp_host == '') { @@ -1633,7 +1654,7 @@ class CI_Email { $this->_send_command('quit'); return TRUE; } - + // -------------------------------------------------------------------- /** @@ -1643,7 +1664,7 @@ class CI_Email { * @param string * @return string */ - function _smtp_connect() + private function _smtp_connect() { $this->_smtp_connect = fsockopen($this->smtp_host, $this->smtp_port, @@ -1660,7 +1681,7 @@ class CI_Email { $this->_set_error_message($this->_get_smtp_data()); return $this->_send_command('hello'); } - + // -------------------------------------------------------------------- /** @@ -1671,7 +1692,7 @@ class CI_Email { * @param string * @return string */ - function _send_command($cmd, $data = '') + private function _send_command($cmd, $data = '') { switch ($cmd) { @@ -1727,7 +1748,7 @@ class CI_Email { return TRUE; } - + // -------------------------------------------------------------------- /** @@ -1736,7 +1757,7 @@ class CI_Email { * @access private * @return bool */ - function _smtp_authenticate() + private function _smtp_authenticate() { if ( ! $this->_smtp_auth) { @@ -1781,7 +1802,7 @@ class CI_Email { return TRUE; } - + // -------------------------------------------------------------------- /** @@ -1790,7 +1811,7 @@ class CI_Email { * @access private * @return bool */ - function _send_data($data) + private function _send_data($data) { if ( ! fwrite($this->_smtp_connect, $data . $this->newline)) { @@ -1802,7 +1823,7 @@ class CI_Email { return TRUE; } } - + // -------------------------------------------------------------------- /** @@ -1811,7 +1832,7 @@ class CI_Email { * @access private * @return string */ - function _get_smtp_data() + private function _get_smtp_data() { $data = ""; @@ -1827,7 +1848,7 @@ class CI_Email { return $data; } - + // -------------------------------------------------------------------- /** @@ -1836,11 +1857,11 @@ class CI_Email { * @access private * @return string */ - function _get_hostname() + private function _get_hostname() { return (isset($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : 'localhost.localdomain'; } - + // -------------------------------------------------------------------- /** @@ -1849,7 +1870,7 @@ class CI_Email { * @access private * @return string */ - function _get_ip() + private function _get_ip() { if ($this->_IP !== FALSE) { @@ -1860,12 +1881,12 @@ class CI_Email { $rip = (isset($_SERVER['REMOTE_ADDR']) AND $_SERVER['REMOTE_ADDR'] != "") ? $_SERVER['REMOTE_ADDR'] : FALSE; $fip = (isset($_SERVER['HTTP_X_FORWARDED_FOR']) AND $_SERVER['HTTP_X_FORWARDED_FOR'] != "") ? $_SERVER['HTTP_X_FORWARDED_FOR'] : FALSE; - if ($cip && $rip) $this->_IP = $cip; + if ($cip && $rip) $this->_IP = $cip; elseif ($rip) $this->_IP = $rip; elseif ($cip) $this->_IP = $cip; elseif ($fip) $this->_IP = $fip; - if (strstr($this->_IP, ',')) + if (strpos($this->_IP, ',') !== FALSE) { $x = explode(',', $this->_IP); $this->_IP = end($x); @@ -1882,7 +1903,7 @@ class CI_Email { return $this->_IP; } - + // -------------------------------------------------------------------- /** @@ -1891,7 +1912,7 @@ class CI_Email { * @access public * @return string */ - function print_debugger() + public function print_debugger() { $msg = ''; @@ -1906,7 +1927,7 @@ class CI_Email { $msg .= "<pre>".$this->_header_str."\n".htmlspecialchars($this->_subject)."\n".htmlspecialchars($this->_finalbody).'</pre>'; return $msg; } - + // -------------------------------------------------------------------- /** @@ -1916,7 +1937,7 @@ class CI_Email { * @param string * @return string */ - function _set_error_message($msg, $val = '') + private function _set_error_message($msg, $val = '') { $CI =& get_instance(); $CI->lang->load('email'); @@ -1930,7 +1951,7 @@ class CI_Email { $this->_debug_msg[] = str_replace('%s', $val, $line)."<br />"; } } - + // -------------------------------------------------------------------- /** @@ -1940,7 +1961,7 @@ class CI_Email { * @param string * @return string */ - function _mime_types($ext = "") + private function _mime_types($ext = "") { $mimes = array( 'hqx' => 'application/mac-binhex40', 'cpt' => 'application/mac-compactpro', diff --git a/system/libraries/Encrypt.php b/system/libraries/Encrypt.php index c893fbf9e..e5f65878a 100644..100755 --- a/system/libraries/Encrypt.php +++ b/system/libraries/Encrypt.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -41,7 +41,7 @@ class CI_Encrypt { * Simply determines whether the mcrypt library exists. * */ - function CI_Encrypt() + public function __construct() { $this->CI =& get_instance(); $this->_mcrypt_exists = ( ! function_exists('mcrypt_encrypt')) ? FALSE : TRUE; @@ -72,7 +72,7 @@ class CI_Encrypt { $CI =& get_instance(); $key = $CI->config->item('encryption_key'); - if ($key === FALSE) + if ($key == FALSE) { show_error('In order to use the encryption class requires that you set an encryption key in your config file.'); } @@ -116,12 +116,16 @@ class CI_Encrypt { function encode($string, $key = '') { $key = $this->get_key($key); - $enc = $this->_xor_encode($string, $key); - + if ($this->_mcrypt_exists === TRUE) { - $enc = $this->mcrypt_encode($enc, $key); + $enc = $this->mcrypt_encode($string, $key); + } + else + { + $enc = $this->_xor_encode($string, $key); } + return base64_encode($enc); } @@ -140,7 +144,7 @@ class CI_Encrypt { function decode($string, $key = '') { $key = $this->get_key($key); - + if (preg_match('/[^a-zA-Z0-9\/\+=]/', $string)) { return FALSE; @@ -155,8 +159,67 @@ class CI_Encrypt { return FALSE; } } + else + { + $dec = $this->_xor_decode($dec, $key); + } - return $this->_xor_decode($dec, $key); + return $dec; + } + + // -------------------------------------------------------------------- + + /** + * Encode from Legacy + * + * Takes an encoded string from the original Encryption class algorithms and + * returns a newly encoded string using the improved method added in 2.0.0 + * This allows for backwards compatibility and a method to transition to the + * new encryption algorithms. + * + * For more details, see http://codeigniter.com/user_guide/installation/upgrade_200.html#encryption + * + * @access public + * @param string + * @param int (mcrypt mode constant) + * @param string + * @return string + */ + function encode_from_legacy($string, $legacy_mode = MCRYPT_MODE_ECB, $key = '') + { + if ($this->_mcrypt_exists === FALSE) + { + log_message('error', 'Encoding from legacy is available only when Mcrypt is in use.'); + return FALSE; + } + + // decode it first + // set mode temporarily to what it was when string was encoded with the legacy + // algorithm - typically MCRYPT_MODE_ECB + $current_mode = $this->_get_mode(); + $this->set_mode($legacy_mode); + + $key = $this->get_key($key); + + if (preg_match('/[^a-zA-Z0-9\/\+=]/', $string)) + { + return FALSE; + } + + $dec = base64_decode($string); + + if (($dec = $this->mcrypt_decode($dec, $key)) === FALSE) + { + return FALSE; + } + + $dec = $this->_xor_decode($dec, $key); + + // set the mcrypt mode back to what it should be, typically MCRYPT_MODE_CBC + $this->set_mode($current_mode); + + // and re-encode + return base64_encode($this->mcrypt_encode($dec, $key)); } // -------------------------------------------------------------------- @@ -184,7 +247,7 @@ class CI_Encrypt { $enc = ''; for ($i = 0; $i < strlen($string); $i++) - { + { $enc .= substr($rand, ($i % strlen($rand)), 1).(substr($rand, ($i % strlen($rand)), 1) ^ substr($string, $i, 1)); } @@ -347,7 +410,7 @@ class CI_Encrypt { { $temp = $temp + 256; } - + $str .= chr($temp); } @@ -355,7 +418,7 @@ class CI_Encrypt { } // -------------------------------------------------------------------- - + /** * Set the Mcrypt Cipher * @@ -412,9 +475,9 @@ class CI_Encrypt { { if ($this->_mcrypt_mode == '') { - $this->_mcrypt_mode = MCRYPT_MODE_ECB; + $this->_mcrypt_mode = MCRYPT_MODE_CBC; } - + return $this->_mcrypt_mode; } @@ -440,7 +503,7 @@ class CI_Encrypt { * @access public * @param string * @return string - */ + */ function hash($str) { return ($this->_hash_type == 'sha1') ? $this->sha1($str) : md5($str); diff --git a/system/libraries/Form_validation.php b/system/libraries/Form_validation.php index 640bf9180..fc5b82ee3 100644..100755 --- a/system/libraries/Form_validation.php +++ b/system/libraries/Form_validation.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -25,29 +25,28 @@ * @link http://codeigniter.com/user_guide/libraries/form_validation.html */ class CI_Form_validation { - + var $CI; - var $_field_data = array(); + var $_field_data = array(); var $_config_rules = array(); var $_error_array = array(); - var $_error_messages = array(); + var $_error_messages = array(); var $_error_prefix = '<p>'; var $_error_suffix = '</p>'; var $error_string = ''; - var $_safe_form_data = FALSE; + var $_safe_form_data = FALSE; /** * Constructor - * - */ - function CI_Form_validation($rules = array()) - { + */ + public function __construct($rules = array()) + { $this->CI =& get_instance(); - + // Validation rules can be stored in a config file. $this->_config_rules = $rules; - + // Automatically load the form helper $this->CI->load->helper('form'); @@ -56,12 +55,12 @@ class CI_Form_validation { { mb_internal_encoding($this->CI->config->item('charset')); } - + log_message('debug', "Form Validation Class Initialized"); } - + // -------------------------------------------------------------------- - + /** * Set Rules * @@ -78,9 +77,9 @@ class CI_Form_validation { // No reason to set rules if we have no POST data if (count($_POST) == 0) { - return; + return $this; } - + // If an array was passed via the first parameter instead of indidual string // values we cycle through it and recursively call this function. if (is_array($field)) @@ -99,13 +98,13 @@ class CI_Form_validation { // Here we go! $this->set_rules($row['field'], $label, $row['rules']); } - return; + return $this; } - + // No fields? Nothing to do... if ( ! is_string($field) OR ! is_string($rules) OR $field == '') { - return; + return $this; } // If the field label wasn't passed we use the field name @@ -113,9 +112,9 @@ class CI_Form_validation { // Is the field name an array? We test for the existence of a bracket "[" in // the field name to determine this. If it is an array, we break it apart - // into its components so that we can fetch the corresponding POST data later + // into its components so that we can fetch the corresponding POST data later if (strpos($field, '[') !== FALSE AND preg_match_all('/\[(.*?)\]/', $field, $matches)) - { + { // Note: Due to a bug in current() that affects some versions // of PHP we can not pass function call directly into it $x = explode('[', $field); @@ -128,29 +127,31 @@ class CI_Form_validation { $indexes[] = $matches['1'][$i]; } } - + $is_array = TRUE; } else { - $indexes = array(); - $is_array = FALSE; + $indexes = array(); + $is_array = FALSE; } - - // Build our master array + + // Build our master array $this->_field_data[$field] = array( - 'field' => $field, - 'label' => $label, + 'field' => $field, + 'label' => $label, 'rules' => $rules, 'is_array' => $is_array, 'keys' => $indexes, 'postdata' => NULL, 'error' => '' ); + + return $this; } // -------------------------------------------------------------------- - + /** * Set Error Message * @@ -168,12 +169,14 @@ class CI_Form_validation { { $lang = array($lang => $val); } - + $this->_error_messages = array_merge($this->_error_messages, $lang); + + return $this; } - + // -------------------------------------------------------------------- - + /** * Set The Error Delimiter * @@ -183,15 +186,17 @@ class CI_Form_validation { * @param string * @param string * @return void - */ + */ function set_error_delimiters($prefix = '<p>', $suffix = '</p>') { $this->_error_prefix = $prefix; $this->_error_suffix = $suffix; + + return $this; } // -------------------------------------------------------------------- - + /** * Get Error Message * @@ -200,14 +205,14 @@ class CI_Form_validation { * @access public * @param string the field name * @return void - */ + */ function error($field = '', $prefix = '', $suffix = '') - { + { if ( ! isset($this->_field_data[$field]['error']) OR $this->_field_data[$field]['error'] == '') { return ''; } - + if ($prefix == '') { $prefix = $this->_error_prefix; @@ -222,7 +227,7 @@ class CI_Form_validation { } // -------------------------------------------------------------------- - + /** * Error String * @@ -232,7 +237,7 @@ class CI_Form_validation { * @param string * @param string * @return str - */ + */ function error_string($prefix = '', $suffix = '') { // No errrors, validation passes! @@ -240,7 +245,7 @@ class CI_Form_validation { { return ''; } - + if ($prefix == '') { $prefix = $this->_error_prefix; @@ -250,7 +255,7 @@ class CI_Form_validation { { $suffix = $this->_error_suffix; } - + // Generate the error string $str = ''; foreach ($this->_error_array as $val) @@ -260,12 +265,12 @@ class CI_Form_validation { $str .= $prefix.$val.$suffix."\n"; } } - + return $str; } // -------------------------------------------------------------------- - + /** * Run the Validator * @@ -273,7 +278,7 @@ class CI_Form_validation { * * @access public * @return bool - */ + */ function run($group = '') { // Do we even have any data to process? Mm? @@ -281,7 +286,7 @@ class CI_Form_validation { { return FALSE; } - + // Does the _field_data array containing the validation rules exist? // If not, we look to see if they were assigned via a config file if (count($this->_field_data) == 0) @@ -291,10 +296,10 @@ class CI_Form_validation { { return FALSE; } - + // Is there a validation rule for the particular URI being accessed? $uri = ($group == '') ? trim($this->CI->uri->ruri_string(), '/') : $group; - + if ($uri != '' AND isset($this->_config_rules[$uri])) { $this->set_rules($this->_config_rules[$uri]); @@ -303,7 +308,7 @@ class CI_Form_validation { { $this->set_rules($this->_config_rules); } - + // We're we able to set the rules correctly? if (count($this->_field_data) == 0) { @@ -311,17 +316,17 @@ class CI_Form_validation { return FALSE; } } - + // Load the language file containing error messages $this->CI->lang->load('form_validation'); - - // Cycle through the rules for each field, match the + + // Cycle through the rules for each field, match the // corresponding $_POST item and test for errors foreach ($this->_field_data as $field => $row) - { + { // Fetch the data from the corresponding $_POST array and cache it in the _field_data array. // Depending on whether the field name is an array or a string will determine where we get it from. - + if ($row['is_array'] == TRUE) { $this->_field_data[$field]['postdata'] = $this->_reduce_array($_POST, $row['keys']); @@ -333,8 +338,8 @@ class CI_Form_validation { $this->_field_data[$field]['postdata'] = $_POST[$field]; } } - - $this->_execute($row, explode('|', $row['rules']), $this->_field_data[$field]['postdata']); + + $this->_execute($row, explode('|', $row['rules']), $this->_field_data[$field]['postdata']); } // Did we end up with any errors? @@ -347,7 +352,7 @@ class CI_Form_validation { // Now we need to re-set the POST data with the new, processed data $this->_reset_post_array(); - + // No errors, validation passes! if ($total_errors == 0) { @@ -359,7 +364,7 @@ class CI_Form_validation { } // -------------------------------------------------------------------- - + /** * Traverse a multidimensional $_POST array index until the data is found * @@ -368,7 +373,7 @@ class CI_Form_validation { * @param array * @param integer * @return mixed - */ + */ function _reduce_array($array, $keys, $i = 0) { if (is_array($array)) @@ -389,18 +394,18 @@ class CI_Form_validation { return $array; } } - + return $array; } // -------------------------------------------------------------------- - + /** * Re-populate the _POST array with our finalized and processed data * * @access private * @return null - */ + */ function _reset_post_array() { foreach ($this->_field_data as $field => $row) @@ -418,7 +423,7 @@ class CI_Form_validation { { // start with a reference $post_ref =& $_POST; - + // before we assign values, make a reference to the right POST key if (count($row['keys']) == 1) { @@ -452,7 +457,7 @@ class CI_Form_validation { } // -------------------------------------------------------------------- - + /** * Executes the Validation routines * @@ -462,21 +467,21 @@ class CI_Form_validation { * @param mixed * @param integer * @return mixed - */ + */ function _execute($row, $rules, $postdata = NULL, $cycles = 0) { // If the $_POST data is an array we will run a recursive call if (is_array($postdata)) - { + { foreach ($postdata as $key => $val) { $this->_execute($row, $rules, $val, $cycles); $cycles++; } - + return; } - + // -------------------------------------------------------------------- // If the field is blank, but NOT required, no further tests are necessary @@ -496,7 +501,7 @@ class CI_Form_validation { } // -------------------------------------------------------------------- - + // Isset Test. Typically this rule will only apply to checkboxes. if (is_null($postdata) AND $callback == FALSE) { @@ -504,31 +509,31 @@ class CI_Form_validation { { // Set the message type $type = (in_array('required', $rules)) ? 'required' : 'isset'; - + if ( ! isset($this->_error_messages[$type])) { if (FALSE === ($line = $this->CI->lang->line($type))) { $line = 'The field was not set'; - } + } } else { $line = $this->_error_messages[$type]; } - + // Build the error message $message = sprintf($line, $this->_translate_fieldname($row['label'])); // Save the error message $this->_field_data[$row['field']]['error'] = $message; - + if ( ! isset($this->_error_array[$row['field']])) { $this->_error_array[$row['field']] = $message; } } - + return; } @@ -538,7 +543,7 @@ class CI_Form_validation { foreach ($rules As $rule) { $_in_array = FALSE; - + // We set the $postdata variable with the current data in our master array so that // each cycle of the loop is dealing with the processed data from the last cycle if ($row['is_array'] == TRUE AND is_array($this->_field_data[$row['field']]['postdata'])) @@ -549,7 +554,7 @@ class CI_Form_validation { { continue; } - + $postdata = $this->_field_data[$row['field']]['postdata'][$cycles]; $_in_array = TRUE; } @@ -559,32 +564,32 @@ class CI_Form_validation { } // -------------------------------------------------------------------- - - // Is the rule a callback? + + // Is the rule a callback? $callback = FALSE; if (substr($rule, 0, 9) == 'callback_') { $rule = substr($rule, 9); $callback = TRUE; } - + // Strip the parameter (if exists) from the rule // Rules can contain a parameter: max_length[5] $param = FALSE; - if (preg_match("/(.*?)\[(.*?)\]/", $rule, $match)) + if (preg_match("/(.*?)\[(.*)\]/", $rule, $match)) { $rule = $match[1]; $param = $match[2]; } - + // Call the function that corresponds to the rule if ($callback === TRUE) { if ( ! method_exists($this->CI, $rule)) - { + { continue; } - + // Run the function and grab the result $result = $this->CI->$rule($postdata, $param); @@ -597,7 +602,7 @@ class CI_Form_validation { { $this->_field_data[$row['field']]['postdata'] = (is_bool($result)) ? $postdata : $result; } - + // If the field isn't required and we just processed a callback we'll move on... if ( ! in_array('required', $rules, TRUE) AND $result !== FALSE) { @@ -605,15 +610,15 @@ class CI_Form_validation { } } else - { + { if ( ! method_exists($this, $rule)) { - // If our own wrapper function doesn't exist we see if a native PHP function does. + // If our own wrapper function doesn't exist we see if a native PHP function does. // Users can use any native PHP function call that has one param. if (function_exists($rule)) { $result = $rule($postdata); - + if ($_in_array == TRUE) { $this->_field_data[$row['field']]['postdata'][$cycles] = (is_bool($result)) ? $postdata : $result; @@ -623,7 +628,7 @@ class CI_Form_validation { $this->_field_data[$row['field']]['postdata'] = (is_bool($result)) ? $postdata : $result; } } - + continue; } @@ -638,54 +643,54 @@ class CI_Form_validation { $this->_field_data[$row['field']]['postdata'] = (is_bool($result)) ? $postdata : $result; } } - + // Did the rule test negatively? If so, grab the error. if ($result === FALSE) - { + { if ( ! isset($this->_error_messages[$rule])) { if (FALSE === ($line = $this->CI->lang->line($rule))) { $line = 'Unable to access an error message corresponding to your field name.'; - } + } } else { $line = $this->_error_messages[$rule]; } - + // Is the parameter we are inserting into the error message the name // of another field? If so we need to grab its "field label" if (isset($this->_field_data[$param]) AND isset($this->_field_data[$param]['label'])) { - $param = $this->_field_data[$param]['label']; + $param = $this->_translate_fieldname($this->_field_data[$param]['label']); } - + // Build the error message $message = sprintf($line, $this->_translate_fieldname($row['label']), $param); // Save the error message $this->_field_data[$row['field']]['error'] = $message; - + if ( ! isset($this->_error_array[$row['field']])) { $this->_error_array[$row['field']] = $message; } - + return; } } } // -------------------------------------------------------------------- - + /** * Translate a field name * * @access private * @param string the field name * @return string - */ + */ function _translate_fieldname($fieldname) { // Do we need to translate the field name? @@ -693,8 +698,8 @@ class CI_Form_validation { if (substr($fieldname, 0, 5) == 'lang:') { // Grab the variable - $line = substr($fieldname, 5); - + $line = substr($fieldname, 5); + // Were we able to translate the field name? If not we use $line if (FALSE === ($fieldname = $this->CI->lang->line($line))) { @@ -706,7 +711,7 @@ class CI_Form_validation { } // -------------------------------------------------------------------- - + /** * Get the value from a form * @@ -717,19 +722,26 @@ class CI_Form_validation { * @param string the field name * @param string * @return void - */ + */ function set_value($field = '', $default = '') { if ( ! isset($this->_field_data[$field])) { return $default; } - + + // If the data is an array output them one at a time. + // E.g: form_input('name[]', set_value('name[]'); + if (is_array($this->_field_data[$field]['postdata'])) + { + return array_shift($this->_field_data[$field]['postdata']); + } + return $this->_field_data[$field]['postdata']; } - + // -------------------------------------------------------------------- - + /** * Set Select * @@ -740,9 +752,9 @@ class CI_Form_validation { * @param string * @param string * @return string - */ + */ function set_select($field = '', $value = '', $default = FALSE) - { + { if ( ! isset($this->_field_data[$field]) OR ! isset($this->_field_data[$field]['postdata'])) { if ($default === TRUE AND count($this->_field_data) === 0) @@ -751,9 +763,9 @@ class CI_Form_validation { } return ''; } - + $field = $this->_field_data[$field]['postdata']; - + if (is_array($field)) { if ( ! in_array($value, $field)) @@ -768,12 +780,12 @@ class CI_Form_validation { return ''; } } - + return ' selected="selected"'; } - + // -------------------------------------------------------------------- - + /** * Set Radio * @@ -784,7 +796,7 @@ class CI_Form_validation { * @param string * @param string * @return string - */ + */ function set_radio($field = '', $value = '', $default = FALSE) { if ( ! isset($this->_field_data[$field]) OR ! isset($this->_field_data[$field]['postdata'])) @@ -795,9 +807,9 @@ class CI_Form_validation { } return ''; } - + $field = $this->_field_data[$field]['postdata']; - + if (is_array($field)) { if ( ! in_array($value, $field)) @@ -812,12 +824,12 @@ class CI_Form_validation { return ''; } } - + return ' checked="checked"'; } - + // -------------------------------------------------------------------- - + /** * Set Checkbox * @@ -828,7 +840,7 @@ class CI_Form_validation { * @param string * @param string * @return string - */ + */ function set_checkbox($field = '', $value = '', $default = FALSE) { if ( ! isset($this->_field_data[$field]) OR ! isset($this->_field_data[$field]['postdata'])) @@ -839,9 +851,9 @@ class CI_Form_validation { } return ''; } - + $field = $this->_field_data[$field]['postdata']; - + if (is_array($field)) { if ( ! in_array($value, $field)) @@ -856,12 +868,12 @@ class CI_Form_validation { return ''; } } - + return ' checked="checked"'; } - + // -------------------------------------------------------------------- - + /** * Required * @@ -880,9 +892,29 @@ class CI_Form_validation { return ( ! empty($str)); } } - + + // -------------------------------------------------------------------- + + /** + * Performs a Regular Expression match test. + * + * @access public + * @param string + * @param regex + * @return bool + */ + function regex_match($str, $regex) + { + if ( ! preg_match($regex, $str)) + { + return FALSE; + } + + return TRUE; + } + // -------------------------------------------------------------------- - + /** * Match one field to another * @@ -895,16 +927,16 @@ class CI_Form_validation { { if ( ! isset($_POST[$field])) { - return FALSE; + return FALSE; } - + $field = $_POST[$field]; return ($str !== $field) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Minimum Length * @@ -912,7 +944,7 @@ class CI_Form_validation { * @param string * @param value * @return bool - */ + */ function min_length($str, $val) { if (preg_match("/[^0-9]/", $val)) @@ -922,14 +954,14 @@ class CI_Form_validation { if (function_exists('mb_strlen')) { - return (mb_strlen($str) < $val) ? FALSE : TRUE; + return (mb_strlen($str) < $val) ? FALSE : TRUE; } - + return (strlen($str) < $val) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Max Length * @@ -937,7 +969,7 @@ class CI_Form_validation { * @param string * @param value * @return bool - */ + */ function max_length($str, $val) { if (preg_match("/[^0-9]/", $val)) @@ -947,14 +979,14 @@ class CI_Form_validation { if (function_exists('mb_strlen')) { - return (mb_strlen($str) > $val) ? FALSE : TRUE; + return (mb_strlen($str) > $val) ? FALSE : TRUE; } - + return (strlen($str) > $val) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Exact Length * @@ -962,7 +994,7 @@ class CI_Form_validation { * @param string * @param value * @return bool - */ + */ function exact_length($str, $val) { if (preg_match("/[^0-9]/", $val)) @@ -972,42 +1004,42 @@ class CI_Form_validation { if (function_exists('mb_strlen')) { - return (mb_strlen($str) != $val) ? FALSE : TRUE; + return (mb_strlen($str) != $val) ? FALSE : TRUE; } - + return (strlen($str) != $val) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Valid Email * * @access public * @param string * @return bool - */ + */ function valid_email($str) { return ( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE; } // -------------------------------------------------------------------- - + /** * Valid Emails * * @access public * @param string * @return bool - */ + */ function valid_emails($str) { if (strpos($str, ',') === FALSE) { return $this->valid_email(trim($str)); } - + foreach(explode(',', $str) as $email) { if (trim($email) != '' && $this->valid_email(trim($email)) === FALSE) @@ -1015,12 +1047,12 @@ class CI_Form_validation { return FALSE; } } - + return TRUE; } // -------------------------------------------------------------------- - + /** * Validate IP Address * @@ -1034,56 +1066,56 @@ class CI_Form_validation { } // -------------------------------------------------------------------- - + /** * Alpha * * @access public * @param string * @return bool - */ + */ function alpha($str) { return ( ! preg_match("/^([a-z])+$/i", $str)) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Alpha-numeric * * @access public * @param string * @return bool - */ + */ function alpha_numeric($str) { return ( ! preg_match("/^([a-z0-9])+$/i", $str)) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Alpha-numeric with underscores and dashes * * @access public * @param string * @return bool - */ + */ function alpha_dash($str) { return ( ! preg_match("/^([-a-z0-9_-])+$/i", $str)) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Numeric * * @access public * @param string * @return bool - */ + */ function numeric($str) { return (bool)preg_match( '/^[\-+]?[0-9]*\.?[0-9]+$/', $str); @@ -1092,72 +1124,72 @@ class CI_Form_validation { // -------------------------------------------------------------------- - /** - * Is Numeric - * - * @access public - * @param string - * @return bool - */ - function is_numeric($str) - { - return ( ! is_numeric($str)) ? FALSE : TRUE; - } + /** + * Is Numeric + * + * @access public + * @param string + * @return bool + */ + function is_numeric($str) + { + return ( ! is_numeric($str)) ? FALSE : TRUE; + } // -------------------------------------------------------------------- - + /** * Integer * * @access public * @param string * @return bool - */ + */ function integer($str) { return (bool)preg_match( '/^[\-+]?[0-9]+$/', $str); } - + // -------------------------------------------------------------------- - /** - * Is a Natural number (0,1,2,3, etc.) - * - * @access public - * @param string - * @return bool - */ - function is_natural($str) - { - return (bool)preg_match( '/^[0-9]+$/', $str); - } + /** + * Is a Natural number (0,1,2,3, etc.) + * + * @access public + * @param string + * @return bool + */ + function is_natural($str) + { + return (bool)preg_match( '/^[0-9]+$/', $str); + } // -------------------------------------------------------------------- - /** - * Is a Natural number, but not a zero (1,2,3, etc.) - * - * @access public - * @param string - * @return bool - */ + /** + * Is a Natural number, but not a zero (1,2,3, etc.) + * + * @access public + * @param string + * @return bool + */ function is_natural_no_zero($str) - { - if ( ! preg_match( '/^[0-9]+$/', $str)) - { - return FALSE; - } - - if ($str == 0) - { - return FALSE; - } - - return TRUE; - } - + { + if ( ! preg_match( '/^[0-9]+$/', $str)) + { + return FALSE; + } + + if ($str == 0) + { + return FALSE; + } + + return TRUE; + } + // -------------------------------------------------------------------- - + /** * Valid Base64 * @@ -1172,9 +1204,9 @@ class CI_Form_validation { { return (bool) ! preg_match('/[^a-zA-Z0-9\/\+=]/', $str); } - + // -------------------------------------------------------------------- - + /** * Prep data for form * @@ -1193,10 +1225,10 @@ class CI_Form_validation { { $data[$key] = $this->prep_for_form($val); } - + return $data; } - + if ($this->_safe_form_data == FALSE OR $data === '') { return $data; @@ -1204,68 +1236,73 @@ class CI_Form_validation { return str_replace(array("'", '"', '<', '>'), array("'", """, '<', '>'), stripslashes($data)); } - + // -------------------------------------------------------------------- - + /** * Prep URL * * @access public * @param string * @return string - */ + */ function prep_url($str = '') { if ($str == 'http://' OR $str == '') { return ''; } - + if (substr($str, 0, 7) != 'http://' && substr($str, 0, 8) != 'https://') { $str = 'http://'.$str; } - + return $str; } - + // -------------------------------------------------------------------- - + /** * Strip Image Tags * * @access public * @param string * @return string - */ + */ function strip_image_tags($str) { return $this->CI->input->strip_image_tags($str); } - + // -------------------------------------------------------------------- - + /** * XSS Clean * * @access public * @param string * @return string - */ + */ function xss_clean($str) { - return $this->CI->input->xss_clean($str); + if ( ! isset($this->CI->security)) + { + $this->CI->load->library('security'); + } + + return $this->CI->security->xss_clean($str); } - + // -------------------------------------------------------------------- - + /** * Convert PHP tags to entities * * @access public * @param string * @return string - */ + */ function encode_php_tags($str) { return str_replace(array('<?php', '<?PHP', '<?', '?>'), array('<?php', '<?PHP', '<?', '?>'), $str); diff --git a/system/libraries/Ftp.php b/system/libraries/Ftp.php index 16ad9ad43..d7a8b3b02 100644..100755 --- a/system/libraries/Ftp.php +++ b/system/libraries/Ftp.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -40,7 +40,7 @@ class CI_FTP { * * The constructor can be passed an array of config values */ - function CI_FTP($config = array()) + public function __construct($config = array()) { if (count($config) > 0) { @@ -281,6 +281,48 @@ class CI_FTP { // -------------------------------------------------------------------- /** + * Download a file from a remote server to the local server + * + * @access public + * @param string + * @param string + * @param string + * @return bool + */ + function download($rempath, $locpath, $mode = 'auto') + { + if ( ! $this->_is_conn()) + { + return FALSE; + } + + // Set the mode if not specified + if ($mode == 'auto') + { + // Get the file extension so we can set the upload type + $ext = $this->_getext($rempath); + $mode = $this->_settype($ext); + } + + $mode = ($mode == 'ascii') ? FTP_ASCII : FTP_BINARY; + + $result = @ftp_get($this->conn_id, $locpath, $rempath, $mode); + + if ($result === FALSE) + { + if ($this->debug == TRUE) + { + $this->_error('ftp_unable_to_download'); + } + return FALSE; + } + + return TRUE; + } + + // -------------------------------------------------------------------- + + /** * Rename (or move) a file * * @access public @@ -412,7 +454,7 @@ class CI_FTP { * Set file permissions * * @access public - * @param string the file path + * @param string the file path * @param string the permissions * @return bool */ diff --git a/system/libraries/Image_lib.php b/system/libraries/Image_lib.php index 0b29c1fbd..41f9ad393 100644..100755 --- a/system/libraries/Image_lib.php +++ b/system/libraries/Image_lib.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -26,7 +26,7 @@ */ class CI_Image_lib { - var $image_library = 'gd2'; // Can be: imagemagick, netpbm, gd, gd2 + var $image_library = 'gd2'; // Can be: imagemagick, netpbm, gd, gd2 var $library_path = ''; var $dynamic_output = FALSE; // Whether to send to browser or write to disk var $source_image = ''; @@ -36,7 +36,7 @@ class CI_Image_lib { var $quality = '90'; var $create_thumb = FALSE; var $thumb_marker = '_thumb'; - var $maintain_ratio = TRUE; // Whether to maintain aspect ratio when resizing or use hard values + var $maintain_ratio = TRUE; // Whether to maintain aspect ratio when resizing or use hard values var $master_dim = 'auto'; // auto, height, or width. Determines what to use as the master dimension var $rotation_angle = ''; var $x_axis = ''; @@ -54,11 +54,11 @@ class CI_Image_lib { var $wm_hor_alignment = 'C'; // Horizontal alignment: L R C var $wm_padding = 0; // Padding around text var $wm_hor_offset = 0; // Lets you push text to the right - var $wm_vrt_offset = 0; // Lets you push text down + var $wm_vrt_offset = 0; // Lets you push text down var $wm_font_color = '#ffffff'; // Text color var $wm_shadow_color = ''; // Dropshadow color var $wm_shadow_distance = 2; // Dropshadow distance - var $wm_opacity = 50; // Image opacity: 1 - 100 Only works with image + var $wm_opacity = 50; // Image opacity: 1 - 100 Only works with image // Private Vars var $source_folder = ''; @@ -79,11 +79,10 @@ class CI_Image_lib { /** * Constructor * - * @access public * @param string * @return void */ - function CI_Image_lib($props = array()) + public function __construct($props = array()) { if (count($props) > 0) { @@ -147,7 +146,7 @@ class CI_Image_lib { if ($this->source_image == '') { $this->set_error('imglib_source_image_required'); - return FALSE; + return FALSE; } /* @@ -190,7 +189,7 @@ class CI_Image_lib { // Set the Image Properties if ( ! $this->get_image_properties($this->source_folder.$this->source_image)) { - return FALSE; + return FALSE; } /* @@ -400,7 +399,7 @@ class CI_Image_lib { if ($this->rotation_angle == '' OR ! in_array($this->rotation_angle, $degs)) { $this->set_error('imglib_rotation_angle_required'); - return FALSE; + return FALSE; } // Reassign the width and height @@ -455,11 +454,11 @@ class CI_Image_lib { { if ($this->orig_width == $this->width AND $this->orig_height == $this->height) { - if ($this->source_image != $this->new_image) - { + if ($this->source_image != $this->new_image) + { if (@copy($this->full_src_path, $this->full_dst_path)) { - @chmod($this->full_dst_path, DIR_WRITE_MODE); + @chmod($this->full_dst_path, FILE_WRITE_MODE); } } @@ -494,14 +493,14 @@ class CI_Image_lib { return FALSE; } - // Create The Image + // Create The Image // // old conditional which users report cause problems with shared GD libs who report themselves as "2.0 or greater" // it appears that this is no longer the issue that it was in 2004, so we've removed it, retaining it in the comment // below should that ever prove inaccurate. // // if ($this->image_library == 'gd2' AND function_exists('imagecreatetruecolor') AND $v2_override == FALSE) - if ($this->image_library == 'gd2' AND function_exists('imagecreatetruecolor')) + if ($this->image_library == 'gd2' AND function_exists('imagecreatetruecolor')) { $create = 'imagecreatetruecolor'; $copy = 'imagecopyresampled'; @@ -513,6 +512,13 @@ class CI_Image_lib { } $dst_img = $create($this->width, $this->height); + + if ($this->image_type == 3) // png we can actually preserve transparency + { + imagealphablending($dst_img, FALSE); + imagesavealpha($dst_img, TRUE); + } + $copy($dst_img, $src_img, 0, 0, $this->x_axis, $this->y_axis, $this->width, $this->height, $this->orig_width, $this->orig_height); // Show the image @@ -534,7 +540,7 @@ class CI_Image_lib { imagedestroy($src_img); // Set the file to 777 - @chmod($this->full_dst_path, DIR_WRITE_MODE); + @chmod($this->full_dst_path, FILE_WRITE_MODE); return TRUE; } @@ -577,9 +583,9 @@ class CI_Image_lib { { switch ($this->rotation_angle) { - case 'hor' : $angle = '-flop'; + case 'hor' : $angle = '-flop'; break; - case 'vrt' : $angle = '-flip'; + case 'vrt' : $angle = '-flip'; break; default : $angle = '-rotate '.$this->rotation_angle; break; @@ -604,7 +610,7 @@ class CI_Image_lib { } // Set the file to 777 - @chmod($this->full_dst_path, DIR_WRITE_MODE); + @chmod($this->full_dst_path, FILE_WRITE_MODE); return TRUE; } @@ -657,7 +663,7 @@ class CI_Image_lib { break; case 180 : $angle = 'r180'; break; - case 270 : $angle = 'r90'; + case 270 : $angle = 'r90'; break; case 'vrt' : $angle = 'tb'; break; @@ -690,7 +696,7 @@ class CI_Image_lib { // we have to rename the temp file. copy ($this->dest_folder.'netpbm.tmp', $this->full_dst_path); unlink ($this->dest_folder.'netpbm.tmp'); - @chmod($this->full_dst_path, DIR_WRITE_MODE); + @chmod($this->full_dst_path, FILE_WRITE_MODE); return TRUE; } @@ -705,14 +711,6 @@ class CI_Image_lib { */ function image_rotate_gd() { - // Is Image Rotation Supported? - // this function is only supported as of PHP 4.3 - if ( ! function_exists('imagerotate')) - { - $this->set_error('imglib_rotate_unsupported'); - return FALSE; - } - // Create the image handle if ( ! ($src_img = $this->image_create_gd())) { @@ -749,7 +747,7 @@ class CI_Image_lib { // Set the file to 777 - @chmod($this->full_dst_path, DIR_WRITE_MODE); + @chmod($this->full_dst_path, FILE_WRITE_MODE); return true; } @@ -833,7 +831,7 @@ class CI_Image_lib { imagedestroy($src_img); // Set the file to 777 - @chmod($this->full_dst_path, DIR_WRITE_MODE); + @chmod($this->full_dst_path, FILE_WRITE_MODE); return TRUE; } @@ -882,7 +880,7 @@ class CI_Image_lib { $this->get_image_properties(); // Fetch watermark image properties - $props = $this->get_image_properties($this->wm_overlay_path, TRUE); + $props = $this->get_image_properties($this->wm_overlay_path, TRUE); $wm_img_type = $props['image_type']; $wm_width = $props['width']; $wm_height = $props['height']; @@ -937,7 +935,7 @@ class CI_Image_lib { if ($wm_img_type == 3 AND function_exists('imagealphablending')) { @imagealphablending($src_img, TRUE); - } + } // Set RGB values for text and shadow $rgba = imagecolorat($wm_img, $this->wm_x_transp, $this->wm_y_transp); @@ -1208,11 +1206,6 @@ class CI_Image_lib { return FALSE; } - if (phpversion() == '4.4.1') - { - @touch($this->full_dst_path); // PHP 4.4.1 bug #35060 - workaround - } - if ( ! @imagejpeg($resource, $this->full_dst_path, $this->quality)) { $this->set_error('imglib_save_failed'); @@ -1259,7 +1252,7 @@ class CI_Image_lib { switch ($this->image_type) { - case 1 : imagegif($resource); + case 1 : imagegif($resource); break; case 2 : imagejpeg($resource, '', $this->quality); break; @@ -1377,8 +1370,8 @@ class CI_Image_lib { * new variable needs to be known * * $props = array( - * 'width' => $width, - * 'height' => $height, + * 'width' => $width, + * 'height' => $height, * 'new_width' => 40, * 'new_height' => '' * ); @@ -1439,7 +1432,7 @@ class CI_Image_lib { { $ext = strrchr($source_image, '.'); $name = ($ext === FALSE) ? $source_image : substr($source_image, 0, -strlen($ext)); - + return array('ext' => $ext, 'name' => $name); } diff --git a/system/libraries/Input.php b/system/libraries/Input.php deleted file mode 100644 index 396815194..000000000 --- a/system/libraries/Input.php +++ /dev/null @@ -1,1067 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * Input Class - * - * Pre-processes global input data for security - * - * @package CodeIgniter - * @subpackage Libraries - * @category Input - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/libraries/input.html - */ -class CI_Input { - var $use_xss_clean = FALSE; - var $xss_hash = ''; - var $ip_address = FALSE; - var $user_agent = FALSE; - var $allow_get_array = FALSE; - - /* never allowed, string replacement */ - var $never_allowed_str = array( - 'document.cookie' => '[removed]', - 'document.write' => '[removed]', - '.parentNode' => '[removed]', - '.innerHTML' => '[removed]', - 'window.location' => '[removed]', - '-moz-binding' => '[removed]', - '<!--' => '<!--', - '-->' => '-->', - '<![CDATA[' => '<![CDATA[' - ); - /* never allowed, regex replacement */ - var $never_allowed_regex = array( - "javascript\s*:" => '[removed]', - "expression\s*(\(|&\#40;)" => '[removed]', // CSS and IE - "vbscript\s*:" => '[removed]', // IE, surprise! - "Redirect\s+302" => '[removed]' - ); - - /** - * Constructor - * - * Sets whether to globally enable the XSS processing - * and whether to allow the $_GET array - * - * @access public - */ - function CI_Input() - { - log_message('debug', "Input Class Initialized"); - - $CFG =& load_class('Config'); - $this->use_xss_clean = ($CFG->item('global_xss_filtering') === TRUE) ? TRUE : FALSE; - $this->allow_get_array = ($CFG->item('enable_query_strings') === TRUE) ? TRUE : FALSE; - $this->_sanitize_globals(); - } - - // -------------------------------------------------------------------- - - /** - * Sanitize Globals - * - * This function does the following: - * - * Unsets $_GET data (if query strings are not enabled) - * - * Unsets all globals if register_globals is enabled - * - * Standardizes newline characters to \n - * - * @access private - * @return void - */ - function _sanitize_globals() - { - // Would kind of be "wrong" to unset any of these GLOBALS - $protected = array('_SERVER', '_GET', '_POST', '_FILES', '_REQUEST', '_SESSION', '_ENV', 'GLOBALS', 'HTTP_RAW_POST_DATA', - 'system_folder', 'application_folder', 'BM', 'EXT', 'CFG', 'URI', 'RTR', 'OUT', 'IN'); - - // Unset globals for security. - // This is effectively the same as register_globals = off - foreach (array($_GET, $_POST, $_COOKIE, $_SERVER, $_FILES, $_ENV, (isset($_SESSION) && is_array($_SESSION)) ? $_SESSION : array()) as $global) - { - if ( ! is_array($global)) - { - if ( ! in_array($global, $protected)) - { - unset($GLOBALS[$global]); - } - } - else - { - foreach ($global as $key => $val) - { - if ( ! in_array($key, $protected)) - { - unset($GLOBALS[$key]); - } - - if (is_array($val)) - { - foreach($val as $k => $v) - { - if ( ! in_array($k, $protected)) - { - unset($GLOBALS[$k]); - } - } - } - } - } - } - - // Is $_GET data allowed? If not we'll set the $_GET to an empty array - if ($this->allow_get_array == FALSE) - { - $_GET = array(); - } - else - { - $_GET = $this->_clean_input_data($_GET); - } - - // Clean $_POST Data - $_POST = $this->_clean_input_data($_POST); - - // Clean $_COOKIE Data - // Also get rid of specially treated cookies that might be set by a server - // or silly application, that are of no use to a CI application anyway - // but that when present will trip our 'Disallowed Key Characters' alarm - // http://www.ietf.org/rfc/rfc2109.txt - // note that the key names below are single quoted strings, and are not PHP variables - unset($_COOKIE['$Version']); - unset($_COOKIE['$Path']); - unset($_COOKIE['$Domain']); - $_COOKIE = $this->_clean_input_data($_COOKIE); - - log_message('debug', "Global POST and COOKIE data sanitized"); - } - - // -------------------------------------------------------------------- - - /** - * Clean Input Data - * - * This is a helper function. It escapes data and - * standardizes newline characters to \n - * - * @access private - * @param string - * @return string - */ - function _clean_input_data($str) - { - if (is_array($str)) - { - $new_array = array(); - foreach ($str as $key => $val) - { - $new_array[$this->_clean_input_keys($key)] = $this->_clean_input_data($val); - } - return $new_array; - } - - // We strip slashes if magic quotes is on to keep things consistent - if (get_magic_quotes_gpc()) - { - $str = stripslashes($str); - } - - // Should we filter the input data? - if ($this->use_xss_clean === TRUE) - { - $str = $this->xss_clean($str); - } - - // Standardize newlines - if (strpos($str, "\r") !== FALSE) - { - $str = str_replace(array("\r\n", "\r"), "\n", $str); - } - - return $str; - } - - // -------------------------------------------------------------------- - - /** - * Clean Keys - * - * This is a helper function. To prevent malicious users - * from trying to exploit keys we make sure that keys are - * only named with alpha-numeric text and a few other items. - * - * @access private - * @param string - * @return string - */ - function _clean_input_keys($str) - { - if ( ! preg_match("/^[a-z0-9:_\/-]+$/i", $str)) - { - exit('Disallowed Key Characters.'); - } - - return $str; - } - - // -------------------------------------------------------------------- - - /** - * Fetch from array - * - * This is a helper function to retrieve values from global arrays - * - * @access private - * @param array - * @param string - * @param bool - * @return string - */ - function _fetch_from_array(&$array, $index = '', $xss_clean = FALSE) - { - if ( ! isset($array[$index])) - { - return FALSE; - } - - if ($xss_clean === TRUE) - { - return $this->xss_clean($array[$index]); - } - - return $array[$index]; - } - - // -------------------------------------------------------------------- - - /** - * Fetch an item from the GET array - * - * @access public - * @param string - * @param bool - * @return string - */ - function get($index = '', $xss_clean = FALSE) - { - return $this->_fetch_from_array($_GET, $index, $xss_clean); - } - - // -------------------------------------------------------------------- - - /** - * Fetch an item from the POST array - * - * @access public - * @param string - * @param bool - * @return string - */ - function post($index = '', $xss_clean = FALSE) - { - return $this->_fetch_from_array($_POST, $index, $xss_clean); - } - - // -------------------------------------------------------------------- - - /** - * Fetch an item from either the GET array or the POST - * - * @access public - * @param string The index key - * @param bool XSS cleaning - * @return string - */ - function get_post($index = '', $xss_clean = FALSE) - { - if ( ! isset($_POST[$index]) ) - { - return $this->get($index, $xss_clean); - } - else - { - return $this->post($index, $xss_clean); - } - } - - // -------------------------------------------------------------------- - - /** - * Fetch an item from the COOKIE array - * - * @access public - * @param string - * @param bool - * @return string - */ - function cookie($index = '', $xss_clean = FALSE) - { - return $this->_fetch_from_array($_COOKIE, $index, $xss_clean); - } - - // -------------------------------------------------------------------- - - /** - * Fetch an item from the SERVER array - * - * @access public - * @param string - * @param bool - * @return string - */ - function server($index = '', $xss_clean = FALSE) - { - return $this->_fetch_from_array($_SERVER, $index, $xss_clean); - } - - // -------------------------------------------------------------------- - - /** - * Fetch the IP Address - * - * @access public - * @return string - */ - function ip_address() - { - if ($this->ip_address !== FALSE) - { - return $this->ip_address; - } - - if (config_item('proxy_ips') != '' && $this->server('HTTP_X_FORWARDED_FOR') && $this->server('REMOTE_ADDR')) - { - $proxies = preg_split('/[\s,]/', config_item('proxy_ips'), -1, PREG_SPLIT_NO_EMPTY); - $proxies = is_array($proxies) ? $proxies : array($proxies); - - $this->ip_address = in_array($_SERVER['REMOTE_ADDR'], $proxies) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']; - } - elseif ($this->server('REMOTE_ADDR') AND $this->server('HTTP_CLIENT_IP')) - { - $this->ip_address = $_SERVER['HTTP_CLIENT_IP']; - } - elseif ($this->server('REMOTE_ADDR')) - { - $this->ip_address = $_SERVER['REMOTE_ADDR']; - } - elseif ($this->server('HTTP_CLIENT_IP')) - { - $this->ip_address = $_SERVER['HTTP_CLIENT_IP']; - } - elseif ($this->server('HTTP_X_FORWARDED_FOR')) - { - $this->ip_address = $_SERVER['HTTP_X_FORWARDED_FOR']; - } - - if ($this->ip_address === FALSE) - { - $this->ip_address = '0.0.0.0'; - return $this->ip_address; - } - - if (strstr($this->ip_address, ',')) - { - $x = explode(',', $this->ip_address); - $this->ip_address = trim(end($x)); - } - - if ( ! $this->valid_ip($this->ip_address)) - { - $this->ip_address = '0.0.0.0'; - } - - return $this->ip_address; - } - - // -------------------------------------------------------------------- - - /** - * Validate IP Address - * - * Updated version suggested by Geert De Deckere - * - * @access public - * @param string - * @return string - */ - function valid_ip($ip) - { - $ip_segments = explode('.', $ip); - - // Always 4 segments needed - if (count($ip_segments) != 4) - { - return FALSE; - } - // IP can not start with 0 - if ($ip_segments[0][0] == '0') - { - return FALSE; - } - // Check each segment - foreach ($ip_segments as $segment) - { - // IP segments must be digits and can not be - // longer than 3 digits or greater then 255 - if ($segment == '' OR preg_match("/[^0-9]/", $segment) OR $segment > 255 OR strlen($segment) > 3) - { - return FALSE; - } - } - - return TRUE; - } - - // -------------------------------------------------------------------- - - /** - * User Agent - * - * @access public - * @return string - */ - function user_agent() - { - if ($this->user_agent !== FALSE) - { - return $this->user_agent; - } - - $this->user_agent = ( ! isset($_SERVER['HTTP_USER_AGENT'])) ? FALSE : $_SERVER['HTTP_USER_AGENT']; - - return $this->user_agent; - } - - // -------------------------------------------------------------------- - - /** - * Filename Security - * - * @access public - * @param string - * @return string - */ - function filename_security($str) - { - $bad = array( - "../", - "./", - "<!--", - "-->", - "<", - ">", - "'", - '"', - '&', - '$', - '#', - '{', - '}', - '[', - ']', - '=', - ';', - '?', - "%20", - "%22", - "%3c", // < - "%253c", // < - "%3e", // > - "%0e", // > - "%28", // ( - "%29", // ) - "%2528", // ( - "%26", // & - "%24", // $ - "%3f", // ? - "%3b", // ; - "%3d" // = - ); - - return stripslashes(str_replace($bad, '', $str)); - } - - // -------------------------------------------------------------------- - - /** - * XSS Clean - * - * Sanitizes data so that Cross Site Scripting Hacks can be - * prevented. This function does a fair amount of work but - * it is extremely thorough, designed to prevent even the - * most obscure XSS attempts. Nothing is ever 100% foolproof, - * of course, but I haven't been able to get anything passed - * the filter. - * - * Note: This function should only be used to deal with data - * upon submission. It's not something that should - * be used for general runtime processing. - * - * This function was based in part on some code and ideas I - * got from Bitflux: http://blog.bitflux.ch/wiki/XSS_Prevention - * - * To help develop this script I used this great list of - * vulnerabilities along with a few other hacks I've - * harvested from examining vulnerabilities in other programs: - * http://ha.ckers.org/xss.html - * - * @access public - * @param string - * @return string - */ - function xss_clean($str, $is_image = FALSE) - { - /* - * Is the string an array? - * - */ - if (is_array($str)) - { - while (list($key) = each($str)) - { - $str[$key] = $this->xss_clean($str[$key]); - } - - return $str; - } - - /* - * Remove Invisible Characters - */ - $str = $this->_remove_invisible_characters($str); - - /* - * Protect GET variables in URLs - */ - - // 901119URL5918AMP18930PROTECT8198 - - $str = preg_replace('|\&([a-z\_0-9]+)\=([a-z\_0-9]+)|i', $this->xss_hash()."\\1=\\2", $str); - - /* - * Validate standard character entities - * - * Add a semicolon if missing. We do this to enable - * the conversion of entities to ASCII later. - * - */ - $str = preg_replace('#(&\#?[0-9a-z]{2,})([\x00-\x20])*;?#i', "\\1;\\2", $str); - - /* - * Validate UTF16 two byte encoding (x00) - * - * Just as above, adds a semicolon if missing. - * - */ - $str = preg_replace('#(&\#x?)([0-9A-F]+);?#i',"\\1\\2;",$str); - - /* - * Un-Protect GET variables in URLs - */ - $str = str_replace($this->xss_hash(), '&', $str); - - /* - * URL Decode - * - * Just in case stuff like this is submitted: - * - * <a href="http://%77%77%77%2E%67%6F%6F%67%6C%65%2E%63%6F%6D">Google</a> - * - * Note: Use rawurldecode() so it does not remove plus signs - * - */ - $str = rawurldecode($str); - - /* - * Convert character entities to ASCII - * - * This permits our tests below to work reliably. - * We only convert entities that are within tags since - * these are the ones that will pose security problems. - * - */ - - $str = preg_replace_callback("/[a-z]+=([\'\"]).*?\\1/si", array($this, '_convert_attribute'), $str); - - $str = preg_replace_callback("/<\w+.*?(?=>|<|$)/si", array($this, '_html_entity_decode_callback'), $str); - - /* - * Remove Invisible Characters Again! - */ - $str = $this->_remove_invisible_characters($str); - - /* - * Convert all tabs to spaces - * - * This prevents strings like this: ja vascript - * NOTE: we deal with spaces between characters later. - * NOTE: preg_replace was found to be amazingly slow here on large blocks of data, - * so we use str_replace. - * - */ - - if (strpos($str, "\t") !== FALSE) - { - $str = str_replace("\t", ' ', $str); - } - - /* - * Capture converted string for later comparison - */ - $converted_string = $str; - - /* - * Not Allowed Under Any Conditions - */ - - foreach ($this->never_allowed_str as $key => $val) - { - $str = str_replace($key, $val, $str); - } - - foreach ($this->never_allowed_regex as $key => $val) - { - $str = preg_replace("#".$key."#i", $val, $str); - } - - /* - * Makes PHP tags safe - * - * Note: XML tags are inadvertently replaced too: - * - * <?xml - * - * But it doesn't seem to pose a problem. - * - */ - if ($is_image === TRUE) - { - // Images have a tendency to have the PHP short opening and closing tags every so often - // so we skip those and only do the long opening tags. - $str = preg_replace('/<\?(php)/i', "<?\\1", $str); - } - else - { - $str = str_replace(array('<?', '?'.'>'), array('<?', '?>'), $str); - } - - /* - * Compact any exploded words - * - * This corrects words like: j a v a s c r i p t - * These words are compacted back to their correct state. - * - */ - $words = array('javascript', 'expression', 'vbscript', 'script', 'applet', 'alert', 'document', 'write', 'cookie', 'window'); - foreach ($words as $word) - { - $temp = ''; - - for ($i = 0, $wordlen = strlen($word); $i < $wordlen; $i++) - { - $temp .= substr($word, $i, 1)."\s*"; - } - - // We only want to do this when it is followed by a non-word character - // That way valid stuff like "dealer to" does not become "dealerto" - $str = preg_replace_callback('#('.substr($temp, 0, -3).')(\W)#is', array($this, '_compact_exploded_words'), $str); - } - - /* - * Remove disallowed Javascript in links or img tags - * We used to do some version comparisons and use of stripos for PHP5, but it is dog slow compared - * to these simplified non-capturing preg_match(), especially if the pattern exists in the string - */ - do - { - $original = $str; - - if (preg_match("/<a/i", $str)) - { - $str = preg_replace_callback("#<a\s+([^>]*?)(>|$)#si", array($this, '_js_link_removal'), $str); - } - - if (preg_match("/<img/i", $str)) - { - $str = preg_replace_callback("#<img\s+([^>]*?)(\s?/?>|$)#si", array($this, '_js_img_removal'), $str); - } - - if (preg_match("/script/i", $str) OR preg_match("/xss/i", $str)) - { - $str = preg_replace("#<(/*)(script|xss)(.*?)\>#si", '[removed]', $str); - } - } - while($original != $str); - - unset($original); - - /* - * Remove JavaScript Event Handlers - * - * Note: This code is a little blunt. It removes - * the event handler and anything up to the closing >, - * but it's unlikely to be a problem. - * - */ - $event_handlers = array('[^a-z_\-]on\w*','xmlns'); - - if ($is_image === TRUE) - { - /* - * Adobe Photoshop puts XML metadata into JFIF images, including namespacing, - * so we have to allow this for images. -Paul - */ - unset($event_handlers[array_search('xmlns', $event_handlers)]); - } - - $str = preg_replace("#<([^><]+?)(".implode('|', $event_handlers).")(\s*=\s*[^><]*)([><]*)#i", "<\\1\\4", $str); - - /* - * Sanitize naughty HTML elements - * - * If a tag containing any of the words in the list - * below is found, the tag gets converted to entities. - * - * So this: <blink> - * Becomes: <blink> - * - */ - $naughty = 'alert|applet|audio|basefont|base|behavior|bgsound|blink|body|embed|expression|form|frameset|frame|head|html|ilayer|iframe|input|isindex|layer|link|meta|object|plaintext|style|script|textarea|title|video|xml|xss'; - $str = preg_replace_callback('#<(/*\s*)('.$naughty.')([^><]*)([><]*)#is', array($this, '_sanitize_naughty_html'), $str); - - /* - * Sanitize naughty scripting elements - * - * Similar to above, only instead of looking for - * tags it looks for PHP and JavaScript commands - * that are disallowed. Rather than removing the - * code, it simply converts the parenthesis to entities - * rendering the code un-executable. - * - * For example: eval('some code') - * Becomes: eval('some code') - * - */ - $str = preg_replace('#(alert|cmd|passthru|eval|exec|expression|system|fopen|fsockopen|file|file_get_contents|readfile|unlink)(\s*)\((.*?)\)#si', "\\1\\2(\\3)", $str); - - /* - * Final clean up - * - * This adds a bit of extra precaution in case - * something got through the above filters - * - */ - foreach ($this->never_allowed_str as $key => $val) - { - $str = str_replace($key, $val, $str); - } - - foreach ($this->never_allowed_regex as $key => $val) - { - $str = preg_replace("#".$key."#i", $val, $str); - } - - /* - * Images are Handled in a Special Way - * - Essentially, we want to know that after all of the character conversion is done whether - * any unwanted, likely XSS, code was found. If not, we return TRUE, as the image is clean. - * However, if the string post-conversion does not matched the string post-removal of XSS, - * then it fails, as there was unwanted XSS code found and removed/changed during processing. - */ - - if ($is_image === TRUE) - { - if ($str == $converted_string) - { - return TRUE; - } - else - { - return FALSE; - } - } - - log_message('debug', "XSS Filtering completed"); - return $str; - } - - // -------------------------------------------------------------------- - - /** - * Random Hash for protecting URLs - * - * @access public - * @return string - */ - function xss_hash() - { - if ($this->xss_hash == '') - { - if (phpversion() >= 4.2) - mt_srand(); - else - mt_srand(hexdec(substr(md5(microtime()), -8)) & 0x7fffffff); - - $this->xss_hash = md5(time() + mt_rand(0, 1999999999)); - } - - return $this->xss_hash; - } - - // -------------------------------------------------------------------- - - /** - * Remove Invisible Characters - * - * This prevents sandwiching null characters - * between ascii characters, like Java\0script. - * - * @access public - * @param string - * @return string - */ - function _remove_invisible_characters($str) - { - static $non_displayables; - - if ( ! isset($non_displayables)) - { - // every control character except newline (dec 10), carriage return (dec 13), and horizontal tab (dec 09), - $non_displayables = array( - '/%0[0-8bcef]/', // url encoded 00-08, 11, 12, 14, 15 - '/%1[0-9a-f]/', // url encoded 16-31 - '/[\x00-\x08]/', // 00-08 - '/\x0b/', '/\x0c/', // 11, 12 - '/[\x0e-\x1f]/' // 14-31 - ); - } - - do - { - $cleaned = $str; - $str = preg_replace($non_displayables, '', $str); - } - while ($cleaned != $str); - - return $str; - } - - // -------------------------------------------------------------------- - - /** - * Compact Exploded Words - * - * Callback function for xss_clean() to remove whitespace from - * things like j a v a s c r i p t - * - * @access public - * @param type - * @return type - */ - function _compact_exploded_words($matches) - { - return preg_replace('/\s+/s', '', $matches[1]).$matches[2]; - } - - // -------------------------------------------------------------------- - - /** - * Sanitize Naughty HTML - * - * Callback function for xss_clean() to remove naughty HTML elements - * - * @access private - * @param array - * @return string - */ - function _sanitize_naughty_html($matches) - { - // encode opening brace - $str = '<'.$matches[1].$matches[2].$matches[3]; - - // encode captured opening or closing brace to prevent recursive vectors - $str .= str_replace(array('>', '<'), array('>', '<'), $matches[4]); - - return $str; - } - - // -------------------------------------------------------------------- - - /** - * JS Link Removal - * - * Callback function for xss_clean() to sanitize links - * This limits the PCRE backtracks, making it more performance friendly - * and prevents PREG_BACKTRACK_LIMIT_ERROR from being triggered in - * PHP 5.2+ on link-heavy strings - * - * @access private - * @param array - * @return string - */ - function _js_link_removal($match) - { - $attributes = $this->_filter_attributes(str_replace(array('<', '>'), '', $match[1])); - return str_replace($match[1], preg_replace("#href=.*?(alert\(|alert&\#40;|javascript\:|charset\=|window\.|document\.|\.cookie|<script|<xss|base64\s*,)#si", "", $attributes), $match[0]); - } - - /** - * JS Image Removal - * - * Callback function for xss_clean() to sanitize image tags - * This limits the PCRE backtracks, making it more performance friendly - * and prevents PREG_BACKTRACK_LIMIT_ERROR from being triggered in - * PHP 5.2+ on image tag heavy strings - * - * @access private - * @param array - * @return string - */ - function _js_img_removal($match) - { - $attributes = $this->_filter_attributes(str_replace(array('<', '>'), '', $match[1])); - return str_replace($match[1], preg_replace("#src=.*?(alert\(|alert&\#40;|javascript\:|charset\=|window\.|document\.|\.cookie|<script|<xss|base64\s*,)#si", "", $attributes), $match[0]); - } - - // -------------------------------------------------------------------- - - /** - * Attribute Conversion - * - * Used as a callback for XSS Clean - * - * @access public - * @param array - * @return string - */ - function _convert_attribute($match) - { - return str_replace(array('>', '<', '\\'), array('>', '<', '\\\\'), $match[0]); - } - - // -------------------------------------------------------------------- - - /** - * HTML Entity Decode Callback - * - * Used as a callback for XSS Clean - * - * @access public - * @param array - * @return string - */ - function _html_entity_decode_callback($match) - { - $CFG =& load_class('Config'); - $charset = $CFG->item('charset'); - - return $this->_html_entity_decode($match[0], strtoupper($charset)); - } - - // -------------------------------------------------------------------- - - /** - * HTML Entities Decode - * - * This function is a replacement for html_entity_decode() - * - * In some versions of PHP the native function does not work - * when UTF-8 is the specified character set, so this gives us - * a work-around. More info here: - * http://bugs.php.net/bug.php?id=25670 - * - * @access private - * @param string - * @param string - * @return string - */ - /* ------------------------------------------------- - /* Replacement for html_entity_decode() - /* -------------------------------------------------*/ - - /* - NOTE: html_entity_decode() has a bug in some PHP versions when UTF-8 is the - character set, and the PHP developers said they were not back porting the - fix to versions other than PHP 5.x. - */ - function _html_entity_decode($str, $charset='UTF-8') - { - if (stristr($str, '&') === FALSE) return $str; - - // The reason we are not using html_entity_decode() by itself is because - // while it is not technically correct to leave out the semicolon - // at the end of an entity most browsers will still interpret the entity - // correctly. html_entity_decode() does not convert entities without - // semicolons, so we are left with our own little solution here. Bummer. - - if (function_exists('html_entity_decode') && (strtolower($charset) != 'utf-8' OR version_compare(phpversion(), '5.0.0', '>='))) - { - $str = html_entity_decode($str, ENT_COMPAT, $charset); - $str = preg_replace('~&#x(0*[0-9a-f]{2,5})~ei', 'chr(hexdec("\\1"))', $str); - return preg_replace('~&#([0-9]{2,4})~e', 'chr(\\1)', $str); - } - - // Numeric Entities - $str = preg_replace('~&#x(0*[0-9a-f]{2,5});{0,1}~ei', 'chr(hexdec("\\1"))', $str); - $str = preg_replace('~&#([0-9]{2,4});{0,1}~e', 'chr(\\1)', $str); - - // Literal Entities - Slightly slow so we do another check - if (stristr($str, '&') === FALSE) - { - $str = strtr($str, array_flip(get_html_translation_table(HTML_ENTITIES))); - } - - return $str; - } - - // -------------------------------------------------------------------- - - /** - * Filter Attributes - * - * Filters tag attributes for consistency and safety - * - * @access public - * @param string - * @return string - */ - function _filter_attributes($str) - { - $out = ''; - - if (preg_match_all('#\s*[a-z\-]+\s*=\s*(\042|\047)([^\\1]*?)\\1#is', $str, $matches)) - { - foreach ($matches[0] as $match) - { - $out .= preg_replace("#/\*.*?\*/#s", '', $match); - } - } - - return $out; - } - - // -------------------------------------------------------------------- - -} -// END Input class - -/* End of file Input.php */ -/* Location: ./system/libraries/Input.php */
\ No newline at end of file diff --git a/system/libraries/Javascript.php b/system/libraries/Javascript.php new file mode 100755 index 000000000..167859abd --- /dev/null +++ b/system/libraries/Javascript.php @@ -0,0 +1,871 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * Javascript Class + * + * @package CodeIgniter + * @subpackage Libraries + * @category Javascript + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/libraries/javascript.html + */ +class CI_Javascript { + + var $_javascript_location = 'js'; + + public function __construct($params = array()) + { + $defaults = array('js_library_driver' => 'jquery', 'autoload' => TRUE); + + foreach ($defaults as $key => $val) + { + if (isset($params[$key]) && $params[$key] !== "") + { + $defaults[$key] = $params[$key]; + } + } + + extract($defaults); + + $this->CI =& get_instance(); + + // load the requested js library + $this->CI->load->library('javascript/'.$js_library_driver, array('autoload' => $autoload)); + // make js to refer to current library + $this->js =& $this->CI->$js_library_driver; + + log_message('debug', "Javascript Class Initialized and loaded. Driver used: $js_library_driver"); + } + + // -------------------------------------------------------------------- + // Event Code + // -------------------------------------------------------------------- + + /** + * Blur + * + * Outputs a javascript library blur event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function blur($element = 'this', $js = '') + { + return $this->js->_blur($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Change + * + * Outputs a javascript library change event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function change($element = 'this', $js = '') + { + return $this->js->_change($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Click + * + * Outputs a javascript library click event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @param boolean whether or not to return false + * @return string + */ + function click($element = 'this', $js = '', $ret_false = TRUE) + { + return $this->js->_click($element, $js, $ret_false); + } + + // -------------------------------------------------------------------- + + /** + * Double Click + * + * Outputs a javascript library dblclick event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function dblclick($element = 'this', $js = '') + { + return $this->js->_dblclick($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Error + * + * Outputs a javascript library error event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function error($element = 'this', $js = '') + { + return $this->js->_error($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Focus + * + * Outputs a javascript library focus event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function focus($element = 'this', $js = '') + { + return $this->js->__add_event($focus, $js); + } + + // -------------------------------------------------------------------- + + /** + * Hover + * + * Outputs a javascript library hover event + * + * @access public + * @param string - element + * @param string - Javascript code for mouse over + * @param string - Javascript code for mouse out + * @return string + */ + function hover($element = 'this', $over, $out) + { + return $this->js->__hover($element, $over, $out); + } + + // -------------------------------------------------------------------- + + /** + * Keydown + * + * Outputs a javascript library keydown event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function keydown($element = 'this', $js = '') + { + return $this->js->_keydown($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Keyup + * + * Outputs a javascript library keydown event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function keyup($element = 'this', $js = '') + { + return $this->js->_keyup($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Load + * + * Outputs a javascript library load event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function load($element = 'this', $js = '') + { + return $this->js->_load($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Mousedown + * + * Outputs a javascript library mousedown event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function mousedown($element = 'this', $js = '') + { + return $this->js->_mousedown($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Mouse Out + * + * Outputs a javascript library mouseout event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function mouseout($element = 'this', $js = '') + { + return $this->js->_mouseout($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Mouse Over + * + * Outputs a javascript library mouseover event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function mouseover($element = 'this', $js = '') + { + return $this->js->_mouseover($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Mouseup + * + * Outputs a javascript library mouseup event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function mouseup($element = 'this', $js = '') + { + return $this->js->_mouseup($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Output + * + * Outputs the called javascript to the screen + * + * @access public + * @param string The code to output + * @return string + */ + function output($js) + { + return $this->js->_output($js); + } + + // -------------------------------------------------------------------- + + /** + * Ready + * + * Outputs a javascript library mouseup event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function ready($js) + { + return $this->js->_document_ready($js); + } + + // -------------------------------------------------------------------- + + /** + * Resize + * + * Outputs a javascript library resize event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function resize($element = 'this', $js = '') + { + return $this->js->_resize($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Scroll + * + * Outputs a javascript library scroll event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function scroll($element = 'this', $js = '') + { + return $this->js->_scroll($element, $js); + } + + // -------------------------------------------------------------------- + + /** + * Unload + * + * Outputs a javascript library unload event + * + * @access public + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function unload($element = 'this', $js = '') + { + return $this->js->_unload($element, $js); + } + + // -------------------------------------------------------------------- + // Effects + // -------------------------------------------------------------------- + + + /** + * Add Class + * + * Outputs a javascript library addClass event + * + * @access public + * @param string - element + * @param string - Class to add + * @return string + */ + function addClass($element = 'this', $class = '') + { + return $this->js->_addClass($element, $class); + } + + // -------------------------------------------------------------------- + + /** + * Animate + * + * Outputs a javascript library animate event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function animate($element = 'this', $params = array(), $speed = '', $extra = '') + { + return $this->js->_animate($element, $params, $speed, $extra); + } + + // -------------------------------------------------------------------- + + /** + * Fade In + * + * Outputs a javascript library hide event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function fadeIn($element = 'this', $speed = '', $callback = '') + { + return $this->js->_fadeIn($element, $speed, $callback); + } + + // -------------------------------------------------------------------- + + /** + * Fade Out + * + * Outputs a javascript library hide event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function fadeOut($element = 'this', $speed = '', $callback = '') + { + return $this->js->_fadeOut($element, $speed, $callback); + } + // -------------------------------------------------------------------- + + /** + * Slide Up + * + * Outputs a javascript library slideUp event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function slideUp($element = 'this', $speed = '', $callback = '') + { + return $this->js->_slideUp($element, $speed, $callback); + + } + + // -------------------------------------------------------------------- + + /** + * Remove Class + * + * Outputs a javascript library removeClass event + * + * @access public + * @param string - element + * @param string - Class to add + * @return string + */ + function removeClass($element = 'this', $class = '') + { + return $this->js->_removeClass($element, $class); + } + + // -------------------------------------------------------------------- + + /** + * Slide Down + * + * Outputs a javascript library slideDown event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function slideDown($element = 'this', $speed = '', $callback = '') + { + return $this->js->_slideDown($element, $speed, $callback); + } + + // -------------------------------------------------------------------- + + /** + * Slide Toggle + * + * Outputs a javascript library slideToggle event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function slideToggle($element = 'this', $speed = '', $callback = '') + { + return $this->js->_slideToggle($element, $speed, $callback); + + } + + // -------------------------------------------------------------------- + + /** + * Hide + * + * Outputs a javascript library hide action + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function hide($element = 'this', $speed = '', $callback = '') + { + return $this->js->_hide($element, $speed, $callback); + } + + // -------------------------------------------------------------------- + + /** + * Toggle + * + * Outputs a javascript library toggle event + * + * @access public + * @param string - element + * @return string + */ + function toggle($element = 'this') + { + return $this->js->_toggle($element); + + } + + // -------------------------------------------------------------------- + + /** + * Toggle Class + * + * Outputs a javascript library toggle class event + * + * @access public + * @param string - element + * @return string + */ + function toggleClass($element = 'this', $class='') + { + return $this->js->_toggleClass($element, $class); + } + + // -------------------------------------------------------------------- + + /** + * Show + * + * Outputs a javascript library show event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function show($element = 'this', $speed = '', $callback = '') + { + return $this->js->_show($element, $speed, $callback); + } + + + // -------------------------------------------------------------------- + + /** + * Compile + * + * gather together all script needing to be output + * + * @access public + * @param string The element to attach the event to + * @return string + */ + function compile($view_var = 'script_foot', $script_tags = TRUE) + { + $this->js->_compile($view_var, $script_tags); + } + + /** + * Clear Compile + * + * Clears any previous javascript collected for output + * + * @access public + * @return void + */ + function clear_compile() + { + $this->js->_clear_compile(); + } + + // -------------------------------------------------------------------- + + /** + * External + * + * Outputs a <script> tag with the source as an external js file + * + * @access public + * @param string The element to attach the event to + * @return string + */ + function external($external_file = '', $relative = FALSE) + { + if ($external_file !== '') + { + $this->_javascript_location = $external_file; + } + else + { + if ($this->CI->config->item('javascript_location') != '') + { + $this->_javascript_location = $this->CI->config->item('javascript_location'); + } + } + + if ($relative === TRUE OR strncmp($external_file, 'http://', 7) == 0 OR strncmp($external_file, 'https://', 8) == 0) + { + $str = $this->_open_script($external_file); + } + elseif (strpos($this->_javascript_location, 'http://') !== FALSE) + { + $str = $this->_open_script($this->_javascript_location.$external_file); + } + else + { + $str = $this->_open_script($this->CI->config->slash_item('base_url').$this->_javascript_location.$external_file); + } + + $str .= $this->_close_script(); + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Inline + * + * Outputs a <script> tag + * + * @access public + * @param string The element to attach the event to + * @param boolean If a CDATA section should be added + * @return string + */ + function inline($script, $cdata = TRUE) + { + $str = $this->_open_script(); + $str .= ($cdata) ? "\n// <![CDATA[\n{$script}\n// ]]>\n" : "\n{$script}\n"; + $str .= $this->_close_script(); + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Open Script + * + * Outputs an opening <script> + * + * @access private + * @param string + * @return string + */ + function _open_script($src = '') + { + $str = '<script type="text/javascript" charset="'.strtolower($this->CI->config->item('charset')).'"'; + $str .= ($src == '') ? '>' : ' src="'.$src.'">'; + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Close Script + * + * Outputs an closing </script> + * + * @access private + * @param string + * @return string + */ + function _close_script($extra = "\n") + { + return "</script>$extra"; + } + + + // -------------------------------------------------------------------- + // -------------------------------------------------------------------- + // AJAX-Y STUFF - still a testbed + // -------------------------------------------------------------------- + // -------------------------------------------------------------------- + + /** + * Update + * + * Outputs a javascript library slideDown event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function update($element = 'this', $speed = '', $callback = '') + { + return $this->js->_updater($element, $speed, $callback); + } + + // -------------------------------------------------------------------- + + /** + * Generate JSON + * + * Can be passed a database result or associative array and returns a JSON formatted string + * + * @param mixed result set or array + * @param bool match array types (defaults to objects) + * @return string a json formatted string + */ + function generate_json($result = NULL, $match_array_type = FALSE) + { + // JSON data can optionally be passed to this function + // either as a database result object or an array, or a user supplied array + if ( ! is_null($result)) + { + if (is_object($result)) + { + $json_result = $result->result_array(); + } + elseif (is_array($result)) + { + $json_result = $result; + } + else + { + return $this->_prep_args($result); + } + } + else + { + return 'null'; + } + + $json = array(); + $_is_assoc = TRUE; + + if ( ! is_array($json_result) AND empty($json_result)) + { + show_error("Generate JSON Failed - Illegal key, value pair."); + } + elseif ($match_array_type) + { + $_is_assoc = $this->_is_associative_array($json_result); + } + + foreach ($json_result as $k => $v) + { + if ($_is_assoc) + { + $json[] = $this->_prep_args($k, TRUE).':'.$this->generate_json($v, $match_array_type); + } + else + { + $json[] = $this->generate_json($v, $match_array_type); + } + } + + $json = implode(',', $json); + + return $_is_assoc ? "{".$json."}" : "[".$json."]"; + + } + + // -------------------------------------------------------------------- + + /** + * Is associative array + * + * Checks for an associative array + * + * @access public + * @param type + * @return type + */ + function _is_associative_array($arr) + { + foreach (array_keys($arr) as $key => $val) + { + if ($key !== $val) + { + return TRUE; + } + } + + return FALSE; + } + + // -------------------------------------------------------------------- + + /** + * Prep Args + * + * Ensures a standard json value and escapes values + * + * @access public + * @param type + * @return type + */ + function _prep_args($result, $is_key = FALSE) + { + if (is_null($result)) + { + return 'null'; + } + elseif (is_bool($result)) + { + return ($result === TRUE) ? 'true' : 'false'; + } + elseif (is_string($result) OR $is_key) + { + return '"'.str_replace(array('\\', "\t", "\n", "\r", '"'), array('\\\\', '\\t', '\\n', "\\r", '\"'), $result).'"'; + } + elseif (is_scalar($result)) + { + return $result; + } + } + + // -------------------------------------------------------------------- +} +// END Javascript Class + +/* End of file Javascript.php */ +/* Location: ./system/libraries/Javascript.php */
\ No newline at end of file diff --git a/system/libraries/Log.php b/system/libraries/Log.php index 4e6b3bc39..fb2c5a49b 100644..100755 --- a/system/libraries/Log.php +++ b/system/libraries/Log.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -26,87 +26,84 @@ */ class CI_Log { - var $log_path; - var $_threshold = 1; - var $_date_fmt = 'Y-m-d H:i:s'; - var $_enabled = TRUE; - var $_levels = array('ERROR' => '1', 'DEBUG' => '2', 'INFO' => '3', 'ALL' => '4'); + protected $_log_path; + protected $_threshold = 1; + protected $_date_fmt = 'Y-m-d H:i:s'; + protected $_enabled = TRUE; + protected $_levels = array('ERROR' => '1', 'DEBUG' => '2', 'INFO' => '3', 'ALL' => '4'); /** * Constructor - * - * @access public */ - function CI_Log() + public function __construct() { $config =& get_config(); - - $this->log_path = ($config['log_path'] != '') ? $config['log_path'] : BASEPATH.'logs/'; - - if ( ! is_dir($this->log_path) OR ! is_really_writable($this->log_path)) + + $this->_log_path = ($config['log_path'] != '') ? $config['log_path'] : APPPATH.'logs/'; + + if ( ! is_dir($this->_log_path) OR ! is_really_writable($this->_log_path)) { $this->_enabled = FALSE; } - + if (is_numeric($config['log_threshold'])) { $this->_threshold = $config['log_threshold']; } - + if ($config['log_date_format'] != '') { $this->_date_fmt = $config['log_date_format']; } } - + // -------------------------------------------------------------------- - + /** * Write Log File * * Generally this function will be called using the global log_message() function * - * @access public * @param string the error level * @param string the error message * @param bool whether the error is a native PHP error * @return bool - */ - function write_log($level = 'error', $msg, $php_error = FALSE) - { + */ + public function write_log($level = 'error', $msg, $php_error = FALSE) + { if ($this->_enabled === FALSE) { return FALSE; } - + $level = strtoupper($level); - + if ( ! isset($this->_levels[$level]) OR ($this->_levels[$level] > $this->_threshold)) { return FALSE; } - - $filepath = $this->log_path.'log-'.date('Y-m-d').EXT; + + $filepath = $this->_log_path.'log-'.date('Y-m-d').EXT; $message = ''; - + if ( ! file_exists($filepath)) { $message .= "<"."?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); ?".">\n\n"; } - + if ( ! $fp = @fopen($filepath, FOPEN_WRITE_CREATE)) { return FALSE; } $message .= $level.' '.(($level == 'INFO') ? ' -' : '-').' '.date($this->_date_fmt). ' --> '.$msg."\n"; - - flock($fp, LOCK_EX); + + flock($fp, LOCK_EX); fwrite($fp, $message); flock($fp, LOCK_UN); fclose($fp); - - @chmod($filepath, FILE_WRITE_MODE); + + @chmod($filepath, FILE_WRITE_MODE); return TRUE; } diff --git a/system/libraries/Model.php b/system/libraries/Model.php deleted file mode 100644 index e9c2d24d1..000000000 --- a/system/libraries/Model.php +++ /dev/null @@ -1,83 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * CodeIgniter Model Class - * - * @package CodeIgniter - * @subpackage Libraries - * @category Libraries - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/libraries/config.html - */ -class Model { - - var $_parent_name = ''; - - /** - * Constructor - * - * @access public - */ - function Model() - { - // If the magic __get() or __set() methods are used in a Model references can't be used. - $this->_assign_libraries( (method_exists($this, '__get') OR method_exists($this, '__set')) ? FALSE : TRUE ); - - // We don't want to assign the model object to itself when using the - // assign_libraries function below so we'll grab the name of the model parent - $this->_parent_name = ucfirst(get_class($this)); - - log_message('debug', "Model Class Initialized"); - } - - /** - * Assign Libraries - * - * Creates local references to all currently instantiated objects - * so that any syntax that can be legally used in a controller - * can be used within models. - * - * @access private - */ - function _assign_libraries($use_reference = TRUE) - { - $CI =& get_instance(); - foreach (array_keys(get_object_vars($CI)) as $key) - { - if ( ! isset($this->$key) AND $key != $this->_parent_name) - { - // In some cases using references can cause - // problems so we'll conditionally use them - if ($use_reference == TRUE) - { - $this->$key = NULL; // Needed to prevent reference errors with some configurations - $this->$key =& $CI->$key; - } - else - { - $this->$key = $CI->$key; - } - } - } - } - -} -// END Model Class - -/* End of file Model.php */ -/* Location: ./system/libraries/Model.php */
\ No newline at end of file diff --git a/system/libraries/Pagination.php b/system/libraries/Pagination.php index d6321f41c..1113f862f 100644..100755 --- a/system/libraries/Pagination.php +++ b/system/libraries/Pagination.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -27,11 +27,14 @@ class CI_Pagination { var $base_url = ''; // The page we are linking to - var $total_rows = ''; // Total number of items (database results) - var $per_page = 10; // Max number of items you want shown per page + var $prefix = ''; // A custom prefix added to the path. + var $suffix = ''; // A custom suffix added to the path. + + var $total_rows = ''; // Total number of items (database results) + var $per_page = 10; // Max number of items you want shown per page var $num_links = 2; // Number of "digit" links to show before/after the currently viewed page - var $cur_page = 0; // The current page being viewed - var $first_link = '‹ First'; + var $cur_page = 0; // The current page being viewed + var $first_link = '‹ First'; var $next_link = '>'; var $prev_link = '<'; var $last_link = 'Last ›'; @@ -42,6 +45,7 @@ class CI_Pagination { var $first_tag_close = ' '; var $last_tag_open = ' '; var $last_tag_close = ''; + var $first_url = ''; // Alternative URL for the First Page. var $cur_tag_open = ' <strong>'; var $cur_tag_close = '</strong>'; var $next_tag_open = ' '; @@ -52,6 +56,8 @@ class CI_Pagination { var $num_tag_close = ''; var $page_query_string = FALSE; var $query_string_segment = 'per_page'; + var $display_pages = TRUE; + var $anchor_class = ''; /** * Constructor @@ -59,13 +65,18 @@ class CI_Pagination { * @access public * @param array initialization parameters */ - function CI_Pagination($params = array()) + public function __construct($params = array()) { if (count($params) > 0) { $this->initialize($params); } + if ($this->anchor_class != '') + { + $this->anchor_class = 'class="'.$this->anchor_class.'" '; + } + log_message('debug', "Pagination Class Initialized"); } @@ -179,53 +190,77 @@ class CI_Pagination { $this->base_url = rtrim($this->base_url, '/') .'/'; } - // And here we go... + // And here we go... $output = ''; // Render the "First" link - if ($this->cur_page > ($this->num_links + 1)) + if ($this->first_link !== FALSE AND $this->cur_page > ($this->num_links + 1)) { - $output .= $this->first_tag_open.'<a href="'.$this->base_url.'">'.$this->first_link.'</a>'.$this->first_tag_close; + $first_url = ($this->first_url == '') ? $this->base_url : $this->first_url; + $output .= $this->first_tag_open.'<a '.$this->anchor_class.'href="'.$first_url.'">'.$this->first_link.'</a>'.$this->first_tag_close; } // Render the "previous" link - if ($this->cur_page != 1) + if ($this->prev_link !== FALSE AND $this->cur_page != 1) { $i = $uri_page_number - $this->per_page; - if ($i == 0) $i = ''; - $output .= $this->prev_tag_open.'<a href="'.$this->base_url.$i.'">'.$this->prev_link.'</a>'.$this->prev_tag_close; + + if ($i == 0 && $this->first_url != '') + { + $output .= $this->prev_tag_open.'<a '.$this->anchor_class.'href="'.$this->first_url.'">'.$this->prev_link.'</a>'.$this->prev_tag_close; + } + else + { + $i = ($i == 0) ? '' : $this->prefix.$i.$this->suffix; + $output .= $this->prev_tag_open.'<a '.$this->anchor_class.'href="'.$this->base_url.$i.'">'.$this->prev_link.'</a>'.$this->prev_tag_close; + } + } - // Write the digit links - for ($loop = $start -1; $loop <= $end; $loop++) + // Render the pages + if ($this->display_pages !== FALSE) { - $i = ($loop * $this->per_page) - $this->per_page; - - if ($i >= 0) + // Write the digit links + for ($loop = $start -1; $loop <= $end; $loop++) { - if ($this->cur_page == $loop) - { - $output .= $this->cur_tag_open.$loop.$this->cur_tag_close; // Current page - } - else + $i = ($loop * $this->per_page) - $this->per_page; + + if ($i >= 0) { - $n = ($i == 0) ? '' : $i; - $output .= $this->num_tag_open.'<a href="'.$this->base_url.$n.'">'.$loop.'</a>'.$this->num_tag_close; + if ($this->cur_page == $loop) + { + $output .= $this->cur_tag_open.$loop.$this->cur_tag_close; // Current page + } + else + { + $n = ($i == 0) ? '' : $i; + + if ($n == '' && $this->first_url != '') + { + $output .= $this->num_tag_open.'<a '.$this->anchor_class.'href="'.$this->first_url.'">'.$loop.'</a>'.$this->num_tag_close; + } + else + { + $n = ($n == '') ? '' : $this->prefix.$n.$this->suffix; + + $output .= $this->num_tag_open.'<a '.$this->anchor_class.'href="'.$this->base_url.$n.'">'.$loop.'</a>'.$this->num_tag_close; + } + } } } } // Render the "next" link - if ($this->cur_page < $num_pages) + if ($this->next_link !== FALSE AND $this->cur_page < $num_pages) { - $output .= $this->next_tag_open.'<a href="'.$this->base_url.($this->cur_page * $this->per_page).'">'.$this->next_link.'</a>'.$this->next_tag_close; + $output .= $this->next_tag_open.'<a '.$this->anchor_class.'href="'.$this->base_url.$this->prefix.($this->cur_page * $this->per_page).$this->suffix.'">'.$this->next_link.'</a>'.$this->next_tag_close; } // Render the "Last" link - if (($this->cur_page + $this->num_links) < $num_pages) + if ($this->last_link !== FALSE AND ($this->cur_page + $this->num_links) < $num_pages) { $i = (($num_pages * $this->per_page) - $this->per_page); - $output .= $this->last_tag_open.'<a href="'.$this->base_url.$i.'">'.$this->last_link.'</a>'.$this->last_tag_close; + $output .= $this->last_tag_open.'<a '.$this->anchor_class.'href="'.$this->base_url.$this->prefix.$i.$this->suffix.'">'.$this->last_link.'</a>'.$this->last_tag_close; } // Kill double slashes. Note: Sometimes we can end up with a double slash diff --git a/system/libraries/Parser.php b/system/libraries/Parser.php index 399b14b2d..d223da020 100644..100755 --- a/system/libraries/Parser.php +++ b/system/libraries/Parser.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -29,11 +29,11 @@ class CI_Parser { var $l_delim = '{'; var $r_delim = '}'; var $object; - + /** * Parse a template * - * Parses pseudo-variables contained in the specified template, + * Parses pseudo-variables contained in the specified template view, * replacing them with the data in the second param * * @access public @@ -42,38 +42,77 @@ class CI_Parser { * @param bool * @return string */ - function parse($template, $data, $return = FALSE) + public function parse($template, $data, $return = FALSE) { $CI =& get_instance(); $template = $CI->load->view($template, $data, TRUE); - + + return $this->_parse($template, $data, $return); + } + + // -------------------------------------------------------------------- + + /** + * Parse a String + * + * Parses pseudo-variables contained in the specified string, + * replacing them with the data in the second param + * + * @access public + * @param string + * @param array + * @param bool + * @return string + */ + function parse_string($template, $data, $return = FALSE) + { + return $this->_parse($template, $data, $return); + } + + // -------------------------------------------------------------------- + + /** + * Parse a template + * + * Parses pseudo-variables contained in the specified template, + * replacing them with the data in the second param + * + * @access public + * @param string + * @param array + * @param bool + * @return string + */ + function _parse($template, $data, $return = FALSE) + { if ($template == '') { return FALSE; } - + foreach ($data as $key => $val) { if (is_array($val)) { - $template = $this->_parse_pair($key, $val, $template); + $template = $this->_parse_pair($key, $val, $template); } else { $template = $this->_parse_single($key, (string)$val, $template); } } - + if ($return == FALSE) { + $CI =& get_instance(); $CI->output->append_output($template); } - + return $template; } - + // -------------------------------------------------------------------- - + /** * Set the left/right variable delimiters * @@ -87,9 +126,9 @@ class CI_Parser { $this->l_delim = $l; $this->r_delim = $r; } - + // -------------------------------------------------------------------- - + /** * Parse a single key/value * @@ -103,9 +142,9 @@ class CI_Parser { { return str_replace($this->l_delim.$key.$this->r_delim, $val, $string); } - + // -------------------------------------------------------------------- - + /** * Parse a tag pair * @@ -118,7 +157,7 @@ class CI_Parser { * @return string */ function _parse_pair($variable, $data, $string) - { + { if (FALSE === ($match = $this->_match_pair($string, $variable))) { return $string; @@ -139,15 +178,15 @@ class CI_Parser { $temp = $this->_parse_pair($key, $val, $temp); } } - + $str .= $temp; } - + return str_replace($match['0'], $str, $string); } - + // -------------------------------------------------------------------- - + /** * Matches a variable pair * @@ -158,11 +197,11 @@ class CI_Parser { */ function _match_pair($string, $variable) { - if ( ! preg_match("|".$this->l_delim . $variable . $this->r_delim."(.+?)".$this->l_delim . '/' . $variable . $this->r_delim."|s", $string, $match)) + if ( ! preg_match("|" . preg_quote($this->l_delim) . $variable . preg_quote($this->r_delim) . "(.+?)". preg_quote($this->l_delim) . '/' . $variable . preg_quote($this->r_delim) . "|s", $string, $match)) { return FALSE; } - + return $match; } @@ -170,4 +209,4 @@ class CI_Parser { // END Parser Class /* End of file Parser.php */ -/* Location: ./system/libraries/Parser.php */
\ No newline at end of file +/* Location: ./system/libraries/Parser.php */ diff --git a/system/libraries/Profiler.php b/system/libraries/Profiler.php index 84f7871b5..6587eae0b 100644..100755 --- a/system/libraries/Profiler.php +++ b/system/libraries/Profiler.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -33,13 +33,57 @@ class CI_Profiler { var $CI; - - function CI_Profiler() - { - $this->CI =& get_instance(); - $this->CI->load->language('profiler'); - } - + + protected $_available_sections = array( + 'benchmarks', + 'get', + 'memory_usage', + 'post', + 'uri_string', + 'controller_info', + 'queries', + 'http_headers', + 'config' + ); + + public function __construct($config = array()) + { + $this->CI =& get_instance(); + $this->CI->load->language('profiler'); + + // default all sections to display + foreach ($this->_available_sections as $section) + { + if ( ! isset($config[$section])) + { + $this->_compile_{$section} = TRUE; + } + } + + $this->set_sections($config); + } + + // -------------------------------------------------------------------- + + /** + * Set Sections + * + * Sets the private _compile_* properties to enable/disable Profiler sections + * + * @param mixed + * @return void + */ + public function set_sections($config) + { + foreach ($config as $method => $enable) + { + if (in_array($method, $this->_available_sections)) + { + $this->_compile_{$method} = ($enable !== FALSE) ? TRUE : FALSE; + } + } + } + // -------------------------------------------------------------------- /** @@ -50,57 +94,55 @@ class CI_Profiler { * and "_end" respectively). It then compiles the execution times for * all points and returns it as an array * - * @access private * @return array */ - function _compile_benchmarks() - { - $profile = array(); - foreach ($this->CI->benchmark->marker as $key => $val) - { - // We match the "end" marker so that the list ends - // up in the order that it was defined - if (preg_match("/(.+?)_end/i", $key, $match)) - { - if (isset($this->CI->benchmark->marker[$match[1].'_end']) AND isset($this->CI->benchmark->marker[$match[1].'_start'])) - { - $profile[$match[1]] = $this->CI->benchmark->elapsed_time($match[1].'_start', $key); - } - } - } + protected function _compile_benchmarks() + { + $profile = array(); + foreach ($this->CI->benchmark->marker as $key => $val) + { + // We match the "end" marker so that the list ends + // up in the order that it was defined + if (preg_match("/(.+?)_end/i", $key, $match)) + { + if (isset($this->CI->benchmark->marker[$match[1].'_end']) AND isset($this->CI->benchmark->marker[$match[1].'_start'])) + { + $profile[$match[1]] = $this->CI->benchmark->elapsed_time($match[1].'_start', $key); + } + } + } // Build a table containing the profile data. // Note: At some point we should turn this into a template that can // be modified. We also might want to make this data available to be logged - + $output = "\n\n"; - $output .= '<fieldset style="border:1px solid #990000;padding:6px 10px 10px 10px;margin:0 0 20px 0;background-color:#eee">'; + $output .= '<fieldset id="ci_profiler_benchmarks" style="border:1px solid #900;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= "\n"; + $output .= '<legend style="color:#900;"> '.$this->CI->lang->line('profiler_benchmarks').' </legend>'; $output .= "\n"; - $output .= '<legend style="color:#990000;"> '.$this->CI->lang->line('profiler_benchmarks').' </legend>'; - $output .= "\n"; - $output .= "\n\n<table cellpadding='4' cellspacing='1' border='0' width='100%'>\n"; - + $output .= "\n\n<table style='width:100%'>\n"; + foreach ($profile as $key => $val) { $key = ucwords(str_replace(array('_', '-'), ' ', $key)); - $output .= "<tr><td width='50%' style='color:#000;font-weight:bold;background-color:#ddd;'>".$key." </td><td width='50%' style='color:#990000;font-weight:normal;background-color:#ddd;'>".$val."</td></tr>\n"; + $output .= "<tr><td style='padding:5px;width:50%;color:#000;font-weight:bold;background-color:#ddd;'>".$key." </td><td style='padding:5px;width:50%;color:#900;font-weight:normal;background-color:#ddd;'>".$val."</td></tr>\n"; } - + $output .= "</table>\n"; $output .= "</fieldset>"; - - return $output; - } - + + return $output; + } + // -------------------------------------------------------------------- /** * Compile Queries * - * @access private * @return string - */ - function _compile_queries() + */ + protected function _compile_queries() { $dbs = array(); @@ -112,100 +154,99 @@ class CI_Profiler { $dbs[] = $CI_object; } } - + if (count($dbs) == 0) { $output = "\n\n"; - $output .= '<fieldset style="border:1px solid #0000FF;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= '<fieldset id="ci_profiler_queries" style="border:1px solid #0000FF;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; $output .= "\n"; $output .= '<legend style="color:#0000FF;"> '.$this->CI->lang->line('profiler_queries').' </legend>'; - $output .= "\n"; - $output .= "\n\n<table cellpadding='4' cellspacing='1' border='0' width='100%'>\n"; - $output .="<tr><td width='100%' style='color:#0000FF;font-weight:normal;background-color:#eee;'>".$this->CI->lang->line('profiler_no_db')."</td></tr>\n"; + $output .= "\n"; + $output .= "\n\n<table style='border:none; width:100%'>\n"; + $output .="<tr><td style='width:100%;color:#0000FF;font-weight:normal;background-color:#eee;padding:5px'>".$this->CI->lang->line('profiler_no_db')."</td></tr>\n"; $output .= "</table>\n"; $output .= "</fieldset>"; - + return $output; } - + // Load the text helper so we can highlight the SQL $this->CI->load->helper('text'); // Key words we want bolded - $highlight = array('SELECT', 'DISTINCT', 'FROM', 'WHERE', 'AND', 'LEFT JOIN', 'ORDER BY', 'GROUP BY', 'LIMIT', 'INSERT', 'INTO', 'VALUES', 'UPDATE', 'OR', 'HAVING', 'OFFSET', 'NOT IN', 'IN', 'LIKE', 'NOT LIKE', 'COUNT', 'MAX', 'MIN', 'ON', 'AS', 'AVG', 'SUM', '(', ')'); + $highlight = array('SELECT', 'DISTINCT', 'FROM', 'WHERE', 'AND', 'LEFT JOIN', 'ORDER BY', 'GROUP BY', 'LIMIT', 'INSERT', 'INTO', 'VALUES', 'UPDATE', 'OR ', 'HAVING', 'OFFSET', 'NOT IN', 'IN', 'LIKE', 'NOT LIKE', 'COUNT', 'MAX', 'MIN', 'ON', 'AS', 'AVG', 'SUM', '(', ')'); $output = "\n\n"; - + foreach ($dbs as $db) { $output .= '<fieldset style="border:1px solid #0000FF;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; $output .= "\n"; - $output .= '<legend style="color:#0000FF;"> '.$this->CI->lang->line('profiler_database').': '.$db->database.' '.$this->CI->lang->line('profiler_queries').': '.count($this->CI->db->queries).' </legend>'; - $output .= "\n"; - $output .= "\n\n<table cellpadding='4' cellspacing='1' border='0' width='100%'>\n"; - + $output .= '<legend style="color:#0000FF;"> '.$this->CI->lang->line('profiler_database').': '.$db->database.' '.$this->CI->lang->line('profiler_queries').': '.count($db->queries).' </legend>'; + $output .= "\n"; + $output .= "\n\n<table style='width:100%;'>\n"; + if (count($db->queries) == 0) { - $output .= "<tr><td width='100%' style='color:#0000FF;font-weight:normal;background-color:#eee;'>".$this->CI->lang->line('profiler_no_queries')."</td></tr>\n"; + $output .= "<tr><td style='width:100%;color:#0000FF;font-weight:normal;background-color:#eee;padding:5px;'>".$this->CI->lang->line('profiler_no_queries')."</td></tr>\n"; } else - { + { foreach ($db->queries as $key => $val) - { + { $time = number_format($db->query_times[$key], 4); $val = highlight_code($val, ENT_QUOTES); - + foreach ($highlight as $bold) { - $val = str_replace($bold, '<strong>'.$bold.'</strong>', $val); + $val = str_replace($bold, '<strong>'.$bold.'</strong>', $val); } - - $output .= "<tr><td width='1%' valign='top' style='color:#990000;font-weight:normal;background-color:#ddd;'>".$time." </td><td style='color:#000;font-weight:normal;background-color:#ddd;'>".$val."</td></tr>\n"; + + $output .= "<tr><td style='padding:5px; vertical-align: top;width:1%;color:#900;font-weight:normal;background-color:#ddd;'>".$time." </td><td style='padding:5px; color:#000;font-weight:normal;background-color:#ddd;'>".$val."</td></tr>\n"; } } - + $output .= "</table>\n"; $output .= "</fieldset>"; - + } - + return $output; } - + // -------------------------------------------------------------------- /** * Compile $_GET Data * - * @access private * @return string - */ - function _compile_get() - { + */ + protected function _compile_get() + { $output = "\n\n"; - $output .= '<fieldset style="border:1px solid #cd6e00;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= '<fieldset id="ci_profiler_get" style="border:1px solid #cd6e00;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; $output .= "\n"; $output .= '<legend style="color:#cd6e00;"> '.$this->CI->lang->line('profiler_get_data').' </legend>'; $output .= "\n"; - + if (count($_GET) == 0) { $output .= "<div style='color:#cd6e00;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->lang->line('profiler_no_get')."</div>"; } else { - $output .= "\n\n<table cellpadding='4' cellspacing='1' border='0' width='100%'>\n"; - + $output .= "\n\n<table style='width:100%; border:none'>\n"; + foreach ($_GET as $key => $val) { if ( ! is_numeric($key)) { $key = "'".$key."'"; } - - $output .= "<tr><td width='50%' style='color:#000;background-color:#ddd;'>$_GET[".$key."] </td><td width='50%' style='color:#cd6e00;font-weight:normal;background-color:#ddd;'>"; + + $output .= "<tr><td style='width:50%;color:#000;background-color:#ddd;padding:5px'>$_GET[".$key."] </td><td style='width:50%;padding:5px;color:#cd6e00;font-weight:normal;background-color:#ddd;'>"; if (is_array($val)) { $output .= "<pre>" . htmlspecialchars(stripslashes(print_r($val, true))) . "</pre>"; @@ -216,49 +257,48 @@ class CI_Profiler { } $output .= "</td></tr>\n"; } - + $output .= "</table>\n"; } $output .= "</fieldset>"; - return $output; + return $output; } - + // -------------------------------------------------------------------- - + /** * Compile $_POST Data * - * @access private * @return string - */ - function _compile_post() - { + */ + protected function _compile_post() + { $output = "\n\n"; - $output .= '<fieldset style="border:1px solid #009900;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= '<fieldset id="ci_profiler_post" style="border:1px solid #009900;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; $output .= "\n"; $output .= '<legend style="color:#009900;"> '.$this->CI->lang->line('profiler_post_data').' </legend>'; $output .= "\n"; - + if (count($_POST) == 0) { $output .= "<div style='color:#009900;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->lang->line('profiler_no_post')."</div>"; } else { - $output .= "\n\n<table cellpadding='4' cellspacing='1' border='0' width='100%'>\n"; - + $output .= "\n\n<table style='width:100%'>\n"; + foreach ($_POST as $key => $val) { if ( ! is_numeric($key)) { $key = "'".$key."'"; } - - $output .= "<tr><td width='50%' style='color:#000;background-color:#ddd;'>$_POST[".$key."] </td><td width='50%' style='color:#009900;font-weight:normal;background-color:#ddd;'>"; + + $output .= "<tr><td style='width:50%;padding:5px;color:#000;background-color:#ddd;'>$_POST[".$key."] </td><td style='width:50%;padding:5px;color:#009900;font-weight:normal;background-color:#ddd;'>"; if (is_array($val)) { - $output .= "<pre>" . htmlspecialchars(stripslashes(print_r($val, true))) . "</pre>"; + $output .= "<pre>" . htmlspecialchars(stripslashes(print_r($val, TRUE))) . "</pre>"; } else { @@ -266,118 +306,188 @@ class CI_Profiler { } $output .= "</td></tr>\n"; } - + $output .= "</table>\n"; } $output .= "</fieldset>"; - return $output; + return $output; } - + // -------------------------------------------------------------------- - + /** * Show query string * - * @access private * @return string - */ - function _compile_uri_string() - { + */ + protected function _compile_uri_string() + { $output = "\n\n"; - $output .= '<fieldset style="border:1px solid #000;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= '<fieldset id="ci_profiler_uri_string" style="border:1px solid #000;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; $output .= "\n"; $output .= '<legend style="color:#000;"> '.$this->CI->lang->line('profiler_uri_string').' </legend>'; $output .= "\n"; - + if ($this->CI->uri->uri_string == '') { $output .= "<div style='color:#000;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->lang->line('profiler_no_uri')."</div>"; } else { - $output .= "<div style='color:#000;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->uri->uri_string."</div>"; + $output .= "<div style='color:#000;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->uri->uri_string."</div>"; } - + $output .= "</fieldset>"; - return $output; + return $output; } // -------------------------------------------------------------------- - + /** * Show the controller and function that were called * - * @access private * @return string - */ - function _compile_controller_info() - { + */ + protected function _compile_controller_info() + { $output = "\n\n"; - $output .= '<fieldset style="border:1px solid #995300;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= '<fieldset id="ci_profiler_controller_info" style="border:1px solid #995300;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; $output .= "\n"; $output .= '<legend style="color:#995300;"> '.$this->CI->lang->line('profiler_controller_info').' </legend>'; $output .= "\n"; - - $output .= "<div style='color:#995300;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->router->fetch_class()."/".$this->CI->router->fetch_method()."</div>"; - + $output .= "<div style='color:#995300;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->router->fetch_class()."/".$this->CI->router->fetch_method()."</div>"; + $output .= "</fieldset>"; - return $output; + return $output; } + // -------------------------------------------------------------------- - + /** * Compile memory usage * * Display total used memory * - * @access public * @return string */ - function _compile_memory_usage() + protected function _compile_memory_usage() { $output = "\n\n"; - $output .= '<fieldset style="border:1px solid #5a0099;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= '<fieldset id="ci_profiler_memory_usage" style="border:1px solid #5a0099;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; $output .= "\n"; $output .= '<legend style="color:#5a0099;"> '.$this->CI->lang->line('profiler_memory_usage').' </legend>'; $output .= "\n"; - + if (function_exists('memory_get_usage') && ($usage = memory_get_usage()) != '') { $output .= "<div style='color:#5a0099;font-weight:normal;padding:4px 0 4px 0'>".number_format($usage).' bytes</div>'; } else { - $output .= "<div style='color:#5a0099;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->lang->line('profiler_no_memory_usage')."</div>"; + $output .= "<div style='color:#5a0099;font-weight:normal;padding:4px 0 4px 0'>".$this->CI->lang->line('profiler_no_memory_usage')."</div>"; + } + + $output .= "</fieldset>"; + + return $output; + } + + // -------------------------------------------------------------------- + + /** + * Compile header information + * + * Lists HTTP headers + * + * @return string + */ + protected function _compile_http_headers() + { + $output = "\n\n"; + $output .= '<fieldset id="ci_profiler_http_headers" style="border:1px solid #000;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= "\n"; + $output .= '<legend style="color:#000;"> '.$this->CI->lang->line('profiler_headers').' </legend>'; + $output .= "\n"; + + $output .= "\n\n<table style='width:100%'>\n"; + + foreach(array('HTTP_ACCEPT', 'HTTP_USER_AGENT', 'HTTP_CONNECTION', 'SERVER_PORT', 'SERVER_NAME', 'REMOTE_ADDR', 'SERVER_SOFTWARE', 'HTTP_ACCEPT_LANGUAGE', 'SCRIPT_NAME', 'REQUEST_METHOD',' HTTP_HOST', 'REMOTE_HOST', 'CONTENT_TYPE', 'SERVER_PROTOCOL', 'QUERY_STRING', 'HTTP_ACCEPT_ENCODING', 'HTTP_X_FORWARDED_FOR') as $header) + { + $val = (isset($_SERVER[$header])) ? $_SERVER[$header] : ''; + $output .= "<tr><td style='vertical-align: top;width:50%;padding:5px;color:#900;background-color:#ddd;'>".$header." </td><td style='width:50%;padding:5px;color:#000;background-color:#ddd;'>".$val."</td></tr>\n"; } - + + $output .= "</table>\n"; + $output .= "</fieldset>"; + + return $output; + } + + // -------------------------------------------------------------------- + + /** + * Compile config information + * + * Lists developer config variables + * + * @return string + */ + protected function _compile_config() + { + $output = "\n\n"; + $output .= '<fieldset id="ci_profiler_config" style="border:1px solid #000;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">'; + $output .= "\n"; + $output .= '<legend style="color:#000;"> '.$this->CI->lang->line('profiler_config').' </legend>'; + $output .= "\n"; + + $output .= "\n\n<table style='width:100%'>\n"; + + foreach($this->CI->config->config as $config=>$val) + { + if (is_array($val)) + { + $val = print_r($val, TRUE); + } + + $output .= "<tr><td style='padding:5px; vertical-align: top;color:#900;background-color:#ddd;'>".$config." </td><td style='padding:5px; color:#000;background-color:#ddd;'>".htmlspecialchars($val)."</td></tr>\n"; + } + + $output .= "</table>\n"; $output .= "</fieldset>"; return $output; } // -------------------------------------------------------------------- - + /** * Run the Profiler * - * @access private * @return string - */ - function run() + */ + public function run() { $output = "<div id='codeigniter_profiler' style='clear:both;background-color:#fff;padding:10px;'>"; + $fields_displayed = 0; - $output .= $this->_compile_uri_string(); - $output .= $this->_compile_controller_info(); - $output .= $this->_compile_memory_usage(); - $output .= $this->_compile_benchmarks(); - $output .= $this->_compile_get(); - $output .= $this->_compile_post(); - $output .= $this->_compile_queries(); + foreach ($this->_available_sections as $section) + { + if ($this->_compile_{$section} !== FALSE) + { + $func = "_compile_{$section}"; + $output .= $this->{$func}(); + $fields_displayed++; + } + } + + if ($fields_displayed == 0) + { + $output .= '<p style="border:1px solid #5a0099;padding:10px;margin:20px 0;background-color:#eee">'.$this->CI->lang->line('profiler_no_profiles').'</p>'; + } $output .= '</div>'; diff --git a/system/libraries/Security.php b/system/libraries/Security.php new file mode 100755 index 000000000..ba64c7326 --- /dev/null +++ b/system/libraries/Security.php @@ -0,0 +1,737 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); +/** + * CodeIgniter + * + * An open source application development framework for PHP 5.1.6 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://codeigniter.com/user_guide/license.html + * @link http://codeigniter.com + * @since Version 1.0 + * @filesource + */ + +// ------------------------------------------------------------------------ + +/** + * Security Class + * + * @package CodeIgniter + * @subpackage Libraries + * @category Security + * @author ExpressionEngine Dev Team + * @link http://codeigniter.com/user_guide/libraries/sessions.html + */ +class CI_Security { + + public $xss_hash = ''; + public $csrf_hash = ''; + public $csrf_expire = 7200; // Two hours (in seconds) + public $csrf_token_name = 'ci_csrf_token'; + public $csrf_cookie_name = 'ci_csrf_token'; + + /* never allowed, string replacement */ + public $never_allowed_str = array( + 'document.cookie' => '[removed]', + 'document.write' => '[removed]', + '.parentNode' => '[removed]', + '.innerHTML' => '[removed]', + 'window.location' => '[removed]', + '-moz-binding' => '[removed]', + '<!--' => '<!--', + '-->' => '-->', + '<![CDATA[' => '<![CDATA[' + ); + /* never allowed, regex replacement */ + public $never_allowed_regex = array( + "javascript\s*:" => '[removed]', + "expression\s*(\(|&\#40;)" => '[removed]', // CSS and IE + "vbscript\s*:" => '[removed]', // IE, surprise! + "Redirect\s+302" => '[removed]' + ); + + public function __construct() + { + $this->csrf_token_name = (config_item('csrf_token_name')) ? config_item('csrf_token_name') : 'csrf_token_name'; + $this->csrf_cookie_name = (config_item('csrf_cookie_name')) ? config_item('csrf_cookie_name') : 'csrf_cookie_name'; + $this->csrf_expire = (config_item('csrf_expire')) ? config_item('csrf_expire') : 7200; + + // Append application specific cookie prefix to token name + $this->csrf_cookie_name = (config_item('cookie_prefix')) ? config_item('cookie_prefix').$this->csrf_token_name : $this->csrf_token_name; + + // Set the CSRF hash + $this->_csrf_set_hash(); + + log_message('debug', "Security Class Initialized"); + } + + // -------------------------------------------------------------------- + + /** + * Verify Cross Site Request Forgery Protection + * + * @access public + * @return null + */ + public function csrf_verify() + { + // If no POST data exists we will set the CSRF cookie + if (count($_POST) == 0) + { + return $this->csrf_set_cookie(); + } + + // Do the tokens exist in both the _POST and _COOKIE arrays? + if ( ! isset($_POST[$this->csrf_token_name]) OR ! isset($_COOKIE[$this->csrf_cookie_name])) + { + $this->csrf_show_error(); + } + + // Do the tokens match? + if ($_POST[$this->csrf_token_name] != $_COOKIE[$this->csrf_cookie_name]) + { + $this->csrf_show_error(); + } + + // We kill this since we're done and we don't want to polute the _POST array + unset($_POST[$this->csrf_token_name]); + + // Nothing should last forever + unset($_COOKIE[$this->csrf_cookie_name]); + $this->_csrf_set_hash(); + $this->csrf_set_cookie(); + + log_message('debug', "CSRF token verified "); + } + + // -------------------------------------------------------------------- + + /** + * Set Cross Site Request Forgery Protection Cookie + * + * @access public + * @return null + */ + public function csrf_set_cookie() + { + $expire = time() + $this->csrf_expire; + + setcookie($this->csrf_cookie_name, $this->csrf_hash, $expire, config_item('cookie_path'), config_item('cookie_domain'), 0); + + log_message('debug', "CRSF cookie Set"); + } + + // -------------------------------------------------------------------- + + /** + * Set Cross Site Request Forgery Protection Cookie + * + * @access private + * @return null + */ + private function _csrf_set_hash() + { + if ($this->csrf_hash == '') + { + // If the cookie exists we will use it's value. We don't necessarily want to regenerate it with + // each page load since a page could contain embedded sub-pages causing this feature to fail + if (isset($_COOKIE[$this->csrf_cookie_name]) AND $_COOKIE[$this->csrf_cookie_name] != '') + { + $this->csrf_hash = $_COOKIE[$this->csrf_cookie_name]; + } + else + { + $this->csrf_hash = md5(uniqid(rand(), TRUE)); + } + } + + return $this->csrf_hash; + } + + // -------------------------------------------------------------------- + + /** + * Show CSRF Error + * + * @access public + * @return null + */ + public function csrf_show_error() + { + show_error('The action you have requested is not allowed.'); + } + + // -------------------------------------------------------------------- + + /** + * XSS Clean + * + * Sanitizes data so that Cross Site Scripting Hacks can be + * prevented. This function does a fair amount of work but + * it is extremely thorough, designed to prevent even the + * most obscure XSS attempts. Nothing is ever 100% foolproof, + * of course, but I haven't been able to get anything passed + * the filter. + * + * Note: This function should only be used to deal with data + * upon submission. It's not something that should + * be used for general runtime processing. + * + * This function was based in part on some code and ideas I + * got from Bitflux: http://channel.bitflux.ch/wiki/XSS_Prevention + * + * To help develop this script I used this great list of + * vulnerabilities along with a few other hacks I've + * harvested from examining vulnerabilities in other programs: + * http://ha.ckers.org/xss.html + * + * @access public + * @param mixed string or array + * @return string + */ + public function xss_clean($str, $is_image = FALSE) + { + /* + * Is the string an array? + * + */ + if (is_array($str)) + { + while (list($key) = each($str)) + { + $str[$key] = $this->xss_clean($str[$key]); + } + + return $str; + } + + /* + * Remove Invisible Characters + */ + $str = remove_invisible_characters($str); + + /* + * Protect GET variables in URLs + */ + + // 901119URL5918AMP18930PROTECT8198 + + $str = preg_replace('|\&([a-z\_0-9\-]+)\=([a-z\_0-9\-]+)|i', $this->xss_hash()."\\1=\\2", $str); + + /* + * Validate standard character entities + * + * Add a semicolon if missing. We do this to enable + * the conversion of entities to ASCII later. + * + */ + $str = preg_replace('#(&\#?[0-9a-z]{2,})([\x00-\x20])*;?#i', "\\1;\\2", $str); + + /* + * Validate UTF16 two byte encoding (x00) + * + * Just as above, adds a semicolon if missing. + * + */ + $str = preg_replace('#(&\#x?)([0-9A-F]+);?#i',"\\1\\2;",$str); + + /* + * Un-Protect GET variables in URLs + */ + $str = str_replace($this->xss_hash(), '&', $str); + + /* + * URL Decode + * + * Just in case stuff like this is submitted: + * + * <a href="http://%77%77%77%2E%67%6F%6F%67%6C%65%2E%63%6F%6D">Google</a> + * + * Note: Use rawurldecode() so it does not remove plus signs + * + */ + $str = rawurldecode($str); + + /* + * Convert character entities to ASCII + * + * This permits our tests below to work reliably. + * We only convert entities that are within tags since + * these are the ones that will pose security problems. + * + */ + + $str = preg_replace_callback("/[a-z]+=([\'\"]).*?\\1/si", array($this, '_convert_attribute'), $str); + + $str = preg_replace_callback("/<\w+.*?(?=>|<|$)/si", array($this, '_decode_entity'), $str); + + /* + * Remove Invisible Characters Again! + */ + $str = remove_invisible_characters($str); + + /* + * Convert all tabs to spaces + * + * This prevents strings like this: ja vascript + * NOTE: we deal with spaces between characters later. + * NOTE: preg_replace was found to be amazingly slow here on large blocks of data, + * so we use str_replace. + * + */ + + if (strpos($str, "\t") !== FALSE) + { + $str = str_replace("\t", ' ', $str); + } + + /* + * Capture converted string for later comparison + */ + $converted_string = $str; + + /* + * Not Allowed Under Any Conditions + */ + + foreach ($this->never_allowed_str as $key => $val) + { + $str = str_replace($key, $val, $str); + } + + foreach ($this->never_allowed_regex as $key => $val) + { + $str = preg_replace("#".$key."#i", $val, $str); + } + + /* + * Makes PHP tags safe + * + * Note: XML tags are inadvertently replaced too: + * + * <?xml + * + * But it doesn't seem to pose a problem. + * + */ + if ($is_image === TRUE) + { + // Images have a tendency to have the PHP short opening and closing tags every so often + // so we skip those and only do the long opening tags. + $str = preg_replace('/<\?(php)/i', "<?\\1", $str); + } + else + { + $str = str_replace(array('<?', '?'.'>'), array('<?', '?>'), $str); + } + + /* + * Compact any exploded words + * + * This corrects words like: j a v a s c r i p t + * These words are compacted back to their correct state. + * + */ + $words = array('javascript', 'expression', 'vbscript', 'script', 'applet', 'alert', 'document', 'write', 'cookie', 'window'); + foreach ($words as $word) + { + $temp = ''; + + for ($i = 0, $wordlen = strlen($word); $i < $wordlen; $i++) + { + $temp .= substr($word, $i, 1)."\s*"; + } + + // We only want to do this when it is followed by a non-word character + // That way valid stuff like "dealer to" does not become "dealerto" + $str = preg_replace_callback('#('.substr($temp, 0, -3).')(\W)#is', array($this, '_compact_exploded_words'), $str); + } + + /* + * Remove disallowed Javascript in links or img tags + * We used to do some version comparisons and use of stripos for PHP5, but it is dog slow compared + * to these simplified non-capturing preg_match(), especially if the pattern exists in the string + */ + do + { + $original = $str; + + if (preg_match("/<a/i", $str)) + { + $str = preg_replace_callback("#<a\s+([^>]*?)(>|$)#si", array($this, '_js_link_removal'), $str); + } + + if (preg_match("/<img/i", $str)) + { + $str = preg_replace_callback("#<img\s+([^>]*?)(\s?/?>|$)#si", array($this, '_js_img_removal'), $str); + } + + if (preg_match("/script/i", $str) OR preg_match("/xss/i", $str)) + { + $str = preg_replace("#<(/*)(script|xss)(.*?)\>#si", '[removed]', $str); + } + } + while($original != $str); + + unset($original); + + /* + * Remove JavaScript Event Handlers + * + * Note: This code is a little blunt. It removes + * the event handler and anything up to the closing >, + * but it's unlikely to be a problem. + * + */ + $event_handlers = array('[^a-z_\-]on\w*','xmlns'); + + if ($is_image === TRUE) + { + /* + * Adobe Photoshop puts XML metadata into JFIF images, including namespacing, + * so we have to allow this for images. -Paul + */ + unset($event_handlers[array_search('xmlns', $event_handlers)]); + } + + $str = preg_replace("#<([^><]+?)(".implode('|', $event_handlers).")(\s*=\s*[^><]*)([><]*)#i", "<\\1\\4", $str); + + /* + * Sanitize naughty HTML elements + * + * If a tag containing any of the words in the list + * below is found, the tag gets converted to entities. + * + * So this: <blink> + * Becomes: <blink> + * + */ + $naughty = 'alert|applet|audio|basefont|base|behavior|bgsound|blink|body|embed|expression|form|frameset|frame|head|html|ilayer|iframe|input|isindex|layer|link|meta|object|plaintext|style|script|textarea|title|video|xml|xss'; + $str = preg_replace_callback('#<(/*\s*)('.$naughty.')([^><]*)([><]*)#is', array($this, '_sanitize_naughty_html'), $str); + + /* + * Sanitize naughty scripting elements + * + * Similar to above, only instead of looking for + * tags it looks for PHP and JavaScript commands + * that are disallowed. Rather than removing the + * code, it simply converts the parenthesis to entities + * rendering the code un-executable. + * + * For example: eval('some code') + * Becomes: eval('some code') + * + */ + $str = preg_replace('#(alert|cmd|passthru|eval|exec|expression|system|fopen|fsockopen|file|file_get_contents|readfile|unlink)(\s*)\((.*?)\)#si', "\\1\\2(\\3)", $str); + + /* + * Final clean up + * + * This adds a bit of extra precaution in case + * something got through the above filters + * + */ + foreach ($this->never_allowed_str as $key => $val) + { + $str = str_replace($key, $val, $str); + } + + foreach ($this->never_allowed_regex as $key => $val) + { + $str = preg_replace("#".$key."#i", $val, $str); + } + + /* + * Images are Handled in a Special Way + * - Essentially, we want to know that after all of the character conversion is done whether + * any unwanted, likely XSS, code was found. If not, we return TRUE, as the image is clean. + * However, if the string post-conversion does not matched the string post-removal of XSS, + * then it fails, as there was unwanted XSS code found and removed/changed during processing. + */ + + if ($is_image === TRUE) + { + if ($str == $converted_string) + { + return TRUE; + } + else + { + return FALSE; + } + } + + log_message('debug', "XSS Filtering completed"); + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Random Hash for protecting URLs + * + * @access public + * @return string + */ + public function xss_hash() + { + if ($this->xss_hash == '') + { + if (phpversion() >= 4.2) + mt_srand(); + else + mt_srand(hexdec(substr(md5(microtime()), -8)) & 0x7fffffff); + + $this->xss_hash = md5(time() + mt_rand(0, 1999999999)); + } + + return $this->xss_hash; + } + + // -------------------------------------------------------------------- + + /** + * Compact Exploded Words + * + * Callback function for xss_clean() to remove whitespace from + * things like j a v a s c r i p t + * + * @access private + * @param type + * @return type + */ + private function _compact_exploded_words($matches) + { + return preg_replace('/\s+/s', '', $matches[1]).$matches[2]; + } + + // -------------------------------------------------------------------- + + /** + * Sanitize Naughty HTML + * + * Callback function for xss_clean() to remove naughty HTML elements + * + * @access private + * @param array + * @return string + */ + private function _sanitize_naughty_html($matches) + { + // encode opening brace + $str = '<'.$matches[1].$matches[2].$matches[3]; + + // encode captured opening or closing brace to prevent recursive vectors + $str .= str_replace(array('>', '<'), array('>', '<'), $matches[4]); + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * JS Link Removal + * + * Callback function for xss_clean() to sanitize links + * This limits the PCRE backtracks, making it more performance friendly + * and prevents PREG_BACKTRACK_LIMIT_ERROR from being triggered in + * PHP 5.2+ on link-heavy strings + * + * @access private + * @param array + * @return string + */ + private function _js_link_removal($match) + { + $attributes = $this->_filter_attributes(str_replace(array('<', '>'), '', $match[1])); + return str_replace($match[1], preg_replace("#href=.*?(alert\(|alert&\#40;|javascript\:|charset\=|window\.|document\.|\.cookie|<script|<xss|base64\s*,)#si", "", $attributes), $match[0]); + } + + /** + * JS Image Removal + * + * Callback function for xss_clean() to sanitize image tags + * This limits the PCRE backtracks, making it more performance friendly + * and prevents PREG_BACKTRACK_LIMIT_ERROR from being triggered in + * PHP 5.2+ on image tag heavy strings + * + * @access private + * @param array + * @return string + */ + private function _js_img_removal($match) + { + $attributes = $this->_filter_attributes(str_replace(array('<', '>'), '', $match[1])); + return str_replace($match[1], preg_replace("#src=.*?(alert\(|alert&\#40;|javascript\:|charset\=|window\.|document\.|\.cookie|<script|<xss|base64\s*,)#si", "", $attributes), $match[0]); + } + + // -------------------------------------------------------------------- + + /** + * Attribute Conversion + * + * Used as a callback for XSS Clean + * + * @access private + * @param array + * @return string + */ + private function _convert_attribute($match) + { + return str_replace(array('>', '<', '\\'), array('>', '<', '\\\\'), $match[0]); + } + + // -------------------------------------------------------------------- + + /** + * Filter Attributes + * + * Filters tag attributes for consistency and safety + * + * @access private + * @param string + * @return string + */ + private function _filter_attributes($str) + { + $out = ''; + + if (preg_match_all('#\s*[a-z\-]+\s*=\s*(\042|\047)([^\\1]*?)\\1#is', $str, $matches)) + { + foreach ($matches[0] as $match) + { + $out .= preg_replace("#/\*.*?\*/#s", '', $match); + } + } + + return $out; + } + + // -------------------------------------------------------------------- + + /** + * HTML Entity Decode Callback + * + * Used as a callback for XSS Clean + * + * @access private + * @param array + * @return string + */ + private function _decode_entity($match) + { + return $this->entity_decode($match[0], strtoupper(config_item('charset'))); + } + + // -------------------------------------------------------------------- + + /** + * HTML Entities Decode + * + * This function is a replacement for html_entity_decode() + * + * In some versions of PHP the native function does not work + * when UTF-8 is the specified character set, so this gives us + * a work-around. More info here: + * http://bugs.php.net/bug.php?id=25670 + * + * NOTE: html_entity_decode() has a bug in some PHP versions when UTF-8 is the + * character set, and the PHP developers said they were not back porting the + * fix to versions other than PHP 5.x. + * + * @access public + * @param string + * @param string + * @return string + */ + public function entity_decode($str, $charset='UTF-8') + { + if (stristr($str, '&') === FALSE) return $str; + + // The reason we are not using html_entity_decode() by itself is because + // while it is not technically correct to leave out the semicolon + // at the end of an entity most browsers will still interpret the entity + // correctly. html_entity_decode() does not convert entities without + // semicolons, so we are left with our own little solution here. Bummer. + + if (function_exists('html_entity_decode') && (strtolower($charset) != 'utf-8' OR is_php('5.0.0'))) + { + $str = html_entity_decode($str, ENT_COMPAT, $charset); + $str = preg_replace('~&#x(0*[0-9a-f]{2,5})~ei', 'chr(hexdec("\\1"))', $str); + return preg_replace('~&#([0-9]{2,4})~e', 'chr(\\1)', $str); + } + + // Numeric Entities + $str = preg_replace('~&#x(0*[0-9a-f]{2,5});{0,1}~ei', 'chr(hexdec("\\1"))', $str); + $str = preg_replace('~&#([0-9]{2,4});{0,1}~e', 'chr(\\1)', $str); + + // Literal Entities - Slightly slow so we do another check + if (stristr($str, '&') === FALSE) + { + $str = strtr($str, array_flip(get_html_translation_table(HTML_ENTITIES))); + } + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Filename Security + * + * @access public + * @param string + * @return string + */ + public function sanitize_filename($str, $relative_path = FALSE) + { + $bad = array( + "../", + "<!--", + "-->", + "<", + ">", + "'", + '"', + '&', + '$', + '#', + '{', + '}', + '[', + ']', + '=', + ';', + '?', + "%20", + "%22", + "%3c", // < + "%253c", // < + "%3e", // > + "%0e", // > + "%28", // ( + "%29", // ) + "%2528", // ( + "%26", // & + "%24", // $ + "%3f", // ? + "%3b", // ; + "%3d" // = + ); + + if ( ! $relative_path) + { + $bad[] = './'; + $bad[] = '/'; + } + + return stripslashes(str_replace($bad, '', $str)); + } + +} +// END Security Class + +/* End of file Security.php */ +/* Location: ./system/libraries/Security.php */
\ No newline at end of file diff --git a/system/libraries/Session.php b/system/libraries/Session.php index bd9426818..53ff4f5d3 100644..100755 --- a/system/libraries/Session.php +++ b/system/libraries/Session.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -30,6 +30,7 @@ class CI_Session { var $sess_use_database = FALSE; var $sess_table_name = ''; var $sess_expiration = 7200; + var $sess_expire_on_close = FALSE; var $sess_match_ip = FALSE; var $sess_match_useragent = TRUE; var $sess_cookie_name = 'ci_session'; @@ -38,7 +39,7 @@ class CI_Session { var $cookie_domain = ''; var $sess_time_to_update = 300; var $encryption_key = ''; - var $flashdata_key = 'flash'; + var $flashdata_key = 'flash'; var $time_reference = 'time'; var $gc_probability = 5; var $userdata = array(); @@ -51,7 +52,7 @@ class CI_Session { * The constructor runs the session routines automatically * whenever the class is instantiated. */ - function CI_Session($params = array()) + public function __construct($params = array()) { log_message('debug', "Session Class Initialized"); @@ -60,11 +61,16 @@ class CI_Session { // Set all the session preferences, which can either be set // manually via the $params array above or via the config file - foreach (array('sess_encrypt_cookie', 'sess_use_database', 'sess_table_name', 'sess_expiration', 'sess_match_ip', 'sess_match_useragent', 'sess_cookie_name', 'cookie_path', 'cookie_domain', 'sess_time_to_update', 'time_reference', 'cookie_prefix', 'encryption_key') as $key) + foreach (array('sess_encrypt_cookie', 'sess_use_database', 'sess_table_name', 'sess_expiration', 'sess_expire_on_close', 'sess_match_ip', 'sess_match_useragent', 'sess_cookie_name', 'cookie_path', 'cookie_domain', 'sess_time_to_update', 'time_reference', 'cookie_prefix', 'encryption_key') as $key) { $this->$key = (isset($params[$key])) ? $params[$key] : $this->CI->config->item($key); } + if ($this->encryption_key == '') + { + show_error('In order to use the Session class you are required to set an encryption key in your config file.'); + } + // Load the string helper so we can use the strip_slashes() function $this->CI->load->helper('string'); @@ -90,7 +96,7 @@ class CI_Session { { $this->sess_expiration = (60*60*24*365*2); } - + // Set the cookie name $this->sess_cookie_name = $this->cookie_prefix.$this->sess_cookie_name; @@ -106,10 +112,10 @@ class CI_Session { } // Delete 'old' flashdata (from last request) - $this->_flashdata_sweep(); + $this->_flashdata_sweep(); // Mark all new flashdata as old (data will be deleted before next request) - $this->_flashdata_mark(); + $this->_flashdata_mark(); // Delete expired sessions if necessary $this->_sess_gc(); @@ -307,9 +313,9 @@ class CI_Session { $sessid .= $this->CI->input->ip_address(); $this->userdata = array( - 'session_id' => md5(uniqid($sessid, TRUE)), - 'ip_address' => $this->CI->input->ip_address(), - 'user_agent' => substr($this->CI->input->user_agent(), 0, 50), + 'session_id' => md5(uniqid($sessid, TRUE)), + 'ip_address' => $this->CI->input->ip_address(), + 'user_agent' => substr($this->CI->input->user_agent(), 0, 50), 'last_activity' => $this->now ); @@ -651,11 +657,13 @@ class CI_Session { $cookie_data = $cookie_data.md5($cookie_data.$this->encryption_key); } + $expire = ($this->sess_expire_on_close === TRUE) ? 0 : $this->sess_expiration + time(); + // Set the cookie setcookie( $this->sess_cookie_name, $cookie_data, - $this->sess_expiration + time(), + $expire, $this->cookie_path, $this->cookie_domain, 0 @@ -680,12 +688,18 @@ class CI_Session { { foreach ($data as $key => $val) { - $data[$key] = str_replace('\\', '{{slash}}', $val); + if (is_string($val)) + { + $data[$key] = str_replace('\\', '{{slash}}', $val); + } } } else { - $data = str_replace('\\', '{{slash}}', $data); + if (is_string($data)) + { + $data = str_replace('\\', '{{slash}}', $data); + } } return serialize($data); @@ -711,13 +725,16 @@ class CI_Session { { foreach ($data as $key => $val) { - $data[$key] = str_replace('{{slash}}', '\\', $val); + if (is_string($val)) + { + $data[$key] = str_replace('{{slash}}', '\\', $val); + } } return $data; } - return str_replace('{{slash}}', '\\', $data); + return (is_string($data)) ? str_replace('{{slash}}', '\\', $data) : $data; } // -------------------------------------------------------------------- diff --git a/system/libraries/Sha1.php b/system/libraries/Sha1.php index f9611a8a5..ad747a001 100644..100755 --- a/system/libraries/Sha1.php +++ b/system/libraries/Sha1.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -44,7 +44,7 @@ */ class CI_SHA { - function CI_SHA() + public function __construct() { log_message('debug', "SHA1 Class Initialized"); } @@ -55,7 +55,7 @@ class CI_SHA { * @access public * @param string * @return string - */ + */ function generate($str) { $n = ((strlen($str) + 8) >> 6) + 1; @@ -117,7 +117,7 @@ class CI_SHA { return $this->_hex($a).$this->_hex($b).$this->_hex($c).$this->_hex($d).$this->_hex($e); } - + // -------------------------------------------------------------------- /** @@ -126,7 +126,7 @@ class CI_SHA { * @access private * @param string * @return string - */ + */ function _hex($str) { $str = dechex($str); @@ -138,7 +138,7 @@ class CI_SHA { return $str; } - + // -------------------------------------------------------------------- /** @@ -146,7 +146,7 @@ class CI_SHA { * * @access private * @return string - */ + */ function _ft($t, $b, $c, $d) { if ($t < 20) @@ -166,7 +166,7 @@ class CI_SHA { * * @access private * @return string - */ + */ function _kt($t) { if ($t < 20) @@ -186,7 +186,7 @@ class CI_SHA { return -899497514; } } - + // -------------------------------------------------------------------- /** @@ -194,7 +194,7 @@ class CI_SHA { * * @access private * @return string - */ + */ function _safe_add($x, $y) { $lsw = ($x & 0xFFFF) + ($y & 0xFFFF); @@ -202,7 +202,7 @@ class CI_SHA { return ($msw << 16) | ($lsw & 0xFFFF); } - + // -------------------------------------------------------------------- /** @@ -210,7 +210,7 @@ class CI_SHA { * * @access private * @return integer - */ + */ function _rol($num, $cnt) { return ($num << $cnt) | $this->_zero_fill($num, 32 - $cnt); @@ -223,7 +223,7 @@ class CI_SHA { * * @access private * @return string - */ + */ function _zero_fill($a, $b) { $bin = decbin($a); diff --git a/system/libraries/Table.php b/system/libraries/Table.php index a990d406c..485541630 100644..100755 --- a/system/libraries/Table.php +++ b/system/libraries/Table.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.3.1 @@ -30,14 +30,14 @@ class CI_Table { var $rows = array(); var $heading = array(); - var $auto_heading = TRUE; - var $caption = NULL; - var $template = NULL; + var $auto_heading = TRUE; + var $caption = NULL; + var $template = NULL; var $newline = "\n"; var $empty_cells = ""; - - - function CI_Table() + var $function = FALSE; + + public function __construct() { log_message('debug', "Table Class Initialized"); } @@ -57,7 +57,7 @@ class CI_Table { { return FALSE; } - + $this->template = $template; } @@ -75,7 +75,7 @@ class CI_Table { function set_heading() { $args = func_get_args(); - $this->heading = (is_array($args[0])) ? $args[0] : $args; + $this->heading = $this->_prep_args($args); } // -------------------------------------------------------------------- @@ -97,21 +97,21 @@ class CI_Table { { return FALSE; } - - // Turn off the auto-heading feature since it's doubtful we + + // Turn off the auto-heading feature since it's doubtful we // will want headings from a one-dimensional array $this->auto_heading = FALSE; - + if ($col_limit == 0) { return $array; } - + $new = array(); while(count($array) > 0) - { + { $temp = array_splice($array, 0, $col_limit); - + if (count($temp) < $col_limit) { for ($i = count($temp); $i < $col_limit; $i++) @@ -119,10 +119,10 @@ class CI_Table { $temp[] = ' '; } } - + $new[] = $temp; } - + return $new; } @@ -141,7 +141,7 @@ class CI_Table { { $this->empty_cells = $value; } - + // -------------------------------------------------------------------- /** @@ -156,7 +156,55 @@ class CI_Table { function add_row() { $args = func_get_args(); - $this->rows[] = (is_array($args[0])) ? $args[0] : $args; + $this->rows[] = $this->_prep_args($args); + } + + // -------------------------------------------------------------------- + + /** + * Prep Args + * + * Ensures a standard associative array format for all cell data + * + * @access public + * @param type + * @return type + */ + function _prep_args($args) + { + // If there is no $args[0], skip this and treat as an associative array + // This can happen if there is only a single key, for example this is passed to table->generate + // array(array('foo'=>'bar')) + if (isset($args[0]) AND (count($args) == 1 && is_array($args[0]))) + { + // args sent as indexed array + if ( ! isset($args[0]['data'])) + { + foreach ($args[0] as $key => $val) + { + if (is_array($val) && isset($val['data'])) + { + $args[$key] = $val; + } + else + { + $args[$key] = array('data' => $val); + } + } + } + } + else + { + foreach ($args as $key => $val) + { + if ( ! is_array($val)) + { + $args[$key] = array('data' => $val); + } + } + } + + return $args; } // -------------------------------------------------------------------- @@ -171,7 +219,7 @@ class CI_Table { function set_caption($caption) { $this->caption = $caption; - } + } // -------------------------------------------------------------------- @@ -198,21 +246,23 @@ class CI_Table { $this->_set_from_array($table_data, $set_heading); } } - + // Is there anything to display? No? Smite them! if (count($this->heading) == 0 AND count($this->rows) == 0) { return 'Undefined table data'; } - + // Compile and validate the template date $this->_compile_template(); - - + + // set a custom cell manipulation function to a locally scoped variable so its callable + $function = $this->function; + // Build the table! - + $out = $this->template['table_open']; - $out .= $this->newline; + $out .= $this->newline; // Add any caption here if ($this->caption) @@ -225,23 +275,40 @@ class CI_Table { // Is there a table heading to display? if (count($this->heading) > 0) { + $out .= $this->template['thead_open']; + $out .= $this->newline; $out .= $this->template['heading_row_start']; - $out .= $this->newline; + $out .= $this->newline; foreach($this->heading as $heading) { - $out .= $this->template['heading_cell_start']; - $out .= $heading; + $temp = $this->template['heading_cell_start']; + + foreach ($heading as $key => $val) + { + if ($key != 'data') + { + $temp = str_replace('<th', "<th $key='$val'", $temp); + } + } + + $out .= $temp; + $out .= isset($heading['data']) ? $heading['data'] : ''; $out .= $this->template['heading_cell_end']; } $out .= $this->template['heading_row_end']; - $out .= $this->newline; + $out .= $this->newline; + $out .= $this->template['thead_close']; + $out .= $this->newline; } // Build the table rows if (count($this->rows) > 0) { + $out .= $this->template['tbody_open']; + $out .= $this->newline; + $i = 1; foreach($this->rows as $row) { @@ -249,39 +316,60 @@ class CI_Table { { break; } - + // We use modulus to alternate the row colors $name = (fmod($i++, 2)) ? '' : 'alt_'; - + $out .= $this->template['row_'.$name.'start']; - $out .= $this->newline; - + $out .= $this->newline; + foreach($row as $cell) { - $out .= $this->template['cell_'.$name.'start']; - - if ($cell === "") + $temp = $this->template['cell_'.$name.'start']; + + foreach ($cell as $key => $val) + { + if ($key != 'data') + { + $temp = str_replace('<td', "<td $key='$val'", $temp); + } + } + + $cell = isset($cell['data']) ? $cell['data'] : ''; + $out .= $temp; + + if ($cell === "" OR $cell === NULL) { $out .= $this->empty_cells; } else { - $out .= $cell; + if ($function !== FALSE && is_callable($function)) + { + $out .= call_user_func($function, $cell); + } + else + { + $out .= $cell; + } } - + $out .= $this->template['cell_'.$name.'end']; } - + $out .= $this->template['row_'.$name.'end']; - $out .= $this->newline; + $out .= $this->newline; } + + $out .= $this->template['tbody_close']; + $out .= $this->newline; } $out .= $this->template['table_close']; - + return $out; } - + // -------------------------------------------------------------------- /** @@ -294,9 +382,9 @@ class CI_Table { { $this->rows = array(); $this->heading = array(); - $this->auto_heading = TRUE; + $this->auto_heading = TRUE; } - + // -------------------------------------------------------------------- /** @@ -312,7 +400,7 @@ class CI_Table { { return FALSE; } - + // First generate the headings from the table column names if (count($this->heading) == 0) { @@ -320,17 +408,17 @@ class CI_Table { { return FALSE; } - - $this->heading = $query->list_fields(); + + $this->heading = $this->_prep_args($query->list_fields()); } - + // Next blast through the result array and build out the rows - + if ($query->num_rows() > 0) { foreach ($query->result_array() as $row) { - $this->rows[] = $row; + $this->rows[] = $this->_prep_args($row); } } } @@ -350,26 +438,20 @@ class CI_Table { { return FALSE; } - + $i = 0; foreach ($data as $row) { - if ( ! is_array($row)) - { - $this->rows[] = $data; - break; - } - // If a heading hasn't already been set we'll use the first row of the array as the heading if ($i == 0 AND count($data) > 1 AND count($this->heading) == 0 AND $set_heading == TRUE) { - $this->heading = $row; + $this->heading = $this->_prep_args($row); } else { - $this->rows[] = $row; + $this->rows[] = $this->_prep_args($row); } - + $i++; } } @@ -382,24 +464,24 @@ class CI_Table { * @access private * @return void */ - function _compile_template() - { - if ($this->template == NULL) - { - $this->template = $this->_default_template(); - return; - } - + function _compile_template() + { + if ($this->template == NULL) + { + $this->template = $this->_default_template(); + return; + } + $this->temp = $this->_default_template(); - foreach (array('table_open','heading_row_start', 'heading_row_end', 'heading_cell_start', 'heading_cell_end', 'row_start', 'row_end', 'cell_start', 'cell_end', 'row_alt_start', 'row_alt_end', 'cell_alt_start', 'cell_alt_end', 'table_close') as $val) + foreach (array('table_open', 'thead_open', 'thead_close', 'heading_row_start', 'heading_row_end', 'heading_cell_start', 'heading_cell_end', 'tbody_open', 'tbody_close', 'row_start', 'row_end', 'cell_start', 'cell_end', 'row_alt_start', 'row_alt_end', 'cell_alt_start', 'cell_alt_end', 'table_close') as $val) { if ( ! isset($this->template[$val])) { $this->template[$val] = $this->temp[$val]; } - } - } - + } + } + // -------------------------------------------------------------------- /** @@ -411,27 +493,33 @@ class CI_Table { function _default_template() { return array ( - 'table_open' => '<table border="0" cellpadding="4" cellspacing="0">', + 'table_open' => '<table border="0" cellpadding="4" cellspacing="0">', + + 'thead_open' => '<thead>', + 'thead_close' => '</thead>', - 'heading_row_start' => '<tr>', - 'heading_row_end' => '</tr>', + 'heading_row_start' => '<tr>', + 'heading_row_end' => '</tr>', 'heading_cell_start' => '<th>', 'heading_cell_end' => '</th>', - 'row_start' => '<tr>', - 'row_end' => '</tr>', + 'tbody_open' => '<tbody>', + 'tbody_close' => '</tbody>', + + 'row_start' => '<tr>', + 'row_end' => '</tr>', 'cell_start' => '<td>', 'cell_end' => '</td>', - 'row_alt_start' => '<tr>', - 'row_alt_end' => '</tr>', + 'row_alt_start' => '<tr>', + 'row_alt_end' => '</tr>', 'cell_alt_start' => '<td>', 'cell_alt_end' => '</td>', - 'table_close' => '</table>' - ); + 'table_close' => '</table>' + ); } - + } diff --git a/system/libraries/Trackback.php b/system/libraries/Trackback.php index 9b1737c5f..e29b35c7a 100644..100755 --- a/system/libraries/Trackback.php +++ b/system/libraries/Trackback.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -27,7 +27,7 @@ * @link http://codeigniter.com/user_guide/libraries/trackback.html */ class CI_Trackback { - + var $time_format = 'local'; var $charset = 'UTF-8'; var $data = array('url' => '', 'title' => '', 'excerpt' => '', 'blog_name' => '', 'charset' => ''); @@ -40,28 +40,28 @@ class CI_Trackback { * * @access public */ - function CI_Trackback() + public function __construct() { log_message('debug', "Trackback Class Initialized"); } - + // -------------------------------------------------------------------- - + /** * Send Trackback * * @access public * @param array * @return bool - */ + */ function send($tb_data) - { + { if ( ! is_array($tb_data)) { $this->set_error('The send() method must be passed an array'); return FALSE; } - + // Pre-process the Trackback Data foreach (array('url', 'title', 'excerpt', 'blog_name', 'ping_url') as $item) { @@ -70,14 +70,14 @@ class CI_Trackback { $this->set_error('Required item missing: '.$item); return FALSE; } - + switch ($item) { case 'ping_url' : $$item = $this->extract_urls($tb_data[$item]); break; case 'excerpt' : $$item = $this->limit_characters($this->convert_xml(strip_tags(stripslashes($tb_data[$item])))); break; - case 'url' : $$item = str_replace('-', '-', $this->convert_xml(strip_tags(stripslashes($tb_data[$item])))); + case 'url' : $$item = str_replace('-', '-', $this->convert_xml(strip_tags(stripslashes($tb_data[$item])))); break; default : $$item = $this->convert_xml(strip_tags(stripslashes($tb_data[$item]))); break; @@ -103,9 +103,9 @@ class CI_Trackback { // Build the Trackback data string $charset = ( ! isset($tb_data['charset'])) ? $this->charset : $tb_data['charset']; - + $data = "url=".rawurlencode($url)."&title=".rawurlencode($title)."&blog_name=".rawurlencode($blog_name)."&excerpt=".rawurlencode($excerpt)."&charset=".rawurlencode($charset); - + // Send Trackback(s) $return = TRUE; if (count($ping_url) > 0) @@ -116,27 +116,27 @@ class CI_Trackback { { $return = FALSE; } - } + } } return $return; } - + // -------------------------------------------------------------------- - + /** * Receive Trackback Data * * This function simply validates the incoming TB data. - * It returns false on failure and true on success. + * It returns FALSE on failure and TRUE on success. * If the data is valid it is set to the $this->data array * so that it can be inserted into a database. * * @access public * @return bool - */ + */ function receive() - { + { foreach (array('url', 'title', 'blog_name', 'excerpt') as $val) { if ( ! isset($_POST[$val]) OR $_POST[$val] == '') @@ -144,29 +144,29 @@ class CI_Trackback { $this->set_error('The following required POST variable is missing: '.$val); return FALSE; } - + $this->data['charset'] = ( ! isset($_POST['charset'])) ? 'auto' : strtoupper(trim($_POST['charset'])); - + if ($val != 'url' && function_exists('mb_convert_encoding')) { $_POST[$val] = mb_convert_encoding($_POST[$val], $this->charset, $this->data['charset']); } - + $_POST[$val] = ($val != 'url') ? $this->convert_xml(strip_tags($_POST[$val])) : strip_tags($_POST[$val]); - + if ($val == 'excerpt') { $_POST['excerpt'] = $this->limit_characters($_POST['excerpt']); } - + $this->data[$val] = $_POST[$val]; } return TRUE; - } - + } + // -------------------------------------------------------------------- - + /** * Send Trackback Error Message * @@ -177,15 +177,15 @@ class CI_Trackback { * @access public * @param string * @return void - */ + */ function send_error($message = 'Incomplete Information') { echo "<?xml version=\"1.0\" encoding=\"utf-8\"?".">\n<response>\n<error>1</error>\n<message>".$message."</message>\n</response>"; exit; } - + // -------------------------------------------------------------------- - + /** * Send Trackback Success Message * @@ -194,44 +194,44 @@ class CI_Trackback { * * @access public * @return void - */ + */ function send_success() { echo "<?xml version=\"1.0\" encoding=\"utf-8\"?".">\n<response>\n<error>0</error>\n</response>"; exit; } - + // -------------------------------------------------------------------- - + /** * Fetch a particular item * * @access public * @param string * @return string - */ + */ function data($item) { return ( ! isset($this->data[$item])) ? '' : $this->data[$item]; } // -------------------------------------------------------------------- - + /** * Process Trackback * * Opens a socket connection and passes the data to - * the server. Returns true on success, false on failure + * the server. Returns TRUE on success, FALSE on failure * * @access public * @param string * @param string * @return bool - */ + */ function process($url, $data) { $target = parse_url($url); - + // Open the socket if ( ! $fp = @fsockopen($target['host'], 80)) { @@ -241,7 +241,7 @@ class CI_Trackback { // Build the path $ppath = ( ! isset($target['path'])) ? $url : $target['path']; - + $path = (isset($target['query']) && $target['query'] != "") ? $ppath.'?'.$target['query'] : $ppath; // Add the Trackback ID to the data string @@ -260,31 +260,32 @@ class CI_Trackback { // Was it successful? $this->response = ""; - + while( ! feof($fp)) { $this->response .= fgets($fp, 128); } @fclose($fp); - + + if (stristr($this->response, '<error>0</error>') === FALSE) { $message = 'An unknown error was encountered'; - + if (preg_match("/<message>(.*?)<\/message>/is", $this->response, $match)) { $message = trim($match['1']); } - + $this->set_error($message); return FALSE; } return TRUE; } - + // -------------------------------------------------------------------- - + /** * Extract Trackback URLs * @@ -295,34 +296,34 @@ class CI_Trackback { * @access public * @param string * @return string - */ + */ function extract_urls($urls) - { + { // Remove the pesky white space and replace with a comma. $urls = preg_replace("/\s*(\S+)\s*/", "\\1,", $urls); - + // If they use commas get rid of the doubles. $urls = str_replace(",,", ",", $urls); - + // Remove any comma that might be at the end if (substr($urls, -1) == ",") { $urls = substr($urls, 0, -1); } - + // Break into an array via commas $urls = preg_split('/[,]/', $urls); - + // Removes duplicates $urls = array_unique($urls); - + array_walk($urls, array($this, 'validate_url')); - + return $urls; } - + // -------------------------------------------------------------------- - + /** * Validate URL * @@ -331,7 +332,7 @@ class CI_Trackback { * @access public * @param string * @return string - */ + */ function validate_url($url) { $url = trim($url); @@ -341,58 +342,58 @@ class CI_Trackback { $url = "http://".$url; } } - + // -------------------------------------------------------------------- - + /** * Find the Trackback URL's ID * * @access public * @param string * @return string - */ + */ function get_id($url) - { + { $tb_id = ""; - - if (strstr($url, '?')) + + if (strpos($url, '?') !== FALSE) { $tb_array = explode('/', $url); $tb_end = $tb_array[count($tb_array)-1]; - + if ( ! is_numeric($tb_end)) { $tb_end = $tb_array[count($tb_array)-2]; } - + $tb_array = explode('=', $tb_end); $tb_id = $tb_array[count($tb_array)-1]; } else { $url = rtrim($url, '/'); - + $tb_array = explode('/', $url); $tb_id = $tb_array[count($tb_array)-1]; - + if ( ! is_numeric($tb_id)) { $tb_id = $tb_array[count($tb_array)-2]; } - } - + } + if ( ! preg_match ("/^([0-9]+)$/", $tb_id)) { - return false; + return FALSE; } else { return $tb_id; - } + } } - + // -------------------------------------------------------------------- - + /** * Convert Reserved XML characters to Entities * @@ -403,22 +404,22 @@ class CI_Trackback { function convert_xml($str) { $temp = '__TEMP_AMPERSANDS__'; - + $str = preg_replace("/&#(\d+);/", "$temp\\1;", $str); $str = preg_replace("/&(\w+);/", "$temp\\1;", $str); - + $str = str_replace(array("&","<",">","\"", "'", "-"), - array("&", "<", ">", """, "'", "-"), - $str); - + array("&", "<", ">", """, "'", "-"), + $str); + $str = preg_replace("/$temp(\d+);/","&#\\1;",$str); $str = preg_replace("/$temp(\w+);/","&\\1;", $str); - + return $str; - } - + } + // -------------------------------------------------------------------- - + /** * Character limiter * @@ -438,25 +439,25 @@ class CI_Trackback { } $str = preg_replace("/\s+/", ' ', str_replace(array("\r\n", "\r", "\n"), ' ', $str)); - + if (strlen($str) <= $n) { return $str; } - + $out = ""; foreach (explode(' ', trim($str)) as $val) { - $out .= $val.' '; + $out .= $val.' '; if (strlen($out) >= $n) { return trim($out).$end_char; - } + } } } - + // -------------------------------------------------------------------- - + /** * High ASCII to Entities * @@ -469,58 +470,58 @@ class CI_Trackback { */ function convert_ascii($str) { - $count = 1; - $out = ''; - $temp = array(); - - for ($i = 0, $s = strlen($str); $i < $s; $i++) - { - $ordinal = ord($str[$i]); - - if ($ordinal < 128) - { - $out .= $str[$i]; - } - else - { - if (count($temp) == 0) - { - $count = ($ordinal < 224) ? 2 : 3; - } - - $temp[] = $ordinal; - - if (count($temp) == $count) - { - $number = ($count == 3) ? (($temp['0'] % 16) * 4096) + (($temp['1'] % 64) * 64) + ($temp['2'] % 64) : (($temp['0'] % 32) * 64) + ($temp['1'] % 64); - - $out .= '&#'.$number.';'; - $count = 1; - $temp = array(); - } - } - } - - return $out; + $count = 1; + $out = ''; + $temp = array(); + + for ($i = 0, $s = strlen($str); $i < $s; $i++) + { + $ordinal = ord($str[$i]); + + if ($ordinal < 128) + { + $out .= $str[$i]; + } + else + { + if (count($temp) == 0) + { + $count = ($ordinal < 224) ? 2 : 3; + } + + $temp[] = $ordinal; + + if (count($temp) == $count) + { + $number = ($count == 3) ? (($temp['0'] % 16) * 4096) + (($temp['1'] % 64) * 64) + ($temp['2'] % 64) : (($temp['0'] % 32) * 64) + ($temp['1'] % 64); + + $out .= '&#'.$number.';'; + $count = 1; + $temp = array(); + } + } + } + + return $out; } - + // -------------------------------------------------------------------- - + /** * Set error message * * @access public * @param string * @return void - */ + */ function set_error($msg) { log_message('error', $msg); $this->error_msg[] = $msg; } - + // -------------------------------------------------------------------- - + /** * Show error messages * @@ -528,15 +529,15 @@ class CI_Trackback { * @param string * @param string * @return string - */ + */ function display_errors($open = '<p>', $close = '</p>') - { + { $str = ''; foreach ($this->error_msg as $val) { $str .= $open.$val.$close; } - + return $str; } diff --git a/system/libraries/Typography.php b/system/libraries/Typography.php index 0f0a8b7a2..734cec104 100644..100755 --- a/system/libraries/Typography.php +++ b/system/libraries/Typography.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -28,39 +28,31 @@ class CI_Typography { // Block level elements that should not be wrapped inside <p> tags var $block_elements = 'address|blockquote|div|dl|fieldset|form|h\d|hr|noscript|object|ol|p|pre|script|table|ul'; - + // Elements that should not have <p> and <br /> tags within them. var $skip_elements = 'p|pre|ol|ul|dl|object|table|h\d'; - + // Tags we want the parser to completely ignore when splitting the string. var $inline_elements = 'a|abbr|acronym|b|bdo|big|br|button|cite|code|del|dfn|em|i|img|ins|input|label|map|kbd|q|samp|select|small|span|strong|sub|sup|textarea|tt|var'; - + // array of block level elements that require inner content to be within another block level element var $inner_block_required = array('blockquote'); - + // the last block element parsed var $last_block_element = ''; - + // whether or not to protect quotes within { curly braces } var $protect_braced_quotes = FALSE; - - /** - * Nothing to do here... - * - */ - function CI_Typography() - { - } /** * Auto Typography * * This function converts text, making it typographically correct: - * - Converts double spaces into paragraphs. - * - Converts single line breaks into <br /> tags - * - Converts single and double quotes into correctly facing curly quote entities. - * - Converts three dots into ellipsis. - * - Converts double dashes into em-dashes. + * - Converts double spaces into paragraphs. + * - Converts single line breaks into <br /> tags + * - Converts single and double quotes into correctly facing curly quote entities. + * - Converts three dots into ellipsis. + * - Converts double dashes into em-dashes. * - Converts two spaces into entities * * @access public @@ -78,15 +70,15 @@ class CI_Typography { // Standardize Newlines to make matching easier if (strpos($str, "\r") !== FALSE) { - $str = str_replace(array("\r\n", "\r"), "\n", $str); + $str = str_replace(array("\r\n", "\r"), "\n", $str); } - + // Reduce line breaks. If there are more than two consecutive linebreaks // we'll compress them down to a maximum of two since there's no benefit to more. if ($reduce_linebreaks === TRUE) { $str = preg_replace("/\n\n+/", "\n\n", $str); - } + } // HTML comment tags don't conform to patterns of normal tags, so pull them out separately, only if needed $html_comments = array(); @@ -101,50 +93,50 @@ class CI_Typography { } } } - + // match and yank <pre> tags if they exist. It's cheaper to do this separately since most content will // not contain <pre> tags, and it keeps the PCRE patterns below simpler and faster if (strpos($str, '<pre') !== FALSE) { $str = preg_replace_callback("#<pre.*?>.*?</pre>#si", array($this, '_protect_characters'), $str); } - + // Convert quotes within tags to temporary markers. $str = preg_replace_callback("#<.+?>#si", array($this, '_protect_characters'), $str); // Do the same with braces if necessary if ($this->protect_braced_quotes === TRUE) { - $str = preg_replace_callback("#\{.+?\}#si", array($this, '_protect_characters'), $str); + $str = preg_replace_callback("#\{.+?\}#si", array($this, '_protect_characters'), $str); } - - // Convert "ignore" tags to temporary marker. The parser splits out the string at every tag - // it encounters. Certain inline tags, like image tags, links, span tags, etc. will be + + // Convert "ignore" tags to temporary marker. The parser splits out the string at every tag + // it encounters. Certain inline tags, like image tags, links, span tags, etc. will be // adversely affected if they are split out so we'll convert the opening bracket < temporarily to: {@TAG} $str = preg_replace("#<(/*)(".$this->inline_elements.")([ >])#i", "{@TAG}\\1\\2\\3", $str); // Split the string at every tag. This expression creates an array with this prototype: - // - // [array] - // { - // [0] = <opening tag> - // [1] = Content... - // [2] = <closing tag> - // Etc... - // } + // + // [array] + // { + // [0] = <opening tag> + // [1] = Content... + // [2] = <closing tag> + // Etc... + // } $chunks = preg_split('/(<(?:[^<>]+(?:"[^"]*"|\'[^\']*\')?)+>)/', $str, -1, PREG_SPLIT_DELIM_CAPTURE|PREG_SPLIT_NO_EMPTY); - - // Build our finalized string. We cycle through the array, skipping tags, and processing the contained text + + // Build our finalized string. We cycle through the array, skipping tags, and processing the contained text $str = ''; $process = TRUE; $paragraph = FALSE; $current_chunk = 0; $total_chunks = count($chunks); - + foreach ($chunks as $chunk) - { + { $current_chunk++; - + // Are we dealing with a tag? If so, we'll skip the processing for this cycle. // Well also set the "process" flag which allows us to skip <pre> tags and a few other things. if (preg_match("#<(/*)(".$this->block_elements.").*?>#", $chunk, $match)) @@ -153,7 +145,7 @@ class CI_Typography { { $process = ($match[1] == '/') ? TRUE : FALSE; } - + if ($match[1] == '') { $this->last_block_element = $match[2]; @@ -162,32 +154,32 @@ class CI_Typography { $str .= $chunk; continue; } - + if ($process == FALSE) { $str .= $chunk; continue; } - + // Force a newline to make sure end tags get processed by _format_newlines() if ($current_chunk == $total_chunks) { - $chunk .= "\n"; + $chunk .= "\n"; } - + // Convert Newlines into <p> and <br /> tags $str .= $this->_format_newlines($chunk); } - + // No opening block level tag? Add it if needed. if ( ! preg_match("/^\s*<(?:".$this->block_elements.")/i", $str)) { $str = preg_replace("/^(.*?)<(".$this->block_elements.")/i", '<p>$1</p><$2', $str); } - + // Convert quotes, elipsis, em-dashes, non-breaking spaces, and ampersands $str = $this->format_characters($str); - + // restore HTML comments for ($i = 0, $total = count($html_comments); $i < $total; $i++) { @@ -196,18 +188,18 @@ class CI_Typography { // if '<p>{@HC1}' then replace <p>{@HC1}</p> with the comment, else replace only {@HC1} with the comment $str = preg_replace('#(?(?=<p>\{@HC'.$i.'\})<p>\{@HC'.$i.'\}(\s*</p>)|\{@HC'.$i.'\})#s', $html_comments[$i], $str); } - + // Final clean up $table = array( - + // If the user submitted their own paragraph tags within the text // we will retain them instead of using our tags. - '/(<p[^>*?]>)<p>/' => '$1', // <?php BBEdit syntax coloring bug fix - + '/(<p[^>*?]>)<p>/' => '$1', // <?php BBEdit syntax coloring bug fix + // Reduce multiple instances of opening/closing paragraph tags to a single one '#(</p>)+#' => '</p>', '/(<p>\W*<p>)+/' => '<p>', - + // Clean up stray paragraph tags that appear before block level elements '#<p></p><('.$this->block_elements.')#' => '<$1', @@ -219,10 +211,19 @@ class CI_Typography { '/\{@DQ\}/' => '"', '/\{@SQ\}/' => "'", '/\{@DD\}/' => '--', - '/\{@NBS\}/' => ' ' + '/\{@NBS\}/' => ' ', + // An unintended consequence of the _format_newlines function is that + // some of the newlines get truncated, resulting in <p> tags + // starting immediately after <block> tags on the same line. + // This forces a newline after such occurrences, which looks much nicer. + "/><p>\n/" => ">\n<p>", + + // Similarly, there might be cases where a closing </block> will follow + // a closing </p> tag, so we'll correct it by adding a newline in between + "#</p></#" => "</p>\n</" ); - + // Do we need to reduce empty lines? if ($reduce_linebreaks === TRUE) { @@ -234,13 +235,13 @@ class CI_Typography { // otherwise most browsers won't treat them as true paragraphs $table['#<p></p>#'] = '<p> </p>'; } - + return preg_replace(array_keys($table), $table, $str); } - + // -------------------------------------------------------------------- - + /** * Format Characters * @@ -255,10 +256,10 @@ class CI_Typography { function format_characters($str) { static $table; - + if ( ! isset($table)) { - $table = array( + $table = array( // nested smart quotes, opening and closing // note that rules for grammar (English) allow only for two levels deep // and that single quotes are _supposed_ to always be on the outside @@ -304,7 +305,7 @@ class CI_Typography { return preg_replace(array_keys($table), $table, $str); } - + // -------------------------------------------------------------------- /** @@ -315,47 +316,50 @@ class CI_Typography { * @access public * @param string * @return string - */ + */ function _format_newlines($str) { if ($str == '') { return $str; } - + if (strpos($str, "\n") === FALSE && ! in_array($this->last_block_element, $this->inner_block_required)) { return $str; } - + // Convert two consecutive newlines to paragraphs $str = str_replace("\n\n", "</p>\n\n<p>", $str); - + // Convert single spaces to <br /> tags $str = preg_replace("/([^\n])(\n)([^\n])/", "\\1<br />\\2\\3", $str); - + // Wrap the whole enchilada in enclosing paragraphs if ($str != "\n") { - $str = '<p>'.$str.'</p>'; + // We trim off the right-side new line so that the closing </p> tag + // will be positioned immediately following the string, matching + // the behavior of the opening <p> tag + $str = '<p>'.rtrim($str).'</p>'; } // Remove empty paragraphs if they are on the first line, as this // is a potential unintended consequence of the previous code $str = preg_replace("/<p><\/p>(.*)/", "\\1", $str, 1); - + return $str; } - + // ------------------------------------------------------------------------ - + /** * Protect Characters * * Protects special characters from being formatted later * We don't want quotes converted within tags so we'll temporarily convert them to {@DQ} and {@SQ} - * and we don't want double dashes converted to emdash entities, so they are marked with {@DD} - * likewise double spaces are converted to {@NBS} to prevent entity conversion + * and we don't want double dashes converted to emdash entities, so they are marked with {@DD} + * likewise double spaces are converted to {@NBS} to prevent entity conversion * * @access public * @param array @@ -367,19 +371,19 @@ class CI_Typography { } // -------------------------------------------------------------------- - + /** * Convert newlines to HTML line breaks except within PRE tags * * @access public * @param string * @return string - */ + */ function nl2br_except_pre($str) { $ex = explode("pre>",$str); $ct = count($ex); - + $newstr = ""; for ($i = 0; $i < $ct; $i++) { @@ -391,14 +395,14 @@ class CI_Typography { { $newstr .= $ex[$i]; } - + if ($ct - 1 != $i) $newstr .= "pre>"; } - + return $newstr; } - + } // END Typography Class diff --git a/system/libraries/Unit_test.php b/system/libraries/Unit_test.php index 29aeaae90..5bd7e801a 100644..100755 --- a/system/libraries/Unit_test.php +++ b/system/libraries/Unit_test.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.3.1 @@ -28,19 +28,50 @@ */ class CI_Unit_test { - var $active = TRUE; - var $results = array(); - var $strict = FALSE; - var $_template = NULL; - var $_template_rows = NULL; + var $active = TRUE; + var $results = array(); + var $strict = FALSE; + var $_template = NULL; + var $_template_rows = NULL; + var $_test_items_visible = array(); - function CI_Unit_test() + public function __construct() { + // These are the default items visible when a test is run. + $this->_test_items_visible = array ( + 'test_name', + 'test_datatype', + 'res_datatype', + 'result', + 'file', + 'line', + 'notes' + ); + log_message('debug', "Unit Testing Class Initialized"); - } + } // -------------------------------------------------------------------- - + + /** + * Run the tests + * + * Runs the supplied tests + * + * @access public + * @param array + * @return void + */ + function set_test_items($items = array()) + { + if ( ! empty($items) AND is_array($items)) + { + $this->_test_items_visible = $items; + } + } + + // -------------------------------------------------------------------- + /** * Run the tests * @@ -51,48 +82,49 @@ class CI_Unit_test { * @param mixed * @param string * @return string - */ - function run($test, $expected = TRUE, $test_name = 'undefined') + */ + function run($test, $expected = TRUE, $test_name = 'undefined', $notes = '') { if ($this->active == FALSE) { return FALSE; } - - if (in_array($expected, array('is_string', 'is_bool', 'is_true', 'is_false', 'is_int', 'is_numeric', 'is_float', 'is_double', 'is_array', 'is_null'), TRUE)) + + if (in_array($expected, array('is_object', 'is_string', 'is_bool', 'is_true', 'is_false', 'is_int', 'is_numeric', 'is_float', 'is_double', 'is_array', 'is_null'), TRUE)) { $expected = str_replace('is_float', 'is_double', $expected); - $result = ($expected($test)) ? TRUE : FALSE; + $result = ($expected($test)) ? TRUE : FALSE; $extype = str_replace(array('true', 'false'), 'bool', str_replace('is_', '', $expected)); } else { if ($this->strict == TRUE) - $result = ($test === $expected) ? TRUE : FALSE; + $result = ($test === $expected) ? TRUE : FALSE; else - $result = ($test == $expected) ? TRUE : FALSE; - + $result = ($test == $expected) ? TRUE : FALSE; + $extype = gettype($expected); } - + $back = $this->_backtrace(); - + $report[] = array ( 'test_name' => $test_name, 'test_datatype' => gettype($test), 'res_datatype' => $extype, 'result' => ($result === TRUE) ? 'passed' : 'failed', 'file' => $back['file'], - 'line' => $back['line'] + 'line' => $back['line'], + 'notes' => $notes ); - $this->results[] = $report; - + $this->results[] = $report; + return($this->report($this->result($report))); } // -------------------------------------------------------------------- - + /** * Generate a report * @@ -120,7 +152,6 @@ class CI_Unit_test { foreach ($res as $key => $val) { - if ($key == $CI->lang->line('ut_result')) { if ($val == $CI->lang->line('ut_passed')) @@ -144,9 +175,9 @@ class CI_Unit_test { return $r; } - + // -------------------------------------------------------------------- - + /** * Use strict comparison * @@ -160,9 +191,9 @@ class CI_Unit_test { { $this->strict = ($state == FALSE) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Make Unit testing active * @@ -176,9 +207,9 @@ class CI_Unit_test { { $this->active = ($state == FALSE) ? FALSE : TRUE; } - + // -------------------------------------------------------------------- - + /** * Result Array * @@ -188,21 +219,26 @@ class CI_Unit_test { * @return array */ function result($results = array()) - { + { $CI =& get_instance(); $CI->load->language('unit_test'); - + if (count($results) == 0) { $results = $this->results; } - + $retval = array(); foreach ($results as $result) { $temp = array(); foreach ($result as $key => $val) { + if ( ! in_array($key, $this->_test_items_visible)) + { + continue; + } + if (is_array($val)) { foreach ($val as $k => $v) @@ -210,8 +246,8 @@ class CI_Unit_test { if (FALSE !== ($line = $CI->lang->line(strtolower('ut_'.$v)))) { $v = $line; - } - $temp[$CI->lang->line('ut_'.$k)] = $v; + } + $temp[$CI->lang->line('ut_'.$k)] = $v; } } else @@ -219,19 +255,19 @@ class CI_Unit_test { if (FALSE !== ($line = $CI->lang->line(strtolower('ut_'.$val)))) { $val = $line; - } + } $temp[$CI->lang->line('ut_'.$key)] = $val; } } - + $retval[] = $temp; } - + return $retval; } - + // -------------------------------------------------------------------- - + /** * Set the template * @@ -240,14 +276,14 @@ class CI_Unit_test { * @access public * @param string * @return void - */ + */ function set_template($template) { $this->_template = $template; } - + // -------------------------------------------------------------------- - + /** * Generate a backtrace * @@ -261,17 +297,17 @@ class CI_Unit_test { if (function_exists('debug_backtrace')) { $back = debug_backtrace(); - + $file = ( ! isset($back['1']['file'])) ? '' : $back['1']['file']; $line = ( ! isset($back['1']['line'])) ? '' : $back['1']['line']; - + return array('file' => $file, 'line' => $line); } return array('file' => 'Unknown', 'line' => 'Unknown'); } // -------------------------------------------------------------------- - + /** * Get Default Template * @@ -279,17 +315,17 @@ class CI_Unit_test { * @return string */ function _default_template() - { + { $this->_template = "\n".'<table style="width:100%; font-size:small; margin:10px 0; border-collapse:collapse; border:1px solid #CCC;">'; $this->_template .= '{rows}'; $this->_template .= "\n".'</table>'; - + $this->_template_rows = "\n\t".'<tr>'; $this->_template_rows .= "\n\t\t".'<th style="text-align: left; border-bottom:1px solid #CCC;">{item}</th>'; $this->_template_rows .= "\n\t\t".'<td style="border-bottom:1px solid #CCC;">{result}</td>'; - $this->_template_rows .= "\n\t".'</tr>'; + $this->_template_rows .= "\n\t".'</tr>'; } - + // -------------------------------------------------------------------- /** @@ -300,29 +336,29 @@ class CI_Unit_test { * @access private * @return void */ - function _parse_template() - { - if ( ! is_null($this->_template_rows)) - { - return; - } - - if (is_null($this->_template)) - { - $this->_default_template(); - return; - } - + function _parse_template() + { + if ( ! is_null($this->_template_rows)) + { + return; + } + + if (is_null($this->_template)) + { + $this->_default_template(); + return; + } + if ( ! preg_match("/\{rows\}(.*?)\{\/rows\}/si", $this->_template, $match)) { - $this->_default_template(); - return; + $this->_default_template(); + return; } $this->_template_rows = $match['1']; - $this->_template = str_replace($match['0'], '{rows}', $this->_template); - } - + $this->_template = str_replace($match['0'], '{rows}', $this->_template); + } + } // END Unit_test Class diff --git a/system/libraries/Upload.php b/system/libraries/Upload.php index a97b7bdfb..8f84ffd7e 100644..100755 --- a/system/libraries/Upload.php +++ b/system/libraries/Upload.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -25,59 +25,59 @@ * @link http://codeigniter.com/user_guide/libraries/file_uploading.html */ class CI_Upload { - - var $max_size = 0; - var $max_width = 0; - var $max_height = 0; - var $max_filename = 0; - var $allowed_types = ""; - var $file_temp = ""; - var $file_name = ""; - var $orig_name = ""; - var $file_type = ""; - var $file_size = ""; - var $file_ext = ""; - var $upload_path = ""; - var $overwrite = FALSE; - var $encrypt_name = FALSE; - var $is_image = FALSE; - var $image_width = ''; - var $image_height = ''; - var $image_type = ''; - var $image_size_str = ''; - var $error_msg = array(); - var $mimes = array(); - var $remove_spaces = TRUE; - var $xss_clean = FALSE; - var $temp_prefix = "temp_file_"; - var $client_name = ''; - - var $_file_name_override = ''; + + public $max_size = 0; + public $max_width = 0; + public $max_height = 0; + public $max_filename = 0; + public $allowed_types = ""; + public $file_temp = ""; + public $file_name = ""; + public $orig_name = ""; + public $file_type = ""; + public $file_size = ""; + public $file_ext = ""; + public $upload_path = ""; + public $overwrite = FALSE; + public $encrypt_name = FALSE; + public $is_image = FALSE; + public $image_width = ''; + public $image_height = ''; + public $image_type = ''; + public $image_size_str = ''; + public $error_msg = array(); + public $mimes = array(); + public $remove_spaces = TRUE; + public $xss_clean = FALSE; + public $temp_prefix = "temp_file_"; + public $client_name = ''; + + protected $_file_name_override = ''; + /** * Constructor * * @access public */ - function CI_Upload($props = array()) + public function __construct($props = array()) { if (count($props) > 0) { $this->initialize($props); } - + log_message('debug', "Upload Class Initialized"); } - + // -------------------------------------------------------------------- - + /** * Initialize preferences * - * @access public * @param array * @return void - */ - function initialize($config = array()) + */ + public function initialize($config = array()) { $defaults = array( 'max_size' => 0, @@ -105,9 +105,9 @@ class CI_Upload { 'xss_clean' => FALSE, 'temp_prefix' => "temp_file_", 'client_name' => '' - ); - - + ); + + foreach ($defaults as $key => $val) { if (isset($config[$key])) @@ -120,28 +120,27 @@ class CI_Upload { else { $this->$key = $config[$key]; - } + } } else { $this->$key = $val; } } - + // if a file_name was provided in the config, use it instead of the user input // supplied file name for all uploads until initialized again $this->_file_name_override = $this->file_name; } - + // -------------------------------------------------------------------- - + /** * Perform the file upload * - * @access public * @return bool - */ - function do_upload($field = 'userfile') + */ + public function do_upload($field = 'userfile') { // Is $_FILES[$field] set? If not, no reason to continue. if ( ! isset($_FILES[$field])) @@ -149,7 +148,7 @@ class CI_Upload { $this->set_error('upload_no_file_selected'); return FALSE; } - + // Is the upload path valid? if ( ! $this->validate_upload_path()) { @@ -171,10 +170,10 @@ class CI_Upload { $this->set_error('upload_file_exceeds_form_limit'); break; case 3: // UPLOAD_ERR_PARTIAL - $this->set_error('upload_file_partial'); + $this->set_error('upload_file_partial'); break; case 4: // UPLOAD_ERR_NO_FILE - $this->set_error('upload_no_file_selected'); + $this->set_error('upload_no_file_selected'); break; case 6: // UPLOAD_ERR_NO_TMP_DIR $this->set_error('upload_no_temp_directory'); @@ -192,9 +191,10 @@ class CI_Upload { return FALSE; } + // Set the uploaded data as class variables - $this->file_temp = $_FILES[$field]['tmp_name']; - $this->file_size = $_FILES[$field]['size']; + $this->file_temp = $_FILES[$field]['tmp_name']; + $this->file_size = $_FILES[$field]['size']; $this->file_type = preg_replace("/^(.+?);.*$/", "\\1", $_FILES[$field]['type']); $this->file_type = strtolower(trim(stripslashes($this->file_type), '"')); $this->file_name = $this->_prep_filename($_FILES[$field]['name']); @@ -207,20 +207,31 @@ class CI_Upload { $this->set_error('upload_invalid_filetype'); return FALSE; } - + // if we're overriding, let's now make sure the new name and type is allowed if ($this->_file_name_override != '') { $this->file_name = $this->_prep_filename($this->_file_name_override); - $this->file_ext = $this->get_extension($this->file_name); + + // If no extension was provided in the file_name config item, use the uploaded one + if(strpos($this->_file_name_override, '.') === FALSE) + { + $this->file_name .= $this->file_ext; + } + + // An extension was provided, lets have it! + else + { + $this->file_ext = $this->get_extension($this->_file_name_override); + } if ( ! $this->is_allowed_filetype(TRUE)) { $this->set_error('upload_invalid_filetype'); - return FALSE; + return FALSE; } } - + // Convert the file size to kilobytes if ($this->file_size > 0) { @@ -244,7 +255,7 @@ class CI_Upload { // Sanitize the file name for security $this->file_name = $this->clean_file_name($this->file_name); - + // Truncate the file name if it's too long if ($this->max_filename > 0) { @@ -268,7 +279,7 @@ class CI_Upload { if ($this->overwrite == FALSE) { $this->file_name = $this->set_filename($this->upload_path, $this->file_name); - + if ($this->file_name === FALSE) { return FALSE; @@ -276,6 +287,21 @@ class CI_Upload { } /* + * Run the file through the XSS hacking filter + * This helps prevent malicious code from being + * embedded within a file. Scripts can easily + * be disguised as images or other file types. + */ + if ($this->xss_clean) + { + if ($this->do_xss_clean() === FALSE) + { + $this->set_error('upload_unable_to_write_file'); + return FALSE; + } + } + + /* * Move the file to the final destination * To deal with different server configurations * we'll attempt to use copy() first. If that fails @@ -286,21 +312,10 @@ class CI_Upload { { if ( ! @move_uploaded_file($this->file_temp, $this->upload_path.$this->file_name)) { - $this->set_error('upload_destination_error'); - return FALSE; + $this->set_error('upload_destination_error'); + return FALSE; } } - - /* - * Run the file through the XSS hacking filter - * This helps prevent malicious code from being - * embedded within a file. Scripts can easily - * be disguised as images or other file types. - */ - if ($this->xss_clean == TRUE) - { - $this->do_xss_clean(); - } /* * Set the finalized image dimensions @@ -312,19 +327,18 @@ class CI_Upload { return TRUE; } - + // -------------------------------------------------------------------- - + /** * Finalized Data Array - * + * * Returns an associative array containing all of the information * related to the upload, allowing the developer easy access in one array. * - * @access public * @return array - */ - function data() + */ + public function data() { return array ( 'file_name' => $this->file_name, @@ -343,24 +357,23 @@ class CI_Upload { 'image_size_str' => $this->image_size_str, ); } - + // -------------------------------------------------------------------- - + /** * Set Upload Path * - * @access public * @param string * @return void - */ - function set_upload_path($path) + */ + public function set_upload_path($path) { // Make sure it has a trailing slash $this->upload_path = rtrim($path, '/').'/'; } - + // -------------------------------------------------------------------- - + /** * Set the file name * @@ -368,29 +381,28 @@ class CI_Upload { * existence of a file with the same name. If found, it will append a * number to the end of the filename to avoid overwriting a pre-existing file. * - * @access public * @param string * @param string * @return string - */ - function set_filename($path, $filename) + */ + public function set_filename($path, $filename) { if ($this->encrypt_name == TRUE) - { + { mt_srand(); - $filename = md5(uniqid(mt_rand())).$this->file_ext; + $filename = md5(uniqid(mt_rand())).$this->file_ext; } - + if ( ! file_exists($path.$filename)) { return $filename; } - + $filename = str_replace($this->file_ext, '', $filename); - + $new_filename = ''; for ($i = 1; $i < 100; $i++) - { + { if ( ! file_exists($path.$filename.$i.$this->file_ext)) { $new_filename = $filename.$i.$this->file_ext; @@ -408,89 +420,88 @@ class CI_Upload { return $new_filename; } } - + // -------------------------------------------------------------------- - + /** * Set Maximum File Size * - * @access public * @param integer * @return void - */ - function set_max_filesize($n) + */ + public function set_max_filesize($n) { $this->max_size = ((int) $n < 0) ? 0: (int) $n; } - + // -------------------------------------------------------------------- - + /** * Set Maximum File Name Length * - * @access public * @param integer * @return void - */ - function set_max_filename($n) + */ + public function set_max_filename($n) { $this->max_filename = ((int) $n < 0) ? 0: (int) $n; } // -------------------------------------------------------------------- - + /** * Set Maximum Image Width * - * @access public * @param integer * @return void - */ - function set_max_width($n) + */ + public function set_max_width($n) { $this->max_width = ((int) $n < 0) ? 0: (int) $n; } - + // -------------------------------------------------------------------- - + /** * Set Maximum Image Height * - * @access public * @param integer * @return void - */ - function set_max_height($n) + */ + public function set_max_height($n) { $this->max_height = ((int) $n < 0) ? 0: (int) $n; } - + // -------------------------------------------------------------------- - + /** * Set Allowed File Types * - * @access public * @param string * @return void - */ - function set_allowed_types($types) + */ + public function set_allowed_types($types) { + if ( ! is_array($types) && $types == '*') + { + $this->allowed_types = '*'; + return; + } $this->allowed_types = explode('|', $types); } - + // -------------------------------------------------------------------- - + /** * Set Image Properties * * Uses GD to determine the width/height/type of image * - * @access public * @param string * @return void - */ - function set_image_properties($path = '') + */ + public function set_image_properties($path = '') { if ( ! $this->is_image()) { @@ -500,7 +511,7 @@ class CI_Upload { if (function_exists('getimagesize')) { if (FALSE !== ($D = @getimagesize($path))) - { + { $types = array(1 => 'gif', 2 => 'jpeg', 3 => 'png'); $this->image_width = $D['0']; @@ -510,45 +521,43 @@ class CI_Upload { } } } - + // -------------------------------------------------------------------- - + /** * Set XSS Clean * * Enables the XSS flag so that the file that was uploaded * will be run through the XSS filter. * - * @access public * @param bool * @return void */ - function set_xss_clean($flag = FALSE) + public function set_xss_clean($flag = FALSE) { $this->xss_clean = ($flag == TRUE) ? TRUE : FALSE; } - + // -------------------------------------------------------------------- - + /** * Validate the image * - * @access public * @return bool - */ - function is_image() + */ + public function is_image() { // IE will sometimes return odd mime-types during upload, so here we just standardize all // jpegs or pngs to the same file type. $png_mimes = array('image/x-png'); $jpeg_mimes = array('image/jpg', 'image/jpe', 'image/jpeg', 'image/pjpeg'); - + if (in_array($this->file_type, $png_mimes)) { $this->file_type = 'image/png'; } - + if (in_array($this->file_type, $jpeg_mimes)) { $this->file_type = 'image/jpeg'; @@ -558,29 +567,33 @@ class CI_Upload { 'image/gif', 'image/jpeg', 'image/png', - ); + ); return (in_array($this->file_type, $img_mimes, TRUE)) ? TRUE : FALSE; } - + // -------------------------------------------------------------------- - + /** * Verify that the filetype is allowed * - * @access public * @return bool - */ - function is_allowed_filetype($ignore_mime = FALSE) + */ + public function is_allowed_filetype($ignore_mime = FALSE) { + if ($this->allowed_types == '*') + { + return TRUE; + } + if (count($this->allowed_types) == 0 OR ! is_array($this->allowed_types)) { $this->set_error('upload_no_file_types'); return FALSE; } - + $ext = strtolower(ltrim($this->file_ext, '.')); - + if ( ! in_array($ext, $this->allowed_types)) { return FALSE; @@ -594,40 +607,39 @@ class CI_Upload { if (getimagesize($this->file_temp) === FALSE) { return FALSE; - } + } } if ($ignore_mime === TRUE) { return TRUE; } - + $mime = $this->mimes_types($ext); - + if (is_array($mime)) { if (in_array($this->file_type, $mime, TRUE)) { return TRUE; - } + } } elseif ($mime == $this->file_type) { return TRUE; } - + return FALSE; } - + // -------------------------------------------------------------------- - + /** * Verify that the file is within the allowed size * - * @access public * @return bool - */ - function is_allowed_filesize() + */ + public function is_allowed_filesize() { if ($this->max_size != 0 AND $this->file_size > $this->max_size) { @@ -638,16 +650,15 @@ class CI_Upload { return TRUE; } } - + // -------------------------------------------------------------------- - + /** * Verify that the image is within the allowed width/height * - * @access public * @return bool - */ - function is_allowed_dimensions() + */ + public function is_allowed_dimensions() { if ( ! $this->is_image()) { @@ -673,26 +684,25 @@ class CI_Upload { return TRUE; } - + // -------------------------------------------------------------------- - + /** * Validate Upload Path * * Verifies that it is a valid upload path with proper permissions. * * - * @access public * @return bool - */ - function validate_upload_path() + */ + public function validate_upload_path() { if ($this->upload_path == '') { $this->set_error('upload_no_filepath'); return FALSE; } - + if (function_exists('realpath') AND @realpath($this->upload_path) !== FALSE) { $this->upload_path = str_replace("\\", "/", realpath($this->upload_path)); @@ -713,32 +723,30 @@ class CI_Upload { $this->upload_path = preg_replace("/(.+?)\/*$/", "\\1/", $this->upload_path); return TRUE; } - + // -------------------------------------------------------------------- - + /** * Extract the file extension * - * @access public * @param string * @return string - */ - function get_extension($filename) + */ + public function get_extension($filename) { $x = explode('.', $filename); return '.'.end($x); - } - + } + // -------------------------------------------------------------------- - + /** * Clean the file name for security * - * @access public * @param string * @return string - */ - function clean_file_name($filename) + */ + public function clean_file_name($filename) { $bad = array( "<!--", @@ -756,40 +764,39 @@ class CI_Upload { "%20", "%22", "%3c", // < - "%253c", // < - "%3e", // > - "%0e", // > - "%28", // ( - "%29", // ) - "%2528", // ( - "%26", // & - "%24", // $ - "%3f", // ? - "%3b", // ; + "%253c", // < + "%3e", // > + "%0e", // > + "%28", // ( + "%29", // ) + "%2528", // ( + "%26", // & + "%24", // $ + "%3f", // ? + "%3b", // ; "%3d" // = ); - + $filename = str_replace($bad, '', $filename); return stripslashes($filename); } // -------------------------------------------------------------------- - + /** * Limit the File Name Length * - * @access public * @param string * @return string - */ - function limit_filename_length($filename, $length) + */ + public function limit_filename_length($filename, $length) { if (strlen($filename) < $length) { return $filename; } - + $ext = ''; if (strpos($filename, '.') !== FALSE) { @@ -797,12 +804,12 @@ class CI_Upload { $ext = '.'.array_pop($parts); $filename = implode('.', $parts); } - + return substr($filename, 0, ($length - strlen($ext))).$ext; } // -------------------------------------------------------------------- - + /** * Runs the file through the XSS clean function * @@ -810,59 +817,93 @@ class CI_Upload { * I'm not sure that it won't negatively affect certain files in unexpected ways, * but so far I haven't found that it causes trouble. * - * @access public * @return void - */ - function do_xss_clean() - { - $file = $this->upload_path.$this->file_name; - + */ + public function do_xss_clean() + { + $file = $this->file_temp; + if (filesize($file) == 0) { return FALSE; } + if (function_exists('memory_get_usage') && memory_get_usage() && ini_get('memory_limit') != '') + { + $current = ini_get('memory_limit') * 1024 * 1024; + + // There was a bug/behavioural change in PHP 5.2, where numbers over one million get output + // into scientific notation. number_format() ensures this number is an integer + // http://bugs.php.net/bug.php?id=43053 + + $new_memory = number_format(ceil(filesize($file) + $current), 0, '.', ''); + + ini_set('memory_limit', $new_memory); // When an integer is used, the value is measured in bytes. - PHP.net + } + + // If the file being uploaded is an image, then we should have no problem with XSS attacks (in theory), but + // IE can be fooled into mime-type detecting a malformed image as an html file, thus executing an XSS attack on anyone + // using IE who looks at the image. It does this by inspecting the first 255 bytes of an image. To get around this + // CI will itself look at the first 255 bytes of an image to determine its relative safety. This can save a lot of + // processor power and time if it is actually a clean image, as it will be in nearly all instances _except_ an + // attempted XSS attack. + + if (function_exists('getimagesize') && @getimagesize($file) !== FALSE) + { + if (($file = @fopen($file, 'rb')) === FALSE) // "b" to force binary + { + return FALSE; // Couldn't open the file, return FALSE + } + + $opening_bytes = fread($file, 256); + fclose($file); + + // These are known to throw IE into mime-type detection chaos + // <a, <body, <head, <html, <img, <plaintext, <pre, <script, <table, <title + // title is basically just in SVG, but we filter it anyhow + + if ( ! preg_match('/<(a|body|head|html|img|plaintext|pre|script|table|title)[\s>]/i', $opening_bytes)) + { + return TRUE; // its an image, no "triggers" detected in the first 256 bytes, we're good + } + } + if (($data = @file_get_contents($file)) === FALSE) { return FALSE; } - - if ( ! $fp = @fopen($file, FOPEN_READ_WRITE)) + + $CI =& get_instance(); + + if ( ! isset($CI->security)) { - return FALSE; + $CI->load->library('security'); } - $CI =& get_instance(); - $data = $CI->input->xss_clean($data); - - flock($fp, LOCK_EX); - fwrite($fp, $data); - flock($fp, LOCK_UN); - fclose($fp); + return $CI->security->xss_clean($data, TRUE); } - + // -------------------------------------------------------------------- - + /** * Set an error message * - * @access public * @param string * @return void - */ - function set_error($msg) + */ + public function set_error($msg) { - $CI =& get_instance(); + $CI =& get_instance(); $CI->lang->load('upload'); - + if (is_array($msg)) { foreach ($msg as $val) { - $msg = ($CI->lang->line($val) == FALSE) ? $val : $CI->lang->line($val); + $msg = ($CI->lang->line($val) == FALSE) ? $val : $CI->lang->line($val); $this->error_msg[] = $msg; log_message('error', $msg); - } + } } else { @@ -871,44 +912,42 @@ class CI_Upload { log_message('error', $msg); } } - + // -------------------------------------------------------------------- - + /** * Display the error message * - * @access public * @param string * @param string * @return string - */ - function display_errors($open = '<p>', $close = '</p>') + */ + public function display_errors($open = '<p>', $close = '</p>') { $str = ''; foreach ($this->error_msg as $val) { $str .= $open.$val.$close; } - + return $str; } - + // -------------------------------------------------------------------- - + /** * List of Mime Types * * This is a list of mime types. We use it to validate * the "allowed types" set by the developer * - * @access public * @param string * @return string - */ - function mimes_types($mime) + */ + public function mimes_types($mime) { global $mimes; - + if (count($this->mimes) == 0) { if (@require_once(APPPATH.'config/mimes'.EXT)) @@ -917,25 +956,24 @@ class CI_Upload { unset($mimes); } } - + return ( ! isset($this->mimes[$mime])) ? FALSE : $this->mimes[$mime]; } // -------------------------------------------------------------------- - + /** * Prep Filename * * Prevents possible script execution from Apache's handling of files multiple extensions * http://httpd.apache.org/docs/1.3/mod/mod_mime.html#multipleext * - * @access private * @param string * @return string */ - function _prep_filename($filename) + protected function _prep_filename($filename) { - if (strpos($filename, '.') === FALSE) + if (strpos($filename, '.') === FALSE OR $this->allowed_types == '*') { return $filename; } @@ -957,7 +995,7 @@ class CI_Upload { } $filename .= '.'.$ext; - + return $filename; } diff --git a/system/libraries/User_agent.php b/system/libraries/User_agent.php index a7c7a7609..c62174836 100644..100755 --- a/system/libraries/User_agent.php +++ b/system/libraries/User_agent.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -29,25 +29,25 @@ class CI_User_agent { var $agent = NULL; - + var $is_browser = FALSE; var $is_robot = FALSE; var $is_mobile = FALSE; var $languages = array(); var $charsets = array(); - + var $platforms = array(); var $browsers = array(); var $mobiles = array(); var $robots = array(); - + var $platform = ''; var $browser = ''; var $version = ''; var $mobile = ''; var $robot = ''; - + /** * Constructor * @@ -55,14 +55,14 @@ class CI_User_agent { * * @access public * @return void - */ - function CI_User_agent() + */ + public function __construct() { if (isset($_SERVER['HTTP_USER_AGENT'])) { $this->agent = trim($_SERVER['HTTP_USER_AGENT']); } - + if ( ! is_null($this->agent)) { if ($this->_load_agent_file()) @@ -70,27 +70,27 @@ class CI_User_agent { $this->_compile_data(); } } - + log_message('debug', "User Agent Class Initialized"); } - + // -------------------------------------------------------------------- - + /** * Compile the User Agent Data * * @access private * @return bool - */ - function _load_agent_file() + */ + private function _load_agent_file() { if ( ! @include(APPPATH.'config/user_agents'.EXT)) { return FALSE; } - + $return = FALSE; - + if (isset($platforms)) { $this->platforms = $platforms; @@ -111,7 +111,7 @@ class CI_User_agent { unset($mobiles); $return = TRUE; } - + if (isset($robots)) { $this->robots = $robots; @@ -121,37 +121,37 @@ class CI_User_agent { return $return; } - + // -------------------------------------------------------------------- - + /** * Compile the User Agent Data * * @access private * @return bool - */ - function _compile_data() + */ + private function _compile_data() { $this->_set_platform(); - + foreach (array('_set_browser', '_set_robot', '_set_mobile') as $function) { if ($this->$function() === TRUE) { break; } - } + } } - + // -------------------------------------------------------------------- - + /** * Set the Platform * * @access private * @return mixed - */ - function _set_platform() + */ + private function _set_platform() { if (is_array($this->platforms) AND count($this->platforms) > 0) { @@ -168,19 +168,19 @@ class CI_User_agent { } // -------------------------------------------------------------------- - + /** * Set the Browser * * @access private * @return bool - */ - function _set_browser() + */ + private function _set_browser() { if (is_array($this->browsers) AND count($this->browsers) > 0) { foreach ($this->browsers as $key => $val) - { + { if (preg_match("|".preg_quote($key).".*?([0-9\.]+)|i", $this->agent, $match)) { $this->is_browser = TRUE; @@ -193,19 +193,19 @@ class CI_User_agent { } return FALSE; } - + // -------------------------------------------------------------------- - + /** * Set the Robot * * @access private * @return bool - */ - function _set_robot() + */ + private function _set_robot() { if (is_array($this->robots) AND count($this->robots) > 0) - { + { foreach ($this->robots as $key => $val) { if (preg_match("|".preg_quote($key)."|i", $this->agent)) @@ -220,17 +220,17 @@ class CI_User_agent { } // -------------------------------------------------------------------- - + /** * Set the Mobile Device * * @access private * @return bool - */ - function _set_mobile() + */ + private function _set_mobile() { if (is_array($this->mobiles) AND count($this->mobiles) > 0) - { + { foreach ($this->mobiles as $key => $val) { if (FALSE !== (strpos(strtolower($this->agent), $key))) @@ -240,261 +240,296 @@ class CI_User_agent { return TRUE; } } - } + } return FALSE; } - + // -------------------------------------------------------------------- - + /** * Set the accepted languages * * @access private * @return void - */ - function _set_languages() + */ + private function _set_languages() { if ((count($this->languages) == 0) AND isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) AND $_SERVER['HTTP_ACCEPT_LANGUAGE'] != '') { $languages = preg_replace('/(;q=[0-9\.]+)/i', '', strtolower(trim($_SERVER['HTTP_ACCEPT_LANGUAGE']))); - + $this->languages = explode(',', $languages); } - + if (count($this->languages) == 0) { $this->languages = array('Undefined'); - } + } } - + // -------------------------------------------------------------------- - + /** * Set the accepted character sets * * @access private * @return void - */ - function _set_charsets() - { + */ + private function _set_charsets() + { if ((count($this->charsets) == 0) AND isset($_SERVER['HTTP_ACCEPT_CHARSET']) AND $_SERVER['HTTP_ACCEPT_CHARSET'] != '') { $charsets = preg_replace('/(;q=.+)/i', '', strtolower(trim($_SERVER['HTTP_ACCEPT_CHARSET']))); - + $this->charsets = explode(',', $charsets); } - + if (count($this->charsets) == 0) { $this->charsets = array('Undefined'); - } + } } // -------------------------------------------------------------------- - + /** * Is Browser * * @access public * @return bool - */ - function is_browser() + */ + public function is_browser($key = NULL) { - return $this->is_browser; + if ( ! $this->is_browser) + { + return FALSE; + } + + // No need to be specific, it's a browser + if ($key === NULL) + { + return TRUE; + } + + // Check for a specific browser + return array_key_exists($key, $this->browsers) AND $this->browser === $this->browsers[$key]; } // -------------------------------------------------------------------- - + /** * Is Robot * * @access public * @return bool - */ - function is_robot() + */ + public function is_robot($key = NULL) { - return $this->is_robot; + if ( ! $this->is_robot) + { + return FALSE; + } + + // No need to be specific, it's a robot + if ($key === NULL) + { + return TRUE; + } + + // Check for a specific robot + return array_key_exists($key, $this->robots) AND $this->robot === $this->robots[$key]; } // -------------------------------------------------------------------- - + /** * Is Mobile * * @access public * @return bool - */ - function is_mobile() + */ + public function is_mobile($key = NULL) { - return $this->is_mobile; - } + if ( ! $this->is_mobile) + { + return FALSE; + } + + // No need to be specific, it's a mobile + if ($key === NULL) + { + return TRUE; + } + + // Check for a specific robot + return array_key_exists($key, $this->mobiles) AND $this->mobile === $this->mobiles[$key]; + } // -------------------------------------------------------------------- - + /** * Is this a referral from another site? * * @access public * @return bool - */ - function is_referral() + */ + public function is_referral() { - return ( ! isset($_SERVER['HTTP_REFERER']) OR $_SERVER['HTTP_REFERER'] == '') ? FALSE : TRUE; + return ( ! isset($_SERVER['HTTP_REFERER']) OR $_SERVER['HTTP_REFERER'] == ''); } // -------------------------------------------------------------------- - + /** * Agent String * * @access public * @return string - */ - function agent_string() + */ + public function agent_string() { return $this->agent; } // -------------------------------------------------------------------- - + /** * Get Platform * * @access public * @return string - */ - function platform() + */ + public function platform() { return $this->platform; } // -------------------------------------------------------------------- - + /** * Get Browser Name * * @access public * @return string - */ - function browser() + */ + public function browser() { return $this->browser; } // -------------------------------------------------------------------- - + /** * Get the Browser Version * * @access public * @return string - */ - function version() + */ + public function version() { return $this->version; } // -------------------------------------------------------------------- - + /** * Get The Robot Name * * @access public * @return string - */ - function robot() + */ + public function robot() { return $this->robot; } // -------------------------------------------------------------------- - + /** * Get the Mobile Device * * @access public * @return string - */ - function mobile() + */ + public function mobile() { return $this->mobile; } - + // -------------------------------------------------------------------- - + /** * Get the referrer * * @access public * @return bool - */ - function referrer() + */ + public function referrer() { return ( ! isset($_SERVER['HTTP_REFERER']) OR $_SERVER['HTTP_REFERER'] == '') ? '' : trim($_SERVER['HTTP_REFERER']); } // -------------------------------------------------------------------- - + /** * Get the accepted languages * * @access public * @return array - */ - function languages() + */ + public function languages() { if (count($this->languages) == 0) { $this->_set_languages(); } - + return $this->languages; } // -------------------------------------------------------------------- - + /** * Get the accepted Character Sets * * @access public * @return array - */ - function charsets() + */ + public function charsets() { if (count($this->charsets) == 0) { $this->_set_charsets(); } - + return $this->charsets; } - + // -------------------------------------------------------------------- - + /** * Test for a particular language * * @access public * @return bool - */ - function accept_lang($lang = 'en') + */ + public function accept_lang($lang = 'en') { - return (in_array(strtolower($lang), $this->languages(), TRUE)) ? TRUE : FALSE; + return (in_array(strtolower($lang), $this->languages(), TRUE)); } - + // -------------------------------------------------------------------- - + /** * Test for a particular character set * * @access public * @return bool - */ - function accept_charset($charset = 'utf-8') + */ + public function accept_charset($charset = 'utf-8') { - return (in_array(strtolower($charset), $this->charsets(), TRUE)) ? TRUE : FALSE; + return (in_array(strtolower($charset), $this->charsets(), TRUE)); } - - + } diff --git a/system/libraries/Validation.php b/system/libraries/Validation.php deleted file mode 100644 index a42b7760b..000000000 --- a/system/libraries/Validation.php +++ /dev/null @@ -1,875 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * Validation Class - * - * @package CodeIgniter - * @subpackage Libraries - * @category Validation - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/libraries/validation.html - */ -class CI_Validation { - - var $CI; - var $error_string = ''; - var $_error_array = array(); - var $_rules = array(); - var $_fields = array(); - var $_error_messages = array(); - var $_current_field = ''; - var $_safe_form_data = FALSE; - var $_error_prefix = '<p>'; - var $_error_suffix = '</p>'; - - - - /** - * Constructor - * - */ - function CI_Validation() - { - $this->CI =& get_instance(); - - if (function_exists('mb_internal_encoding')) - { - mb_internal_encoding($this->CI->config->item('charset')); - } - - log_message('debug', "Validation Class Initialized"); - } - - // -------------------------------------------------------------------- - - /** - * Set Fields - * - * This function takes an array of field names as input - * and generates class variables with the same name, which will - * either be blank or contain the $_POST value corresponding to it - * - * @access public - * @param string - * @param string - * @return void - */ - function set_fields($data = '', $field = '') - { - if ($data == '') - { - if (count($this->_fields) == 0) - { - return FALSE; - } - } - else - { - if ( ! is_array($data)) - { - $data = array($data => $field); - } - - if (count($data) > 0) - { - $this->_fields = $data; - } - } - - foreach($this->_fields as $key => $val) - { - $this->$key = ( ! isset($_POST[$key])) ? '' : $this->prep_for_form($_POST[$key]); - - $error = $key.'_error'; - if ( ! isset($this->$error)) - { - $this->$error = ''; - } - } - } - - // -------------------------------------------------------------------- - - /** - * Set Rules - * - * This function takes an array of field names and validation - * rules as input ad simply stores is for use later. - * - * @access public - * @param mixed - * @param string - * @return void - */ - function set_rules($data, $rules = '') - { - if ( ! is_array($data)) - { - if ($rules == '') - return; - - $data = array($data => $rules); - } - - foreach ($data as $key => $val) - { - $this->_rules[$key] = $val; - } - } - - // -------------------------------------------------------------------- - - /** - * Set Error Message - * - * Lets users set their own error messages on the fly. Note: The key - * name has to match the function name that it corresponds to. - * - * @access public - * @param string - * @param string - * @return string - */ - function set_message($lang, $val = '') - { - if ( ! is_array($lang)) - { - $lang = array($lang => $val); - } - - $this->_error_messages = array_merge($this->_error_messages, $lang); - } - - // -------------------------------------------------------------------- - - /** - * Set The Error Delimiter - * - * Permits a prefix/suffix to be added to each error message - * - * @access public - * @param string - * @param string - * @return void - */ - function set_error_delimiters($prefix = '<p>', $suffix = '</p>') - { - $this->_error_prefix = $prefix; - $this->_error_suffix = $suffix; - } - - // -------------------------------------------------------------------- - - /** - * Run the Validator - * - * This function does all the work. - * - * @access public - * @return bool - */ - function run() - { - // Do we even have any data to process? Mm? - if (count($_POST) == 0 OR count($this->_rules) == 0) - { - return FALSE; - } - - // Load the language file containing error messages - $this->CI->lang->load('validation'); - - // Cycle through the rules and test for errors - foreach ($this->_rules as $field => $rules) - { - //Explode out the rules! - $ex = explode('|', $rules); - - // Is the field required? If not, if the field is blank we'll move on to the next test - if ( ! in_array('required', $ex, TRUE)) - { - if ( ! isset($_POST[$field]) OR $_POST[$field] == '') - { - continue; - } - } - - /* - * Are we dealing with an "isset" rule? - * - * Before going further, we'll see if one of the rules - * is to check whether the item is set (typically this - * applies only to checkboxes). If so, we'll - * test for it here since there's not reason to go - * further - */ - if ( ! isset($_POST[$field])) - { - if (in_array('isset', $ex, TRUE) OR in_array('required', $ex)) - { - if ( ! isset($this->_error_messages['isset'])) - { - if (FALSE === ($line = $this->CI->lang->line('isset'))) - { - $line = 'The field was not set'; - } - } - else - { - $line = $this->_error_messages['isset']; - } - - // Build the error message - $mfield = ( ! isset($this->_fields[$field])) ? $field : $this->_fields[$field]; - $message = sprintf($line, $mfield); - - // Set the error variable. Example: $this->username_error - $error = $field.'_error'; - $this->$error = $this->_error_prefix.$message.$this->_error_suffix; - $this->_error_array[] = $message; - } - - continue; - } - - /* - * Set the current field - * - * The various prepping functions need to know the - * current field name so they can do this: - * - * $_POST[$this->_current_field] == 'bla bla'; - */ - $this->_current_field = $field; - - // Cycle through the rules! - foreach ($ex As $rule) - { - // Is the rule a callback? - $callback = FALSE; - if (substr($rule, 0, 9) == 'callback_') - { - $rule = substr($rule, 9); - $callback = TRUE; - } - - // Strip the parameter (if exists) from the rule - // Rules can contain a parameter: max_length[5] - $param = FALSE; - if (preg_match("/(.*?)\[(.*?)\]/", $rule, $match)) - { - $rule = $match[1]; - $param = $match[2]; - } - - // Call the function that corresponds to the rule - if ($callback === TRUE) - { - if ( ! method_exists($this->CI, $rule)) - { - continue; - } - - $result = $this->CI->$rule($_POST[$field], $param); - - // If the field isn't required and we just processed a callback we'll move on... - if ( ! in_array('required', $ex, TRUE) AND $result !== FALSE) - { - continue 2; - } - - } - else - { - if ( ! method_exists($this, $rule)) - { - /* - * Run the native PHP function if called for - * - * If our own wrapper function doesn't exist we see - * if a native PHP function does. Users can use - * any native PHP function call that has one param. - */ - if (function_exists($rule)) - { - $_POST[$field] = $rule($_POST[$field]); - $this->$field = $_POST[$field]; - } - - continue; - } - - $result = $this->$rule($_POST[$field], $param); - } - - // Did the rule test negatively? If so, grab the error. - if ($result === FALSE) - { - if ( ! isset($this->_error_messages[$rule])) - { - if (FALSE === ($line = $this->CI->lang->line($rule))) - { - $line = 'Unable to access an error message corresponding to your field name.'; - } - } - else - { - $line = $this->_error_messages[$rule]; - } - - // Build the error message - $mfield = ( ! isset($this->_fields[$field])) ? $field : $this->_fields[$field]; - $mparam = ( ! isset($this->_fields[$param])) ? $param : $this->_fields[$param]; - $message = sprintf($line, $mfield, $mparam); - - // Set the error variable. Example: $this->username_error - $error = $field.'_error'; - $this->$error = $this->_error_prefix.$message.$this->_error_suffix; - - // Add the error to the error array - $this->_error_array[] = $message; - continue 2; - } - } - - } - - $total_errors = count($this->_error_array); - - /* - * Recompile the class variables - * - * If any prepping functions were called the $_POST data - * might now be different then the corresponding class - * variables so we'll set them anew. - */ - if ($total_errors > 0) - { - $this->_safe_form_data = TRUE; - } - - $this->set_fields(); - - // Did we end up with any errors? - if ($total_errors == 0) - { - return TRUE; - } - - // Generate the error string - foreach ($this->_error_array as $val) - { - $this->error_string .= $this->_error_prefix.$val.$this->_error_suffix."\n"; - } - - return FALSE; - } - - // -------------------------------------------------------------------- - - /** - * Required - * - * @access public - * @param string - * @return bool - */ - function required($str) - { - if ( ! is_array($str)) - { - return (trim($str) == '') ? FALSE : TRUE; - } - else - { - return ( ! empty($str)); - } - } - - // -------------------------------------------------------------------- - - /** - * Match one field to another - * - * @access public - * @param string - * @param field - * @return bool - */ - function matches($str, $field) - { - if ( ! isset($_POST[$field])) - { - return FALSE; - } - - return ($str !== $_POST[$field]) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Minimum Length - * - * @access public - * @param string - * @param value - * @return bool - */ - function min_length($str, $val) - { - if (preg_match("/[^0-9]/", $val)) - { - return FALSE; - } - - if (function_exists('mb_strlen')) - { - return (mb_strlen($str) < $val) ? FALSE : TRUE; - } - - return (strlen($str) < $val) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Max Length - * - * @access public - * @param string - * @param value - * @return bool - */ - function max_length($str, $val) - { - if (preg_match("/[^0-9]/", $val)) - { - return FALSE; - } - - if (function_exists('mb_strlen')) - { - return (mb_strlen($str) > $val) ? FALSE : TRUE; - } - - return (strlen($str) > $val) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Exact Length - * - * @access public - * @param string - * @param value - * @return bool - */ - function exact_length($str, $val) - { - if (preg_match("/[^0-9]/", $val)) - { - return FALSE; - } - - if (function_exists('mb_strlen')) - { - return (mb_strlen($str) != $val) ? FALSE : TRUE; - } - - return (strlen($str) != $val) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Valid Email - * - * @access public - * @param string - * @return bool - */ - function valid_email($str) - { - return ( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Valid Emails - * - * @access public - * @param string - * @return bool - */ - function valid_emails($str) - { - if (strpos($str, ',') === FALSE) - { - return $this->valid_email(trim($str)); - } - - foreach(explode(',', $str) as $email) - { - if (trim($email) != '' && $this->valid_email(trim($email)) === FALSE) - { - return FALSE; - } - } - - return TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Validate IP Address - * - * @access public - * @param string - * @return string - */ - function valid_ip($ip) - { - return $this->CI->input->valid_ip($ip); - } - - // -------------------------------------------------------------------- - - /** - * Alpha - * - * @access public - * @param string - * @return bool - */ - function alpha($str) - { - return ( ! preg_match("/^([a-z])+$/i", $str)) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Alpha-numeric - * - * @access public - * @param string - * @return bool - */ - function alpha_numeric($str) - { - return ( ! preg_match("/^([a-z0-9])+$/i", $str)) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Alpha-numeric with underscores and dashes - * - * @access public - * @param string - * @return bool - */ - function alpha_dash($str) - { - return ( ! preg_match("/^([-a-z0-9_-])+$/i", $str)) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Numeric - * - * @access public - * @param string - * @return bool - */ - function numeric($str) - { - return (bool)preg_match( '/^[\-+]?[0-9]*\.?[0-9]+$/', $str); - - } - - // -------------------------------------------------------------------- - - /** - * Is Numeric - * - * @access public - * @param string - * @return bool - */ - function is_numeric($str) - { - return ( ! is_numeric($str)) ? FALSE : TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Integer - * - * @access public - * @param string - * @return bool - */ - function integer($str) - { - return (bool)preg_match( '/^[\-+]?[0-9]+$/', $str); - } - - // -------------------------------------------------------------------- - - /** - * Is a Natural number (0,1,2,3, etc.) - * - * @access public - * @param string - * @return bool - */ - function is_natural($str) - { - return (bool)preg_match( '/^[0-9]+$/', $str); - } - - // -------------------------------------------------------------------- - - /** - * Is a Natural number, but not a zero (1,2,3, etc.) - * - * @access public - * @param string - * @return bool - */ - function is_natural_no_zero($str) - { - if ( ! preg_match( '/^[0-9]+$/', $str)) - { - return FALSE; - } - - if ($str == 0) - { - return FALSE; - } - - return TRUE; - } - - // -------------------------------------------------------------------- - - /** - * Valid Base64 - * - * Tests a string for characters outside of the Base64 alphabet - * as defined by RFC 2045 http://www.faqs.org/rfcs/rfc2045 - * - * @access public - * @param string - * @return bool - */ - function valid_base64($str) - { - return (bool) ! preg_match('/[^a-zA-Z0-9\/\+=]/', $str); - } - - // -------------------------------------------------------------------- - - /** - * Set Select - * - * Enables pull-down lists to be set to the value the user - * selected in the event of an error - * - * @access public - * @param string - * @param string - * @return string - */ - function set_select($field = '', $value = '') - { - if ($field == '' OR $value == '' OR ! isset($_POST[$field])) - { - return ''; - } - - if ($_POST[$field] == $value) - { - return ' selected="selected"'; - } - } - - // -------------------------------------------------------------------- - - /** - * Set Radio - * - * Enables radio buttons to be set to the value the user - * selected in the event of an error - * - * @access public - * @param string - * @param string - * @return string - */ - function set_radio($field = '', $value = '') - { - if ($field == '' OR $value == '' OR ! isset($_POST[$field])) - { - return ''; - } - - if ($_POST[$field] == $value) - { - return ' checked="checked"'; - } - } - - // -------------------------------------------------------------------- - - /** - * Set Checkbox - * - * Enables checkboxes to be set to the value the user - * selected in the event of an error - * - * @access public - * @param string - * @param string - * @return string - */ - function set_checkbox($field = '', $value = '') - { - if ($field == '' OR $value == '' OR ! isset($_POST[$field])) - { - return ''; - } - - if ($_POST[$field] == $value) - { - return ' checked="checked"'; - } - } - - // -------------------------------------------------------------------- - - /** - * Prep data for form - * - * This function allows HTML to be safely shown in a form. - * Special characters are converted. - * - * @access public - * @param string - * @return string - */ - function prep_for_form($data = '') - { - if (is_array($data)) - { - foreach ($data as $key => $val) - { - $data[$key] = $this->prep_for_form($val); - } - - return $data; - } - - if ($this->_safe_form_data == FALSE OR $data == '') - { - return $data; - } - - return str_replace(array("'", '"', '<', '>'), array("'", """, '<', '>'), stripslashes($data)); - } - - // -------------------------------------------------------------------- - - /** - * Prep URL - * - * @access public - * @param string - * @return string - */ - function prep_url($str = '') - { - if ($str == 'http://' OR $str == '') - { - $_POST[$this->_current_field] = ''; - return; - } - - if (substr($str, 0, 7) != 'http://' && substr($str, 0, 8) != 'https://') - { - $str = 'http://'.$str; - } - - $_POST[$this->_current_field] = $str; - } - - // -------------------------------------------------------------------- - - /** - * Strip Image Tags - * - * @access public - * @param string - * @return string - */ - function strip_image_tags($str) - { - $_POST[$this->_current_field] = $this->CI->input->strip_image_tags($str); - } - - // -------------------------------------------------------------------- - - /** - * XSS Clean - * - * @access public - * @param string - * @return string - */ - function xss_clean($str) - { - $_POST[$this->_current_field] = $this->CI->input->xss_clean($str); - } - - // -------------------------------------------------------------------- - - /** - * Convert PHP tags to entities - * - * @access public - * @param string - * @return string - */ - function encode_php_tags($str) - { - $_POST[$this->_current_field] = str_replace(array('<?php', '<?PHP', '<?', '?>'), array('<?php', '<?PHP', '<?', '?>'), $str); - } - -} -// END Validation Class - -/* End of file Validation.php */ -/* Location: ./system/libraries/Validation.php */
\ No newline at end of file diff --git a/system/libraries/Xmlrpc.php b/system/libraries/Xmlrpc.php index fe5562fef..9cf307cc0 100644..100755 --- a/system/libraries/Xmlrpc.php +++ b/system/libraries/Xmlrpc.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -14,7 +14,7 @@ */ if ( ! function_exists('xml_parser_create')) -{ +{ show_error('Your PHP installation does not support XML'); } @@ -32,60 +32,61 @@ if ( ! function_exists('xml_parser_create')) */ class CI_Xmlrpc { - var $debug = FALSE; // Debugging on or off + var $debug = FALSE; // Debugging on or off var $xmlrpcI4 = 'i4'; var $xmlrpcInt = 'int'; var $xmlrpcBoolean = 'boolean'; - var $xmlrpcDouble = 'double'; + var $xmlrpcDouble = 'double'; var $xmlrpcString = 'string'; var $xmlrpcDateTime = 'dateTime.iso8601'; var $xmlrpcBase64 = 'base64'; var $xmlrpcArray = 'array'; var $xmlrpcStruct = 'struct'; - + var $xmlrpcTypes = array(); var $valid_parents = array(); var $xmlrpcerr = array(); // Response numbers var $xmlrpcstr = array(); // Response strings - + var $xmlrpc_defencoding = 'UTF-8'; var $xmlrpcName = 'XML-RPC for CodeIgniter'; var $xmlrpcVersion = '1.1'; var $xmlrpcerruser = 800; // Start of user errors var $xmlrpcerrxml = 100; // Start of XML Parse errors var $xmlrpc_backslash = ''; // formulate backslashes for escaping regexp - + var $client; var $method; var $data; var $message = ''; - var $error = ''; // Error string for request + var $error = ''; // Error string for request var $result; var $response = array(); // Response from remote server + var $xss_clean = TRUE; //------------------------------------- // VALUES THAT MULTIPLE CLASSES NEED //------------------------------------- - function CI_Xmlrpc ($config = array()) + public function __construct($config = array()) { - $this->xmlrpcName = $this->xmlrpcName; + $this->xmlrpcName = $this->xmlrpcName; $this->xmlrpc_backslash = chr(92).chr(92); - + // Types for info sent back and forth $this->xmlrpcTypes = array( - $this->xmlrpcI4 => '1', - $this->xmlrpcInt => '1', - $this->xmlrpcBoolean => '1', - $this->xmlrpcString => '1', - $this->xmlrpcDouble => '1', - $this->xmlrpcDateTime => '1', - $this->xmlrpcBase64 => '1', - $this->xmlrpcArray => '2', - $this->xmlrpcStruct => '3' + $this->xmlrpcI4 => '1', + $this->xmlrpcInt => '1', + $this->xmlrpcBoolean => '1', + $this->xmlrpcString => '1', + $this->xmlrpcDouble => '1', + $this->xmlrpcDateTime => '1', + $this->xmlrpcBase64 => '1', + $this->xmlrpcArray => '2', + $this->xmlrpcStruct => '3' ); - + // Array of Valid Parents for Various XML-RPC elements $this->valid_parents = array('BOOLEAN' => array('VALUE'), 'I4' => array('VALUE'), @@ -105,13 +106,13 @@ class CI_Xmlrpc { 'FAULT' => array('METHODRESPONSE'), 'VALUE' => array('MEMBER', 'DATA', 'PARAM', 'FAULT') ); - - + + // XML-RPC Responses $this->xmlrpcerr['unknown_method'] = '1'; $this->xmlrpcstr['unknown_method'] = 'This is not a known method for this XML-RPC Server'; $this->xmlrpcerr['invalid_return'] = '2'; - $this->xmlrpcstr['invalid_return'] = 'The XML data receieved was either invalid or not in the correct form for XML-RPC. Turn on debugging to examine the XML data further.'; + $this->xmlrpcstr['invalid_return'] = 'The XML data received was either invalid or not in the correct form for XML-RPC. Turn on debugging to examine the XML data further.'; $this->xmlrpcerr['incorrect_params'] = '3'; $this->xmlrpcstr['incorrect_params'] = 'Incorrect parameters were passed to method'; $this->xmlrpcerr['introspect_unknown'] = '4'; @@ -120,13 +121,13 @@ class CI_Xmlrpc { $this->xmlrpcstr['http_error'] = "Did not receive a '200 OK' response from remote server."; $this->xmlrpcerr['no_data'] = '6'; $this->xmlrpcstr['no_data'] ='No data received from server.'; - + $this->initialize($config); - + log_message('debug', "XML-RPC Class Initialized"); } - - + + //------------------------------------- // Initialize Prefs //------------------------------------- @@ -139,13 +140,13 @@ class CI_Xmlrpc { { if (isset($this->$key)) { - $this->$key = $val; + $this->$key = $val; } } } } // END - + //------------------------------------- // Take URL and parse it //------------------------------------- @@ -156,20 +157,20 @@ class CI_Xmlrpc { { $url = "http://".$url; } - + $parts = parse_url($url); - + $path = ( ! isset($parts['path'])) ? '/' : $parts['path']; - + if (isset($parts['query']) && $parts['query'] != '') { $path .= '?'.$parts['query']; - } - + } + $this->client = new XML_RPC_Client($path, $parts['host'], $port); } // END - + //------------------------------------- // Set Timeout //------------------------------------- @@ -182,7 +183,7 @@ class CI_Xmlrpc { } } // END - + //------------------------------------- // Set Methods //------------------------------------- @@ -192,7 +193,7 @@ class CI_Xmlrpc { $this->method = $function; } // END - + //------------------------------------- // Take Array of Data and Create Objects //------------------------------------- @@ -203,17 +204,17 @@ class CI_Xmlrpc { { // Send Error } - + $this->data = array(); - + foreach($incoming as $key => $value) { $this->data[$key] = $this->values_parsing($value); } } // END - - + + //------------------------------------- // Set Debug //------------------------------------- @@ -222,14 +223,14 @@ class CI_Xmlrpc { { $this->debug = ($flag == TRUE) ? TRUE : FALSE; } - + //------------------------------------- // Values Parsing //------------------------------------- function values_parsing($value, $return = FALSE) { - if (is_array($value) && isset($value['0'])) + if (is_array($value) && array_key_exists(0, $value)) { if ( ! isset($value['1']) OR (! isset($this->xmlrpcTypes[$value['1']]))) { @@ -248,7 +249,7 @@ class CI_Xmlrpc { { $value['0'][$k] = $this->values_parsing($value['0'][$k], TRUE); } - + $temp = new XML_RPC_Values($value['0'], $value['1']); } else @@ -274,7 +275,7 @@ class CI_Xmlrpc { { $this->message = new XML_RPC_Message($this->method,$this->data); $this->message->debug = $this->debug; - + if ( ! $this->result = $this->client->send($this->message)) { $this->error = $this->result->errstr; @@ -285,13 +286,13 @@ class CI_Xmlrpc { $this->error = $this->result->errstr; return FALSE; } - + $this->response = $this->result->decode(); - + return TRUE; } // END - + //------------------------------------- // Returns Error //------------------------------------- @@ -301,7 +302,7 @@ class CI_Xmlrpc { return $this->error; } // END - + //------------------------------------- // Returns Remote Server Response //------------------------------------- @@ -311,37 +312,37 @@ class CI_Xmlrpc { return $this->response; } // END - + //------------------------------------- // Sends an Error Message for Server Request //------------------------------------- - + function send_error_message($number, $message) { return new XML_RPC_Response('0',$number, $message); } // END - - + + //------------------------------------- // Send Response for Server Request //------------------------------------- - + function send_response($response) { // $response should be array of values, which will be parsed // based on their data and type into a valid group of XML-RPC values - + $response = $this->values_parsing($response); - + return new XML_RPC_Response($response); } // END - + } // END XML_RPC Class - - + + /** * XML-RPC Client class * @@ -359,15 +360,15 @@ class XML_RPC_Client extends CI_Xmlrpc var $timeout = 5; var $no_multicall = false; - function XML_RPC_Client($path, $server, $port=80) + public function __construct($path, $server, $port=80) { - parent::CI_Xmlrpc(); - + parent::__construct(); + $this->port = $port; $this->server = $server; $this->path = $path; } - + function send($msg) { if (is_array($msg)) @@ -381,22 +382,22 @@ class XML_RPC_Client extends CI_Xmlrpc } function sendPayload($msg) - { + { $fp = @fsockopen($this->server, $this->port,$this->errno, $this->errstr, $this->timeout); - + if ( ! is_resource($fp)) { error_log($this->xmlrpcstr['http_error']); $r = new XML_RPC_Response(0, $this->xmlrpcerr['http_error'],$this->xmlrpcstr['http_error']); return $r; } - + if(empty($msg->payload)) { // $msg = XML_RPC_Messages $msg->createPayload(); } - + $r = "\r\n"; $op = "POST {$this->path} HTTP/1.0$r"; $op .= "Host: {$this->server}$r"; @@ -404,7 +405,7 @@ class XML_RPC_Client extends CI_Xmlrpc $op .= "User-Agent: {$this->xmlrpcName}$r"; $op .= "Content-Length: ".strlen($msg->payload). "$r$r"; $op .= $msg->payload; - + if ( ! fputs($fp, $op, strlen($op))) { @@ -433,9 +434,10 @@ class XML_RPC_Response var $errno = 0; var $errstr = ''; var $headers = array(); + var $xss_clean = TRUE; - function XML_RPC_Response($val, $code = 0, $fstr = '') - { + public function __construct($val, $code = 0, $fstr = '') + { if ($code != 0) { // error @@ -468,7 +470,7 @@ class XML_RPC_Response { return $this->val; } - + function prepare_response() { $result = "<methodResponse>\n"; @@ -498,11 +500,16 @@ class XML_RPC_Response $result .= "\n</methodResponse>"; return $result; } - + function decode($array=FALSE) { $CI =& get_instance(); + if ($this->xss_clean && ! isset($CI->security)) + { + $CI->load->library('security'); + } + if ($array !== FALSE && is_array($array)) { while (list($key) = each($array)) @@ -513,31 +520,31 @@ class XML_RPC_Response } else { - $array[$key] = $CI->input->xss_clean($array[$key]); + $array[$key] = ($this->xss_clean) ? $CI->security->xss_clean($array[$key]) : $array[$key]; } } - + $result = $array; } else { $result = $this->xmlrpc_decoder($this->val); - + if (is_array($result)) { $result = $this->decode($result); } else { - $result = $CI->input->xss_clean($result); + $result = ($this->xss_clean) ? $CI->security->xss_clean($result) : $result; } } - + return $result; } - - + + //------------------------------------- // XML-RPC Object to PHP Types //------------------------------------- @@ -555,7 +562,7 @@ class XML_RPC_Response reset($xmlrpc_val->me); list($a,$b) = each($xmlrpc_val->me); $size = count($b); - + $arr = array(); for($i = 0; $i < $size; $i++) @@ -576,8 +583,8 @@ class XML_RPC_Response return $arr; } } - - + + //------------------------------------- // ISO-8601 time to server or UTC time //------------------------------------- @@ -595,7 +602,7 @@ class XML_RPC_Response } return $t; } - + } // End Response Class @@ -612,12 +619,12 @@ class XML_RPC_Message extends CI_Xmlrpc var $payload; var $method_name; var $params = array(); - var $xh = array(); + var $xh = array(); - function XML_RPC_Message($method, $pars=0) + public function __construct($method, $pars=0) { - parent::CI_Xmlrpc(); - + parent::__construct(); + $this->method_name = $method; if (is_array($pars) && count($pars) > 0) { @@ -628,51 +635,51 @@ class XML_RPC_Message extends CI_Xmlrpc } } } - + //------------------------------------- // Create Payload to Send //------------------------------------- - + function createPayload() { $this->payload = "<?xml version=\"1.0\"?".">\r\n<methodCall>\r\n"; $this->payload .= '<methodName>' . $this->method_name . "</methodName>\r\n"; $this->payload .= "<params>\r\n"; - + for($i=0; $i<count($this->params); $i++) { // $p = XML_RPC_Values $p = $this->params[$i]; $this->payload .= "<param>\r\n".$p->serialize_class()."</param>\r\n"; } - + $this->payload .= "</params>\r\n</methodCall>\r\n"; } - + //------------------------------------- // Parse External XML-RPC Server's Response //------------------------------------- - + function parseResponse($fp) { $data = ''; - + while($datum = fread($fp, 4096)) { $data .= $datum; } - + //------------------------------------- // DISPLAY HTTP CONTENT for DEBUGGING //------------------------------------- - + if ($this->debug === TRUE) { echo "<pre>"; echo "---DATA---\n" . htmlspecialchars($data) . "\n---END DATA---\n\n"; echo "</pre>"; } - + //------------------------------------- // Check for data //------------------------------------- @@ -683,32 +690,32 @@ class XML_RPC_Message extends CI_Xmlrpc $r = new XML_RPC_Response(0, $this->xmlrpcerr['no_data'], $this->xmlrpcstr['no_data']); return $r; } - - + + //------------------------------------- // Check for HTTP 200 Response //------------------------------------- - + if (strncmp($data, 'HTTP', 4) == 0 && ! preg_match('/^HTTP\/[0-9\.]+ 200 /', $data)) { $errstr= substr($data, 0, strpos($data, "\n")-1); $r = new XML_RPC_Response(0, $this->xmlrpcerr['http_error'], $this->xmlrpcstr['http_error']. ' (' . $errstr . ')'); return $r; } - + //------------------------------------- // Create and Set Up XML Parser //------------------------------------- - + $parser = xml_parser_create($this->xmlrpc_defencoding); - $this->xh[$parser] = array(); - $this->xh[$parser]['isf'] = 0; - $this->xh[$parser]['ac'] = ''; - $this->xh[$parser]['headers'] = array(); - $this->xh[$parser]['stack'] = array(); - $this->xh[$parser]['valuestack'] = array(); - $this->xh[$parser]['isf_reason'] = 0; + $this->xh[$parser] = array(); + $this->xh[$parser]['isf'] = 0; + $this->xh[$parser]['ac'] = ''; + $this->xh[$parser]['headers'] = array(); + $this->xh[$parser]['stack'] = array(); + $this->xh[$parser]['valuestack'] = array(); + $this->xh[$parser]['isf_reason'] = 0; xml_set_object($parser, $this); xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, true); @@ -720,7 +727,7 @@ class XML_RPC_Message extends CI_Xmlrpc //------------------------------------- // GET HEADERS //------------------------------------- - + $lines = explode("\r\n", $data); while (($line = array_shift($lines))) { @@ -731,11 +738,11 @@ class XML_RPC_Message extends CI_Xmlrpc $this->xh[$parser]['headers'][] = $line; } $data = implode("\r\n", $lines); - - + + //------------------------------------- // PARSE XML DATA - //------------------------------------- + //------------------------------------- if ( ! xml_parse($parser, $data, count($data))) { @@ -748,11 +755,11 @@ class XML_RPC_Message extends CI_Xmlrpc return $r; } xml_parser_free($parser); - + // --------------------------------------- // Got Ourselves Some Badness, It Seems // --------------------------------------- - + if ($this->xh[$parser]['isf'] > 1) { if ($this->debug === TRUE) @@ -761,7 +768,7 @@ class XML_RPC_Message extends CI_Xmlrpc echo $this->xh[$parser]['isf_reason']; echo "---Invalid Return---\n\n"; } - + $r = new XML_RPC_Response(0, $this->xmlrpcerr['invalid_return'],$this->xmlrpcstr['invalid_return'].' '.$this->xh[$parser]['isf_reason']); return $r; } @@ -770,15 +777,15 @@ class XML_RPC_Message extends CI_Xmlrpc $r = new XML_RPC_Response(0, $this->xmlrpcerr['invalid_return'],$this->xmlrpcstr['invalid_return'].' '.$this->xh[$parser]['isf_reason']); return $r; } - + //------------------------------------- // DISPLAY XML CONTENT for DEBUGGING - //------------------------------------- - + //------------------------------------- + if ($this->debug === TRUE) { echo "<pre>"; - + if (count($this->xh[$parser]['headers'] > 0)) { echo "---HEADERS---\n"; @@ -788,20 +795,20 @@ class XML_RPC_Message extends CI_Xmlrpc } echo "---END HEADERS---\n\n"; } - + echo "---DATA---\n" . htmlspecialchars($data) . "\n---END DATA---\n\n"; - + echo "---PARSED---\n" ; var_dump($this->xh[$parser]['value']); echo "\n---END PARSED---</pre>"; } - + //------------------------------------- // SEND RESPONSE //------------------------------------- - + $v = $this->xh[$parser]['value']; - + if ($this->xh[$parser]['isf']) { $errno_v = $v->me['struct']['faultCode']; @@ -824,11 +831,11 @@ class XML_RPC_Message extends CI_Xmlrpc $r->headers = $this->xh[$parser]['headers']; return $r; } - + // ------------------------------------ // Begin Return Message Parsing section // ------------------------------------ - + // quick explanation of components: // ac - used to accumulate values // isf - used to indicate a fault @@ -847,9 +854,9 @@ class XML_RPC_Message extends CI_Xmlrpc { // If invalid nesting, then return if ($this->xh[$the_parser]['isf'] > 1) return; - + // Evaluate and check for correct nesting of XML elements - + if (count($this->xh[$the_parser]['stack']) == 0) { if ($name != 'METHODRESPONSE' && $name != 'METHODCALL') @@ -869,16 +876,16 @@ class XML_RPC_Message extends CI_Xmlrpc return; } } - + switch($name) { case 'STRUCT': case 'ARRAY': // Creates array for child elements - + $cur_val = array('value' => array(), 'type' => $name); - + array_unshift($this->xh[$the_parser]['valuestack'], $cur_val); break; case 'METHODNAME': @@ -910,13 +917,13 @@ class XML_RPC_Message extends CI_Xmlrpc $this->xh[$the_parser]['isf_reason'] = "'Twas a $name element following a ".$this->xh[$the_parser]['vt']." element inside a single value"; return; } - + $this->xh[$the_parser]['ac'] = ''; break; case 'MEMBER': // Set name of <member> to nothing to prevent errors later if no <name> is found $this->xh[$the_parser]['valuestack'][0]['name'] = ''; - + // Set NULL value to check to see if value passed for this param/member $this->xh[$the_parser]['value'] = null; break; @@ -932,7 +939,7 @@ class XML_RPC_Message extends CI_Xmlrpc $this->xh[$the_parser]['isf_reason'] = "Invalid XML-RPC element found: $name"; break; } - + // Add current element name to stack, to allow validation of nesting array_unshift($this->xh[$the_parser]['stack'], $name); @@ -948,14 +955,14 @@ class XML_RPC_Message extends CI_Xmlrpc function closing_tag($the_parser, $name) { if ($this->xh[$the_parser]['isf'] > 1) return; - + // Remove current element from stack and set variable // NOTE: If the XML validates, then we do not have to worry about // the opening and closing of elements. Nesting is checked on the opening // tag so we be safe there as well. - + $curr_elem = array_shift($this->xh[$the_parser]['stack']); - + switch($name) { case 'STRUCT': @@ -975,7 +982,7 @@ class XML_RPC_Message extends CI_Xmlrpc case 'DATETIME.ISO8601': case 'BASE64': $this->xh[$the_parser]['vt'] = strtolower($name); - + if ($name == 'STRING') { $this->xh[$the_parser]['value'] = $this->xh[$the_parser]['ac']; @@ -1037,10 +1044,10 @@ class XML_RPC_Message extends CI_Xmlrpc $this->xh[$the_parser]['value'] = $this->xh[$the_parser]['ac']; $this->xh[$the_parser]['vt'] = $this->xmlrpcString; } - + // build the XML-RPC value out of the data received, and substitute it $temp = new XML_RPC_Values($this->xh[$the_parser]['value'], $this->xh[$the_parser]['vt']); - + if (count($this->xh[$the_parser]['valuestack']) && $this->xh[$the_parser]['valuestack'][0]['type'] == 'ARRAY') { // Array @@ -1054,7 +1061,7 @@ class XML_RPC_Message extends CI_Xmlrpc break; case 'MEMBER': $this->xh[$the_parser]['ac']=''; - + // If value add to array in the stack for the last element built if ($this->xh[$the_parser]['value']) { @@ -1092,7 +1099,7 @@ class XML_RPC_Message extends CI_Xmlrpc function character_data($the_parser, $data) { if ($this->xh[$the_parser]['isf'] > 1) return; // XML Fault found already - + // If a value has not been found if ($this->xh[$the_parser]['lv'] != 3) { @@ -1100,22 +1107,27 @@ class XML_RPC_Message extends CI_Xmlrpc { $this->xh[$the_parser]['lv'] = 2; // Found a value } - + if( ! @isset($this->xh[$the_parser]['ac'])) { $this->xh[$the_parser]['ac'] = ''; } - + $this->xh[$the_parser]['ac'] .= $data; } } - - + + function addParam($par) { $this->params[]=$par; } - + function output_parameters($array=FALSE) { - $CI =& get_instance(); + $CI =& get_instance(); + + if ($this->xss_clean && ! isset($CI->security)) + { + $CI->load->library('security'); + } if ($array !== FALSE && is_array($array)) { @@ -1127,35 +1139,37 @@ class XML_RPC_Message extends CI_Xmlrpc } else { - $array[$key] = $CI->input->xss_clean($array[$key]); + // 'bits' is for the MetaWeblog API image bits + // @todo - this needs to be made more general purpose + $array[$key] = ($key == 'bits' OR $this->xss_clean == FALSE) ? $array[$key] : $CI->security->xss_clean($array[$key]); } } - + $parameters = $array; } else { $parameters = array(); - + for ($i = 0; $i < count($this->params); $i++) { $a_param = $this->decode_message($this->params[$i]); - + if (is_array($a_param)) { $parameters[] = $this->output_parameters($a_param); } else { - $parameters[] = $CI->input->xss_clean($a_param); + $parameters[] = ($this->xss_clean) ? $CI->security->xss_clean($a_param) : $a_param; } - } + } } - + return $parameters; } - - + + function decode_message($param) { $kind = $param->kindOf(); @@ -1168,31 +1182,31 @@ class XML_RPC_Message extends CI_Xmlrpc { reset($param->me); list($a,$b) = each($param->me); - + $arr = array(); for($i = 0; $i < count($b); $i++) { $arr[] = $this->decode_message($param->me['array'][$i]); } - + return $arr; } elseif($kind == 'struct') { reset($param->me['struct']); - + $arr = array(); while(list($key,$value) = each($param->me['struct'])) { $arr[$key] = $this->decode_message($value); } - + return $arr; } } - + } // End XML_RPC_Messages class @@ -1206,17 +1220,17 @@ class XML_RPC_Message extends CI_Xmlrpc */ class XML_RPC_Values extends CI_Xmlrpc { - var $me = array(); + var $me = array(); var $mytype = 0; - function XML_RPC_Values($val=-1, $type='') - { - parent::CI_Xmlrpc(); - + public function __construct($val=-1, $type='') + { + parent::__construct(); + if ($val != -1 OR $type != '') { $type = $type == '' ? 'string' : $type; - + if ($this->xmlrpcTypes[$type] == 1) { $this->addScalar($val,$type); @@ -1235,13 +1249,13 @@ class XML_RPC_Values extends CI_Xmlrpc function addScalar($val, $type='string') { $typeof = $this->xmlrpcTypes[$type]; - + if ($this->mytype==1) { echo '<strong>XML_RPC_Values</strong>: scalar can have only one value<br />'; return 0; } - + if ($typeof != 1) { echo '<strong>XML_RPC_Values</strong>: not a scalar type (${typeof})<br />'; @@ -1322,7 +1336,7 @@ class XML_RPC_Values extends CI_Xmlrpc function serializedata($typ, $val) { $rs = ''; - + switch($this->xmlrpcTypes[$typ]) { case 3: @@ -1378,12 +1392,12 @@ class XML_RPC_Values extends CI_Xmlrpc { $ar = $o->me; reset($ar); - + list($typ, $val) = each($ar); $rs = "<value>\n".$this->serializedata($typ, $val)."</value>\n"; return $rs; } - + function scalarval() { reset($this->me); @@ -1395,11 +1409,11 @@ class XML_RPC_Values extends CI_Xmlrpc //------------------------------------- // Encode time in ISO-8601 form. //------------------------------------- - + // Useful for sending time in XML-RPC function iso8601_encode($time, $utc=0) - { + { if ($utc == 1) { $t = strftime("%Y%m%dT%H:%M:%S", $time); @@ -1413,7 +1427,7 @@ class XML_RPC_Values extends CI_Xmlrpc } return $t; } - + } // END XML_RPC_Values Class diff --git a/system/libraries/Xmlrpcs.php b/system/libraries/Xmlrpcs.php index 429ab8472..6bedfe324 100644..100755 --- a/system/libraries/Xmlrpcs.php +++ b/system/libraries/Xmlrpcs.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -14,7 +14,7 @@ */ if ( ! function_exists('xml_parser_create')) -{ +{ show_error('Your PHP installation does not support XML'); } @@ -36,57 +36,60 @@ if ( ! class_exists('CI_Xmlrpc')) */ class CI_Xmlrpcs extends CI_Xmlrpc { - var $methods = array(); //array of methods mapped to function names and signatures + var $methods = array(); //array of methods mapped to function names and signatures var $debug_msg = ''; // Debug Message - var $system_methods = array(); // XML RPC Server methods + var $system_methods = array(); // XML RPC Server methods var $controller_obj; var $object = FALSE; - - - //------------------------------------- - // Constructor, more or less - //------------------------------------- - function CI_Xmlrpcs($config=array()) - { - parent::CI_Xmlrpc(); + /** + * Constructor + */ + public function __construct($config=array()) + { + parent::__construct(); $this->set_system_methods(); - + if (isset($config['functions']) && is_array($config['functions'])) { $this->methods = array_merge($this->methods, $config['functions']); } - + log_message('debug', "XML-RPC Server Class Initialized"); } - + //------------------------------------- // Initialize Prefs and Serve //------------------------------------- - + function initialize($config=array()) - { + { if (isset($config['functions']) && is_array($config['functions'])) { $this->methods = array_merge($this->methods, $config['functions']); } - + if (isset($config['debug'])) { $this->debug = $config['debug']; } - + if (isset($config['object']) && is_object($config['object'])) { $this->object = $config['object']; } + + if (isset($config['xss_clean'])) + { + $this->xss_clean = $config['xss_clean']; + } } - + //------------------------------------- // Setting of System Methods //------------------------------------- - + function set_system_methods () { $this->methods = array( @@ -113,14 +116,14 @@ class CI_Xmlrpcs extends CI_Xmlrpc //------------------------------------- // Main Server Function //------------------------------------- - + function serve() { $r = $this->parseRequest(); $payload = '<?xml version="1.0" encoding="'.$this->xmlrpc_defencoding.'"?'.'>'."\n"; $payload .= $this->debug_msg; $payload .= $r->prepare_response(); - + header("Content-Type: text/xml"); header("Content-Length: ".strlen($payload)); exit($payload); @@ -129,7 +132,7 @@ class CI_Xmlrpcs extends CI_Xmlrpc //------------------------------------- // Add Method to Class //------------------------------------- - + function add_to_map($methodname,$function,$sig,$doc) { $this->methods[$methodname] = array( @@ -143,11 +146,11 @@ class CI_Xmlrpcs extends CI_Xmlrpc //------------------------------------- // Parse Server Request //------------------------------------- - + function parseRequest($data='') { global $HTTP_RAW_POST_DATA; - + //------------------------------------- // Get Data //------------------------------------- @@ -160,10 +163,10 @@ class CI_Xmlrpcs extends CI_Xmlrpc //------------------------------------- // Set up XML Parser //------------------------------------- - + $parser = xml_parser_create($this->xmlrpc_defencoding); $parser_object = new XML_RPC_Message("filler"); - + $parser_object->xh[$parser] = array(); $parser_object->xh[$parser]['isf'] = 0; $parser_object->xh[$parser]['isf_reason'] = ''; @@ -177,12 +180,12 @@ class CI_Xmlrpcs extends CI_Xmlrpc xml_set_element_handler($parser, 'open_tag', 'closing_tag'); xml_set_character_data_handler($parser, 'character_data'); //xml_set_default_handler($parser, 'default_handler'); - - + + //------------------------------------- // PARSE + PROCESS XML DATA - //------------------------------------- - + //------------------------------------- + if ( ! xml_parse($parser, $data, 1)) { // return XML error as a faultCode @@ -200,69 +203,74 @@ class CI_Xmlrpcs extends CI_Xmlrpc else { xml_parser_free($parser); - + $m = new XML_RPC_Message($parser_object->xh[$parser]['method']); $plist=''; - + for($i=0; $i < count($parser_object->xh[$parser]['params']); $i++) { if ($this->debug === TRUE) { $plist .= "$i - " . print_r(get_object_vars($parser_object->xh[$parser]['params'][$i]), TRUE). ";\n"; } - + $m->addParam($parser_object->xh[$parser]['params'][$i]); } - + if ($this->debug === TRUE) { echo "<pre>"; echo "---PLIST---\n" . $plist . "\n---PLIST END---\n\n"; echo "</pre>"; } - + $r = $this->_execute($m); } - + //------------------------------------- // SET DEBUGGING MESSAGE - //------------------------------------- - + //------------------------------------- + if ($this->debug === TRUE) { $this->debug_msg = "<!-- DEBUG INFO:\n\n".$plist."\n END DEBUG-->\n"; } - + return $r; } //------------------------------------- // Executes the Method //------------------------------------- - + function _execute($m) { $methName = $m->method_name; - + // Check to see if it is a system call $system_call = (strncmp($methName, 'system', 5) == 0) ? TRUE : FALSE; - + + if ($this->xss_clean == FALSE) + { + $m->xss_clean = FALSE; + } + //------------------------------------- // Valid Method //------------------------------------- - + if ( ! isset($this->methods[$methName]['function'])) { return new XML_RPC_Response(0, $this->xmlrpcerr['unknown_method'], $this->xmlrpcstr['unknown_method']); } - + //------------------------------------- // Check for Method (and Object) //------------------------------------- - + $method_parts = explode(".", $this->methods[$methName]['function']); $objectCall = (isset($method_parts['1']) && $method_parts['1'] != "") ? TRUE : FALSE; - + if ($system_call === TRUE) { if ( ! is_callable(array($this,$method_parts['1']))) @@ -281,30 +289,30 @@ class CI_Xmlrpcs extends CI_Xmlrpc return new XML_RPC_Response(0, $this->xmlrpcerr['unknown_method'], $this->xmlrpcstr['unknown_method']); } } - + //------------------------------------- // Checking Methods Signature //------------------------------------- - + if (isset($this->methods[$methName]['signature'])) { $sig = $this->methods[$methName]['signature']; for($i=0; $i<count($sig); $i++) { $current_sig = $sig[$i]; - + if (count($current_sig) == count($m->params)+1) { for($n=0; $n < count($m->params); $n++) { $p = $m->params[$n]; $pt = ($p->kindOf() == 'scalar') ? $p->scalarval() : $p->kindOf(); - + if ($pt != $current_sig[$n+1]) { $pno = $n+1; $wanted = $current_sig[$n+1]; - + return new XML_RPC_Response(0, $this->xmlrpcerr['incorrect_params'], $this->xmlrpcstr['incorrect_params'] . @@ -344,22 +352,22 @@ class CI_Xmlrpcs extends CI_Xmlrpc return call_user_func($this->methods[$methName]['function'], $m); } } - - + + //------------------------------------- // Server Function: List Methods //------------------------------------- - + function listMethods($m) { $v = new XML_RPC_Values(); $output = array(); - + foreach($this->methods as $key => $value) { $output[] = new XML_RPC_Values($key, 'string'); } - + foreach($this->system_methods as $key => $value) { $output[]= new XML_RPC_Values($key, 'string'); @@ -368,23 +376,23 @@ class CI_Xmlrpcs extends CI_Xmlrpc $v->addArray($output); return new XML_RPC_Response($v); } - + //------------------------------------- // Server Function: Return Signature for Method //------------------------------------- - + function methodSignature($m) { $parameters = $m->output_parameters(); $method_name = $parameters[0]; - + if (isset($this->methods[$method_name])) { if ($this->methods[$method_name]['signature']) { $sigs = array(); $signature = $this->methods[$method_name]['signature']; - + for($i=0; $i < count($signature); $i++) { $cursig = array(); @@ -408,20 +416,20 @@ class CI_Xmlrpcs extends CI_Xmlrpc } return $r; } - + //------------------------------------- // Server Function: Doc String for Method //------------------------------------- - + function methodHelp($m) { $parameters = $m->output_parameters(); $method_name = $parameters[0]; - + if (isset($this->methods[$method_name])) { $docstring = isset($this->methods[$method_name]['docstring']) ? $this->methods[$method_name]['docstring'] : ''; - + return new XML_RPC_Response(new XML_RPC_Values($docstring, 'string')); } else @@ -438,7 +446,7 @@ class CI_Xmlrpcs extends CI_Xmlrpc { // Disabled return new XML_RPC_Response(0, $this->xmlrpcerr['unknown_method'], $this->xmlrpcstr['unknown_method']); - + $parameters = $m->output_parameters(); $calls = $parameters[0]; @@ -447,15 +455,15 @@ class CI_Xmlrpcs extends CI_Xmlrpc foreach ($calls as $value) { //$attempt = $this->_execute(new XML_RPC_Message($value[0], $value[1])); - + $m = new XML_RPC_Message($value[0]); $plist=''; - + for($i=0; $i < count($value[1]); $i++) { $m->addParam(new XML_RPC_Values($value[1][$i], 'string')); } - + $attempt = $this->_execute($m); if ($attempt->faultCode() != 0) @@ -468,8 +476,8 @@ class CI_Xmlrpcs extends CI_Xmlrpc return new XML_RPC_Response(new XML_RPC_Values($result, 'array')); } - - + + //------------------------------------- // Multi-call Function: Error Handling //------------------------------------- @@ -478,28 +486,28 @@ class CI_Xmlrpcs extends CI_Xmlrpc { $str = is_string($err) ? $this->xmlrpcstr["multicall_${err}"] : $err->faultString(); $code = is_string($err) ? $this->xmlrpcerr["multicall_${err}"] : $err->faultCode(); - + $struct['faultCode'] = new XML_RPC_Values($code, 'int'); $struct['faultString'] = new XML_RPC_Values($str, 'string'); - + return new XML_RPC_Values($struct, 'struct'); } - - + + //------------------------------------- // Multi-call Function: Processes method //------------------------------------- - + function do_multicall($call) { if ($call->kindOf() != 'struct') return $this->multicall_error('notstruct'); elseif ( ! $methName = $call->me['struct']['methodName']) return $this->multicall_error('nomethod'); - + list($scalar_type,$scalar_value)=each($methName->me); $scalar_type = $scalar_type == $this->xmlrpcI4 ? $this->xmlrpcInt : $scalar_type; - + if ($methName->kindOf() != 'scalar' OR $scalar_type != 'string') return $this->multicall_error('notstring'); elseif ($scalar_value == 'system.multicall') @@ -508,7 +516,7 @@ class CI_Xmlrpcs extends CI_Xmlrpc return $this->multicall_error('noparams'); elseif ($params->kindOf() != 'array') return $this->multicall_error('notarray'); - + list($a,$b)=each($params->me); $numParams = count($b); @@ -526,8 +534,8 @@ class CI_Xmlrpcs extends CI_Xmlrpc } return new XML_RPC_Values(array($result->value()), 'array'); - } - + } + } // END XML_RPC_Server class diff --git a/system/libraries/Zip.php b/system/libraries/Zip.php index af50ca1cb..80633c708 100644..100755 --- a/system/libraries/Zip.php +++ b/system/libraries/Zip.php @@ -2,11 +2,11 @@ /** * CodeIgniter * - * An open source application development framework for PHP 4.3.2 or newer + * An open source application development framework for PHP 5.1.6 or newer * * @package CodeIgniter * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. * @license http://codeigniter.com/user_guide/license.html * @link http://codeigniter.com * @since Version 1.0 @@ -32,15 +32,21 @@ */ class CI_Zip { - var $zipdata = ''; - var $directory = ''; - var $entries = 0; - var $file_num = 0; + var $zipdata = ''; + var $directory = ''; + var $entries = 0; + var $file_num = 0; var $offset = 0; + var $now; - function CI_Zip() + /** + * Constructor + */ + public function __construct() { log_message('debug', "Zip Compression Class Initialized"); + + $this->now = time(); } // -------------------------------------------------------------------- @@ -63,25 +69,50 @@ class CI_Zip { $dir .= '/'; } - $this->_add_dir($dir); + $dir_time = $this->_get_mod_time($dir); + + $this->_add_dir($dir, $dir_time['file_mtime'], $dir_time['file_mdate']); } } // -------------------------------------------------------------------- /** + * Get file/directory modification time + * + * If this is a newly created file/dir, we will set the time to 'now' + * + * @param string path to file + * @return array filemtime/filemdate + */ + function _get_mod_time($dir) + { + // filemtime() will return false, but it does raise an error. + $date = (@filemtime($dir)) ? filemtime($dir) : getdate($this->now); + + $time['file_mtime'] = ($date['hours'] << 11) + ($date['minutes'] << 5) + $date['seconds'] / 2; + $time['file_mdate'] = (($date['year'] - 1980) << 9) + ($date['mon'] << 5) + $date['mday']; + + return $time; + } + + // -------------------------------------------------------------------- + + /** * Add Directory * * @access private * @param string the directory name * @return void */ - function _add_dir($dir) + function _add_dir($dir, $file_mtime, $file_mdate) { $dir = str_replace("\\", "/", $dir); $this->zipdata .= - "\x50\x4b\x03\x04\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00" + "\x50\x4b\x03\x04\x0a\x00\x00\x00\x00\x00" + .pack('v', $file_mtime) + .pack('v', $file_mdate) .pack('V', 0) // crc32 .pack('V', 0) // compressed filesize .pack('V', 0) // uncompressed filesize @@ -94,7 +125,9 @@ class CI_Zip { .pack('V', 0); // uncompressed filesize $this->directory .= - "\x50\x4b\x01\x02\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00" + "\x50\x4b\x01\x02\x00\x00\x0a\x00\x00\x00\x00\x00" + .pack('v', $file_mtime) + .pack('v', $file_mdate) .pack('V',0) // crc32 .pack('V',0) // compressed filesize .pack('V',0) // uncompressed filesize @@ -110,7 +143,7 @@ class CI_Zip { $this->offset = strlen($this->zipdata); $this->entries++; } - + // -------------------------------------------------------------------- /** @@ -124,19 +157,23 @@ class CI_Zip { * @param mixed * @param string * @return void - */ + */ function add_data($filepath, $data = NULL) { if (is_array($filepath)) { foreach ($filepath as $path => $data) { - $this->_add_data($path, $data); + $file_data = $this->_get_mod_time($path); + + $this->_add_data($path, $data, $file_data['file_mtime'], $file_data['file_mdate']); } } else { - $this->_add_data($filepath, $data); + $file_data = $this->_get_mod_time($filepath); + + $this->_add_data($filepath, $data, $file_data['file_mtime'], $file_data['file_mdate']); } } @@ -149,8 +186,8 @@ class CI_Zip { * @param string the file name/path * @param string the data to be encoded * @return void - */ - function _add_data($filepath, $data) + */ + function _add_data($filepath, $data, $file_mtime, $file_mdate) { $filepath = str_replace("\\", "/", $filepath); @@ -162,7 +199,9 @@ class CI_Zip { $compressed_size = strlen($gzdata); $this->zipdata .= - "\x50\x4b\x03\x04\x14\x00\x00\x00\x08\x00\x00\x00\x00\x00" + "\x50\x4b\x03\x04\x14\x00\x00\x00\x08\x00" + .pack('v', $file_mtime) + .pack('v', $file_mdate) .pack('V', $crc32) .pack('V', $compressed_size) .pack('V', $uncompressed_size) @@ -172,7 +211,9 @@ class CI_Zip { .$gzdata; // "file data" segment $this->directory .= - "\x50\x4b\x01\x02\x00\x00\x14\x00\x00\x00\x08\x00\x00\x00\x00\x00" + "\x50\x4b\x01\x02\x00\x00\x14\x00\x00\x00\x08\x00" + .pack('v', $file_mtime) + .pack('v', $file_mdate) .pack('V', $crc32) .pack('V', $compressed_size) .pack('V', $uncompressed_size) @@ -189,7 +230,7 @@ class CI_Zip { $this->entries++; $this->file_num++; } - + // -------------------------------------------------------------------- /** @@ -197,7 +238,7 @@ class CI_Zip { * * @access public * @return bool - */ + */ function read_file($path, $preserve_filepath = FALSE) { if ( ! file_exists($path)) @@ -208,7 +249,7 @@ class CI_Zip { if (FALSE !== ($data = file_get_contents($path))) { $name = str_replace("\\", "/", $path); - + if ($preserve_filepath === FALSE) { $name = preg_replace("|.*/(.+)|", "\\1", $name); @@ -221,7 +262,7 @@ class CI_Zip { } // ------------------------------------------------------------------------ - + /** * Read a directory and add it to the zip. * @@ -232,27 +273,48 @@ class CI_Zip { * @access public * @param string path to source * @return bool - */ - function read_dir($path) - { - if ($fp = @opendir($path)) + */ + function read_dir($path, $preserve_filepath = TRUE, $root_path = NULL) + { + if ( ! $fp = @opendir($path)) { - while (FALSE !== ($file = readdir($fp))) + return FALSE; + } + + // Set the original directory root for child dir's to use as relative + if ($root_path === NULL) + { + $root_path = dirname($path).'/'; + } + + while (FALSE !== ($file = readdir($fp))) + { + if(substr($file, 0, 1) == '.') { - if (@is_dir($path.$file) && substr($file, 0, 1) != '.') - { - $this->read_dir($path.$file."/"); - } - elseif (substr($file, 0, 1) != ".") + continue; + } + + if (@is_dir($path.$file)) + { + $this->read_dir($path.$file."/", $preserve_filepath, $root_path); + } + else + { + if (FALSE !== ($data = file_get_contents($path.$file))) { - if (FALSE !== ($data = file_get_contents($path.$file))) - { - $this->add_data(str_replace("\\", "/", $path).$file, $data); + $name = str_replace("\\", "/", $path); + + if ($preserve_filepath === FALSE) + { + $name = str_replace($root_path, '', $name); } + + $this->add_data($name.$file, $data); } } - return TRUE; } + + return TRUE; } // -------------------------------------------------------------------- @@ -262,7 +324,7 @@ class CI_Zip { * * @access public * @return binary string - */ + */ function get_zip() { // Is there any data to return? @@ -281,7 +343,7 @@ class CI_Zip { return $zip_data; } - + // -------------------------------------------------------------------- /** @@ -292,7 +354,7 @@ class CI_Zip { * @access public * @param string the file name * @return bool - */ + */ function archive($filepath) { if ( ! ($fp = @fopen($filepath, FOPEN_WRITE_CREATE_DESTRUCTIVE))) @@ -300,12 +362,12 @@ class CI_Zip { return FALSE; } - flock($fp, LOCK_EX); + flock($fp, LOCK_EX); fwrite($fp, $this->get_zip()); flock($fp, LOCK_UN); fclose($fp); - return TRUE; + return TRUE; } // -------------------------------------------------------------------- @@ -325,11 +387,13 @@ class CI_Zip { $filename .= '.zip'; } - $zip_content =& $this->get_zip(); - $CI =& get_instance(); $CI->load->helper('download'); + $get_zip = $this->get_zip(); + + $zip_content =& $get_zip; + force_download($filename, $zip_content); } @@ -343,7 +407,7 @@ class CI_Zip { * * @access public * @return void - */ + */ function clear_data() { $this->zipdata = ''; @@ -352,7 +416,7 @@ class CI_Zip { $this->file_num = 0; $this->offset = 0; } - + } /* End of file Zip.php */ diff --git a/system/libraries/index.html b/system/libraries/index.html index c942a79ce..c942a79ce 100644..100755 --- a/system/libraries/index.html +++ b/system/libraries/index.html diff --git a/system/libraries/javascript/Jquery.php b/system/libraries/javascript/Jquery.php new file mode 100755 index 000000000..baab83d25 --- /dev/null +++ b/system/libraries/javascript/Jquery.php @@ -0,0 +1,1071 @@ +<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); + +/** + * CodeIgniter + * + * An open source application development framework for PHP 4.3.2 or newer + * + * @package CodeIgniter + * @author ExpressionEngine Dev Team + * @copyright Copyright (c) 2008 - 2011, EllisLab, Inc. + * @license http://www.codeigniter.com/user_guide/license.html + * @link http://www.codeigniter.com + * @since Version 1.0 + * @filesource + */ + +/** + * Jquery Class + * + * @package CodeIgniter + * @subpackage Libraries + * @author ExpressionEngine Dev Team + * @category Loader + * @link http://www.codeigniter.com/user_guide/libraries/javascript.html + */ + +class CI_Jquery extends CI_Javascript { + + var $_javascript_folder = 'js'; + var $jquery_code_for_load = array(); + var $jquery_code_for_compile = array(); + var $jquery_corner_active = FALSE; + var $jquery_table_sorter_active = FALSE; + var $jquery_table_sorter_pager_active = FALSE; + var $jquery_ajax_img = ''; + + public function __construct($params) + { + $this->CI =& get_instance(); + extract($params); + + if ($autoload === TRUE) + { + $this->script(); + } + + log_message('debug', "Jquery Class Initialized"); + } + + // -------------------------------------------------------------------- + // Event Code + // -------------------------------------------------------------------- + + /** + * Blur + * + * Outputs a jQuery blur event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _blur($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'blur'); + } + + // -------------------------------------------------------------------- + + /** + * Change + * + * Outputs a jQuery change event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _change($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'change'); + } + + // -------------------------------------------------------------------- + + /** + * Click + * + * Outputs a jQuery click event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @param boolean whether or not to return false + * @return string + */ + function _click($element = 'this', $js = '', $ret_false = TRUE) + { + if ( ! is_array($js)) + { + $js = array($js); + } + + if ($ret_false) + { + $js[] = "return false;"; + } + + return $this->_add_event($element, $js, 'click'); + } + + // -------------------------------------------------------------------- + + /** + * Double Click + * + * Outputs a jQuery dblclick event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _dblclick($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'dblclick'); + } + + // -------------------------------------------------------------------- + + /** + * Error + * + * Outputs a jQuery error event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _error($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'error'); + } + + // -------------------------------------------------------------------- + + /** + * Focus + * + * Outputs a jQuery focus event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _focus($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'focus'); + } + + // -------------------------------------------------------------------- + + /** + * Hover + * + * Outputs a jQuery hover event + * + * @access private + * @param string - element + * @param string - Javascript code for mouse over + * @param string - Javascript code for mouse out + * @return string + */ + function _hover($element = 'this', $over, $out) + { + $event = "\n\t$(" . $this->_prep_element($element) . ").hover(\n\t\tfunction()\n\t\t{\n\t\t\t{$over}\n\t\t}, \n\t\tfunction()\n\t\t{\n\t\t\t{$out}\n\t\t});\n"; + + $this->jquery_code_for_compile[] = $event; + + return $event; + } + + // -------------------------------------------------------------------- + + /** + * Keydown + * + * Outputs a jQuery keydown event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _keydown($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'keydown'); + } + + // -------------------------------------------------------------------- + + /** + * Keyup + * + * Outputs a jQuery keydown event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _keyup($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'keyup'); + } + + // -------------------------------------------------------------------- + + /** + * Load + * + * Outputs a jQuery load event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _load($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'load'); + } + + // -------------------------------------------------------------------- + + /** + * Mousedown + * + * Outputs a jQuery mousedown event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _mousedown($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'mousedown'); + } + + // -------------------------------------------------------------------- + + /** + * Mouse Out + * + * Outputs a jQuery mouseout event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _mouseout($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'mouseout'); + } + + // -------------------------------------------------------------------- + + /** + * Mouse Over + * + * Outputs a jQuery mouseover event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _mouseover($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'mouseover'); + } + + // -------------------------------------------------------------------- + + /** + * Mouseup + * + * Outputs a jQuery mouseup event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _mouseup($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'mouseup'); + } + + // -------------------------------------------------------------------- + + /** + * Output + * + * Outputs script directly + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _output($array_js = '') + { + if ( ! is_array($array_js)) + { + $array_js = array($array_js); + } + + foreach ($array_js as $js) + { + $this->jquery_code_for_compile[] = "\t$js\n"; + } + } + + // -------------------------------------------------------------------- + + /** + * Resize + * + * Outputs a jQuery resize event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _resize($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'resize'); + } + + // -------------------------------------------------------------------- + + /** + * Scroll + * + * Outputs a jQuery scroll event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _scroll($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'scroll'); + } + + // -------------------------------------------------------------------- + + /** + * Unload + * + * Outputs a jQuery unload event + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @return string + */ + function _unload($element = 'this', $js = '') + { + return $this->_add_event($element, $js, 'unload'); + } + + // -------------------------------------------------------------------- + // Effects + // -------------------------------------------------------------------- + + /** + * Add Class + * + * Outputs a jQuery addClass event + * + * @access private + * @param string - element + * @return string + */ + function _addClass($element = 'this', $class='') + { + $element = $this->_prep_element($element); + $str = "$({$element}).addClass(\"$class\");"; + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Animate + * + * Outputs a jQuery animate event + * + * @access private + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function _animate($element = 'this', $params = array(), $speed = '', $extra = '') + { + $element = $this->_prep_element($element); + $speed = $this->_validate_speed($speed); + + $animations = "\t\t\t"; + + foreach ($params as $param=>$value) + { + $animations .= $param.': \''.$value.'\', '; + } + + $animations = substr($animations, 0, -2); // remove the last ", " + + if ($speed != '') + { + $speed = ', '.$speed; + } + + if ($extra != '') + { + $extra = ', '.$extra; + } + + $str = "$({$element}).animate({\n$animations\n\t\t}".$speed.$extra.");"; + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Fade In + * + * Outputs a jQuery hide event + * + * @access private + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function _fadeIn($element = 'this', $speed = '', $callback = '') + { + $element = $this->_prep_element($element); + $speed = $this->_validate_speed($speed); + + if ($callback != '') + { + $callback = ", function(){\n{$callback}\n}"; + } + + $str = "$({$element}).fadeIn({$speed}{$callback});"; + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Fade Out + * + * Outputs a jQuery hide event + * + * @access private + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function _fadeOut($element = 'this', $speed = '', $callback = '') + { + $element = $this->_prep_element($element); + $speed = $this->_validate_speed($speed); + + if ($callback != '') + { + $callback = ", function(){\n{$callback}\n}"; + } + + $str = "$({$element}).fadeOut({$speed}{$callback});"; + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Hide + * + * Outputs a jQuery hide action + * + * @access private + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function _hide($element = 'this', $speed = '', $callback = '') + { + $element = $this->_prep_element($element); + $speed = $this->_validate_speed($speed); + + if ($callback != '') + { + $callback = ", function(){\n{$callback}\n}"; + } + + $str = "$({$element}).hide({$speed}{$callback});"; + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Remove Class + * + * Outputs a jQuery remove class event + * + * @access private + * @param string - element + * @return string + */ + function _removeClass($element = 'this', $class='') + { + $element = $this->_prep_element($element); + $str = "$({$element}).removeClass(\"$class\");"; + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Slide Up + * + * Outputs a jQuery slideUp event + * + * @access private + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function _slideUp($element = 'this', $speed = '', $callback = '') + { + $element = $this->_prep_element($element); + $speed = $this->_validate_speed($speed); + + if ($callback != '') + { + $callback = ", function(){\n{$callback}\n}"; + } + + $str = "$({$element}).slideUp({$speed}{$callback});"; + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Slide Down + * + * Outputs a jQuery slideDown event + * + * @access private + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function _slideDown($element = 'this', $speed = '', $callback = '') + { + $element = $this->_prep_element($element); + $speed = $this->_validate_speed($speed); + + if ($callback != '') + { + $callback = ", function(){\n{$callback}\n}"; + } + + $str = "$({$element}).slideDown({$speed}{$callback});"; + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Slide Toggle + * + * Outputs a jQuery slideToggle event + * + * @access public + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function _slideToggle($element = 'this', $speed = '', $callback = '') + { + $element = $this->_prep_element($element); + $speed = $this->_validate_speed($speed); + + if ($callback != '') + { + $callback = ", function(){\n{$callback}\n}"; + } + + $str = "$({$element}).slideToggle({$speed}{$callback});"; + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Toggle + * + * Outputs a jQuery toggle event + * + * @access private + * @param string - element + * @return string + */ + function _toggle($element = 'this') + { + $element = $this->_prep_element($element); + $str = "$({$element}).toggle();"; + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Toggle Class + * + * Outputs a jQuery toggle class event + * + * @access private + * @param string - element + * @return string + */ + function _toggleClass($element = 'this', $class='') + { + $element = $this->_prep_element($element); + $str = "$({$element}).toggleClass(\"$class\");"; + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Show + * + * Outputs a jQuery show event + * + * @access private + * @param string - element + * @param string - One of 'slow', 'normal', 'fast', or time in milliseconds + * @param string - Javascript callback function + * @return string + */ + function _show($element = 'this', $speed = '', $callback = '') + { + $element = $this->_prep_element($element); + $speed = $this->_validate_speed($speed); + + if ($callback != '') + { + $callback = ", function(){\n{$callback}\n}"; + } + + $str = "$({$element}).show({$speed}{$callback});"; + + return $str; + } + + // -------------------------------------------------------------------- + + /** + * Updater + * + * An Ajax call that populates the designated DOM node with + * returned content + * + * @access private + * @param string The element to attach the event to + * @param string the controller to run the call against + * @param string optional parameters + * @return string + */ + + function _updater($container = 'this', $controller, $options = '') + { + $container = $this->_prep_element($container); + + $controller = (strpos('://', $controller) === FALSE) ? $controller : $this->CI->config->site_url($controller); + + // ajaxStart and ajaxStop are better choices here... but this is a stop gap + if ($this->CI->config->item('javascript_ajax_img') == '') + { + $loading_notifier = "Loading..."; + } + else + { + $loading_notifier = '<img src=\'' . $this->CI->config->slash_item('base_url') . $this->CI->config->item('javascript_ajax_img') . '\' alt=\'Loading\' />'; + } + + $updater = "$($container).empty();\n"; // anything that was in... get it out + $updater .= "\t\t$($container).prepend(\"$loading_notifier\");\n"; // to replace with an image + + $request_options = ''; + if ($options != '') + { + $request_options .= ", {"; + $request_options .= (is_array($options)) ? "'".implode("', '", $options)."'" : "'".str_replace(":", "':'", $options)."'"; + $request_options .= "}"; + } + + $updater .= "\t\t$($container).load('$controller'$request_options);"; + return $updater; + } + + + // -------------------------------------------------------------------- + // Pre-written handy stuff + // -------------------------------------------------------------------- + + /** + * Zebra tables + * + * @access private + * @param string table name + * @param string plugin location + * @return string + */ + function _zebraTables($class = '', $odd = 'odd', $hover = '') + { + $class = ($class != '') ? '.'.$class : ''; + + $zebra = "\t\$(\"table{$class} tbody tr:nth-child(even)\").addClass(\"{$odd}\");"; + + $this->jquery_code_for_compile[] = $zebra; + + if ($hover != '') + { + $hover = $this->hover("table{$class} tbody tr", "$(this).addClass('hover');", "$(this).removeClass('hover');"); + } + + return $zebra; + } + + + + // -------------------------------------------------------------------- + // Plugins + // -------------------------------------------------------------------- + + /** + * Corner Plugin + * + * http://www.malsup.com/jquery/corner/ + * + * @access public + * @param string target + * @return string + */ + function corner($element = '', $corner_style = '') + { + // may want to make this configurable down the road + $corner_location = '/plugins/jquery.corner.js'; + + if ($corner_style != '') + { + $corner_style = '"'.$corner_style.'"'; + } + + return "$(" . $this->_prep_element($element) . ").corner(".$corner_style.");"; + } + + // -------------------------------------------------------------------- + + /** + * modal window + * + * Load a thickbox modal window + * + * @access public + * @return void + */ + function modal($src, $relative = FALSE) + { + $this->jquery_code_for_load[] = $this->external($src, $relative); + } + + // -------------------------------------------------------------------- + + /** + * Effect + * + * Load an Effect library + * + * @access public + * @return void + */ + function effect($src, $relative = FALSE) + { + $this->jquery_code_for_load[] = $this->external($src, $relative); + } + + // -------------------------------------------------------------------- + + /** + * Plugin + * + * Load a plugin library + * + * @access public + * @return void + */ + function plugin($src, $relative = FALSE) + { + $this->jquery_code_for_load[] = $this->external($src, $relative); + } + + // -------------------------------------------------------------------- + + /** + * UI + * + * Load a user interface library + * + * @access public + * @return void + */ + function ui($src, $relative = FALSE) + { + $this->jquery_code_for_load[] = $this->external($src, $relative); + } + // -------------------------------------------------------------------- + + /** + * Sortable + * + * Creates a jQuery sortable + * + * @access public + * @return void + */ + function sortable($element, $options = array()) + { + + if (count($options) > 0) + { + $sort_options = array(); + foreach ($options as $k=>$v) + { + $sort_options[] = "\n\t\t".$k.': '.$v.""; + } + $sort_options = implode(",", $sort_options); + } + else + { + $sort_options = ''; + } + + return "$(" . $this->_prep_element($element) . ").sortable({".$sort_options."\n\t});"; + } + + // -------------------------------------------------------------------- + + /** + * Table Sorter Plugin + * + * @access public + * @param string table name + * @param string plugin location + * @return string + */ + function tablesorter($table = '', $options = '') + { + $this->jquery_code_for_compile[] = "\t$(" . $this->_prep_element($table) . ").tablesorter($options);\n"; + } + + // -------------------------------------------------------------------- + // Class functions + // -------------------------------------------------------------------- + + /** + * Add Event + * + * Constructs the syntax for an event, and adds to into the array for compilation + * + * @access private + * @param string The element to attach the event to + * @param string The code to execute + * @param string The event to pass + * @return string + */ + function _add_event($element, $js, $event) + { + if (is_array($js)) + { + $js = implode("\n\t\t", $js); + + } + + $event = "\n\t$(" . $this->_prep_element($element) . ").{$event}(function(){\n\t\t{$js}\n\t});\n"; + $this->jquery_code_for_compile[] = $event; + return $event; + } + + // -------------------------------------------------------------------- + + /** + * Compile + * + * As events are specified, they are stored in an array + * This funciton compiles them all for output on a page + * + * @access private + * @return string + */ + function _compile($view_var = 'script_foot', $script_tags = TRUE) + { + // External references + $external_scripts = implode('', $this->jquery_code_for_load); + $this->CI->load->vars(array('library_src' => $external_scripts)); + + if (count($this->jquery_code_for_compile) == 0 ) + { + // no inline references, let's just return + return; + } + + // Inline references + $script = '$(document).ready(function() {' . "\n"; + $script .= implode('', $this->jquery_code_for_compile); + $script .= '});'; + + $output = ($script_tags === FALSE) ? $script : $this->inline($script); + + $this->CI->load->vars(array($view_var => $output)); + + } + + // -------------------------------------------------------------------- + + /** + * Clear Compile + * + * Clears the array of script events collected for output + * + * @access public + * @return void + */ + function _clear_compile() + { + $this->jquery_code_for_compile = array(); + } + + // -------------------------------------------------------------------- + + /** + * Document Ready + * + * A wrapper for writing document.ready() + * + * @access private + * @return string + */ + function _document_ready($js) + { + if ( ! is_array($js)) + { + $js = array ($js); + + } + + foreach ($js as $script) + { + $this->jquery_code_for_compile[] = $script; + } + } + + // -------------------------------------------------------------------- + + /** + * Script Tag + * + * Outputs the script tag that loads the jquery.js file into an HTML document + * + * @access public + * @param string + * @return string + */ + function script($library_src = '', $relative = FALSE) + { + $library_src = $this->external($library_src, $relative); + $this->jquery_code_for_load[] = $library_src; + return $library_src; + } + + // -------------------------------------------------------------------- + + /** + * Prep Element + * + * Puts HTML element in quotes for use in jQuery code + * unless the supplied element is the Javascript 'this' + * object, in which case no quotes are added + * + * @access public + * @param string + * @return string + */ + function _prep_element($element) + { + if ($element != 'this') + { + $element = '"'.$element.'"'; + } + + return $element; + } + + // -------------------------------------------------------------------- + + /** + * Validate Speed + * + * Ensures the speed parameter is valid for jQuery + * + * @access private + * @param string + * @return string + */ + function _validate_speed($speed) + { + if (in_array($speed, array('slow', 'normal', 'fast'))) + { + $speed = '"'.$speed.'"'; + } + elseif (preg_match("/[^0-9]/", $speed)) + { + $speed = ''; + } + + return $speed; + } + +} + +/* End of file Jquery.php */ +/* Location: ./system/libraries/Jquery.php */
\ No newline at end of file diff --git a/system/logs/index.html b/system/logs/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/logs/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/plugins/captcha_pi.php b/system/plugins/captcha_pi.php deleted file mode 100644 index 77f29f8b9..000000000 --- a/system/plugins/captcha_pi.php +++ /dev/null @@ -1,356 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/* -Instructions: - -Load the plugin using: - - $this->load->plugin('captcha'); - -Once loaded you can generate a captcha like this: - - $vals = array( - 'word' => 'Random word', - 'img_path' => './captcha/', - 'img_url' => 'http://example.com/captcha/', - 'font_path' => './system/fonts/texb.ttf', - 'img_width' => '150', - 'img_height' => 30, - 'expiration' => 7200 - ); - - $cap = create_captcha($vals); - echo $cap['image']; - - -NOTES: - - The captcha function requires the GD image library. - - Only the img_path and img_url are required. - - If a "word" is not supplied, the function will generate a random - ASCII string. You might put together your own word library that - you can draw randomly from. - - If you do not specify a path to a TRUE TYPE font, the native ugly GD - font will be used. - - The "captcha" folder must be writable (666, or 777) - - The "expiration" (in seconds) signifies how long an image will - remain in the captcha folder before it will be deleted. The default - is two hours. - -RETURNED DATA - -The create_captcha() function returns an associative array with this data: - - [array] - ( - 'image' => IMAGE TAG - 'time' => TIMESTAMP (in microtime) - 'word' => CAPTCHA WORD - ) - -The "image" is the actual image tag: -<img src="http://example.com/captcha/12345.jpg" width="140" height="50" /> - -The "time" is the micro timestamp used as the image name without the file -extension. It will be a number like this: 1139612155.3422 - -The "word" is the word that appears in the captcha image, which if not -supplied to the function, will be a random string. - - -ADDING A DATABASE - -In order for the captcha function to prevent someone from posting, you will need -to add the information returned from create_captcha() function to your database. -Then, when the data from the form is submitted by the user you will need to verify -that the data exists in the database and has not expired. - -Here is a table prototype: - - CREATE TABLE captcha ( - captcha_id bigint(13) unsigned NOT NULL auto_increment, - captcha_time int(10) unsigned NOT NULL, - ip_address varchar(16) default '0' NOT NULL, - word varchar(20) NOT NULL, - PRIMARY KEY `captcha_id` (`captcha_id`), - KEY `word` (`word`) - ) - - -Here is an example of usage with a DB. - -On the page where the captcha will be shown you'll have something like this: - - $this->load->plugin('captcha'); - $vals = array( - 'img_path' => './captcha/', - 'img_url' => 'http://example.com/captcha/' - ); - - $cap = create_captcha($vals); - - $data = array( - 'captcha_id' => '', - 'captcha_time' => $cap['time'], - 'ip_address' => $this->input->ip_address(), - 'word' => $cap['word'] - ); - - $query = $this->db->insert_string('captcha', $data); - $this->db->query($query); - - echo 'Submit the word you see below:'; - echo $cap['image']; - echo '<input type="text" name="captcha" value="" />'; - - -Then, on the page that accepts the submission you'll have something like this: - - // First, delete old captchas - $expiration = time()-7200; // Two hour limit - $DB->query("DELETE FROM captcha WHERE captcha_time < ".$expiration); - - // Then see if a captcha exists: - $sql = "SELECT COUNT(*) AS count FROM captcha WHERE word = ? AND ip_address = ? AND date > ?"; - $binds = array($_POST['captcha'], $this->input->ip_address(), $expiration); - $query = $this->db->query($sql, $binds); - $row = $query->row(); - - if ($row->count == 0) - { - echo "You must submit the word that appears in the image"; - } - -*/ - - - -/** -|========================================================== -| Create Captcha -|========================================================== -| -*/ -function create_captcha($data = '', $img_path = '', $img_url = '', $font_path = '') -{ - $defaults = array('word' => '', 'img_path' => '', 'img_url' => '', 'img_width' => '150', 'img_height' => '30', 'font_path' => '', 'expiration' => 7200); - - foreach ($defaults as $key => $val) - { - if ( ! is_array($data)) - { - if ( ! isset($$key) OR $$key == '') - { - $$key = $val; - } - } - else - { - $$key = ( ! isset($data[$key])) ? $val : $data[$key]; - } - } - - if ($img_path == '' OR $img_url == '') - { - return FALSE; - } - - if ( ! @is_dir($img_path)) - { - return FALSE; - } - - if ( ! is_really_writable($img_path)) - { - return FALSE; - } - - if ( ! extension_loaded('gd')) - { - return FALSE; - } - - // ----------------------------------- - // Remove old images - // ----------------------------------- - - list($usec, $sec) = explode(" ", microtime()); - $now = ((float)$usec + (float)$sec); - - $current_dir = @opendir($img_path); - - while($filename = @readdir($current_dir)) - { - if ($filename != "." and $filename != ".." and $filename != "index.html") - { - $name = str_replace(".jpg", "", $filename); - - if (($name + $expiration) < $now) - { - @unlink($img_path.$filename); - } - } - } - - @closedir($current_dir); - - // ----------------------------------- - // Do we have a "word" yet? - // ----------------------------------- - - if ($word == '') - { - $pool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; - - $str = ''; - for ($i = 0; $i < 8; $i++) - { - $str .= substr($pool, mt_rand(0, strlen($pool) -1), 1); - } - - $word = $str; - } - - // ----------------------------------- - // Determine angle and position - // ----------------------------------- - - $length = strlen($word); - $angle = ($length >= 6) ? rand(-($length-6), ($length-6)) : 0; - $x_axis = rand(6, (360/$length)-16); - $y_axis = ($angle >= 0 ) ? rand($img_height, $img_width) : rand(6, $img_height); - - // ----------------------------------- - // Create image - // ----------------------------------- - - // PHP.net recommends imagecreatetruecolor(), but it isn't always available - if (function_exists('imagecreatetruecolor')) - { - $im = imagecreatetruecolor($img_width, $img_height); - } - else - { - $im = imagecreate($img_width, $img_height); - } - - // ----------------------------------- - // Assign colors - // ----------------------------------- - - $bg_color = imagecolorallocate ($im, 255, 255, 255); - $border_color = imagecolorallocate ($im, 153, 102, 102); - $text_color = imagecolorallocate ($im, 204, 153, 153); - $grid_color = imagecolorallocate($im, 255, 182, 182); - $shadow_color = imagecolorallocate($im, 255, 240, 240); - - // ----------------------------------- - // Create the rectangle - // ----------------------------------- - - ImageFilledRectangle($im, 0, 0, $img_width, $img_height, $bg_color); - - // ----------------------------------- - // Create the spiral pattern - // ----------------------------------- - - $theta = 1; - $thetac = 7; - $radius = 16; - $circles = 20; - $points = 32; - - for ($i = 0; $i < ($circles * $points) - 1; $i++) - { - $theta = $theta + $thetac; - $rad = $radius * ($i / $points ); - $x = ($rad * cos($theta)) + $x_axis; - $y = ($rad * sin($theta)) + $y_axis; - $theta = $theta + $thetac; - $rad1 = $radius * (($i + 1) / $points); - $x1 = ($rad1 * cos($theta)) + $x_axis; - $y1 = ($rad1 * sin($theta )) + $y_axis; - imageline($im, $x, $y, $x1, $y1, $grid_color); - $theta = $theta - $thetac; - } - - // ----------------------------------- - // Write the text - // ----------------------------------- - - $use_font = ($font_path != '' AND file_exists($font_path) AND function_exists('imagettftext')) ? TRUE : FALSE; - - if ($use_font == FALSE) - { - $font_size = 5; - $x = rand(0, $img_width/($length/3)); - $y = 0; - } - else - { - $font_size = 16; - $x = rand(0, $img_width/($length/1.5)); - $y = $font_size+2; - } - - for ($i = 0; $i < strlen($word); $i++) - { - if ($use_font == FALSE) - { - $y = rand(0 , $img_height/2); - imagestring($im, $font_size, $x, $y, substr($word, $i, 1), $text_color); - $x += ($font_size*2); - } - else - { - $y = rand($img_height/2, $img_height-3); - imagettftext($im, $font_size, $angle, $x, $y, $text_color, $font_path, substr($word, $i, 1)); - $x += $font_size; - } - } - - - // ----------------------------------- - // Create the border - // ----------------------------------- - - imagerectangle($im, 0, 0, $img_width-1, $img_height-1, $border_color); - - // ----------------------------------- - // Generate the image - // ----------------------------------- - - $img_name = $now.'.jpg'; - - ImageJPEG($im, $img_path.$img_name); - - $img = "<img src=\"$img_url$img_name\" width=\"$img_width\" height=\"$img_height\" style=\"border:0;\" alt=\" \" />"; - - ImageDestroy($im); - - return array('word' => $word, 'time' => $now, 'image' => $img); -} - - -/* End of file captcha_pi.php */ -/* Location: ./system/plugins/captcha_pi.php */
\ No newline at end of file diff --git a/system/plugins/index.html b/system/plugins/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/plugins/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/plugins/js_calendar_pi.php b/system/plugins/js_calendar_pi.php deleted file mode 100644 index 3c304fd17..000000000 --- a/system/plugins/js_calendar_pi.php +++ /dev/null @@ -1,629 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/* -Instructions: - -Load the plugin using: - - $this->load->plugin('js_calendar'); - -Once loaded you'll add the calendar script to the <head> of your page like this: - -<?php echo js_calendar_script('my_form'); ?> - -The above function will be passed the name of your form. - -Then to show the actual calendar you'll do this: - -<?php echo js_calendar_write('entry_date', time(), true);?> -<form name="my_form"> -<input type="text" name="entry_date" value="" onblur="update_calendar(this.name, this.value);" /> -<p><a href="javascript:void(0);" onClick="set_to_time('entry_date', '<?php echo time();?>')" >Today</a></p> -</form> - - -Note: The first parameter is the name of the field containing your date, the second parameter contains the "now" time, -and the third tells the calendar whether to highlight the current day or not. - -Lastly, you'll need some CSS for your calendar: - -.calendar { - border: 1px #6975A3 solid; - background-color: transparent; -} -.calheading { - background-color: #7C8BC0; - color: #fff; - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 11px; - font-weight: bold; - text-align: center; -} -.calnavleft { - background-color: #7C8BC0; - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 10px; - font-weight: bold; - color: #fff; - padding: 4px; - cursor: pointer; -} -.calnavright { - background-color: #7C8BC0; - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 10px; - font-weight: bold; - color: #fff; - text-align: right; - padding: 4px; - cursor: pointer; -} -.caldayheading { - background-color: #000; - color: #fff; - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 10px; - text-align: center; - padding: 6px 2px 6px 2px; -} -.caldaycells{ - color: #000; - background-color: #D1D7E6; - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 11px; - text-align: center; - padding: 4px; - border: 1px #E0E5F1 solid; - cursor: pointer; -} -.caldaycellhover{ - color: #fff; - background-color: #B3BCD4; - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 11px; - text-align: center; - padding: 4px; - border: 1px #B3BCD4 solid; - cursor: pointer; -} -.caldayselected{ - background-color: #737FAC; - color: #fff; - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 11px; - font-weight: bold; - text-align: center; - border: 1px #566188 solid; - padding: 3px; - cursor: pointer; -} -.calblanktop { - background-color: #fff; - padding: 4px; -} -.calblankbot { - background-color: #fff; - padding: 4px; -} - - -*/ - -function js_calendar_script($form_name = 'entryform') -{ -$CI =& get_instance(); -$CI->load->language('calendar'); -ob_start(); -?> -<script type="text/javascript"> -<!-- -var form_name = "<?php echo $form_name; ?>"; -var format = 'us'; // eu or us -var days = new Array( - '<?php echo $CI->lang->line('cal_su');?>', // Sunday, short name - '<?php echo $CI->lang->line('cal_mo');?>', // Monday, short name - '<?php echo $CI->lang->line('cal_tu');?>', // Tuesday, short name - '<?php echo $CI->lang->line('cal_wed');?>', // Wednesday, short name - '<?php echo $CI->lang->line('cal_thu');?>', // Thursday, short name - '<?php echo $CI->lang->line('cal_fri');?>', // Friday, short name - '<?php echo $CI->lang->line('cal_sat');?>' // Saturday, short name - ); -var months = new Array( - '<?php echo $CI->lang->line('cal_january');?>', - '<?php echo $CI->lang->line('cal_february');?>', - '<?php echo $CI->lang->line('cal_march');?>', - '<?php echo $CI->lang->line('cal_april');?>', - '<?php echo $CI->lang->line('cal_mayl');?>', - '<?php echo $CI->lang->line('cal_june');?>', - '<?php echo $CI->lang->line('cal_july');?>', - '<?php echo $CI->lang->line('cal_august');?>', - '<?php echo $CI->lang->line('cal_september');?>', - '<?php echo $CI->lang->line('cal_october');?>', - '<?php echo $CI->lang->line('cal_november');?>', - '<?php echo $CI->lang->line('cal_december');?>' - ); -var last_click = new Array(); -var current_month = ''; -var current_year = ''; -var last_date = ''; - -function calendar(id, d, highlight, adjusted) -{ - if (adjusted == undefined) - { - var d = new Date(d * 1000); - } - - this.id = id; - this.highlight = highlight; - this.date_obj = d; - this.write = build_calendar; - this.total_days = total_days; - this.month = d.getMonth(); - this.date = d.getDate(); - this.day = d.getDay(); - this.year = d.getFullYear(); - this.hours = d.getHours(); - this.minutes = d.getMinutes(); - this.seconds = d.getSeconds(); - this.date_str = date_str; - - if (highlight == false) - { - this.selected_date = ''; - } - else - { - this.selected_date = this.year + '' + this.month + '' + this.date; - } - - // Set the "selected date" - d.setDate(1); - this.firstDay = d.getDay(); - - //then reset the date object to the correct date - d.setDate(this.date); -} - -// Build the body of the calendar -function build_calendar() -{ - var str = ''; - - // Calendar Heading - - str += '<div id="cal' + this.id + '">'; - str += '<table class="calendar" cellspacing="0" cellpadding="0" border="0" >'; - str += '<tr>'; - str += '<td class="calnavleft" onClick="change_month(-1, \'' + this.id + '\')"><<<\/td>'; - str += '<td colspan="5" class="calheading">' + months[this.month] + ' ' + this.year + '<\/td>'; - str += '<td class="calnavright" onClick="change_month(1, \'' + this.id + '\')">>><\/td>'; - str += '<\/tr>'; - - // Day Names - - str += '<tr>'; - - for (i = 0; i < 7; i++) - { - str += '<td class="caldayheading">' + days[i] + '<\/td>'; - } - - str += '<\/tr>'; - - // Day Cells - - str += '<tr>'; - - selDate = (last_date != '') ? last_date : this.date; - - for (j = 0; j < 42; j++) - { - var displayNum = (j - this.firstDay + 1); - - if (j < this.firstDay) // leading empty cells - { - str += '<td class="calblanktop"> <\/td>'; - } - else if (displayNum == selDate && this.highlight == true) // Selected date - { - str += '<td id="' + this.id +'selected" class="caldayselected" onClick="set_date(this,\'' + this.id + '\')">' + displayNum + '<\/td>'; - } - else if (displayNum > this.total_days()) - { - str += '<td class="calblankbot"> <\/td>'; // trailing empty cells - } - else // Unselected days - { - str += '<td id="" class="caldaycells" onClick="set_date(this,\'' + this.id + '\'); return false;" onMouseOver="javascript:cell_highlight(this,\'' + displayNum + '\',\'' + this.id + '\');" onMouseOut="javascript:cell_reset(this,\'' + displayNum + '\',\'' + this.id + '\');" >' + displayNum + '<\/td>'; - } - - if (j % 7 == 6) - { - str += '<\/tr><tr>'; - } - } - - str += '<\/tr>'; - str += '<\/table>'; - str += '<\/div>'; - - return str; -} - -// Total number of days in a month -function total_days() -{ - switch(this.month) - { - case 1: // Check for leap year - if (( this.date_obj.getFullYear() % 4 == 0 - && this.date_obj.getFullYear() % 100 != 0) - || this.date_obj.getFullYear() % 400 == 0) - return 29; - else - return 28; - case 3: - return 30; - case 5: - return 30; - case 8: - return 30; - case 10: - return 30 - default: - return 31; - } -} - -// Highlight Cell on Mouseover -function cell_highlight(td, num, cal) -{ - cal = eval(cal); - - if (last_click[cal.id] != num) - { - td.className = "caldaycellhover"; - } -} - -// Reset Cell on MouseOut -function cell_reset(td, num, cal) -{ - cal = eval(cal); - - if (last_click[cal.id] == num) - { - td.className = "caldayselected"; - } - else - { - td.className = "caldaycells"; - } -} - -// Clear Field -function clear_field(id) -{ - eval("document." + form_name + "." + id + ".value = ''"); - - document.getElementById(id + "selected").className = "caldaycells"; - document.getElementById(id + "selected").id = ""; - - cal = eval(id); - cal.selected_date = ''; -} - - -// Set date to specified time -function set_to_time(id, raw) -{ - if (document.getElementById(id + "selected")) - { - document.getElementById(id + "selected").className = "caldaycells"; - document.getElementById(id + "selected").id = ""; - } - - document.getElementById('cal' + id).innerHTML = '<div id="tempcal'+id+'"> <'+'/div>'; - - var nowDate = new Date(); - nowDate.setTime = raw * 1000; - - current_month = nowDate.getMonth(); - current_year = nowDate.getFullYear(); - current_date = nowDate.getDate(); - - oldcal = eval(id); - oldcal.selected_date = current_year + '' + current_month + '' + current_date; - - cal = new calendar(id, nowDate, true, true); - cal.selected_date = current_year + '' + current_month + '' + current_date; - - last_date = cal.date; - - document.getElementById('tempcal'+id).innerHTML = cal.write(); - - insert_date(cal); -} - -// Set date to what is in the field -var lastDates = new Array(); - -function update_calendar(id, dateValue) -{ - if (lastDates[id] == dateValue) return; - - lastDates[id] = dateValue; - - var fieldString = dateValue.replace(/\s+/g, ' '); - - while (fieldString.substring(0,1) == ' ') - { - fieldString = fieldString.substring(1, fieldString.length); - } - - var dateString = fieldString.split(' '); - var dateParts = dateString[0].split('-') - - if (dateParts.length < 3) return; - var newYear = dateParts[0]; - var newMonth = dateParts[1]; - var newDay = dateParts[2]; - - if (isNaN(newDay) || newDay < 1 || (newDay.length != 1 && newDay.length != 2)) return; - if (isNaN(newYear) || newYear < 1 || newYear.length != 4) return; - if (isNaN(newMonth) || newMonth < 1 || (newMonth.length != 1 && newMonth.length != 2)) return; - - if (newMonth > 12) newMonth = 12; - - if (newDay > 28) - { - switch(newMonth - 1) - { - case 1: // Check for leap year - if ((newYear % 4 == 0 && newYear % 100 != 0) || newYear % 400 == 0) - { - if (newDay > 29) newDay = 29; - } - else - { - if (newDay > 28) newDay = 28; - } - case 3: - if (newDay > 30) newDay = 30; - case 5: - if (newDay > 30) newDay = 30; - case 8: - if (newDay > 30) newDay = 30; - case 10: - if (newDay > 30) newDay = 30; - default: - if (newDay > 31) newDay = 31; - } - } - - if (document.getElementById(id + "selected")) - { - document.getElementById(id + "selected").className = "caldaycells"; - document.getElementById(id + "selected").id = ""; - } - - document.getElementById('cal' + id).innerHTML = '<div id="tempcal'+id+'"> <'+'/div>'; - - var nowDate = new Date(); - nowDate.setDate(newDay); - nowDate.setMonth(newMonth - 1); - nowDate.setYear(newYear); - nowDate.setHours(12); - - current_month = nowDate.getMonth(); - current_year = nowDate.getFullYear(); - - cal = new calendar(id, nowDate, true, true); - document.getElementById('tempcal'+id).innerHTML = cal.write(); -} - -// Set the date -function set_date(td, cal) -{ - - cal = eval(cal); - - // If the user is clicking a cell that is already - // selected we'll de-select it and clear the form field - - if (last_click[cal.id] == td.firstChild.nodeValue) - { - td.className = "caldaycells"; - last_click[cal.id] = ''; - remove_date(cal); - cal.selected_date = ''; - return; - } - - // Onward! - if (document.getElementById(cal.id + "selected")) - { - document.getElementById(cal.id + "selected").className = "caldaycells"; - document.getElementById(cal.id + "selected").id = ""; - } - - td.className = "caldayselected"; - td.id = cal.id + "selected"; - - cal.selected_date = cal.date_obj.getFullYear() + '' + cal.date_obj.getMonth() + '' + cal.date; - cal.date_obj.setDate(td.firstChild.nodeValue); - cal = new calendar(cal.id, cal.date_obj, true, true); - cal.selected_date = cal.date_obj.getFullYear() + '' + cal.date_obj.getMonth() + '' + cal.date; - - last_date = cal.date; - - //cal.date - last_click[cal.id] = cal.date; - - // Insert the date into the form - insert_date(cal); -} -/* -// Insert the date into the form field -function insert_date(cal) -{ - cal = eval(cal); - fval = eval("document." + form_name + "." + cal.id); - - if (fval.value == '') - { - fval.value = cal.date_str('y'); - } - else - { - time = fval.value.substring(10); - new_date = cal.date_str('n') + time; - fval.value = new_date; - } -} -*/ -// Remove the date from the form field -function remove_date(cal) -{ - cal = eval(cal); - fval = eval("document." + form_name + "." + cal.id); - fval.value = ''; -} - -// Change to a new month -function change_month(mo, cal) -{ - cal = eval(cal); - - if (current_month != '') - { - cal.date_obj.setMonth(current_month); - cal.date_obj.setYear(current_year); - - current_month = ''; - current_year = ''; - } - - var newMonth = cal.date_obj.getMonth() + mo; - var newDate = cal.date_obj.getDate(); - - if (newMonth == 12) - { - cal.date_obj.setYear(cal.date_obj.getFullYear() + 1) - newMonth = 0; - } - else if (newMonth == -1) - { - cal.date_obj.setYear(cal.date_obj.getFullYear() - 1) - newMonth = 11; - } - - if (newDate > 28) - { - var newYear = cal.date_obj.getFullYear(); - - switch(newMonth) - { - case 1: // Check for leap year - if ((newYear % 4 == 0 && newYear % 100 != 0) || newYear % 400 == 0) - { - if (newDate > 29) newDate = 29; - } - else - { - if (newDate > 28) newDate = 28; - } - case 3: - if (newDate > 30) newDate = 30; - case 5: - if (newDate > 30) newDate = 30; - case 8: - if (newDate > 30) newDate = 30; - case 10: - if (newDate > 30) newDate = 30; - default: - if (newDate > 31) newDate = 31; - } - } - - cal.date_obj.setDate(newDate); - cal.date_obj.setMonth(newMonth); - new_mdy = cal.date_obj.getFullYear() + '' + cal.date_obj.getMonth() + '' + cal.date; - - highlight = (cal.selected_date == new_mdy) ? true : false; - cal = new calendar(cal.id, cal.date_obj, highlight, true); - document.getElementById('cal' + cal.id).innerHTML = cal.write(); -} - -// Finalize the date string -function date_str(time) -{ - var month = this.month + 1; - if (month < 10) - month = '0' + month; - - var day = (this.date < 10) ? '0' + this.date : this.date; - var minutes = (this.minutes < 10) ? '0' + this.minutes : this.minutes; - - if (format == 'us') - { - var hours = (this.hours > 12) ? this.hours - 12 : this.hours; - var ampm = (this.hours > 11) ? 'PM' : 'AM' - } - else - { - var hours = this.hours; - var ampm = ''; - } - - if (time == 'y') - { - return this.year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ' ' + ampm; - } - else - { - return this.year + '-' + month + '-' + day; - } -} - -//--> -</script> -<?php - -$r = ob_get_contents(); -ob_end_clean(); -return $r; -} - - -function js_calendar_write($field_id, $time = '', $highlight = TRUE) -{ - if ($time == '') - $time = time(); - - return - '<script type="text/javascript"> - var '.$field_id.' = new calendar("'.$field_id.'", '.$time.', '.(($highlight == TRUE) ? 'true' : 'false').'); - document.write('.$field_id.'.write()); - </script>'; -} - - -/* End of file js_calendar_pi.php */ -/* Location: ./system/plugins/js_calendar_pi.php */
\ No newline at end of file diff --git a/system/scaffolding/Scaffolding.php b/system/scaffolding/Scaffolding.php deleted file mode 100644 index d110626b1..000000000 --- a/system/scaffolding/Scaffolding.php +++ /dev/null @@ -1,291 +0,0 @@ -<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); -/** - * CodeIgniter - * - * An open source application development framework for PHP 4.3.2 or newer - * - * @package CodeIgniter - * @author ExpressionEngine Dev Team - * @copyright Copyright (c) 2008 - 2010, EllisLab, Inc. - * @license http://codeigniter.com/user_guide/license.html - * @link http://codeigniter.com - * @since Version 1.0 - * @filesource - */ - -// ------------------------------------------------------------------------ - -/** - * Scaffolding Class - * - * Provides the Scaffolding framework - * - * @package CodeIgniter - * @subpackage Scaffolding - * @author ExpressionEngine Dev Team - * @link http://codeigniter.com/user_guide/general/scaffolding.html - */ -class Scaffolding { - - var $CI; - var $current_table; - var $base_url = ''; - var $lang = array(); - - function Scaffolding($db_table) - { - $this->CI =& get_instance(); - - $this->CI->load->database("", FALSE, TRUE); - $this->CI->load->library('pagination'); - - // Turn off caching - $this->CI->db->cache_off(); - - /** - * Set the current table name - * This is done when initializing scaffolding: - * $this->load->scaffolding('table_name') - * - */ - $this->current_table = $db_table; - - /** - * Set the path to the "view" files - * We'll manually override the "view" path so that - * the load->view function knows where to look. - */ - - $this->CI->load->_ci_view_path = BASEPATH.'scaffolding/views/'; - - // Set the base URL - $this->base_url = $this->CI->config->site_url().'/'.$this->CI->uri->segment(1).$this->CI->uri->slash_segment(2, 'both'); - $this->base_uri = $this->CI->uri->segment(1).$this->CI->uri->slash_segment(2, 'leading'); - - // Set a few globals - $data = array( - 'image_url' => $this->CI->config->system_url().'scaffolding/images/', - 'base_uri' => $this->base_uri, - 'base_url' => $this->base_url, - 'title' => $this->current_table - ); - - $this->CI->load->vars($data); - - // Load the language file and create variables - $this->lang = $this->CI->load->scaffold_language('scaffolding', '', TRUE); - $this->CI->load->vars($this->lang); - - // Load the helper files we plan to use - $this->CI->load->helper(array('url', 'form')); - - - log_message('debug', 'Scaffolding Class Initialized'); - } - - // -------------------------------------------------------------------- - - /** - * "Add" Page - * - * Shows a form representing the currently selected DB - * so that data can be inserted - * - * @access public - * @return string the HTML "add" page - */ - function add() - { - $data = array( - 'title' => ( ! isset($this->lang['scaff_add'])) ? 'Add Data' : $this->lang['scaff_add'], - 'fields' => $this->CI->db->field_data($this->current_table), - 'action' => $this->base_uri.'/insert' - ); - - $this->CI->load->view('add', $data); - } - - // -------------------------------------------------------------------- - - /** - * Insert the data - * - * @access public - * @return void redirects to the view page - */ - function insert() - { - if ($this->CI->db->insert($this->current_table, $_POST) === FALSE) - { - $this->add(); - } - else - { - redirect($this->base_uri.'/view/'); - } - } - - // -------------------------------------------------------------------- - - /** - * "View" Page - * - * Shows a table containing the data in the currently - * selected DB - * - * @access public - * @return string the HTML "view" page - */ - function view() - { - // Fetch the total number of DB rows - $total_rows = $this->CI->db->count_all($this->current_table); - - if ($total_rows < 1) - { - return $this->CI->load->view('no_data'); - } - - // Set the query limit/offset - $per_page = 20; - $offset = $this->CI->uri->segment(4, 0); - - // Run the query - $query = $this->CI->db->get($this->current_table, $per_page, $offset); - - // Now let's get the field names - $fields = $this->CI->db->list_fields($this->current_table); - - // We assume that the column in the first position is the primary field. - $primary = current($fields); - - // Pagination! - $this->CI->pagination->initialize( - array( - 'base_url' => $this->base_url.'/view', - 'total_rows' => $total_rows, - 'per_page' => $per_page, - 'uri_segment' => 4, - 'full_tag_open' => '<p>', - 'full_tag_close' => '</p>' - ) - ); - - $data = array( - 'title' => ( ! isset($this->lang['scaff_view'])) ? 'View Data' : $this->lang['scaff_view'], - 'query' => $query, - 'fields' => $fields, - 'primary' => $primary, - 'paginate' => $this->CI->pagination->create_links() - ); - - $this->CI->load->view('view', $data); - } - - // -------------------------------------------------------------------- - - /** - * "Edit" Page - * - * Shows a form representing the currently selected DB - * so that data can be edited - * - * @access public - * @return string the HTML "edit" page - */ - function edit() - { - if (FALSE === ($id = $this->CI->uri->segment(4))) - { - return $this->view(); - } - - // Fetch the primary field name - $primary = $this->CI->db->primary($this->current_table); - - // Run the query - $query = $this->CI->db->get_where($this->current_table, array($primary => $id)); - - $data = array( - 'title' => ( ! isset($this->lang['scaff_edit'])) ? 'Edit Data' : $this->lang['scaff_edit'], - 'fields' => $query->field_data(), - 'query' => $query->row(), - 'action' => $this->base_uri.'/update/'.$this->CI->uri->segment(4) - ); - - $this->CI->load->view('edit', $data); - } - - // -------------------------------------------------------------------- - - /** - * Update - * - * @access public - * @return void redirects to the view page - */ - function update() - { - // Fetch the primary key - $primary = $this->CI->db->primary($this->current_table); - - // Now do the query - $this->CI->db->update($this->current_table, $_POST, array($primary => $this->CI->uri->segment(4))); - - redirect($this->base_uri.'/view/'); - } - - // -------------------------------------------------------------------- - - /** - * Delete Confirmation - * - * @access public - * @return string the HTML "delete confirm" page - */ - function delete() - { - if ( ! isset($this->lang['scaff_del_confirm'])) - { - $message = 'Are you sure you want to delete the following row: '.$this->CI->uri->segment(4); - } - else - { - $message = $this->lang['scaff_del_confirm'].' '.$this->CI->uri->segment(4); - } - - $data = array( - 'title' => ( ! isset($this->lang['scaff_delete'])) ? 'Delete Data' : $this->lang['scaff_delete'], - 'message' => $message, - 'no' => anchor(array($this->base_uri, 'view'), ( ! isset($this->lang['scaff_no'])) ? 'No' : $this->lang['scaff_no']), - 'yes' => anchor(array($this->base_uri, 'do_delete', $this->CI->uri->segment(4)), ( ! isset($this->lang['scaff_yes'])) ? 'Yes' : $this->lang['scaff_yes']) - ); - - $this->CI->load->view('delete', $data); - } - - // -------------------------------------------------------------------- - - /** - * Delete - * - * @access public - * @return void redirects to the view page - */ - function do_delete() - { - // Fetch the primary key - $primary = $this->CI->db->primary($this->current_table); - - // Now do the query - $this->CI->db->where($primary, $this->CI->uri->segment(4)); - $this->CI->db->delete($this->current_table); - - header("Refresh:0;url=".site_url(array($this->base_uri, 'view'))); - exit; - } - -} - -/* End of file Scaffolding.php */ -/* Location: ./system/scaffolding/Scaffolding.php */
\ No newline at end of file diff --git a/system/scaffolding/images/background.jpg b/system/scaffolding/images/background.jpg Binary files differdeleted file mode 100644 index 9d5bdcea1..000000000 --- a/system/scaffolding/images/background.jpg +++ /dev/null diff --git a/system/scaffolding/images/index.html b/system/scaffolding/images/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/scaffolding/images/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/scaffolding/images/logo.jpg b/system/scaffolding/images/logo.jpg Binary files differdeleted file mode 100644 index d6cc9a76d..000000000 --- a/system/scaffolding/images/logo.jpg +++ /dev/null diff --git a/system/scaffolding/index.html b/system/scaffolding/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/scaffolding/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/scaffolding/views/add.php b/system/scaffolding/views/add.php deleted file mode 100644 index cbb12f6fb..000000000 --- a/system/scaffolding/views/add.php +++ /dev/null @@ -1,32 +0,0 @@ -<?php $this->load->view('header'); ?> - -<p><?php echo anchor(array($base_uri, 'view'), '< '.$scaff_view_all); ?></p> - - -<?php echo form_open($action); ?> - -<table border="0" cellpadding="3" cellspacing="1"> -<?php foreach($fields as $field): ?> - -<?php if ($field->primary_key == 1) continue; ?> - -<tr> - <td><?php echo $field->name; echo ' '.$field->default; ?></td> - - <?php if ($field->type == 'blob'): ?> - <td><textarea class="textarea" name="<?php echo $field->name; ?>" cols="60" rows="10" ><?php echo form_prep($field->default); ?></textarea></td> - <?php else : ?> - <td><input class="input" name="<?php echo $field->name; ?>" value="<?php echo form_prep($field->default); ?>" size="60" /></td> - <?php endif; ?> - -</tr> -<?php endforeach; ?> -</table> - -<input type="submit" class="submit" value="Insert" /> - -</form> - -<?php $this->load->view('footer'); -/* End of file add.php */ -/* Location: ./system/scaffolding/views/add.php */ diff --git a/system/scaffolding/views/delete.php b/system/scaffolding/views/delete.php deleted file mode 100644 index d19542195..000000000 --- a/system/scaffolding/views/delete.php +++ /dev/null @@ -1,9 +0,0 @@ -<?php $this->load->view('header'); ?> - -<p><?php echo $message; ?></p> - -<p><?php echo $no; ?> | <?php echo $yes; ?> - -<?php $this->load->view('footer'); -/* End of file delete.php */ -/* Location: ./system/scaffolding/views/delete.php */ diff --git a/system/scaffolding/views/edit.php b/system/scaffolding/views/edit.php deleted file mode 100644 index fe553e591..000000000 --- a/system/scaffolding/views/edit.php +++ /dev/null @@ -1,33 +0,0 @@ -<?php $this->load->view('header'); ?> - - -<p><?php echo anchor(array($base_uri, 'view'), '< '.$scaff_view_all);?></p> - - -<?php echo form_open($action); ?> - -<table border="0" cellpadding="3" cellspacing="1"> -<?php foreach($fields as $field): ?> - -<?php if ($field->primary_key == 1) continue; ?> - -<tr> - <td><?php echo $field->name; ?></td> - - <?php if ($field->type == 'blob'): ?> - <td><textarea class="textarea" name="<?php echo $field->name;?>" cols="60" rows="10" ><?php $f = $field->name; echo form_prep($query->$f); ?></textarea></td> - <?php else : ?> - <td><input class="input" value="<?php $f = $field->name; echo form_prep($query->$f); ?>" name="<?php echo $field->name; ?>" size="60" /></td> - <?php endif; ?> - -</tr> -<?php endforeach; ?> -</table> - -<input type="submit" class="submit" value="Update" /> - -</form> - -<?php $this->load->view('footer'); -/* End of file edit.php */ -/* Location: ./system/scaffolding/views/edit.php */
\ No newline at end of file diff --git a/system/scaffolding/views/footer.php b/system/scaffolding/views/footer.php deleted file mode 100644 index 0e71401c9..000000000 --- a/system/scaffolding/views/footer.php +++ /dev/null @@ -1,10 +0,0 @@ - -</div> - -<div id="footer"> -<p><a href="http://codeigniter.com/">CodeIgniter</a>, by <a href="http://www.EllisLab.com">EllisLab</a> - Version <?php echo CI_VERSION ?></p> -<p>Page rendered in {elapsed_time}</p> -</div> - -</body> -</html>
\ No newline at end of file diff --git a/system/scaffolding/views/header.php b/system/scaffolding/views/header.php deleted file mode 100644 index 50f234a49..000000000 --- a/system/scaffolding/views/header.php +++ /dev/null @@ -1,29 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html> -<head> - -<title><?php echo $title; ?></title> - -<style type='text/css'> -<?php $this->file(BASEPATH.'scaffolding/views/stylesheet.css'); ?> -</style> - -<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> -<meta http-equiv='expires' content='-1' /> -<meta http-equiv= 'pragma' content='no-cache' /> - -</head> -<body> - -<div id="header"> -<div id="header_left"> -<h3>Scaffolding: <?php echo $title; ?></h3> -</div> -<div id="header_right"> -<?php echo anchor(array($base_uri, 'view'), $scaff_view_records); ?> | -<?php echo anchor(array($base_uri, 'add'), $scaff_create_record); ?> -</div> -</div> - -<br clear="all"> -<div id="outer">
\ No newline at end of file diff --git a/system/scaffolding/views/index.html b/system/scaffolding/views/index.html deleted file mode 100644 index c942a79ce..000000000 --- a/system/scaffolding/views/index.html +++ /dev/null @@ -1,10 +0,0 @@ -<html> -<head> - <title>403 Forbidden</title> -</head> -<body> - -<p>Directory access is forbidden.</p> - -</body> -</html>
\ No newline at end of file diff --git a/system/scaffolding/views/no_data.php b/system/scaffolding/views/no_data.php deleted file mode 100644 index bc81e7480..000000000 --- a/system/scaffolding/views/no_data.php +++ /dev/null @@ -1,8 +0,0 @@ -<?php $this->load->view('header'); ?> - -<p><?php echo $scaff_no_data; ?></p> -<p><?php echo anchor(array($base_uri, 'add'), $scaff_create_record); ?></p> - -<?php $this->load->view('footer'); -/* End of file no_data.php */ -/* Location: ./system/scaffolding/views/no_data.php */
\ No newline at end of file diff --git a/system/scaffolding/views/stylesheet.css b/system/scaffolding/views/stylesheet.css deleted file mode 100644 index 3f487dd0b..000000000 --- a/system/scaffolding/views/stylesheet.css +++ /dev/null @@ -1,143 +0,0 @@ -body { - margin: 0; - padding: 0; - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 11px; - color: #4F5155; - background: #fff url(<?php echo $image_url; ?>background.jpg) repeat-x left top; -} - -a { - color: #8B0D00; - background-color: transparent; - text-decoration: none; - font-weight: bold; -} - -a:visited { - color: #8B0D00; - background-color: transparent; - text-decoration: none; -} - -a:hover { - color: #000; - text-decoration: none; - background-color: transparent; -} - - -#header { - margin: 0; - padding: 0; -} - -#header_left { - background-color: transparent; - float: left; - padding: 21px 0 0 32px; - margin: 0 -} - -#header_right { - background-color: transparent; - float: right; - text-align: right; - padding: 35px 50px 20px 0; - margin: 0 -} - -#footer { - margin: 20px 0 15px 0; - padding: 0; -} - -#footer p { - font-size: 10px; - color: #999; - text-align: center; -} - -#outer { - margin: 30px 40px 0 40px; -} - -img { - padding:0; - border: 0; - margin: 0; -} - -.nopad { - padding:0; - border: 0; - margin: 0; -} - -table { - background-color: #efefef; -} - -th { - background-color: #eee; - font-weight: bold; - padding: 6px; - text-align: left; -} - -td { - background-color: #fff; - padding: 6px; -} - - -form { - margin: 0; - padding: 0; -} - -.input { - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 11px; - width: 600px; - color: #333; - border: 1px solid #B3B4BD; - font-size: 11px; - height: 2em; - padding: 0; - margin: 0; -} - -.textarea { - font-family: Lucida Grande, Verdana, Geneva, Sans-serif; - font-size: 12px; - width: 600px; - color: #333; - border: 1px solid #B3B4BD; - padding: 0; - margin: 0; -} - -.select { - background-color: #fff; - font-size: 11px; - font-weight: normal; - color: #333; - padding: 0; - margin: 0 0 3px 0; -} - -.checkbox { - background-color: transparent; - padding: 0; - border: 0; -} - -.submit { - background-color: #8B0D00; - color: #FFF; - font-weight: normal; - border: 1px solid #000; - margin: 6px 0 0 0; - padding: 1px 5px 1px 5px; -} diff --git a/system/scaffolding/views/view.php b/system/scaffolding/views/view.php deleted file mode 100644 index a81241d39..000000000 --- a/system/scaffolding/views/view.php +++ /dev/null @@ -1,27 +0,0 @@ -<?php $this->load->view('header'); ?> - -<table border="0" cellpadding="0" cellspacing="1" style="width:100%"> - <tr> - <th>Edit</th> - <th>Delete</th> - <?php foreach($fields as $field): ?> - <th><?php echo $field; ?></th> - <?php endforeach; ?> -</tr> - -<?php foreach($query->result() as $row): ?> - <tr> - <td> <?php echo anchor(array($base_uri, 'edit', $row->$primary), $scaff_edit); ?> </td> - <td><?php echo anchor(array($base_uri, 'delete', $row->$primary), $scaff_delete); ?></td> - <?php foreach($fields as $field): ?> - <td><?php echo form_prep($row->$field);?></td> - <?php endforeach; ?> - </tr> -<?php endforeach; ?> -</table> - -<?php echo $paginate; ?> - -<?php $this->load->view('footer'); -/* End of file view.php */ -/* Location: ./system/scaffolding/views/view.php */
\ No newline at end of file |