private void BindAnswerOptions()
        {
            if (NSurveyUser.Identity.IsAdmin ||
                NSurveyUser.Identity.HasAllSurveyAccess)
            {
                _answerTypes = new AnswerTypes().GetAnswerTypesList();
            }
            else
            {
                _answerTypes =
                    new AnswerTypes().GetAssignedAnswerTypesList(NSurveyUser.Identity.UserId, getSurveyId());
            }

            AnswerTypeDropDownList.DataSource     = _answerTypes;
            AnswerTypeDropDownList.DataMember     = "AnswerTypes";
            AnswerTypeDropDownList.DataTextField  = "Description";
            AnswerTypeDropDownList.DataValueField = "AnswerTypeID";
            AnswerTypeDropDownList.DataBind();
            TranslateListControl(AnswerTypeDropDownList);
            AnswerTypeDropDownList.Items.Insert(0,
                                                new ListItem(GetPageResource("SelectTypeMessage"), "-1"));
            AnswerTypeDropDownList.SelectedValue = "1";
            _answers = new Answers().GetAnswers(_parentQuestionId, ChildsLanguageDropdownlist.SelectedValue);
            ColsDataGrid.Columns[2].Visible = RatingCheckbox.Checked;
            ColsDataGrid.DataSource         = _answers;
            ColsDataGrid.DataMember         = "Answers";
            ColsDataGrid.DataKeyField       = "AnswerId";
            ColsDataGrid.DataBind();
        }
コード例 #2
0
    public AnswerTypes GetMostPickedAnswerType(out float answerPercentage)
    {
        AnswerTypes answerType = AnswerTypes.RELATIONSHIPS;

        if (eachMarbles == null)
        {
            ResetScore();
        }
        int answerAmount = eachMarbles[answerType];

        foreach (KeyValuePair <AnswerTypes, int> pair in eachMarbles)
        {
            if (pair.Value > answerAmount)
            {
                answerType   = pair.Key;
                answerAmount = pair.Value;
            }
        }

        float percentage = (float)answerAmount / totalMarbles;

        answerPercentage = percentage;

        return(answerType);
    }
コード例 #3
0
    public void SetMarbleType(AnswerTypes answerType)
    {
        marbleType = answerType;

        Material pickedMaterial = this.GetComponent <Renderer>().material;

        switch (answerType)
        {
        case AnswerTypes.RELATIONSHIPS:
            pickedMaterial = possibleMaterials[0];
            break;

        case AnswerTypes.EDUCATION:
            pickedMaterial = possibleMaterials[1];
            break;

        case AnswerTypes.ECONOMY:
            pickedMaterial = possibleMaterials[2];
            break;

        case AnswerTypes.NATURE:
            pickedMaterial = possibleMaterials[3];
            break;

        case AnswerTypes.HUMANITY:
            pickedMaterial = possibleMaterials[4];
            break;

        case AnswerTypes.ARTS:
            pickedMaterial = possibleMaterials[5];
            break;
        }
        this.GetComponent <Renderer>().material = pickedMaterial;
    }
コード例 #4
0
        /// <summary>
        /// Конвертирует AnswerTypes в строку для JSON запроса.
        /// </summary>
        public static string EnumTypeToString(AnswerTypes type)
        {
            switch (type)
            {
            case AnswerTypes.Ok:
                return(AnswerJsonTypes.Ok);

            case AnswerTypes.Error:
                return(AnswerJsonTypes.Error);

            case AnswerTypes.ShotOfTheEnemy:
                return(AnswerJsonTypes.ShotOfTheEnemy);

            case AnswerTypes.GameReady:
                return(AnswerJsonTypes.GameReady);

            case AnswerTypes.ShotResult:
                return(AnswerJsonTypes.ShotResult);

            case AnswerTypes.Games:
                return(AnswerJsonTypes.Games);

            case AnswerTypes.Yes:
                return(AnswerJsonTypes.Yes);

            case AnswerTypes.No:
                return(AnswerJsonTypes.No);
            }

            throw new ArgumentException($"Тип не определён, тип - {type.ToString()}.", nameof(type));
        }
コード例 #5
0
 public DialogDto(string conversationId, Guid answerId, string intent, string answer, AnswerTypes answerType = AnswerTypes.Text)
 {
     ConversationId = conversationId;
     Id             = answerId;
     Intent         = intent;
     Answer         = answer;
     AnswerType     = answerType;
 }
コード例 #6
0
 public Database(AnswerTypes answerType, string answer, Persons person)
 {
     AnswerTypes = answerType;
     Answers     = new Dictionary <Persons, List <string> > {
         { person, new List <string> {
               answer
           } }
     };
 }
