Compare commits

...

14 Commits

Author SHA1 Message Date
Clemens Schwaighofer
799cff4e00 Update config base files 2016-07-12 17:55:10 +09:00
Clemens Schwaighofer
72ef4a24c5 Check in neutral config.inc file before we set it to update ignore 2016-07-12 17:42:54 +09:00
Clemens Schwaighofer
0f44aaf3e4 Update config.inc file 2016-07-12 17:37:58 +09:00
Clemens Schwaighofer
795f69050a Update edit user base, config template, class basic
Class.Basic
add general 8 char hash wrapper function (for adler32, fnv, jooa)

Edit Users
add first/last name to the basic user info

Config template
Update config template from current working template
2016-07-12 10:44:53 +09:00
Clemens Schwaighofer
1c5bb8aebe Make db debug var public 2016-06-14 13:22:08 +09:00
Clemens Schwaighofer
36f19e64d0 Add new correct mobile email detect 2016-05-17 12:22:36 +09:00
Clemens Schwaighofer
19a1081197 Add missing mobile domains, fixup pc naming
PC type is now pc_html
pc is only for simple
2016-05-16 15:46:26 +09:00
Clemens Schwaighofer
45974a9e30 Set detailed japanese mobile phone carrier types 2016-05-12 14:20:51 +09:00
Clemens Schwaighofer
f1247efd34 Fix class declarations
old class declarations for constructors replaced with correct
"__construct" part.
2016-03-14 11:59:42 +09:00
Clemens Schwaighofer
c38346b97c Comment update 2016-02-22 11:03:09 +09:00
Clemens Schwaighofer
3c26adb493 Smarty 3.1 fix for options html 2016-01-25 16:16:36 +09:00
Clemens Schwaighofer
4458f366f9 Bug fixes for data insert with interval fields in form generate
- if interval is emtpy set NULL
- do some clean up for pk return data from the form/db array io part
2016-01-07 13:06:47 +09:00
Clemens Schwaighofer
805330638a Bug fix in DB IO for setting _db_error public
_db_error method was private, but was called in DB.Array.IO, so it had
to be set public again.

removed debug message from Form Generate class
2016-01-07 12:44:05 +09:00
Clemens Schwaighofer
86cd04f862 Fix bug in regex check in form generate 2016-01-07 12:40:05 +09:00
10 changed files with 244 additions and 102 deletions

View File

@@ -230,6 +230,8 @@
$elements[] = $form->form_create_element("password"); $elements[] = $form->form_create_element("password");
$elements[] = $form->form_create_element("password_change_interval"); $elements[] = $form->form_create_element("password_change_interval");
$elements[] = $form->form_create_element("email"); $elements[] = $form->form_create_element("email");
$elements[] = $form->form_create_element("last_name");
$elements[] = $form->form_create_element("first_name");
$elements[] = $form->form_create_element("edit_group_id"); $elements[] = $form->form_create_element("edit_group_id");
$elements[] = $form->form_create_element("edit_access_right_id"); $elements[] = $form->form_create_element("edit_access_right_id");
$elements[] = $form->form_create_element("strict"); $elements[] = $form->form_create_element("strict");

View File

