Page MenuHomeIn-Portal Phabricator

in-portal
No OneTemporary

File Metadata

Created
Tue, Sep 23, 4:42 AM

in-portal

Index: branches/unlabeled/unlabeled-1.1.2/admin/install/upgrades/changelog_1_2_0.txt
===================================================================
--- branches/unlabeled/unlabeled-1.1.2/admin/install/upgrades/changelog_1_2_0.txt (revision 5472)
+++ branches/unlabeled/unlabeled-1.1.2/admin/install/upgrades/changelog_1_2_0.txt (revision 5473)
@@ -1,443 +1,443 @@
File in-portal/globals.php changed
File in-portal/index.php changed
File in-portal/admin/addreview_direct.php changed
File in-portal/admin/advanced_view.php changed
File in-portal/admin/browse.php changed
File in-portal/admin/head.php is removed; release_1_1_8 revision 1.12
File in-portal/admin/index.php changed
File in-portal/admin/index4.php changed
File in-portal/admin/index4_direct.php is new; release_1_2_0 revision 1.2
File in-portal/admin/install.php changed
File in-portal/admin/login.php is removed; release_1_1_8 revision 1.6
File in-portal/admin/relation_select.php changed
File in-portal/admin/reviews.php changed
File in-portal/admin/tag_listing.php changed
File in-portal/admin/backup/backup1.php changed
File in-portal/admin/backup/backup2.php changed
File in-portal/admin/backup/backup3.php changed
File in-portal/admin/backup/export1.php changed
File in-portal/admin/backup/restore1.php changed
File in-portal/admin/backup/restore2.php changed
File in-portal/admin/backup/restore3.php changed
File in-portal/admin/backup/restore4.php changed
File in-portal/admin/category/addcategory.php changed
File in-portal/admin/category/addcategory_permissions.php changed
File in-portal/admin/category/addimage.php changed
File in-portal/admin/category/category_items.php is new; release_1_2_0 revision 1.4
File in-portal/admin/category/permcacheupdate.php changed
File in-portal/admin/config/addtheme.php changed
File in-portal/admin/config/addtheme_templates.php changed
File in-portal/admin/config/config_general.php is removed; release_1_1_8 revision 1.3
File in-portal/admin/config/config_theme.php changed
File in-portal/admin/config/edit_banlist.php changed
File in-portal/admin/config/edit_config.php is removed; release_1_1_8 revision 1.9
File in-portal/admin/config/edit_template.php changed
File in-portal/admin/config/email_edit.php changed
File in-portal/admin/config/module_email.php is removed; release_1_1_8 revision 1.13
File in-portal/admin/email/do_send.php changed
File in-portal/admin/help/manual.pdf changed
File in-portal/admin/icons/icon24_advanced_view.gif is removed; release_1_1_8 revision 1.2
File in-portal/admin/icons/icon24_reviews.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon24_server_info.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon24_settings_censor.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon24_settings_contacts.gif is removed; release_1_1_8 revision 1.2
File in-portal/admin/icons/icon24_settings_smiley.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon24_validate.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_cat_settings.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_list_email_log.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_list_server_info.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_list_settings_contacts.gif is removed; release_1_1_8 revision 1.2
File in-portal/admin/icons/icon46_list_settings_custom.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_list_settings_email.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_list_settings_general.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_list_settings_output.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_list_settings_search.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_list_validate.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/icons/icon46_user_settings.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/import/step1.php changed
File in-portal/admin/import/step2.php changed
File in-portal/admin/import/step3.php changed
File in-portal/admin/import/step4.php changed
File in-portal/admin/include/elements.php changed
File in-portal/admin/include/mainscript.js changed
File in-portal/admin/include/mainscript.php changed
File in-portal/admin/include/sections.php changed
File in-portal/admin/install/inportal_data.sql changed
File in-portal/admin/install/inportal_remove.sql changed
File in-portal/admin/install/inportal_schema.sql changed
File in-portal/admin/install/install_lib.php changed
File in-portal/admin/install/prerequisit_errors.php changed
File in-portal/admin/install/langpacks/english.lang changed
-File in-portal/admin/install/upgrades/changelog_1_2_0.txt is new; release_1_2_0 revision 1.1.2.7
+File in-portal/admin/install/upgrades/changelog_1_2_0.txt is new; release_1_2_0 revision 1.1.2.8
File in-portal/admin/install/upgrades/inportal_upgrade_v1.2.0.sql is new; release_1_2_0 revision 1.3.2.6
File in-portal/admin/install/upgrades/readme_1_2_0.txt is new; release_1_2_0 revision 1.1.2.2
File in-portal/admin/logs/email_log.php changed
File in-portal/admin/logs/searchlog.php changed
File in-portal/admin/logs/session_list.php changed
File in-portal/admin/logs/summary.php changed
File in-portal/admin/modules/addmodule.php changed
File in-portal/admin/tools/server_info.php changed
File in-portal/admin/tools/sql_query.php changed
File in-portal/admin/tools/sql_result.php changed
File in-portal/admin/tree/ftiens4.js is removed; release_1_1_8 revision 1.2
File in-portal/admin/tree/ftv2blank.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2doc.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2folderclosed.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2folderopen.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2lastnode.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2link.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2mlastnode.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2mnode.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2node.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2plastnode.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2pnode.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/ftv2vertline.gif is removed; release_1_1_8 revision 1.1
File in-portal/admin/tree/tree.php is removed; release_1_1_8 revision 1.13.2.1
File in-portal/admin/tree/ua.js is removed; release_1_1_8 revision 1.1
File in-portal/admin/users/addgroup.php is removed; release_1_1_8 revision 1.11.20.1
File in-portal/admin/users/addgroup_permissions.php is removed; release_1_1_8 revision 1.8
File in-portal/admin/users/addgroup_users.php is removed; release_1_1_8 revision 1.15.32.1
File in-portal/admin/users/addrule.php changed
File in-portal/admin/users/adduser.php changed
File in-portal/admin/users/adduser_custom.php changed
File in-portal/admin/users/adduser_groups.php changed
File in-portal/admin/users/adduser_images.php changed
File in-portal/admin/users/adduser_items.php changed
File in-portal/admin/users/adduser_permissions.php changed
File in-portal/admin/users/banuser.php changed
File in-portal/admin/users/group_addpermission.php is removed; release_1_1_8 revision 1.9
File in-portal/admin/users/user_addimage.php changed
File in-portal/admin/users/user_addpermission.php changed
File in-portal/admin/users/user_editgroup.php changed
File in-portal/admin/users/user_list.php changed
File in-portal/kernel/action.php changed
File in-portal/kernel/constants.php changed
File in-portal/kernel/frontaction.php changed
File in-portal/kernel/parser.php changed
File in-portal/kernel/searchaction.php changed
File in-portal/kernel/startup.php changed
File in-portal/kernel/admin/include/navmenu.php changed
File in-portal/kernel/admin/include/help/configure_categories.txt is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin/include/help/configure_general.txt is removed; release_1_1_8 revision 1.6
File in-portal/kernel/admin/include/help/configure_users.txt is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin/include/help/editcategory_items.txt is new; release_1_2_0 revision 1.1.2.1
File in-portal/kernel/admin/include/help/reports.txt is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin/include/help/root.txt is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin/include/help/site.txt is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin/include/help/system.txt is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin/include/help/users.txt is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin/include/summary/root.php changed
File in-portal/kernel/admin/include/toolbar/advanced_view.php changed
File in-portal/kernel/admin/include/toolbar/browse.php changed
File in-portal/kernel/admin/include/toolbar/configure_users.php is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin/include/toolbar/editcategory_relationselect.php changed
File in-portal/kernel/admin_templates/category_selector.tpl changed
File in-portal/kernel/admin_templates/head.tpl is new; release_1_2_0 revision 1.4
File in-portal/kernel/admin_templates/help.tpl changed
File in-portal/kernel/admin_templates/import_redirect.tpl changed
File in-portal/kernel/admin_templates/index.tpl changed
File in-portal/kernel/admin_templates/login.tpl is new; release_1_2_0 revision 1.3
File in-portal/kernel/admin_templates/no_permission.tpl is new; release_1_2_0 revision 1.5
File in-portal/kernel/admin_templates/sections_list.tpl is new; release_1_2_0 revision 1.8.2.1
File in-portal/kernel/admin_templates/tree.tpl is new; release_1_2_0 revision 1.14
File in-portal/kernel/admin_templates/user_selector.tpl is new; release_1_2_0 revision 1.4
File in-portal/kernel/admin_templates/category/category_items.tpl is new; release_1_2_0 revision 1.2
File in-portal/kernel/admin_templates/config/config_email.tpl changed
File in-portal/kernel/admin_templates/config/config_general.tpl is new; release_1_2_0 revision 1.3
File in-portal/kernel/admin_templates/config/config_search.tpl changed
File in-portal/kernel/admin_templates/config/config_search_edit.tpl is new; release_1_2_0 revision 1.4
File in-portal/kernel/admin_templates/config/config_universal.tpl changed
File in-portal/kernel/admin_templates/custom_fields/custom_fields_edit.tpl changed
File in-portal/kernel/admin_templates/custom_fields/custom_fields_list.tpl changed
File in-portal/kernel/admin_templates/groups/groups_edit.tpl is new; release_1_2_0 revision 1.3
File in-portal/kernel/admin_templates/groups/groups_edit_permissions.tpl is new; release_1_2_0 revision 1.8.2.1
File in-portal/kernel/admin_templates/groups/groups_edit_tabs.tpl is new; release_1_2_0 revision 1.1.2.1
File in-portal/kernel/admin_templates/groups/groups_edit_users.tpl is new; release_1_2_0 revision 1.4
File in-portal/kernel/admin_templates/groups/groups_list.tpl is new; release_1_2_0 revision 1.3
File in-portal/kernel/admin_templates/groups/permissions_selector.tpl is new; release_1_2_0 revision 1.7.2.1
File in-portal/kernel/admin_templates/img/globe.gif changed
File in-portal/kernel/admin_templates/img/logo.gif changed
File in-portal/kernel/admin_templates/img/icons/icon24_advanced_view.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon24_affiliates.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon24_currencies.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_discounts.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_download_log.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon24_email_log.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon24_in-commerce.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon24_lock_login.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon24_manufacturers.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_orders.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_paid_listings.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_payment_log.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_payment_types.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_reviews.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon24_server_info.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon24_settings_censor.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_settings_smiley.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_shipping.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon24_taxes.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_affiliate_payment_types.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_affiliate_plans.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_affiliates.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_currencies.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_discounts.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_download_log.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_in-commerce.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_advanced_view.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_affiliates.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_currencies.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_list_discounts.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_list_download_log.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_email_log.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_in-commerce.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_manufacturers.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_list_orders.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_list_payment_log.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_payment_types.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_list_reviews.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_server_info.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_list_shipping.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_list_taxes.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_listing_types.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_listings.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_manufacturers.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_orders.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_paid_listings.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_payment_log.gif is removed; release_1_1_8 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_payment_types.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_products.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_settings_categories.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_settings_users.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/icons/icon46_shipping.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/icons/icon46_taxes.gif is removed; release_1_1_8 revision 1.2
File in-portal/kernel/admin_templates/img/itemicons/icon16_group.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/itemicons/icon16_group_disabled.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/summary/searchbox_bg.gif changed
File in-portal/kernel/admin_templates/img/summary/usersbox_bg.gif changed
File in-portal/kernel/admin_templates/img/toolbar/tool_merge_links.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/toolbar/tool_merge_links_f2.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/toolbar/tool_merge_links_f3.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/tree/ftv2blank.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/tree/ftv2lastnode.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/tree/ftv2mlastnode.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/tree/ftv2mnode.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/tree/ftv2node.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/tree/ftv2plastnode.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/tree/ftv2pnode.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/img/tree/ftv2vertline.gif is new; release_1_2_0 revision 1.1
File in-portal/kernel/admin_templates/incs/blocks.tpl changed
File in-portal/kernel/admin_templates/incs/config_blocks.tpl changed
File in-portal/kernel/admin_templates/incs/custom_blocks.tpl changed
File in-portal/kernel/admin_templates/incs/export.js changed
File in-portal/kernel/admin_templates/incs/footer.tpl changed
File in-portal/kernel/admin_templates/incs/footer_mini.tpl is new; release_1_2_0 revision 1.2
File in-portal/kernel/admin_templates/incs/form_blocks.tpl changed
File in-portal/kernel/admin_templates/incs/grid.js changed
File in-portal/kernel/admin_templates/incs/grid_blocks.tpl changed
File in-portal/kernel/admin_templates/incs/header.tpl changed
File in-portal/kernel/admin_templates/incs/header_mini.tpl is new; release_1_2_0 revision 1.2
File in-portal/kernel/admin_templates/incs/script.js changed
File in-portal/kernel/admin_templates/incs/sections_list.css is new; release_1_2_0 revision 1.2
File in-portal/kernel/admin_templates/incs/style.css changed
File in-portal/kernel/admin_templates/incs/tree.js is new; release_1_2_0 revision 1.7
File in-portal/kernel/admin_templates/modules/modules_list.tpl is new; release_1_2_0 revision 1.4
File in-portal/kernel/admin_templates/popups/translator.tpl changed
File in-portal/kernel/admin_templates/regional/email_messages_edit.tpl changed
File in-portal/kernel/admin_templates/regional/languages_edit.tpl changed
File in-portal/kernel/admin_templates/regional/languages_edit_email_events.tpl changed
File in-portal/kernel/admin_templates/regional/languages_edit_phrases.tpl changed
File in-portal/kernel/admin_templates/regional/languages_export.tpl changed
File in-portal/kernel/admin_templates/regional/languages_export_step2.tpl changed
File in-portal/kernel/admin_templates/regional/languages_import.tpl changed
File in-portal/kernel/admin_templates/regional/languages_import_step2.tpl changed
File in-portal/kernel/admin_templates/regional/languages_list.tpl changed
File in-portal/kernel/admin_templates/regional/phrases_edit.tpl changed
File in-portal/kernel/admin_templates/stylesheets/base_style_edit.tpl changed
File in-portal/kernel/admin_templates/stylesheets/block_style_edit.tpl changed
File in-portal/kernel/admin_templates/stylesheets/style_editor.tpl changed
File in-portal/kernel/admin_templates/stylesheets/stylesheets_edit.tpl changed
File in-portal/kernel/admin_templates/stylesheets/stylesheets_edit_base.tpl changed
File in-portal/kernel/admin_templates/stylesheets/stylesheets_edit_block.tpl changed
File in-portal/kernel/admin_templates/stylesheets/stylesheets_list.tpl changed
File in-portal/kernel/admin_templates/summary/root.tpl is new; release_1_2_0 revision 1.2
File in-portal/kernel/admin_templates/visits/visits_list.tpl changed
File in-portal/kernel/admin_templates/xml/tree_categories.tpl is new; release_1_2_0 revision 1.2.2.1
File in-portal/kernel/cache/.cvsignore changed
File in-portal/kernel/images/.cvsignore changed
File in-portal/kernel/images/pending/.cvsignore changed
File in-portal/kernel/include/category.php changed
File in-portal/kernel/include/config.php changed
File in-portal/kernel/include/customfield.php changed
File in-portal/kernel/include/custommetadata.php changed
File in-portal/kernel/include/debugger.php changed
File in-portal/kernel/include/emailmessage.php changed
File in-portal/kernel/include/image.php changed
File in-portal/kernel/include/item.php changed
File in-portal/kernel/include/itemtypes.php changed
File in-portal/kernel/include/modlist.php changed
File in-portal/kernel/include/modules.php changed
File in-portal/kernel/include/parse.php changed
File in-portal/kernel/include/portaluser.php changed
File in-portal/kernel/include/searchitems.php changed
File in-portal/kernel/include/syscache.php changed
File in-portal/kernel/include/theme.php changed
File in-portal/kernel/include/usersession.php changed
File in-portal/kernel/include/adodb/adodb.inc.php changed
File in-portal/kernel/module_help/config_list_categories.txt is new; release_1_2_0 revision 1.1
File in-portal/kernel/module_help/config_list_general.txt is new; release_1_2_0 revision 1.1
File in-portal/kernel/module_help/config_list_users.txt is new; release_1_2_0 revision 1.1
File in-portal/kernel/module_help/tree_reports.txt is new; release_1_2_0 revision 1.1
File in-portal/kernel/module_help/tree_root.txt is new; release_1_2_0 revision 1.1
File in-portal/kernel/module_help/tree_site.txt is new; release_1_2_0 revision 1.1
File in-portal/kernel/module_help/tree_system.txt is new; release_1_2_0 revision 1.1
File in-portal/kernel/module_help/tree_users.txt is new; release_1_2_0 revision 1.1
File in-portal/kernel/units/admin/admin_config.php is new; release_1_2_0 revision 1.12.2.1
File in-portal/kernel/units/admin/admin_tag_processor.php is new; release_1_2_0 revision 1.17.2.1
File in-portal/kernel/units/categories/categories_config.php changed
File in-portal/kernel/units/categories/categories_event_handler.php changed
File in-portal/kernel/units/categories/categories_item.php changed
File in-portal/kernel/units/categories/categories_tag_processor.php changed
File in-portal/kernel/units/category_items/category_items_config.php changed
File in-portal/kernel/units/category_items/category_items_event_handler.php changed
File in-portal/kernel/units/config_general/config_general_config.php is removed; release_1_1_8 revision 1.3
File in-portal/kernel/units/config_general/config_general_event_handler.php is removed; release_1_1_8 revision 1.2
File in-portal/kernel/units/config_general/config_general_tag_processor.php is removed; release_1_1_8 revision 1.5.2.1
File in-portal/kernel/units/config_search/config_search_config.php changed
File in-portal/kernel/units/config_search/config_search_event_handler.php changed
File in-portal/kernel/units/configuration/configuration.php is new; release_1_2_0 revision 1.1
File in-portal/kernel/units/configuration/configuration_config.php changed
File in-portal/kernel/units/configuration/configuration_event_handler.php changed
File in-portal/kernel/units/configuration/configuration_tag_processor.php changed
File in-portal/kernel/units/custom_data/custom_data_config.php changed
File in-portal/kernel/units/custom_fields/custom_fields_config.php changed
File in-portal/kernel/units/custom_fields/custom_fields_event_handler.php changed
File in-portal/kernel/units/email_events/email_events_event_handler.php changed
File in-portal/kernel/units/general/cat_dbitem.php changed
File in-portal/kernel/units/general/cat_dbitem_export.php changed
File in-portal/kernel/units/general/cat_event_handler.php changed
File in-portal/kernel/units/general/custom_fields.php changed
File in-portal/kernel/units/general/general_config.php changed
File in-portal/kernel/units/general/inp1_parser.php changed
File in-portal/kernel/units/general/inp_db_event_handler.php changed
File in-portal/kernel/units/general/inp_ses_storage.php changed
File in-portal/kernel/units/general/main_event_handler.php changed
File in-portal/kernel/units/general/my_application.php changed
File in-portal/kernel/units/general/xml_helper.php changed
File in-portal/kernel/units/general/helpers/mod_rewrite_helper.php is new; release_1_2_0 revision 1.2
File in-portal/kernel/units/general/helpers/modules.php is new; release_1_2_0 revision 1.5
File in-portal/kernel/units/general/helpers/multilanguage.php changed
-File in-portal/kernel/units/general/helpers/permissions_helper.php is new; release_1_2_0 revision 1.8.2.4
+File in-portal/kernel/units/general/helpers/permissions_helper.php is new; release_1_2_0 revision 1.8.2.5
File in-portal/kernel/units/general/helpers/sections_helper.php is new; release_1_2_0 revision 1.6
File in-portal/kernel/units/groups/groups_config.php is new; release_1_2_0 revision 1.8.2.2
File in-portal/kernel/units/groups/groups_event_handler.php is new; release_1_2_0 revision 1.1
File in-portal/kernel/units/groups/groups_item.php is new; release_1_2_0 revision 1.1.2.1
File in-portal/kernel/units/help/help_tag_processor.php changed
File in-portal/kernel/units/images/image_event_handler.php is new; release_1_2_0 revision 1.1
File in-portal/kernel/units/images/image_tag_processor.php is new; release_1_2_0 revision 1.1.4.1
File in-portal/kernel/units/images/images.php is new; release_1_2_0 revision 1.1
File in-portal/kernel/units/images/images_config.php is new; release_1_2_0 revision 1.3
File in-portal/kernel/units/languages/import_xml.php changed
File in-portal/kernel/units/languages/languages_config.php changed
File in-portal/kernel/units/languages/languages_event_handler.php changed
File in-portal/kernel/units/languages/languages_item.php changed
File in-portal/kernel/units/modules/modules_config.php changed
File in-portal/kernel/units/modules/modules_event_handler.php changed
File in-portal/kernel/units/modules/modules_tag_processor.php changed
File in-portal/kernel/units/permissions/permissions_config.php is new; release_1_2_0 revision 1.2
File in-portal/kernel/units/permissions/permissions_event_handler.php is new; release_1_2_0 revision 1.1.2.1
File in-portal/kernel/units/permissions/permissions_tag_processor.php is new; release_1_2_0 revision 1.1
File in-portal/kernel/units/phrases/phrases_config.php changed
File in-portal/kernel/units/phrases/phrases_event_handler.php changed
File in-portal/kernel/units/relationship/relationship_config.php is new; release_1_2_0 revision 1.2
File in-portal/kernel/units/relationship/relationship_event_handler.php is new; release_1_2_0 revision 1.4.2.1
File in-portal/kernel/units/reviews/reviews_config.php is new; release_1_2_0 revision 1.2
File in-portal/kernel/units/reviews/reviews_event_handler.php is new; release_1_2_0 revision 1.4.2.1
File in-portal/kernel/units/reviews/reviews_tag_processor.php is new; release_1_2_0 revision 1.2.2.1
File in-portal/kernel/units/selectors/selectors_event_handler.php changed
File in-portal/kernel/units/statistics/statistics_config.php is new; release_1_2_0 revision 1.1
File in-portal/kernel/units/statistics/statistics_event_handler.php is new; release_1_2_0 revision 1.2
File in-portal/kernel/units/statistics/statistics_tag_processor.php is new; release_1_2_0 revision 1.3.2.1
File in-portal/kernel/units/stylesheets/stylesheets_config.php changed
File in-portal/kernel/units/stylesheets/stylesheets_event_handler.php changed
File in-portal/kernel/units/stylesheets/stylesheets_item.php changed
File in-portal/kernel/units/themes/themes_config.php changed
File in-portal/kernel/units/themes/themes_tag_processor.php changed
File in-portal/kernel/units/translator/translator_config.php changed
File in-portal/kernel/units/translator/translator_event_handler.php changed
File in-portal/kernel/units/user_groups/user_groups_config.php is new; release_1_2_0 revision 1.2
File in-portal/kernel/units/users/users_config.php changed
File in-portal/kernel/units/users/users_event_handler.php changed
File in-portal/kernel/units/users/users_item.php changed
File in-portal/kernel/units/users/users_syncronize.php changed
File in-portal/kernel/units/users/users_tag_processor.php changed
File in-portal/kernel/units/visits/visits_event_handler.php changed
File in-portal/themes/default/login/login_form.tpl changed
File in-portal/themes/default/misc/right_login.tpl changed
File in-portal/themes/default/register/register_dob.tpl changed
File in-portal/themes/default/register/register_form.tpl changed
File kernel4_dev/kernel4/application.php changed
File kernel4_dev/kernel4/event_handler.php changed
File kernel4_dev/kernel4/event_manager.php changed
File kernel4_dev/kernel4/globals.php changed
File kernel4_dev/kernel4/kbase.php changed
File kernel4_dev/kernel4/startup.php changed
File kernel4_dev/kernel4/db/db_connection.php changed
File kernel4_dev/kernel4/db/db_event_handler.php changed
File kernel4_dev/kernel4/db/db_tag_processor.php changed
File kernel4_dev/kernel4/db/dbitem.php changed
File kernel4_dev/kernel4/db/dblist.php changed
File kernel4_dev/kernel4/languages/phrases_cache.php changed
File kernel4_dev/kernel4/parser/construct_tags.php changed
File kernel4_dev/kernel4/parser/tags.php changed
File kernel4_dev/kernel4/parser/template.php changed
File kernel4_dev/kernel4/parser/template_parser.php changed
File kernel4_dev/kernel4/processors/main_processor.php changed
File kernel4_dev/kernel4/processors/tag_processor.php changed
File kernel4_dev/kernel4/session/session.php changed
File kernel4_dev/kernel4/utility/adodb-time.inc.php changed
File kernel4_dev/kernel4/utility/cache.php changed
File kernel4_dev/kernel4/utility/debugger.php changed
File kernel4_dev/kernel4/utility/email.php changed
File kernel4_dev/kernel4/utility/event.php changed
File kernel4_dev/kernel4/utility/factory.php changed
File kernel4_dev/kernel4/utility/formatters.php is removed; release_1_1_8 revision 1.32
File kernel4_dev/kernel4/utility/http_query.php changed
File kernel4_dev/kernel4/utility/params.php changed
File kernel4_dev/kernel4/utility/temp_handler.php changed
File kernel4_dev/kernel4/utility/unit_config_reader.php changed
File kernel4_dev/kernel4/utility/debugger/debugger.css is new; release_1_2_0 revision 1.2
File kernel4_dev/kernel4/utility/debugger/debugger.js is new; release_1_2_0 revision 1.5
File kernel4_dev/kernel4/utility/debugger/debugger_responce.php is new; release_1_2_0 revision 1.2
File kernel4_dev/kernel4/utility/formatters/ccdate_formatter.php is new; release_1_2_0 revision 1.1
File kernel4_dev/kernel4/utility/formatters/date_formatter.php is new; release_1_2_0 revision 1.1.2.1
File kernel4_dev/kernel4/utility/formatters/filesize_formatter.php is new; release_1_2_0 revision 1.1
File kernel4_dev/kernel4/utility/formatters/formatter.php is new; release_1_2_0 revision 1.1
File kernel4_dev/kernel4/utility/formatters/formatters_config.php is new; release_1_2_0 revision 1.3
File kernel4_dev/kernel4/utility/formatters/left_formatter.php is new; release_1_2_0 revision 1.1.2.1
File kernel4_dev/kernel4/utility/formatters/multilang_formatter.php is new; release_1_2_0 revision 1.1
File kernel4_dev/kernel4/utility/formatters/options_formatter.php is new; release_1_2_0 revision 1.1
File kernel4_dev/kernel4/utility/formatters/password_formatter.php is new; release_1_2_0 revision 1.1
File kernel4_dev/kernel4/utility/formatters/serialized_formatter.php is new; release_1_2_0 revision 1.1
File kernel4_dev/kernel4/utility/formatters/unit_formatter.php is new; release_1_2_0 revision 1.1
File kernel4_dev/kernel4/utility/formatters/upload_formatter.php is new; release_1_2_0 revision 1.1
File cmseditor/editor/_source/internals/fck_2.js changed
File cmseditor/editor/filemanager/browser/default/Browser.css changed
File cmseditor/editor/filemanager/browser/default/browser.html changed
File cmseditor/editor/filemanager/browser/default/frmresourceslist.html changed
File cmseditor/editor/filemanager/browser/default/frmupload.html changed
File cmseditor/editor/filemanager/browser/default/connectors/php/commands.php changed
File cmseditor/editor/filemanager/browser/default/connectors/php/config.php changed
File cmseditor/editor/filemanager/browser/default/connectors/php/connector.php changed
File cmseditor/editor/filemanager/browser/default/images/sort_asc.gif is new; release_1_2_0 revision 1.1
File cmseditor/editor/filemanager/browser/default/images/sort_desc.gif is new; release_1_2_0 revision 1.1
File cmseditor/editor/filemanager/browser/default/images/sort_no.gif is new; release_1_2_0 revision 1.1
File cmseditor/editor/js/fckeditorcode_gecko_2.js changed
File cmseditor/editor/js/fckeditorcode_ie_2.js changed
Changes in phrases and events:
Changed label "la_Description_in-portal:modules" of type "1"
Changed label "la_Description_in-portal:modules" of type "1"
Changed label "la_Description_in-portal:mod_status" of type "1"
Property changes on: branches/unlabeled/unlabeled-1.1.2/admin/install/upgrades/changelog_1_2_0.txt
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.1.2.8
\ No newline at end of property
+1.1.2.9
\ No newline at end of property
Index: branches/unlabeled/unlabeled-1.8.2/kernel/units/general/helpers/permissions_helper.php
===================================================================
--- branches/unlabeled/unlabeled-1.8.2/kernel/units/general/helpers/permissions_helper.php (revision 5472)
+++ branches/unlabeled/unlabeled-1.8.2/kernel/units/general/helpers/permissions_helper.php (revision 5473)
@@ -1,373 +1,373 @@
<?php
class kPermissionsHelper extends kHelper {
-
+
/**
* Current set of permissions for group being edited
*
* @var Array
*/
var $Permissions = Array();
-
+
function LoadPermissions($prefix)
{
$object =& $this->Application->recallObject($prefix.'-perm', null, Array('skip_autoload' => true));
-
+
$foreign_key = $this->Application->getUnitOption($prefix.'-perm', 'ForeignKey');
$foreign_value = $this->Application->GetVar($prefix.'_id');
$sql = 'SELECT *
FROM '.$object->TableName.'
WHERE '.$foreign_key.' = '.$foreign_value;
$permissions = $this->Conn->Query($sql, 'Permission');
-
+
$this->Permissions = Array();
foreach ($permissions as $perm_name => $perm_options) {
$perm_record['value'] = $perm_options['PermissionValue'];
$perm_record['id'] = $perm_options['PermissionId'];
$this->Permissions[$perm_name] = $perm_record;
}
}
-
+
function getPermissionValue($perm_name)
{
return getArrayValue($this->Permissions, $perm_name) ? $this->Permissions[$perm_name]['value'] : 0;
}
-
+
function getPermissionID($perm_name)
{
return getArrayValue($this->Permissions, $perm_name) ? $this->Permissions[$perm_name]['id'] : 0;
}
-
+
/**
* This is old permission like ADMIN or LOGIN
*
* @param string $section_name
* @param string $perm_name
* @return bool
*/
function isOldPermission($section_name, $perm_name)
{
return $section_name == 'in-portal:root' && $perm_name != 'view';
}
-
+
/**
* Returns permission names to check based on event name and item prefix (main item or subitem)
*
* @param kEvent $event
* @return Array
*/
function getPermissionByEvent(&$event, $perm_mapping)
{
$top_prefix = $event->getEventParam('top_prefix');
-
+
$pefix_type = ($top_prefix == $event->Prefix) ? 'self' : 'subitem';
$perm_mapping = getArrayValue($perm_mapping, $event->Name);
-
+
if (!$perm_mapping[$pefix_type]) {
trigger_error('Permission mappings not defined for event <b>'.$top_prefix.' <- '.$event->Prefix.':'.$event->Name.'</b>', E_USER_ERROR);
}
-
+
if ($perm_mapping[$pefix_type] === true) {
// event is defined in mapping but is not checked by permissions
return true;
}
-
+
return explode('|', $perm_mapping[$pefix_type]);
}
-
+
/**
* Common event permission checking method
*
* @param kEvent $event
*/
function CheckEventPermission(&$event, $perm_mapping)
{
$section = $event->getSection();
if (preg_match('/^CATEGORY:(.*)/', $section)) {
return $this->CheckEventCategoryPermission($event, $perm_mapping);
}
-
+
$top_prefix = $event->getEventParam('top_prefix');
$check_perms = $this->getPermissionByEvent($event, $perm_mapping);
-
+
if ($check_perms === true) {
// event is defined in mapping but is not checked by permissions
return true;
}
-
+
$perm_status = false;
foreach ($check_perms as $perm_name) {
// check if at least one of required permissions is set
$perm_name = $section.'.'.$perm_name;
$perm_status = $this->CheckPermission($perm_name, 1);
if (($perm_name == $section.'.add') && $perm_status && ($top_prefix == $event->Prefix)) {
// main item, add permission allowed, but ID is > 0, then deny permission
// how to get id here
}
if ($perm_status) {
return $perm_status;
}
}
-
+
if (!$perm_status) {
if ($this->Application->isDebugMode()) {
// for debugging purposes
$event->SetRedirectParam('section', $section);
$event->SetRedirectParam('main_prefix', $top_prefix);
$event->SetRedirectParam('event_name', $event->Name);
$event->SetRedirectParam('next_template', $this->Application->GetVar('t'));
}
$event->status = erPERM_FAIL;
}
return $perm_status;
}
-
+
/**
* Checks non-system permission on event per category basis
*
* @param kEvent $event
*/
function CheckEventCategoryPermission(&$event, $event_perm_mapping)
{
// mapping between specific permissions and common permissions
$perm_mapping = Array('add' => 'ADD', 'edit' => 'MODIFY', 'delete' => 'DELETE', 'view' => 'VIEW');
$top_prefix = $event->getEventParam('top_prefix');
$event_handler =& $this->Application->recallObject($event->Prefix.'_EventHandler');
if ($event->Prefix != $top_prefix) {
$top_event = new kEvent($top_prefix.':'.$event->Name);
$id = $event_handler->getPassedID($top_event);
}
else {
$id = $event_handler->getPassedID($event);
}
-
+
$item_prefix = $this->Application->getUnitOption($top_prefix, 'PermItemPrefix');
-
+
// 1. get primary category of category item
$id_field = $this->Application->getUnitOption($top_prefix, 'IDField');
$table_name = $this->Application->getUnitOption($top_prefix, 'TableName');
$ci_table = $this->Application->getUnitOption('ci', 'TableName');
-
+
if (!$id) {
// item being created -> check by current (before editing started, saved in OnPreCreate event) category permissions
$category_id = $this->Application->RecallVar('m_cat_id');
}
else {
// item being edited -> check by it's primary category permissions
$sql = 'SELECT ci.CategoryId
FROM '.$table_name.' main_table
LEFT JOIN '.$ci_table.' ci ON ci.ItemResourceId = main_table.ResourceId
WHERE (main_table.'.$id_field.' = '.$id.') AND (ci.PrimaryCat = 1)';
$category_id = $this->Conn->GetOne($sql);
}
-
+
if ((substr($event->Name, 0, 9) == 'OnPreSave') || ($event->Name == 'OnSave')) {
if ($event_handler->isNewItemCreate($event)) {
return $this->CheckPermission($item_prefix.'.ADD', 0, $category_id);
}
else {
return $this->CheckPermission($item_prefix.'.ADD', 0, $category_id) || $this->CheckPermission($item_prefix.'.MODIFY', 0, $category_id);
}
}
-
+
$perm_status = false;
$check_perms = $this->getPermissionByEvent($event, $event_perm_mapping);
-
+
if ($check_perms === true) {
// event is defined in mapping but is not checked by permissions
return true;
}
-
+
foreach ($check_perms as $perm_name) {
// check if at least one of required permissions is set
if (!isset($perm_mapping[$perm_name])) {
// not mapped permission (e.g. advanced:approve) -> skip
continue;
}
$perm_name = $item_prefix.'.'.$perm_mapping[$perm_name];
$this->showDebug('Event <b>'.$event->Name.'</b> permission(-s): <b>'.$perm_name.'</b>', Array());
$perm_status = $this->CheckPermission($perm_name, 0, $category_id);
-
+
if ($perm_status) {
return $perm_status;
}
}
-
+
if (!$perm_status) {
$event->SetRedirectParam('index_file', 'index.php'); // because called from browse.php
if ($this->Application->isDebugMode()) {
// for debugging purposes
$event->SetRedirectParam('section', $event->getSection());
$event->SetRedirectParam('main_prefix', $top_prefix);
$event->SetRedirectParam('event_name', $event->Name);
$event->SetRedirectParam('next_template', $this->Application->GetVar('t'));
}
$event->status = erPERM_FAIL;
}
return $perm_status;
}
-
+
function showDebug($text, $params)
{
$is_ajax = $this->Application->GetVar('ajax') == 'yes' || isset($params['ajax']) || isset($params['tab_init']);
if (!$this->Application->isDebugMode() || $is_ajax) return true;
echo $text.'<br />';
}
-
+
function TagPermissionCheck($params, $tag_name)
{
$perm_event = getArrayValue($params, 'perm_event');
$permission_groups = getArrayValue($params, 'permissions');
-
+
if ($permission_groups) {
$this->showDebug('Tag <b>'.$tag_name.'</b> permission(-s): <b>'.$permission_groups.'</b>', $params);
$permission_groups = explode('|', $permission_groups);
$group_has_permission = false;
foreach ($permission_groups as $permission_group) {
$permissions = explode(',', $permission_group);
$has_permission = true;
foreach ($permissions as $permission) {
$has_permission = $has_permission && $this->CheckPermission($permission, isset($params['system']) && $params['system'] ? 1 : 0);
}
$group_has_permission = $group_has_permission || $has_permission;
-
+
if ($group_has_permission) {
return true;
}
}
return false;
}
elseif ($perm_event) {
$this->showDebug('Tag <b>'.$tag_name.'</b> permission_event: <b>'.$perm_event.'</b>', $params);
list($prefix, $event) = explode(':', $perm_event);
$event_handler =& $this->Application->recallObject($prefix.'_EventHandler');
return $event_handler->CheckPermission( new kEvent($perm_event) );
}
-
+
return true;
}
-
+
/**
* Returns no permission template to redirect to
*
* @param Array $params
* @return Array
*/
function getPermissionTemplate($params)
{
$t = $this->Application->GetVar('t');
if ($next_t = getArrayValue($params, 'next_template')) {
$t = $next_t;
}
-
+
if (!$this->Application->LoggedIn()) {
$redirect_template = $params['login_template'];
$redirect_params = Array('next_template' => $t);
}
else {
if (isset($params['no_permissions_template'])) {
$redirect_template = $params['no_permissions_template'];
}
else {
$redirect_template = $this->Application->IsAdmin() ? 'no_permission' : $this->Application->ConfigValue('NoPermissionTemplate');
}
-
+
$redirect_params = $this->Application->isDebugMode() ? Array('from_template' => 1, 'perms' => $params[ isset($params['permissions']) ? 'permissions' : 'perm_event'], 'next_template' => $t) : Array();
}
-
+
if (isset($params['index_file']) && $params['index_file']) {
$redirect_params['index_file'] = $params['index_file'];
}
-
+
return Array($redirect_template, $redirect_params);
}
-
+
/**
* Check current user permissions based on it's group permissions in specified category (for non-system permissions) or just checks if system permission is set
*
* @param string $name permission name
* @param int $cat_id category id, current used if not specified
* @param int $type permission type {1 - system, 0 - per category}
* @return int
*/
function CheckPermission($name, $type = 1, $cat_id = null)
{
if ($this->Application->GetVar('u_id') == -1) {
// "root" is allowed anywhere
return $name == 'SYSTEM_ACCESS.READONLY' ? 0 : 1;
}
-
+
if ($type == 1) {
// "system" permission are always checked per "Home" category (ID = 0)
$cat_id = 0;
}
-
+
if (!isset($cat_id)) {
$cat_id = $this->Application->GetVar('m_cat_id');
}
-
+
$cache_key = $name.'|'.$type.'|'.$cat_id;
$perm_value = $this->Application->getCache('permissions', $cache_key);
if ($perm_value !== false) {
return $perm_value;
}
-
+
// perm cache is build only based on records in db, that's why if permission is not explicitly denied, then
// that (perm cache creator) code thinks that it is allowed & adds corresponding record and code below will
// return incorrect results
-
+
/*if (preg_match('/(.*)\.VIEW$/', $name) && ($type == 0)) {
// cached view permission of category: begin
$sql = 'SELECT perm_cache.PermId
FROM '.TABLE_PREFIX.'PermCache perm_cache
LEFT JOIN '.TABLE_PREFIX.'PermissionConfig perm_config ON perm_cache.PermId = perm_config.PermissionConfigId
WHERE (perm_config.PermissionName = '.$this->Conn->qstr($name).' AND perm_cache.CategoryId = '.$cat_id.')';
-
+
$view_filters = Array();
$groups = explode(',', $this->Application->RecallVar('UserGroups'));
foreach ($groups as $group) {
$view_filters[] = 'FIND_IN_SET('.$group.', perm_cache.ACL) || ((NOT FIND_IN_SET('.$group.', perm_cache.DACL)) AND perm_cache.ACL = \'\')';
}
$sql .= ' AND ('.implode(' OR ', $view_filters).')';
- $perm_value = $this->Conn->GetOne($sql) ? 1 : 0;
-
+ $perm_value = $this->Conn->GetOne($sql) ? 1 : 0;
+
$this->Application->setCache('permissions', $cache_key, $perm_value);
- return $perm_value;
+ return $perm_value;
// cached view permission of category: end
}*/
-
+
if ($cat_id == 0) {
$cat_hierarchy = Array(0);
}
else {
$sql = 'SELECT ParentPath
FROM '.$this->Application->getUnitOption('c', 'TableName').'
WHERE CategoryId = '.$cat_id;
$cat_hierarchy = $this->Conn->GetOne($sql);
$cat_hierarchy = explode('|', $cat_hierarchy);
array_shift($cat_hierarchy);
array_pop($cat_hierarchy);
$cat_hierarchy = array_reverse($cat_hierarchy);
array_push($cat_hierarchy, 0);
}
-
- $perm_value = 0;
+
+ $perm_value = 0;
$groups = $this->Application->RecallVar('UserGroups');
foreach ($cat_hierarchy as $category_id) {
$sql = 'SELECT SUM(PermissionValue)
FROM '.TABLE_PREFIX.'Permissions
WHERE Permission = "'.$name.'" AND CatId = '.$category_id.' AND GroupId IN ('.$groups.') AND Type = '.$type;
$res = $this->Conn->GetOne($sql);
- if ($res !== false) {
+ if ($res !== false && !is_null($res)) {
$perm_value = $res ? 1 : 0;
break;
}
}
-
+
$this->Application->setCache('permissions', $cache_key, $perm_value);
return $perm_value;
}
}
?>
\ No newline at end of file
Property changes on: branches/unlabeled/unlabeled-1.8.2/kernel/units/general/helpers/permissions_helper.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.8.2.4
\ No newline at end of property
+1.8.2.5
\ No newline at end of property
Index: branches/unlabeled/unlabeled-1.8.2/core/units/general/helpers/permissions_helper.php
===================================================================
--- branches/unlabeled/unlabeled-1.8.2/core/units/general/helpers/permissions_helper.php (revision 5472)
+++ branches/unlabeled/unlabeled-1.8.2/core/units/general/helpers/permissions_helper.php (revision 5473)
@@ -1,373 +1,373 @@
<?php
class kPermissionsHelper extends kHelper {
-
+
/**
* Current set of permissions for group being edited
*
* @var Array
*/
var $Permissions = Array();
-
+
function LoadPermissions($prefix)
{
$object =& $this->Application->recallObject($prefix.'-perm', null, Array('skip_autoload' => true));
-
+
$foreign_key = $this->Application->getUnitOption($prefix.'-perm', 'ForeignKey');
$foreign_value = $this->Application->GetVar($prefix.'_id');
$sql = 'SELECT *
FROM '.$object->TableName.'
WHERE '.$foreign_key.' = '.$foreign_value;
$permissions = $this->Conn->Query($sql, 'Permission');
-
+
$this->Permissions = Array();
foreach ($permissions as $perm_name => $perm_options) {
$perm_record['value'] = $perm_options['PermissionValue'];
$perm_record['id'] = $perm_options['PermissionId'];
$this->Permissions[$perm_name] = $perm_record;
}
}
-
+
function getPermissionValue($perm_name)
{
return getArrayValue($this->Permissions, $perm_name) ? $this->Permissions[$perm_name]['value'] : 0;
}
-
+
function getPermissionID($perm_name)
{
return getArrayValue($this->Permissions, $perm_name) ? $this->Permissions[$perm_name]['id'] : 0;
}
-
+
/**
* This is old permission like ADMIN or LOGIN
*
* @param string $section_name
* @param string $perm_name
* @return bool
*/
function isOldPermission($section_name, $perm_name)
{
return $section_name == 'in-portal:root' && $perm_name != 'view';
}
-
+
/**
* Returns permission names to check based on event name and item prefix (main item or subitem)
*
* @param kEvent $event
* @return Array
*/
function getPermissionByEvent(&$event, $perm_mapping)
{
$top_prefix = $event->getEventParam('top_prefix');
-
+
$pefix_type = ($top_prefix == $event->Prefix) ? 'self' : 'subitem';
$perm_mapping = getArrayValue($perm_mapping, $event->Name);
-
+
if (!$perm_mapping[$pefix_type]) {
trigger_error('Permission mappings not defined for event <b>'.$top_prefix.' <- '.$event->Prefix.':'.$event->Name.'</b>', E_USER_ERROR);
}
-
+
if ($perm_mapping[$pefix_type] === true) {
// event is defined in mapping but is not checked by permissions
return true;
}
-
+
return explode('|', $perm_mapping[$pefix_type]);
}
-
+
/**
* Common event permission checking method
*
* @param kEvent $event
*/
function CheckEventPermission(&$event, $perm_mapping)
{
$section = $event->getSection();
if (preg_match('/^CATEGORY:(.*)/', $section)) {
return $this->CheckEventCategoryPermission($event, $perm_mapping);
}
-
+
$top_prefix = $event->getEventParam('top_prefix');
$check_perms = $this->getPermissionByEvent($event, $perm_mapping);
-
+
if ($check_perms === true) {
// event is defined in mapping but is not checked by permissions
return true;
}
-
+
$perm_status = false;
foreach ($check_perms as $perm_name) {
// check if at least one of required permissions is set
$perm_name = $section.'.'.$perm_name;
$perm_status = $this->CheckPermission($perm_name, 1);
if (($perm_name == $section.'.add') && $perm_status && ($top_prefix == $event->Prefix)) {
// main item, add permission allowed, but ID is > 0, then deny permission
// how to get id here
}
if ($perm_status) {
return $perm_status;
}
}
-
+
if (!$perm_status) {
if ($this->Application->isDebugMode()) {
// for debugging purposes
$event->SetRedirectParam('section', $section);
$event->SetRedirectParam('main_prefix', $top_prefix);
$event->SetRedirectParam('event_name', $event->Name);
$event->SetRedirectParam('next_template', $this->Application->GetVar('t'));
}
$event->status = erPERM_FAIL;
}
return $perm_status;
}
-
+
/**
* Checks non-system permission on event per category basis
*
* @param kEvent $event
*/
function CheckEventCategoryPermission(&$event, $event_perm_mapping)
{
// mapping between specific permissions and common permissions
$perm_mapping = Array('add' => 'ADD', 'edit' => 'MODIFY', 'delete' => 'DELETE', 'view' => 'VIEW');
$top_prefix = $event->getEventParam('top_prefix');
$event_handler =& $this->Application->recallObject($event->Prefix.'_EventHandler');
if ($event->Prefix != $top_prefix) {
$top_event = new kEvent($top_prefix.':'.$event->Name);
$id = $event_handler->getPassedID($top_event);
}
else {
$id = $event_handler->getPassedID($event);
}
-
+
$item_prefix = $this->Application->getUnitOption($top_prefix, 'PermItemPrefix');
-
+
// 1. get primary category of category item
$id_field = $this->Application->getUnitOption($top_prefix, 'IDField');
$table_name = $this->Application->getUnitOption($top_prefix, 'TableName');
$ci_table = $this->Application->getUnitOption('ci', 'TableName');
-
+
if (!$id) {
// item being created -> check by current (before editing started, saved in OnPreCreate event) category permissions
$category_id = $this->Application->RecallVar('m_cat_id');
}
else {
// item being edited -> check by it's primary category permissions
$sql = 'SELECT ci.CategoryId
FROM '.$table_name.' main_table
LEFT JOIN '.$ci_table.' ci ON ci.ItemResourceId = main_table.ResourceId
WHERE (main_table.'.$id_field.' = '.$id.') AND (ci.PrimaryCat = 1)';
$category_id = $this->Conn->GetOne($sql);
}
-
+
if ((substr($event->Name, 0, 9) == 'OnPreSave') || ($event->Name == 'OnSave')) {
if ($event_handler->isNewItemCreate($event)) {
return $this->CheckPermission($item_prefix.'.ADD', 0, $category_id);
}
else {
return $this->CheckPermission($item_prefix.'.ADD', 0, $category_id) || $this->CheckPermission($item_prefix.'.MODIFY', 0, $category_id);
}
}
-
+
$perm_status = false;
$check_perms = $this->getPermissionByEvent($event, $event_perm_mapping);
-
+
if ($check_perms === true) {
// event is defined in mapping but is not checked by permissions
return true;
}
-
+
foreach ($check_perms as $perm_name) {
// check if at least one of required permissions is set
if (!isset($perm_mapping[$perm_name])) {
// not mapped permission (e.g. advanced:approve) -> skip
continue;
}
$perm_name = $item_prefix.'.'.$perm_mapping[$perm_name];
$this->showDebug('Event <b>'.$event->Name.'</b> permission(-s): <b>'.$perm_name.'</b>', Array());
$perm_status = $this->CheckPermission($perm_name, 0, $category_id);
-
+
if ($perm_status) {
return $perm_status;
}
}
-
+
if (!$perm_status) {
$event->SetRedirectParam('index_file', 'index.php'); // because called from browse.php
if ($this->Application->isDebugMode()) {
// for debugging purposes
$event->SetRedirectParam('section', $event->getSection());
$event->SetRedirectParam('main_prefix', $top_prefix);
$event->SetRedirectParam('event_name', $event->Name);
$event->SetRedirectParam('next_template', $this->Application->GetVar('t'));
}
$event->status = erPERM_FAIL;
}
return $perm_status;
}
-
+
function showDebug($text, $params)
{
$is_ajax = $this->Application->GetVar('ajax') == 'yes' || isset($params['ajax']) || isset($params['tab_init']);
if (!$this->Application->isDebugMode() || $is_ajax) return true;
echo $text.'<br />';
}
-
+
function TagPermissionCheck($params, $tag_name)
{
$perm_event = getArrayValue($params, 'perm_event');
$permission_groups = getArrayValue($params, 'permissions');
-
+
if ($permission_groups) {
$this->showDebug('Tag <b>'.$tag_name.'</b> permission(-s): <b>'.$permission_groups.'</b>', $params);
$permission_groups = explode('|', $permission_groups);
$group_has_permission = false;
foreach ($permission_groups as $permission_group) {
$permissions = explode(',', $permission_group);
$has_permission = true;
foreach ($permissions as $permission) {
$has_permission = $has_permission && $this->CheckPermission($permission, isset($params['system']) && $params['system'] ? 1 : 0);
}
$group_has_permission = $group_has_permission || $has_permission;
-
+
if ($group_has_permission) {
return true;
}
}
return false;
}
elseif ($perm_event) {
$this->showDebug('Tag <b>'.$tag_name.'</b> permission_event: <b>'.$perm_event.'</b>', $params);
list($prefix, $event) = explode(':', $perm_event);
$event_handler =& $this->Application->recallObject($prefix.'_EventHandler');
return $event_handler->CheckPermission( new kEvent($perm_event) );
}
-
+
return true;
}
-
+
/**
* Returns no permission template to redirect to
*
* @param Array $params
* @return Array
*/
function getPermissionTemplate($params)
{
$t = $this->Application->GetVar('t');
if ($next_t = getArrayValue($params, 'next_template')) {
$t = $next_t;
}
-
+
if (!$this->Application->LoggedIn()) {
$redirect_template = $params['login_template'];
$redirect_params = Array('next_template' => $t);
}
else {
if (isset($params['no_permissions_template'])) {
$redirect_template = $params['no_permissions_template'];
}
else {
$redirect_template = $this->Application->IsAdmin() ? 'no_permission' : $this->Application->ConfigValue('NoPermissionTemplate');
}
-
+
$redirect_params = $this->Application->isDebugMode() ? Array('from_template' => 1, 'perms' => $params[ isset($params['permissions']) ? 'permissions' : 'perm_event'], 'next_template' => $t) : Array();
}
-
+
if (isset($params['index_file']) && $params['index_file']) {
$redirect_params['index_file'] = $params['index_file'];
}
-
+
return Array($redirect_template, $redirect_params);
}
-
+
/**
* Check current user permissions based on it's group permissions in specified category (for non-system permissions) or just checks if system permission is set
*
* @param string $name permission name
* @param int $cat_id category id, current used if not specified
* @param int $type permission type {1 - system, 0 - per category}
* @return int
*/
function CheckPermission($name, $type = 1, $cat_id = null)
{
if ($this->Application->GetVar('u_id') == -1) {
// "root" is allowed anywhere
return $name == 'SYSTEM_ACCESS.READONLY' ? 0 : 1;
}
-
+
if ($type == 1) {
// "system" permission are always checked per "Home" category (ID = 0)
$cat_id = 0;
}
-
+
if (!isset($cat_id)) {
$cat_id = $this->Application->GetVar('m_cat_id');
}
-
+
$cache_key = $name.'|'.$type.'|'.$cat_id;
$perm_value = $this->Application->getCache('permissions', $cache_key);
if ($perm_value !== false) {
return $perm_value;
}
-
+
// perm cache is build only based on records in db, that's why if permission is not explicitly denied, then
// that (perm cache creator) code thinks that it is allowed & adds corresponding record and code below will
// return incorrect results
-
+
/*if (preg_match('/(.*)\.VIEW$/', $name) && ($type == 0)) {
// cached view permission of category: begin
$sql = 'SELECT perm_cache.PermId
FROM '.TABLE_PREFIX.'PermCache perm_cache
LEFT JOIN '.TABLE_PREFIX.'PermissionConfig perm_config ON perm_cache.PermId = perm_config.PermissionConfigId
WHERE (perm_config.PermissionName = '.$this->Conn->qstr($name).' AND perm_cache.CategoryId = '.$cat_id.')';
-
+
$view_filters = Array();
$groups = explode(',', $this->Application->RecallVar('UserGroups'));
foreach ($groups as $group) {
$view_filters[] = 'FIND_IN_SET('.$group.', perm_cache.ACL) || ((NOT FIND_IN_SET('.$group.', perm_cache.DACL)) AND perm_cache.ACL = \'\')';
}
$sql .= ' AND ('.implode(' OR ', $view_filters).')';
- $perm_value = $this->Conn->GetOne($sql) ? 1 : 0;
-
+ $perm_value = $this->Conn->GetOne($sql) ? 1 : 0;
+
$this->Application->setCache('permissions', $cache_key, $perm_value);
- return $perm_value;
+ return $perm_value;
// cached view permission of category: end
}*/
-
+
if ($cat_id == 0) {
$cat_hierarchy = Array(0);
}
else {
$sql = 'SELECT ParentPath
FROM '.$this->Application->getUnitOption('c', 'TableName').'
WHERE CategoryId = '.$cat_id;
$cat_hierarchy = $this->Conn->GetOne($sql);
$cat_hierarchy = explode('|', $cat_hierarchy);
array_shift($cat_hierarchy);
array_pop($cat_hierarchy);
$cat_hierarchy = array_reverse($cat_hierarchy);
array_push($cat_hierarchy, 0);
}
-
- $perm_value = 0;
+
+ $perm_value = 0;
$groups = $this->Application->RecallVar('UserGroups');
foreach ($cat_hierarchy as $category_id) {
$sql = 'SELECT SUM(PermissionValue)
FROM '.TABLE_PREFIX.'Permissions
WHERE Permission = "'.$name.'" AND CatId = '.$category_id.' AND GroupId IN ('.$groups.') AND Type = '.$type;
$res = $this->Conn->GetOne($sql);
- if ($res !== false) {
+ if ($res !== false && !is_null($res)) {
$perm_value = $res ? 1 : 0;
break;
}
}
-
+
$this->Application->setCache('permissions', $cache_key, $perm_value);
return $perm_value;
}
}
?>
\ No newline at end of file
Property changes on: branches/unlabeled/unlabeled-1.8.2/core/units/general/helpers/permissions_helper.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.8.2.4
\ No newline at end of property
+1.8.2.5
\ No newline at end of property

Event Timeline