Inheritance: extends CI_Controller
Beispiel #1
0
 /**
  * Comprobar el método utilizado para enviar un formulario.
  *
  * @param string $method con el método utilizado.
  */
 public static function checkReferer($method)
 {
     if ($_SERVER['REQUEST_METHOD'] !== strtoupper($method) || !isset($_SERVER['HTTP_REFERER']) || !preg_match('#' . Init::$WEBROOT . '/.*$#', $_SERVER['HTTP_REFERER'])) {
         Init::initError(_('No es posible acceder directamente a este archivo'));
         exit;
     }
 }
Beispiel #2
0
 /**
  * @param $controller
  *
  * Retorna la funcion de un controlador si este existe
  */
 public static function load($request)
 {
     $path = './app/controller/';
     $url = explode('/', $request['url']);
     self::check_url($url);
     self::$request = new JsonResponse();
     $file = self::$request->get_controller($url);
     $action = self::$request->get_action($url);
     $params = self::$request->get_params($url);
     $controller = $file . 'Controller';
     if (file_exists($path . $file . '.php')) {
         $GLOBALS['connection'] = self::connection();
         require_once $path . $file . '.php';
         $obj = new $controller();
         if (method_exists($obj, $action)) {
             try {
                 $_REQUEST = array();
                 $response = call_user_func_array([$obj, $action], [$params]);
             } catch (Exception $e) {
                 self::$request->default_response();
             }
         } else {
             self::$request->default_response();
         }
     } else {
         self::$request->default_response();
     }
 }
Beispiel #3
0
 public function model($index)
 {
     $path = Init::loader('getPath') . DS . 'models' . DS . $index . '.model.php';
     if (!file_exists($path)) {
         throw new Exception('Model ' . $index . ' not exists');
     }
     require_once $path;
     return new $index();
 }
    public static function picker()
    {
        global $activeLang;
        //pr($activeLang);
        if (count($activeLang) > 1) {
            $get = Init::returnGet();
            global $init;
            $in = array();
            global $mainClass;
            //            global $pageClass;
            //            global $usePage;
            foreach ($init->params as $ll) {
                if ($ll == $mainClass) {
                    continue;
                }
                //                if($usePage && $ll == $pageClass)
                //                    continue;
                $in[] = $ll;
            }
            $imp = implode("/", $in);
            ?>
<select id="gantibhs" class="form-control" onchange="gantiLang();">
    <?php 
            foreach ($activeLang as $lng) {
                ?>
    <option value="<?php 
                echo $lng;
                ?>
" <?php 
                if (Lang::getLang() == $lng) {
                    echo "selected";
                }
                ?>
><?php 
                echo strtoupper($lng);
                ?>
</option>
    <?php 
            }
            ?>
</select>
<script>
function gantiLang(){
    var slc = $('#gantibhs').val();
    document.location = '<?php 
            echo _SPPATH;
            ?>
'+slc+'/<?php 
            echo $imp . $get;
            ?>
';
}
</script>
<?php 
        }
    }
Beispiel #5
0
function gorumMain()
{
    global $gorumroll;
    $init = Init::createObject();
    $init->initializeSystemSettings();
    $gorumroll->processMethod();
    if (!$gorumroll->isAction()) {
        $init->getTemplate();
        $init->showApp();
    }
}
Beispiel #6
0
 /**
  * Inicia el proceso de actualización de la BBDD.
  *
  * @param int $version con la versión de la BBDD actual
  * @returns bool
  */
 public static function doUpgrade($version)
 {
     foreach (self::$_dbUpgrade as $upgradeVersion) {
         if ($version < $upgradeVersion) {
             if (self::upgradeTo($upgradeVersion) === false) {
                 Init::initError(_('Error al aplicar la actualización de la Base de Datos'), _('Compruebe el registro de eventos para más detalles') . '. <a href="index.php?nodbupgrade=1">' . _('Acceder') . '</a>');
             }
             if (self::auxUpgrades($upgradeVersion) === false) {
                 Init::initError(_('Error al aplicar la actualización auxiliar'), _('Compruebe el registro de eventos para más detalles') . '. <a href="index.php?nodbupgrade=1">' . _('Acceder') . '</a>');
             }
         }
     }
     return true;
 }
