예제 #1
0
        public ActionResult Registro(Cuenta model)
        {
            //Si el modelo es valido
            if (ModelState.IsValid)
            {
                using (OurDBContext db = new OurDBContext())
                {
                    Boolean tik         = false;
                    string  nombreLocal = model.User;

                    //aqui verificamos que el nombre que ingreso en la vista no exista en la DB
                    foreach (var item in db.cuentas)
                    {
                        if (nombreLocal == item.User)
                        {
                            tik = true;
                        }
                    }

                    //aqui verificamos que hacer en caso de que el tik sea true o falso,
                    //o sea, en caso de que existe el usario en la DB si o no
                    if (tik)
                    {
                        ViewBag.Message = model.User + " Error: Esta persona existe en l DB";
                    }
                    else
                    {
                        ViewBag.Message = model.User + " Bienvenido";
                        db.cuentas.Add(model);
                        db.SaveChanges();
                    }
                }
            }
            return(View());
        }
        public ActionResult Index()
        {
            using (OurDBContext db = new OurDBContext())
            {
                //  var persona = new Persona() {Usuario = "Aura", Password = "******", Id = 78 };
                // db.Padres.Add(new Padre() { Telefono = 11111, Nombre = "Domingo", Persona = persona});
                //db.Personas.Add(persona);
                //db.SaveChanges();


                //   db.cuentas.Add(model);
                //       db.SaveChanges();

                var categoria = new Categoria()
                {
                    Name = "Name"
                };
                db.Productos.Add(new Producto()
                {
                    Categoria = categoria, CategoryId1 = 200, Name = "ok", ProductId = 2
                });
                db.Categorias.Add(categoria);
                db.SaveChanges();
            }

            return(View());
        }
예제 #3
0
        public ActionResult Login(Cuenta cuenta)
        {
            using (OurDBContext db = new OurDBContext())
            {
                try
                {
                    //verifica si los datos estan correctos
                    var usr = db.cuentas.Single(u => u.User == cuenta.User && u.Password == cuenta.Password);

                    //esto es para guardar en session (son varables temporales o algo asi) para luego usarla a nuestro gusto
                    //Ej: podemos obtener el nombre de usario diciendo: String nombre = Session["User"].ToString()
                    if (usr != null)
                    {
                        Session["Id"]   = usr.Id.ToString();
                        Session["User"] = usr.User.ToString();
                        return(RedirectToAction("LoggeIn"));
                    }
                    else
                    {
                        ModelState.AddModelError("", "El usuario o la contrasena esta incorrecto");
                    }
                }
                catch (Exception)
                {
                    //en caso de que ocurra un error en la verificacion del login pues se ejecuta este Catch
                    return(View("Login"));

                    throw;
                }
            }

            return(View());
        }
예제 #4
0
        public ObjMarcacao(object objeto)
        {
            OurDBContext dbC = new OurDBContext();

            marcacao  = (Marcacao)objeto;
            exposicao = dbC.Exposicao.FirstOrDefault(e => e.ExposicaoID == marcacao.ExposicaoID);
        }
예제 #5
0
 // GET: Account
 public ActionResult Index()
 {
     using (OurDBContext db = new OurDBContext())
     {
         return(View(db.cuentas.ToList()));
     }
 }
예제 #6
0
 /// <summary>
 /// Kiểm tra kết nối tới Database
 /// </summary>
 /// <returns>-1: Not exist, -2: model backing changed, >0: OK</returns>
 public static int isReady(int TimeOut = -1)
 {
     //Check if target database is ready
     if (DatabaseHelper.isExist(
             Global.working_database.get_connection_string()
             ))
     {
         try
         {
             //Check model backing
             using (OurDBContext tmp = new OurDBContext(Global.working_database.get_connection_string(), false))
             {
                 if (tmp.isValidModel())
                 {
                     return(1);
                 }
             }
         }
         catch (Exception ex)
         {
             Debug.WriteLine(ex);
             return(-2);
         }
     }
     return(-2);
 }
