1
0
Эх сурвалжийг харах

Merge branch 'master' of https://github.com/boonex/dolphin

AntonLV 13 жил өмнө
parent
commit
74abaaf83c
40 өөрчлөгдсөн 111 нэмэгдсэн , 98 устгасан
  1. 1 1
      inc/classes/BxDolConfig.php
  2. 3 3
      inc/classes/BxDolForm.php
  3. 1 1
      inc/classes/BxDolImageResize.php
  4. 1 1
      inc/classes/BxDolKey.php
  5. 5 1
      inc/classes/BxDolModuleQuery.php
  6. 1 1
      inc/classes/BxDolParams.php
  7. 1 1
      inc/classes/BxDolProfileQuery.php
  8. 12 12
      inc/classes/BxDolRequest.php
  9. 2 4
      inc/classes/BxDolSearch.php
  10. 1 1
      inc/classes/BxDolService.php
  11. 1 1
      inc/classes/BxDolSession.php
  12. 1 1
      inc/classes/BxDolTemplate.php
  13. 1 1
      inc/classes/BxDolTwigSearchResult.php
  14. 1 1
      inc/classes/BxDolTwigTemplate.php
  15. 1 2
      install/sql/v70.sql
  16. 3 3
      modules/boonex/developer/classes/BxDevStudioPage.php
  17. 3 3
      modules/boonex/notes/classes/BxNotesFormNote.php
  18. 1 1
      modules/boonex/notes/classes/BxNotesNoteForms.php
  19. 1 1
      modules/boonex/persons/install/config.php
  20. 3 0
      modules/boonex/persons/install/langs/en.xml
  21. 19 11
      modules/boonex/persons/install/sql/enable.sql
  22. 1 1
      splash.php
  23. 2 2
      studio/classes/BxDolStudioForm.php
  24. 3 2
      studio/classes/BxDolStudioTemplate.php
  25. 3 3
      studio/template/scripts/BxBaseStudioBuilderPage.php
  26. 3 3
      studio/template/scripts/BxBaseStudioDesign.php
  27. 3 3
      studio/template/scripts/BxBaseStudioDesigner.php
  28. 3 3
      studio/template/scripts/BxBaseStudioForms.php
  29. 1 1
      studio/template/scripts/BxBaseStudioFunctions.php
  30. 3 3
      studio/template/scripts/BxBaseStudioLanguage.php
  31. 2 2
      studio/template/scripts/BxBaseStudioMenuTop.php
  32. 3 3
      studio/template/scripts/BxBaseStudioModule.php
  33. 3 3
      studio/template/scripts/BxBaseStudioNavigation.php
  34. 3 3
      studio/template/scripts/BxBaseStudioPermissions.php
  35. 3 3
      studio/template/scripts/BxBaseStudioPolyglot.php
  36. 2 2
      studio/template/scripts/BxBaseStudioSettings.php
  37. 3 3
      studio/template/scripts/BxBaseStudioStore.php
  38. 1 1
      template/scripts/BxBaseConfig.php
  39. 3 3
      template/scripts/BxBaseFormView.php
  40. 3 3
      template/scripts/BxBaseFunctions.php

+ 1 - 1
inc/classes/BxDolConfig.php

