Exemplo n.º 1
0
        public ComplimentaryPagingQuery addKeysTo(addComplementary obj)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {

                    for (int i = 0; i < obj.quantity; i++)
                    {
                        complementarykey c = new complementarykey();
                        c.sponsorID2 = obj.sponsorID;
                        c.isUsed = false;
                        c.deleted = false;
                        c.key = "CCWIC-" + obj.company + "-" + GenerateComplementary(30);
                        context.complementarykeys.Add(c);
                    }

                    context.SaveChanges();

                    ComplimentaryPagingQuery page = new ComplimentaryPagingQuery();
                    page.index = 0;
                    page.sponsorID = obj.sponsorID;
                    //return getSponsorComplentaryList(obj.sponsorID);
                    return getSponsorComplementaryList(page);
                }
            }
            catch (Exception ex)
            {
                Console.Write("SponsorManager.CoplementarykeyGenerator error " + ex);
                return null;
            }
        }
Exemplo n.º 2
0
        //This method is reponsible to create a paymentBill with the transaction ID and status completed == false
        public void createPaymentBill(PaymentInfo info, string transactionID)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    double quantity = info.amount * 100;
                    paymentbill bill = new paymentbill();
                    bill.AmountPaid = info.amount;
                    bill.paymentID = info.paymentID;
                    bill.completed = false;
                    bill.transactionid = transactionID;
                    bill.quantity = (int)quantity;
                    bill.deleted = false;
                    bill.date = DateTime.Now;
                    bill.telephone = info.phone;
                    context.paymentbills.Add(bill);
                    context.SaveChanges();

                }
            }
            catch (Exception ex)
            {
                Console.Write("PaymentManager.makePayment error " + ex);

            }
        }
Exemplo n.º 3
0
        //Get sponsor's logos by category.
        public BannerSponsorQuery getBannerList(String sponsor, int index)
        {
            BannerSponsorQuery page = new BannerSponsorQuery();

            try
            {
                int pageSize = 10;
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var query = context.sponsor2.Where(x => x.deleted != true && x.sponsortype1.name == sponsor && x.logo != "" && x.logo != null && x.sponsorID != 1).Select(x => new BannerQuery
                    {
                        sponsor = x.user.affiliationName,
                        logo = x.logo

                    }).OrderBy(x => x.sponsor);

                    //Paging: Depending on the index value (which represents a page number) filters the results to the adequeate pageSize
                    page.rowCount = query.Count();
                    if (page.rowCount > 0)
                    {
                        page.maxIndex = (int)Math.Ceiling(page.rowCount / (double)pageSize);
                        var administrators = query.Skip(pageSize * index).Take(pageSize).ToList(); //Skip past rows and take new elements
                        page.results = administrators;
                    }

                    return page;
                }
            }
            catch (Exception ex)
            {
                Console.Write("BannerManager.getBannerList error " + ex);
                return null;
            }
        }
        public static UserAuth login(membership param)
        {
            using (conferenceadminContext contx = new conferenceadminContext())
            {

                /*UserAuth user = (from g in contx.memberships
                                 join u in contx.users on g.membershipID equals u.membershipID
                                 where g.email == param.email  && g.password.Equals(param.password) && g.deleted == false && u.deleted == false
                                 select new UserAuth { userID = u.userID, memberID = g.membershipID, password = g.password, email = g.email, userType = u.userTypeID }).FirstOrDefault();
                */
                //copy paste del query de maria, solo quite: && g.password.Equals(param.password)  del where clause y anadi: passwordSalt = g.passwordSalt, al select
                UserAuth user = (from g in contx.memberships
                                 join u in contx.users on g.membershipID equals u.membershipID
                                 where g.email == param.email && g.deleted == false && u.deleted == false
                                 select new UserAuth { userID = u.userID, memberID = g.membershipID, password = g.password, email = g.email, userType = u.userTypeID }).FirstOrDefault();

                if (user == null)
                {
                    return null;
                }

                else
                {
                   var crypto = new SimpleCrypto.PBKDF2();
                   if (Security.ValidateSHA1HashData(param.password, user.password))
                  // if( string.Equals(crypto.Compute(param.password, user.passwordSalt), user.password, StringComparison.Ordinal))
                        return user;
                   else{
                       return null;
                   }

                }

            }
        }
        public templateQuery addTemplate(templateQuery t)
        {
            authorizationtemplate template = new authorizationtemplate();
            template.authorizationID = t.authorizationID;
            template.authorizationName = t.authorizationName;
            template.authorizationDocument = t.authorizationDocument;
            template.deleted = false;

            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    template.deleted = false;
                    context.authorizationtemplates.Add(template);
                    context.SaveChanges();
                    t.authorizationID = template.authorizationID;
                    return t;
                }
            }
            catch (Exception ex)
            {
                Console.Write("AdminManager.addTemplate error " + ex);
                return null;
            }
        }
