PATH:
home
/
letacommog
/
letaweb
/
install
/
models
<?php class InstallForm extends CFormModel { public $database_user_name; public $database_name; public $database_password; public $database_host_name; public $admin_user_name; public $admin_user_password; public function rules() { return array( array('admin_user_name','email'), array('database_user_name, database_name,database_host_name,admin_user_name,admin_user_password', 'required'), array('id, database_password', 'safe'), ); } public function save($item = null) { if ($this->validate()) { try { $db = new CDbConnection(); $db->connectionString = 'mysql:host='.$this->database_host_name.';dbname='.$this->database_name; $db->password = $this->database_password; $db->username = $this->database_user_name; $db->setActive(true); Yii::import('site_app.classes.DLDatabaseHelper'); DLDatabaseHelper::import($db, Yii::getPathofAlias('application').DIRECTORY_SEPARATOR.'sql.sql'); DLDatabaseHelper::import($db, Yii::getPathofAlias('application').DIRECTORY_SEPARATOR.'data.sql'); $s = '<?php '; $s .= '$mainSiteUrls=array("'.$_SERVER['HTTP_HOST'].'");'; $s .= '$db_host="'.$this->database_host_name.'";'; $s .= '$db_name="'.$this->database_name.'";'; $s .= '$db_username="'.$this->database_user_name.'";'; $s .= '$db_password="'.$this->database_password.'";'; $hande = fopen(Yii::getPathofAlias('webroot').DIRECTORY_SEPARATOR.'config.php', 'w'); fwrite($hande, $s); fclose($hande); Yii::import('site_app.classes.Randomness'); $db->createCommand()->update('tbl_user', array('email' => $this->admin_user_name, 'password' => crypt($this->admin_user_password, Randomness::blowfishSalt())), 'id=1'); $db->createCommand()->update('tbl_configuration', array('value' => $_SERVER['HTTP_HOST']), 'name=:name', array(':name' => 'mainsite_url')); $s = "<?php return array('start_plan'=>1,'thumbnail_url'=>'','default_plan'=>1,'default_expired_date'=>15,'mainsite_url'=>'".stripDomain($_SERVER['HTTP_HOST'])."','best_plan'=>2,'language'=>'en','admin_email'=>'','admin_email_from_name'=>'SiteBuilder','forgotpassword_mail_template'=>0,'welcome_mail_template'=>0,'activation_mail_template'=>0,'mail_activation'=>0,);"; $hande = fopen(Yii::getPathofAlias('webroot').DIRECTORY_SEPARATOR.'mainsite_config.php', 'w'); fwrite($hande, $s); fclose($hande); } catch (Exception $e) { $this->addError('', $e->getMessage()); return false; } return true; } else { return false; } } }
[+]
..
[-] InstallConfigForm.php
[edit]
[-] InstallForm.php
[edit]