@@ -2,24 +2,24 @@
$edit_users = array ( $edit_users = array (
"table_array" => array ( "table_array" => array (
"edit_user_id" => array ( "edit_user_id" => array (
"value" => $GLOBALS["edit_user_id"], "value" => $GLOBALS["edit_user_id"],
"type" => "hidden", "type" => "hidden",
"pk" => 1, "pk" => 1,
"int" => 1 "int" => 1
), ),
"username" => array ( "username" => array (
"value" => $GLOBALS["username"], "value" => $GLOBALS["username"],
"output_name" => "Username", "output_name" => "Username",
"mandatory" => 1, "mandatory" => 1,
"error_check" => "unique|alphanumericextended", "error_check" => "unique|alphanumericextended",
"type" => "text" "type" => "text"
), ),
"password" => array ( "password" => array (
"value" => $GLOBALS["password"], "value" => $GLOBALS["password"],
"HIDDEN_value" => $GLOBALS["HIDDEN_password"], "HIDDEN_value" => $GLOBALS["HIDDEN_password"],
"CONFIRM_value" => $GLOBALS["CONFIRM_password"], "CONFIRM_value" => $GLOBALS["CONFIRM_password"],
"output_name" => "Password", "output_name" => "Password",
"mandatory" => 1, "mandatory" => 1,
"type" => "password", // later has to be password for encryption in database "type" => "password", // later has to be password for encryption in database
'update' => array ( // connected field updates, and update data 'update' => array ( // connected field updates, and update data
'password_change_date' => array ( // db row to update 'password_change_date' => array ( // db row to update
@@ -34,17 +34,18 @@
'output_name' => 'Password change interval', 'output_name' => 'Password change interval',
'error_check' => 'intervalshort', // can be any date length format. n Y/M/D [not H/M/S], only one set, no combination 'error_check' => 'intervalshort', // can be any date length format. n Y/M/D [not H/M/S], only one set, no combination
'type' => 'text', 'type' => 'text',
'interval' => 1, // interval needs NULL write for empty
'size' => 5, // make it 5 chars long 'size' => 5, // make it 5 chars long
'length' => 5 'length' => 5
), ),
// password reset force interval, if set, user needs to reset password after X time period // password reset force interval, if set, user needs to reset password after X time period
"enabled" => array ( "enabled" => array (
"value" => $GLOBALS["enabled"], "value" => $GLOBALS["enabled"],
"output_name" => "Enabled", "output_name" => "Enabled",
"type" => "binary", "type" => "binary",
"int" => 1, "int" => 1,
"element_list" => array ( "element_list" => array (
"1" => "Yes", "1" => "Yes",
"0" => "No" "0" => "No"
) )
), ),
@@ -79,28 +80,38 @@
) )
), ),
"debug" => array ( "debug" => array (
"value" => $GLOBALS["debug"], "value" => $GLOBALS["debug"],
"output_name" => "Debug", "output_name" => "Debug",
"type" => "binary", "type" => "binary",
"int" => 1, "int" => 1,
"element_list" => array ( "element_list" => array (
"1" => "Yes", "1" => "Yes",
"0" => "No" "0" => "No"
) )
), ),
"db_debug" => array ( "db_debug" => array (
"value" => $GLOBALS["db_debug"], "value" => $GLOBALS["db_debug"],
"output_name" => "DB Debug", "output_name" => "DB Debug",
"type" => "binary", "type" => "binary",
"int" => 1, "int" => 1,
"element_list" => array ( "element_list" => array (
"1" => "Yes", "1" => "Yes",
"0" => "No" "0" => "No"
) )
), ),
"email" => array ( "email" => array (
"value" => $GLOBALS["email"], "value" => $GLOBALS["email"],
"output_name" => "E-Mail", "output_name" => "E-Mail",
"type" => "text"
),
"last_name" => array (
"value" => $GLOBALS["last_name"],
"output_name" => "Last Name",
"type" => "text"
),
"first_name" => array (
"value" => $GLOBALS["first_name"],
"output_name" => "First Name",
"type" => "text" "type" => "text"
), ),
"edit_language_id" => array ( "edit_language_id" => array (

View File

@@ -9,9 +9,9 @@
/************* SESSION NAMES *************/ /************* SESSION NAMES *************/
// backend // backend
DEFINE('EDIT_SESSION_NAME', "ADMIN_SESSION_NAME"); DEFINE('EDIT_SESSION_NAME', "<ADMIN SESSION NAME>");
// frontend // frontend
DEFINE('SESSION_NAME', "SESSION_NAME"); DEFINE('SESSION_NAME', "<SESSION NAME>");
/************* LANGUAGE / ENCODING *******/ /************* LANGUAGE / ENCODING *******/
DEFINE('DEFAULT_LANG', "en_utf8"); DEFINE('DEFAULT_LANG', "en_utf8");
@@ -34,7 +34,7 @@
DEFINE('ROOT', getcwd()."/"); DEFINE('ROOT', getcwd()."/");
// libs path // libs path
DEFINE('LIBS', "libs/"); DEFINE('LIBS', "libs/");
// includes (strings, arrays for stati, etc) // includes (strings, arrays for static, etc)
DEFINE('INCLUDES', "includes/"); DEFINE('INCLUDES', "includes/");
// layout base path // layout base path
DEFINE('LAYOUT', 'layout/'); DEFINE('LAYOUT', 'layout/');
@@ -85,7 +85,7 @@
/************* HASH / ACL DEFAULT / ERROR SETTINGS / SMARTY *************/ /************* HASH / ACL DEFAULT / ERROR SETTINGS / SMARTY *************/
// default hash type // default hash type
DEFINE('DEFAULT_HASH', 'ripemd160'); DEFINE('DEFAULT_HASH', 'sha256');
// default acl level // default acl level
DEFINE('DEFAULT_ACL_LEVEL', 80); DEFINE('DEFAULT_ACL_LEVEL', 80);
// default levels for certain actions // default levels for certain actions
@@ -97,7 +97,7 @@
DEFINE('DEFAULT_ACL_DEL', 80); DEFINE('DEFAULT_ACL_DEL', 80);
DEFINE('DEFAULT_ACL_ADMIN', 100); */ DEFINE('DEFAULT_ACL_ADMIN', 100); */
// SSL host name // SSL host name
// DEFINE('SSL_HOST', "www4.adidas.co.jp"); // DEFINE('SSL_HOST', "ssl.host.name");
// error page strictness, Default is 3 // error page strictness, Default is 3
// 1: only show error page as the last mesure if really no mid & aid can be loaded and found at all // 1: only show error page as the last mesure if really no mid & aid can be loaded and found at all
// 2: if template not found, do not search, show error template // 2: if template not found, do not search, show error template
@@ -106,7 +106,7 @@
// DEFINE('ERROR_STRICT', 3); // DEFINE('ERROR_STRICT', 3);
// allow page caching in general, set to "FALSE" if you do debugging or development! // allow page caching in general, set to "FALSE" if you do debugging or development!
// DEFINE('ALLOW_SMARTY_CACHE', FALSE); // DEFINE('ALLOW_SMARTY_CACHE', FALSE);
// cache life time, in second', default here is 2 days (172800s) // cache life time, in seconds, default here is 2 days (172800s)
// -1 is never expire cache // -1 is never expire cache
// DEFINE('SMARTY_CACHE_LIFETIME', -1); // DEFINE('SMARTY_CACHE_LIFETIME', -1);
@@ -135,17 +135,23 @@
// live_queue is a global queue system // live_queue is a global queue system
// DEFINE('QUEUE', 'live_queue'); // DEFINE('QUEUE', 'live_queue');
/************* DB PATHS (PostgreSQL) *****************/
// schema names, can also be defined per <DB INFO>
DEFINE('PUBLIC_SCHEMA', 'public');
DEFINE('DEV_SCHEMA', 'public');
DEFINE('TEST_SCHEMA', 'public');
// non constant part // non constant part
/************* DB ACCESS *****************/ /************* DB ACCESS *****************/
// please be VERY carefull only to change the right side // please be VERY carefull only to change the right side
$DB_CONFIG = array( $DB_CONFIG = array(
"test" => array ( "<db id>" => array (
"db_name" => "gullevek", "db_name" => "<database>",
"db_user" => "gullevek", "db_user" => "<user>",
"db_pass" => "gullevek", "db_pass" => "<password>",
"db_host" => "db.tokyo.tequila.jp", "db_host" => "<host>",
"db_port" => "5432", "db_port" => "5432",
"db_schema" => "public", "db_schema" => "public", // if not set, uses public
"db_type" => "pgsql", "db_type" => "pgsql",
"db_encoding" => '', "db_encoding" => '',
"db_ssl" => 'disable' // allow, disable, require, prefer "db_ssl" => 'disable' // allow, disable, require, prefer
@@ -160,27 +166,19 @@
// each host has a different db_host // each host has a different db_host
// development host // development host
$DB_HOST['soba'] = "test"; $DB_HOST['<host>'] = "<db id>";
$DB_HOST['soba.tokyo.tequila.jp'] = "test";
// target host (live) // target host (live)
// $DB_TARGET_HOST['soba'] = "<DB ID>"; // $DB_TARGET_HOST['<host>'] = "<DB ID>";
// url redirect database // url redirect database
// $DB_URL_REDIRECT_HOST['soba'] = "<DB ID>"; // $DB_URL_REDIRECT_HOST['<host>'] = "<DB ID>";
// location flagging // location flagging
// test/dev/live // test/dev/live
$LOCATION['soba'] = 'test'; $LOCATION['<host>'] = '<test|live|remote|etc>';
$LOCATION['soba.tokyo.tequila.jp'] = 'test';
// show DEBUG override // show DEBUG override
// true/false // true/false
$DEBUG_FLAG['soba'] = true; $DEBUG_FLAG['<host>'] = true;
$DEBUG_FLAG['soba.tokyo.tequila.jp'] = true; // set postgresql paths (schemas)
// schema names, can also be defined per <DB INFO> $DB_PATH['<host>'] = PUBLIC_SCHEMA;
DEFINE('PUBLIC_SCHEMA', 'public');
DEFINE('DEV_SCHEMA', 'public');
DEFINE('TEST_SCHEMA', 'public');
// and set to domain
$DB_PATH['soba'] = PUBLIC_SCHEMA;
$DB_PATH['soba.tokyo.tequila.jp'] = PUBLIC_SCHEMA;
// set the USE_DATABASE var, if there is nothing set, we assume TRUE // set the USE_DATABASE var, if there is nothing set, we assume TRUE
$USE_DATABASE = defined('USE_DATABASE') ? USE_DATABASE : true; $USE_DATABASE = defined('USE_DATABASE') ? USE_DATABASE : true;
@@ -206,7 +204,7 @@
// DEFINE('TEST_SCHEMA', $DB_CONFIG[MAIN_DB]['db_schema']); // DEFINE('TEST_SCHEMA', $DB_CONFIG[MAIN_DB]['db_schema']);
// DEFINE('PUBLIC_SCHEMA', $DB_CONFIG[TARGET_DB]['db_schema']); // DEFINE('PUBLIC_SCHEMA', $DB_CONFIG[TARGET_DB]['db_schema']);
DEFINE('LOGIN_DB_SCHEMA', 'public'); // where the edit* tables are DEFINE('LOGIN_DB_SCHEMA', 'public'); // where the edit* tables are
DEFINE('GLOBAL_DB_SCHEMA', 'public'); // where global tables are that are used by all schemas (eg queue tables for online', etc) DEFINE('GLOBAL_DB_SCHEMA', 'public'); // where global tables are that are used by all schemas (eg queue tables for online, etc)
DEFINE('TARGET', $LOCATION[$HOST_NAME]); DEFINE('TARGET', $LOCATION[$HOST_NAME]);
// DEFINE('CSV_PATH', $PATHS[TARGET]['csv_path']); // DEFINE('CSV_PATH', $PATHS[TARGET]['csv_path']);
// DEFINE('EXPORT_SCRIPT', $PATHS[TARGET]['perl_bin']); // DEFINE('EXPORT_SCRIPT', $PATHS[TARGET]['perl_bin']);
@@ -258,12 +256,12 @@
{ {
// where to search for the files to include // where to search for the files to include
$dirs = array ( $dirs = array (
LIBDIR, LIBDIR,
SMARTYDIR, SMARTYDIR,
TABLEARRAYDIR, TABLEARRAYDIR,
'', '',
LIBS, LIBS,
SMARTY, SMARTY,
TABLE_ARRAYS, TABLE_ARRAYS,
__DIR__.'/'.LIBS, __DIR__.'/'.LIBS,
__DIR__.'/'.SMARTY __DIR__.'/'.SMARTY
@@ -279,5 +277,4 @@
} }
return false; return false;
} }
?> ?>

View File

@@ -1,10 +1,5 @@
<? <?
/******************************************************************** /********************************************************************
* $HeadURL: svn://svn/development/core_data/php/www/configs/config.template.inc $
* $LastChangedBy: gullevek $
* $LastChangedDate: 2013-02-18 16:27:24 +0900 (Mon, 18 Feb 2013) $
* $LastChangedRevision: 4382 $
*********************************************************************
* AUTHOR: Clemens "Gullevek" Schwaighofer (www.gullevek.org) * AUTHOR: Clemens "Gullevek" Schwaighofer (www.gullevek.org)
* CREATED: 2003/06/10 * CREATED: 2003/06/10
* SHORT DESCRIPTION: * SHORT DESCRIPTION:
@@ -24,11 +19,22 @@
DEFINE('DEFAULT_ENCODING', "UTF-8"); DEFINE('DEFAULT_ENCODING', "UTF-8");
/************* PATHS *********************/ /************* PATHS *********************/
// path to document root // ** NEW/BETTER DIR DECLARATIONS **
// path to original file (if symlink)
DEFINE('DIR', __DIR__."/");
// libs base path based on DIR
DEFINE('LIBDIR', DIR.'libs/');
// SMARTY path based on DIR
DEFINE('SMARTYDIR', DIR.'Smarty/');
// table arrays for Class Form
DEFINE('TABLEARRAYDIR', DIR.'table_arrays/');
// ** OLD DIR DECLARATIONS **
// path to document root of file called
DEFINE('ROOT', getcwd()."/"); DEFINE('ROOT', getcwd()."/");
// libs path // libs path
DEFINE('LIBS', "libs/"); DEFINE('LIBS', "libs/");
// includes (strings', arrays for stati, etc) // includes (strings, arrays for static, etc)
DEFINE('INCLUDES', "includes/"); DEFINE('INCLUDES', "includes/");
// layout base path // layout base path
DEFINE('LAYOUT', 'layout/'); DEFINE('LAYOUT', 'layout/');
@@ -79,7 +85,7 @@
/************* HASH / ACL DEFAULT / ERROR SETTINGS / SMARTY *************/ /************* HASH / ACL DEFAULT / ERROR SETTINGS / SMARTY *************/
// default hash type // default hash type
DEFINE('DEFAULT_HASH', 'ripemd160'); DEFINE('DEFAULT_HASH', 'sha256');
// default acl level // default acl level
DEFINE('DEFAULT_ACL_LEVEL', 80); DEFINE('DEFAULT_ACL_LEVEL', 80);
// default levels for certain actions // default levels for certain actions
@@ -91,7 +97,7 @@
DEFINE('DEFAULT_ACL_DEL', 80); DEFINE('DEFAULT_ACL_DEL', 80);
DEFINE('DEFAULT_ACL_ADMIN', 100); */ DEFINE('DEFAULT_ACL_ADMIN', 100); */
// SSL host name // SSL host name
// DEFINE('SSL_HOST', "www4.adidas.co.jp"); // DEFINE('SSL_HOST', "ssl.host.name");
// error page strictness, Default is 3 // error page strictness, Default is 3
// 1: only show error page as the last mesure if really no mid & aid can be loaded and found at all // 1: only show error page as the last mesure if really no mid & aid can be loaded and found at all
// 2: if template not found, do not search, show error template // 2: if template not found, do not search, show error template
@@ -129,6 +135,12 @@
// live_queue is a global queue system // live_queue is a global queue system
// DEFINE('QUEUE', 'live_queue'); // DEFINE('QUEUE', 'live_queue');
/************* DB PATHS (PostgreSQL) *****************/
// schema names, can also be defined per <DB INFO>
DEFINE('PUBLIC_SCHEMA', 'public');
DEFINE('DEV_SCHEMA', 'public');
DEFINE('TEST_SCHEMA', 'public');
// non constant part // non constant part
/************* DB ACCESS *****************/ /************* DB ACCESS *****************/
// please be VERY carefull only to change the right side // please be VERY carefull only to change the right side
@@ -139,8 +151,9 @@
"db_pass" => "<DB PASSWORD>", "db_pass" => "<DB PASSWORD>",
"db_host" => "<DB HOST>", "db_host" => "<DB HOST>",
"db_port" => "5432", "db_port" => "5432",
"db_schema" => "<DB SCHEMA>", "db_schema" => "<DB SCHEMA>", // if not set, uses public
"db_type" => "pgsql", "db_type" => "pgsql",
"db_encoding" => '',
"db_ssl" => 'disable' // allow, disable, require, prefer "db_ssl" => 'disable' // allow, disable, require, prefer
) )
); );
@@ -160,15 +173,11 @@
// $DB_URL_REDIRECT_HOST['<HOST NAME>'] = "<DB ID>"; // $DB_URL_REDIRECT_HOST['<HOST NAME>'] = "<DB ID>";
// location flagging // location flagging
// test/dev/live // test/dev/live
$LOCATION['<HOST NAME>'] = 'test'; $LOCATION['<HOST NAME>'] = '<test|live|remote|etc>';
// show DEBUG override // show DEBUG override
// true/false // true/false
$DEBUG_FLAG['<HOST NAME>'] = true; $DEBUG_FLAG['<HOST NAME>'] = true;
// schema names, can also be defined per <DB INFO> // set postgresql paths (schemas)
DEFINE('PUBLIC_SCHEMA', 'public');
DEFINE('DEV_SCHEMA', 'public');
DEFINE('TEST_SCHEMA', 'public');
// and set to domain
$DB_PATH['<HOST NAME>'] = PUBLIC_SCHEMA; $DB_PATH['<HOST NAME>'] = PUBLIC_SCHEMA;
// set the USE_DATABASE var, if there is nothing set, we assume TRUE // set the USE_DATABASE var, if there is nothing set, we assume TRUE
@@ -201,6 +210,7 @@
// DEFINE('EXPORT_SCRIPT', $PATHS[TARGET]['perl_bin']); // DEFINE('EXPORT_SCRIPT', $PATHS[TARGET]['perl_bin']);
// DEFINE('REDIRECT_URL', $PATHS[TARGET]['redirect_url']); // DEFINE('REDIRECT_URL', $PATHS[TARGET]['redirect_url']);
DEFINE('DEBUG', $DEBUG_FLAG[$HOST_NAME]); DEFINE('DEBUG', $DEBUG_FLAG[$HOST_NAME]);
DEFINE('SHOW_ALL_ERRORS', false); // show all errors if debug_all & show_error_handling are enabled
/************* GENERAL PAGE TITLE ********/ /************* GENERAL PAGE TITLE ********/
$G_TITLE = '<OVERALL PAGE TITLE>'; $G_TITLE = '<OVERALL PAGE TITLE>';
@@ -228,8 +238,43 @@
} }
} }
// turn off debug if debug flag is OFF
if (DEBUG == false)
{
$ECHO_ALL = 0;
$DEBUG_ALL = 0;
$PRINT_ALL = 0;
$DB_DEBUG = 0;
$ENABLE_ERROR_HANDLING = 0;
}
// any other global definitons here // any other global definitons here
// DEFINE('SOME_ID', <SOME VALUE>); // DEFINE('SOME_ID', <SOME VALUE>);
// $Id: config.template.inc 4382 2013-02-18 07:27:24Z gullevek $ // function that will be called on top of each class include to load the class
function _spl_autoload($include_file)
{
// where to search for the files to include
$dirs = array (
LIBDIR,
SMARTYDIR,
TABLEARRAYDIR,
'',
LIBS,
SMARTY,
TABLE_ARRAYS,
__DIR__.'/'.LIBS,
__DIR__.'/'.SMARTY
);
// try to find and load the class ifle
foreach ($dirs as $folder)
{
if (file_exists($folder.$include_file))
{
require_once($folder.$include_file);
return true;
}
}
return false;
}
?> ?>