コード例 #7
0
        private static void AddData(AnswerTypes answerType, string answer)
        {
            IsExist();
            var file   = File.ReadAllText("database.bin");
            var person = CheckPerson(answer);

            if (file.Length == 0)
            {
                var list = new List <Database>()
                {
                    new(answerType, answer, person)
                };
                var serialize = JsonConvert.SerializeObject(list, Formatting.Indented);
                File.WriteAllText("database.bin", serialize);
            }
            else
            {
                var deserialized = JsonConvert.DeserializeObject <List <Database> >(file);
                //if (deserialized.Any(value => value.answers.Contains(answer)))
                if (deserialized.Any(value => value.Answers.Values.Any(x => x.Contains(answer))))
                {
                    return;
                }

                if (deserialized.Any(x => x.AnswerTypes.Equals(answerType)))
                {
                    //
                    //foreach (var database in deserialized.Where(x=>x.answerTypes.Equals(answerType)))
                    var database = deserialized.First(x => x.AnswerTypes.Equals(answerType));
                    {
                        if (database.Answers.Values.Any(x => x.Contains(answer)))
                        {
                            return;
                        }
                        if (!database.Answers.ContainsKey(person))
                        {
                            database.Answers.Add(person, new List <string> {
                                answer
                            });
                        }
                        else
                        {
                            database.Answers[person].Add(answer);
                        }
                    }
                }
                else
                {
                    deserialized.Add(new Database(answerType, answer, person));
                }
                var serializeAgain = JsonConvert.SerializeObject(deserialized, Formatting.Indented);
                File.WriteAllText("database.bin", serializeAgain);
            }
        }
コード例 #8
0
ファイル: AnswerFactory.cs プロジェクト: wcolorless/DataWell
 public static bool CheckAnswerType(AnswerTypes expectedType, string answer)
 {
     try
     {
         var baseObj = JsonConvert.DeserializeObject <BaseAnswer>(answer);
         return(baseObj.Type == expectedType);
     }
     catch (Exception e)
     {
         throw new Exception($"AnswerFactory CheckAnswerType Error: {e.Message}");
     }
 }
コード例 #9
0
ファイル: GameOver.cs プロジェクト: Ruari026/Surge-Jam-2020
 private void RunMarbleRunAnalysis()
 {
     currentSpawnTime += Time.deltaTime;
     if (currentSpawnTime >= timeBetweenSpawns)
     {
         if (marblesToSpawn.Count > 0)
         {
             AnswerTypes newMarble = marblesToSpawn.Dequeue();
             MarbleSpawner.instance.SpawnMarble(newMarble);
         }
         currentSpawnTime = 0;
     }
 }
コード例 #10
0
    public void SpawnMarble(AnswerTypes answerType)
    {
        Vector3 spawnPos = new Vector3
        {
            x = Random.Range(minSpawnPos.position.x, maxSpawnPos.position.x),
            y = minSpawnPos.position.y,
            z = minSpawnPos.position.z
        };

        MarbleController newMarble = Instantiate(marblePrefab, this.transform).GetComponent <MarbleController>();

        newMarble.transform.position = spawnPos;

        newMarble.SetMarbleType(answerType);
    }
コード例 #11
0
        private void Page_Load(object sender, System.EventArgs e)
        {
            LocalizePage();

            MessageLabel.Visible = false;
            DeleteAnswerButton.Attributes.Add("onClick",
                                              "javascript:if(confirm('" + ((PageBase)Page).GetPageResource("DeleteAnswerConfirmationMessage") + "')== false) return false;");

            if (!Page.IsPostBack)
            {
                BindData();
            }

            AnswerTypeData typeData = new AnswerTypes().GetAnswerTypeById(int.Parse(AnswerTypeDropDownList.SelectedValue, System.Globalization.CultureInfo.InvariantCulture));

            SetUIState(typeData.AnswerTypes[0].TypeMode, false);
        }
コード例 #12
0
ファイル: GameOver.cs プロジェクト: Ruari026/Surge-Jam-2020
    /*
     * ========================================================================================================================================================================================================
     * Marble Analysis Handling
     * ========================================================================================================================================================================================================
     */
    private void PickFactsToShow()
    {
        AnswerTypes mostMarbleType = PersistantData.instance.GetMostPickedAnswerType();

        List <FactUIManager> possibleFacts = new List <FactUIManager>();

        foreach (FactUIManager fact in allPossibleFacts)
        {
            if (fact.factType == mostMarbleType)
            {
                fact.UpdateFact();
                possibleFacts.Add(fact);
            }
        }

        factsToShow.Add(possibleFacts[Random.Range(0, possibleFacts.Count)].gameObject);
    }
        private void BindAnswerOptions()
        {
            _answerTypes = new AnswerTypes().GetAnswerTypes();
            _answers = new Answers().GetAnswers(_questionId, LanguagesDropdownlist.SelectedValue);
            if (_answers.Answers.Rows.Count > 0)
            {
                AnswersDataGrid.Visible = true;
                AnswersDataGrid.DataSource = _answers;
                AnswersDataGrid.DataMember = "Answers";
                AnswersDataGrid.DataKeyField = "AnswerId";
                AnswersDataGrid.DataBind();
            }
            else
            {
                AnswersDataGrid.Visible = false;
            }

        }
