developer.jelix.org is not used any more and exists only for history. Post new tickets on the Github account.
developer.jelix.org n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.

Ticket #684: 684-jUrl-current-entry-point-is-not-used.diff

File 684-jUrl-current-entry-point-is-not-used.diff, 2.6 KB (added by Julien, 13 years ago)
  • lib/jelix/plugins/urls/simple/simple.urls.php

     
    33* @package     jelix
    44* @subpackage  urls_engine
    55* @author      Laurent Jouanneau
    6 * @contributor
     6* @contributor Julien Issler
    77* @copyright   2005-2008 Laurent Jouanneau
     8* @copyright   Julien Issler
    89* @link        http://www.jelix.org
    910* @licence     GNU Lesser General Public Licence see LICENCE file or http://www.gnu.org/licenses/lgpl.html
    1011*/
     
    114115     * @param string  $action
    115116     */
    116117    protected function getScript($requestType, $module=null, $action=null){
    117         global $gJConfig;
     118        global $gJConfig, $gJCoord;
    118119
    119         $script = $gJConfig->urlengine['defaultEntrypoint'];
    120 
     120        $script = substr($gJCoord->request->urlScriptName,0,-strlen($gJConfig->urlengine['entrypointExtension']));
     121       
    121122        if(count($gJConfig->simple_urlengine_entrypoints)){
    122            if($this->urlspe == null){
    123                $this->urlspe = array();
    124                foreach($gJConfig->simple_urlengine_entrypoints as $entrypoint=>$sel){
    125                  $selectors = preg_split("/[\s,]+/", $sel);
    126                  foreach($selectors as $sel2){
    127                      $this->urlspe[$sel2]= $entrypoint;
    128                  }
    129                }
    130            }
    131 
    132            if($action && isset($this->urlspe[$s1 = $module.'~'.$action.'@'.$requestType])){
     123            if($this->urlspe == null){
     124                $this->urlspe = array();
     125                foreach($gJConfig->simple_urlengine_entrypoints as $entrypoint=>$sel){
     126                    $selectors = preg_split("/[\s,]+/", $sel);
     127                    foreach($selectors as $sel2){
     128                        $this->urlspe[$sel2]= $entrypoint;
     129                    }
     130                }
     131            }
     132            if($action && isset($this->urlspe[$s1 = $module.'~'.$action.'@'.$requestType]))
    133133                $script = $this->urlspe[$s1];
    134            }elseif($module &&  isset($this->urlspe[$s2 = $module.'~*@'.$requestType])){
     134            elseif($module &&  isset($this->urlspe[$s2 = $module.'~*@'.$requestType]))
    135135                $script = $this->urlspe[$s2];
    136            }elseif( isset($this->urlspe[$s3 = '@'.$requestType])){
    137                $script = $this->urlspe[$s3];
    138            }
     136            elseif($gJCoord->request->type != $requestType && isset($this->urlspe[$s3 = '@'.$requestType]))
     137                $script = $this->urlspe[$s3];
    139138        }
    140139
    141140        return $script;