Exemplo n.º 1
0
 /**
  *  Instance Methods 
  */
 function __construct($model_name)
 {
     if (!is_string($model_name)) {
         debug::error('Model::__construct - $model_name must be a string.');
     }
     $this->model_name = $model_name;
     $this->schema = ORM::getSchema($model_name);
     foreach ($this->schema as $field) {
         $this->_data[$field->name] = null;
         $this->_synced_data[$field->name] = null;
     }
     $this->is_synced = true;
 }
Exemplo n.º 2
0
 public function backup()
 {
     if (!auth::check(self::AUTH_REALM)) {
         $this->access_denied();
     }
     $dump = "";
     $models = $this->getModels();
     foreach ($this->getModels() as $model) {
         $model_name = substr($model['info']['basename'], 0, strpos($model['info']['basename'], '.xml'));
         $schema = ORM::getSchema($model_name);
         // Drop the table
         $dump .= "DROP TABLE IF EXISTS `{$schema->table}`;\n";
         // Create the table
         $create_sql = $schema->getCreateString();
         $dump .= "{$create_sql}\n\n";
         // Dump the table data
         $model_instances = ORM::retrieveAll($model_name);
         foreach ($model_instances as $instance) {
             $insert_query = $instance->getSaveQuery(true);
             $dump .= "{$insert_query}\n";
         }
         $dump .= "\n";
     }
     $this->template->content = new View('ksetup_backup');
     $this->template->action = 'backup';
     $this->template->dump = $dump;
     $this->template->render();
 }
Exemplo n.º 3
0
 static function formatColumnReference($column_reference, Criteria $criteria)
 {
     // Reference has table/column
     if (strpos($column_reference, '.') > 0) {
         $column_composition = explode('.', $column_reference);
         $schema = ORM::getSchema($column_composition[0]);
         return '`' . trim($schema->table, '`') . '`.`' . trim($column_composition[1], '`') . '`';
     } elseif (self::isCustomSelectColumn($column_reference, $criteria)) {
         $schema = self::getSchema($criteria->from_model_name);
         return "`{$schema->table}__{$column_reference}`";
     } else {
         $schema = ORM::getSchema($criteria->from_model_name);
         return '`' . trim($schema->table, '`') . '`.`' . $column_reference . '`';
     }
 }