コード例 #14
0
    public int GetMostPickedMarbleAmount()
    {
        AnswerTypes answerType = AnswerTypes.RELATIONSHIPS;

        if (eachMarbles == null)
        {
            ResetScore();
        }
        int answerAmount = eachMarbles[answerType];

        foreach (KeyValuePair <AnswerTypes, int> pair in eachMarbles)
        {
            if (pair.Value > answerAmount)
            {
                answerType   = pair.Key;
                answerAmount = pair.Value;
            }
        }

        return(answerAmount);
    }
コード例 #15
0
        private void AnswerTypeDropDownList_SelectedIndexChanged(object sender, System.EventArgs e)
        {
            AnswerTypeData typeData = new AnswerTypes().GetAnswerTypeById(int.Parse(AnswerTypeDropDownList.SelectedValue, System.Globalization.CultureInfo.InvariantCulture));

            SetUIState(typeData.AnswerTypes[0].TypeMode, true);
        }
コード例 #16
0
    public AnswerTypes GetMostPickedAnswerType()
    {
        AnswerTypes a = GetMostPickedAnswerType(out float p);

        return(a);
    }
        /// <summary>
        /// Generates the templated column with the
        /// selection mode
        /// </summary>
        private void AnswersDataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
        {
            DataGridItem gridItem = (DataGridItem)e.Item;
            if (gridItem.ItemType != ListItemType.Footer && gridItem.ItemType != ListItemType.Header)
            {
                AnswerTypeData typeData = new AnswerTypes().GetAnswerTypeById(int.Parse(_answers.Answers[gridItem.DataSetIndex].AnswerTypeId.ToString()));
                gridItem.Cells[3].Text = GetPageResource(typeData.AnswerTypes[0].Description) != null ?
                    GetPageResource(typeData.AnswerTypes[0].Description) : typeData.AnswerTypes[0].Description;

                int typeMode = int.Parse(DataBinder.Eval(e.Item.DataItem, "TypeMode").ToString());
                bool ratePart = (bool)DataBinder.Eval(gridItem.DataItem, "RatePart");

                //				// Can this answer be selected ?
                if ((((AnswerTypeMode)typeMode & AnswerTypeMode.Selection) > 0))
                {
                    if (MultipleSelection)
                    {
                        CheckBox check = (CheckBox)gridItem.Cells[1].FindControl("DefaultCheckBox");
                        check.Checked = (bool)DataBinder.Eval(e.Item.DataItem, "Selected");
                        check.Visible = true;
                    }
                    else
                    {
                        GlobalRadioButton radio = (GlobalRadioButton)gridItem.Cells[1].FindControl("DefaultRadio");
                        radio.Checked = (bool)DataBinder.Eval(e.Item.DataItem, "Selected");
                        radio.Visible = true;
                    }

                    if (ratePart)
                    {
                        ((Label)gridItem.FindControl("RatingLabel")).Text = _currentRating.ToString();
                        _currentRating++;
                    }
                    else
                    {
                        ((Label)gridItem.FindControl("RatingLabel")).Text = "0";
                    }

                    if (_scoreEnabled)
                    {
                        if (DataBinder.Eval(e.Item.DataItem, "ScorePoint") != null &&
                            DataBinder.Eval(e.Item.DataItem, "ScorePoint").ToString().Length > 0)
                        {
                            ((Label)gridItem.FindControl("ScorePoint")).Text = DataBinder.Eval(e.Item.DataItem, "ScorePoint").ToString();
                        }
                        else
                        {
                            ((Label)gridItem.FindControl("ScorePoint")).Text = "0";
                        }
                    }
                }
                else
                {
                    gridItem.Cells[1].FindControl("DefaultRadio").Visible = false;
                    gridItem.Cells[1].FindControl("DefaultCheckBox").Visible = false;
                    ((Label)gridItem.FindControl("RatingLabel")).Text = "n/a";
                    ((Label)gridItem.FindControl("ScorePoint")).Text = "n/a";
                }
            }

        }
コード例 #18
0
 public void SetAnswer(AnswerTypes answerTxt)
 {
     answer.text     = answerTxt.answer;
     answerKey       = answerTxt.playerValue;
     _rawImage.color = Color.green;
 }