Exemplo n.º 6
0
        //Add a new topic: returns the new topicID
        public topiccategory addTopic(topiccategory s)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var checkTopic = (from t in context.topiccategories
                                      where t.name == s.name && t.deleted == true
                                      select t).FirstOrDefault();
                    //check if there has been topics with the specified name
                    if (checkTopic != null)
                    {
                        //Recover topic and set deleted attribute back to false
                        checkTopic.deleted = false;
                        s.topiccategoryID = checkTopic.topiccategoryID;
                    }
                    else
                    {
                        s.deleted = false;
                        //Add new topic
                        context.topiccategories.Add(s);
                    }

                    context.SaveChanges();
                    return s;
                }
            }
            catch (Exception ex)
            {
                Console.Write("AdminManager.addTopic error " + ex);
                return s;
            }
        }
        public List<templateQuery> getTemplates()
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var tempList = (from t in context.authorizationtemplates
                                    where t.deleted == false
                                    select new templateQuery
                                    {
                                        authorizationID = t.authorizationID,
                                        authorizationName = t.authorizationName,
                                        authorizationDocument = t.authorizationDocument,

                                    }).ToList();

                    return tempList;
                }
            }
            catch (Exception ex)
            {
                Console.Write("AdminManager.getTemplates error " + ex);
                return null;
            }
        }
        public bool deleteTemplate(int id)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {

                    //verificar que se quiere se de disable a todos los evaluation q los tiene o que simplemente no se pueda escoger desde la pantalla
                    //donde se asignan los evaluation pero lo q ya lo tienen  se queden con las evaluaciones.

                    var template = (from temp in context.authorizationtemplates
                                    where temp.authorizationID == id
                                    select temp).FirstOrDefault();

                    template.deleted = true;

                    context.SaveChanges();
                    return true;
                }
            }
            catch (Exception ex)
            {
                Console.Write("AdminManager.deleteTemplate error " + ex);
                return false;
            }
        }
        /* [Randy] Add new registration entry */
        public string addRegistration(registration reg, user user, membership mem)
        {
            /*int type, string firstname, string lastname, string affiliationName, bool registrationstatus, bool hasapplied, bool acceptancestatus*/
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    address address = new address();
                    context.addresses.Add(address);

                    //encryption
                    var userPassword = mem.password;

                    mem.password = Security.GetSHA1HashData(mem.password);

                    //end encryption
                    mem.emailConfirmation = true;
                    mem.deleted = false;
                    context.memberships.Add(mem);

                    context.SaveChanges();

                    user.addressID = address.addressID;
                    user.membershipID = mem.membershipID;
                    user.registrationStatus = "Accepted";
                    user.hasApplied = true;
                    user.acceptanceStatus = "Accepted";
                    user.title = "";
                    user.phone = "";
                    user.userFax = "";
                    user.deleted = false;
                    context.users.Add(user);
                    context.SaveChanges();

                    reg.userID = user.userID;
                    reg.paymentID = 1;
                    reg.byAdmin = true;
                    reg.deleted = false;
                    context.registrations.Add(reg);

                    context.SaveChanges();

                    try { sendEmailConfirmation(mem.email, userPassword); }

                    catch (Exception ex)
                    {
                        Console.Write("AdminManager.ConfirmationEmail error " + ex);
                        return null;
                    }

                    return reg.registrationID + "," + user.userTypeID;
                }
            }
            catch (Exception ex)
            {
                Console.Write("AdminManager.addRegistration error " + ex);
                return null;
            }
        }
Exemplo n.º 10
0
        /* [Randy] Register as a complementary user without paying */
        public bool complementaryPayment(UserInfo user, string key)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    payment payment = new payment
                    {
                        paymentTypeID = 2,
                        deleted = false,
                        creationDate = DateTime.Now.Date
                    };

                    context.payments.Add(payment);
                    context.SaveChanges();

                    registration registration = new registration
                    {
                        userID = user.userID,
                        paymentID = payment.paymentID,
                        date1 = user.date1,
                        date2 = user.date2,
                        date3 = user.date3,
                        byAdmin = false,
                        deleted = false,
                        note = user.notes
                    };

                    user saveUser = context.users.Where(u => u.userID == user.userID).FirstOrDefault();
                    saveUser.registrationStatus = "Accepted";

                    complementarykey complementaryKey = context.complementarykeys.Where(k => k.key == key).FirstOrDefault();
                    complementaryKey.isUsed = true;

                    paymentcomplementary complementaryPay = new paymentcomplementary
                    {
                        paymentID = payment.paymentID,
                        deleted = false,
                        complementaryKeyID = complementaryKey.complementarykeyID
                    };

                    context.registrations.Add(registration);
                    context.paymentcomplementaries.Add(complementaryPay);
                    context.SaveChanges();
                    return true;
                }
            }
            catch (Exception ex)
            {
                Console.Write("ProfileAuthorizationManager.complementaryPaymentError error " + ex);
                return false;
            }
        }
