From a8c878abac06dad0767099acdee9245e93fcd913 Mon Sep 17 00:00:00 2001 From: Jagadedes Date: Fri, 24 Oct 2014 15:22:59 +0530 Subject: [PATCH] #30645 fixed No remove link in progressbar form --- CRM/Wci/Form/CreateWidget.php | 2 +- CRM/Wci/Form/ProgressBar.php | 39 +++++++++++------------------------ addmore.js | 11 ++++++++-- 3 files changed, 22 insertions(+), 30 deletions(-) diff --git a/CRM/Wci/Form/CreateWidget.php b/CRM/Wci/Form/CreateWidget.php index 5bbfe45..99aa050 100644 --- a/CRM/Wci/Form/CreateWidget.php +++ b/CRM/Wci/Form/CreateWidget.php @@ -271,7 +271,7 @@ where w.id=" . $this->_id; $widget_id = CRM_Core_DAO::singleValueQuery('SELECT LAST_INSERT_ID()'); CRM_Utils_System::redirect('?action=update&reset=1&id=' . $widget_id); } else { - CRM_Utils_System::redirect('widget?reset=1');#CRM_Utils_System::redirect('./?reset=1'); + CRM_Utils_System::redirect('widget?reset=1'); } } catch (Exception $e) { diff --git a/CRM/Wci/Form/ProgressBar.php b/CRM/Wci/Form/ProgressBar.php index 19fd5b1..09217e0 100644 --- a/CRM/Wci/Form/ProgressBar.php +++ b/CRM/Wci/Form/ProgressBar.php @@ -51,13 +51,13 @@ class CRM_Wci_Form_ProgressBar extends CRM_Core_Form { 'contribution_page_'.$count, // field name 'Contribution page', // field label getContributionPageOptions(), // list of options - true // is required + false // is required ); $this->add( 'text', // field type 'percentage_'.$count, // field name 'Percentage', // field label - true // is required + false // is required ); //save formula id $this->addElement('hidden', 'contrib_elem_'.$count , $for_page[$dao->id]['id']); @@ -111,19 +111,6 @@ class CRM_Wci_Form_ProgressBar extends CRM_Core_Form { 'Goal amount', // field label true // is required ); -/* $this->add( - 'select', // field type - 'contribution_page_1', // field name - 'Contribution page', // field label - getContributionPageOptions(), // list of options - true // is required - ); - $this->add( - 'text', // field type - 'percentage_1', // field name - 'Percentage', // field label - true // is required - );*/ $this->fillData(); @@ -147,30 +134,28 @@ class CRM_Wci_Form_ProgressBar extends CRM_Core_Form { $errorScope = CRM_Core_TemporaryErrorScope::useException(); if (isset($this->_id)) { try { + $transaction = new CRM_Core_Transaction(); + $sql = "UPDATE civicrm_wci_progress_bar SET name = '". $_REQUEST['progressbar_name'] . "', starting_amount = '" . $_REQUEST['starting_amount'] . "', goal_amount = '" . $_REQUEST['goal_amount'] . "' where id =".$this->_id; - $transaction = new CRM_Core_Transaction(); CRM_Core_DAO::executeQuery($sql); - - for($i = 1; $i <= (int)$_REQUEST['contrib_count']; $i++): + /** Delete existiing formula fields and add fields fresh*/ + CRM_Core_DAO::executeQuery('DELETE FROM civicrm_wci_progress_bar_formula WHERE progress_bar_id=' . $this->_id); + + for($i = 1; $i <= (int)$_REQUEST['contrib_count']; $i++) { $page = 'contribution_page_' . (string)$i; $perc = 'percentage_' . (string)$i; - if (isset($_REQUEST['contrib_elem_'.$i])) { - $sql = "UPDATE civicrm_wci_progress_bar_formula SET contribution_page_id = '". $_REQUEST[$page] . "', - percentage = '". $_REQUEST[$perc] . "' - WHERE id = " . (int)$_REQUEST['contrib_elem_'.$i]; - } - else { - $sql = "INSERT INTO civicrm_wci_progress_bar_formula (contribution_page_id, progress_bar_id, percentage) + $sql = "INSERT INTO civicrm_wci_progress_bar_formula (contribution_page_id, progress_bar_id, percentage) VALUES ('" . $_REQUEST[$page] . "','" . $this->_id . "','" . $_REQUEST[$perc] . "')"; - } CRM_Core_DAO::executeQuery($sql); - endfor; + } + $transaction->commit(); + CRM_Utils_System::redirect('progress-bar?reset=1'); } catch (Exception $e) { diff --git a/addmore.js b/addmore.js index afb31d2..ae871b6 100644 --- a/addmore.js +++ b/addmore.js @@ -1,7 +1,15 @@ // Updated to wait until the document is loaded. addmore_link cj(function ( $ ) { - + $(document).ready(function(){ + var count = parseInt($('input[name=contrib_count]').val()); + for ( var i = 2; i <= count; i++ ) { + $('#' + "contribution_page_" + i).after( + ' Remove'); + $('#' + "contribution_page_" + i).parent().parent().attr("id", "crm-section-con-" + i); + $('#' + "percentage_" + i).parent().parent().attr("id", 'crm-section-per-' + i); + } + }); $("#ProgressBar").validate({ rules: { starting_amount: { @@ -74,7 +82,6 @@ cj(function ( $ ) { //assuming that - is the delimiter. second string will be the count var rem_name_ar = rem_name.split('-'); var contri_page = "\"#percentage_" + rem_name_ar[1] + "\""; - $('#crm-section-con-'+ rem_name_ar[1] +'').remove(); $('#crm-section-per-'+ rem_name_ar[1] +'').remove(); var count = parseInt($('input[name=contrib_count]').val()); -- 2.25.1