Change name Webmodel to WebModel

This commit is contained in:
Antonio de la Rosa 2025-11-20 14:15:05 +01:00
parent a7267ffc30
commit 0164401e7e
22 changed files with 195 additions and 195 deletions

View file

@ -13,7 +13,7 @@ else
} }
use PhangoApp\PhaModels\SQLClass; use PhangoApp\PhaModels\SQLClass;
use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\WebModel;
use PhangoApp\PhaUtils\Utils; use PhangoApp\PhaUtils\Utils;
use League\CLImate\CLImate; use League\CLImate\CLImate;
@ -47,7 +47,7 @@ function padminConsole($options)
settype($arr_option[0], 'string'); settype($arr_option[0], 'string');
settype($arr_option[1], 'string'); settype($arr_option[1], 'string');
#Webmodel::$model_path='./modules/'; #WebModel::$model_path='./modules/';
$options['model']=str_replace('.php', '', $options['model']); $options['model']=str_replace('.php', '', $options['model']);
@ -65,7 +65,7 @@ function padminConsole($options)
WebModel::load_model($options['model']); WebModel::load_model($options['model']);
//Load classes not defined in Webmodel::$model //Load classes not defined in WebModel::$model
$arr_classes=get_declared_classes(); $arr_classes=get_declared_classes();
@ -74,18 +74,18 @@ function padminConsole($options)
//$parent_class=get_parent_class($class); //$parent_class=get_parent_class($class);
$is_son_webmodel=is_subclass_of($class, 'PhangoApp\PhaModels\Webmodel'); $is_son_webmodel=is_subclass_of($class, 'PhangoApp\PhaModels\WebModel');
//echo $class."\n"; //echo $class."\n";
//if($parent_class==='PhangoApp\PhaModels\Webmodel' && !isset(Webmodel::$model_type[$parent_class])) //if($parent_class==='PhangoApp\PhaModels\WebModel' && !isset(WebModel::$model_type[$parent_class]))
if($is_son_webmodel) if($is_son_webmodel)
{ {
if(!isset(Webmodel::$model[strtolower($class)])) if(!isset(WebModel::$model[strtolower($class)]))
{ {
Webmodel::$model[strtolower($class)]=new $class(); WebModel::$model[strtolower($class)]=new $class();
} }
@ -96,10 +96,10 @@ function padminConsole($options)
try { try {
if(count(Webmodel::$model)>0) if(count(WebModel::$model)>0)
{ {
$first_item=current(Webmodel::$model); $first_item=current(WebModel::$model);
$first_item->connect_to_db(); $first_item->connect_to_db();
@ -124,9 +124,9 @@ function padminConsole($options)
update_table(); update_table();
$post_install_script=Webmodel::$model_path.$arr_option[0].'/install/post_install.php'; $post_install_script=WebModel::$model_path.$arr_option[0].'/install/post_install.php';
$post_install_lock=Webmodel::$model_path.$arr_option[0].'/install/lock'; $post_install_lock=WebModel::$model_path.$arr_option[0].'/install/lock';
if(file_exists($post_install_script) && !file_exists($post_install_lock)) if(file_exists($post_install_script) && !file_exists($post_install_lock))
{ {
@ -173,23 +173,23 @@ function padminConsole($options)
} }
/** /**
* This Function is used for padmin.php for create new tables and fields based in Webmodel class. * This Function is used for padmin.php for create new tables and fields based in WebModel class.
* *
* @param Webmodel $model The model used for create or update a sql table. * @param WebModel $model The model used for create or update a sql table.
*/ */
function update_table() function update_table()
{ {
//include(__DIR__.'/../src/Databases/'.Webmodel::$type_db.'.php'); //include(__DIR__.'/../src/Databases/'.WebModel::$type_db.'.php');
Webmodel::$arr_sql_index=array(); WebModel::$arr_sql_index=array();
Webmodel::$arr_sql_set_index=array(); WebModel::$arr_sql_set_index=array();
Webmodel::$arr_sql_unique=array(); WebModel::$arr_sql_unique=array();
Webmodel::$arr_sql_set_unique=array(); WebModel::$arr_sql_set_unique=array();
Webmodel::$arr_sql_fulltext=array(); WebModel::$arr_sql_fulltext=array();
Webmodel::$arr_sql_set_fulltext=array(); WebModel::$arr_sql_set_fulltext=array();
$arr_etable=array(); $arr_etable=array();
@ -202,7 +202,7 @@ function update_table()
} }
foreach(Webmodel::$model as $key => $thing) foreach(WebModel::$model as $key => $thing)
{ {
$arr_table=array(); $arr_table=array();
@ -218,7 +218,7 @@ function update_table()
$key_db=""; $key_db="";
$default=""; $default="";
$extra=""; $extra="";
$key_field_old=Webmodel::$model[$key]->idmodel; $key_field_old=WebModel::$model[$key]->idmodel;
if(!isset($arr_etable[$key])) if(!isset($arr_etable[$key]))
{ {
@ -226,15 +226,15 @@ function update_table()
echo "Creating table $key\n"; echo "Creating table $key\n";
Webmodel::$model[$key]->create_table(); WebModel::$model[$key]->create_table();
} }
else else
if(isset(Webmodel::$model[$key])) if(isset(WebModel::$model[$key]))
{ {
//Obtain all fields of model //Obtain all fields of model
foreach(Webmodel::$model[$key]->components as $kfield => $value) foreach(WebModel::$model[$key]->components as $kfield => $value)
{ {
$allfields[$kfield]=1; $allfields[$kfield]=1;
@ -246,7 +246,7 @@ function update_table()
$arr_null['NO']='NOT NULL'; $arr_null['NO']='NOT NULL';
$arr_null['YES']='NULL'; $arr_null['YES']='NULL';
unset($allfields[Webmodel::$model[$key]->idmodel]); unset($allfields[WebModel::$model[$key]->idmodel]);
$query=SQLClass::webtsys_query("describe `".$key."`"); $query=SQLClass::webtsys_query("describe `".$key."`");
@ -276,14 +276,14 @@ function update_table()
//Delete default //Delete default
$type_sql=preg_replace('/^(.*) DEFAULT.*$/', '$1', Webmodel::$model[$key]->components[$field]->get_type_sql()); $type_sql=preg_replace('/^(.*) DEFAULT.*$/', '$1', WebModel::$model[$key]->components[$field]->get_type_sql());
if($type_sql!=($type.' '.$null_set[$field])) if($type_sql!=($type.' '.$null_set[$field]))
{ {
//echo $type_sql.'='.($type.' '.$null_set[$field])."\n"; //echo $type_sql.'='.($type.' '.$null_set[$field])."\n";
$query=SQLClass::webtsys_query('alter table `'.$key.'` modify `'.$field.'` '.Webmodel::$model[$key]->components[$field]->get_type_sql()); $query=SQLClass::webtsys_query('alter table `'.$key.'` modify `'.$field.'` '.WebModel::$model[$key]->components[$field]->get_type_sql());
echo "Upgrading ".$field." from ".$key."...\n"; echo "Upgrading ".$field." from ".$key."...\n";
@ -292,52 +292,52 @@ function update_table()
//Check if indexed //Check if indexed
if(Webmodel::$model[$key]->components[$field]->indexed==true && $keys[$field]=='') if(WebModel::$model[$key]->components[$field]->indexed==true && $keys[$field]=='')
{ {
Webmodel::$arr_sql_index[$key][$field]='CREATE INDEX `index_'.$key.'_'.$field.'` ON `'.$key.'`(`'.$field.'`);'; WebModel::$arr_sql_index[$key][$field]='CREATE INDEX `index_'.$key.'_'.$field.'` ON `'.$key.'`(`'.$field.'`);';
Webmodel::$arr_sql_set_index[$key][$field]=''; WebModel::$arr_sql_set_index[$key][$field]='';
} }
//Check if fulltext for mysql //Check if fulltext for mysql
if(Webmodel::$model[$key]->components[$field]->fulltext==true && $keys[$field]=='') if(WebModel::$model[$key]->components[$field]->fulltext==true && $keys[$field]=='')
{ {
Webmodel::$arr_sql_fulltext[$key][$field]=' ALTER TABLE `'.$key.'` ADD FULLTEXT (`'.$field.'`)'; WebModel::$arr_sql_fulltext[$key][$field]=' ALTER TABLE `'.$key.'` ADD FULLTEXT (`'.$field.'`)';
Webmodel::$arr_sql_set_fulltext[$key][$field]=''; WebModel::$arr_sql_set_fulltext[$key][$field]='';
} }
//Check if unique //Check if unique
if(Webmodel::$model[$key]->components[$field]->unique==true && $keys[$field]=='') if(WebModel::$model[$key]->components[$field]->unique==true && $keys[$field]=='')
{ {
Webmodel::$arr_sql_unique[$key][$field]=' ALTER TABLE `'.$key.'` ADD UNIQUE (`'.$field.'`)'; WebModel::$arr_sql_unique[$key][$field]=' ALTER TABLE `'.$key.'` ADD UNIQUE (`'.$field.'`)';
Webmodel::$arr_sql_set_unique[$key][$field]=''; WebModel::$arr_sql_set_unique[$key][$field]='';
} }
//Set index //Set index
if(isset(Webmodel::$model[$key]->components[$field]->related_model) && $keys[$field]=='') if(isset(WebModel::$model[$key]->components[$field]->related_model) && $keys[$field]=='')
{ {
Webmodel::$arr_sql_index[$key][$field]='CREATE INDEX `index_'.$key.'_'.$field.'` ON `'.$key.'`(`'.$field.'`);'; WebModel::$arr_sql_index[$key][$field]='CREATE INDEX `index_'.$key.'_'.$field.'` ON `'.$key.'`(`'.$field.'`);';
$table_related=Webmodel::$model[$key]->components[$field]->related_model->name; $table_related=WebModel::$model[$key]->components[$field]->related_model->name;
$id_table_related=Webmodel::load_id_model_related(Webmodel::$model[$key]->components[$field], Webmodel::$model); $id_table_related=WebModel::load_id_model_related(WebModel::$model[$key]->components[$field], WebModel::$model);
Webmodel::$arr_sql_set_index[$key][$field]='ALTER TABLE `'.$key.'` ADD CONSTRAINT `'.$field.'_'.$key.'IDX` FOREIGN KEY ( `'.$field.'` ) REFERENCES `'.$table_related.'` (`'.$id_table_related.'`) ON DELETE CASCADE ON UPDATE CASCADE;'; WebModel::$arr_sql_set_index[$key][$field]='ALTER TABLE `'.$key.'` ADD CONSTRAINT `'.$field.'_'.$key.'IDX` FOREIGN KEY ( `'.$field.'` ) REFERENCES `'.$table_related.'` (`'.$id_table_related.'`) ON DELETE CASCADE ON UPDATE CASCADE;';
} }
if(!isset(Webmodel::$model[$key]->components[$field]->related_model) && $keys[$field]!='' && Webmodel::$model[$key]->components[$field]->indexed==false && Webmodel::$model[$key]->components[$field]->unique!=true && Webmodel::$model[$key]->components[$field]->fulltext!=true) if(!isset(WebModel::$model[$key]->components[$field]->related_model) && $keys[$field]!='' && WebModel::$model[$key]->components[$field]->indexed==false && WebModel::$model[$key]->components[$field]->unique!=true && WebModel::$model[$key]->components[$field]->fulltext!=true)
{ {
echo "---Delete index for ".$field." from ".$key."\n"; echo "---Delete index for ".$field." from ".$key."\n";
@ -362,12 +362,12 @@ function update_table()
//Check if new id... //Check if new id...
if($key_field_old!=Webmodel::$model[$key]->idmodel) if($key_field_old!=WebModel::$model[$key]->idmodel)
{ {
$query=SQLClass::webtsys_query('alter table `'.$key.'` change `'.$key_field_old.'` `'.Webmodel::$model[$key]->idmodel.'` INT NOT NULL AUTO_INCREMENT'); $query=SQLClass::webtsys_query('alter table `'.$key.'` change `'.$key_field_old.'` `'.WebModel::$model[$key]->idmodel.'` INT NOT NULL AUTO_INCREMENT');
echo "Renaming id for this model to ".Webmodel::$model[$key]->idmodel."...\n"; echo "Renaming id for this model to ".WebModel::$model[$key]->idmodel."...\n";
} }
@ -379,34 +379,34 @@ function update_table()
if($allfields[$new_field]==1) if($allfields[$new_field]==1)
{ {
$query=SQLClass::webtsys_query('alter table `'.$key.'` add `'.$new_field.'` '.Webmodel::$model[$key]->components[$new_field]->get_type_sql()); $query=SQLClass::webtsys_query('alter table `'.$key.'` add `'.$new_field.'` '.WebModel::$model[$key]->components[$new_field]->get_type_sql());
echo "Adding ".$new_field." to ".$key."...\n"; echo "Adding ".$new_field." to ".$key."...\n";
//Check if indexed //Check if indexed
if(Webmodel::$model[$key]->components[$new_field]->indexed==true) if(WebModel::$model[$key]->components[$new_field]->indexed==true)
{ {
Webmodel::$arr_sql_index[$key][$new_field]='CREATE INDEX `index_'.$key.'_'.$new_field.'` ON `'.$key.'`(`'.$new_field.'`);'; WebModel::$arr_sql_index[$key][$new_field]='CREATE INDEX `index_'.$key.'_'.$new_field.'` ON `'.$key.'`(`'.$new_field.'`);';
Webmodel::$arr_sql_set_index[$key][$new_field]=''; WebModel::$arr_sql_set_index[$key][$new_field]='';
} }
if(isset(Webmodel::$model[$key]->components[$new_field]->related_model) ) if(isset(WebModel::$model[$key]->components[$new_field]->related_model) )
{ {
/*echo "---Creating index for ".$new_field." from ".$key."\n"; /*echo "---Creating index for ".$new_field." from ".$key."\n";
$query=SQLClass::webtsys_query('CREATE INDEX index_'.$key.'_'.$new_field.' ON '.$key.'('.$new_field.')');*/ $query=SQLClass::webtsys_query('CREATE INDEX index_'.$key.'_'.$new_field.' ON '.$key.'('.$new_field.')');*/
Webmodel::$arr_sql_index[$key][$new_field]='CREATE INDEX `index_'.$key.'_'.$new_field.'` ON `'.$key.'`(`'.$new_field.'`);'; WebModel::$arr_sql_index[$key][$new_field]='CREATE INDEX `index_'.$key.'_'.$new_field.'` ON `'.$key.'`(`'.$new_field.'`);';
$table_related=Webmodel::$model[$key]->components[$new_field]->related_model->name; $table_related=WebModel::$model[$key]->components[$new_field]->related_model->name;
$id_table_related=Webmodel::load_id_model_related(Webmodel::$model[$key]->components[$new_field], Webmodel::$model); $id_table_related=WebModel::load_id_model_related(WebModel::$model[$key]->components[$new_field], WebModel::$model);
Webmodel::$arr_sql_set_index[$key][$new_field]='ALTER TABLE `'.$key.'` ADD CONSTRAINT `'.$new_field.'_'.$key.'IDX` FOREIGN KEY ( `'.$new_field.'` ) REFERENCES `'.$table_related.'` (`'.$id_table_related.'`) ON DELETE CASCADE ON UPDATE CASCADE;'; WebModel::$arr_sql_set_index[$key][$new_field]='ALTER TABLE `'.$key.'` ADD CONSTRAINT `'.$new_field.'_'.$key.'IDX` FOREIGN KEY ( `'.$new_field.'` ) REFERENCES `'.$table_related.'` (`'.$id_table_related.'`) ON DELETE CASCADE ON UPDATE CASCADE;';
} }
@ -441,18 +441,18 @@ function update_table()
//Create Indexes... //Create Indexes...
foreach(Webmodel::$arr_sql_index as $model_name => $arr_index) foreach(WebModel::$arr_sql_index as $model_name => $arr_index)
{ {
foreach(Webmodel::$arr_sql_index[$model_name] as $key_data => $sql_index) foreach(WebModel::$arr_sql_index[$model_name] as $key_data => $sql_index)
{ {
echo "---Creating index for ".$key_data." on model ".$model_name."\n"; echo "---Creating index for ".$key_data." on model ".$model_name."\n";
$query=SQLClass::webtsys_query($sql_index); $query=SQLClass::webtsys_query($sql_index);
if(Webmodel::$arr_sql_set_index[$model_name][$key_data]!='') if(WebModel::$arr_sql_set_index[$model_name][$key_data]!='')
{ {
$query=SQLClass::webtsys_query(Webmodel::$arr_sql_set_index[$model_name][$key_data]); $query=SQLClass::webtsys_query(WebModel::$arr_sql_set_index[$model_name][$key_data]);
} }
} }
@ -460,18 +460,18 @@ function update_table()
//Create Uniques... //Create Uniques...
foreach(Webmodel::$arr_sql_unique as $model_name => $arr_index) foreach(WebModel::$arr_sql_unique as $model_name => $arr_index)
{ {
foreach(Webmodel::$arr_sql_unique[$model_name] as $key_data => $sql_index) foreach(WebModel::$arr_sql_unique[$model_name] as $key_data => $sql_index)
{ {
echo "---Creating unique for ".$key_data." on model ".$model_name."\n"; echo "---Creating unique for ".$key_data." on model ".$model_name."\n";
$query=SQLClass::webtsys_query($sql_index); $query=SQLClass::webtsys_query($sql_index);
if(Webmodel::$arr_sql_set_unique[$model_name][$key_data]!='') if(WebModel::$arr_sql_set_unique[$model_name][$key_data]!='')
{ {
$query=SQLClass::webtsys_query(Webmodel::$arr_sql_set_unique[$model_name][$key_data]); $query=SQLClass::webtsys_query(WebModel::$arr_sql_set_unique[$model_name][$key_data]);
} }
} }
@ -479,18 +479,18 @@ function update_table()
//Create Fulltext index... //Create Fulltext index...
foreach(Webmodel::$arr_sql_fulltext as $model_name => $arr_index) foreach(WebModel::$arr_sql_fulltext as $model_name => $arr_index)
{ {
foreach(Webmodel::$arr_sql_fulltext[$model_name] as $key_data => $sql_index) foreach(WebModel::$arr_sql_fulltext[$model_name] as $key_data => $sql_index)
{ {
echo "---Creating fulltext for ".$key_data." on model ".$model_name."\n"; echo "---Creating fulltext for ".$key_data." on model ".$model_name."\n";
$query=SQLClass::webtsys_query($sql_index); $query=SQLClass::webtsys_query($sql_index);
if(Webmodel::$arr_sql_set_fulltext[$model_name][$key_data]!='') if(WebModel::$arr_sql_set_fulltext[$model_name][$key_data]!='')
{ {
$query=SQLClass::webtsys_query(Webmodel::$arr_sql_set_fulltext[$model_name][$key_data]); $query=SQLClass::webtsys_query(WebModel::$arr_sql_set_fulltext[$model_name][$key_data]);
} }
} }
@ -507,10 +507,10 @@ function load_id_model_related($foreignkeyfield)
$id_table_related=''; $id_table_related='';
if(!isset(Webmodel::$model[ $table_related ]->idmodel)) if(!isset(WebModel::$model[ $table_related ]->idmodel))
{ {
//$id_table_related='Id'.ucfirst(PhangoVar::Webmodel::$model[$key]->components[$new_field]->related_model); //$id_table_related='Id'.ucfirst(PhangoVar::WebModel::$model[$key]->components[$new_field]->related_model);
//Need load the model //Need load the model
if(isset($foreignkeyfield->params_loading_mod['module']) && isset($foreignkeyfield->params_loading_mod['model'])) if(isset($foreignkeyfield->params_loading_mod['module']) && isset($foreignkeyfield->params_loading_mod['model']))
@ -520,7 +520,7 @@ function load_id_model_related($foreignkeyfield)
//obtain id //obtain id
$id_table_related=Webmodel::$model[ $foreignkeyfield->params_loading_mod['model'] ]->idmodel; $id_table_related=WebModel::$model[ $foreignkeyfield->params_loading_mod['model'] ]->idmodel;
} }
@ -529,7 +529,7 @@ function load_id_model_related($foreignkeyfield)
else else
{ {
$id_table_related=Webmodel::$model[ $table_related ]->idmodel; $id_table_related=WebModel::$model[ $table_related ]->idmodel;
} }

View file

@ -4,7 +4,7 @@
"require-dev": { "require-dev": {
"phpunit/phpunit": "~4.8@dev" "phpunit/phpunit": "~4.8@dev"
}, },
"license": "GPL", "license": "GPL3",
"authors": [ "authors": [
{ {
"name": "Antonio de la Rosa", "name": "Antonio de la Rosa",

View file

@ -10,9 +10,9 @@
*/ */
/** /**
* Extra Method for Webmodel. Is used for check if element with $idrow id exists in the database. * Extra Method for WebModel. Is used for check if element with $idrow id exists in the database.
* *
* @param Webmodel $class Webmodel instance class. * @param WebModel $class WebModel instance class.
* @param mixed $idrow The id of the element to search. * @param mixed $idrow The id of the element to search.
* @param string $field_search The field where search the specified "id" if you want use other field distinct to default id field. * @param string $field_search The field where search the specified "id" if you want use other field distinct to default id field.
* *

View file

@ -14,7 +14,7 @@
* *
* This method is useful if you only want load a field of a model. * This method is useful if you only want load a field of a model.
* *
* @param Webmodel $class The model used for search in * @param WebModel $class The model used for search in
* @param string $where A where sql statement. * @param string $where A where sql statement.
* @param string $field The field where search. * @param string $field The field where search.
*/ */

View file

@ -10,11 +10,11 @@
*/ */
/** /**
* A useful method for Webmodel for load a row from a db model (table) * A useful method for WebModel for load a row from a db model (table)
* *
* With this method you can load only a row specifyng the model id value. * With this method you can load only a row specifyng the model id value.
* *
* @param Webmodel $class The instance of the class used * @param WebModel $class The instance of the class used
* @param integer $idrow The id value of the row. * @param integer $idrow The id value of the row.
* @param array $arr_select An array where the values are the correspondent fields of the model * @param array $arr_select An array where the values are the correspondent fields of the model
* @param boolean $raw_query If true, ForeignKeys will be ignored, if false, the return value will load the relationships specified. * @param boolean $raw_query If true, ForeignKeys will be ignored, if false, the return value will load the relationships specified.

View file

@ -10,11 +10,11 @@
*/ */
/** /**
* A useful method for Webmodel for load a row from a db model (table) using a where sql statement * A useful method for WebModel for load a row from a db model (table) using a where sql statement
* *
* With this method you can load only a row specifyng the model id value using a where sql statement. * With this method you can load only a row specifyng the model id value using a where sql statement.
* *
* @param Webmodel $class The instance of the class used * @param WebModel $class The instance of the class used
* @param string $where A where sql statement. * @param string $where A where sql statement.
* @param array $arr_select An array where the values are the correspondent fields of the model * @param array $arr_select An array where the values are the correspondent fields of the model
* @param boolean $raw_query If true, ForeignKeys will be ignored, if false, the return value will load the relationships specified. * @param boolean $raw_query If true, ForeignKeys will be ignored, if false, the return value will load the relationships specified.

View file

@ -10,11 +10,11 @@
*/ */
/** /**
* A useful method for Webmodel for load an array of rows resulted from a query. * A useful method for WebModel for load an array of rows resulted from a query.
* *
* With this method you can load only a row specifyng the model id value using a where sql statement. * With this method you can load only a row specifyng the model id value using a where sql statement.
* *
* @param Webmodel $class The instance of the class used * @param WebModel $class The instance of the class used
* @param string $where A where sql statement. * @param string $where A where sql statement.
* @param array $arr_select An array where the values are the correspondent fields of the model * @param array $arr_select An array where the values are the correspondent fields of the model
* @param boolean $raw_query If true, ForeignKeys will be ignored, if false, the return value will load the relationships specified. * @param boolean $raw_query If true, ForeignKeys will be ignored, if false, the return value will load the relationships specified.

View file

@ -10,11 +10,11 @@
*/ */
/** /**
* A useful method for Webmodel for load an array of rows resulted from a query. * A useful method for WebModel for load an array of rows resulted from a query.
* *
* With this method you can load only a row specifyng the model id value using a where sql statement. * With this method you can load only a row specifyng the model id value using a where sql statement.
* *
* @param Webmodel $class The instance of the class used * @param WebModel $class The instance of the class used
* @param string $where A where sql statement. * @param string $where A where sql statement.
* @param array $arr_select An array where the values are the correspondent fields of the model * @param array $arr_select An array where the values are the correspondent fields of the model
* @param boolean $raw_query If true, ForeignKeys will be ignored, if false, the return value will load the relationships specified. * @param boolean $raw_query If true, ForeignKeys will be ignored, if false, the return value will load the relationships specified.

View file

@ -11,7 +11,7 @@
/** /**
* A simple extension for create where strings with checking. * A simple extension for create where strings with checking.
* *
* With this extension, you can create sql strings for use on where parameter of select method from Webmodel. * With this extension, you can create sql strings for use on where parameter of select method from WebModel.
* *
* Example ['AND']->array( 'field' => array('!=', 25), 'field2' => array('=', 'value_field'), 'field3' => array('LIKE', 'value_field'), 'field4' => array('IN', array('1','2','3'), 'limit_sql' => array('LIMIT', array(1, 10), 'order_by' => array('order_fieldY', 'ASC' * Example ['AND']->array( 'field' => array('!=', 25), 'field2' => array('=', 'value_field'), 'field3' => array('LIKE', 'value_field'), 'field4' => array('IN', array('1','2','3'), 'limit_sql' => array('LIMIT', array(1, 10), 'order_by' => array('order_fieldY', 'ASC'
)) ))

View file

@ -10,15 +10,15 @@ class Cache {
static public function file_cache_query($model_name) static public function file_cache_query($model_name)
{ {
Utils::load_config('query_cache_'.$model_name, Webmodel::$folder_cache); Utils::load_config('query_cache_'.$model_name, WebModel::$folder_cache);
} }
static public function save_cache_query() static public function save_cache_query()
{ {
//Utils::load_config('query_cache_'.$model_name, Webmodel::$folder_cache); //Utils::load_config('query_cache_'.$model_name, WebModel::$folder_cache);
foreach(Webmodel::$model as $model) foreach(WebModel::$model as $model)
{ {
if($model->cache_query==1 && $model->count_cache_query>0) if($model->cache_query==1 && $model->count_cache_query>0)
@ -28,13 +28,13 @@ class Cache {
$file="<?php\n\n"; $file="<?php\n\n";
$file.="use PhangoApp\PhaModels\Webmodel;\n\n"; $file.="use PhangoApp\PhaModels\WebModel;\n\n";
foreach($model->arr_cache_query as $name_cache => $cache_query) foreach($model->arr_cache_query as $name_cache => $cache_query)
{ {
$file.="Webmodel::\$model['".$model->name."']->arr_cache_query['".$name_cache."']=\"".addslashes($cache_query)."\";\n\n"; $file.="WebModel::\$model['".$model->name."']->arr_cache_query['".$name_cache."']=\"".addslashes($cache_query)."\";\n\n";
$yes_save++; $yes_save++;
@ -45,7 +45,7 @@ class Cache {
if($yes_save>0) if($yes_save>0)
{ {
if(!file_put_contents(Webmodel::$folder_cache.'/query_cache_'.$model->name.'.php', $file)) if(!file_put_contents(WebModel::$folder_cache.'/query_cache_'.$model->name.'.php', $file))
{ {
echo "Error: cannot access to cache folder for save the query caches...\n"; echo "Error: cannot access to cache folder for save the query caches...\n";
@ -63,7 +63,7 @@ class Cache {
static public function check_cache($md5_query, $model_name) static public function check_cache($md5_query, $model_name)
{ {
if(!file_exists(Webmodel::$folder_cache.'/'.$md5_query.'_'.$model_name.'.php')) if(!file_exists(WebModel::$folder_cache.'/'.$md5_query.'_'.$model_name.'.php'))
{ {
return false; return false;
@ -79,30 +79,30 @@ class Cache {
$file="<?php\n\n"; $file="<?php\n\n";
$file.="use PhangoApp\PhaModels\Webmodel;\n\n"; $file.="use PhangoApp\PhaModels\WebModel;\n\n";
while($row=Webmodel::$model[$model_name]->nocached_fetch_array($query)) while($row=WebModel::$model[$model_name]->nocached_fetch_array($query))
{ {
$file.="Webmodel::\$model['".$model_name."']->arr_cache_row[]=".var_export($row, true).";\n\n"; $file.="WebModel::\$model['".$model_name."']->arr_cache_row[]=".var_export($row, true).";\n\n";
} }
file_put_contents(Webmodel::$folder_cache.'/'.$md5_query.'_'.$model_name.'.php', $file); file_put_contents(WebModel::$folder_cache.'/'.$md5_query.'_'.$model_name.'.php', $file);
} }
static public function file_cache($md5_file, $model_name) static public function file_cache($md5_file, $model_name)
{ {
include(Webmodel::$folder_cache.'/'.$md5_file.'_'.$model_name.'.php'); include(WebModel::$folder_cache.'/'.$md5_file.'_'.$model_name.'.php');
} }
static public function refresh_cache($model_name, $new_id) static public function refresh_cache($model_name, $new_id)
{ {
array_map('unlink', glob(Webmodel::$folder_cache.'/'.'*_'.$model_name.'.php')); array_map('unlink', glob(WebModel::$folder_cache.'/'.'*_'.$model_name.'.php'));
} }

View file

@ -48,10 +48,10 @@ class FileField extends PhangoField {
//Check the image for delete. //Check the image for delete.
//This field is used only for a row //This field is used only for a row
//echo $this->model_instance->conditions; die; //echo $this->model_instance->conditions; die;
$old_reset=Webmodel::$model[$this->name_model]->reset_conditions; $old_reset=WebModel::$model[$this->name_model]->reset_conditions;
Webmodel::$model[$this->name_model]->reset_conditions=0; WebModel::$model[$this->name_model]->reset_conditions=0;
$old_file=Webmodel::$model[$this->name_model]->select_a_row_where(array($this->name_component), 1)[$this->name_component]; $old_file=WebModel::$model[$this->name_model]->select_a_row_where(array($this->name_component), 1)[$this->name_component];
Webmodel::$model[$this->name_model]->reset_conditions=$old_reset; WebModel::$model[$this->name_model]->reset_conditions=$old_reset;
} }

View file

@ -2,7 +2,7 @@
namespace PhangoApp\PhaModels\CoreFields; namespace PhangoApp\PhaModels\CoreFields;
use PhangoApp\PhaI18n\I18n; use PhangoApp\PhaI18n\I18n;
use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\WebModel;
/** /**
* ForeignKeyfield is a relantioship between two models... * ForeignKeyfield is a relantioship between two models...
@ -75,7 +75,7 @@ class ForeignKeyField extends IntegerField{
if(!isset($this->related_model)) if(!isset($this->related_model))
{ {
Webmodel::load_model($this->container_model); WebModel::load_model($this->container_model);
} }
@ -143,9 +143,9 @@ class ForeignKeyField extends IntegerField{
//Prepare parameters for selectmodelform //Prepare parameters for selectmodelform
if(isset($this->name_component) && $this->name_field_to_field!='' && $this->name_model!='' && count(Webmodel::$model[$this->name_model]->forms)>0) if(isset($this->name_component) && $this->name_field_to_field!='' && $this->name_model!='' && count(WebModel::$model[$this->name_model]->forms)>0)
{ {
Webmodel::$model[$this->name_model]->forms[$this->name_component]->form='PhangoApp\PhaModels\Forms\SelectModelForm'; WebModel::$model[$this->name_model]->forms[$this->name_component]->form='PhangoApp\PhaModels\Forms\SelectModelForm';
return array($this->name_component, '', '', $this->related_model, $this->name_field_to_field, ''); return array($this->name_component, '', '', $this->related_model, $this->name_field_to_field, '');

View file

@ -3,7 +3,7 @@
namespace PhangoApp\PhaModels\CoreFields; namespace PhangoApp\PhaModels\CoreFields;
use PhangoApp\PhaUtils\Utils; use PhangoApp\PhaUtils\Utils;
use PhangoApp\PhaI18n\I18n; use PhangoApp\PhaI18n\I18n;
use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\WebModel;
use Intervention\Image\ImageManager; use Intervention\Image\ImageManager;
/** /**
@ -64,10 +64,10 @@ class ImageField extends PhangoField {
//Check the image for delete. //Check the image for delete.
//This field is used only for a row //This field is used only for a row
//echo $this->model_instance->conditions; die; //echo $this->model_instance->conditions; die;
$old_reset=Webmodel::$model[$this->name_model]->reset_conditions; $old_reset=WebModel::$model[$this->name_model]->reset_conditions;
Webmodel::$model[$this->name_model]->reset_conditions=0; WebModel::$model[$this->name_model]->reset_conditions=0;
$old_image=Webmodel::$model[$this->name_model]->select_a_row_where(array($this->name_component), 1)[$this->name_component]; $old_image=WebModel::$model[$this->name_model]->select_a_row_where(array($this->name_component), 1)[$this->name_component];
Webmodel::$model[$this->name_model]->reset_conditions=$old_reset; WebModel::$model[$this->name_model]->reset_conditions=$old_reset;

View file

@ -9,7 +9,7 @@
*/ */
/** /**
* PhangoField class is the base for make class used on Webmodel::components property. * PhangoField class is the base for make class used on WebModel::components property.
* *
*/ */

View file

@ -2,7 +2,7 @@
namespace PhangoApp\PhaModels\CoreFields; namespace PhangoApp\PhaModels\CoreFields;
use PhangoApp\PhaUtils\Utils; use PhangoApp\PhaUtils\Utils;
use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\WebModel;
/** /**
* Serializefield is a field if you need save serialize values * Serializefield is a field if you need save serialize values

View file

@ -2,7 +2,7 @@
namespace PhangoApp\PhaModels\CoreFields; namespace PhangoApp\PhaModels\CoreFields;
use PhangoApp\PhaI18n\I18n; use PhangoApp\PhaI18n\I18n;
use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\WebModel;
/** This class can be used for create orders or searchs in mysql if you need other thing distinct to default search of default order (default order don't work fine with serializefields how i18nfield). The programmer have the responsability of update this fields via update or insert method. /** This class can be used for create orders or searchs in mysql if you need other thing distinct to default search of default order (default order don't work fine with serializefields how i18nfield). The programmer have the responsability of update this fields via update or insert method.
* *

View file

@ -19,7 +19,7 @@ class SQLClass {
static public function print_sql_fail($sql_fail, $server_data='default') static public function print_sql_fail($sql_fail, $server_data='default')
{ {
$error=mysqli_error(Webmodel::$connection[$server_data]); $error=mysqli_error(WebModel::$connection[$server_data]);
if($error!='' && SQLClass::$debug==true) if($error!='' && SQLClass::$debug==true)
{ {
@ -34,11 +34,11 @@ class SQLClass {
{ {
$query = mysqli_query(Webmodel::$connection[$server_data], $sql_string ); $query = mysqli_query(WebModel::$connection[$server_data], $sql_string );
SQLClass::print_sql_fail($sql_string, $server_data); SQLClass::print_sql_fail($sql_string, $server_data);
Webmodel::$save_query++; WebModel::$save_query++;
return $query; return $query;
} }
@ -46,7 +46,7 @@ class SQLClass {
static public function webtsys_affected_rows( $server_data='default' ) static public function webtsys_affected_rows( $server_data='default' )
{ {
$num_rows = mysqli_affected_rows(Webmodel::$connection[$server_data]); $num_rows = mysqli_affected_rows(WebModel::$connection[$server_data]);
return $num_rows; return $num_rows;
} }
@ -87,7 +87,7 @@ class SQLClass {
static public function webtsys_get_client_info($server_data='default') static public function webtsys_get_client_info($server_data='default')
{ {
$version = mysqli_get_client_info(Webmodel::$connection[$server_data]); $version = mysqli_get_client_info(WebModel::$connection[$server_data]);
return $version; return $version;
} }
@ -95,7 +95,7 @@ class SQLClass {
static public function webtsys_get_server_info($server_data='default') static public function webtsys_get_server_info($server_data='default')
{ {
$version = mysqli_get_server_info(Webmodel::$connection[$server_data]); $version = mysqli_get_server_info(WebModel::$connection[$server_data]);
return $version; return $version;
} }
@ -103,7 +103,7 @@ class SQLClass {
static public function webtsys_insert_id($server_data='default') static public function webtsys_insert_id($server_data='default')
{ {
$idinsert = mysqli_insert_id(Webmodel::$connection[$server_data]); $idinsert = mysqli_insert_id(WebModel::$connection[$server_data]);
return $idinsert; return $idinsert;
} }
@ -119,19 +119,19 @@ class SQLClass {
{ {
global $con_persistente; global $con_persistente;
Webmodel::$connection = $con_persistente( $host_db, $login_db, $contra_db ); WebModel::$connection = $con_persistente( $host_db, $login_db, $contra_db );
webtsys_select_db( $db ); webtsys_select_db( $db );
return Webmodel::$connection; return WebModel::$connection;
}*/ }*/
static public function webtsys_connect( $host_db, $login_db, $contra_db , $server_data='default') static public function webtsys_connect( $host_db, $login_db, $contra_db , $server_data='default')
{ {
Webmodel::$connection[$server_data]=mysqli_init(); WebModel::$connection[$server_data]=mysqli_init();
if ( !( mysqli_real_connect(Webmodel::$connection[$server_data], SqlClass::$persistent.$host_db, $login_db, $contra_db ) ) ) if ( !( mysqli_real_connect(WebModel::$connection[$server_data], SqlClass::$persistent.$host_db, $login_db, $contra_db ) ) )
{ {
return false; return false;
@ -140,13 +140,13 @@ class SQLClass {
return true; return true;
//return Webmodel::$connection; //return WebModel::$connection;
} }
static public function webtsys_select_db( $db , $server_data='default') static public function webtsys_select_db( $db , $server_data='default')
{ {
$result_db=mysqli_select_db(Webmodel::$connection[$server_data], $db); $result_db=mysqli_select_db(WebModel::$connection[$server_data], $db);
if($result_db==false) if($result_db==false)
{ {
@ -161,14 +161,14 @@ class SQLClass {
static public function webtsys_escape_string($sql_string, $server_data='default') static public function webtsys_escape_string($sql_string, $server_data='default')
{ {
return mysqli_real_escape_string(Webmodel::$connection[$server_data], $sql_string); return mysqli_real_escape_string(WebModel::$connection[$server_data], $sql_string);
} }
static public function webtsys_error($server_data='default') static public function webtsys_error($server_data='default')
{ {
return mysqli_error(Webmodel::$connection[$server_data]); return mysqli_error(WebModel::$connection[$server_data]);
} }

View file

@ -12,7 +12,7 @@
namespace PhangoApp\PhaModels\ExtraModels; namespace PhangoApp\PhaModels\ExtraModels;
use PhangoApp\PhaI18n\I18n; use PhangoApp\PhaI18n\I18n;
use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\WebModel;
use PhangoApp\PhaUtils\Utils; use PhangoApp\PhaUtils\Utils;
I18n::load_lang('users'); I18n::load_lang('users');
@ -22,7 +22,7 @@ I18n::load_lang('users');
* *
*/ */
class UserPhangoModel extends Webmodel { class UserPhangoModel extends WebModel {
public $username='username'; public $username='username';
public $email='email'; public $email='email';

View file

@ -3,7 +3,7 @@
namespace PhangoApp\PhaModels\Forms; namespace PhangoApp\PhaModels\Forms;
use PhangoApp\PhaModels\Forms\SelectForm; use PhangoApp\PhaModels\Forms\SelectForm;
use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\WebModel;
/** /**
* Basic class for create forms from a model * Basic class for create forms from a model

View file

@ -2,7 +2,7 @@
namespace PhangoApp\PhaModels\Forms; namespace PhangoApp\PhaModels\Forms;
use PhangoApp\PhaModels\Webmodel; use PhangoApp\PhaModels\WebModel;
use PhangoApp\PhaModels\Forms\SelectForm; use PhangoApp\PhaModels\Forms\SelectForm;
use PhangoApp\PhaI18n\I18n; use PhangoApp\PhaI18n\I18n;

View file

@ -13,12 +13,12 @@ define('ORDER_DESC', 1);
/** /**
* The most important class for the framework * The most important class for the framework
* *
* Webmodel is a class for create objects that represent models. This models are a mirage of SQL tables. You can create fields, add indexes, foreign keys, and more. * WebModel is a class for create objects that represent models. This models are a mirage of SQL tables. You can create fields, add indexes, foreign keys, and more.
* *
* *
*/ */
class Webmodel { class WebModel {
/** /**
@ -456,7 +456,7 @@ class Webmodel {
public function __construct($name_model='', $cache=0, $type_cache='PhangoApp\PhaModels\Cache::file_cache') public function __construct($name_model='', $cache=0, $type_cache='PhangoApp\PhaModels\Cache::file_cache')
{ {
//Webmodel::$root_model='app/'.$name_model.'/'.Webmodel::$model_path; //WebModel::$root_model='app/'.$name_model.'/'.WebModel::$model_path;
if($name_model=='') if($name_model=='')
{ {
@ -472,24 +472,24 @@ class Webmodel {
$this->components[$this->idmodel]->name_component=$this->idmodel; $this->components[$this->idmodel]->name_component=$this->idmodel;
$this->label=$this->name; $this->label=$this->name;
if(!isset(Webmodel::$connection_func[$this->db_selected])) if(!isset(WebModel::$connection_func[$this->db_selected]))
{ {
Webmodel::$connection_func[$this->db_selected]='connect_to_db'; WebModel::$connection_func[$this->db_selected]='connect_to_db';
} }
$this->cache=$cache; $this->cache=$cache;
Webmodel::$type_cache=$type_cache; WebModel::$type_cache=$type_cache;
//Global access to models //Global access to models
Webmodel::$model[$name_model]=&$this; WebModel::$model[$name_model]=&$this;
//Webmodel::$m->$name_model=&Webmodel::$model[$name_model]; //WebModel::$m->$name_model=&WebModel::$model[$name_model];
//Webmodel::$m->__set($name_model, Webmodel::$model[$name_model]); //WebModel::$m->__set($name_model, WebModel::$model[$name_model]);
Webmodel::$model_type[get_class($this)]=1; WebModel::$model_type[get_class($this)]=1;
$this->load_components(); $this->load_components();
@ -510,7 +510,7 @@ class Webmodel {
/** /**
* Method for load models from a project. * Method for load models from a project.
* *
* @param string $model Model name. The model is search in Webmodel::$model_path and the name is $model.php * @param string $model Model name. The model is search in WebModel::$model_path and the name is $model.php
* *
*/ */
@ -533,7 +533,7 @@ class Webmodel {
$path_model=$model_path.'.php'; $path_model=$model_path.'.php';
if(!isset(Webmodel::$cache_model[$path_model])) if(!isset(WebModel::$cache_model[$path_model]))
{ {
if(is_file($path_model)) if(is_file($path_model))
@ -541,7 +541,7 @@ class Webmodel {
include($path_model); include($path_model);
Webmodel::$cache_model[$path_model]=1; WebModel::$cache_model[$path_model]=1;
} }
else else
@ -563,21 +563,21 @@ class Webmodel {
public function connect_to_db() public function connect_to_db()
{ {
include_once(__DIR__.'/Databases/'.Webmodel::$type_db.'.php'); include_once(__DIR__.'/Databases/'.WebModel::$type_db.'.php');
if(!SQLClass::webtsys_connect( Webmodel::$host_db[$this->db_selected], Webmodel::$login_db[$this->db_selected], Webmodel::$pass_db[$this->db_selected] , $this->db_selected)) if(!SQLClass::webtsys_connect( WebModel::$host_db[$this->db_selected], WebModel::$login_db[$this->db_selected], WebModel::$pass_db[$this->db_selected] , $this->db_selected))
{ {
throw new \Exception('Error: cannot connect to database'); throw new \Exception('Error: cannot connect to database');
} }
Webmodel::$select_db[$this->db_selected]=SQLClass::webtsys_select_db( Webmodel::$db[$this->db_selected] , $this->db_selected); WebModel::$select_db[$this->db_selected]=SQLClass::webtsys_select_db( WebModel::$db[$this->db_selected] , $this->db_selected);
if(Webmodel::$select_db[$this->db_selected]!=false && Webmodel::$connection[$this->db_selected]!=false) if(WebModel::$select_db[$this->db_selected]!=false && WebModel::$connection[$this->db_selected]!=false)
{ {
Webmodel::$connection_func[$this->db_selected]='dummy_connect_to_db'; WebModel::$connection_func[$this->db_selected]='dummy_connect_to_db';
} }
else else
@ -596,7 +596,7 @@ class Webmodel {
if($this->cache_query==true) if($this->cache_query==true)
{ {
call_user_func(Webmodel::$type_cache_query, $this->name); call_user_func(WebModel::$type_cache_query, $this->name);
} }
} }
@ -621,7 +621,7 @@ class Webmodel {
public function set_phango_connection() public function set_phango_connection()
{ {
$method_connection=Webmodel::$connection_func[$this->db_selected]; $method_connection=WebModel::$connection_func[$this->db_selected];
$this->$method_connection(); $this->$method_connection();
@ -1025,7 +1025,7 @@ class Webmodel {
} }
/** /**
* A simple method for reset the conditions properties of Webmodel * A simple method for reset the conditions properties of WebModel
*/ */
public function reset_conditions() public function reset_conditions()
@ -1057,7 +1057,7 @@ class Webmodel {
static public function save_cache_query() static public function save_cache_query()
{ {
call_user_func(Webmodel::$save_cache_query); call_user_func(WebModel::$save_cache_query);
} }
@ -1110,7 +1110,7 @@ class Webmodel {
if($this->cache==1) if($this->cache==1)
{ {
call_user_func(Webmodel::$refresh_cache, $this->name, $this->insert_id()); call_user_func(WebModel::$refresh_cache, $this->name, $this->insert_id());
} }
@ -1259,7 +1259,7 @@ class Webmodel {
if($this->cache==1) if($this->cache==1)
{ {
call_user_func(Webmodel::$refresh_cache, $this->name, $this->insert_id()); call_user_func(WebModel::$refresh_cache, $this->name, $this->insert_id());
} }
@ -1386,7 +1386,7 @@ class Webmodel {
//Set the where connection //Set the where connection
$arr_where[]=$this->name.'.`'.$my_field.'`='.$alias_model_related.'.`'.Webmodel::$model[$model_name_related]->idmodel.'`'; $arr_where[]=$this->name.'.`'.$my_field.'`='.$alias_model_related.'.`'.WebModel::$model[$model_name_related]->idmodel.'`';
} }
@ -1491,7 +1491,7 @@ class Webmodel {
$this->method_fetch_array='cached_fetch_array'; $this->method_fetch_array='cached_fetch_array';
$this->method_fetch_row='cached_fetch_row'; $this->method_fetch_row='cached_fetch_row';
if(!call_user_func(Webmodel::$check_cache, $md5_query, $this->name)) if(!call_user_func(WebModel::$check_cache, $md5_query, $this->name))
{ {
//Connect to db for make the caching //Connect to db for make the caching
@ -1502,14 +1502,14 @@ class Webmodel {
//Save the cache //Save the cache
call_user_func(Webmodel::$save_cache, $md5_query, $this->name, $query); call_user_func(WebModel::$save_cache, $md5_query, $this->name, $query);
} }
//Load the rows //Load the rows
call_user_func(Webmodel::$type_cache, $md5_query, $this->name); call_user_func(WebModel::$type_cache, $md5_query, $this->name);
return $md5_query; return $md5_query;
@ -1575,7 +1575,7 @@ class Webmodel {
$arr_model[]=$component->related_model.' as '.$table_name; $arr_model[]=$component->related_model.' as '.$table_name;
$arr_where[]=$this->name.'.`'.$key_component.'`='.$table_name.'.`'.Webmodel::$model[$component->related_model]->idmodel.'`'; $arr_where[]=$this->name.'.`'.$key_component.'`='.$table_name.'.`'.WebModel::$model[$component->related_model]->idmodel.'`';
$arr_check_count[$table_name]=1; $arr_check_count[$table_name]=1;
@ -1667,11 +1667,11 @@ class Webmodel {
foreach($this->related_models_delete as $arr_set_model) foreach($this->related_models_delete as $arr_set_model)
{ {
if( isset( Webmodel::$model[ $arr_set_model['model'] ]->components[ $arr_set_model['related_field'] ] ) ) if( isset( WebModel::$model[ $arr_set_model['model'] ]->components[ $arr_set_model['related_field'] ] ) )
{ {
$this->set_conditions('where '.$arr_set_model['related_field'].' IN ('.implode(', ', $arr_id).')'); $this->set_conditions('where '.$arr_set_model['related_field'].' IN ('.implode(', ', $arr_id).')');
Webmodel::$model[ $arr_set_model['model'] ]->delete(); WebModel::$model[ $arr_set_model['model'] ]->delete();
} }
@ -1866,8 +1866,8 @@ class Webmodel {
if($this->components[$field]->indexed==1) if($this->components[$field]->indexed==1)
{ {
Webmodel::$arr_sql_index[$this->name][$field]='CREATE INDEX `index_'.$this->name.'_'.$field.'` ON '.$this->name.'(`'.$field.'`);'; WebModel::$arr_sql_index[$this->name][$field]='CREATE INDEX `index_'.$this->name.'_'.$field.'` ON '.$this->name.'(`'.$field.'`);';
Webmodel::$arr_sql_set_index[$this->name][$field]=''; WebModel::$arr_sql_set_index[$this->name][$field]='';
} }
@ -1876,8 +1876,8 @@ class Webmodel {
if($this->components[$field]->unique==1) if($this->components[$field]->unique==1)
{ {
Webmodel::$arr_sql_unique[$this->name][$field]=' ALTER TABLE `'.$this->name.'` ADD UNIQUE (`'.$field.'`)'; WebModel::$arr_sql_unique[$this->name][$field]=' ALTER TABLE `'.$this->name.'` ADD UNIQUE (`'.$field.'`)';
Webmodel::$arr_sql_set_unique[$this->name][$field]=''; WebModel::$arr_sql_set_unique[$this->name][$field]='';
} }
@ -1887,15 +1887,15 @@ class Webmodel {
//Create indexes... //Create indexes...
Webmodel::$arr_sql_index[$this->name][$field]='CREATE INDEX `index_'.$this->name.'_'.$field.'` ON '.$this->name.'(`'.$field.'`);'; WebModel::$arr_sql_index[$this->name][$field]='CREATE INDEX `index_'.$this->name.'_'.$field.'` ON '.$this->name.'(`'.$field.'`);';
$table_related=$this->components[$field]->related_model->name; $table_related=$this->components[$field]->related_model->name;
$id_table_related=Webmodel::load_id_model_related($this->components[$field], Webmodel::$model); $id_table_related=WebModel::load_id_model_related($this->components[$field], WebModel::$model);
//'Id'.ucfirst($this->components[$field]->related_model); //'Id'.ucfirst($this->components[$field]->related_model);
Webmodel::$arr_sql_set_index[$this->name][$field]='ALTER TABLE `'.$this->name.'` ADD CONSTRAINT `'.$field.'_'.$this->name.'IDX` FOREIGN KEY ( `'.$field.'` ) REFERENCES `'.$table_related.'` (`'.$id_table_related.'`) ON DELETE CASCADE ON UPDATE CASCADE;'; WebModel::$arr_sql_set_index[$this->name][$field]='ALTER TABLE `'.$this->name.'` ADD CONSTRAINT `'.$field.'_'.$this->name.'IDX` FOREIGN KEY ( `'.$field.'` ) REFERENCES `'.$table_related.'` (`'.$id_table_related.'`) ON DELETE CASCADE ON UPDATE CASCADE;';
} }
} }
@ -1931,7 +1931,7 @@ class Webmodel {
$id_table_related=''; $id_table_related='';
if(!isset(Webmodel::$model[ $table_related ]->idmodel)) if(!isset(WebModel::$model[ $table_related ]->idmodel))
{ {
//$id_table_related='Id'.ucfirst(PhangoVar::$model[$key]->components[$new_field]->related_model); //$id_table_related='Id'.ucfirst(PhangoVar::$model[$key]->components[$new_field]->related_model);
@ -1940,11 +1940,11 @@ class Webmodel {
if(isset($foreignkeyfield->params_loading_mod['module']) && isset($foreignkeyfield->params_loading_mod['model'])) if(isset($foreignkeyfield->params_loading_mod['module']) && isset($foreignkeyfield->params_loading_mod['model']))
{ {
$model=Webmodel::load_model($foreignkeyfield->params_loading_mod); $model=WebModel::load_model($foreignkeyfield->params_loading_mod);
//obtain id //obtain id
$id_table_related=Webmodel::$model[ $foreignkeyfield->params_loading_mod['model'] ]->idmodel; $id_table_related=WebModel::$model[ $foreignkeyfield->params_loading_mod['model'] ]->idmodel;
/*unset(PhangoVar::$model[ $foreignkeyfield->params_loading_mod['model'] ]); /*unset(PhangoVar::$model[ $foreignkeyfield->params_loading_mod['model'] ]);
@ -1956,7 +1956,7 @@ class Webmodel {
else else
{ {
$id_table_related=Webmodel::$model[ $table_related ]->idmodel; $id_table_related=WebModel::$model[ $table_related ]->idmodel;
} }
@ -2220,7 +2220,7 @@ class Webmodel {
public function unset_no_required($post) public function unset_no_required($post)
{ {
return Webmodel::filter_fields_array($this->arr_fields_updated, $post); return WebModel::filter_fields_array($this->arr_fields_updated, $post);
} }
@ -2275,17 +2275,17 @@ class Webmodel {
} }
foreach(array_keys(Webmodel::$form_type) as $type) foreach(array_keys(WebModel::$form_type) as $type)
{ {
$type::js(); $type::js();
$type::css(); $type::css();
$type::header(); $type::header();
Webmodel::$form_type_checked[$type]=1; WebModel::$form_type_checked[$type]=1;
} }
Webmodel::$form_type=array(); WebModel::$form_type=array();
} }
@ -2312,10 +2312,10 @@ class Webmodel {
$type_class=get_class($this->forms[$component_name]); $type_class=get_class($this->forms[$component_name]);
if(!isset(Webmodel::$form_type_checked[$type_class])) if(!isset(WebModel::$form_type_checked[$type_class]))
{ {
Webmodel::$form_type[$type_class]=1; WebModel::$form_type[$type_class]=1;
} }
@ -2412,7 +2412,7 @@ class Webmodel {
/** /**
* API definition for method extensions based in function __call * API definition for method extensions based in function __call
* *
* This method is used for define an easy format for create extensions for Webmodel class. * This method is used for define an easy format for create extensions for WebModel class.
* *
* For create una extension, you need create a file called name_extension.php on libraries/classes_extensions/ directory where name_extension is the basic name of new method. * For create una extension, you need create a file called name_extension.php on libraries/classes_extensions/ directory where name_extension is the basic name of new method.
* On name_extension.php you must create a function with this name and arguments: * On name_extension.php you must create a function with this name and arguments:
@ -2427,12 +2427,12 @@ class Webmodel {
public function __call($name_method, $arguments) public function __call($name_method, $arguments)
{ {
if(!isset(Webmodel::$cache_extension[$name_method])) if(!isset(WebModel::$cache_extension[$name_method]))
{ {
include(__DIR__.'/../extensions/'.$name_method.'.php'); include(__DIR__.'/../extensions/'.$name_method.'.php');
Webmodel::$cache_extension[$name_method]=1; WebModel::$cache_extension[$name_method]=1;
} }
array_unshift($arguments, $this); array_unshift($arguments, $this);
@ -2480,7 +2480,7 @@ class Webmodel {
$this->components[$name]=$type_class; $this->components[$name]=$type_class;
//Set first label... //Set first label...
$this->components[$name]->label=Webmodel::set_name_default($name); $this->components[$name]->label=WebModel::set_name_default($name);
$this->components[$name]->name_model=$this->name; $this->components[$name]->name_model=$this->name;
$this->components[$name]->model_instance=&$this; $this->components[$name]->model_instance=&$this;
$this->components[$name]->name_component=$name; $this->components[$name]->name_component=$name;
@ -2608,9 +2608,9 @@ class Webmodel {
public function close() public function close()
{ {
Webmodel::$connection_func[$this->db_selected]='connect_to_db'; WebModel::$connection_func[$this->db_selected]='connect_to_db';
return SQLClass::webtsys_close(Webmodel::$connection[$this->db_selected]); return SQLClass::webtsys_close(WebModel::$connection[$this->db_selected]);
} }
@ -2629,6 +2629,6 @@ class SuperModel {
} }
Webmodel::$m=new SuperModel();*/ WebModel::$m=new SuperModel();*/
?> ?>

View file

@ -5,14 +5,14 @@ namespace PhangoApp\PhaModels;
/** /**
* A simple class for create where strings with checking. * A simple class for create where strings with checking.
* *
* With this extension, you can create sql strings for use on where parameter of select method from Webmodel. * With this extension, you can create sql strings for use on where parameter of select method from WebModel.
* *
* Example ['AND']->array( 'field' => array('!=', 25), 'field2' => array('=', 'value_field'), 'field3' => array('LIKE', 'value_field'), 'field4' => array('IN', array('1','2','3'), 'limit_sql' => array('LIMIT', array(1, 10), 'order_by' => array('order_fieldY', 'ASC' * Example ['AND']->array( 'field' => array('!=', 25), 'field2' => array('=', 'value_field'), 'field3' => array('LIKE', 'value_field'), 'field4' => array('IN', array('1','2','3'), 'limit_sql' => array('LIMIT', array(1, 10), 'order_by' => array('order_fieldY', 'ASC'
)) ))
* *
*You can join differents sql sentences *You can join differents sql sentences
* *
* @warning Phango developers recommend use Webmodel::check_where_sql method on a simple sql string * @warning Phango developers recommend use WebModel::check_where_sql method on a simple sql string
* *
*/ */
@ -59,7 +59,7 @@ class WhereSql {
list($field_select, $model_name, $field_name)=$this->set_safe_name_field(Webmodel::$model[$this->model_name], $field); list($field_select, $model_name, $field_name)=$this->set_safe_name_field(WebModel::$model[$this->model_name], $field);
$op=$operation[0]; $op=$operation[0];
@ -70,7 +70,7 @@ class WhereSql {
case '=': case '=':
$value=Webmodel::$model[$model_name]->components[$field_name]->simple_check($value); $value=WebModel::$model[$model_name]->components[$field_name]->simple_check($value);
$arr_to_glued[]=$field_select.' '.$op.' \''.$value.'\''; $arr_to_glued[]=$field_select.' '.$op.' \''.$value.'\'';
@ -78,7 +78,7 @@ class WhereSql {
case '!=': case '!=':
$value=Webmodel::$model[$model_name]->components[$field_name]->simple_check($value); $value=WebModel::$model[$model_name]->components[$field_name]->simple_check($value);
$arr_to_glued[]=$field_select.' '.$op.' \''.$value.'\''; $arr_to_glued[]=$field_select.' '.$op.' \''.$value.'\'';
@ -86,7 +86,7 @@ class WhereSql {
case 'LIKE': case 'LIKE':
$value=Webmodel::$model[$model_name]->components[$field_name]->simple_check($value); $value=WebModel::$model[$model_name]->components[$field_name]->simple_check($value);
$arr_to_glued[]=$field_select.' '.$op.' \''.$value.'\''; $arr_to_glued[]=$field_select.' '.$op.' \''.$value.'\'';
@ -98,7 +98,7 @@ class WhereSql {
foreach($value as $key_val => $val) foreach($value as $key_val => $val)
{ {
$value[$key_val]=Webmodel::$model[$model_name]->components[$field_name]->check($val); $value[$key_val]=WebModel::$model[$model_name]->components[$field_name]->check($val);
} }
@ -157,7 +157,7 @@ class WhereSql {
foreach($this->order_by as $arr_order) foreach($this->order_by as $arr_order)
{ {
list($field_select, $model_name, $field_name)=$this->set_safe_name_field(Webmodel::$model[$this->model_name], $arr_order['field']); list($field_select, $model_name, $field_name)=$this->set_safe_name_field(WebModel::$model[$this->model_name], $arr_order['field']);
$arr_order_final[]=$field_name.' '.$arr_order['order']; $arr_order_final[]=$field_name.' '.$arr_order['order'];