Exemplo n.º 11
0
        /* [Randy] Verify the complementary key */
        public bool checkComplementaryKey(string key)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    complementarykey complementaryKey = context.complementarykeys.Where(ck => ck.key == key && ck.isUsed == false && ck.deleted == false).FirstOrDefault();

                    return complementaryKey != null;
                }
            }
            catch (Exception ex)
            {
                Console.Write("ProfileAuthorizationManager.checkComplementaryKey error " + ex);
                return false;
            }
        }
 /* [Randy] Delete a specific authorization document */
 public bool deleteDocument(Authorization auth)
 {
     try
     {
         using (conferenceadminContext context = new conferenceadminContext())
         {
             authorizationsubmitted authorization = context.authorizationsubmitteds.Where(a => a.authorizationSubmittedID == auth.authorizationID).FirstOrDefault();
             authorization.deleted = true;
             context.SaveChanges();
             return true;
         }
     }
     catch (Exception ex)
     {
         Console.Write("ProfileAuthorizationManager.deleteDocument error " + ex);
         return false;
     }
 }
Exemplo n.º 13
0
        public UserCreation changePassword(UserCreation u)
        {
            using (conferenceadminContext context = new conferenceadminContext())
            {
                try
                {
                    /*var member = (from m in context.memberships
                                  where (m.email.Equals(u.email) && m.password== u.password && m.deleted == false)
                                  select m).FirstOrDefault(); */
                    //same as in login, had to remove password check from query
                    var member = (from m in context.memberships
                                  where (m.email.Equals(u.email) && m.deleted == false)
                                  select m).FirstOrDefault();

                    if (Security.ValidateSHA1HashData(u.password, member.password)) { }//if password is the same member stays the same
                    else member = null;

                    if (member != null)
                    {
                        //encryption
                        var newEncrpPass = Security.GetSHA1HashData(u.newPass);

                        //end encryption
                        //member.password = u.newPass;//without encryption, old
                        member.password = newEncrpPass;

                        u.membershipID = member.membershipID;
                        context.SaveChanges();
                        return u;
                    }

                    else
                    {
                        return null;
                    }

                }
                catch (Exception ex)
                {
                    Console.Write("checkEmail error " + ex);
                    return null;
                }
            }
        }
Exemplo n.º 14
0
        /* [Randy] Make application to attend the conference */
        public bool apply(UserInfo user)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    user newUser = context.users.Where(u => u.userID == user.userID).FirstOrDefault();
                    newUser.hasApplied = true;
                    if (newUser.userTypeID == 1)
                        context.minors.Where(m => m.userID == user.userID).FirstOrDefault().authorizationStatus = true;

                    context.SaveChanges();
                    return true;
                }
            }
            catch (Exception ex)
            {
                Console.Write("ProfileAuthorizationManager.UserPayment error " + ex);
                return false;
            }
        }
 /* [Randy] Download a selected authorization file */
 public Authorization getAuthorizationFile(int authorizationID)
 {
     try
     {
         using (conferenceadminContext context = new conferenceadminContext())
         {
             Authorization file = context.authorizationsubmitteds.Where(c => c.authorizationSubmittedID == authorizationID && c.deleted == false).
                 Select(d => new Authorization
                 {
                     authorizationID = d.authorizationSubmittedID,
                     authorizationName = d.documentName,
                     authorizationFile = d.documentFile
                 }).FirstOrDefault();
             return file;
         }
     }
     catch (Exception ex)
     {
         Console.Write("ProfileAuthorizationManager.getAuthorizationFile error " + ex);
         return null;
     }
 }
        /* [Randy] Get the submitted companion key */
        public CompanionKey getCompanionKey(UserInfo user)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    companionminor companionminor = context.companionminors.Where(cm => cm.minor.userID == user.userID).FirstOrDefault();
                    if (companionminor != null)
                    {
                        string key = companionminor.companion.companionKey;
                        return new CompanionKey { companionKey = key };
                    }

                    else return new CompanionKey();
                }
            }
            catch (Exception ex)
            {
                Console.Write("ProfileAuthorizationManager.getCompanionKey error " + ex);
                return null;
            }
        }
Exemplo n.º 17
0
        //Delete topic with the specified topicID
        public bool deleteTopic(int id)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    //Get topic to be removed
                    var topic = (from s in context.topiccategories
                                 where s.topiccategoryID == id
                                 select s).FirstOrDefault();

                    if (topic != null)
                    {
                        //Check the topic does not have submissions assigned
                        var submissions = (from s in context.submissions
                                           where s.topicID == id
                                           select s).Count();

                        if (submissions == 0)
                        {
                            //Topic is deleted if there are no submissions under the category.
                            topic.deleted = true;
                            context.SaveChanges();
                            return true;
                        }
                    }

                    return false;
                }
            }
            catch (Exception ex)
            {
                Console.Write("AdminManager.deleteTopic error " + ex);
                return false;
            }
        }
