<?php namespace PhangoApp\PhaSys; use PhangoApp\PhaRouter\Routes; use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaUtils\Utils; use Symfony\Component\Process\Process; define('ERROR_UPDATING_TASK', 1); define('ERROR_FORK', 2); define('NEED_TASK_ID', 3); define('ERROR_SCRIPT', 4); Webmodel::load_model('vendor/phangoapp/phasys/models/logs'); class Daemon { /** * Init the php script how a daemon */ public $pid = 0; public $father_pid = 0; public $txt_error = ''; public function init() { $pid = pcntl_fork(); if ($pid == -1) { //Return message for the //echo json_encode(array('ERROR' => 1, 'MESSAGE' => 'CANNOT FORK, check php configuration', 'CODE_ERROR' => ERROR_FORK)); exit(1); } elseif ($pid) { //echo json_encode(array('PID' => $pid, 'ERROR' => 0, 'MESSAGE' => 'Running tasks...', 'PROGRESS' => 0)); exit(0);
<?php use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaI18n\I18n; use PhangoApp\PhaLibs\GenerateAdminClass; use PhangoApp\PhaLibs\AdminUtils; use PhangoApp\PhaLibs\SimpleList; use PhangoApp\PhaUtils\Utils; use PhangoApp\PhaLibs\HierarchyLinks; Webmodel::load_model('vendor/phangoapp/admin/models/models_admin'); I18n::load_lang('users'); function AusersAdmin() { settype($_GET['op'], 'integer'); Webmodel::$model['user_admin']->label = I18n::lang('users', 'users_admin', 'User\'s admin'); Webmodel::$model['user_admin']->components['user_admin']->label = I18n::lang('users', 'username', 'Username'); Webmodel::$model['user_admin']->components['privileges_user']->label = I18n::lang('users', 'privileges_user', 'Privileges'); switch ($_GET['op']) { default: Webmodel::$model['user_admin']->create_forms(); //Webmodel::$model['user_admin']->forms['privileges_user']->parameters=array('privileges_user', '', ChoiceAdminField::$arr_options_select); Webmodel::$model['user_admin']->forms['privileges_user']->arr_select = ChoiceAdminField::$arr_options_select; $repeat_password = new \PhangoApp\PhaModels\Forms\PasswordForm('repeat_password'); $repeat_password->label = I18n::lang('users', 'repeat_password', 'Repeat password'); $repeat_password->required = 1; Webmodel::$model['user_admin']->insert_after_field_form('password', 'repeat_password', $repeat_password); $admin = new GenerateAdminClass(Webmodel::$model['user_admin'], AdminUtils::set_admin_link('ausers', array('op' => 0))); $admin->list->arr_fields = array('IdUser_admin', 'user_admin', 'privileges_user'); $admin->list->set_fields_showed($admin->list->arr_fields); $admin->list->order_field = 'IdUser_admin'; $admin->list->order = 1;
/** * @depends testCreateTableUser */ public function testDropTable() { global $user_test; $this->assertTrue(Webmodel::drop_table($user_test->name)); }
<?php use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\CoreFields; $log = new Webmodel('log_exec'); $log->register('father_pid', new CoreFields\IntegerField(), true); $log->components['father_pid']->indexed = true; $log->register('pid', new CoreFields\IntegerField(), true); $log->register('command', new CoreFields\CharField()); $log->register('log', new CoreFields\SerializeField(new CoreFields\TextField()), true);