/** * Constructs a new install wizard * @param string $action URL where the wizard form will point to * @return null */ public function __construct($action) { parent::__construct($action, self::NAME); $this->installer = new Installer(); $this->addStep(InstallStepProfile::NAME, new InstallStepProfile()); $this->addStep(InstallStepRequirement::NAME, new InstallStepRequirement()); $this->addStep(InstallStepLocalization::NAME, new InstallStepLocalization()); $this->addStep(InstallStepInstallation::NAME, new InstallStepInstallation()); $this->addStep(InstallStepFinish::NAME, new InstallStepFinish()); $steps = $this->getProfileSteps(); foreach ($steps as $name => $step) { $this->addStep($name, $step); } }
/** * Constructs a new model wizard * @param string $action URL where the wizard form will point to * @param string $modelName Name of a model to initialize the wizard with * @return null */ public function __construct($action, $modelName = null) { parent::__construct($action, self::NAME); $this->addStep(ModelGeneralStep::NAME, new ModelGeneralStep()); $this->addStep(FieldStep::NAME, new FieldStep()); $this->addStep(DataFormatStep::NAME, new DataFormatStep()); $this->addStep(IndexStep::NAME, new IndexStep()); $this->addStep(FinishStep::NAME, new FinishStep()); if (!$modelName) { return; } $this->reset(); $model = ModelManager::getInstance()->getModel($modelName); $meta = $model->getMeta(); $modelTable = clone $meta->getModelTable(); $modelClass = get_class($model); $dataClass = $meta->getDataClassName(); $this->setVariable(self::VARIABLE_MODEL_TABLE, $modelTable); $this->setVariable(self::VARIABLE_MODEL_CLASS, $modelClass); $this->setVariable(self::VARIABLE_DATA_CLASS, $dataClass); $this->setVariable(self::VARIABLE_MODEL_EXISTS, true); }