Exemplo n.º 18
0
        //Verify the specified email has an accoun in conference admin.
        //Returns true if a match is made, false otherwise
        public bool checkNewEvaluator(String email)
        {
            try
            {

                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var result = (from s in context.users
                                  where s.membership.email == email
                                  select s.userID).Count();

                    if (result > 0)
                    {
                        return true;
                    }

                    return false;
                }
            }
            catch (Exception ex)
            {
                Console.Write("EvaluatorManager.checkNewEvaluator error " + ex);
                return false;
            }
        }
Exemplo n.º 19
0
        private bool getDeadlineStatus(string deadlineName)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {

                    WebManager webManager = new WebManager();
                    string deadline = webManager.getInterfaceElement(deadlineName).content;

                    var Day = Convert.ToInt32(deadline.Split('/')[1]);
                    var Month = Convert.ToInt32(deadline.Split('/')[0]);
                    var Year = Convert.ToInt32(deadline.Split('/')[2]);

                    DateTime submissionDeadline = new DateTime(Year, Month, Day);

                    return (DateTime.Compare(submissionDeadline, DateTime.Now.Date) >= 0);
                }
            }
            catch (Exception ex)
            {
                Console.Write("PaymentManager.getAmountInDeadline error " + ex);
                return false;
            }
        }
Exemplo n.º 20
0
        //This method is call from reentry with the receipt information sent by bank
        public long storePaymentBill(XMLReceiptInfo receipt)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var bill = (from s in context.paymentbills
                                where s.transactionid == receipt.transactionID
                                select s).FirstOrDefault();
                    if (bill != null)
                    {
                        bill.tandemID = receipt.tandemID;
                        bill.methodOfPayment = receipt.transactionType;
                        bill.batchID = receipt.batchId;
                        bill.email = receipt.email;
                        bill.firstName = receipt.firstName;
                        bill.lastName = receipt.lastName;
                        bill.deleted = false;
                        bill.completed = true;
                        bill.date = DateTime.Now;
                        // bill.telephone = ;
                        context.SaveChanges();

                        var sponsor1 = bill.payment.sponsors2.FirstOrDefault();
                        if (sponsor1 != null)
                        {
                            List<paymentbill> bills = sponsor1.payment.paymentbills.ToList();
                            if (bills.Count() > 0)
                            {
                                double total = 0;
                                foreach (paymentbill b in bills)
                                {
                                    if (b.completed)
                                        total += b.AmountPaid;
                                }

                                sponsor1.active = true;
                                sponsor1.totalAmount = total;
                                //this loop update sposorType after paymentIs completed
                                var sponsorTypes = context.sponsortypes.ToArray();

                                if (sponsor1.totalAmount >= sponsorTypes[0].amount)
                                {
                                    sponsor1.sponsorType = 1;
                                }

                                else if (sponsorTypes[4].amount >= sponsor1.totalAmount && sponsor1.totalAmount <= sponsorTypes[3].amount - 1)
                                {
                                    sponsor1.sponsorType = 5;
                                }

                                else if (sponsor1.totalAmount >= sponsorTypes[3].amount && sponsor1.totalAmount <= sponsorTypes[4].amount - 1)
                                {
                                    sponsor1.sponsorType = 4;
                                }
                                else if (sponsor1.totalAmount >= sponsorTypes[2].amount && sponsor1.totalAmount <= sponsorTypes[3].amount - 1)
                                {
                                    sponsor1.sponsorType = 3;
                                }
                                else if (sponsor1.totalAmount >= sponsorTypes[1].amount && sponsor1.totalAmount <= sponsorTypes[2].amount - 1)
                                {
                                    sponsor1.sponsorType = 2;
                                }

                            }

                            else
                            {
                                sponsor1.active = true;
                                sponsor1.totalAmount = bill.AmountPaid;
                            }
                            context.SaveChanges();
                            return bill.paymentBillID;

                        }

                        else
                        {//user paymentRegistration
                            var registration = bill.payment.registrations.FirstOrDefault();
                            user saveUser = context.users.Where(u => u.userID == registration.userID).FirstOrDefault();
                            saveUser.registrationStatus = "Accepted";
                            context.SaveChanges();
                            return bill.paymentBillID;
                        };

                    }
                    else
                    {
                        return -1;
                    }
                }
            }

            catch (Exception ex)
            {
                Console.Write("paymentManger.StorePaymentBillInfo error " + ex);
                return -1;
            }
        }