View File

@@ -247,23 +247,68 @@
); );
// the array with the mobile types that are valid // the array with the mobile types that are valid
$this->mobile_email_type = array ( $this->mobile_email_type = array (
'.*@docomo\.ne\.jp$' => 'docomo', '.*@docomo\.ne\.jp$' => 'keitai_docomo',
'.*@([a-z0-9]{2}\.)?ezweb\.ne\.jp$' => 'kddi_ezweb', # correct are a[2-4], b2, c[1-9], e[2-9], h[2-4], t[1-9] '.*@([a-z0-9]{2}\.)?ezweb\.ne\.jp$' => 'keitai_kddi_ezweb', # correct are a[2-4], b2, c[1-9], e[2-9], h[2-4], t[1-9]
'.*@(ez[a-j]{1}\.)?ido\.ne\.jp$' => 'kddi', # ez[a-j] or nothing '.*@(ez[a-j]{1}\.)?ido\.ne\.jp$' => 'keitai_kddi_ido', # ez[a-j] or nothing
'.*@([a-z]{2}\.)?sky\.tu-ka\.ne\.jp$' => 'kddi_tu-ka', # (sky group) '.*@([a-z]{2}\.)?sky\.tu-ka\.ne\.jp$' => 'keitai_kddi_tu-ka', # (sky group)
'.*@([a-z]{2}\.)?sky\.tk[kc]{1}\.ne\.jp$' => 'kddi_sky', # (sky group) [tkk,tkc only] '.*@([a-z]{2}\.)?sky\.tk[kc]{1}\.ne\.jp$' => 'keitai_kddi_sky', # (sky group) [tkk,tkc only]
'.*@([a-z]{2}\.)?sky\.dtg\.ne\.jp$' => 'kddi', # dtg (sky group) '.*@([a-z]{2}\.)?sky\.dtg\.ne\.jp$' => 'keitai_kddi_dtg', # dtg (sky group)
'.*@[tkdhcrnsq]{1}\.vodafone\.ne\.jp$' => 'softbank', # old vodafone [t,k,d,h,c,r,n,s,q] '.*@[tkdhcrnsq]{1}\.vodafone\.ne\.jp$' => 'keitai_softbank_vodafone', # old vodafone [t,k,d,h,c,r,n,s,q]
'.*@jp-[dhtkrsnqc]{1}\.ne\.jp$' => 'softbank', # very old j-phone (pre vodafone) [d,h,t,k,r,s,n,q,c] '.*@jp-[dhtkrsnqc]{1}\.ne\.jp$' => 'keitai_softbank_j-phone', # very old j-phone (pre vodafone) [d,h,t,k,r,s,n,q,c]
'.*@([dhtcrknsq]{1}\.)?softbank\.ne\.jp$' => 'softbank', # add i for iphone also as keitai, others similar to the vodafone group '.*@([dhtcrknsq]{1}\.)?softbank\.ne\.jp$' => 'keitai_softbank', # add i for iphone also as keitai, others similar to the vodafone group
'.*@i{1}\.softbank(\.ne)?\.jp$' => 'softbank_iphone', # add iPhone also as keitai and not as pc '.*@i{1}\.softbank(\.ne)?\.jp$' => 'smartphone_softbank_iphone', # add iPhone also as keitai and not as pc
'.*@disney\.ne\.jp$' => 'softbank_disney', # (kids) '.*@disney\.ne\.jp$' => 'keitai_softbank_disney', # (kids)
'.*@willcom\.ne\.jp$' => 'willcom', '.*@willcom\.ne\.jp$' => 'keitai_willcom',
'.*@willcom\.com$' => 'willcom', # new for pdx.ne.jp address '.*@willcom\.com$' => 'keitai_willcom', # new for pdx.ne.jp address
'.*@pdx\.ne\.jp$' => 'willcom', # old pdx address for willcom '.*@wcm\.ne\.jp$' => 'keitai_willcom', # old willcom wcm.ne.jp
'.*@bandai\.jp$' => 'willcom', # willcom paipo! (kids) '.*@pdx\.ne\.jp$' => 'keitai_willcom_pdx', # old pdx address for willcom
'.*@pipopa\.ne\.jp$' => 'willcom', # willcom paipo! (kids) '.*@bandai\.jp$' => 'keitai_willcom_bandai', # willcom paipo! (kids)
'.*@([a-z0-9]{2,4}\.)?pdx\.ne\.jp$' => 'willcom' # actually only di,dj,dk,wm -> all others are "wrong", but none also allowed? '.*@pipopa\.ne\.jp$' => 'keitai_willcom_pipopa', # willcom paipo! (kids)
'.*@([a-z0-9]{2,4}\.)?pdx\.ne\.jp$' => 'keitai_willcom_pdx', # actually only di,dj,dk,wm -> all others are "wrong", but none also allowed?
'.*@ymobile([1]{1})?\.ne\.jp$' => 'keitai_willcom_ymobile', # ymobile, ymobile1 techincally not willcom, but I group them there
'.*@y-mobile\.ne\.jp$' => 'keitai_willcom_ymobile', # y-mobile techincally not willcom, but I group them there
'.*@emnet\.ne\.jp$' => 'keitai_willcom_emnet', # e-mobile, group will willcom
'.*@emobile\.ne\.jp$' => 'keitai_willcom_emnet', # e-mobile, group will willcom
'.*@emobile-s\.ne\.jp$' => 'keitai_willcom_emnet' # e-mobile, group will willcom
);
// short list for mobile email types
$this->mobile_email_type_short = array (
'keitai_docomo' => 'docomo',
'keitai_kddi_ezweb' => 'kddi',
'keitai_kddi' => 'kddi',
'keitai_kddi_tu-ka' => 'kddi',
'keitai_kddi_sky' => 'kddi',
'keitai_softbank' => 'softbank',
'smartphone_softbank_iphone' => 'iphone',
'keitai_softbank_disney' => 'softbank',
'keitai_softbank_vodafone' => 'softbank',
'keitai_softbank_j-phone' => 'softbank',
'keitai_willcom' => 'willcom',
'keitai_willcom_pdx' => 'willcom',
'keitai_willcom_bandai' => 'willcom',
'keitai_willcom_pipopa' => 'willcom',
'keitai_willcom_ymobile' => 'willcom',
'keitai_willcom_emnet' => 'willcom',
'pc_html' => 'pc',
// old sets -> to be removed later
'docomo' => 'docomo',
'kddi_ezweb' => 'kddi',
'kddi' => 'kddi',
'kddi_tu-ka' => 'kddi',
'kddi_sky' => 'kddi',
'softbank' => 'softbank',
'keitai_softbank_iphone' => 'iphone',
'softbank_iphone' => 'iphone',
'softbank_disney' => 'softbank',
'softbank_vodafone' => 'softbank',
'softbank_j-phone' => 'softbank',
'willcom' => 'willcom',
'willcom_pdx' => 'willcom',
'willcom_bandai' => 'willcom',
'willcom_pipopa' => 'willcom',
'willcom_ymobile' => 'willcom',
'willcom_emnet' => 'willcom',
'pc' => 'pc'
); );
// initial the session if there is no session running already // initial the session if there is no session running already
@@ -1397,6 +1442,19 @@
return $this->_crc32b($string); return $this->_crc32b($string);
} }
// METHOD: _hash
// PARAMS: string, type of hash to use
// RETURN: hashed string
// DESC : replacemend for _crc32b call (alternate)
// defaults to adler 32, fnv132, fnv1a32, joaat
// all that create 8 char long hashes
public function _hash($string, $hash_type = 'adler32')
{
if (!in_array($hash_type, array('adler32', 'fnv132', 'fnv1a32', 'joaat')))
$hash_type = 'adler32';
return hash($hash_type, $string);
}
// METHOD: checkPHPVersion // METHOD: checkPHPVersion
// PARAMS: $min_version: minimum version. in format x, x.y or x.y.z // PARAMS: $min_version: minimum version. in format x, x.y or x.y.z
// $max_version: default empty, else in same format as min version // $max_version: default empty, else in same format as min version
@@ -1792,10 +1850,11 @@
} }
// METHOD: getEmailType // METHOD: getEmailType
// PARAMS: email // PARAMS: email, short == false
// RETURN: string for email type, eg "pc", "docomo", etc // RETURN: string for email type, eg "pc", "docomo", etc
// DESC: guesses the email type (mostly for mobile) from the domain // DESC: guesses the email type (mostly for mobile) from the domain
public function getEmailType($email) // if second is set to true, it will return short naming scheme (only provider)
public function getEmailType($email, $short = false)
{ {
// trip if there is no email address // trip if there is no email address
if (!$email) if (!$email)
@@ -1804,10 +1863,27 @@
foreach ($this->mobile_email_type as $email_regex => $email_type) foreach ($this->mobile_email_type as $email_regex => $email_type)
{ {
if (preg_match("/$email_regex/", $email)) if (preg_match("/$email_regex/", $email))
return $email_type; {
if ($short)
return $this->getShortEmailType($email_type);
else
return $email_type;
}
} }
// if no previous return we assume this is a pc address // if no previous return we assume this is a pc address
return "pc"; if ($short)
return "pc";
else
return "pc_html";
}
// METHOD: getShortEmailType
// PARAMS: long email type (not email)
// RETURN: short email type
// DESC : gets the short email type from a long email type
public function getShortEmailType($email_type)
{
return $this->mobile_email_type_short[$email_type];
} }
// METHOD: printDateTime // METHOD: printDateTime

