diff --git a/application/core/LSYii_ClientScript.php b/application/core/LSYii_ClientScript.php index 800ffc4b3a4..5b6ee8f0206 100644 --- a/application/core/LSYii_ClientScript.php +++ b/application/core/LSYii_ClientScript.php @@ -520,7 +520,7 @@ public function renderBodyEnd(&$output) if (isset($this->scripts[self::POS_POSTSCRIPT])) { if ($fullPage) { //This part is different to reflect the changes needed in the backend by the pjax loading of pages - $scripts[] = "jQuery(document).off('pjax:scriptcomplete').on('ready pjax:scriptcomplete', function() {\n".implode("\n", $this->scripts[self::POS_POSTSCRIPT])."\n});"; + $scripts[] = "jQuery(document).off('pjax:scriptcomplete.mainBottom').on('ready pjax:scriptcomplete.mainBottom', function() {\n".implode("\n", $this->scripts[self::POS_POSTSCRIPT])."\n});"; } else { $scripts[] = implode("\n", $this->scripts[self::POS_POSTSCRIPT]); } diff --git a/application/extensions/admin/grid/MassiveActionsWidget/MassiveActionsWidget.php b/application/extensions/admin/grid/MassiveActionsWidget/MassiveActionsWidget.php index e705db0e14d..8518208564c 100644 --- a/application/extensions/admin/grid/MassiveActionsWidget/MassiveActionsWidget.php +++ b/application/extensions/admin/grid/MassiveActionsWidget/MassiveActionsWidget.php @@ -59,7 +59,7 @@ public function run() // Before, it was using: Yii::app()->getClientScript()->registerScriptFile(App()->getAssetManager()->publish(dirname(__FILE__) . '/assets/listActions.js')); // Now, registerScriptFile will use or not the asset manager depending on context - Yii::app()->getClientScript()->registerScriptFile(Yii::app()->getConfig("extensionsurl").'admin/grid/MassiveActionsWidget/assets/listActions.js'); + Yii::app()->getClientScript()->registerScriptFile(Yii::app()->getConfig("extensionsurl").'admin/grid/MassiveActionsWidget/assets/listActions.js', LSYii_ClientScript::POS_BEGIN); } diff --git a/application/extensions/admin/grid/MassiveActionsWidget/assets/listActions.js b/application/extensions/admin/grid/MassiveActionsWidget/assets/listActions.js index 069241ace20..f11e60e9d42 100644 --- a/application/extensions/admin/grid/MassiveActionsWidget/assets/listActions.js +++ b/application/extensions/admin/grid/MassiveActionsWidget/assets/listActions.js @@ -15,13 +15,12 @@ * perform an ajax request and close * perform an ajax request and show the result in the modal */ -$(document).on('click', '.listActions a', function () -{ +var onClickListAction = function () { var $that = $(this); // The cliked link var $actionUrl = $that.data('url'); // The url of the Survey Controller action to call var onSuccess = $that.data('on-success'); - var $gridid = $('.listActions').data('grid-id'); - var $oCheckedItems = $.fn.yiiGridView.getChecked($gridid, $('.listActions').data('pk')); // List of the clicked checkbox + var $gridid = $(this).closest('div.listActions').data('grid-id'); + var $oCheckedItems = $.fn.yiiGridView.getChecked($gridid, $(this).closest('div.listActions').data('pk')); // List of the clicked checkbox var $oCheckedItems = JSON.stringify($oCheckedItems); var actionType = $that.data('actionType'); @@ -193,7 +192,7 @@ $(document).on('click', '.listActions a', function () // open the modal $modal.modal(); -}); +}; /** * Bootstrap switch extension @@ -277,16 +276,16 @@ function getDefaultDateTimePickerSettings() { } -$(document).on('ready pjax:scriptcomplete', function() { - +$(document).off('pjax:scriptcomplete.listActions').on('ready pjax:scriptcomplete.listActions', function() { prepareBsSwitchBoolean(gridId); prepareBsSwitchInteger(gridId); - // Grid refresh: see point 3 $(document).on('actions-updated', '#'+gridId, function(){ prepareBsSwitchBoolean(gridId); prepareBsSwitchInteger(gridId); prepareBsDateTimePicker(gridId); }); + $( '.listActions a').off('click.listactions').on('click.listactions', onClickListAction); + }); diff --git a/application/extensions/admin/grid/MassiveActionsWidget/views/selector.php b/application/extensions/admin/grid/MassiveActionsWidget/views/selector.php index 3558343778c..bb16e3c10ea 100644 --- a/application/extensions/admin/grid/MassiveActionsWidget/views/selector.php +++ b/application/extensions/admin/grid/MassiveActionsWidget/views/selector.php @@ -82,8 +82,10 @@ - + +getClientScript()->registerScript("ListQuestions-run-pagination", " + var gridId = '".$this->gridid."'; +", LSYii_ClientScript::POS_BEGIN); ?> + diff --git a/application/models/QuestionGroup.php b/application/models/QuestionGroup.php index e5fb956f523..1abaa9fb0bc 100644 --- a/application/models/QuestionGroup.php +++ b/application/models/QuestionGroup.php @@ -282,21 +282,21 @@ public function getbuttons() // Add question to this group if (Permission::model()->hasSurveyPermission($this->sid, 'surveycontent', 'update')) { $url = Yii::app()->createUrl("admin/questions/sa/newquestion/surveyid/$this->sid/gid/$this->gid"); - $button .= ''; + $button .= ''; } // Group edition // Edit if (Permission::model()->hasSurveyPermission($this->sid, 'surveycontent', 'update')) { $url = Yii::app()->createUrl("admin/questiongroups/sa/edit/surveyid/$this->sid/gid/$this->gid"); - $button .= ' '; + $button .= ' '; } // View summary if (Permission::model()->hasSurveyPermission($this->sid, 'surveycontent', 'read')) { $url = Yii::app()->createUrl("/admin/questiongroups/sa/view/surveyid/"); $url .= '/'.$this->sid.'/gid/'.$this->gid; - $button .= ' '; + $button .= ' '; } // Delete @@ -306,13 +306,13 @@ public function getbuttons() $confirm = 'if (confirm(\''.gT("Deleting this group will also delete any questions and answers it contains. Are you sure you want to continue?", "js").'\')) { window.open(\''.Yii::app()->createUrl("admin/questiongroups/sa/delete/surveyid/$this->sid/gid/$this->gid").'\',\'_top\'); };'; $button .= ' - + '; } else { $alert = 'alert(\''.gT("Impossible to delete this group because there is at least one question having a condition on its content", "js").'\'); return false;'; $button .= ' - + '; } } diff --git a/application/views/admin/survey/Question/listquestions.php b/application/views/admin/survey/Question/listquestions.php index 384b43c19b7..6c79cef88be 100644 --- a/application/views/admin/survey/Question/listquestions.php +++ b/application/views/admin/survey/Question/listquestions.php @@ -156,16 +156,6 @@ - - - - -renderPartial('/admin/survey/Question/massive_actions/_set_question_group', array('model'=>$model, 'oSurvey'=>$oSurvey)); ?> + + +getClientScript()->registerScript("ListQuestions-pagination", " + var bindPageSizeChange = function(){ + $('#pageSize').on('change', function(){ + $.fn.yiiGridView.update('question-grid',{ data:{ pageSize: $(this).val() }}); + }); + }; + ", LSYii_ClientScript::POS_BEGIN); ?> + +getClientScript()->registerScript("ListQuestions-run-pagination", "bindPageSizeChange(); ", LSYii_ClientScript::POS_POSTSCRIPT); ?> diff --git a/application/views/admin/survey/Question/massive_actions/_selector.php b/application/views/admin/survey/Question/massive_actions/_selector.php index ae6a0ef1070..1ecbcf5397c 100644 --- a/application/views/admin/survey/Question/massive_actions/_selector.php +++ b/application/views/admin/survey/Question/massive_actions/_selector.php @@ -197,11 +197,9 @@ - + ", LSYii_ClientScript::POS_POSTSCRIPT); ?> + diff --git a/application/views/admin/survey/QuestionGroups/listquestiongroups.php b/application/views/admin/survey/QuestionGroups/listquestiongroups.php index aff834edae6..12306364cf1 100644 --- a/application/views/admin/survey/QuestionGroups/listquestiongroups.php +++ b/application/views/admin/survey/QuestionGroups/listquestiongroups.php @@ -14,30 +14,30 @@
-
-
-
- beginWidget('CActiveForm', array( - 'action' => Yii::app()->createUrl('admin/survey/sa/listquestiongroups/surveyid/'.$surveyid), - 'method' => 'get', - 'htmlOptions'=>array( - 'class'=>'', - ), - )); ?> -
- ' control-label text-right col-sm-offset-6')); ?> -
- textField($model, 'group_name', array('class'=>'form-control')); ?> -
-
- 'btn btn-success')); ?> - + beginWidget('TbActiveForm', array( + 'action' => Yii::app()->createUrl('admin/survey/sa/listquestiongroups/surveyid/'.$surveyid), + 'method' => 'get', + 'htmlOptions'=>array( + 'class'=>'form', + ), + )); ?> +
+
+
+
+ ' control-label text-right col-sm-6')); ?> +
+ textField($model, 'group_name', array('class'=>'form-control col-sm-12')); ?> +
+
+ 'btn btn-success')); ?> + +
- endWidget(); ?> -
+
-
+ endWidget(); ?>
@@ -99,6 +99,7 @@ ), 'ajaxUpdate' => true, + 'afterAjaxUpdate' => 'bindPageSizeChange' )); ?>
@@ -108,10 +109,12 @@
- +getClientScript()->registerScript("ListQuestionGroups-pagination", " + var bindPageSizeChange = function(){ + $('#pageSize').on('change', function(){ + $.fn.yiiGridView.update('question-group-grid',{ data:{ pageSize: $(this).val() }}); + }); + }; + ", LSYii_ClientScript::POS_BEGIN); ?> + +getClientScript()->registerScript("ListQuestionGroups-run-pagination", "bindPageSizeChange(); ", LSYii_ClientScript::POS_POSTSCRIPT); ?>