Exemplo n.º 21
0
        public AmountSatusRegistration getUserPriceInDeadline(int typeID)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var type = context.usertypes.Where(x => x.userTypeID == typeID).First();
                    AmountSatusRegistration amountStatus = new AmountSatusRegistration();
                    if (getDeadlineStatus("registrationDeadline"))
                    {
                        amountStatus.amount = (double)type.registrationCost;
                        amountStatus.inTime = true;
                        amountStatus.inTimeLateFee = false;

                    }
                    else if (getDeadlineStatus("lateRegistrationDeadline"))
                    {
                        amountStatus.amount = (double)type.registrationLateFee;
                        amountStatus.inTime = false;
                        amountStatus.inTimeLateFee = true;

                    }
                    else
                    {
                        amountStatus.inTime = false;
                        amountStatus.inTimeLateFee = false;

                    }

                    return amountStatus;
                }
            }
            catch (Exception ex)
            {
                Console.Write("PaymentManager.getAmountInDeadline error " + ex);
                return null;
            }
        }
Exemplo n.º 22
0
        public PaymentQuery getUserPayment(long id)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var paymentInfo = (from s in context.paymentbills
                                       from sp in context.registrations
                                       where s.paymentID == sp.paymentID && s.deleted == false && sp.userID == id && s.completed == true
                                       select new PaymentQuery
                                       {
                                           paymentBillID = s.paymentBillID,
                                           date = s.date,
                                           affiliationName = sp.user.affiliationName,
                                           transactionid = s.transactionid,
                                           AmountPaid = s.AmountPaid,
                                           methodOfPayment = s.methodOfPayment,
                                           firstName = s.firstName,
                                           lastName = s.lastName,
                                           email = s.email,
                                           tandemID = s.tandemID,
                                           batchID = s.batchID,
                                           userFirstName = sp.user.firstName,
                                           userLastName = sp.user.lastName,
                                           type = sp.user.usertype.userTypeName,
                                           description = "User Registration"

                                       }).FirstOrDefault();

                    if (paymentInfo == null)
                    {

                        paymentInfo = (from r in context.paymentcomplementaries
                                       join p in context.complementarykeys on r.complementaryKeyID equals p.complementarykeyID
                                       join pay in context.payments on r.paymentID equals pay.paymentID
                                       join y in context.sponsor2 on p.sponsorID2 equals y.sponsorID
                                       join x in context.registrations on r.paymentID equals x.paymentID
                                       where id == x.userID && x.deleted == false && r.deleted == false && p.deleted == false && pay.deleted == false
                                       select new PaymentQuery
                                       {
                                           paymentBillID = r.paymentcomplementaryID,
                                           complementaryKey = p.key,
                                           date = (DateTime)pay.creationDate,
                                           affiliationName = x.user.affiliationName,
                                           transactionid = "N/A",
                                           AmountPaid = 0,
                                           methodOfPayment = "Complementary Key",
                                           userFirstName = x.user.firstName,
                                           userLastName = x.user.lastName,
                                           email = x.user.membership.email,
                                           tandemID = "N/A",
                                           batchID = "N/A",
                                           firstName = y.user.firstName,
                                           lastName = y.user.lastName,
                                           description = "User Registration",
                                           type = x.user.usertype.userTypeName,

                                       }).FirstOrDefault();

                    }
                    if (paymentInfo == null)
                    {
                        PaymentQuery error = new PaymentQuery();
                        error.paymentBillID = -1;///not found
                        return error;
                    }
                    else { return paymentInfo; }
                }

            }
            catch (Exception ex)
            {
                Console.Write("PaymetnManager.getPaymentReceiptInfo error " + ex);

                return null;
            }
        }
Exemplo n.º 23
0
        public List<PaymentQuery> getSponsorPayments(long id)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var paymentInfo = (from s in context.paymentbills
                                       from sp in context.sponsor2
                                       where sp.userID == id && s.deleted == false && sp.paymentID == s.paymentID && s.completed == true
                                       select new PaymentQuery
                                       {
                                           paymentBillID = s.paymentBillID,
                                           date = s.date,
                                           transactionid = s.transactionid,
                                           AmountPaid = s.AmountPaid,
                                           methodOfPayment = s.methodOfPayment,
                                           firstName = s.firstName,
                                           lastName = s.lastName,
                                           email = s.email,
                                           tandemID = s.tandemID,
                                           batchID = s.batchID,
                                           userFirstName = sp.user.firstName,
                                           userLastName = sp.user.lastName,
                                           affiliationName = sp.user.affiliationName,
                                           type = sp.sponsortype1.name,
                                           description = "Sponsor Donation"

                                       }).ToList();

                    return paymentInfo;
                }

            }
            catch (Exception ex)
            {
                Console.Write("PaymetnManager.getPaymentSponsorsReceiptInfo error " + ex);
                return null;
            }
        }
