Example #1
0
        public JsonResult SaveExpression(ExpressionViewModel expression)
        {
            int newId = RuleModel.SaveExpression(expression);

            return(Json(new { id = newId }));
            //return PartialView("ViewRules");
        }
Example #2
0
        // GET: Expressions/Delete/5
        public async Task <IActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var expression = await _context.Expression
                             .FirstOrDefaultAsync(m => m.Id == id);

            if (expression == null)
            {
                return(NotFound());
            }

            ExpressionViewModel displayExpression = new ExpressionViewModel();

            displayExpression.Id       = expression.Id;
            displayExpression.Original = expression.Original;
            displayExpression.Regional = expression.Regional;
            displayExpression.User     = _context.User.Find(expression.UserId);
            displayExpression.Region   = _context.Region.Find(expression.RegionId);

            return(View(displayExpression));
        }
Example #3
0
        // GET: Votes
        public async Task <IActionResult> Index()
        {
            List <Vote>          votes          = _context.Vote.OrderByDescending(m => m.Id).ToList();
            List <VoteViewModel> displayedVotes = new List <VoteViewModel>();

            foreach (Vote vote in votes)
            {
                Expression expression = _context.Expression.Find(vote.ExpressionId);

                ExpressionViewModel viewExpression = new ExpressionViewModel();
                viewExpression.Id       = expression.Id;
                viewExpression.Original = expression.Original;
                viewExpression.Regional = expression.Regional;
                viewExpression.User     = _context.User.Find(expression.UserId);
                viewExpression.Region   = _context.Region.Find(expression.RegionId);

                VoteViewModel displayVote = new VoteViewModel();
                displayVote.Id         = vote.Id;
                displayVote.User       = _context.User.Find(vote.UserId);
                displayVote.Expression = viewExpression;

                displayedVotes.Add(displayVote);
            }

            return(View(displayedVotes));
        }
Example #4
0
 public MainWindow()
 {
     InitializeComponent();
     viewModel   = new ExpressionViewModel();
     DataContext = viewModel;
     this.dataGrid.ItemsSource = viewModel.Points;
     this.PlotModel.Model      = viewModel.PlotModel;
 }
Example #5
0
        public PartialViewResult AddFilter(int variantID, string ruleName, int ruleID)
        {
            var vm = new ExpressionViewModel()
            {
                VariantID = variantID, RuleName = ruleName, RuleID = ruleID
            };

            return(PartialView(vm));
        }
        public void ShouldInstantiateAViewModelWithoutNotification()
        {
            bool notified = false;

            var viewModel = new ExpressionViewModel();
            viewModel.PropertyChanged += (s, e) => notified = true;

            Assert.That(notified, Is.False);
            Assert.That(viewModel.Label, Is.EqualTo(""));
        }
        private IEnumerable <ExpressionWithSource> GetSelectedExpressions()
        {
            var expressions = new List <ExpressionWithSource>();

            foreach (ListViewDataItem lvItem in radCheckedListBoxLocals.CheckedItems)
            {
                ExpressionViewModel expressionVM = (ExpressionViewModel)lvItem.DataBoundItem;
                Expression          expression   = expressionVM.Expression;
                expressions.Add(new ExpressionWithSource(expression, ExpressionSourceType.Locals));
            }

            return(expressions);
        }
