/** * List the CrudIgniter options * * @since 1.0 * @access public * @return void */ public function listOptions() { $result = ConsoleIgniter::writeQuestion('What do you want to generate?', array('MODEL', 'VIEW', 'CONTROLLER', 'EXIT'), 0); $generator = null; $result = strtolower($result); switch ($result) { case 0: if (class_exists('MY_ModelGenerator')) { $generator = new MY_ModelGenerator(); } else { $generator = new ModelGenerator(); } break; case 1: if (class_exists('MY_ViewGenerator')) { $generator = new MY_ViewGenerator(); } else { $generator = new ViewGenerator(); } break; case 2: if (class_exists('MY_ControllerGenerator')) { $generator = new MY_ControllerGenerator(); } else { $generator = new ControllerGenerator(); } break; default: ConsoleIgniter::bye(); } $generator->generate(); ConsoleIgniter::bye(); }
/** * Ask if the user wanna profile the application * * @since 1.0 * @access private * @return void */ private function profile() { $wannaProfile = ConsoleIgniter::writeQuestion('Do you want to do a profile?', array('y', 'n'), 1); if ($wannaProfile == 0) { $this->tables[$this->choosedLayer]['Profile'] = true; } }
/** * Ask for the field's human name * * @since 1.0 * @access private * @param array $field the field that will recive the name * @return void */ private function humanName(&$field) { $field['Name'] = ConsoleIgniter::writeQuestion("What is the human name to the field {$field['Field']}?"); }
/** * Create the project's database configurations file * * @since 1.0 * @access private * @return void */ private function createDbConfig() { //-------------------------------------------------------------------- // DEFINE THE DATABASE CONFIGURATION //-------------------------------------------------------------------- $db = array(); $driverTypes = array('mysql'); $db['dbdriver'] = $driverTypes[ConsoleIgniter::writeQuestion('What is the database driver?', $driverTypes, 0)]; $db['hostname'] = ConsoleIgniter::writeQuestion('What is the host of the database server?', null, 'localhost'); $db['username'] = ConsoleIgniter::writeQuestion('What is the database username?', null, 'root'); $db['password'] = ConsoleIgniter::writeQuestion('What is the database password?', null, null, true); $db['database'] = ConsoleIgniter::writeQuestion('What is the name of the database?', null, 'code_igniter'); //-------------------------------------------------------------------- // SHOW THE DATABASE CONFIGURATION //-------------------------------------------------------------------- ConsoleIgniter::write(''); ConsoleIgniter::line(); ConsoleIgniter::write('The following database configuration will be created.'); ConsoleIgniter::line(); ConsoleIgniter::write('Driver : ' . $db['dbdriver']); ConsoleIgniter::write('Host : ' . $db['hostname']); ConsoleIgniter::write('Username : '******'username']); ConsoleIgniter::write('Password : '******'password']); ConsoleIgniter::write('Database : ' . $db['database']); ConsoleIgniter::line(); $confirm = ConsoleIgniter::writeQuestion('The information above is correct?', array('y', 'n'), 0); if ($confirm != 0) { ConsoleIgniter::bye(); } //-------------------------------------------------------------------- // SAVE THE DATABASE CONFIGURATION //-------------------------------------------------------------------- if (!file_exists(TEMPLATES_PATH . DS . 'db.php')) { ConsoleIgniter::write('ERROR!'); ConsoleIgniter::write('Template: "' . TEMPLATES_PATH . DS . 'db.php" not found!'); ConsoleIgniter::bye(); } ob_start(); require TEMPLATES_PATH . DS . 'db.php'; $template = ob_get_clean(); $template = "<?php\n" . $template; file_put_contents(PROJECTS_PATH . DS . self::$name . DS . 'db.php', $template); ConsoleIgniter::write('Database configuration was successfully created.'); }
/** * Verify if a file can be overrided * * @since 1.0 * @access protected * @param string $file the file to verify * @return boolean */ protected function overrideFile($file) { if (file_exists($file)) { $wannaOverride = ConsoleIgniter::writeQuestion('The file ' . $file . ' already exists, do you want to override?', array('y', 'n'), 0); if ($wannaOverride == 0) { return true; } else { return false; } } return true; }