Exemplo n.º 24
0
        public PaymentQuery getPayment(long id)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var paymentInfo = (from s in context.paymentbills
                                       from sp in context.sponsor2
                                       where s.paymentBillID == id && s.deleted == false && sp.paymentID == s.paymentID && s.completed == true
                                       select new PaymentQuery
                                       {
                                           paymentBillID = s.paymentBillID,
                                           date = s.date,
                                           affiliationName = sp.user.affiliationName,
                                           transactionid = s.transactionid,
                                           AmountPaid = s.AmountPaid,
                                           methodOfPayment = s.methodOfPayment,
                                           firstName = s.firstName,
                                           lastName = s.lastName,
                                           email = s.email,
                                           tandemID = s.tandemID,
                                           batchID = s.batchID,
                                           userFirstName = sp.user.firstName,
                                           userLastName = sp.user.lastName,
                                           type = sp.sponsortype1.name,
                                           description = "Sponsor Donation"

                                       }).FirstOrDefault();

                    if (paymentInfo == null)
                    {
                        paymentInfo = (from s in context.paymentbills
                                       from r in context.registrations
                                       where s.paymentBillID == id && s.deleted == false && r.paymentID == s.paymentID && s.completed == true
                                       select new PaymentQuery
                                       {
                                           paymentBillID = s.paymentBillID,
                                           date = (DateTime)s.payment.creationDate,
                                           transactionid = s.transactionid,
                                           AmountPaid = s.AmountPaid,
                                           methodOfPayment = s.methodOfPayment,
                                           firstName = s.firstName,
                                           lastName = s.lastName,
                                           email = s.email,
                                           tandemID = s.tandemID,
                                           batchID = s.batchID,
                                           userFirstName = r.user.firstName,
                                           userLastName = r.user.lastName,
                                           affiliationName = r.user.affiliationName,
                                           type = r.user.usertype.userTypeName,
                                           description = "User Registration."
                                       }).FirstOrDefault();
                    }

                    if (paymentInfo == null)
                    {
                        PaymentQuery error = new PaymentQuery();
                        error.paymentBillID = -1;//notify not found
                        return error;
                    }
                    return paymentInfo;
                }

            }
            catch (Exception ex)
            {
                Console.Write("PaymetnManager.getPaymentReceiptInfo error " + ex);
                return null;
            }
        }
Exemplo n.º 25
0
        public LoginModule(conferenceadminContext context, ITokenizer tokenizer)
            : base("/auth")
        {
            SignUpManager signUp = new SignUpManager();
            Post["/login"] = parameters =>
            {
                var paramuser = this.Bind<membership>();
                NancyService.Modules.LoginAuthenticateManager.UserAuth user = LoginAuthenticateManager.login(paramuser);

                if (user == null)
                {
                    return HttpStatusCode.Unauthorized;
                }

                var userIdentity = user.GetIdentity();

                var token = tokenizer.Tokenize(userIdentity, Context);

                return new
                {
                    memberID = user.memberID,
                    userID = user.userID,
                    userClaims = userIdentity.Claims,
                    Token = token,
                    email = user.email,
                };

            };
            Get["/accountConfirmation/{key}"] = parameters =>
            {
                string key = parameters.key;
                String result = signUp.confirmAccount(key);

                if (result != null)
                    return Response.AsJson(result);

                else
                {
                    return HttpStatusCode.Conflict;
                }

            };
            Get["/checkEmail/{email}"] = parameters =>
            {
                string email = parameters.email;
                String result = signUp.checkEmail(email);

                if (result != null)
                     return Response.AsJson(result);

                else {
                    return HttpStatusCode.Conflict;
                }

            };

            Get["/requestPass/{email}"] = parameters =>
            {
                string email = parameters.email;

                String result = signUp.requestPass(email);

                if (result != null)
                    return Response.AsJson(result);

                else
                {
                    return HttpStatusCode.Conflict;
                }

            };

            Post["/changePassword"] = parameters =>
            {

                NancyService.Modules.SignUpManager.UserCreation member = this.Bind<NancyService.Modules.SignUpManager.UserCreation>();

                if (member == null)
                {
                    return HttpStatusCode.Conflict;
                }
                else
                {
                    return Response.AsJson(signUp.changePassword(member));

                }

            };
            Post["/createUser"] = parameters =>
            {
                var user = this.Bind<user>();
                var member = this.Bind<membership>();
                var address = this.Bind<address>();

                if (user == null)
                {
                    return HttpStatusCode.Conflict;
                }
                else
                {
                    if (signUp.createUser(user, member, address))
                        return HttpStatusCode.Created;
                    else
                    {
                        return HttpStatusCode.InternalServerError;
                    }
                }

            };
        }
