diff --git a/include/sieve/class_sieveElement_Reject.inc b/include/sieve/class_sieveElement_Reject.inc
index 6c0a6f5b6472e79db98467dc77837dfb36886bb7..398f6ed3644c511f295ca5096c8e4f42e6853ece 100644 (file)
{
var $data = "";
var $object_id = -1;
-
+ var $parent = NULL;
function save_object()
{
if(isset($_POST['reject_message_'.$this->object_id])){
$msg = stripslashes($_POST['reject_message_'.$this->object_id]);
-
$this->data = $msg;
}
}
return(array());
}
- function sieve_reject($data,$object_id)
+ function sieve_reject($data,$object_id,$parent)
{
$this->object_id = $object_id;
+ $this->parent = $parent;
+ $this->parent->add_require("reject");
/* If the given data is emtpy
* (This is the case when we add new elements in the ui)
$this->data = _("Your reject text here");
}else{
- /* Get reject text */
- $str = "";
- foreach($data['ELEMENTS'] as $node ){
- if(in_array($node['class'],array("quoted-string","text","multi-line"))){
-
- if($node['class'] == "multi-line"){
- $str .= preg_replace("/^text:[ \n\r]*/","",$node['text']);
- $str = preg_replace("/[ \n\r]*\.[ \n\r]*$/","",$str);
- }else{
- $str .= $node['text'];
- }
+ for($i = 0 ; $i < count($data['ELEMENTS']) ; $i++){
+ $tmp = sieve_get_strings($data['ELEMENTS'],$i);
+ $i = $i + $tmp['OFFSET'];
+ foreach($tmp['STRINGS'] as $str){
+ $this->data .= $str;
}
}
- $this->data = preg_replace("/\"/","",$str);
}
}
function get_sieve_script_part()
{
- return("reject ".sieve_create_strings($this->data).";\n");
+ return("reject ".sieve_create_strings($this->data).";");
}
function execute()
$smarty->assign("Multiline",$Multiline);
$object_container = $smarty->fetch(get_template_path("templates/object_container.tpl",TRUE,dirname(__FILE__)));
$object= $smarty->fetch(get_template_path("templates/element_reject.tpl",TRUE,dirname(__FILE__)));
- $str = preg_replace("/%%OBJECT_CONTENT%%/",$object,$object_container);
+ $str = preg_replace("/%%OBJECT_CONTENT%%/",addcslashes($object,"\\"),$object_container);
return($str);
}
}