Changeset 0ee680ad0e905220841bba9a9b62ebae5a380115

Show
Ignore:
Timestamp:
01/28/12 20:20:26 (4 months ago)
Author:
Xemle <xemle@phtagr.org>
Children:
b243ec7e35d1927db9132cdb0c1f9473054612d2
Parents:
1286d8885552a162d63c77c03b988eba30d8eb8e
git-committer:
Xemle <xemle@phtagr.org> / 2012-01-28T20:20:26Z+0100
Message:

Fix paging of explorer

Files:
6 modified

Legend:

Unmodified
Added
Removed
  • Controller/Component/SearchComponent.php

    r3605ef4 r0ee680a  
    184184  } 
    185185 
     186  function decode($input) { 
     187    $out = ''; 
     188    $input = (string)$input; 
     189    $len = strlen($input); 
     190    for ($i = 0; $i < $len; $i++) { 
     191      $c = substr($input, $i, 1); 
     192      if ($c == '=') { 
     193        if ($i + 2 >= $len) { 
     194          break; 
     195        } 
     196        $c1 = substr($input, $i + 1, 1); 
     197        $c2 = substr($input, $i + 2, 1); 
     198        $c = $this->_dechex($c1, $c2); 
     199        if ($c !== false) { 
     200          $out .= $c; 
     201        } 
     202        $i += 2; 
     203      } else { 
     204        $out .= $c; 
     205      } 
     206    } 
     207    return $out; 
     208  } 
     209 
    186210  function __call($name, $args) { 
    187211    if (!preg_match('/^(get|set|add|del|delete)(.*)$/', $name, $matches)) { 
     
    454478 
    455479    if ($count == 0) { 
    456       $this->controller->params['search'] = $params; 
     480      $this->controller->request->params['search'] = $params; 
    457481      return array(); 
    458482    } 
     
    479503     
    480504    // Set data for search helper 
    481     $this->controller->params['search'] = $params; 
     505    $this->controller->request->params['search'] = $params; 
    482506 
    483507    return $data; 
     
    498522      'data' => $this->getParams() 
    499523      ); 
    500     $this->controller->params['search'] = $params; 
     524    $this->controller->request->params['search'] = $params; 
    501525  } 
    502526 
     
    536560        Logger::verbose("Deny access to media $id"); 
    537561      } 
    538       $this->controller->params['search'] = $params; 
     562      $this->controller->request->params['search'] = $params; 
    539563      return array(); 
    540564    } 
     
    590614 
    591615    // Set data for search helper 
    592     $this->controller->params['search'] = $params; 
     616    $this->controller->request->params['search'] = $params; 
    593617  
    594618    return $data; 
  • Controller/ExplorerController.php

    ree4c2b7f r0ee680a  
    3737 
    3838    parent::beforeFilter(); 
    39     $this->crumbs = $this->Search->urlToCrumbs($this->params['url']['url'], 2); 
     39    $this->crumbs = $this->Search->urlToCrumbs($this->request->url, 2); 
    4040  } 
    4141 
     
    5858    } 
    5959    $this->set('crumbs', $this->crumbs); 
    60     $this->params['crumbs'] = $this->crumbs; 
     60    $this->request->params['crumbs'] = $this->crumbs; 
    6161    $this->Feed->add('/explorer/media/' . join('/', $this->Search->encodeCrumbs($this->crumbs)), array('title' => __('Slideshow Media RSS'), 'id' => 'slideshow')); 
    6262    parent::beforeRender(); 
  • Controller/UsersController.php

    ree4c2b7f r0ee680a  
    2222 */ 
    2323 
     24App::uses('Folder', 'Utility'); 
     25 
    2426class UsersController extends AppController 
    2527{ 
  • Model/MyFile.php

    ree4c2b7f r0ee680a  
    5555      $path = Folder::slashTerm(dirname($filename)); 
    5656      $file = basename($filename); 
    57       $size = filesize($filename); 
     57      if (is_readable($filename)) { 
     58        $size = filesize($filename); 
     59      } else { 
     60        $size = 0; 
     61        Logger::info("Could not read file: " . $filename); 
     62      } 
    5863      $type = $this->_getTypeFromFilename($filename); 
    5964    } 
     
    6469        'file' => $file, 
    6570        'size' => $size, 
    66         'time' => date("Y-m-d H:i:s", filemtime($filename)), 
     71        'time' => date("Y-m-d H:i:s"), 
    6772        'flag' => $flag, 
    6873        'type' => $type, 
     
    7176        ) 
    7277      ); 
     78    if (is_readable($filename)) { 
     79      $new['File']['time'] = date("Y-m-d H:i:s", filemtime($filename)); 
     80    } 
    7381    $new = parent::create($new, true); 
    7482 
  • View/Helper/NavigatorHelper.php

    r0fb8d7c r0ee680a  
    3030 
    3131  function getPageCount() { 
    32     if (isset($this->params['search'])) { 
    33       return $this->params['search']['pageCount']; 
     32    if (isset($this->request->params['search'])) { 
     33      return $this->request->params['search']['pageCount']; 
    3434    } 
    3535    return 0; 
     
    3737 
    3838  function getCurrentPage() { 
    39     if (isset($this->params['search']['page'])) { 
    40       return $this->params['search']['page']; 
     39    if (isset($this->request->params['search']['page'])) { 
     40      return $this->request->params['search']['page']; 
    4141    } 
    4242    return 0; 
     
    4444 
    4545  function hasPages() { 
    46     return (isset($this->params['search']) && $this->params['search']['pageCount'] > 1); 
     46    return (isset($this->request->params['search']) && $this->request->params['search']['pageCount'] > 1); 
    4747  } 
    4848 
    4949  function hasPrev() { 
    50     if (isset($this->params['search']) &&  
    51       $this->params['search']['prevPage']) { 
     50    if (isset($this->request->params['search']) &&  
     51      $this->request->params['search']['prevPage']) { 
    5252      return true; 
    5353    } 
     
    5656 
    5757  function prev() { 
    58     if (!isset($this->params['search']) ||  
    59       !$this->params['search']['prevPage']) { 
     58    if (!isset($this->request->params['search']) ||  
     59      !$this->request->params['search']['prevPage']) { 
    6060      return false; 
    6161    } 
    62     $prev = $this->params['search']['page'] - 1; 
    63     $crumbs = $this->params['crumbs']; 
     62    $prev = $this->request->params['search']['page'] - 1; 
     63    $crumbs = $this->request->params['crumbs']; 
    6464    $link = $this->Breadcrumb->crumbUrl($this->Breadcrumb->replace($crumbs, 'page', $prev)); 
    6565    return $this->Html->link(__('prev'), $link, array('class' => 'prev')); 
     
    6767 
    6868  function numbers() { 
    69     if (!isset($this->params['search'])) { 
     69    if (!isset($this->request->params['search'])) { 
    7070      return; 
    7171    } 
    7272 
    73     $params = $this->params['search']; 
    74     $crumbs = $this->params['crumbs']; 
     73    $params = $this->request->params['search']; 
     74    $crumbs = $this->request->params['crumbs']; 
    7575    $output = ''; 
    7676     
     
    9898 
    9999  function hasNext() { 
    100     if (isset($this->params['search']) &&  
    101       $this->params['search']['nextPage']) { 
     100    if (isset($this->request->params['search']) &&  
     101      $this->request->params['search']['nextPage']) { 
    102102      return true; 
    103103    } 
     
    106106 
    107107  function next() { 
    108     if (!isset($this->params['search']) ||  
    109       !$this->params['search']['nextPage']) { 
     108    if (!isset($this->request->params['search']) ||  
     109      !$this->request->params['search']['nextPage']) { 
    110110      return false; 
    111111    } 
    112     $next = $this->params['search']['page'] + 1; 
    113     $crumbs = $this->params['crumbs']; 
     112    $next = $this->request->params['search']['page'] + 1; 
     113    $crumbs = $this->request->params['crumbs']; 
    114114    $link = $this->Breadcrumb->crumbUrl($this->Breadcrumb->replace($crumbs, 'page', $next)); 
    115115    return $this->Html->link(__('next'), $link, array('class' => 'next')); 
     
    117117 
    118118  function hasPrevMedia() { 
    119     return !empty($this->params['search']['prevMedia']); 
     119    return !empty($this->request->params['search']['prevMedia']); 
    120120  } 
    121121 
    122122  function prevMedia() { 
    123     if (!isset($this->params['search']) || 
    124       !$this->params['search']['prevMedia']) { 
     123    if (!isset($this->request->params['search']) || 
     124      !$this->request->params['search']['prevMedia']) { 
    125125      return; 
    126126    } 
    127     $params = $this->params['search']; 
    128     $crumbs = $this->params['crumbs']; 
     127    $params = $this->request->params['search']; 
     128    $crumbs = $this->request->params['crumbs']; 
    129129    $pos = $this->Search->getPos(1) - 1; 
    130130    $page = ceil($pos / $this->Search->getShow()); 
    131131    $baseUri = '/images/view/'.$params['prevMedia'] . '/'; 
    132     $crumbs = $this->params['crumbs']; 
     132    $crumbs = $this->request->params['crumbs']; 
    133133    $crumbParams = $this->Breadcrumb->params($this->Breadcrumb->replace($this->Breadcrumb->replace($crumbs, 'page', $page), 'pos', $pos)); 
    134134    $link = $baseUri . $crumbParams; 
     
    137137 
    138138  function up() { 
    139     if (!isset($this->params['search'])) { 
     139    if (!isset($this->request->params['search'])) { 
    140140      return; 
    141141    } 
    142     $params = $this->params['search']; 
    143     $link = $this->Breadcrumb->crumbUrl($this->params['crumbs'], false, array('pos')); 
     142    $params = $this->request->params['search']; 
     143    $link = $this->Breadcrumb->crumbUrl($this->request->params['crumbs'], false, array('pos')); 
    144144    $link .= '#media-'.$params['current']; 
    145145    return $this->Html->link(__('overview'), $link, array('class' => 'up')); 
     
    147147 
    148148  function hasNextMedia() { 
    149     return !empty($this->params['search']['nextMedia']); 
     149    return !empty($this->request->params['search']['nextMedia']); 
    150150  } 
    151151 
    152152  function getNextMediaUrl() { 
    153     $params = $this->params['search']; 
     153    $params = $this->request->params['search']; 
    154154    $pos = $this->Search->getPos(1) + 1; 
    155155    $page = ceil($pos / $this->Search->getShow()); 
    156156    $baseUri = '/images/view/'.$params['nextMedia'] . '/'; 
    157     $crumbs = $this->params['crumbs']; 
     157    $crumbs = $this->request->params['crumbs']; 
    158158    $crumbParams = $this->Breadcrumb->params($this->Breadcrumb->replace($this->Breadcrumb->replace($crumbs, 'page', $page), 'pos', $pos)); 
    159159    $link = $baseUri . $crumbParams; 
     
    162162 
    163163  function nextMedia() { 
    164     if (!isset($this->params['search']) ||  
    165       !$this->params['search']['nextMedia']) { 
     164    if (!isset($this->request->params['search']) ||  
     165      !$this->request->params['search']['nextMedia']) { 
    166166      return; 
    167167    } 
  • View/Helper/SearchHelper.php

    ree4c2b7f r0ee680a  
    4949   * this function. All previous changes are overritten */ 
    5050  function initialize($config = array()) { 
    51     if (isset($this->params['search'])) { 
    52       $params = $this->params['search']; 
     51    if (isset($this->request->params['search'])) { 
     52      $params = $this->request->params['search']; 
    5353      $this->_data = $params['data']; 
    5454      $this->config['baseUri'] = $params['baseUri'];