예제 #7
0
 // GET: Account
 public ActionResult Index()
 {
     using (OurDBContext db = new OurDBContext())
     {
         return(View(db.userAccount.ToList()));
     }
 }
예제 #8
0
        public async Task<ActionResult> Register(UserAccount account)
        {
            if (ModelState.IsValid)
            {
                //use these for IP and date time
                account.MyIPAddress = Request.UserHostAddress; //more ip checks are needed
                DateTime time = DateTime.Now;                  // Use current time.
                account.MyDateTime = time.ToString();

                using (OurDBContext db = new OurDBContext())
                {
                    db.userAccount.Add(account);
                    db.SaveChanges();

                   await SendAsyncMail(account.FirstName, account.LastName, account.Email);
                   WriteExcel(time, account.MyIPAddress, account.FirstName, account.LastName, account.Email);

                }
                ModelState.Clear();
               
               ViewBag.Message =  account.FirstName + " " + account.LastName + " successfully registered.";
               

            }
            else { ViewBag.Message = "Unable to create."; }
            return View();
        }
예제 #9
0
 public List <UserAccount> Index()
 {
     using (OurDBContext db = new OurDBContext())
     {
         return(db.userAccount.ToList());
     }
 }
예제 #10
0
        public ActionResult Register(Candidates candidate)
        {
            if (ModelState.IsValid)
            {
                using (OurDBContext db = new OurDBContext())
                {
                    db.candidateAccount.Add(candidate);
                    db.SaveChanges();
                }

                //send a registration email once changes are saved in the database
                CustomEmail regMail = new CustomEmail();
                regMail.sendMail(candidate.Email, "Select International Registration", "Welcome to our platform!");

                ModelState.Clear();
                ViewBag.Message = candidate.FirstName + "" + candidate.LastName + "registration done";

                //sending request to external vendor and other XML part handled here
                //if this is successful, need to make changes in UploadFileController too
                //should we do this async?
                using (OurDBContext db = new OurDBContext())
                {
                    Candidates cand1      = db.candidateAccount.Single(g => g.UserName == candidate.UserName);
                    string     clientCode = cand1.Requestor;
                    Client     client     = db.clientAccount.Find(clientCode);

                    RequestController rc = new RequestController();
                    rc.AssessmentOrderRequest(clientCode, client.ProviderKey, client.CustomerNumber, "test01",
                                              candidate.UserID, client.CallBackUri, candidate.LastName, candidate.FirstName, candidate.Email);
                }
            }
            return(View());
        }
예제 #11
0
 // GET: Client
 public ActionResult Index()
 {
     using (OurDBContext db = new OurDBContext())
     {
         return(View(db.clientAccount.ToList()));
     }
     //return View();
 }
예제 #12
0
        //guarda na bd a marcação em questão
        public override void SalvarBd(OurDBContext db)
        {
            TimeSpan dur = TimeSpan.Parse(exposicao.Duracao.Hour + ":" + exposicao.Duracao.Minute);

            marcacao.HoraDeFim = marcacao.HoraDeInicio.Add(dur);
            db.Marcacao.Add(marcacao);
            db.SaveChanges();
        }
예제 #13
0
 public ActionResult ShowDB()
 {
     using (OurDBContext db = new OurDBContext())
     {
         return View(db.userAccount.ToList());
     }
         
 }
예제 #14
0
 // GET: CandidateProgress
 public ActionResult Index()
 {
     using (OurDBContext db = new OurDBContext())
     {
         return(View(db.candidateProgressList.ToList()));
     }
     //return View();
 }
예제 #15
0
 // GET: Assessment
 public ActionResult Index()
 {
     using (OurDBContext db = new OurDBContext())
     {
         return(View(db.assessmentList.ToList()));
     }
     //return View();
 }
예제 #16
0
 // GET: Candidate
 public ActionResult Dashboard()
 {
     using (OurDBContext db = new OurDBContext())
     {
         return(View(db.candidateAccount.ToList()));
     }
     //return View();
 }
