From 54e3a72065ec52a80a549a224f3b3e437db0c987 Mon Sep 17 00:00:00 2001 From: flyskyko Date: Fri, 27 Jul 2012 02:47:10 +0000 Subject: [PATCH] merge from 1.5.3 (~r10943) git-svn-id: http://xe-core.googlecode.com/svn/trunk@10951 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- addons/captcha/captcha.addon.php | 8 +- addons/captcha/captcha.js | 4 +- addons/captcha/captcha.min.js | 2 +- .../member_communication.addon.php | 6 +- .../tpl/member_communication.js | 6 +- .../member_extra_info.addon.php | 2 +- .../point_level_icon.addon.php | 2 +- classes/cache/CacheApc.class.php | 72 +- classes/cache/CacheFile.class.php | 77 +- classes/cache/CacheHandler.class.php | 128 ++- classes/cache/CacheMemcache.class.php | 98 ++- classes/cache/CacheWincache.class.php | 72 +- classes/context/Context.class.php | 61 +- classes/db/DB.class.php | 549 ++++++++---- classes/db/DBCubrid.class.php | 253 ++++-- classes/db/DBMssql.class.php | 308 ++++--- classes/db/DBMysql.class.php | 331 ++++--- classes/db/DBMysql_innodb.class.php | 96 +- classes/db/DBMysqli.class.php | 138 ++- classes/db/queryparts/Query.class.php | 830 +++++++++++------- classes/db/queryparts/Subquery.class.php | 26 +- .../queryparts/condition/Condition.class.php | 63 +- .../condition/ConditionGroup.class.php | 31 +- .../condition/ConditionSubquery.class.php | 14 +- .../condition/ConditionWithArgument.class.php | 21 +- .../ConditionWithoutArgument.class.php | 17 +- .../expression/ClickCountExpression.class.php | 25 +- .../expression/DeleteExpression.class.php | 25 +- .../expression/Expression.class.php | 24 +- .../expression/InsertExpression.class.php | 19 +- .../expression/SelectExpression.class.php | 26 +- .../expression/StarExpression.class.php | 15 +- .../expression/UpdateExpression.class.php | 31 +- .../UpdateExpressionWithoutArgument.class.php | 22 +- classes/db/queryparts/limit/Limit.class.php | 36 +- .../queryparts/order/OrderByColumn.class.php | 21 +- .../table/CubridTableWithHint.class.php | 31 +- .../db/queryparts/table/IndexHint.class.php | 22 +- .../db/queryparts/table/JoinTable.class.php | 31 +- .../table/MssqlTableWithHint.class.php | 30 +- .../table/MysqlTableWithHint.class.php | 27 +- classes/db/queryparts/table/Table.class.php | 22 +- classes/display/DisplayHandler.class.php | 31 +- classes/display/HTMLDisplayHandler.php | 47 +- classes/display/JSONDisplayHandler.php | 5 + classes/display/VirtualXMLDisplayHandler.php | 5 +- classes/display/XMLDisplayHandler.php | 10 +- classes/editor/EditorHandler.class.php | 4 +- classes/extravar/Extravar.class.php | 120 ++- classes/file/FileHandler.class.php | 279 +++--- classes/file/FileObject.class.php | 82 +- .../FrontEndFileHandler.class.php | 139 ++- classes/handler/Handler.class.php | 4 +- classes/httprequest/XEHttpRequest.class.php | 60 +- classes/mail/Mail.class.php | 272 +++--- classes/mobile/Mobile.class.php | 44 +- classes/module/ModuleHandler.class.php | 122 ++- classes/module/ModuleObject.class.php | 131 ++- classes/object/Object.class.php | 167 ++-- classes/page/PageHandler.class.php | 22 +- classes/security/Security.class.php | 32 +- classes/template/TemplateHandler.class.php | 98 ++- classes/validator/Validator.class.php | 94 +- classes/xml/GeneralXmlParser.class.php | 68 +- classes/xml/XmlGenerator.class.php | 18 +- classes/xml/XmlJsFilter.class.php | 63 +- classes/xml/XmlLangParser.class.php | 94 +- classes/xml/XmlParser.class.php | 136 +-- classes/xml/XmlQueryParser.150.class.php | 46 +- classes/xml/XmlQueryParser.class.php | 89 +- classes/xml/xmlquery/DBParser.class.php | 84 +- classes/xml/xmlquery/QueryParser.class.php | 31 +- .../xml/xmlquery/argument/Argument.class.php | 73 +- .../argument/ConditionArgument.class.php | 46 +- .../xmlquery/argument/SortArgument.class.php | 7 +- .../queryargument/DefaultValue.class.php | 46 +- .../queryargument/QueryArgument.class.php | 46 +- .../queryargument/SortQueryArgument.class.php | 11 +- .../QueryArgumentValidator.class.php | 40 + .../xmlquery/tags/column/ColumnTag.class.php | 31 +- .../tags/column/InsertColumnTag.class.php | 25 +- .../InsertColumnTagWithoutArgument.class.php | 31 + .../tags/column/InsertColumnsTag.class.php | 35 +- .../tags/column/SelectColumnTag.class.php | 31 +- .../tags/column/SelectColumnsTag.class.php | 25 +- .../tags/column/UpdateColumnTag.class.php | 31 +- .../tags/column/UpdateColumnsTag.class.php | 35 +- .../condition/ConditionGroupTag.class.php | 28 +- .../tags/condition/ConditionTag.class.php | 49 +- .../tags/condition/ConditionsTag.class.php | 20 + .../condition/JoinConditionsTag.class.php | 16 +- .../xmlquery/tags/group/GroupsTag.class.php | 17 +- .../tags/navigation/IndexTag.class.php | 36 +- .../tags/navigation/LimitTag.class.php | 29 +- .../tags/navigation/NavigationTag.class.php | 40 + .../xmlquery/tags/query/QueryTag.class.php | 133 ++- .../tags/table/HintTableTag.class.php | 26 +- .../xmlquery/tags/table/TableTag.class.php | 83 +- .../xmlquery/tags/table/TablesTag.class.php | 40 +- common/css/xe.css | 6 +- common/css/xe.min.css | 2 +- common/lang/lang.info | 2 +- common/lang/lang.xml | 4 + common/tpl/common_layout.html | 90 +- config/config.inc.php | 258 ++++-- config/func.inc.php | 403 ++++++--- layouts/xe_official/css/default.css | 2 +- modules/addon/addon.admin.controller.php | 53 +- modules/addon/addon.admin.model.php | 47 +- modules/addon/addon.admin.view.php | 20 +- modules/addon/addon.class.php | 20 +- modules/addon/addon.controller.php | 69 +- modules/addon/tpl/setup_addon.html | 1 + modules/admin/admin.admin.controller.php | 111 +-- modules/admin/admin.admin.model.php | 72 +- modules/admin/admin.admin.view.php | 80 +- modules/admin/admin.class.php | 58 +- modules/admin/lang/lang.xml | 154 +++- modules/admin/tpl/css/admin.css | 155 ++++ modules/admin/tpl/css/admin.min.css | 3 +- .../tpl/img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../admin/tpl/img/glyphicons-halflings.png | Bin 0 -> 13826 bytes modules/admin/tpl/js/admin.js | 35 +- modules/admin/tpl/js/admin.min.js | 2 +- modules/adminlogging/adminlogging.class.php | 45 +- .../adminlogging/adminlogging.controller.php | 26 +- modules/adminlogging/adminlogging.model.php | 9 +- .../autoinstall.admin.controller.php | 62 +- .../autoinstall/autoinstall.admin.view.php | 155 +++- modules/autoinstall/autoinstall.class.php | 49 +- modules/autoinstall/autoinstall.lib.php | 258 +++++- modules/autoinstall/autoinstall.model.php | 117 ++- modules/autoinstall/autoinstall.view.php | 13 +- modules/comment/comment.admin.controller.php | 89 +- modules/comment/comment.admin.view.php | 36 +- modules/comment/comment.class.php | 43 +- modules/comment/comment.controller.php | 187 ++-- modules/comment/comment.item.php | 74 +- modules/comment/comment.model.php | 177 ++-- modules/comment/comment.view.php | 30 +- .../communication.admin.controller.php | 13 +- .../communication.admin.model.php | 5 +- .../communication.admin.view.php | 7 +- modules/communication/communication.class.php | 14 +- .../communication.controller.php | 89 +- modules/communication/communication.model.php | 50 +- modules/communication/communication.view.php | 25 +- .../communication/skins/default/friends.html | 4 +- .../communication/skins/default/messages.html | 2 +- modules/counter/counter.admin.view.php | 14 +- modules/counter/counter.class.php | 19 +- modules/counter/counter.controller.php | 51 +- modules/counter/counter.model.php | 35 +- .../document/document.admin.controller.php | 167 ++-- modules/document/document.admin.model.php | 49 +- modules/document/document.admin.view.php | 50 +- modules/document/document.class.php | 634 ++++++------- modules/document/document.controller.php | 383 +++++--- modules/document/document.item.php | 193 +++- modules/document/document.model.php | 334 ++++--- modules/document/document.view.php | 55 +- .../queries/getDocumentListWithExtraVars.xml | 3 + modules/document/queries/insertDocument.xml | 1 + .../image_link/image_link.class.php | 11 +- modules/editor/conf/module.xml | 2 +- modules/editor/editor.admin.controller.php | 4 +- modules/editor/editor.admin.view.php | 1 - modules/editor/editor.controller.php | 55 +- .../editor/skins/xpresseditor/css/default.css | 6 +- modules/editor/skins/xpresseditor/editor.html | 2 +- .../skins/xpresseditor/js/Xpress_Editor.js | 20 +- .../skins/xpresseditor/js/xpresseditor.js | 41 +- .../skins/xpresseditor/js/xpresseditor.min.js | 174 ++-- modules/editor/tpl/admin_index.html | 8 +- modules/editor/tpl/editor_module_config.html | 16 +- modules/editor/tpl/setup_component.html | 3 +- modules/file/file.admin.controller.php | 58 +- modules/file/file.admin.model.php | 82 +- modules/file/file.admin.view.php | 15 +- modules/file/file.class.php | 20 +- modules/file/file.controller.php | 176 +++- modules/file/file.model.php | 62 +- modules/file/file.view.php | 15 +- modules/importer/extract.class.php | 107 ++- .../importer/importer.admin.controller.php | 140 ++- modules/importer/importer.admin.view.php | 39 +- modules/importer/importer.class.php | 43 +- modules/importer/ttimport.class.php | 111 ++- modules/install/lang/lang.xml | 202 ++--- modules/install/tpl/css/install.css | 2 +- modules/install/tpl/form.cubrid.html | 2 +- modules/install/tpl/form.firebird.html | 2 +- modules/install/tpl/form.mssql.html | 2 +- modules/install/tpl/form.mysql.html | 2 +- modules/install/tpl/form.mysql_innodb.html | 2 +- modules/install/tpl/form.mysqli.html | 2 +- modules/install/tpl/form.postgresql.html | 2 +- modules/install/tpl/header.html | 2 +- modules/install/tpl/introduce.html | 42 +- modules/install/tpl/js/install.js | 10 - modules/install/tpl/progress_menu.html | 22 +- .../integration_search.admin.controller.php | 42 +- .../integration_search.admin.view.php | 19 +- .../integration_search.class.php | 20 +- .../integration_search.model.php | 71 +- .../integration_search.view.php | 15 +- modules/layout/conf/module.xml | 2 +- modules/layout/lang/lang.xml | 6 + modules/layout/layout.admin.controller.php | 128 ++- modules/layout/layout.admin.view.php | 120 ++- modules/layout/layout.class.php | 14 +- modules/layout/layout.model.php | 174 ++-- modules/layout/layout.view.php | 11 +- modules/layout/tpl/installed_layout_list.html | 8 +- .../layout/tpl/layout_all_instance_list.html | 48 + modules/layout/tpl/sub_tab.html | 14 + modules/member/lang/lang.xml | 49 +- modules/member/member.admin.controller.php | 190 ++-- modules/member/member.admin.model.php | 61 +- modules/member/member.admin.view.php | 82 +- modules/member/member.api.php | 27 +- modules/member/member.class.php | 195 +++- modules/member/member.controller.php | 524 +++++++---- modules/member/member.mobile.php | 44 +- modules/member/member.model.php | 48 +- modules/member/member.view.php | 24 +- .../member/queries/deleteLoginCountByIp.xml | 8 + .../deleteLoginCountHistoryByMemberSrl.xml | 8 + modules/member/queries/getLoginCountByIp.xml | 11 + .../getLoginCountHistoryByMemberSrl.xml | 11 + .../member/queries/insertLoginCountByIp.xml | 11 + .../insertLoginCountHistoryByMemberSrl.xml | 10 + .../member/queries/updateLoginCountByIp.xml | 12 + .../updateLoginCountHistoryByMemberSrl.xml | 12 + modules/member/ruleset/findAccount.xml | 8 + modules/member/ruleset/insertConfig.xml | 2 + .../member/schemas/member_count_history.xml | 5 + modules/member/schemas/member_login_count.xml | 6 + .../skins/default/find_member_account.html | 4 +- modules/member/skins/default/login_form.html | 4 +- modules/member/skins/default/signup_form.html | 4 +- modules/member/tpl/css/mlogin.css | 6 + modules/member/tpl/css/msignup.css | 1 + modules/member/tpl/find_member_account.html | 59 ++ modules/member/tpl/find_temp_password.html | 7 + modules/member/tpl/login_form.html | 27 +- modules/member/tpl/member_config.html | 8 + modules/member/tpl/modify_password.html | 54 +- modules/member/tpl/signup_form.html | 23 +- modules/menu/lang/lang.xml | 4 + modules/menu/menu.admin.controller.php | 301 ++++--- modules/menu/menu.admin.model.php | 110 ++- modules/menu/menu.admin.view.php | 75 +- modules/menu/menu.class.php | 50 +- modules/menu/menu.mobile.php | 21 +- modules/menu/schemas/menu.xml | 2 +- modules/menu/tpl/js/sitemap.js | 84 +- modules/menu/tpl/sitemap.html | 19 +- modules/menu/tpl/sitemap.item.html | 9 +- modules/message/m.skins/default/message.css | 1 + .../m.skins/default/system_message.html | 26 +- modules/message/message.admin.controller.php | 8 +- modules/message/message.view.php | 2 - .../message/skins/default/system_message.html | 4 +- modules/module/module.admin.controller.php | 88 +- modules/module/module.controller.php | 17 +- modules/module/module.model.php | 15 +- .../module/queries/getModuleCategories.xml | 3 + modules/module/queries/getSiteModules.xml | 2 + .../module/tpl/include.manage_selected.html | 2 +- .../tpl/include.module_grant_setup.html | 2 +- modules/module/tpl/module_langcode.html | 5 +- modules/module/tpl/module_list.html | 10 +- modules/page/page.admin.controller.php | 16 +- modules/page/page.admin.view.php | 3 +- modules/page/tpl/page_info.html | 2 +- modules/point/lang/lang.xml | 120 +++ modules/point/point.admin.controller.php | 25 +- modules/point/tpl/member_list.html | 34 +- modules/poll/poll.admin.controller.php | 16 +- modules/poll/poll.controller.php | 8 +- modules/rss/rss.admin.controller.php | 53 +- modules/rss/rss.admin.view.php | 16 +- modules/rss/rss.class.php | 19 +- modules/rss/rss.controller.php | 19 +- modules/rss/rss.model.php | 19 +- modules/rss/rss.view.php | 32 +- .../spamfilter.admin.controller.php | 42 +- .../trackback/trackback.admin.controller.php | 92 +- modules/trackback/trackback.admin.model.php | 36 +- modules/trackback/trackback.admin.view.php | 29 +- modules/trackback/trackback.class.php | 43 +- modules/trackback/trackback.controller.php | 115 ++- modules/trackback/trackback.model.php | 117 ++- modules/trackback/trackback.view.php | 39 +- modules/trash/trash.admin.controller.php | 63 +- modules/trash/trash.admin.view.php | 21 +- modules/trash/trash.class.php | 24 +- modules/trash/trash.controller.php | 9 +- modules/trash/trash.model.php | 30 +- modules/trash/trash.view.php | 16 +- modules/widget/tpl/js/generate_code.js | 22 +- modules/widget/tpl/js/widget.js | 8 +- .../tpl/widget_generate_code.include.html | 4 + modules/widget/widget.controller.php | 4 +- phpDoc/phpdoc.dist.xml | 24 + .../db/xml_query/cubrid/data/doc_subquery.xml | 21 + .../db/db/xml_query/mysql/MysqlInsertTest.php | 38 +- .../db/db/xml_query/mysql/MysqlSelectTest.php | 69 +- .../data/document.getNewestDocuments.xml | 21 + .../document.getNewestDocumentsInvalid.xml | 21 + .../db/xml_query/mysql/data/insert_select.xml | 23 + .../mysql/data/page.pageTypeNotNullCheck.xml | 20 + .../mysql/data/page.pageTypeNullCheck.xml | 20 + tests/classes/validator/ValidatorTest.php | 57 ++ tests/classes/validator/customrule.xml | 15 + .../layouts/xe_greystone/css/default.css | 2 +- .../layouts/xe_greystone/layout.html | 2 +- .../modules/message/system_message.html | 2 +- .../layouts/xe_sapphire/css/default.css | 2 +- .../layouts/xe_sapphire/layout.html | 2 +- .../modules/message/system_message.html | 2 +- .../xe_solid_enterprise/css/banner.css | 85 +- .../layouts/xe_solid_enterprise/css/style.css | 129 ++- .../modules/member/login_form.html | 2 +- .../modules/member/modify_info.html | 2 +- .../modules/message/system_message.html | 2 +- widgets/content/content.class.php | 2 +- .../skins/default/js/content_widget.js | 4 +- .../skins/xe_global/login_form.html | 8 +- .../skins/xe_globalTwo/login_form.html | 8 +- .../skins/xe_official/login_form.html | 8 +- .../xe_solid_enterprise_login/login_form.html | 8 +- widgets/mcontent/skins/default/normal.html | 12 +- 334 files changed, 13011 insertions(+), 5561 deletions(-) create mode 100644 classes/xml/xmlquery/tags/column/InsertColumnTagWithoutArgument.class.php create mode 100644 modules/admin/tpl/img/glyphicons-halflings-white.png create mode 100644 modules/admin/tpl/img/glyphicons-halflings.png create mode 100644 modules/layout/tpl/layout_all_instance_list.html create mode 100644 modules/layout/tpl/sub_tab.html create mode 100644 modules/member/queries/deleteLoginCountByIp.xml create mode 100644 modules/member/queries/deleteLoginCountHistoryByMemberSrl.xml create mode 100644 modules/member/queries/getLoginCountByIp.xml create mode 100644 modules/member/queries/getLoginCountHistoryByMemberSrl.xml create mode 100644 modules/member/queries/insertLoginCountByIp.xml create mode 100644 modules/member/queries/insertLoginCountHistoryByMemberSrl.xml create mode 100644 modules/member/queries/updateLoginCountByIp.xml create mode 100644 modules/member/queries/updateLoginCountHistoryByMemberSrl.xml create mode 100644 modules/member/ruleset/findAccount.xml create mode 100644 modules/member/schemas/member_count_history.xml create mode 100644 modules/member/schemas/member_login_count.xml create mode 100644 modules/member/tpl/find_member_account.html create mode 100644 modules/member/tpl/find_temp_password.html create mode 100644 phpDoc/phpdoc.dist.xml create mode 100644 tests/classes/db/db/xml_query/cubrid/data/doc_subquery.xml create mode 100644 tests/classes/db/db/xml_query/mysql/data/document.getNewestDocuments.xml create mode 100644 tests/classes/db/db/xml_query/mysql/data/document.getNewestDocumentsInvalid.xml create mode 100644 tests/classes/db/db/xml_query/mysql/data/insert_select.xml create mode 100644 tests/classes/db/db/xml_query/mysql/data/page.pageTypeNotNullCheck.xml create mode 100644 tests/classes/db/db/xml_query/mysql/data/page.pageTypeNullCheck.xml create mode 100644 tests/classes/validator/customrule.xml diff --git a/addons/captcha/captcha.addon.php b/addons/captcha/captcha.addon.php index 93dc6bab5..a639cec26 100644 --- a/addons/captcha/captcha.addon.php +++ b/addons/captcha/captcha.addon.php @@ -10,6 +10,9 @@ if(!class_exists('AddonCaptcha')) { + // On the mobile mode, XE Core does not load jquery and xe.js as normal. + Context::loadFile(array('./common/js/jquery.min.js','head', NULL,-100000),true); + Context::loadFile(array('./common/js/xe.min.js','head', NULL,-100000),true); class AddonCaptcha { var $addon_info; @@ -31,6 +34,7 @@ $logged_info = Context::get('logged_info'); if($logged_info->is_admin == 'Y' || $logged_info->is_site_admin) return false; if($this->addon_info->target != 'all' && Context::get('is_logged')) return false; + if($_SESSION['XE_VALIDATOR_ERROR'] == -1) $_SESSION['captcha_authed'] = false; if($_SESSION['captcha_authed']) return false; $type = Context::get('captchaType'); @@ -54,7 +58,7 @@ } } else { Context::addHtmlHeader(''); - Context::loadFile(array('./addons/captcha/captcha.js', 'body', '', null), true); + Context::loadFile(array('./addons/captcha/captcha.min.js', 'body', '', null), true); } } @@ -286,7 +290,7 @@ $this->createKeyword(); $swfURL = getUrl().'addons/captcha/swf/play.swf'; - Context::unloadFile('./addons/captcha/captcha.js'); + Context::unloadFile('./addons/captcha/captcha.min.js'); Context::loadFile(array('./addons/captcha/inline_captcha.js','body')); global $lang; diff --git a/addons/captcha/captcha.js b/addons/captcha/captcha.js index 42347b8c4..5ccd6f16a 100644 --- a/addons/captcha/captcha.js +++ b/addons/captcha/captcha.js @@ -80,7 +80,9 @@ var calledArgs = null; captchaXE = $('