Skip to content

Commit 6f52f87

Browse files
committed
remove reference to UString+ preserve data-target in Href methods
1 parent 95e62e8 commit 6f52f87

File tree

1 file changed

+10
-19
lines changed

1 file changed

+10
-19
lines changed

Ajax/common/traits/JsUtilsAjaxTrait.php

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
use Ajax\service\AjaxTransition;
55
use Ajax\service\Javascript;
66
use Ajax\service\JString;
7-
use Ubiquity\utils\base\UString;
87

98
/**
109
*
@@ -178,7 +177,7 @@ public static function _correctParams($params, $ajaxParameters = []) {
178177
return "";
179178
}
180179
if (\preg_match("@^\{.*?\}$@", $params)) {
181-
if (! isset($ajaxParameters['contentType']) || ! UString::contains('json', $ajaxParameters['contentType'])) {
180+
if (! isset($ajaxParameters['contentType']) || ! JString::contains('json', $ajaxParameters['contentType'])) {
182181
return '$.param(' . $params . ')';
183182
} else {
184183
return 'JSON.stringify(' . $params . ')';
@@ -582,6 +581,8 @@ public function getHref($element, $responseElement = "", $parameters = array())
582581
$parameters["attr"] = "href";
583582
if (JString::isNull($responseElement)) {
584583
$responseElement = '%$(self).attr("data-target")%';
584+
} else {
585+
$responseElement = '%$(self).attr("data-target") || "' . $responseElement . '"%';
585586
}
586587
if (! isset($parameters["historize"])) {
587588
$parameters["historize"] = true;
@@ -597,13 +598,15 @@ public function getHref($element, $responseElement = "", $parameters = array())
597598
* @param string $responseElement
598599
* the target of the ajax request (data-target attribute of the element is used if responseElement is omited)
599600
* @param array $parameters
600-
* default : array("preventDefault"=>true,"stopPropagation"=>true,"params"=>"{}","jsCallback"=>NULL,"attr"=>"href","hasLoader"=>true,"ajaxLoader"=>null,"immediatly"=>true,"jqueryDone"=>"html","jsCondition"=>NULL,"headers"=>null,"historize"=>false)
601+
* default : array("preventDefault"=>true,"stopPropagation"=>true,"params"=>"{}","jsCallback"=>NULL,"attr"=>"href","hasLoader"=>true,"ajaxLoader"=>null,"immediatly"=>true,"jqueryDone"=>"html","jsCondition"=>NULL,"headers"=>null,"historize"=>true)
601602
* @return $this
602603
*/
603604
public function postHref($element, $responseElement = "", $parameters = array()) {
604605
$parameters["attr"] = "href";
605606
if (JString::isNull($responseElement)) {
606607
$responseElement = '%$(this).attr("data-target")%';
608+
} else {
609+
$responseElement = '%$(self).attr("data-target") || "' . $responseElement . '"%';
607610
}
608611
if (! isset($parameters["historize"])) {
609612
$parameters["historize"] = true;
@@ -698,26 +701,14 @@ private function _postForm($url, $form, $responseElement, $parameters = []) {
698701
}
699702
$params = "{}";
700703
$validation = false;
701-
$hasFiles = false;
702704
\extract($parameters);
703705
$async = ($async) ? "true" : "false";
704706
$jsCallback = isset($jsCallback) ? $jsCallback : "";
705707
$retour = $this->_getAjaxUrl($url, $attr);
706708
$retour .= "\n$('#" . $form . "').trigger('ajaxSubmit');";
707-
if (! $hasFiles) {
708-
$retour .= "\nvar params=$('#" . $form . "').serialize();\n";
709-
if (isset($params)) {
710-
$retour .= "params+='&'+" . self::_correctParams($params) . ";\n";
711-
}
712-
$ajaxParameters = [];
713-
} else {
714-
$retour .= "\nvar params=new FormData($('#" . $form . "')[0]);\n";
715-
$ajaxParameters = [
716-
'enctype' => "'multipart/form-data'",
717-
'processData' => "false",
718-
'contentType' => "false",
719-
'timeout' => 600000
720-
];
709+
$retour .= "\nvar params=$('#" . $form . "').serialize();\n";
710+
if (isset($params)) {
711+
$retour .= "params+='&'+" . self::_correctParams($params) . ";\n";
721712
}
722713
$responseElement = $this->_getResponseElement($responseElement);
723714
$retour .= "var self=this;\n";
@@ -731,7 +722,7 @@ private function _postForm($url, $form, $responseElement, $parameters = []) {
731722
"method" => "'POST'",
732723
"data" => "params",
733724
"async" => $async
734-
] + $ajaxParameters;
725+
];
735726
if (isset($headers)) {
736727
$ajaxParameters["headers"] = $headers;
737728
}

0 commit comments

Comments
 (0)