/** * hook plugin to get multisite tables names.<br> * this will get module's tables that need to be copy while create new site.<br> * attention! you must call this method everytime when you want to access multisite tables list. * * @todo [fuelstart][multisite][plug] get module's multisite tables plug. */ public function hookGetMultisiteTables() { $plugin = new \Library\Plugins(); if ($plugin->hasFilter('SitesGetModulesMultisiteTables') !== false) { $plugin->doFilter('SitesGetModulesMultisiteTables'); if (is_array($plugin->original_data) && !empty($plugin->original_data)) { foreach ($plugin->original_data as $table) { if (!empty($table)) { if (is_array($table) && !\Arr::is_multi($table)) { $this->multisite_tables = array_merge($this->multisite_tables, $table); } elseif (is_string($table)) { $this->multisite_tables = array_merge($this->multisite_tables, [$table]); } } } unset($each_cfg); $this->multisite_tables = \Arr::unique($this->multisite_tables); } } unset($plugin); }
/** * hash password * * @link https://github.com/rchouinard/phpass phpass document * @param string $password * @return string */ public function hashPassword($password = '') { // @todo [fuelstart][account][plug] hash password plug. $plugin = new \Library\Plugins(); if ($plugin->hasFilter('AccountHashPassword') !== false) { $returned_hash_password = $plugin->doFilter('AccountHashPassword', $password); if ($returned_hash_password != null) { unset($plugin); return $returned_hash_password; } } unset($plugin, $returned_hash_password); include_once APPPATH . DS . 'vendor' . DS . 'phpass' . DS . 'PasswordHash.php'; $PasswordHash = new PasswordHash($this->password_hash_level, false); return $PasswordHash->HashPassword($password); }
/** * Generate title by set title name and name separator position. * * @param string|array $title Title name. This can be array that the title will be generate respectively. * @param string $name_position Position of name to generate. if first, the site name will come first then title name. example: site name | title 1 | title 2 * @return string Generated title. */ public function generateTitle($title, $name_position = 'last') { $cfg_values = array('site_name', 'page_title_separator'); $config = Model_Config::getvalues($cfg_values); unset($cfg_values); // @todo [fuelstart][basecontroller][plug] generate title plug. $plugin = new \Library\Plugins(); if ($plugin->hasFilter('BaseControllerGenTitle')) { $generated_title = $plugin->doFilter('BaseControllerGenTitle', $title, $name_position, $config); if (is_string($generated_title) && ($generated_title != null || !empty($generated_title))) { return $generated_title; } unset($generated_title); } unset($plugin); if ($name_position == 'first') { $output = $config['site_name']['value']; $output .= $config['page_title_separator']['value']; } else { $output = ''; } if (is_array($title)) { if ($name_position == 'last') { $title = array_reverse($title); } foreach ($title as $a_title) { $output .= $a_title; if ($a_title != end($title)) { $output .= $config['page_title_separator']['value']; } } } else { $output .= $title; } if ($name_position == 'last') { $output .= $config['page_title_separator']['value']; $output .= $config['site_name']['value']; } unset($a_title, $config); return $output; }