Source for file function.urljsstring.php

Documentation is available at function.urljsstring.php

  1. <?php
  2. /**
  3. * @package    jelix
  4. * @subpackage jtpl_plugin
  5. * @version    $Id$
  6. * @author     Jouanneau Laurent
  7. * @copyright  2005-2006 Jouanneau laurent
  8. * @link        http://www.jelix.org
  9. * @licence    GNU Lesser General Public Licence see LICENCE file or http://www.gnu.org/licenses/lgpl.html
  10. */
  11.  
  12. /**
  13.  * function plugin :  write the url corresponding to the given jelix action for javascript
  14.  *
  15.  * it creates a javascript string, that contains the url, with dynamic javasript parameters<br/>
  16.  * example : {urljsstring 'jxacl~admin_rightslist',array(),array('grpid'=>'idgroup','__rnd'=>'Math.random()')};<br/>
  17.  * it will produce: "index.php?module=acl&action=admin_rightslist&grpid="+idgroup+"&__rnd="+ Math.random();
  18.  * @param jTpl $tpl template engine
  19.  * @param string $selector selector action
  20.  * @param array $params parameters for the url
  21.  * @param array $jsparam array : key=name of a url parameter, value=piece of javascript code ( variable name for example)
  22.  */
  23. function jtpl_function_html_urljsstring($tpl, $selector, $params=array(), $jsparams=array())
  24. {
  25.     $search = array();
  26.     $repl =array();
  27.     foreach($jsparams as $par=>$var){
  28.         $params[$par] = '__@@'.$var.'@@__';
  29.         $search[] = urlencode($params[$par]);
  30.         $repl[] = '"+encodeURIComponent('.$var.')+"';
  31.     }
  32.  
  33.     $url = jUrl::get($selector, $params);
  34.  
  35.     echo '"'.str_replace($search, $repl, $url).'"';
  36. }
  37.  
  38. ?>

Documentation generated on Wed, 07 Sep 2011 13:46:37 +0200 by phpDocumentor 1.4.3