Beispiel #7
0
    public static function init()
    {
        $dirname = getcwd();
        echo '
            *****************************************

                          欢迎使用初始化系统
            使用本系统之前你应该先阅读vitex部署相关的内容

            *****************************************
        ';
        echo '请输入生成代码的路径,即webroot文件夹所在路径(' . $dirname . '):';
        $_dirname = fread(STDIN, 200);
        if (trim($_dirname)) {
            $dirname = trim($_dirname);
        }
        echo $dirname . PHP_EOL;
        echo '请输入应用名字,此名字应该是你的应用名且为命名空间的名字(app):';
        $appname = 'app';
        $_appname = fread(STDIN, 200);
        if (trim($_appname)) {
            $appname = trim($_appname);
        }
        echo $appname . PHP_EOL;
        echo '请输入应用的入口PHP文件名(index.php):';
        $inname = 'index.php';
        $_inname = fread(STDIN, 200);
        if (trim($_appname)) {
            $inname = trim($_inname);
        }
        echo $inname . PHP_EOL;
        echo '按回车确认';
        fread(STDIN, 1);
        $init = new Init($dirname, $appname, $inname);
        $init->create();
    }
Beispiel #8
0
 public function before()
 {
     // load the template
     $this->template = \View::factory('template');
     // init CRUD controller
     if (\Request::active()->controller == 'crud') {
         // redirect to crud/error if errors were found
         if (!Init::all() and \Request::active()->action != 'error') {
             \Response::redirect('crude/crud/error');
         }
     }
     $this->template->set('modal_msg', \Session::get_flash('modal_msg'));
     $this->template->set('site_name', $this->site_name);
     return parent::before();
 }
Beispiel #9
0
 public function __construct($from = '')
 {
     # CHECK INIT STATUS
     Init::genosage();
     # SET THE GLOBAL VARIABLE
     $this->load_define();
     # ROUTER ANALYZE
     if (in_array($from, array('CHANNEL', 'APP', 'PAGE'), TRUE)) {
         $this->_dispatcher = $this->core('Router')->analyze();
         if (isset($this->_dispatcher['parameter'])) {
             foreach ($this->_dispatcher['parameter'] as $key => $value) {
                 $this->v('v.' . $key, $value);
             }
         }
     }
 }
Beispiel #10
0
 public static function cache($cache_type = 'memcache', $cache_id = 0)
 {
     if (empty($dbConfig)) {
         $cacheConfig = self::$Config[$cache_type][$cache_id];
     }
     if (empty(self::$cache)) {
         switch ($cache_type) {
             case 'memcache':
                 return self::$cache = new Cache_McaChe($cacheConfig);
                 break;
             case 'redis':
                 return self::$cache = new Redis($cacheConfig);
                 break;
         }
     }
     return self::$cache;
 }
Beispiel #11
0
 public static function Prepare($config)
 {
     Define('DS', DIRECTORY_SEPARATOR);
     Define('FRAMEWORK_DIR', dirname(dirname(__FILE__)) . "/cherryphp");
     Define('APP_DIR', dirname(dirname(__FILE__)));
     spl_autoload_register(array('Cherry', 'LoadClass'));
     Init::$Router = (require APP_DIR . DS . 'router.php');
     if (!empty($config)) {
         Init::$Config = (require $config . "config.php");
     } else {
         Init::$Config = (require APP_DIR . DS . 'config.php');
     }
     foreach (Init::$Config['define'] as $k => $v) {
         Define($k, Init::$Config['define'][$k]);
     }
     #spl_autoload_register(array('Cherry','appClass'));
     return new self();
 }
Beispiel #12
0
 /**
  * 数据库工厂方法
  */
 public static function getDatabase($id = 'master')
 {
     //读取数据库配置文件
     if ($id == 'master') {
         $db_conf = Init::getInstance()->config['DataBase']['master'];
     } else {
         $db_conf = Init::getInstance()->config['DataBase']['slave'];
     }
     $key = 'database_' . $id;
     //获取数据库对象
     $db = Register::get($key);
     if (!$db) {
         $db = new MySQLi();
         $db->connect($db_conf['host'], $db_conf['user'], $db_conf['password'], $db_conf['dbname']);
         Register::set($key, $db);
     }
     return $db;
 }
