4
4
use Ajax \service \AjaxTransition ;
5
5
use Ajax \service \Javascript ;
6
6
use Ajax \service \JString ;
7
- use Ubiquity \utils \base \UString ;
8
7
9
8
/**
10
9
*
@@ -178,7 +177,7 @@ public static function _correctParams($params, $ajaxParameters = []) {
178
177
return "" ;
179
178
}
180
179
if (\preg_match ("@^\{.*?\}$@ " , $ params )) {
181
- if (! isset ($ ajaxParameters ['contentType ' ]) || ! UString ::contains ('json ' , $ ajaxParameters ['contentType ' ])) {
180
+ if (! isset ($ ajaxParameters ['contentType ' ]) || ! JString ::contains ('json ' , $ ajaxParameters ['contentType ' ])) {
182
181
return '$.param( ' . $ params . ') ' ;
183
182
} else {
184
183
return 'JSON.stringify( ' . $ params . ') ' ;
@@ -582,6 +581,8 @@ public function getHref($element, $responseElement = "", $parameters = array())
582
581
$ parameters ["attr " ] = "href " ;
583
582
if (JString::isNull ($ responseElement )) {
584
583
$ responseElement = '%$(self).attr("data-target")% ' ;
584
+ } else {
585
+ $ responseElement = '%$(self).attr("data-target") || " ' . $ responseElement . '"% ' ;
585
586
}
586
587
if (! isset ($ parameters ["historize " ])) {
587
588
$ parameters ["historize " ] = true ;
@@ -597,13 +598,15 @@ public function getHref($element, $responseElement = "", $parameters = array())
597
598
* @param string $responseElement
598
599
* the target of the ajax request (data-target attribute of the element is used if responseElement is omited)
599
600
* @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 )
601
602
* @return $this
602
603
*/
603
604
public function postHref ($ element , $ responseElement = "" , $ parameters = array ()) {
604
605
$ parameters ["attr " ] = "href " ;
605
606
if (JString::isNull ($ responseElement )) {
606
607
$ responseElement = '%$(this).attr("data-target")% ' ;
608
+ } else {
609
+ $ responseElement = '%$(self).attr("data-target") || " ' . $ responseElement . '"% ' ;
607
610
}
608
611
if (! isset ($ parameters ["historize " ])) {
609
612
$ parameters ["historize " ] = true ;
@@ -698,26 +701,14 @@ private function _postForm($url, $form, $responseElement, $parameters = []) {
698
701
}
699
702
$ params = "{} " ;
700
703
$ validation = false ;
701
- $ hasFiles = false ;
702
704
\extract ($ parameters );
703
705
$ async = ($ async ) ? "true " : "false " ;
704
706
$ jsCallback = isset ($ jsCallback ) ? $ jsCallback : "" ;
705
707
$ retour = $ this ->_getAjaxUrl ($ url , $ attr );
706
708
$ 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" ;
721
712
}
722
713
$ responseElement = $ this ->_getResponseElement ($ responseElement );
723
714
$ retour .= "var self=this; \n" ;
@@ -731,7 +722,7 @@ private function _postForm($url, $form, $responseElement, $parameters = []) {
731
722
"method " => "'POST' " ,
732
723
"data " => "params " ,
733
724
"async " => $ async
734
- ] + $ ajaxParameters ;
725
+ ];
735
726
if (isset ($ headers )) {
736
727
$ ajaxParameters ["headers " ] = $ headers ;
737
728
}
0 commit comments