Ejemplo n.º 1
0
 public function mStep3(Vtiger_Request $request)
 {
     $system = $request->get('system');
     $source_directory = $request->get('source_directory');
     $username = $request->get('username');
     $password = $request->get('password');
     $errorText = '';
     $loginStatus = false;
     $migrationURL = 'Install.php?mode=execute&ajax=true&system=' . $system . '&user='******'result']) {
         include 'config/config.inc.php';
         $adb = new PearDatabase($dbconfig['db_type'], $dbconfig['db_hostname'], $dbconfig['db_name'], $dbconfig['db_username'], $dbconfig['db_password']);
         vglobal('adb', $adb);
         $query = "SELECT crypt_type, user_name FROM vtiger_users WHERE user_name=?";
         $result = $adb->requirePsSingleResult($query, array($username), true);
         if ($adb->num_rows($result) > 0) {
             $crypt_type = $adb->query_result($result, 0, 'crypt_type');
             $salt = substr($username, 0, 2);
             if ($crypt_type == 'MD5') {
                 $salt = '$1$' . $salt . '$';
             } elseif ($crypt_type == 'BLOWFISH') {
                 $salt = '$2$' . $salt . '$';
             } elseif ($crypt_type == 'PHP5.3MD5') {
                 $salt = '$1$' . str_pad($salt, 9, '0');
             }
             $encrypted_password = crypt($password, $salt);
             $query = "SELECT 1 from vtiger_users where user_name=? AND user_password=? AND status = ?";
             $result = $adb->requirePsSingleResult($query, array($username, $encrypted_password, 'Active'), true);
             if ($adb->num_rows($result) > 0) {
                 $loginStatus = true;
             }
         }
         if (!$loginStatus) {
             $errorText = 'LBL_WRONG_USERNAME_OR_PASSWORD';
             file_put_contents('config/config.inc.php', '');
         }
     } else {
         $errorText = $createConfig['text'];
     }
     $viewer->setTemplateDir('install/tpl/');
     $viewer->assign('LANG', $request->get('lang'));
     $viewer->assign('MIGRATIONURL', $migrationURL);
     $viewer->assign('ERRORTEXT', $errorText);
     $viewer->assign('MIGRATIONRESULT', $migrationResult);
     echo $viewer->fetch('mStep3.tpl');
     if ($loginStatus) {
         echo $viewer->fetch('mStep3Pre.tpl');
         $migrationResult = Install_InitSchema_Model::executeMigrationSchema($system, $username, $source_directory);
         echo $viewer->fetch('mStep3Post.tpl');
     }
 }