Alexander Yakovlev
8c8b61dd29
Also in development mode now you can install the database - provided you configured Kohana.
26 lines
976 B
PHP
26 lines
976 B
PHP
<?php defined('SYSPATH') or die('No direct script access.');
|
|
|
|
class Controller_Install extends Controller_Template {
|
|
public $template = 'install';
|
|
public function action_view() {
|
|
if ((Kohana::$environment == Kohana::PRODUCTION)) $this->request->redirect('');
|
|
if ($_POST){
|
|
if ($this->request->post('create')){
|
|
DB::query(NULL,'CREATE DATABASE '.$database.';')->execute();
|
|
}
|
|
$queries = fopen(Kohana::find_file('', 'database', 'sql'), "r");
|
|
while (!feof($queries)) {
|
|
$buffer = fgets($queries);//btw: by default reads 1kb of string!
|
|
DB::query(NULL,$buffer)->execute();
|
|
}
|
|
fclose($queries);
|
|
$user = ORM::factory('user')->values(arr::extract($this->request->post(), array('username', 'password', 'email', 'password_confirm')));
|
|
$user->create();
|
|
$login_role = new Model_Role(array('name' =>'login'));
|
|
$admin_role = new Model_Role(array('name' =>'admin'));
|
|
$user->add('roles',$admin_role);
|
|
$user->add('roles',$login_role);
|
|
}
|
|
}
|
|
}
|