Changeset 150
- Timestamp:
- 04/29/06 01:14:42 (3 years ago)
- Files:
-
- trunk/build/manifests/jelix-dev.mn (modified) (1 diff)
- trunk/build/manifests/jelix-lib.mn (modified) (2 diffs)
- trunk/lib/jelix-modules/auth/controllers/login.jsonrpc.php (added)
- trunk/lib/jelix-modules/auth/controllers/loginsw.classic.php (added)
- trunk/lib/jelix-modules/auth/plugins/auth/auth.plugin.php (modified) (4 diffs)
- trunk/lib/jelix-plugins/magicquotes/magicquotes.plugin.php (modified) (1 diff)
- trunk/lib/jelix-www/xul/jsonrpc.js (added)
- trunk/lib/jelix-www/xul/jxulform.css (modified) (1 diff)
- trunk/lib/jelix-www/xul/jxulform.xml (modified) (4 diffs)
- trunk/lib/jelix-www/xul/test/testxulform.xul (modified) (2 diffs)
- trunk/lib/jelix-www/xul/test/testxulform_jsonrpc.php (added)
- trunk/lib/jelix/core/jCoordinator.class.php (modified) (2 diffs)
- trunk/lib/jelix/init.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/build/manifests/jelix-dev.mn
r145 r150 139 139 cd lib/jelix-www/xul/test/ 140 140 testxulform.php 141 testxulform_jsonrpc.php 141 142 testxulform.xul trunk/build/manifests/jelix-lib.mn
r146 r150 210 210 cd lib/jelix-modules/auth/controllers 211 211 login.classic.php 212 loginsw.classic.php 213 login.jsonrpc.php 212 214 cd lib/jelix-modules/auth/zones 213 215 loginform.zone.php … … 250 252 jxulform.xml 251 253 throbber.gif 254 jsonrpc.js 255 252 256 253 257 cd temp trunk/lib/jelix-modules/auth/plugins/auth/auth.plugin.php
r98 r150 17 17 */ 18 18 19 class AuthPlugin implements j Plugin {19 class AuthPlugin implements jIPlugin { 20 20 public $config; 21 21 … … 28 28 * @return null or jSelectorAct if action should change 29 29 */ 30 public function before Process($params){30 public function beforeAction ($params){ 31 31 $notLogged = false; 32 32 $badip = false; … … 50 50 if (! isset ($_SESSION['JELIX_USER'])){ 51 51 $notLogged = true; 52 $_SESSION['JELIX_USER'] = new j User();52 $_SESSION['JELIX_USER'] = new jAuthUser(); 53 53 }else{ 54 54 $notLogged = ! jAuth::isConnected(); … … 63 63 } 64 64 } 65 66 $needAuth = isset($action->pluginParams['auth.required']) ? ($action->pluginParams['auth.required']==true):$this->config['auth_required']; 65 $needAuth = isset($params['auth.required']) ? ($params['auth.required']==true):$this->config['auth_required']; 67 66 $authok = false; 68 67 trunk/lib/jelix-plugins/magicquotes/magicquotes.plugin.php
r98 r150 16 16 */ 17 17 18 class MagicQuotesPlugin implements j Plugin {18 class MagicQuotesPlugin implements jIPlugin { 19 19 20 20 /** trunk/lib/jelix-www/xul/jxulform.css
r144 r150 1 1 2 @namespace j fx url("http://jelix.org/ns/jformxul/1.0");2 @namespace jxf url("http://jelix.org/ns/jxulform/1.0"); 3 3 @namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); 4 4 @namespace html url("http://www.w3.org/1999/xhtml"); 5 5 6 j fx|submission {6 jxf|submission { 7 7 display: -moz-box; 8 8 visibility:collapse; 9 -moz-binding: url("j formxul.xml#submission");9 -moz-binding: url("jxulform.xml#submission"); 10 10 } 11 12 /*jfx|submission[format="urlencoded-post-php"] { 11 jxf|submission[format="json-rpc"] { 13 12 display: -moz-box; 14 -moz-binding: url("jformxul.xml#submission-post-php"); 13 -moz-binding: url("jxulform.xml#submission-json-rpc"); 14 } 15 /*jxf|submission[format="urlencoded-post-php"] { 16 display: -moz-box; 17 -moz-binding: url("jxulform.xml#submission-post-php"); 15 18 }*/ 16 19 17 j fx|submit {20 jxf|submit { 18 21 display: -moz-box; 19 -moz-binding: url("j formxul.xml#submit");22 -moz-binding: url("jxulform.xml#submit"); 20 23 21 24 } 22 25 23 j fx|submit[loading=true]:not([nothrobber]) {26 jxf|submit[loading=true]:not([nothrobber]) { 24 27 list-style-image:url(throbber.gif); 25 28 } trunk/lib/jelix-www/xul/jxulform.xml
r147 r150 106 106 </method> 107 107 108 <method name="_onload"> 109 <body><![CDATA[ 110 var evt = document.createEvent("HTMLEvents"); 111 evt.initEvent("result", true, false); 112 this.dispatchEvent(evt); 113 ]]> 114 </body> 115 </method> 108 116 <method name="_UIendofload"> 109 117 <body><![CDATA[ … … 119 127 </body> 120 128 </method> 129 121 130 122 131 <method name="_submit"> … … 130 139 this.httpreq.onload = function() { 131 140 this.submission._UIendofload(); 132 var evt = document.createEvent("HTMLEvents");133 141 if(this.status >=200 && this.status < 300) 134 evt.initEvent("result", true, false);142 this.submission._onload(); 135 143 else{ 144 var evt = document.createEvent("HTMLEvents"); 136 145 evt.errorCode = this.status ; 137 146 evt.initEvent("httperror", true, false); 138 } 139 this.submission.dispatchEvent(evt); 147 this.submission.dispatchEvent(evt); 148 } 149 140 150 } 141 151 this.httpreq.onerror = function() { … … 429 439 </binding> 430 440 441 <binding id="submission-json-rpc" extends="#submission"> 442 <implementation> 443 <field name="contentType">"text/plain"</field> 444 <field name="jsonResponse" /> 445 <property name="rpcmethod" 446 onget="return this.getAttribute('rpcmethod');" 447 onset="this.setAttribute('rpcmethod', val); return val;"/> 448 <method name="_prepareContent"> 449 <body><![CDATA[ 450 this.jsonReponse = null; 451 this.method="POST"; 452 var datas = { method: this.rpcmethod, params:this.formDatas, id:1 }; 453 var content= datas.toSource(); 454 return content.substring(1, content.length -1); // on enleve les () qui entourent; 455 ]]></body> 456 </method> 457 <method name="_onload"> 458 <body><![CDATA[ 459 var evt = document.createEvent("HTMLEvents"); 460 eval("this.jsonResponse="+this.httpreq.responseText); 461 var evtname; 462 if(this.jsonResponse.error ==null){ 463 evtname="result"; 464 }else{ 465 evtname="rpcerror"; 466 } 467 evt.initEvent(evtname, true, false); 468 this.dispatchEvent(evt); 469 ]]> 470 </body> 471 </method> 472 473 </implementation> 474 <handlers> 475 <handler event="rpcerror" phase="at-target"> 476 var onrpcerror = this.getAttribute("onrpcerror"); 477 if( onrpcerror){ 478 var func = new Function("event", onrpcerror+"\n return true;"); 479 var retval = func.call(this, event); 480 this.httpreq = null; 481 return retval; 482 }else{ 483 return true; 484 } 485 </handler> 486 </handlers> 487 488 </binding> 431 489 432 490 trunk/lib/jelix-www/xul/test/testxulform.xul
r144 r150 18 18 oninvalidate="alert('erreur dans les valeurs')" 19 19 /> 20 <groupbox> 21 <textbox label="toto" name="text" form="test" value="" required="true"/> 22 <textbox name="entier" form="test" value="" required="true" datatype="integer"/> 23 <textbox name="decimal" form="test" value="" required="true" datatype="float"/> 24 <textbox name="entier" form="test" value="" required="true" datatype="integer" constraint="return val>50 &&val<100;"/> 25 <checkbox name="checkbox" form="test" label="checkbox" checked="true"/> 26 <radiogroup id="radioGroup" name="radio" value="" form="test bar"> 20 21 <jxf:submission id="test2" action="testxulform_jsonrpc.php" format="json-rpc" rpcmethod="module.action" 22 onsubmit="document.getElementById('sendBox').value=this.formDatas.toSource()+'\n\net donc:\n'+this._prepareContent(); document.getElementById('receiveBox').value=''" 23 onresult="document.getElementById('receiveBox').value=this.jsonResponse.toSource()" 24 onrpcerror="alert('erreur rpc :' + this.jsonResponse.error)" 25 onhttperror="alert('erreur http :' + event.errorCode)" 26 progressmeter="progression" 27 oninvalidate="alert('erreur dans les valeurs')" 28 /> 29 30 31 32 <groupbox> 33 <hbox><label value="chaine"/><textbox label="toto" name="text" form="test test2" value="aaa" required="true"/></hbox> 34 <hbox><label value="un entier"/><textbox name="entier" form="test test2" value="123" required="true" datatype="integer"/></hbox> 35 <hbox><label value="un decimal"/><textbox name="decimal" form="test test2" value="45.65" required="true" datatype="float"/></hbox> 36 <hbox><label value="un entier entre 50 et 100"/><textbox name="entier" form="test test2" value="68" required="true" datatype="integer" constraint="return val>50 &&val<100;"/></hbox> 37 <checkbox name="checkbox" form="test test2" label="checkbox" checked="true"/> 38 <radiogroup id="radioGroup" name="radio" value="" form="test bar test2"> 27 39 <radio value="one" label="one" selected="true"/> 28 40 <radio value="two" label="two"/> … … 32 44 <hbox> 33 45 <jxf:submit form="test" label="Envoyer"/> 46 <jxf:submit form="test2" label="Envoyer en jsonrpc"/> 34 47 <progressmeter id="progression"/> 35 48 </hbox> trunk/lib/jelix/core/jCoordinator.class.php
r145 r150 97 97 $conf = array(); 98 98 } 99 include( $GLOBALS['gJConfig']->pluginsPathList[$name] );99 include( $GLOBALS['gJConfig']->pluginsPathList[$name].$name.".plugin.php"); 100 100 $class= $name.'Plugin'; 101 101 $this->plugins[strtolower($name)] = new $class($conf); … … 169 169 170 170 foreach ($this->plugins as $name => $obj){ 171 $result = $this->plugins[$name]->before Process($pluginparams);171 $result = $this->plugins[$name]->beforeAction ($pluginparams); 172 172 if($result){ 173 173 $this->action = $result; trunk/lib/jelix/init.php
r136 r150 47 47 require_once (JELIX_LIB_CORE_PATH . 'jLocale.class.php'); 48 48 require_once (JELIX_LIB_CORE_PATH . 'jIncluder.class.php'); 49 require_once (JELIX_LIB_CORE_PATH . 'jIPlugin.iface.php'); 49 50 50 51 // global variables