Exemplo n.º 26
0
        //Give an evaluator the "Accepted" status
        public EvaluatorQuery addEvaluator(String email)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var e = (from u in context.users
                             where u.membership.email == email
                             select u).FirstOrDefault();
                    if (e != null)
                    {
                        //Check if user has been an evaluator before
                        var check = (from s in context.evaluators
                                     where s.userID == e.userID
                                     select s).FirstOrDefault();

                        if (check != null)
                        {
                            //Update status to Accepted
                            check.deleted = false;
                            var claims = (from s in context.claims
                                          where s.userID == e.userID && s.privilege.privilegestType == "Evaluator"
                                          select s).FirstOrDefault();
                            if (claims != null)
                            {
                                claims.deleted = false;
                            }
                            else
                            {
                                //Add claim
                                claim newClaim = new claim();
                                newClaim.privilegesID = 4;
                                newClaim.deleted = false;
                                newClaim.userID = e.userID;
                                context.claims.Add(newClaim);
                            }

                            e.evaluatorStatus = "Accepted";
                        }

                        else
                        {
                            //Change status in table user
                            EvaluatorQuery newEvaluator = new EvaluatorQuery();
                            newEvaluator.userID = e.userID;
                            newEvaluator.firstName = e.firstName;
                            newEvaluator.lastName = e.lastName;
                            newEvaluator.email = email;
                            newEvaluator.acceptanceStatus = e.evaluatorStatus;

                            //Add claim
                            claim newClaim = new claim();
                            newClaim.privilegesID = 4;
                            newClaim.deleted = false;
                            newClaim.userID = e.userID;
                            context.claims.Add(newClaim);

                            //Add evaluator
                            evaluator newEva = new evaluator();
                            newEva.userID = e.userID;
                            newEva.deleted = false;
                            context.evaluators.Add(newEva);

                            e.evaluatorStatus = "Accepted";

                            context.SaveChanges();
                            return newEvaluator;
                        }

                        context.SaveChanges();
                    }
                    return null;
                }
            }
            catch (Exception ex)
            {
                Console.Write("EvaluatorManager.addEvaluator error " + ex);
                return null;
            }
        }
Exemplo n.º 27
0
        //Update the status of an evaluator
        public bool updateAcceptanceStatus(EvaluatorQuery e)
        {
            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    var updateUser = (from s in context.users
                                      where s.userID == e.userID
                                      select s).FirstOrDefault();
                    if (updateUser != null)
                    {
                        if (e.acceptanceStatus == "Rejected")
                        {
                            //Remove from claim table
                            var updateClaim = (from s in context.claims
                                               where s.userID == e.userID && s.privilege.privilegestType == "Evaluator"
                                               select s).FirstOrDefault();

                            if (updateClaim != null)
                            {
                                updateClaim.deleted = true;
                            }

                            //Remove from evaluator table
                            var updateEvaluator = (from s in context.evaluators
                                                   where s.userID == e.userID
                                                   select s).FirstOrDefault();

                            if (updateEvaluator != null)
                            {
                                //list of the the submissions assigned to the evaluator with ID evaluatorID
                                List<evaluatiorsubmission> evaluatorAssignments = context.evaluatiorsubmissions.Where(c => c.evaluatorID == updateEvaluator.evaluatorsID && c.deleted == false).ToList();

                                foreach (var assignment in evaluatorAssignments)
                                {
                                    if (assignment.evaluationsubmitteds.FirstOrDefault() == null)//if no evaluation was submitted then delete the assignment
                                    {
                                        assignment.deleted = true;
                                    }
                                }

                                updateEvaluator.deleted = true;
                            }
                            //Update status
                            updateUser.evaluatorStatus = e.acceptanceStatus;

                            //Send reject email
                            try { sendRejectConfirmation(updateUser.firstName, updateUser.membership.email, "Rejected"); }
                            catch (Exception ex)
                            {
                                Console.Write("AdminManager.sendRejectEvaluatorEmail error " + ex);
                                return false;
                            }
                        }

                        else if (e.acceptanceStatus == "Accepted")
                        {
                            //Give evaluator privilege to user
                            this.addEvaluator(updateUser.membership.email);
                            //Send confirmation email
                            try { sendAcceptConfirmation(updateUser.firstName, updateUser.membership.email, "Accepted"); }
                            catch (Exception ex)
                            {
                                Console.Write("AdminManager.sendRejectEvaluatorEmail error " + ex);
                                return false;
                            }
                        }

                        context.SaveChanges();
                        return true;
                    }
                    else
                    {
                        return false;
                    }
                }
            }
            catch (Exception ex)
            {
                Console.Write("EvaluatorManager.updateAcceptanceStatus error " + ex);
                return false;
            }
        }
