/** * Execute the console command. * * @return mixed */ public function fire() { ini_set('max_execution_time', 0); $data = DB::select('select * from question'); $insert = []; foreach ($data as $d) { $insert[] = ['id' => $d->id, 'name' => $d->question, 'id_question_type' => $d->answer_type_id]; } Question::insert($insert); }
/** * Load edit/new question screen depending on $action. * * @access public * @param string $sa subaction * @param int $surveyid * @param int $gid * @param int $qid * @return void */ public function index($sa, $surveyid, $gid, $qid = null) { App()->getClientScript()->registerPackage('qTip2'); $action = $sa; $surveyid = $iSurveyID = sanitize_int($surveyid); $gid = sanitize_int($gid); if (isset($qid)) { $qid = sanitize_int($qid); } $aViewUrls = array(); $aData['surveyid'] = $surveyid; $aData['gid'] = $gid; $aData['qid'] = $qid; $aData['display']['menu_bars']['surveysummary'] = 'viewgroup'; $aData['display']['menu_bars']['gid_action'] = 'addquestion'; $surveyinfo = Survey::model()->findByPk($iSurveyID)->surveyinfo; $aData['title_bar']['title'] = $surveyinfo['surveyls_title'] . "(" . gT("ID") . ":" . $iSurveyID . ")"; $aData['questiongroupbar']['savebutton']['form'] = 'frmeditgroup'; $aData['questiongroupbar']['saveandclosebutton']['form'] = 'frmeditgroup'; $aData['questiongroupbar']['closebutton']['url'] = 'admin/questions/sa/view/surveyid/' . $surveyid . '/gid/' . $gid . '/qid/' . $qid; Yii::app()->session['FileManagerContext'] = "create:question:{$surveyid}"; if (Permission::model()->hasSurveyPermission($surveyid, 'surveycontent', 'read')) { $surveyinfo = getSurveyInfo($surveyid); Yii::app()->loadHelper('admin/htmleditor'); Yii::app()->loadHelper('surveytranslator'); if (isset($_POST['sortorder'])) { $postsortorder = sanitize_int($_POST['sortorder']); } $aData['adding'] = $adding = $action == 'addquestion'; $aData['copying'] = $copying = $action == 'copyquestion'; $questlangs = Survey::model()->findByPk($surveyid)->additionalLanguages; $baselang = Survey::model()->findByPk($surveyid)->language; $questlangs[] = $baselang; $questlangs = array_flip($questlangs); // Prepare selector Mode TODO: with and without image if (!$adding) { Yii::app()->session['FileManagerContext'] = "edit:question:{$surveyid}"; $aData['display']['menu_bars']['qid_action'] = 'editquestion'; $egresult = Question::model()->findAllByAttributes(array('sid' => $surveyid, 'gid' => $gid, 'qid' => $qid)); foreach ($egresult as $esrow) { if (!array_key_exists($esrow->language, $questlangs)) { // Language Exists, BUT ITS NOT ON THE SURVEY ANYMORE. $esrow->delete(); } else { $questlangs[$esrow->language] = 99; } if ($esrow->language == $baselang) { $esrow = $esrow->attributes; $basesettings = array('question_order' => $esrow['question_order'], 'other' => $esrow['other'], 'mandatory' => $esrow['mandatory'], 'type' => $esrow['type'], 'title' => $esrow['title'], 'preg' => $esrow['preg'], 'question' => $esrow['question'], 'help' => $esrow['help']); } } if (!$egresult) { $this->getController()->error('Invalid question id'); } while (list($key, $value) = each($questlangs)) { if ($value != 99) { $arQuestion = new Question(); $arQuestion->qid = $qid; $arQuestion->sid = $surveyid; $arQuestion->gid = $gid; $arQuestion->type = $basesettings['type']; $arQuestion->title = $basesettings['title']; $arQuestion->question = $basesettings['question']; $arQuestion->preg = $basesettings['preg']; $arQuestion->help = $basesettings['help']; $arQuestion->other = $basesettings['other']; $arQuestion->mandatory = $basesettings['mandatory']; $arQuestion->question_order = $basesettings['question_order']; $arQuestion->language = $key; $arQuestion->insert(); } } $eqresult = Question::model()->with('groups')->together()->findByAttributes(array('sid' => $surveyid, 'gid' => $gid, 'qid' => $qid, 'language' => $baselang)); } else { // This is needed to properly color-code content if it contains replacements LimeExpressionManager::StartProcessingPage(false, Yii::app()->baseUrl, true); // so can click on syntax highlighting to edit questions } $qtypelist = getQuestionTypeList('', 'array'); $qDescToCode = 'qDescToCode = {'; $qCodeToInfo = 'qCodeToInfo = {'; foreach ($qtypelist as $qtype => $qdesc) { $qDescToCode .= " '{$qdesc['description']}' : '{$qtype}', \n"; $qCodeToInfo .= " '{$qtype}' : '" . ls_json_encode($qdesc) . "', \n"; } $aData['qTypeOutput'] = "{$qDescToCode} 'null':'null' }; \n {$qCodeToInfo} 'null':'null' };"; if (!$adding) { if (is_object($eqresult->groups)) { $eqrow = array_merge($eqresult->attributes, $eqresult->groups->attributes); } else { $eqrow = $eqresult->attributes; } // Todo: handler in case that record is not found if ($copying) { $eqrow['title'] = ''; } } else { $eqrow['language'] = $baselang; $eqrow['title'] = ''; $eqrow['question'] = ''; $eqrow['help'] = ''; $eqrow['type'] = 'T'; $eqrow['lid'] = 0; $eqrow['lid1'] = 0; $eqrow['gid'] = $gid; $eqrow['other'] = 'N'; $eqrow['mandatory'] = 'N'; $eqrow['preg'] = ''; $eqrow['relevance'] = 1; $eqrow['group_name'] = ''; } $eqrow['conditions_number'] = Condition::Model()->count("qid=:qid", array('qid' => $qid)); if ($eqrow['modulename'] != null) { $oQuestionModule = Question::getQuestionModule($esrow['modulename']); $questionTitle = (array) $oQuestionModule->title; $questionModuleName = (array) $oQuestionModule->modulename; $eqrow['modulename'] = $questionModuleName[0]; $eqrow['moduletitle'] = $questionTitle[0]; } $aData['eqrow'] = $eqrow; $aData['surveyid'] = $surveyid; $aData['gid'] = $gid; if (!$adding) { $criteria = new CDbCriteria(); $criteria->addColumnCondition(array('sid' => $surveyid, 'gid' => $gid, 'qid' => $qid)); $criteria->params[':lang'] = $baselang; $criteria->addCondition('language != :lang'); $aqresult = Question::model()->findAll($criteria); $aData['aqresult'] = $aqresult; } $aData['action'] = $action; $sumresult1 = Survey::model()->findByPk($surveyid); if (is_null($sumresult1)) { $this->getController()->error('Invalid Survey ID'); } $surveyinfo = $sumresult1->attributes; $surveyinfo = array_map('flattenText', $surveyinfo); $aData['activated'] = $activated = $surveyinfo['active']; if ($activated != "Y") { // Prepare selector Class for javascript function if (Yii::app()->session['questionselectormode'] !== 'default') { $selectormodeclass = Yii::app()->session['questionselectormode']; } else { $selectormodeclass = getGlobalSetting('defaultquestionselectormode', 'default'); } $aData['selectormodeclass'] = $selectormodeclass; } if (!$adding) { $qattributes = questionAttributes(); } else { $qattributes = array(); } if ($adding) { // Get the questions for this group $baselang = Survey::model()->findByPk($surveyid)->language; $oqresult = Question::model()->findAllByAttributes(array('sid' => $surveyid, 'gid' => $gid, 'language' => $baselang, 'parent_qid' => 0), array('order' => 'question_order')); $aData['oqresult'] = $oqresult; } App()->getClientScript()->registerScriptFile(App()->getAssetManager()->publish(ADMIN_SCRIPT_PATH . 'questions.js')); $aData['sValidateUrl'] = $adding || $copying ? $this->getController()->createUrl('admin/questions', array('sa' => 'ajaxValidate', 'surveyid' => $surveyid)) : $this->getController()->createUrl('admin/questions', array('sa' => 'ajaxValidate', 'surveyid' => $surveyid, 'qid' => $qid)); $aData['addlanguages'] = Survey::model()->findByPk($surveyid)->additionalLanguages; $aViewUrls['editQuestion_view'][] = $aData; $aViewUrls['questionJavascript_view'][] = array('type' => $eqrow['type']); } else { include 'accessDenied.php'; } $aData['ajaxDatas']['sValidateUrl'] = isset($aData['sValidateUrl']) ? $aData['sValidateUrl'] : $this->getController()->createUrl('admin/questions', array('sa' => 'ajaxValidate', 'surveyid' => $surveyid)); $aData['ajaxDatas']['qTypeOutput'] = $aData['qTypeOutput']; /////////// // sidemenu $aData['sidemenu']['state'] = false; $aData['sidemenu']['explorer']['state'] = true; $aData['sidemenu']['explorer']['gid'] = isset($gid) ? $gid : false; $aData['sidemenu']['explorer']['qid'] = isset($qid) ? $qid : false; $this->_renderWrappedTemplate('survey/Question', $aViewUrls, $aData); }
function addAnswer() { $question = new Question($_POST); if ($question1 = Question::getAnswerByUserId($_SESSION['userId'], $question->question)) { $question->id = $question1->id; $question->update(); } else { $question->insert(); } header('main.php?action = login'); }
<?php require_once "/etc/apache2/capstone-mysql/encrypted-config.php"; require_once "question.php"; $pdo = connectToEncryptedMySQL("/etc/apache2/data-design/jfindley2.ini"); $question = new Question(null, 1, 2, "Huh?", null); $question->insert($pdo); $question->setQuestionText("What?"); $question->update($pdo); $question->delete($pdo);