Beispiel #13
0
 public function __construct()
 {
     if (is_object(self::$instance)) {
         $this->dbh = self::$instance->dbh;
         return null;
     }
     $config = Init::config('database');
     $dsn = $config['driver'] . ':host=' . $config['hostname'] . ';dbname=' . $config['database'] . ';charset=' . $config['charset'];
     try {
         $this->dbh = new PDO($dsn, $config['username'], $config['password']);
         $this->dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
         $this->dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
         //$this->dbh->query('SET NAMES utf8');
     } catch (PDOException $exc) {
         echo $exc->getMessage();
     }
     self::$instance = $this;
 }
Beispiel #14
0
<?php

Init::start();
try {
    Loader::registerAutoload();
    Request::instance()->execute();
} catch (SysException $e) {
    Util::ShowMessage('', "/error.html");
    echo $e;
} catch (Exception $e) {
    Util::ShowMessage('', "/error.html");
    echo $e->getMessage();
}
Beispiel #15
0
<?php

$start = microtime(true);
error_reporting(E_ALL);
define('__AUTH', 'Until Die');
if (defined('DIRECTORY_SEPARATOR')) {
    define('DS', DIRECTORY_SEPARATOR);
} else {
    define('DS', '/');
}
if (is_callable('realpath')) {
    define('BASE_PATH', realpath(dirname(__FILE__)));
} else {
    define('BASE_PATH', dirname(__FILE__));
}
define('SYS_PATH', BASE_PATH . DS . 'system');
define('APP_PATH', BASE_PATH . DS . 'application');
require SYS_PATH . DS . 'initialize.php';
try {
    Init::getInstance();
    Init::Router('loader');
} catch (Exception $exc) {
    include SYS_PATH . DS . 'error.php';
}
$end = microtime(true);
echo '<p sytle="margin: auto 20px;">' . round($end - $start, 4) . ' Sec</p>';
Beispiel #16
0
<?php

/**
 * Created by PhpStorm.
 * User: abelolguinchavez
 * Date: 16/08/15
 * Time: 1:54
 */
require_once 'config/Init.php';
Init::load($_REQUEST);
        $files2Load[] = $file->getPathname();
    }
}
sort($files2Load);
//pr($files2Load);
foreach ($files2Load as $file) {
    //penambahan mold
    if (strpos($file, 'BPlugin') && (strpos($file, 'Mold') || strpos($file, 'functions.php'))) {
        continue;
    }
    //echo $file;echo "<br>";
    require_once $file;
}
// include db setting, web setting, and paths
require_once 'include/access.php';
$init = new Init($mainClass, $DbSetting, $WebSetting, $timezone, $js, $css, $nameSpaceForApps);
//starting the session
session_start();
//pr($WebSetting);
//Init Languange
$lang = new Lang($WebSetting['lang']);
$lang->activateLangSession();
$lang->activateGetSetLang();
//pr($lang);
//pr($_SESSION);
$selected_lang = Lang::getLang();
if (!isset($selected_lang) || $selected_lang == "" || is_object($selected_lang)) {
    $selected_lang = "en";
}
//pr($selected_lang);
//echo "lang/".strtolower($selected_lang).".php";
Beispiel #18
0
 public function __construct()
 {
     parent::__construct();
 }
 public function activateGetSetLang()
 {
     if (isset($_GET['setlang'])) {
         $_SESSION['lang'] = $_GET['setlang'];
         //lempar
         global $init;
         if (count($init->activeLang) > 0) {
             if (in_array($init->params[0], $init->activeLang)) {
                 unset($init->params[0]);
                 $init->params = array_values($init->params);
             }
             $selected_lang = Lang::getLang();
             $imp = implode("/", $init->params);
             $get = \Init::returnGet();
             header("Location:" . _SPPATH . $selected_lang . "/" . $imp . $get);
             exit;
         }
     } else {
         global $init;
         if (count($init->activeLang) > 0) {
             if (in_array($init->params[0], $init->activeLang)) {
                 $_SESSION['lang'] = $init->params[0];
             }
         }
     }
 }
 * @author  Victor Freitas
 * @subpackage Settings Controller
 * @version 2.0
 */
