diff --git a/modules/poll/conf/module.xml b/modules/poll/conf/module.xml
index 780305b12..da58dfbd4 100644
--- a/modules/poll/conf/module.xml
+++ b/modules/poll/conf/module.xml
@@ -13,9 +13,9 @@
-
+
-
-
+
+
diff --git a/modules/poll/poll.admin.controller.php b/modules/poll/poll.admin.controller.php
index f1f68f5f6..94f72bb71 100644
--- a/modules/poll/poll.admin.controller.php
+++ b/modules/poll/poll.admin.controller.php
@@ -24,6 +24,11 @@
$oModuleController->insertModuleConfig('poll', $config);
$this->setMessage('success_updated');
+ if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
+ $returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispPollAdminConfig');
+ header('location:'.$returnUrl);
+ return;
+ }
}
/**
@@ -32,9 +37,10 @@
function procPollAdminDeleteChecked() {
// Display an error no post is selected
$cart = Context::get('cart');
- if(!$cart) return $this->stop('msg_cart_is_null');
- $poll_srl_list= explode('|@|', $cart);
+ if(is_array($cart)) $poll_srl_list = $cart;
+ else $poll_srl_list= explode('|@|', $cart);
+
$poll_count = count($poll_srl_list);
if(!$poll_count) return $this->stop('msg_cart_is_null');
// Delete the post
@@ -47,6 +53,11 @@
}
$this->setMessage( sprintf(Context::getLang('msg_checked_poll_is_deleted'), $poll_count) );
+ if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
+ $returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispPollAdminList');
+ header('location:'.$returnUrl);
+ return;
+ }
}
/**
diff --git a/modules/poll/poll.controller.php b/modules/poll/poll.controller.php
index 688e78898..2f2d10207 100644
--- a/modules/poll/poll.controller.php
+++ b/modules/poll/poll.controller.php
@@ -119,6 +119,7 @@
if(!$srl) continue;
$item_srls[] = $srl;
}
+
// If there is no response item, display an error
if(!count($item_srls)) return new Object(-1, 'msg_check_poll_item');
// Make sure is the poll has already been taken
@@ -167,6 +168,11 @@
$this->add('poll_srl', $poll_srl);
$this->add('tpl',$tpl);
$this->setMessage('success_poll');
+ if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
+ $returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispPollAdminConfig');
+ header('location:'.$returnUrl);
+ return;
+ }
}
/**
diff --git a/modules/poll/ruleset/deleteChecked.xml b/modules/poll/ruleset/deleteChecked.xml
new file mode 100644
index 000000000..55a24f35c
--- /dev/null
+++ b/modules/poll/ruleset/deleteChecked.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/modules/poll/ruleset/insertConfig.xml b/modules/poll/ruleset/insertConfig.xml
new file mode 100644
index 000000000..8701ae984
--- /dev/null
+++ b/modules/poll/ruleset/insertConfig.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/modules/poll/ruleset/poll.xml b/modules/poll/ruleset/poll.xml
new file mode 100644
index 000000000..b4f91605a
--- /dev/null
+++ b/modules/poll/ruleset/poll.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/modules/poll/skins/default/form.html b/modules/poll/skins/default/form.html
index d4d05174b..44e599275 100644
--- a/modules/poll/skins/default/form.html
+++ b/modules/poll/skins/default/form.html
@@ -1,4 +1,3 @@
-
@@ -13,10 +12,13 @@