コード例 #19
0
        /// <summary>
        /// Get the current DB data and fill
        /// the fields with them
        /// </summary>
        public void BindFields()
        {
            // Retrieve the answer type data
            AnswerTypeData answerTypeData = new AnswerTypes().GetAnswerTypeById(AnswerTypeId);

            AnswerTypeData.AnswerTypesRow answerType = answerTypeData.AnswerTypes[0];

            if (answerType.BuiltIn)
            {
                DeleteTypeButton.Attributes.Add("onClick",
                                                "javascript:if(confirm('" + ((PageBase)Page).GetPageResource("DeleteBuiltInTypeConfirmationMessage") + "')== false) return false;");
                ApplyChangesButton.Attributes.Add("onClick",
                                                  "javascript:if(confirm('" + ((PageBase)Page).GetPageResource("ApplyBuiltInChangesConfirmationMessage") + "')== false) return false;");
            }
            else
            {
                DeleteTypeButton.Attributes.Remove("onClick");
                ApplyChangesButton.Attributes.Remove("onClick");
                MakeBuiltInButton.Attributes.Add("onClick",
                                                 "javascript:if(confirm('" + ((PageBase)Page).GetPageResource("MakeBuiltInConfirmationMessage") + "')== false) return false;");
            }


            // Assigns the retrieved data to the correct fields
            TitleTextBox.Text = answerType.Description;
            if (answerType.XmlDataSource !=
                null && answerType.XmlDataSource.Length != 0)
            {
                XmlFileNameTextbox.Text = answerType.XmlDataSource;
                DataSourceDropDownList.SelectedValue = "2";
            }
            else if (answerType.DataSource !=
                     null && answerType.DataSource.Length != 0)
            {
                SqlQueryTextbox.Text = answerType.DataSource;
                DataSourceDropDownList.SelectedValue = "3";
            }
            else
            {
                DataSourceDropDownList.SelectedValue = "1";
                SelectionTypeCheckBox.Checked        =
                    (((AnswerTypeMode)answerType.TypeMode & AnswerTypeMode.Selection) > 0);
                FieldTypeCheckBox.Checked =
                    (((AnswerTypeMode)answerType.TypeMode & AnswerTypeMode.Field) > 0);

                FieldShownInResultsCheckBox.Checked = answerType.PublicFieldResults;
                FieldHeightTextBox.Text             = answerType.FieldHeight.ToString();
                FieldWidthTextBox.Text             = answerType.FieldWidth.ToString();
                FieldMaxLengthTextBox.Text         = answerType.FieldLength.ToString();
                JavascriptFunctionNameTextBox.Text = answerType.JavascriptFunctionName;
                JavascriptTextBox.Text             = answerType.JavascriptCode;
                JavascriptErrorMessageTextBox.Text = answerType.JavascriptErrorMessage;

                RichFieldLabel.Visible    = !SelectionTypeCheckBox.Checked;
                RichFieldCheckBox.Visible = !SelectionTypeCheckBox.Checked;
                if (SelectionTypeCheckBox.Checked)
                {
                    RichFieldCheckBox.Checked = false;
                }
                else
                {
                    RichFieldCheckBox.Checked =
                        answerType.TypeNameSpace == "Votations.NSurvey.WebControls.ThirdPartyItems.FreeTextBoxAnswerItem";
                }
            }

            if ((answerType.BuiltIn && !((PageBase)Page).NSurveyUser.Identity.IsAdmin) ||
                (DataSourceDropDownList.SelectedValue == "3" &&
                 (!GlobalConfig.SqlBasedAnswerTypesAllowed ||
                  !((PageBase)Page).CheckRight(NSurveyRights.SqlAnswerTypesEdition, false))))
            {
                ApplyChangesButton.Visible = false;
                DeleteTypeButton.Visible   = false;
                MakeBuiltInButton.Visible  = false;
                if (DataSourceDropDownList.SelectedValue == "3" &&
                    !((PageBase)Page).CheckRight(NSurveyRights.SqlAnswerTypesEdition, false))
                {
                    DataSourceDropDownList.Enabled = false;
                }
                else
                {
                    DataSourceDropDownList.Enabled = true;
                }
            }
            else if (answerType.BuiltIn && ((PageBase)Page).NSurveyUser.Identity.IsAdmin)
            {
                ApplyChangesButton.Visible     = true;
                DeleteTypeButton.Visible       = true;
                MakeBuiltInButton.Visible      = false;
                DataSourceDropDownList.Enabled = true;
            }
            else
            {
                ApplyChangesButton.Visible     = true;
                DeleteTypeButton.Visible       = true;
                MakeBuiltInButton.Visible      = ((PageBase)Page).NSurveyUser.Identity.IsAdmin;
                DataSourceDropDownList.Enabled = true;
            }

            InitUserInterface();
        }
コード例 #20
0
 public void AddScore(AnswerTypes answerType)
 {
     totalMarbles++;
     eachMarbles[answerType]++;
 }