예제 #17
0
        public ActionResult Register(Candidates candidate)
        {
            if (ModelState.IsValid)
            {
                // New workflow:
                // 1. Send XML request and check OK or Not, get urls info
                // 2. Store all info(candidatw) + urls
                // 3. Configure email content and send

                // 4. Need to this in batch register as well


                string id = candidate.UserID;
                //tianyi's code is filled here.
                //List<string> urls = new List<string>();
                //urls.Add("http1");
                //urls.Add("http2");
                //urls.Add("http3");

                // Sending XML request and retieve urls
                using (var db = new OurDBContext())
                {
                    var client = db.clientAccount.Find(candidate.Requestor);
                    if (client != null)
                    {
                        var        request    = new RequestController();
                        ReturnType returnType = request.AssessmentOrderRequest(client, candidate, "Test pool 1", "None call back");
                        db.candidateAccount.Add(candidate);
                        db.candidateProgressList.Add(new CandidateProgress
                        {
                            ReciptID      = returnType.ReceiptId,
                            UserID        = id,
                            AssessmentURL = returnType.Url,
                            Progress      = "0" //initialize progress as 0
                        });
                        db.SaveChanges();

                        //var progress = db.candidateProgressList.Last();
                        //Console.Write("URL: "+progress.AssessmentURL);
                        //send a registration email once changes are saved in the database
                        CustomEmail   regMail     = new CustomEmail();
                        StringBuilder mailMessage = new StringBuilder();
                        mailMessage.Append("Hi, " + candidate.FirstName + ":\n");
                        mailMessage.Append("Welcome to our platform! The followings are the assessments you need to take:\n");

                        mailMessage.Append(returnType.Url + "\n");

                        mailMessage.Append("Good Luck!");

                        regMail.sendMail(candidate.Email, "Select International Registration", mailMessage.ToString());

                        ModelState.Clear();
                        ViewBag.Message = candidate.FirstName + "" + candidate.LastName + "registration done";
                    }
                }
            }
            return(View());
        }
예제 #18
0
 public UserAccount Logout()
 {
     using (OurDBContext db = new OurDBContext())
     {
         var usr = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         db.session.ToList()[0].UserID = -1;
         return(usr);
     }
 }
예제 #19
0
 private void ResetDbContext()
 {
     if (!Object.Equals(MyNewDbContext, null))
     {
         MyNewDbContext.Dispose();
         MyNewDbContext = null;
     }
     MyNewDbContext = new OurDBContext(TSCD.Global.working_database.get_connection_string(), false);
 }
예제 #20
0
 public List <UserAccount> getSubscribers()
 {
     using (OurDBContext db = new OurDBContext())
     {
         var session = HttpContext.Current.Session;
         var usr     = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         return(usr.subscribers);
     }
 }
예제 #21
0
 public String publish([FromBody] String message)
 {
     using (OurDBContext db = new OurDBContext())
     {
         var usr = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         usr.messages.Add(message);
     }
     return(message);
 }
        public ActionResult UploadFile()
        {
            //open file
            if (Request.Files.Count == 1)
            {
                //get file
                var postedFile = Request.Files[0];
                if (postedFile.ContentLength > 0)
                {
                    //read data from input stream
                    using (var csvReader = new System.IO.StreamReader(postedFile.InputStream))
                    {
                        string inputLine = "";

                        // Skip the firts line
                        csvReader.ReadLine();

                        //read each line
                        while ((inputLine = csvReader.ReadLine()) != null)
                        {
                            //get lines values
                            string[] values = inputLine.Split(new char[] { ',', '\t' });

                            Candidates candidate = new Candidates
                            {
                                FirstName = values[0],
                                LastName  = values[1],
                                UserName  = values[2],
                                Email     = values[3],
                                Password  = values[4],
                                ProjectId = values[5]
                            };

                            if (ModelState.IsValid)
                            {
                                using (OurDBContext db = new OurDBContext())
                                {
                                    db.candidateAccount.Add(candidate);
                                    db.SaveChanges();
                                }
                                //send a registration email once changes are saved in the database
                                CustomEmail regMail = new CustomEmail();
                                regMail.sendMail(candidate.Email, "Select International Registration", "Welcome to our platform!");

                                ModelState.Clear();
                                ViewBag.Message = candidate.FirstName + "" + candidate.LastName + "registartion done";
                            }
                        }

                        csvReader.Close();
                    }
                }
            }

            return(Redirect("/Home/Participant"));
        }