@@ -48,7 +48,7 @@ class BxDolConfig extends BxDol {
     /**
      * Get singleton instance of the class
      */
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses'][__CLASS__])) {
             $GLOBALS['bxDolClasses'][__CLASS__] = new BxDolConfig();
             $GLOBALS['bxDolClasses'][__CLASS__]->init();

+ 3 - 3
inc/classes/BxDolForm.php

@@ -903,7 +903,7 @@ class BxDolForm extends BxDol {
         return ($this->isSubmitted() && $this->isValid());
     }
 
-    function getSubmittedValue($sKey, $sMethod, &$aSpecificValues = false) {
+    public static function getSubmittedValue($sKey, $sMethod, &$aSpecificValues = false) {
         $aData = array();
         if($sMethod == BX_DOL_FORM_METHOD_GET) {
             $aData = &$_GET;
@@ -949,11 +949,11 @@ class BxDolForm extends BxDol {
         if($bReturn)
             return $sToken;
     }
-    function getCsrfToken() {
+    public static function getCsrfToken() {
         $oSession = BxDolSession::getInstance();
         return $oSession->getValue('csrf_token');
     }
-    function getCsrfTokenTime() {
+    public static function getCsrfTokenTime() {
         $oSession = BxDolSession::getInstance();
         return $oSession->getValue('csrf_token_time');
     }

+ 1 - 1
inc/classes/BxDolImageResize.php

@@ -60,7 +60,7 @@ class BxDolImageResize extends BxDol {
     /**
      * Get singleton instance of the class
      */
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses'][__CLASS__]))
             $GLOBALS['bxDolClasses'][__CLASS__] = new BxDolImageResize();
 

+ 1 - 1
inc/classes/BxDolKey.php

@@ -67,7 +67,7 @@ class BxDolKey extends BxDol {
     /**
      * Get singleton instance of the class
      */
-    function getInstance() {
+    public static function getInstance() {
         if (!isset($GLOBALS['bxDolClasses'][__CLASS__]))
             $GLOBALS['bxDolClasses'][__CLASS__] = new BxDolKey();
         return $GLOBALS['bxDolClasses'][__CLASS__];

+ 5 - 1
inc/classes/BxDolModuleQuery.php

@@ -69,6 +69,8 @@ class BxDolModuleQuery extends BxDolDb {
         $sSql = "SELECT `id`, `type`, `name`, `title`, `vendor`, `version`, `product_url`, `update_url`, `path`, `uri`, `class_prefix`, `db_prefix`, `lang_category`, `date`, `enabled` FROM `sys_modules` ORDER BY `title`";
         return $this->fromMemory('sys_modules', 'getAll', $sSql);
     }
+
+/*    
     function getModulesBy($aParams = array()) {
         $sPostfix = $sWhereClause = "";
 
@@ -113,6 +115,8 @@ class BxDolModuleQuery extends BxDolDb {
         	ORDER BY `title`";
         return $this->fromMemory('sys_modules' . $sPostfix, 'getAll', $sSql);
     }
+*/
+
     function getModulesUri() {
         $sSql = "SELECT `uri` FROM `sys_modules` ORDER BY `uri`";
         return $this->fromMemory('sys_modules_uri', 'getColumn', $sSql);
@@ -121,4 +125,4 @@ class BxDolModuleQuery extends BxDolDb {
         $sSql = "SELECT `id`, `title` FROM `sys_modules` WHERE `dependencies` LIKE '%" . $this->escape($sUri) . "%'";
         return $this->getAll($sSql);
     }
-}
+}

+ 1 - 1
inc/classes/BxDolParams.php

@@ -44,7 +44,7 @@ class BxDolParams extends BxDol {
     /**
      * Get singleton instance of the class
      */
-    function getInstance($oDb) {
+    public static function getInstance($oDb) {
         if(!isset($GLOBALS['bxDolClasses'][__CLASS__]))
             $GLOBALS['bxDolClasses'][__CLASS__] = new BxDolParams($oDb);
 

+ 1 - 1
inc/classes/BxDolProfileQuery.php

@@ -56,7 +56,7 @@ class BxDolProfileQuery extends BxDolDb {
      * @return array if aprofile ids, key is profile id
      */
     public function getAccountProfile ($iAccountId) {
-        $sSql = $this->prepare("SELECT * FROM `sys_profiles` WHERE `account_id` = ? AND `profile_id` = ?", $iAccountId, $iAccountId);
+        $sSql = $this->prepare("SELECT * FROM `sys_profiles` WHERE `account_id` = ? AND `content_id` = ?", $iAccountId, $iAccountId);
         return $this->getRow($sSql);
     }
 

+ 12 - 12
inc/classes/BxDolRequest.php

@@ -15,7 +15,7 @@ class BxDolRequest extends BxDol {
     function BxDolRequest() {
         parent::BxDol();
     }
-    function processAsFile($aModule, &$aRequest) {
+    public static function processAsFile($aModule, &$aRequest) {
         if(empty($aRequest) || ($sFileName = array_shift($aRequest)) == "")
             $sFileName = 'index';
 
@@ -28,7 +28,7 @@ class BxDolRequest extends BxDol {
             if (isset($GLOBALS['bx_profiler'])) $GLOBALS['bx_profiler']->endModule('file', $sPrHash);
         }
     }
-    static function processAsAction($aModule, &$aRequest, $sClass = "Module") {
+    public static function processAsAction($aModule, &$aRequest, $sClass = "Module") {
         $sAction = empty($aRequest) || (isset($aRequest[0]) && empty($aRequest[0])) ? 'Home' : array_shift($aRequest);
         $sMethod = 'action' . str_replace(' ', '', ucwords(str_replace('_', ' ', $sAction)));
 
@@ -42,7 +42,7 @@ class BxDolRequest extends BxDol {
 
         return $mixedRet;
     }
-    function processAsService($aModule, $sMethod, $aParams, $sClass = "Module") {
+    public static function processAsService($aModule, $sMethod, $aParams, $sClass = "Module") {
         if (isset($aModule['name']) && 'system' == $aModule['name'] && 'Module' == $sClass) 
             $sClass = 'BaseServices';
 
@@ -58,23 +58,23 @@ class BxDolRequest extends BxDol {
 
         return $mixedRet;
     }
-    function serviceExists($mixedModule, $sMethod, $sClass = "Module") {
+    public static function serviceExists($mixedModule, $sMethod, $sClass = "Module") {
         return BxDolRequest::_methodExists($mixedModule, 'service', $sMethod, $sClass);
     }
-    function actionExists($mixedModule, $sMethod, $sClass = "Module") {
+    public static function actionExists($mixedModule, $sMethod, $sClass = "Module") {
         return BxDolRequest::_methodExists($mixedModule, 'action', $sMethod, $sClass);
     }
-    function moduleNotFound($sModule) {
+    public static function moduleNotFound($sModule) {
         BxDolRequest::_error('module', $sModule);
     }
-    function pageNotFound($sPage, $sModule) {
+    public static function pageNotFound($sPage, $sModule) {
         BxDolRequest::_error('page', $sPage, $sModule);
     }
-    function methodNotFound($sMethod, $sModule) {
+    public static function methodNotFound($sMethod, $sModule) {
         BxDolRequest::_error('method', $sMethod, $sModule);
     }
 
-    function _perform($aModule, $sClass, $sMethod, $aParams, $bTerminateOnError = true) {
+    protected static function _perform($aModule, $sClass, $sMethod, $aParams, $bTerminateOnError = true) {
         $sClass = $aModule['class_prefix'] . $sClass;        
 
         $oModule = BxDolRequest::_require($aModule, $sClass);
@@ -91,7 +91,7 @@ class BxDolRequest extends BxDol {
         else if(!$bMethod && !$bTerminateOnError)
             return false;
     }
-    function _require($aModule, $sClass) {
+    protected static function _require($aModule, $sClass) {
         if(!isset($GLOBALS['bxDolClasses'][$sClass])) {
             if ($aModule['path']) {
                 $sFile = BX_DIRECTORY_PATH_MODULES . $aModule['path'] . 'classes/' . $sClass . '.php';
@@ -109,7 +109,7 @@ class BxDolRequest extends BxDol {
 
         return $oModule;
     }
-    function _methodExists($mixedModule, $sMethodType, $sMethodName, $sClass = "Module"){
+    protected static function _methodExists($mixedModule, $sMethodType, $sMethodName, $sClass = "Module"){
         $aModule = $mixedModule;
         if(is_string($mixedModule)) {
             bx_import('BxDolModuleQuery');
@@ -126,7 +126,7 @@ class BxDolRequest extends BxDol {
         $sMethod = $sMethodType . str_replace(' ', '', ucwords(str_replace('_', ' ', $sMethodName)));
         return method_exists($oModule, $sMethod);
     }
-    function _error($sType, $sParam1 = '', $sParam2 = '') {
+    protected static function _error($sType, $sParam1 = '', $sParam2 = '') {
         header('Status: 404 Not Found');
         header('HTTP/1.0 404 Not Found');
 

+ 2 - 4
inc/classes/BxDolSearch.php

@@ -341,7 +341,7 @@ class BxDolSearchResult {
     /**
      * Get html code of pagination
      */
-    function showPagination () {
+    function showPagination ($bAdmin = false, $bChangePage = true, $bPageReload = true) {
 
     }
 
@@ -520,8 +520,6 @@ class BxDolSearchResult {
                 if (isset($aValue['operator']) && !empty($aValue['value'])) {
                    $sFieldTable = isset($aValue['table']) ? $aValue['table'] : $this->aCurrent['table'];
                    $sqlCondition = "`{$sFieldTable}`.`{$aValue['field']}` ";
-                   if (!isset($aValue['no_quote_value']))
-                       $aValue['value'] = process_db_input($aValue['value'], BX_TAGS_STRIP);
                    switch ($aValue['operator']) {
                        case 'against':
                             $aCond = isset($aValue['field']) && strlen($aValue['field']) > 0 ? $aValue['field'] : $this->aCurrent['searchFields'];
@@ -536,7 +534,7 @@ class BxDolSearchResult {
                             $sqlCondition .= strtoupper($aValue['operator']) . '('.$sValuesString.')';
                             break;
                        default:
-                               $sqlCondition .= $aValue['operator'] . (isset($aValue['no_quote_value']) && $aValue['no_quote_value'] ?  $aValue['value'] : "'" . $aValue['value'] . "'");
+                               $sqlCondition .= $aValue['operator'] . (isset($aValue['no_quote_value']) && $aValue['no_quote_value'] ?  $aValue['value'] : "'" . $oDb->escape($aValue['value']) . "'");
                        break;
                     }
                 }

+ 1 - 1
inc/classes/BxDolService.php

@@ -35,7 +35,7 @@ class BxDolService extends BxDol {
         parent::BxDol();
     }
 
-    function call($mixed, $sMethod, $aParams = array(), $sClass = 'Module') {
+    public static function call($mixed, $sMethod, $aParams = array(), $sClass = 'Module') {
         bx_import('BxDolModuleQuery');
         $oDb = BxDolModuleQuery::getInstance();
 

+ 1 - 1
inc/classes/BxDolSession.php

@@ -41,7 +41,7 @@ class BxDolSession extends BxDol {
     /**
      * Get singleton instance of the class
      */
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses'][__CLASS__]))
             $GLOBALS['bxDolClasses'][__CLASS__] = new BxDolSession();
 

+ 1 - 1
inc/classes/BxDolTemplate.php

@@ -248,7 +248,7 @@ class BxDolTemplate extends BxDol {
     /**
      * Get singleton instance of the class
      */
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses'][__CLASS__])) {
             $GLOBALS['bxDolClasses'][__CLASS__] = new BxDolTemplate();
             $GLOBALS['bxDolClasses'][__CLASS__]->init();

+ 1 - 1
inc/classes/BxDolTwigSearchResult.php

@@ -50,7 +50,7 @@ class BxDolTwigSearchResult extends BxTemplSearchResult  {
         return $oMain->_oTemplate->unit($aData, $this->sUnitTemplate);
     }
 
-    function showPagination($bAdmin = false) {
+    function showPagination($bAdmin = false, $bChangePage = true, $bPageReload = true) {
 
         $oMain = $this->getMain();
         $oConfig = $oMain->_oConfig;

+ 1 - 1
inc/classes/BxDolTwigTemplate.php

@@ -36,7 +36,7 @@ class BxDolTwigTemplate extends BxDolModuleTemplate {
         BxDolStudioTemplate::getInstance()->addJs ($sName);
     }
 
-    function parseHtmlByName ($sName, &$aVars) {
+    function parseHtmlByName ($sName, $aVars, $mixedKeyWrapperHtml = null, $sCheckIn = BX_DOL_TEMPLATE_CHECK_IN_BOTH) {
         return parent::parseHtmlByName (strlen($sName) > 5 && strpos($sName, '.html', strlen($sName) - 5) ? $sName : $sName.'.html', $aVars);
     }
 

+ 1 - 2
install/sql/v70.sql

@@ -289,7 +289,7 @@ INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `ex
 (@iCategoryId, 'sys_site_logo_alt', 'Site logo ALT text', '0', 'text', '', '', '', 18),
 (@iCategoryId, 'sys_site_icon', 'Site icon image ID', '0', 'digit', '', '', '', 19),
 (@iCategoryId, 'sys_email_confirmation', 'Enable email confirmation routine', 'on', 'checkbox', '', '', '', 20),
-(@iCategoryId, 'sys_redirect_after_account_added', 'Redirect after account creation', 'page.php?i=create-profiles', 'digit', '', '', '', 21),
+(@iCategoryId, 'sys_redirect_after_account_added', 'Redirect after account creation', 'page.php?i=create-persons-profile', 'digit', '', '', '', 21),
 (@iCategoryId, 'sys_tmp_version', 'Temporary Dolphin version ', '7.0.6', 'digit', '', '', '', 30);
 
 
@@ -2859,7 +2859,6 @@ INSERT INTO `sys_menu_items` (`set_name`, `module`, `name`, `title_system`, `tit
 -- add content menu
 INSERT INTO `sys_menu_items` (`set_name`, `module`, `name`, `title_system`, `title`, `link`, `onclick`, `target`, `icon`, `submenu_object`, `visible_for_levels`, `active`, `order`) VALUES
 ('sys_account_links', 'system', 'account', '_sys_menu_item_title_system_account', '_sys_menu_item_title_account', 'member.php', '', '', '', '', 2147483646, 1, 1),
-('sys_account_links', 'system', 'create-profiles', '_sys_menu_item_title_system_create_profile', '_sys_menu_item_title_create_profile', 'page.php?i=create-profiles', '', '', '', '', 2147483646, 1, 2),
 ('sys_account_links', 'system', 'logout', '_sys_menu_item_title_system_logout', '_sys_menu_item_title_logout', 'logout.php', '', '', '', '', 2147483646, 1, 3);
 
 -- account settings menu

+ 3 - 3
modules/boonex/developer/classes/BxDevStudioPage.php

@@ -24,7 +24,7 @@ class BxDevStudioPage extends BxTemplStudioModule {
         $this->sUrl = BX_DOL_URL_STUDIO . 'module.php?name=%s&page=%s';
     }
 
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $this->aMenuItems = array();
         foreach($this->oModule->aTools as $aTool)
             $this->aMenuItems[] = array(
@@ -40,7 +40,7 @@ class BxDevStudioPage extends BxTemplStudioModule {
         return $oMenu->getCode();
     }
 
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         if(in_array($this->sPage, array('general')) || (int)$this->aModule['enabled'] == 0)
             $this->oModule->_oTemplate->addStudioInjection('injection_body_style', 'text', ' bx-dev-page-body-single');
         else
@@ -99,4 +99,4 @@ class BxDevStudioPage extends BxTemplStudioModule {
     }
 }
 
-/** @} */
+/** @} */

+ 3 - 3
modules/boonex/notes/classes/BxNotesFormNote.php

@@ -86,7 +86,7 @@ class BxNotesFormNote extends BxTemplFormView {
         $aValsToAdd[BxNotesConfig::$FIELD_CHANGED] = time();
 
         if (CHECK_ACTION_RESULT_ALLOWED == $this->_oModule->isAllowedSetThumb()) {
-            $aThumb = bx_process_input ($_POST[BxNotesConfig::$FIELD_THUMB], BX_DATA_INT);
+            $aThumb = isset($_POST[BxNotesConfig::$FIELD_THUMB]) ? bx_process_input ($_POST[BxNotesConfig::$FIELD_THUMB], BX_DATA_INT) : false;
             $aValsToAdd[BxNotesConfig::$FIELD_THUMB] = 0;
             if (!empty($aThumb) && is_array($aThumb) && ($iFileThumb = array_pop($aThumb)))
                 $aValsToAdd[BxNotesConfig::$FIELD_THUMB] = $iFileThumb;
@@ -113,7 +113,7 @@ class BxNotesFormNote extends BxTemplFormView {
         return $iRet;
     }
 
-    function delete ($iContentId, $aContentInfo) {
+    function delete ($iContentId) {
 
         // delete associated files
 
@@ -122,7 +122,7 @@ class BxNotesFormNote extends BxTemplFormView {
         if (!$oStorage)
             return false;
 
-        $aGhostFiles = $oStorage->getGhosts (bx_get_logged_profile_id(), $aContentInfo['id']);
+        $aGhostFiles = $oStorage->getGhosts (bx_get_logged_profile_id(), $iContentId);
         if ($aGhostFiles)
             foreach ($aGhostFiles as $aFile)
                 $this->_deleteFile($aFile['id']);

+ 1 - 1
modules/boonex/notes/classes/BxNotesNoteForms.php

@@ -148,7 +148,7 @@ class BxNotesNoteForms extends BxDolProfileForms {
         if (!$oForm->isSubmittedAndValid())
             return $oForm->getCode();
 
-        if (!$oForm->delete ($aContentInfo['id'], $aContentInfo)) {
+        if (!$oForm->delete ($aContentInfo['id'])) {
             if (!$oForm->isValid())
                 return $oForm->getCode();
             else

+ 1 - 1
modules/boonex/persons/install/config.php

@@ -24,7 +24,7 @@ $aConfig = array(
     'update_url' => 'http://www.boonex.com/products/{uri}',
 
     'compatible_with' => array(
-        '7.0.6'
+        '8.0.0'
     ),
 
     /**

+ 3 - 0
modules/boonex/persons/install/langs/en.xml

@@ -49,6 +49,7 @@
 	<string name="_bx_persons_page_block_title_profile_picture"><![CDATA[Picture]]></string>
 	<string name="_bx_persons_page_block_title_profile_menu"><![CDATA[Menu]]></string>
 	<string name="_bx_persons_page_title_browse_recent"><![CDATA[Persons]]></string>
+	<string name="_bx_persons_page_block_title_latest_persons"><![CDATA[Recent Persons]]></string>
 
     <string name="_bx_persons_menu_set_title_view_person"><![CDATA[View Person]]></string>
     <string name="_bx_persons_menu_title_view_person"><![CDATA[View Person]]></string>
@@ -60,6 +61,8 @@
     <string name="_bx_persons_menu_item_title_view_person"><![CDATA[View Profile]]></string>
     <string name="_bx_persons_menu_item_title_system_persons_profile"><![CDATA[Person]]></string>
     <string name="_bx_persons_menu_item_title_persons_profile"><![CDATA[Person]]></string>
+    <string name="_bx_persons_menu_item_title_system_create_person"><![CDATA[Create Person]]></string>
+    <string name="_bx_persons_menu_item_title_create_person"><![CDATA[Create Person]]></string>
 
 	<string name="_bx_persons_txt_error_profile_creation"><![CDATA[Profile creation failed]]></string>
 	<string name="_bx_persons_txt_error_profile_update"><![CDATA[Profile update failed]]></string>

+ 19 - 11
modules/boonex/persons/install/sql/enable.sql

@@ -37,8 +37,8 @@ INSERT INTO `sys_transcoder_images_filters` (`transcoder_object`, `filter`, `fil
 --
 -- Dumping data for 'bx_persons_create_profile' page
 --
-INSERT INTO `sys_objects_page`(`object`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`, `layout_name`, `layout_icon`, `layout_title`, `layout_template`, `layout_cells_number`) VALUES 
-('bx_persons_create_profile', '_bx_persons_page_title_sys_create_profile', '_bx_persons_page_title_create_profile', 'bx_persons', 5, 2147483647, 1, 'page.php?i=create-persons-profile', '', '', '', 0, 1, 0, '', '', '1_column', 'layout_1_column.png', '_sys_layout_1_column', 'layout_1_column.html', 1);
+INSERT INTO `sys_objects_page`(`object`, `uri`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`) VALUES 
+('bx_persons_create_profile', 'create-persons-profile', '_bx_persons_page_title_sys_create_profile', '_bx_persons_page_title_create_profile', 'bx_persons', 5, 2147483647, 1, 'page.php?i=create-persons-profile', '', '', '', 0, 1, 0, '', '');
 
 INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title`, `designbox_id`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `order`) VALUES 
 ('bx_persons_create_profile', 1, 'bx_persons', '_bx_persons_page_block_title_create_profile', 11, 2147483647, 'service', 'a:2:{s:6:\"module\";s:10:\"bx_persons\";s:6:\"method\";s:14:\"create_profile\";}', 0, 1, 1);
@@ -46,8 +46,8 @@ INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title`, `designbo
 --
 -- Dumping data for 'bx_persons_delete_profile' page
 --
-INSERT INTO `sys_objects_page`(`object`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`, `layout_name`, `layout_icon`, `layout_title`, `layout_template`, `layout_cells_number`) VALUES 
-('bx_persons_delete_profile', '_bx_persons_page_title_sys_delete_profile', '_bx_persons_page_title_delete_profile', 'bx_persons', 1, 2147483647, 1, 'page.php?i=delete-persons-profile', '', '', '', 0, 1, 0, 'BxPersonsPageProfile', 'modules/boonex/persons/classes/BxPersonsPageProfile.php', 'bar_left', 'layout_bar_left.png', '_sys_layout_bar_left', 'layout_bar_left.html', 2);
+INSERT INTO `sys_objects_page`(`object`, `uri`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`) VALUES 
+('bx_persons_delete_profile', 'delete-persons-profile', '_bx_persons_page_title_sys_delete_profile', '_bx_persons_page_title_delete_profile', 'bx_persons', 1, 2147483647, 1, 'page.php?i=delete-persons-profile', '', '', '', 0, 1, 0, 'BxPersonsPageProfile', 'modules/boonex/persons/classes/BxPersonsPageProfile.php');
 
 INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title`, `designbox_id`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `order`) VALUES 
 ('bx_persons_delete_profile', 2, 'bx_persons', '_bx_persons_page_block_title_delete_profile', 11, 2147483647, 'service', 'a:2:{s:6:\"module\";s:10:\"bx_persons\";s:6:\"method\";s:14:\"delete_profile\";}', 0, 1, 0),
@@ -57,8 +57,8 @@ INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title`, `designbo
 --
 -- Dumping data for 'bx_persons_edit_profile' page
 --
-INSERT INTO `sys_objects_page`(`object`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`, `layout_name`, `layout_icon`, `layout_title`, `layout_template`, `layout_cells_number`) VALUES 
-('bx_persons_edit_profile', '_bx_persons_page_title_sys_edit_profile', '_bx_persons_page_title_edit_profile', 'bx_persons', 1, 2147483647, 1, 'page.php?i=edit-persons-profile', '', '', '', 0, 1, 0, 'BxPersonsPageProfile', 'modules/boonex/persons/classes/BxPersonsPageProfile.php', 'bar_left', 'layout_bar_left.png', '_sys_layout_bar_left', 'layout_bar_left.html', 2);
+INSERT INTO `sys_objects_page`(`object`, `uri`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`) VALUES 
+('bx_persons_edit_profile', 'edit-persons-profile', '_bx_persons_page_title_sys_edit_profile', '_bx_persons_page_title_edit_profile', 'bx_persons', 1, 2147483647, 1, 'page.php?i=edit-persons-profile', '', '', '', 0, 1, 0, 'BxPersonsPageProfile', 'modules/boonex/persons/classes/BxPersonsPageProfile.php');
 
 INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title`, `designbox_id`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `order`) VALUES 
 ('bx_persons_edit_profile', 2, 'bx_persons', '_bx_persons_page_block_title_edit_profile', 11, 2147483647, 'service', 'a:2:{s:6:\"module\";s:10:\"bx_persons\";s:6:\"method\";s:12:\"edit_profile\";}', 0, 1, 0),
@@ -68,20 +68,28 @@ INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title`, `designbo
 --
 -- Dumping data for 'bx_persons_view_profile' page
 --
-INSERT INTO `sys_objects_page`(`object`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`, `layout_name`, `layout_icon`, `layout_title`, `layout_template`, `layout_cells_number`) VALUES 
-('bx_persons_view_profile', '_bx_persons_page_title_sys_view_profile', '_bx_persons_page_title_view_profile', 'bx_persons', 1, 2147483647, 1, 'page.php?i=view-persons-profile', '', '', '', 0, 1, 0, 'BxPersonsPageProfile', 'modules/boonex/persons/classes/BxPersonsPageProfile.php', 'bar_left', 'layout_bar_left.png', '_sys_layout_bar_left', 'layout_bar_left.html', 2);
+INSERT INTO `sys_objects_page`(`object`, `uri`, `title_system`, `title`, `module`, `layout_id`, `visible_for_levels`, `visible_for_levels_editable`, `url`, `meta_description`, `meta_keywords`, `meta_robots`, `cache_lifetime`, `cache_editable`, `deletable`, `override_class_name`, `override_class_file`) VALUES 
+('bx_persons_view_profile', 'view-persons-profile', '_bx_persons_page_title_sys_view_profile', '_bx_persons_page_title_view_profile', 'bx_persons', 1, 2147483647, 1, 'page.php?i=view-persons-profile', '', '', '', 0, 1, 0, 'BxPersonsPageProfile', 'modules/boonex/persons/classes/BxPersonsPageProfile.php');
 
 INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title`, `designbox_id`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `order`) VALUES 
 ('bx_persons_view_profile', 2, 'bx_persons', '_bx_persons_page_block_title_profile_info', 11, 2147483647, 'service', 'a:2:{s:6:\"module\";s:10:\"bx_persons\";s:6:\"method\";s:12:\"profile_info\";}', 0, 0, 0),
 ('bx_persons_view_profile', 1, 'bx_persons', '_bx_persons_page_block_title_profile_picture', 3, 2147483647, 'service', 'a:2:{s:6:\"module\";s:10:\"bx_persons\";s:6:\"method\";s:15:\"profile_picture\";}', 0, 0, 1),
 ('bx_persons_view_profile', 1, 'bx_persons', '_bx_persons_page_block_title_profile_menu', 13, 2147483647, 'menu', 'bx_persons_view', 0, 0, 2);
 
+-- Homepage
+INSERT INTO `sys_pages_blocks` (`object`, `cell_id`, `module`, `title`, `designbox_id`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `order`) VALUES
+('sys_home', 0, 'bx_persons', '_bx_persons_page_block_title_latest_persons', 0, 2147483647, 'service', 'a:2:{s:6:"module";s:10:"bx_persons";s:6:"method";s:21:"browse_recent_persons";}', 0, 1, 0);
 
 -- MENU
 
-SET @iCreateProfileMenuOrder = (SELECT `order` FROM `sys_menu_items` WHERE `set_name` = 'sys_profiles_create' AND `active` = 1 ORDER BY `order` DESC LIMIT 1);
-INSERT INTO `sys_menu_items` (`set_name`, `module`, `name`, `title_system`, `title`, `link`, `onclick`, `target`, `icon`, `submenu_object`, `visible_for_levels`, `active`, `order`) VALUES
-('sys_profiles_create', 'bx_persons', 'create-person-profile', '_bx_persons_menu_item_title_system_persons_profile', '_bx_persons_menu_item_title_persons_profile', 'page.php?i=create-persons-profile', '', '', 'user', '', 2147483647, 1, IFNULL(@iCreateProfileMenuOrder, 0) + 1);
+--SET @iCreateProfileMenuOrder = (SELECT `order` FROM `sys_menu_items` WHERE `set_name` = 'sys_profiles_create' AND `active` = 1 ORDER BY `order` DESC LIMIT 1);
+--INSERT INTO `sys_menu_items` (`set_name`, `module`, `name`, `title_system`, `title`, `link`, `onclick`, `target`, `icon`, `submenu_object`, `visible_for_levels`, `active`, `order`) VALUES
+--('sys_profiles_create', 'bx_persons', 'create-person-profile', '_bx_persons_menu_item_title_system_persons_profile', '_bx_persons_menu_item_title_persons_profile', 'page.php?i=create-persons-profile', '', '', 'user', '', 2147483647, 1, IFNULL(@iCreateProfileMenuOrder, 0) + 1);
+
+SET @iAddMenuOrder = (SELECT `order` FROM `sys_menu_items` WHERE `set_name` = 'sys_add_content_links' AND `active` = 1 ORDER BY `order` DESC LIMIT 1);
+INSERT INTO `sys_menu_items` (`set_name`, `module`, `name`, `title_system`, `title`, `link`, `onclick`, `target`, `icon`, `submenu_object`, `visible_for_levels`, `active`, `order`) VALUES 
+('sys_add_content_links', 'bx_persons', 'create-persons-profile', '_bx_persons_menu_item_title_system_create_person', '_bx_persons_menu_item_title_create_person', 'page.php?i=create-persons-profile', '', '', '', '', 2147483647, 1, IFNULL(@iAddMenuOrder, 0) + 1);
+
 
 --
 -- Dumping data for 'bx_persons_view' menu

+ 1 - 1
splash.php

@@ -39,7 +39,7 @@ class BxDolSplashMenuTop extends BxTemplStudioMenuTop
         );
 	}
 
-	function getInstance() {
+	public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses']['BxDolSplashMenuTop']))
             $GLOBALS['bxDolClasses']['BxDolSplashMenuTop'] = new BxDolSplashMenuTop();
 

+ 2 - 2
studio/classes/BxDolStudioForm.php

@@ -38,11 +38,11 @@ class BxDolStudioForm extends BxBaseFormView {
         return $mixedResult;
     }
 
-    function update($val, $aValsToAdd = array()) {
+    function update($val, $aValsToAdd = array(), &$aTrackTextFieldsChanges = null) {
         $sAction = 'update';
         $this->processTranslationsKey($sAction);
 
-        $mixedResult = parent::update($val, $aValsToAdd);
+        $mixedResult = parent::update($val, $aValsToAdd, $aTrackTextFieldsChanges);
         if($mixedResult !== false)
             $this->processTranslations($sAction);
 

+ 3 - 2
studio/classes/BxDolStudioTemplate.php

@@ -15,6 +15,7 @@ define('BX_PAGE_COLUMN_DUAL', 3); ///< page, with 2 columns
 bx_import('BxDolTemplate');
 
 class BxDolStudioTemplate extends BxDolTemplate {
+
     function BxDolStudioTemplate() {
         if(isset($GLOBALS['bxDolClasses'][get_class($this)]))
             trigger_error ('Multiple instances are not allowed for the class: ' . get_class($this), E_USER_ERROR);
@@ -46,7 +47,7 @@ class BxDolStudioTemplate extends BxDolTemplate {
     /**
      * Get singleton instance of the class
      */
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses'][__CLASS__])) {
             $GLOBALS['bxDolClasses'][__CLASS__] = new BxDolStudioTemplate();
             $GLOBALS['bxDolClasses'][__CLASS__]->init();
@@ -235,4 +236,4 @@ class BxDolStudioTemplate extends BxDolTemplate {
         exit;
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioBuilderPage.php

@@ -71,7 +71,7 @@ class BxBaseStudioBuilderPage extends BxDolStudioBuilderPage {
         return 'oBxDolStudioBuilderPage';
     }
 
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $aMenuItems = array(
             BX_DOL_STUDIO_MODULE_SYSTEM => array( 
             	'name' => BX_DOL_STUDIO_MODULE_SYSTEM,
@@ -105,7 +105,7 @@ class BxBaseStudioBuilderPage extends BxDolStudioBuilderPage {
         return parent::getPageMenu($aMenu);
     }
 
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         bx_import('BxTemplPage');
         $oPage = BxTemplPage::getObjectInstance($this->sPage);
 
@@ -1520,4 +1520,4 @@ class BxBaseStudioBuilderPage extends BxDolStudioBuilderPage {
     	return $aBlocks;
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioDesign.php

@@ -44,7 +44,7 @@ class BxBaseStudioDesign extends BxDolStudioDesign {
 
         return parent::getPageAttributes();
     }
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
 
         $aMenu = array();            
@@ -59,7 +59,7 @@ class BxBaseStudioDesign extends BxDolStudioDesign {
 
         return parent::getPageMenu($aMenu);
     }
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' . ucfirst($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -82,4 +82,4 @@ class BxBaseStudioDesign extends BxDolStudioDesign {
         return $oTemplate->parseHtmlByName('design.html', $aTmplVars);
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioDesigner.php

@@ -31,7 +31,7 @@ class BxBaseStudioDesigner extends BxDolStudioDesigner {
     function getPageJsObject() {
         return 'oBxDolStudioDesigner';
     }
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
 
         $aMenu = array();
@@ -51,7 +51,7 @@ class BxBaseStudioDesigner extends BxDolStudioDesigner {
 
         return parent::getPageMenu($aMenu);
     }
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' . ucfirst($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -253,4 +253,4 @@ class BxBaseStudioDesigner extends BxDolStudioDesigner {
         return $oTemplate->parseHtmlByName('designer.html', $aTmplVars);
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioForms.php

@@ -35,7 +35,7 @@ class BxBaseStudioForms extends BxDolStudioForms {
     function getPageJsObject() {
         return '';
     }
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
 
         $aMenu = array();
@@ -57,7 +57,7 @@ class BxBaseStudioForms extends BxDolStudioForms {
 
         return parent::getPageMenu($aMenu);
     }
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' .  $this->getClassName($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -174,4 +174,4 @@ class BxBaseStudioForms extends BxDolStudioForms {
         return array('content' => BxDolStudioTemplate::getInstance()->parseHtmlByName('forms_select.html', array('bx_repeat:options' => $aTmplVars)));
     }
 }
-/** @} */
+/** @} */

+ 1 - 1
studio/template/scripts/BxBaseStudioFunctions.php

@@ -21,7 +21,7 @@ class BxBaseStudioFunctions extends BxBaseFunctions {
         parent::BxBaseFunctions($oTemplate ? $oTemplate : BxDolStudioTemplate::getInstance());
     }
 
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses']['BxBaseStudioFunctions']))
             $GLOBALS['bxDolClasses']['BxBaseStudioFunctions'] = new BxTemplStudioFunctions();
 

+ 3 - 3
studio/template/scripts/BxBaseStudioLanguage.php

@@ -45,7 +45,7 @@ class BxBaseStudioLanguage extends BxDolStudioLanguage {
         return parent::getPageAttributes();
     }
 
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
 
         $aMenu = array();
@@ -61,7 +61,7 @@ class BxBaseStudioLanguage extends BxDolStudioLanguage {
         return parent::getPageMenu($aMenu);
     }
 
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' . ucfirst($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -84,4 +84,4 @@ class BxBaseStudioLanguage extends BxDolStudioLanguage {
         return $oTemplate->parseHtmlByName('language.html', $aTmplVars);
     }
 }
-/** @} */
+/** @} */

+ 2 - 2
studio/template/scripts/BxBaseStudioMenuTop.php

@@ -19,7 +19,7 @@ class BxBaseStudioMenuTop extends BxDolStudioMenuTop {
         parent::BxDolStudioMenuTop();
     }
 
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses']['BxBaseStudioMenuTop']))
             $GLOBALS['bxDolClasses']['BxBaseStudioMenuTop'] = new BxTemplStudioMenuTop();
 
@@ -69,4 +69,4 @@ class BxBaseStudioMenuTop extends BxDolStudioMenuTop {
     	return $oTemplate->parseHtmlByName('menu_top.html', array('bx_repeat:menus' => $aTmplVars));
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioModule.php

@@ -49,7 +49,7 @@ class BxBaseStudioModule extends BxDolStudioModule {
         return parent::getPageAttributes();
     }
 
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
 
         $aMenu = array();
@@ -64,7 +64,7 @@ class BxBaseStudioModule extends BxDolStudioModule {
 
         return parent::getPageMenu($aMenu);
     }
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' . ucfirst($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -87,4 +87,4 @@ class BxBaseStudioModule extends BxDolStudioModule {
         return $oTemplate->parseHtmlByName('design.html', $aTmplVars);
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioNavigation.php

@@ -33,7 +33,7 @@ class BxBaseStudioNavigation extends BxDolStudioNavigation {
     function getPageJsObject() {
         return '';
     }
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
 
         $aMenu = array();
@@ -53,7 +53,7 @@ class BxBaseStudioNavigation extends BxDolStudioNavigation {
 
         return parent::getPageMenu($aMenu);
     }
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' . ucfirst($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -117,4 +117,4 @@ class BxBaseStudioNavigation extends BxDolStudioNavigation {
         return $oTemplate->parseHtmlByName('navigation.html', $aTmplVars);
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioPermissions.php

@@ -28,7 +28,7 @@ class BxBaseStudioPermissions extends BxDolStudioPermissions {
     function getPageJsObject() {
         return 'oBxDolStudioPermissions';
     }
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
 
         $aMenu = array();
@@ -48,7 +48,7 @@ class BxBaseStudioPermissions extends BxDolStudioPermissions {
 
         return parent::getPageMenu($aMenu);
     }
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' . ucfirst($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -91,4 +91,4 @@ class BxBaseStudioPermissions extends BxDolStudioPermissions {
         return $oTemplate->parseHtmlByName('permissions.html', $aTmplVars);
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioPolyglot.php

@@ -24,7 +24,7 @@ class BxBaseStudioPolyglot extends BxDolStudioPolyglot {
     function getPageJsObject() {
         return 'oBxDolStudioPolyglot';
     }
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
 
         $aMenu = array();
@@ -45,7 +45,7 @@ class BxBaseStudioPolyglot extends BxDolStudioPolyglot {
         return parent::getPageMenu($aMenu);
     }
 
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' . ucfirst($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -102,4 +102,4 @@ class BxBaseStudioPolyglot extends BxDolStudioPolyglot {
         return $oTemplate->parseHtmlByName('polyglot.html', $aTmplVars);
     }
 }
-/** @} */
+/** @} */

+ 2 - 2
studio/template/scripts/BxBaseStudioSettings.php

@@ -26,7 +26,7 @@ class BxBaseStudioSettings extends BxDolStudioSettings {
     function getPageJsObject() {
         return 'oBxDolStudioSettings';
     }
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $aTypes = $aMenu = array();
         if($this->oDb->getTypes(array('type' => 'all'), $aTypes) > 0 ) {
             $aTypesGrouped = array();
@@ -250,4 +250,4 @@ class BxBaseStudioSettings extends BxDolStudioSettings {
         return $aType['icon'];
     }
 }
-/** @} */
+/** @} */

+ 3 - 3
studio/template/scripts/BxBaseStudioStore.php

@@ -31,7 +31,7 @@ class BxBaseStudioStore extends BxDolStudioStore {
         return 'oBxDolStudioStore';
     }
 
-    function getPageMenu() {
+    function getPageMenu($aMenu = array(), $aMarkers = array()) {
         $sJsObject = $this->getPageJsObject();
         $oTemplate = BxDolStudioTemplate::getInstance();
 
@@ -62,7 +62,7 @@ class BxBaseStudioStore extends BxDolStudioStore {
         return parent::getPageMenu($aMenu, $aMarkers);
     }
 
-    function getPageCode() {
+    function getPageCode($bHidden = false) {
         $sMethod = 'get' . ucfirst($this->sPage);
         if(!method_exists($this, $sMethod))
             return '';
@@ -578,4 +578,4 @@ class BxBaseStudioStore extends BxDolStudioStore {
         return $sResult;
     }
 }
-/** @} */
+/** @} */

+ 1 - 1
template/scripts/BxBaseConfig.php

@@ -67,7 +67,7 @@ class BxBaseConfig extends BxDol {
         $this -> bAnonymousMode = getParam('anon_mode');;
     }
 
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses'][__CLASS__]))
             $GLOBALS['bxDolClasses'][__CLASS__] = new BxTemplConfig();
 

+ 3 - 3
template/scripts/BxBaseFormView.php

@@ -711,7 +711,7 @@ BLAH;
      */
     function genInputSwitcher(&$aInput) {
         $aInput['type'] = 'checkbox';
-        $sCheckbox = $this->genInputStandard(&$aInput);
+        $sCheckbox = $this->genInputStandard($aInput);
         $aInput['type'] = 'switcher';
 
         $sClass = 'off';
@@ -884,7 +884,7 @@ BLAH;
      */
     function genInputSelect(&$aInput) {
         $sCurValue = isset($aInput['value']) ? $aInput['value'] : '';
-        return $this->_genInputSelect(&$aInput, false, $sCurValue, '_isSelected');
+        return $this->_genInputSelect($aInput, false, $sCurValue, '_isSelected');
     }
 
     /**
@@ -897,7 +897,7 @@ BLAH;
         $aCurValues = array();
         if (isset($aInput['value']) && $aInput['value'])
             $aCurValues = is_array($aInput['value']) ? $aInput['value'] : array(); 
-        return $this->_genInputSelect(&$aInput, true, $aCurValues, '_isSelectedMultiple');
+        return $this->_genInputSelect($aInput, true, $aCurValues, '_isSelectedMultiple');
     }
 
     /**

+ 3 - 3
template/scripts/BxBaseFunctions.php

@@ -36,7 +36,7 @@ class BxBaseFunctions extends BxDol {
             trigger_error('Clone is not allowed for the class: ' . get_class($this), E_USER_ERROR);
     }
 
-    function getInstance() {
+    public static function getInstance() {
         if(!isset($GLOBALS['bxDolClasses']['BxTemplFunctions']))
             $GLOBALS['bxDolClasses']['BxTemplFunctions'] = new BxTemplFunctions();
 
@@ -153,7 +153,7 @@ class BxBaseFunctions extends BxDol {
     }
 
     function msgBox($sText, $iTimer = 0, $sOnClose = "") {    	
-        $iId = mktime() . mt_rand(1, 1000);
+        $iId = time() . mt_rand(1, 1000);
 
         return $this->_oTemplate->parseHtmlByName('messageBox.html', array(
             'id' => $iId,
@@ -184,7 +184,7 @@ class BxBaseFunctions extends BxDol {
      */
     function popupBox($sName, $sTitle, $sContent, $isHiddenByDefault = false) {
 
-        $iId = !empty($sName) ? $sName : mktime();
+        $iId = !empty($sName) ? $sName : time();
 
         return $this->_oTemplate->parseHtmlByName('popup_box.html', array(
             'id' => $iId,