View File

@@ -429,6 +429,13 @@ $this->debug('write_check', "[$column][".$this->table_array[$column]["value"]."]
$_value = $this->table_array[$column]["value"]; $_value = $this->table_array[$column]["value"];
$q_data .= $_value; $q_data .= $_value;
} }
elseif ($this->table_array[$column]["interval"])
{
// for interval we check if no value, then we set null
if (!$this->table_array[$column]["value"])
$_value = 'NULL';
$q_data .= $_value;
}
else else
// normal string // normal string
{ {
@@ -500,7 +507,10 @@ $this->debug('write_check', "[$column][".$this->table_array[$column]["value"]."]
} }
// set primary key // set primary key
if ($insert) if ($insert)
$this->ok = $this->table_array[$this->pk_name]["value"] = $this->insert_id; {
$this->table_array[$this->pk_name]["value"] = $this->insert_id;
$this->ok = $this->insert_id;
}
// return the table if needed // return the table if needed
return $this->table_array; return $this->table_array;
} }

View File

@@ -253,7 +253,7 @@
// only inside // only inside
// basic vars // basic vars
private $dbh; // the dbh handler private $dbh; // the dbh handler
private $db_debug; // DB_DEBUG ... (if set prints out debug msgs) public $db_debug; // DB_DEBUG ... (if set prints out debug msgs)
private $db_name; // the DB connected to private $db_name; // the DB connected to
private $db_user; // the username used private $db_user; // the username used
private $db_pwd; // the password used private $db_pwd; // the password used
@@ -523,7 +523,8 @@
// msg -> optional message // msg -> optional message
// RETURN none // RETURN none
// DESC if error_id set, writes long error string into error_msg // DESC if error_id set, writes long error string into error_msg
private function _db_error($cursor = '', $msg = '') // MARK: needed to make public so it can be called from DB.Array.IO too
public function _db_error($cursor = '', $msg = '')
{ {
$where_called = $this->get_caller_method(); $where_called = $this->get_caller_method();
if ($cursor) if ($cursor)

View File

@@ -927,13 +927,13 @@
break; break;
case "alphanumeric": case "alphanumeric":
//$this->debug('edit', 'IN Alphanumeric'); //$this->debug('edit', 'IN Alphanumeric');
if (!preg_match("/^[0-9A-Za-z_-]+$/", $this->table_array[$key]["value"])) if (!preg_match("/^[0-9A-Za-z_\-]+$/", $this->table_array[$key]["value"]))
$this->msg .= sprintf($this->l->__("Please enter a valid alphanumeric (Numbers and Letters only also - and _, no spaces) value for the <b>%s</b> Field!<br>"), $this->table_array[$key]["output_name"]); $this->msg .= sprintf($this->l->__("Please enter a valid alphanumeric (Numbers and Letters only also - and _, no spaces) value for the <b>%s</b> Field!<br>"), $this->table_array[$key]["output_name"]);
break; break;
// this one also allows @ and . // this one also allows @ and .
case "alphanumericextended": case "alphanumericextended":
//$this->debug('edit', 'IN Alphanumeric'); //$this->debug('edit', 'IN Alphanumeric');
if (!preg_match("/^[0-9A-Za-z_-@\.]+$/", $this->table_array[$key]["value"])) if (!preg_match("/^[0-9A-Za-z_\-@\.]+$/", $this->table_array[$key]["value"]))
$this->msg .= sprintf($this->l->__("Please enter a valid alphanumeric extended (Numbers, Letters, -, _, @ and . only, no spaces) value for the <b>%s</b> Field!<br>"), $this->table_array[$key]["output_name"]); $this->msg .= sprintf($this->l->__("Please enter a valid alphanumeric extended (Numbers, Letters, -, _, @ and . only, no spaces) value for the <b>%s</b> Field!<br>"), $this->table_array[$key]["output_name"]);
break; break;
case "password": case "password":
@@ -1211,7 +1211,7 @@
{ {
// if a where was given, set this key also [dangerous!] // if a where was given, set this key also [dangerous!]
// posgres compatible insert // postgreSQL compatible insert
$q = "INSERT INTO ".$this->table_array[$key]["table_name"]." (".$this->table_array[$key]["input_name"].") VALUES ('".addslashes($this->table_array[$key]["input_value"])."')"; $q = "INSERT INTO ".$this->table_array[$key]["table_name"]." (".$this->table_array[$key]["input_name"].") VALUES ('".addslashes($this->table_array[$key]["input_value"])."')";
$this->db_exec($q); $this->db_exec($q);
if ($this->table_array[$key]["where"]) if ($this->table_array[$key]["where"])

View File

@@ -49,7 +49,7 @@ class StringReader {
var $_pos; var $_pos;
var $_str; var $_str;
function StringReader($str='') { function __construct($str='') {
$this->_str = $str; $this->_str = $str;
$this->_pos = 0; $this->_pos = 0;
} }
@@ -86,7 +86,7 @@ class FileReader {
var $_fd; var $_fd;
var $_length; var $_length;
function FileReader($filename) { function __construct($filename) {
if (file_exists($filename)) { if (file_exists($filename)) {
$this->_length=filesize($filename); $this->_length=filesize($filename);
@@ -143,7 +143,7 @@ class FileReader {
// Preloads entire file in memory first, then creates a StringReader // Preloads entire file in memory first, then creates a StringReader
// over it (it assumes knowledge of StringReader internals) // over it (it assumes knowledge of StringReader internals)
class CachedFileReader extends StringReader { class CachedFileReader extends StringReader {
function CachedFileReader($filename) { function __construct($filename) {
if (file_exists($filename)) { if (file_exists($filename)) {
$length=filesize($filename); $length=filesize($filename);

View File

@@ -183,7 +183,7 @@ function smarty_function_html_options_optoutput($key, $value, $selected, $id, $c
$idx ++; $idx ++;
} else { } else {
$_idx = 0; $_idx = 0;
$_html_result = smarty_function_html_options_optgroup($key, $value, $selected, !empty($id) ? ($id . '-' . $idx) : null, $class, $_idx); $_html_result = smarty_function_html_options_optgroup($key, $value, $selected, !empty($id) ? ($id . '-' . $idx) : null, $class, $label, $_idx);
$idx ++; $idx ++;
} }