Exemplo n.º 28
0
        //Search evaluators that contain the specified criteria
        //Returns userID, first name, last name, email and its evaluator status
        public EvaluatorPagingQuery searchEvaluators(int index, String criteria)
        {
            EvaluatorPagingQuery e = new EvaluatorPagingQuery();

            try
            {

                using (conferenceadminContext context = new conferenceadminContext())
                {
                    int pageSize = 10;
                    //Get all evaluators applications
                    var query = context.users.Where(evaluator => ((evaluator.firstName.ToLower() + " " + evaluator.lastName.ToLower()).Contains(criteria.ToLower()) || evaluator.membership.email.ToLower().Contains(criteria.ToLower())) && (evaluator.evaluatorStatus == "Accepted" || evaluator.evaluatorStatus == "Rejected" || evaluator.evaluatorStatus == "Pending")).Select(evaluator => new EvaluatorQuery
                    {
                        userID = (long)evaluator.userID,
                        firstName = evaluator.firstName,
                        lastName = evaluator.lastName,
                        email = evaluator.membership.email,
                        acceptanceStatus = evaluator.evaluatorStatus

                    }).OrderBy(x => x.email);

                    e.rowCount = query.Count();
                    //Paging -> Filter results to 10 records per index (page)
                    if (e.rowCount > 0)
                    {
                        e.maxIndex = (int)Math.Ceiling(e.rowCount / (double)pageSize);
                        var evaluators = query.Skip(pageSize * index).Take(pageSize).ToList(); //Skip past rows and take new elements
                        e.results = evaluators;
                    }

                    return e;
                }
            }
            catch (Exception ex)
            {
                Console.Write("EvaluatorManager.searchEvaluators error " + ex);
                return null;
            }
        }
Exemplo n.º 29
0
        //Get list of evaluators with an 'Pending' status
        //Returns userID, first name, last name, email and its evaluator status
        public EvaluatorPagingQuery getPendingList(int index)
        {
            EvaluatorPagingQuery e = new EvaluatorPagingQuery();

            try
            {
                using (conferenceadminContext context = new conferenceadminContext())
                {
                    int pageSize = 10;
                    //Get list of pending applications
                    var query = context.users.Where(evaluator => evaluator.evaluatorStatus == "Pending").Select(evaluator => new EvaluatorQuery
                    {
                        userID = (long)evaluator.userID,
                        firstName = evaluator.firstName,
                        lastName = evaluator.lastName,
                        email = evaluator.membership.email,
                        acceptanceStatus = evaluator.evaluatorStatus

                    }).OrderBy(x => x.email);

                    e.rowCount = query.Count();
                    //Paging -> Filter results to obtain 10 results per page (index references to page number)
                    if (e.rowCount > 0)
                    {
                        e.maxIndex = (int)Math.Ceiling(e.rowCount / (double)pageSize);
                        var pending = query.Skip(pageSize * index).Take(pageSize).ToList(); //Skip past rows and take new elements
                        e.results = pending;
                    }

                    return e;
                }
            }
            catch (Exception ex)
            {
                Console.Write("EvaluatorManager.getPendingList error " + ex);
                return null;
            }
        }
Exemplo n.º 30
0
        //Get list of evaluators with an 'Accepted' or 'Rejected' status
        //Returns userID, first name, last name, email and its evaluator status
        public EvaluatorPagingQuery getEvaluatorList(int index, int id)
        {
            EvaluatorPagingQuery e = new EvaluatorPagingQuery();

            try
            {

                using (conferenceadminContext context = new conferenceadminContext())
                {
                    int pageSize = 10;
                    //Get list of evaluators
                    var query = context.users.Where(evaluator => (evaluator.evaluatorStatus == "Accepted" || evaluator.evaluatorStatus == "Rejected") && evaluator.userID != id && context.claims.Where(x => x.userID == evaluator.userID && x.deleted != true && (x.privilege.privilegesID == 1 || x.privilege.privilegesID == 3 || x.privilege.privilegesID == 5)).Select(x => x.userID).Count() == 0).Select(evaluator => new EvaluatorQuery
                    {
                        userID = (long)evaluator.userID,
                        firstName = evaluator.firstName,
                        lastName = evaluator.lastName,
                        email = evaluator.membership.email,
                        acceptanceStatus = evaluator.evaluatorStatus

                    }).OrderBy(x => x.email);

                    e.rowCount = query.Count();
                    //Paging -> Filter results to obtain 10 results per page (index references to page number)
                    if (e.rowCount > 0)
                    {
                        e.maxIndex = (int)Math.Ceiling(e.rowCount / (double)pageSize);
                        var evaluators = query.Skip(pageSize * index).Take(pageSize).ToList(); //Skip past rows and take new elements
                        e.results = evaluators;
                    }

                    return e;
                }
            }
            catch (Exception ex)
            {
                Console.Write("EvaluatorManager.getEvaluatorList error " + ex);
                return null;
            }
        }