Esempio n. 1
0
        void CloneBulletinCallback(BulletinPackage bulletin)
        {
            MessageBox.Show("Объявление отправлено на републикацию");

            var b = Bulletins.FirstOrDefault(q => q.BulletinId == bulletin.BulletinId);

            b.CanRepublicate = false;
        }
Esempio n. 2
0
        public IActionResult SendBulletinsToMix()
        {
            Bulletins bulletinModel = new Bulletins(config, electContext);

            if (bulletinModel.sendBulletinsToMix())
            {
                return(Ok());
            }
            return(BadRequest());
        }
Esempio n. 3
0
 public IActionResult HandleBulletins([FromBody] Bulletin[] bulletins)
 {
     if (bulletins.Length != 0)
     {
         Bulletins           bulletinsModel     = new Bulletins(electContext, config);
         DecryptedBulletin[] decryptedBulletins = bulletinsModel.decryptBulletins(bulletins);
         bulletinsModel.saveBulletins(decryptedBulletins);
         return(Ok());
     }
     return(BadRequest());
 }
Esempio n. 4
0
 public IActionResult HandleBulletins([FromBody]  Bulletin[] bulletins)
 {
     if (bulletins.Length != 0)
     {
         Bulletins  bulletinsModel    = new Bulletins(config);
         Bulletin[] shuffledBulletins = bulletinsModel.Shuffle <Bulletin>(bulletins);
         if (bulletinsModel.sendToNextMix(shuffledBulletins))
         {
             return(Ok());
         }
     }
     return(BadRequest());
 }
Esempio n. 5
0
 public IActionResult SaveBulletin([FromBody] SaveBulletinFilter filter)
 {
     if (ModelState.IsValid)
     {
         DigitalSignature ds = new DigitalSignature();
         if (ds.Verify(filter.Data, filter.Signature, filter.SignatureModulus, filter.SignaturePubExponent))
         {
             Bulletins bulletinModel = new Bulletins(config, electContext);
             if (bulletinModel.saveBulletin(filter.UserLik, filter.Data))
             {
                 return(Ok());
             }
         }
     }
     return(BadRequest());
 }
Esempio n. 6
0
 public IActionResult sendBulletin([FromBody] SendBulletinFilter filter)
 {
     if (ModelState.IsValid)
     {
         Bulletins bulletinModel = new Bulletins(config);
         Users     userModel     = new Users(electContext);
         User      user          = userModel.getUserById(filter.UserId);
         if (bulletinModel.sendBulletin(user.LIK, filter.Data, filter.Signature, user.SignaturePubExponent, user.SignatureModulus))
         {
             user.isCastingDone = true;
             electContext.Users.Update(user);
             electContext.SaveChanges();
             return(Ok());
         }
     }
     return(BadRequest());
 }
Esempio n. 7
0
 public IActionResult SendBulletinsToMix([FromForm] SendBulletinsToMixFilter filter)
 {
     if (ModelState.IsValid)
     {
         if (filter.AdminLogin == config.ADMIN_LOGIN && filter.AdminPassword == config.ADMIN_PASSWORD)
         {
             Bulletins bulletinModel = new Bulletins(config, electContext);
             if (bulletinModel.sendBulletinsToMix())
             {
                 ViewData["message"] = "Buletins have been sent";
                 return(View("AdminNotifications"));
             }
             ViewData["error"] = "Mix channel is unavailable";
             return(View("AdminForm"));
         }
     }
     ViewData["error"] = "Invalid login or password";
     return(View("AdminForm"));
 }
        public async Task <bool> Sync()
        {
            var namesGrouped = _context.Names
                               .Where(a => a.valid == true)
                               .Where(a => a.currentState == 0)
                               .Where(a => a.requestId == null)
                               .Where(a => a.Operations.demoOperation == false)
                               .Where(a => a.Operations.complete == true)
                               .Where(a => a.locked == false)
                               .Take(30)
                               .GroupBy(a => a.operationId)
                               .ToList();

            var guid = Guid.NewGuid();

            LockUnlockNames(namesGrouped, true, guid);

            try
            {
                for (var i = 0; i < namesGrouped.Count; i++)
                {
                    var list  = new List <Names>();
                    var names = namesGrouped[i].ToList();
                    foreach (var n in names)
                    {
                        var       sender   = _context.Senders.SingleOrDefault(a => a.operationId == n.Operations.id);
                        var       bulletin = _context.Bulletins.Where(a => a.namesId == n.id).ToList();
                        Bulletins b        = null;
                        if (bulletin.Count() > 0)
                        {
                            b = bulletin[0];
                        }

                        var senderDto = Mapper.Map <Senders, SenderDto>(sender);

                        var gr = new GetRecipent()
                        {
                            recipient = Mapper.Map <Names, NamesDto>(n),
                            bulletin  = Mapper.Map <Bulletins, BulletinsDtos>(b)
                        };

                        switch (n.Operations.operationType)
                        {
                        case (int)operationType.MOL:
                            var m           = new MOLController();
                            var newNamesMol = m.sendNames(gr, n.operationId, senderDto, n.Operations.userId);
                            if (newNamesMol.valid)
                            {
                                list.Add(newNamesMol);
                            }
                            break;

                        case (int)operationType.COL:
                            var c           = new COLController();
                            var newNamesCol = c.sendNames(gr, n.operationId, senderDto, n.Operations.userId);
                            if (newNamesCol.valid)
                            {
                                list.Add(newNamesCol);
                            }
                            break;

                        case (int)operationType.ROL:
                            var r           = new RolController();
                            var newNamesRol = await r.sendNames(gr, n.operationId, senderDto, n.Operations.userId);

                            if (newNamesRol.valid)
                            {
                                list.Add(newNamesRol);
                            }
                            break;
                        }
                    }
                    if (list.Count > 0)
                    {
                        switch (names[0].Operations.operationType)
                        {
                        case (int)operationType.MOL:
                            var m = new MOLController();
                            break;

                        case (int)operationType.COL:
                            var c = new COLController();
                            break;

                        case (int)operationType.ROL:
                            var r = new RolController();
                            await r.ValorizzaConfirm(list, names[0].Operations.Users.guidUser);

                            break;
                        }
                    }
                }
            }
            catch (Exception e)
            {
            }

            LockUnlockNames(namesGrouped, false, guid);

            return(true);
        }