예제 #23
0
 public String changeDescription([FromBody] String newDescription)
 {
     using (OurDBContext db = new OurDBContext())
     {
         var session = HttpContext.Current.Session;
         var usr     = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         usr.Description = newDescription;
         return(newDescription);
     }
 }
예제 #24
0
 public String changePassword([FromBody] String newPassword)
 {
     using (OurDBContext db = new OurDBContext())
     {
         var session = HttpContext.Current.Session;
         var usr     = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         usr.Password = newPassword;
         return(newPassword);
     }
 }
예제 #25
0
 public UserAccount blockUser([FromBody] String username)
 {
     using (OurDBContext db = new OurDBContext())
     {
         var usr         = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         var userToBlock = db.userAccount.Single(u => u.Username.Equals(username));
         usr.blockedUsers.Add(userToBlock);
         return(userToBlock);
     }
 }
예제 #26
0
 public String deleteMessage([FromBody] String message, [FromBody] UserAccount userAccount)
 {
     using (OurDBContext db = new OurDBContext())
     {
         var usr = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         usr.sentMessages.Remove(message);
         userAccount.personalMessages.Remove(message);
     }
     return(message);
 }
예제 #27
0
 public String sendMessage([FromBody] SendMessageParameters sendMessageParameters)
 {
     using (OurDBContext db = new OurDBContext())
     {
         var usr      = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         var receiver = db.userAccount.Single(u => u.Username.Equals(sendMessageParameters.Username));
         usr.sentMessages.Add(sendMessageParameters.Message, receiver);
         receiver.personalMessages.Add(sendMessageParameters.Message, usr);
     }
     return(sendMessageParameters.Message);
 }
예제 #28
0
 public UserAccount unsubscribe([FromBody] String username)
 {
     using (OurDBContext db = new OurDBContext())
     {
         var usr          = db.userAccount.Single(u => u.UserID == db.session.ToList()[0].UserID);
         var subscription = db.userAccount.Single(u => u.Username == username);
         subscription.subscribers.Remove(usr);
         usr.subscriptions.Remove(subscription);
         return(subscription);
     }
 }
예제 #29
0
 public ActionResult Index()
 {
     using (OurDBContext db = new OurDBContext())
     {
         if (TempData["Message"] != null)
         {
             ViewBag.Message = TempData["Message"].ToString();
         }
         return(View(db.Tema.ToList()));
     }
 }
예제 #30
0
        //adiciona na bd o novo utilizador
        public override void SalvarBd(OurDBContext db)
        {
            MuseuInteractDb museuDB = new MuseuInteractDb();
            var             encrypt = museuDB.Encrypt(userAccount.Password);

            userAccount.Password = encrypt;
            encrypt = museuDB.Encrypt(userAccount.ConfirmPassword);
            userAccount.ConfirmPassword = encrypt;
            db.UserAccount.Add(userAccount);
            db.SaveChanges();
        }
예제 #31
0
 public List<test> getAllTang()
 {
     OurDBContext db = new OurDBContext();
     List<test> re =
         (from c in db.TANGS
          select new test
          {
              id = c.id,
              ten = c.ten,
              loai = "tang",
              id_c = "T" + c.id,
              id_p = "D" + c.day.id
          }).ToList();
     return re;
 }