Example #8
0
 public static int SaveExpression(ExpressionViewModel expression)
 {
     try
     {
         using (_certonaService = new CertonaServiceClient())
         {
             try
             {
                 UserDTO user    = FormsAuthenticationWrapper.User;
                 var     request = new SaveExpressionRequest()
                 {
                     User          = user,
                     ApplicationID = null,
                     VariantID     = expression.VariantID,
                     RuleID        = expression.RuleID,
                     RuleName      = expression.RuleName,
                     ExpressionID  = expression.ExpressionID
                 };
                 request.RuleExpression = new List <ExpressionDTO>();
                 request.RuleExpression.Add(new ExpressionDTO()
                 {
                     ConditionID    = expression.ConditionID, // init to 0 for NEW ADD
                     Attribute      = expression.Attribute,
                     Operator       = expression.Operator,
                     Value          = expression.Value,
                     Context        = expression.Context,
                     PlusOrMinus    = expression.PlusOrMinus,
                     PercentOrUnits = expression.PercentOrUnits,
                     ExpressionType = ExpressionType.Filter
                 });
                 var response = _certonaService.SaveExpression(request);
                 return(response.ExpressionID);
                 // return 400;
             }
             catch (TimeoutException exception)
             {
                 _certonaService.Abort();
                 throw;
             }
             catch (CommunicationException exception)
             {
                 _certonaService.Abort();
                 throw;
             }
         }
     }
     catch (Exception ex)
     {
         throw;
     }
 }
        public void ShouldNotNotifyIfTheValueHasntActuallyChanged()
        {
            // Arrange
            bool notified = false;

            // System under Test
            var viewModel = new ExpressionViewModel { Label = "Sulaco" };
            viewModel.PropertyChanged += (s, e) => notified = true;

            // Act
            viewModel.Label = "Sulaco";

            // Assert
            Assert.That(notified, Is.False);
            Assert.That(viewModel.Label, Is.EqualTo("Sulaco"));
        }
        public void ShouldNotifyMeAboutTheChangeOfValue()
        {
            // Arrange
            bool notified = false;

            // System under Test
            var viewModel = new ExpressionViewModel();
            viewModel.PropertyChanged += (s, e) => notified = true;

            // Act
            viewModel.Label = "Sulaco";

            // Assert
            Assert.That(notified, Is.True);
            Assert.That(viewModel.Label, Is.EqualTo("Sulaco"));
        }
Example #11
0
        public JsonResult EvaluateAndGetResult([FromBody] ExpressionViewModel expression)
        {
            try
            {
                double result = this._calculator.Evaluate(expression.Expression);

                return(new JsonResult(new { StatusCode = StatusCodes.Status200OK, Result = result }));
            }
            // I know catching every exception (no matter the type or why it was thrown) and returning a generic error is WRONG in most cases.
            //But for this simple example I'll do it anyway.
            //DO NOT do it!
            catch (Exception)
            {
                return(new JsonResult(new { StatusCode = StatusCodes.Status500InternalServerError }));
            }
        }
Example #12
0
        // GET: Expressions
        public async Task <IActionResult> Index()
        {
            List <Expression>          expressions          = _context.Expression.OrderBy(m => m.Original).ToList();
            List <ExpressionViewModel> displayedExpressions = new List <ExpressionViewModel>();

            foreach (Expression expression in expressions)
            {
                ExpressionViewModel displayExpression = new ExpressionViewModel();
                displayExpression.Id       = expression.Id;
                displayExpression.Original = expression.Original;
                displayExpression.Regional = expression.Regional;
                displayExpression.User     = _context.User.Find(expression.UserId);
                displayExpression.Region   = _context.Region.Find(expression.RegionId);

                displayedExpressions.Add(displayExpression);
            }

            return(View(displayedExpressions));
        }
        private async void radCheckedListBoxLocals_ItemCheckedChanged(object sender, ListViewItemEventArgs e)
        {
            if (e.Item.CheckState != ToggleState.On)
            {
                return;
            }

            ExpressionViewModel vm = (ExpressionViewModel)e.Item.DataBoundItem;
            Expression          checkedExpression = vm.Expression;
            string expressionName = checkedExpression.Name;

            e.Item.Text = $"{expressionName} (calculating...)";


            CancellationTokenSource tokenSource = new CancellationTokenSource((int)_settings.DepthSolverTimeOut);
            string depth = await GetDepth(checkedExpression, tokenSource.Token);

            string textToDisplay = $"{expressionName} (max depth: {depth})";

            e.Item.Text = textToDisplay;
        }
 public HttpResponseActionViewModel()
 {
     StatusCode  = 200;
     ContentType = new ExpressionViewModel("application/json", PlainTextEvaluator.SyntaxName);
 }
Example #15
0
 public IViewComponentResult Invoke(ExpressionViewModel model, string prefix)
 {
     ViewContext.ViewData.TemplateInfo.HtmlFieldPrefix = prefix;
     ViewContext.ViewBag.Syntaxes = evaluators.Select(x => new SelectListItem(x.Syntax, x.Syntax));
     return(View(model));
 }