diff options
Diffstat (limited to 'inc/poche/Poche.class.php')
-rw-r--r-- | inc/poche/Poche.class.php | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/inc/poche/Poche.class.php b/inc/poche/Poche.class.php index 18860ddc..1ba8e7c1 100644 --- a/inc/poche/Poche.class.php +++ b/inc/poche/Poche.class.php | |||
@@ -105,10 +105,18 @@ class Poche | |||
105 | public function themeIsInstalled() { | 105 | public function themeIsInstalled() { |
106 | # Twig is an absolute requirement for Poche to function. Abort immediately if the Composer installer hasn't been run yet | 106 | # Twig is an absolute requirement for Poche to function. Abort immediately if the Composer installer hasn't been run yet |
107 | if (! self::$canRenderTemplates) { | 107 | if (! self::$canRenderTemplates) { |
108 | $this->notInstalledMessage = 'Twig does not seem to be installed. Please initialize the Composer installation to automatically fetch dependencies. Have a look at <a href="http://inthepoche.com/?pages/Documentation">the documentation.</a>'; | 108 | $this->notInstalledMessage = 'Twig does not seem to be installed. Please initialize the Composer installation to automatically fetch dependencies. Have a look at <a href="http://doc.inthepoche.com/doku.php?id=users:begin:install">the documentation.</a>'; |
109 | 109 | ||
110 | return false; | 110 | return false; |
111 | } | 111 | } |
112 | |||
113 | if (! is_writable(CACHE)) { | ||
114 | $this->notInstalledMessage = '<h1>error</h1><p>You don\'t have write access on cache directory.</p>'; | ||
115 | |||
116 | self::$canRenderTemplates = false; | ||
117 | |||
118 | return false; | ||
119 | } | ||
112 | 120 | ||
113 | # Check if the selected theme and its requirements are present | 121 | # Check if the selected theme and its requirements are present |
114 | if (! is_dir(THEME . '/' . $this->getTheme())) { | 122 | if (! is_dir(THEME . '/' . $this->getTheme())) { |
@@ -145,16 +153,11 @@ class Poche | |||
145 | 153 | ||
146 | if (empty($configSalt)) { | 154 | if (empty($configSalt)) { |
147 | $msg = '<h1>error</h1><p>You have not yet filled in the SALT value in the config.inc.php file.</p>'; | 155 | $msg = '<h1>error</h1><p>You have not yet filled in the SALT value in the config.inc.php file.</p>'; |
148 | } else if (! is_writable(CACHE)) { | ||
149 | Tools::logm('you don\'t have write access on cache directory'); | ||
150 | $msg = '<h1>error</h1><p>You don\'t have write access on cache directory.</p>'; | ||
151 | } else if (STORAGE == 'sqlite' && ! file_exists(STORAGE_SQLITE)) { | 156 | } else if (STORAGE == 'sqlite' && ! file_exists(STORAGE_SQLITE)) { |
152 | Tools::logm('sqlite file doesn\'t exist'); | 157 | Tools::logm('sqlite file doesn\'t exist'); |
153 | $msg = '<h1>error</h1><p>sqlite file doesn\'t exist, you can find it in install folder. Copy it in /db folder.</p>'; | 158 | $msg = '<h1>error</h1><p>sqlite file doesn\'t exist, you can find it in install folder. Copy it in /db folder.</p>'; |
154 | } else if (file_exists(ROOT . '/install/update.php') && ! DEBUG_POCHE) { | ||
155 | $msg = '<h1>setup</h1><p><strong>It\'s your first time here?</strong> Please copy /install/poche.sqlite in db folder. Then, delete install folder.<br /><strong>If you have already installed poche</strong>, an update is needed <a href="install/update.php">by clicking here</a>.</p>'; | ||
156 | } else if (is_dir(ROOT . '/install') && ! DEBUG_POCHE) { | 159 | } else if (is_dir(ROOT . '/install') && ! DEBUG_POCHE) { |
157 | $msg = '<h1>setup</h1><p><strong>If you want to update your poche</strong>, you just have to delete /install folder. <br /><strong>To install your poche with sqlite</strong>, copy /install/poche.sqlite in /db and delete the folder /install. you have to delete the /install folder before using poche.</p>'; | 160 | $msg = '<h1>install folder</h1><p>you have to delete the /install folder before using poche.</p>'; |
158 | } else if (STORAGE == 'sqlite' && ! is_writable(STORAGE_SQLITE)) { | 161 | } else if (STORAGE == 'sqlite' && ! is_writable(STORAGE_SQLITE)) { |
159 | Tools::logm('you don\'t have write access on sqlite file'); | 162 | Tools::logm('you don\'t have write access on sqlite file'); |
160 | $msg = '<h1>error</h1><p>You don\'t have write access on sqlite file.</p>'; | 163 | $msg = '<h1>error</h1><p>You don\'t have write access on sqlite file.</p>'; |
@@ -255,7 +258,7 @@ class Poche | |||
255 | while (($theme = readdir($handle)) !== false) { | 258 | while (($theme = readdir($handle)) !== false) { |
256 | # Themes are stored in a directory, so all directory names are themes | 259 | # Themes are stored in a directory, so all directory names are themes |
257 | # @todo move theme installation data to database | 260 | # @todo move theme installation data to database |
258 | if (! is_dir(THEME . '/' . $theme) || in_array($theme, array('..', '.'))) { | 261 | if (! is_dir(THEME . '/' . $theme) || in_array($theme, array('..', '.', '.git'))) { |
259 | continue; | 262 | continue; |
260 | } | 263 | } |
261 | 264 | ||
@@ -330,7 +333,7 @@ class Poche | |||
330 | $msg = 'error : can\'t delete link #' . $id; | 333 | $msg = 'error : can\'t delete link #' . $id; |
331 | } | 334 | } |
332 | Tools::logm($msg); | 335 | Tools::logm($msg); |
333 | Tools::redirect('?'); | 336 | Tools::redirect(); |
334 | break; | 337 | break; |
335 | case 'toggle_fav' : | 338 | case 'toggle_fav' : |
336 | $this->store->favoriteById($id, $this->user->getId()); | 339 | $this->store->favoriteById($id, $this->user->getId()); |
@@ -381,17 +384,17 @@ class Poche | |||
381 | $tidy = tidy_parse_string($content, array('indent'=>true, 'show-body-only' => true), 'UTF8'); | 384 | $tidy = tidy_parse_string($content, array('indent'=>true, 'show-body-only' => true), 'UTF8'); |
382 | $tidy->cleanRepair(); | 385 | $tidy->cleanRepair(); |
383 | $content = $tidy->value; | 386 | $content = $tidy->value; |
387 | } | ||
384 | 388 | ||
385 | # flattr checking | 389 | # flattr checking |
386 | $flattr = new FlattrItem(); | 390 | $flattr = new FlattrItem(); |
387 | $flattr->checkItem($entry['url']); | 391 | $flattr->checkItem($entry['url'],$entry['id']); |
388 | 392 | ||
389 | $tpl_vars = array( | 393 | $tpl_vars = array( |
390 | 'entry' => $entry, | 394 | 'entry' => $entry, |
391 | 'content' => $content, | 395 | 'content' => $content, |
392 | 'flattr' => $flattr | 396 | 'flattr' => $flattr |
393 | ); | 397 | ); |
394 | } | ||
395 | } | 398 | } |
396 | else { | 399 | else { |
397 | Tools::logm('error in view call : entry is null'); | 400 | Tools::logm('error in view call : entry is null'); |
@@ -404,6 +407,7 @@ class Poche | |||
404 | 'page_links' => '', | 407 | 'page_links' => '', |
405 | 'nb_results' => '', | 408 | 'nb_results' => '', |
406 | ); | 409 | ); |
410 | |||
407 | if (count($entries) > 0) { | 411 | if (count($entries) > 0) { |
408 | $this->pagination->set_total(count($entries)); | 412 | $this->pagination->set_total(count($entries)); |
409 | $page_links = $this->pagination->page_links('?view=' . $view . '&sort=' . $_SESSION['sort'] . '&'); | 413 | $page_links = $this->pagination->page_links('?view=' . $view . '&sort=' . $_SESSION['sort'] . '&'); |