예제 #32
0
 public List<test> getAllDay()
 {
     OurDBContext db = new OurDBContext();
     List<test> re =
         (from c in db.DAYYS
          select new test
          {
              id = c.id,
              ten = c.ten,
              loai = "day",
              id_c = "D" + c.id,
              id_p = "C" + c.coso.id
          }).ToList();
     return re;
 }
예제 #33
0
 public List<test> getAllCoSo()
 {
     OurDBContext db = new OurDBContext();
     List<test> re =
         (from c in db.COSOS
          select new test
          {
              id = c.id,
              ten = c.ten,
              loai = "coso",
              id_c = "C"+c.id,
              id_p = ""
          }).ToList();
     return re;
 }
예제 #34
0
 /// <summary>
 /// Kiểm tra kết nối tới Database
 /// </summary>
 /// <returns>-1: Not exist, -2: model backing changed, >0: OK</returns>
 public static int isReady(int TimeOut = -1)
 {
     //Check if target database is ready
     if (DatabaseHelper.isExist(
         Global.client_database.get_connection_string()
     ))
     {
         try
         {
             //Check model backing
             using (OurDBContext tmp = new OurDBContext(Global.client_database.get_connection_string(), false))
             {
                 if (tmp.isValidModel())
                 {
                     return 1;
                 }
             }
         }
         catch (Exception ex)
         {
             Debug.WriteLine(ex);
             return -2;
         }
     }
     return -2;
 }
예제 #35
0
 private void ResetDbContext()
 {
     if (!Object.Equals(MyNewDbContext, null))
     {
         MyNewDbContext.Dispose();
         MyNewDbContext = null;
     }
     MyNewDbContext = new OurDBContext(TSCD.Global.working_database.get_connection_string(), false);
 }
예제 #36
0
 /// <summary>
 /// Kiểm tra kết nối tới Database
 /// </summary>
 /// <returns>-1: Not exist, -2: model backing changed, >0: OK</returns>
 public static int isReady(int TimeOut = -1)
 {
     //Check if target database is ready
     if (DatabaseHelper.isExist(
         Global.server_database.get_connection_string()
     ))
     {
         //Check model backing
         using (OurDBContext tmp = new OurDBContext(Global.server_database.get_connection_string(), false))
         {
             if (tmp.isValidModel())
             {
                 return 1;
             }
         }
     }
     return -2;
 }
예제 #37
0
 /// <summary>
 /// Có hỗ trợ tự động tạo cấu trúc CSDL nếu chưa có
 /// </summary>
 public static void prepare_db_structure()
 {
     try
     {
         using (OurDBContext tmp = new OurDBContext(Global.server_database.get_connection_string(), true))
         {
             tmp.isValidModel();
             tmp.forceSeed();
         }
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.ToString());
     }
 }
예제 #38
0
            /// <summary>
            /// Tự động tạo cấu trúc CSDL nếu chưa có
            /// </summary>
            public static void prepare_db_structure()
            {
                //Kiểm tra có sử dụng DBCache
                if (!Global.local_setting.use_db_cache)
                {
                    return;
                }

                try
                {
                    using (OurDBContext tmp = new OurDBContext(Global.client_database.get_connection_string(), true))
                    {
                        tmp.isValidModel();
                    }
                }
                catch (Exception ex)
                {
                    Debug.WriteLine(ex.ToString());
                }
            }
예제 #39
0
        /// <summary>
        /// Bắt buộc phải gọi mới thấy được sự thay đổi CSDL do nơi khác chỉnh sửa,
        /// Tất cả Object get ra bởi DBInstace cũ sẽ phải reload mới có thể tiếp tục sử dụng lại được,
        /// Nếu không Object cũ sẽ vẫn phải chịu sự giám sát của DbContext cũ
        /// </summary>
        public static void reNew()
        {
            if(!_ENABLE_RENEW)
            {
                //DO NOT THING
                return;
            }
            if (db != null)
            {
                db.Dispose();
                db = null;
            }

            db = DB;
        }