namespace JM\Share_Buttons;

// Avoid that files are directly loaded
if (!function_exists('add_action')) {
    exit(0);
}
//View
Init::uses('settings', 'View');
Init::uses('settings-extra', 'View');
Init::uses('settings-faq', 'View');
//Model
Init::uses('setting', 'Model');
class Settings_Controller
{
    /**
     * Initialize the plugin by setting localization, filters, and administration functions.
     *
     * @since 1.2
     */
    public function __construct()
    {
        add_filter('plugin_action_links_' . Utils_Helper::base_name(), array(&$this, 'plugin_link'));
        add_action('wp_enqueue_scripts', array(&$this, 'scripts'));
        add_action('admin_enqueue_scripts', array(&$this, 'admin_scripts'));
        add_action('admin_menu', array(&$this, 'menu_page'));
        add_action('wp_ajax_nopriv_get_plus_google', array('JM\\Share_Buttons\\Ajax_Controller', 'get_plus_google'));
        add_action('wp_ajax_get_plus_google', array('JM\\Share_Buttons\\Ajax_Controller', 'get_plus_google'));
Beispiel #21
0
<?php

if (!isset($argv[1])) {
    exit_with_error('input file not specified in first arguement');
}
$init = new Init($argv[1], dirname(__DIR__) . '/InitializerExtension.swift');
$init->create_init_file();
class Init
{
    private $json;
    private $jsonFileLocation;
    private $out;
    public function __construct($jsonFileLocation, $outputFile)
    {
        $this->jsonFileLocation = $jsonFileLocation;
        $this->json = json_decode(file_get_contents(realpath($jsonFileLocation)), true);
        $this->out = fopen($outputFile, 'w');
        if (!is_array($this->json)) {
            fclose($this->out);
            exit_with_error('invalid json file');
        }
        if ($this->out === false) {
            exit_with_error('could not open output file ./InitializerExtension.swift');
        }
    }
    /**
     * Can only call create_init_file() once per lifecycle
     */
    public function create_init_file()
    {
        $this->print('// this file is auto-generated, do not edit it.', 0);
Beispiel #22
0
<?php

require_once './common.php';
class Init extends Common
{
    public function index()
    {
        $this->check();
        // 获取版本升级信息
        $versionUpgrade = $this->getversionUpgrade($this->app['id']);
        if ($versionUpgrade) {
            if ($versionUpgrade['type'] && $this->params['version_id'] < $versionUpgrade['version_id']) {
                $versionUpgrade['is_upload'] = $versionUpgrade['type'];
            } else {
                $versionUpgrade['is_upload'] = 0;
            }
            return Response::show(200, '版本升级信息获取成功', $versionUpgrade);
        } else {
            return Response::show(400, '版本升级信息获取失败');
        }
    }
}
$init = new Init();
$init->index();
 * @version 1.4.0
 */
namespace JM\Share_Buttons;

// Avoid that files are directly loaded
if (!function_exists('add_action')) {
    exit(0);
}
//Utils
Init::uses('utils', 'Helper');
//Controller
Init::uses('ajax', 'Controller');
Init::uses('shares', 'Controller');
Init::uses('options', 'Controller');
Init::uses('sharing-reports', 'Controller');
Init::uses('settings', 'Controller');
class Core
{
    /**
     * Intance class share report controller
     *
     * @since 1.0
     * @var Object
     */
    private static $report;
    /**
     * Initialize the plugin by setting localization, filters, and administration functions.
     *
     * @since 1.2
     */
    public function __construct()
Beispiel #24
0
 /**
  * Запускает на выполнение экшен
  * Может запускаться рекурсивно если в одном экшене стоит переадресация на другой
  *
  */
 public function ExecAction()
 {
     $this->DefineActionClass();
     /**
      * Сначала запускаем инициализирующий экшен
      */
     require_once Config::Get('path.root.server') . '/classes/actions/Init.class.php';
     $oActionInit = new Init($this->oEngine);
     $oActionInit->InitAction();
     $sActionClass = $this->DefineActionClass();
     /**
      * Определяем наличие делегата экшена
      */
     if ($aChain = $this->Plugin_GetDelegationChain('action', $sActionClass)) {
         if (!empty($aChain)) {
             $sActionClass = $aChain[0];
         }
     }
     self::$sActionClass = $sActionClass;
     /**
      * Если класс экешна начинается с Plugin*_, значит необходимо загрузить объект из указанного плагина
      */
     if (!preg_match('/^Plugin([\\w]+)_Action([\\w]+)$/i', $sActionClass, $aMatches)) {
         require_once Config::Get('path.root.server') . '/classes/actions/' . $sActionClass . '.class.php';
     } else {
         require_once Config::Get('path.root.server') . '/plugins/' . strtolower($aMatches[1]) . '/classes/actions/Action' . ucfirst($aMatches[2]) . '.class.php';
     }
     $sClassName = $sActionClass;
     $this->oAction = new $sClassName($this->oEngine, self::$sAction);
     /**
      * Инициализируем экшен
      */
     $this->Hook_Run("action_init_" . strtolower($sActionClass) . "_before");
     $sInitResult = $this->oAction->Init();
     $this->Hook_Run("action_init_" . strtolower($sActionClass) . "_after");
     if ($sInitResult === 'next') {
         $this->ExecAction();
     } else {
         /**
          * Замеряем время работы action`а
          */
         $oProfiler = ProfilerSimple::getInstance();
         $iTimeId = $oProfiler->Start('ExecAction', self::$sAction);
         $res = $this->oAction->ExecEvent();
         $this->Hook_Run("action_shutdown_" . strtolower($sActionClass) . "_before");
         $this->oAction->EventShutdown();
         $this->Hook_Run("action_shutdown_" . strtolower($sActionClass) . "_after");
         $oProfiler->Stop($iTimeId);
         if ($res === 'next') {
             $this->ExecAction();
         }
     }
 }
Beispiel #25
0
 /**
  * Comprobar si hay actualizaciones de sysPass disponibles desde internet (github.com)
  * Esta función hace una petición a GitHub y parsea el JSON devuelto para verificar
  * si la aplicación está actualizada
  *
  * @return array|bool
  */
 public static function checkUpdates()
 {
     if (!Config::getValue('checkupdates')) {
         return false;
     }
     $data = self::getDataFromUrl(self::getAppInfo('appupdates'));
     if ($data) {
         $updateInfo = json_decode($data);
         // $updateInfo[0]->tag_name
         // $updateInfo[0]->name
         // $updateInfo[0]->body
         // $updateInfo[0]->tarball_url
         // $updateInfo[0]->zipball_url
         // $updateInfo[0]->published_at
         // $updateInfo[0]->html_url
         $version = $updateInfo->tag_name;
         $url = $updateInfo->html_url;
         $title = $updateInfo->name;
         $description = $updateInfo->body;
         $date = $updateInfo->published_at;
         preg_match('/v?(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)(\\-[a-z0-9.]+)?$/', $version, $realVer);
         if (is_array($realVer) && Init::isLoggedIn()) {
             $appVersion = implode('', self::getVersion(true));
             $pubVersion = $realVer[1] . $realVer[2] . $realVer[3] . $realVer[4];
             if ($pubVersion > $appVersion) {
                 return array('version' => $version, 'url' => $url, 'title' => $title, 'description' => $description, 'date' => $date);
             } else {
                 return true;
             }
         } else {
             return false;
         }
     }
     return false;
 }
Beispiel #26
0
 private function is_controller($index)
 {
     return Init::loader('is_controller', $this->module . '/' . $index);
 }
/**
 *
 * @package Social Sharing Buttons
 * @author  Victor Freitas
 * @subpackage Controller Sharing Report
 * @version 2.0
 */
namespace JM\Share_Buttons;

// Avoid that files are directly loaded
if (!function_exists('add_action')) {
    exit(0);
}
//View
Init::uses('sharing-report', 'View');
if (!class_exists('WP_List_Table')) {
    require_once ABSPATH . 'wp-admin/includes/class-wp-list-table.php';
}
if (!class_exists('WP_Screen')) {
    require_once ABSPATH . 'wp-admin/includes/screen.php';
}
if (!class_exists('Walker_Category_Checklist')) {
    require_once ABSPATH . 'wp-admin/includes/template.php';
}
class Sharing_Reports_Controller extends \WP_List_Table
{
    /**
     * Number for posts per page
     *
     * @since 1.1
Beispiel #28
0
 function display($what)
 {
     global $withShoppingCart, $gorumrecognised, $gorumroll, $gorumuser;
     $_S =& new AppSettings();
     $menuPoints = explode(",", $_S->menuPoints);
     hasAdminRights($isAdm);
     $_GS =& new GlobalStat();
     switch ($what) {
         case Init_adminhelp:
         case Init_checkUpdates:
         case Init_confcheck:
         case Init_merchants:
         case Init_controlPanel:
             return $isAdm;
         case Init_registerNoah:
             return $isAdm;
         case Init_search:
             return in_array(Settings_showSearch, $menuPoints);
         case Init_register:
             return in_array(Settings_showRegister, $menuPoints) && Init::display($what);
         case Init_login:
             return in_array(Settings_showLogin, $menuPoints) && Init::display($what);
         case Init_logout:
             return in_array(Settings_showLogout, $menuPoints) && Init::display($what);
         case Init_myProfile:
             return in_array(Settings_showMyProfile, $menuPoints) && Init::display($what);
         case Init_addItem:
             return in_array(Settings_showSubmitAd, $menuPoints) || $isAdm;
         case Init_home:
             return in_array(Settings_showHome, $menuPoints) && Init::display($what);
         case Init_catSubscriptions:
             return $isAdm && $gorumroll->list == "appcategory" && $gorumroll->method == "showhtmllist" && $gorumroll->rollid && $_S->notifyEnabled();
         case Init_mySubscriptions:
             return !$isAdm && $gorumrecognised && $_S->notifyEnabled();
         case Init_favorities:
             return !empty($gorumuser->favorities) && $_S->favoritiesEnabled();
         case Init_help:
             return !$isAdm && $gorumrecognised && in_array(Settings_displayHelp, $menuPoints);
         case Init_addCategory:
             return $isAdm;
         case Init_organizeCategory:
             return $isAdm && class_exists('rss');
         case Init_cloneCategory:
             return $isAdm && class_exists('rss') && $gorumroll->rollid && $gorumroll->list == "appcategory" && $gorumroll->method == "showhtmllist";
         case Init_modCategory:
         case Init_delCategory:
             return $isAdm && $gorumroll->rollid && $gorumroll->list == "appcategory" && $gorumroll->method == "showhtmllist";
         default:
             return Init::display($what);
     }
 }
<?php

namespace CoffeeScript;

Init::init();
/**
 * @package   CoffeeScript
 * @author    Alex Little
 * @license   MIT
 * @homepage  http://github.com/alxlit/coffeescript-php
 */
class Compiler
{
    /**
     * Compile some CoffeeScript.
     *
     * Available options:
     *
     *  'filename' => The source file, for debugging (formatted into error messages)
     *  'header'   => Add a header to the generated source (default: TRUE)
     *  'rewrite'  => Enable rewriting token stream (debugging)
     *  'tokens'   => Reference to token stream (debugging)
     *  'trace'    => File to write parser trace to (debugging)
     *
     * @param  string  The source CoffeeScript code
     * @param  array   Options (see above)
     *
     * @return string  The resulting JavaScript (if there were no errors)
     */
    static function compile($code, $options = array())
    {
 *      along with this program; if not, write to the Free Software
 *      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
 *      MA 02110-1301, USA.
 */
namespace JM\Share_Buttons;

// Avoid that files are directly loaded
if (!function_exists('add_action')) {
    exit(0);
}
class Init
{
    const PLUGIN_SLUG = 'ssb-plus';
    const FILE = __FILE__;
    /**
     * Initialize the plugin by setting localization, filters, and administration functions.
     *
     * @since 1.0
     * @return Void
     */
    public static function uses($class_name, $location)
    {
        $extension = 'php';
        if (in_array($location, array('View', 'Controller', 'Helper'))) {
            $extension = strtolower($location) . '.php';
        }
        require_once "{$location}" . DIRECTORY_SEPARATOR . "{$class_name}.{$extension}";
    }
}
Init::uses('core', 'Config');
$core = new Core();