public ActionResult Send(MailModel model) { User user = (User)Session["users"]; if (user == null) { return(RedirectToAction("Index", "Login")); } ModelMail mail = new ModelMail(); NH.NHibernateOperation operation = new NH.NHibernateOperation(); User u = operation.GetUserById(model.Id_user); mail.from = user.Email; mail.to = u.Email; return(View(mail)); }
public ActionResult Change(FullFlowModel model) { User user = (User)Session["users"]; if (user == null) { return(RedirectToAction("Index", "Login")); } NH.NHibernateOperation operation = new NH.NHibernateOperation(); string id = (string)RouteData.Values["id"]; int f = Int32.Parse(id); Flow flow = operation.FindFlowById(f); Position p = operation.FindPositionById(flow.id_position.Id_position); ViewBag.Pos = p.Id_position; Step step = operation.FindStep(p); ViewBag.Model = model; if (step != null) { flow.id_position = step.End_position_id; String cond = step.Condition; if (cond != null) { Parser parser = new Parser(); string[] list = parser.Parse(cond); Dictionary <string, string> dict = new Dictionary <string, string>(); foreach (FlowModel <string> mdl in model.list) { dict.Add(mdl.name, mdl.value); } foreach (FlowModel <int> mdl in model.list_int) { dict.Add(mdl.name, mdl.value.ToString()); } List <bool> bool_list = new List <bool>(); List <string> sign = new List <string>(); foreach (string s in list) { string temp = s; char start = s[0]; char end = s[s.Length - 1]; string str = ""; string en = ""; if (start.Equals("|") || start.Equals("&")) { temp = s.Substring(2, s.Length - 2); str = "" + start + start; sign.Add(str); } if (end.Equals("|") || end.Equals("&")) { temp = temp.Substring(0, temp.Length - 2); en = "" + end + end; sign.Add(en); } bool result = parser.checkBracket(temp, dict); bool_list.Add(result); } bool wynik = bool_list[0]; for (int i = 0; i < sign.Count; i++) { if (sign.Equals("||")) { wynik = wynik || bool_list[i + 1]; } else { wynik = wynik && bool_list[i + 1]; } } if (wynik == true) { MailController mm = new MailController(); IList <Task> tasks = operation.GetTasksByPositionId(step.End_position_id); foreach (Task t in tasks) { ModelMail mdl = new ModelMail(); mdl.from = "*****@*****.**"; User us = operation.GetUserById(t.Id_user.Id_user); mdl.to = us.Email; mdl.subject = "Nowe zadanie"; mdl.value = " Masz nowe zadanie wejdz na konto i sprawdz"; mm.sendMail(mdl); } //AddElements(flow, model); //operation.Update<Flow>(flow); } // JESLI NIE SPELNI WARUNKOW TO ROB CO INNEGO } else { MailController mm = new MailController(); IList <Task> tasks = operation.GetTasksByPositionId(step.End_position_id); foreach (Task t in tasks) { ModelMail mdl = new ModelMail(); mdl.from = "*****@*****.**"; User us = operation.GetUserById(t.Id_user.Id_user); mdl.to = us.Email; mdl.subject = "Nowe zadanie"; mdl.value = " Masz nowe zadanie wejdz na konto i sprawdz"; mm.sendMail(mdl); } //AddElements(flow, model); //operation.Update<Flow>(flow); } } else { flow.id_position = null; //AddElements(flow, model); //operation.Update<Flow>(flow); } return(View()); }