Verzeichnisstruktur phpBB-3.1.0


Veröffentlicht
27.10.2014

So funktioniert es


Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück

Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis.
Auf den Verzeichnisnamen klicken, dies zeigt nur das Verzeichnis mit Inhalt an

(Beispiel Datei-Icons)

Auf das Icon klicken um den Quellcode anzuzeigen

tidy_search.php

Zuletzt modifiziert: 09.10.2024, 12:55 - Dateigröße: 2.31 KiB


01  <?php
02  /**
03  *
04  * This file is part of the phpBB Forum Software package.
05  *
06  * @copyright (c) phpBB Limited <https://www.phpbb.com>
07  * @license GNU General Public License, version 2 (GPL-2.0)
08  *
09  * For full copyright and license information, please see
10  * the docs/CREDITS.txt file.
11  *
12  */
13   
14  namespace phpbb\cron\task\core;
15   
16  /**
17  * Tidy search cron task.
18  *
19  * Will only run when the currently selected search backend supports tidying.
20  */
21  class tidy_search extends \phpbb\cron\task\base
22  {
23      protected $phpbb_root_path;
24      protected $php_ext;
25      protected $auth;
26      protected $config;
27      protected $db;
28      protected $user;
29   
30      /**
31      * Constructor.
32      *
33      * @param string $phpbb_root_path The root path
34      * @param string $php_ext The PHP file extension
35      * @param \phpbb\auth\auth $auth The auth
36      * @param \phpbb\config\config $config The config
37      * @param \phpbb\db\driver\driver_interface $db The db connection
38      * @param \phpbb\user $user The user
39      */
40      public function __construct($phpbb_root_path, $php_ext, \phpbb\auth\auth $auth, \phpbb\config\config $config, \phpbb\db\driver\driver_interface $db, \phpbb\user $user)
41      {
42          $this->phpbb_root_path = $phpbb_root_path;
43          $this->php_ext = $php_ext;
44          $this->auth = $auth;
45          $this->config = $config;
46          $this->db = $db;
47          $this->user = $user;
48      }
49   
50      /**
51      * Runs this cron task.
52      *
53      * @return null
54      */
55      public function run()
56      {
57          $search_type = $this->config['search_type'];
58   
59          // We do some additional checks in the module to ensure it can actually be utilised
60          $error = false;
61          $search = new $search_type($error, $this->phpbb_root_path, $this->php_ext, $this->auth, $this->config, $this->db, $this->user);
62   
63          if (!$error)
64          {
65              $search->tidy();
66          }
67      }
68   
69      /**
70      * Returns whether this cron task can run, given current board configuration.
71      *
72      * Search cron task is runnable in all normal use. It may not be
73      * runnable if the search backend implementation selected in board
74      * configuration does not exist.
75      *
76      * @return bool
77      */
78      public function is_runnable()
79      {
80          return class_exists($this->config['search_type']);
81      }
82   
83      /**
84      * Returns whether this cron task should run now, because enough time
85      * has passed since it was last run.
86      *
87      * The interval between search tidying is specified in board
88      * configuration.
89      *
90      * @return bool
91      */
92      public function should_run()
93      {
94          return $this->config['search_last_gc'] < time() - $this->config['search_gc'];
95      }
96  }
97