AntonLV 9 jaren geleden
bovenliggende
commit
5f0ce17f67

+ 9 - 1
studio/js/builder_page.js

@@ -241,10 +241,18 @@ BxDolStudioBuilderPage.prototype.onChangeLayout = function(iId, oLink) {
 	$("[name = 'layout_id']").val(iId);
 };
 
-BxDolStudioBuilderPage.prototype.onSaveSettings = function() {
+BxDolStudioBuilderPage.prototype.onSaveSettingsLayout = function() {
 	window.location.href = this.parsePageUrl({page: this.sPage});
 };
 
+BxDolStudioBuilderPage.prototype.onCloseSettings = function() {
+	$('.bx-popup-applied:visible').dolPopupHide({
+		onHide: function(oPopup) {
+			$(oPopup).remove();
+		}
+	});
+};
+
 /**
  * General methods.
  */

+ 2 - 1
studio/template/bp_add_page.html

@@ -9,7 +9,8 @@
                         bx_loading($("#__form_id__"), true);
                     },
                     success: function(oData) {
-                        $(".bx-popup-applied:visible").dolPopupHide();
+                        __js_object__.onCloseSettings();
+
                         oBxDolStudioPage.processJson(oData);
                     }
                 });

+ 2 - 1
studio/template/bp_edit_page.html

@@ -9,7 +9,8 @@
                         bx_loading($("#__form_id__"), true);
                     },
                     success: function(oData) {
-                        $(".bx-popup-applied:visible").dolPopupHide();
+                        __js_object__.onCloseSettings();
+
                         oBxDolStudioPage.processJson(oData);
                     }
                 });

+ 1 - 1
studio/template/bp_edit_page_form.html

@@ -13,6 +13,6 @@
 <div class="bx-std-cb"></div>
 <div class="adm-bp-epf-controls bx-def-padding-top bx-def-padding-leftright bx-def-border-color-layout">
     <button class="bx-btn bx-btn-primary" name="do_submit" value="__submit__" type="submit">__submit__</button>
-    <button class="bx-btn bx-def-margin-sec-left" name="do_cancel" value="<bx_text:_adm_bp_btn_page_cancel />" type="button" onclick="$('.bx-popup-applied:visible').dolPopupHide()"><bx_text:_adm_bp_btn_page_cancel /></button>
+    <button class="bx-btn bx-def-margin-sec-left" name="do_cancel" value="<bx_text:_adm_bp_btn_page_cancel />" type="button" onclick="__js_object__.onCloseSettings()"><bx_text:_adm_bp_btn_page_cancel /></button>
     <div class="bx-std-cb"></div>
 </div>

+ 6 - 2
studio/template/scripts/BxBaseStudioBuilderPage.php

@@ -246,6 +246,7 @@ class BxBaseStudioBuilderPage extends BxDolStudioBuilderPage
 
     protected function actionPageCreate()
     {
+        $sJsObject = $this->getPageJsObject();
         $oTemplate = BxDolStudioTemplate::getInstance();
 
         $sModule = BX_DOL_STUDIO_MODULE_CUSTOM;
@@ -316,12 +317,13 @@ class BxBaseStudioBuilderPage extends BxDolStudioBuilderPage
 
             $iId = (int)$oForm->insert(array('object' => $sObject, 'url' => $this->sPageBaseUrl . $sUri));
             if($iId != 0)
-                return array('eval' => $this->getPageJsObject() . '.onCreatePage(\'' . $sModule . '\', \'' . $sObject . '\')');
+                return array('eval' => $sJsObject . '.onCreatePage(\'' . $sModule . '\', \'' . $sObject . '\')');
             else
                 return array('msg' => _t('_adm_bp_err_page_create'));
         }
 
         $sContent = BxTemplStudioFunctions::getInstance()->popupBox($this->aHtmlIds['add_popup_id'], _t('_adm_bp_txt_create_popup'), $oTemplate->parseHtmlByName('bp_add_page.html', array(
+            'js_object' => $sJsObject,
             'form_id' => $aForm['form_attrs']['id'],
             'form' => $oForm->getCode(true)
         )));
@@ -382,7 +384,7 @@ class BxBaseStudioBuilderPage extends BxDolStudioBuilderPage
                     if($aLayoutOld['cells_number'] > $aLayoutNew['cells_number'] && $this->oDb->resetBlocksByPage($this->sPage, $aLayoutNew['cells_number']) === false)
                         return array('msg' => _t('_adm_bp_err_save'));
 
-                    return array('eval' => $sJsObject . '.onSaveSettings()');
+                    return array('eval' => $sJsObject . '.onSaveSettingsLayout()');
                 }
 
                 return array();
@@ -392,6 +394,7 @@ class BxBaseStudioBuilderPage extends BxDolStudioBuilderPage
         }
 
         $sContent = BxTemplStudioFunctions::getInstance()->popupBox($this->aHtmlIds['edit_popup_id'], _t('_adm_bp_txt_settings_popup'), $oTemplate->parseHtmlByName('bp_edit_page.html', array(
+            'js_object' => $sJsObject,
             'form_id' => $aForm['form_attrs']['id'],
             'form' => $oForm->getCode(true)
         )));
@@ -1689,6 +1692,7 @@ class BxBaseStudioBuilderPage extends BxDolStudioBuilderPage
     	$sJsObject = $this->getPageJsObject();
 
         $aTmplParams = array(
+            'js_object' => $sJsObject,
             'menu' => array(),
             'html_settings_groups_id' => $this->aHtmlIds['settings_groups_id'],
             'bx_repeat:settings_groups' => array(),