Example #1
0
    protected void btnResetPassword_Click(object sender, EventArgs e)
    {
        int user_id = Convert.ToInt32(Context.Items["UserID"]);

        if (txtPassword.Text == "")
        {
            lblMsgReset.Text = "<br><br>New password cannot be blank";
        }
        else if (txtPassword.Text.Length < 6)
        {
            lblMsgReset.Text = "<br><br>New password cannot be less than 6 characters";
        }
        else if (txtPassword.Text.Length > 15)
        {
            lblMsgReset.Text = "<br><br>New password cannot be longer than 15 characters";
        }
        else if (txtPassword.Text == txtPasswordConfirm.Text)
        {
            lblMsgReset.Text = "";
            qPtl_User user = new qPtl_User(user_id);

            user.PasswordResetCode = "";
            string password_for_storing = FormsAuthentication.HashPasswordForStoringInConfigFile(txtPassword.Text, "sha1");
            user.Password = password_for_storing;
            user.Update();

            lblMsgReset.Text = "Your password has been successfully reset.<br><br>";
        }
        else
        {
            lblMsgReset.Text = "<br><br>Passwords did not match";
        }
    }
Example #2
0
    protected string AddCampaignUserPreference(qSoc_Campaign campaign, qPtl_User user, int scope_id)
    {
        string return_did   = string.Empty;
        int    campaign_did = qCom_CampaignDID.GetNextAvailableCampaignPhoneNumber(campaign.CampaignID);

        if (campaign_did > 0)
        {
            qCom_CampaignDID did = new qCom_CampaignDID(campaign_did);
            if (did != null)
            {
                if (did.CampaignDID > 0)
                {
                    qCom_UserCampaignPreference u_pref = new qCom_UserCampaignPreference();
                    u_pref.DID            = did.DID;
                    u_pref.UserID         = user.UserID;
                    u_pref.Available      = "Yes";
                    u_pref.ScopeID        = scope_id;
                    u_pref.Created        = DateTime.Now;
                    u_pref.CreatedBy      = user.UserID;
                    u_pref.LastModified   = DateTime.Now;
                    u_pref.LastModifiedBy = user.UserID;
                    u_pref.MarkAsDelete   = 0;
                    u_pref.CampaignID     = campaign.CampaignID;
                    u_pref.Insert();

                    return_did = did.DID;
                }
            }
        }
        return(return_did);
    }
    protected void radSendTestMessage_Click(object sender, EventArgs e)
    {
        int currentUserID = Convert.ToInt32(Context.Items["UserID"]);

        qPtl_User        user    = new qPtl_User(Convert.ToInt32(Request.QueryString["userID"]));
        qPtl_UserProfile profile = new qPtl_UserProfile(Convert.ToInt32(Request.QueryString["userID"]));

        string userMobile    = string.Empty;
        string smsMessage    = string.Empty;
        string smsMessageURI = string.Empty;

        userMobile = txtMobileNumber.Text;

        // create object
        string smsMode   = System.Configuration.ConfigurationManager.AppSettings["SMSMode"];
        Guid   authToken = new Guid(System.Configuration.ConfigurationManager.AppSettings["SMSLicenseKey"]);

        Quartz.Communication.qCom_SMSMessageLog sendLong = new Quartz.Communication.qCom_SMSMessageLog();

        // send message + add log
        if (smsMode == "did")
        {
            // use custom number + key
            string did = System.Configuration.ConfigurationManager.AppSettings["SMSDid"];
            Quartz.Communication.CDYNE.SMSResponse[] response = Quartz.Communication.qCom_SMSMessage.SendSMSAdvancedSendMessage(userMobile, smsMessage, authToken, did, 0, false);
            sendLong.Insert(1, DateTime.Now, user.UserID, 0, smsMessageURI, userMobile, did, smsMessage, "sent", Convert.ToString(response[0].MessageID), 0, 0, "", false, false, 0, false, false, 0, string.Empty);
        }

        lblMessage.Text += "Finished sending text message to " + userMobile + "<br>";

        lblMessage.Visible = true;
    }
Example #4
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            int emailID = Convert.ToInt32(Request.QueryString["emailID"]);

            // create object
            qCom_EmailTool email = new qCom_EmailTool(emailID);

            qPtl_User user = new qPtl_User(Convert.ToInt32(Context.Items["UserID"]));
            txtEmail.Text = user.Email;

            lblSubject.Text = email.emailSubject;

            // get headers and footers
            string        query   = "SELECT TOP(1) * FROM qCom_EmailPreferences WHERE Available = 'Yes'";
            qDbs_SQLcode  sql     = new qDbs_SQLcode();
            SqlDataReader eReader = sql.GetDataReader(query);

            eReader.Read();
            string header      = Convert.ToString(eReader["Header"]);
            string footer      = Convert.ToString(eReader["Footer"]);
            string unsubscribe = Convert.ToString(eReader["Unsubscribe"]);
            eReader.Close();

            // if email type is bulk, then add footer
            string completeMessage = header + email.emailDraft + footer;
            if (email.emailType == "bulk")
            {
                completeMessage += unsubscribe;
            }

            lblBody.Text = completeMessage;
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            if (campaign_id > 0)
            {
                CampaignAllEnrolledScrolling.CampaignID = campaign_id;
                CampaignAllEnrolledScrolling.SMSOk      = true;

                qSoc_Campaign campaign = new qSoc_Campaign(campaign_id);

                if (!String.IsNullOrEmpty(Request.QueryString["userID"]))
                {
                    int       user_id = Convert.ToInt32(Request.QueryString["userID"]);
                    qPtl_User user    = new qPtl_User(user_id);
                    litRecipientList.Text = "This message will be sent to a single enrolled member of: <strong>" + campaign.CampaignName + "</strong><br><br><strong>Campaign Member</strong><br>Username = "******"This message will be sent to all enrolled members of: <strong>" + campaign.CampaignName + "</strong><br><strong>Campaign Members</strong>";
                    plhLimitByDays.Visible = true;
                }

                populateCampaignMessages(campaign_id);
            }
        }
    }
Example #6
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!String.IsNullOrEmpty(Convert.ToString(Context.Items["SessionID"])))
        {
            qPtl_Sessions session = new qPtl_Sessions(Convert.ToInt32(Context.Items["SessionID"]));
            if (session.SessionID > 0)
            {
                session.StopTime = DateTime.Now;
                session.Update();
            }

            qPtl_User user = new qPtl_User(Convert.ToInt32(Context.Items["UserID"]));
            if (user.UserID > 0)
            {
                DateTime last_time = new DateTime();
                last_time = Convert.ToDateTime(user.LastTimeSeen);
                if (!String.IsNullOrEmpty(Convert.ToString(user.LastTimeSeen)))
                {
                    user.LastTimeSeen = last_time.AddMinutes(-16);
                }
                user.Update();
            }
        }

        Session.Abandon();
        FormsAuthentication.SignOut();
        Response.Redirect("~/default.aspx", true);
    }
    protected void AddUserCampaign(int campaign_id, int scope_id, qPtl_User user)
    {
        DateTime start_date = new DateTime();

        start_date = DateTime.Now;

        qSoc_UserCampaign new_campaign = qSoc_UserCampaign.EnrollUserInCampaign(user.UserID, campaign_id, "controlled", start_date, Convert.ToInt32(Context.Items["ScopeID"]), "role", "Yes", "Yes", "Yes", "Yes");
    }
        public void SendNotification(int emailID, int UserID, int ProfileUserID, string comment, int ReferenceID)
        {
            qCom_EmailTool email = new qCom_EmailTool();

            qPtl_User user           = new qPtl_User(ProfileUserID);
            qPtl_User commentingUser = new qPtl_User(UserID);

            if (!string.IsNullOrEmpty(user.Email))
            {
                email.SendDatabaseMail(user.Email, emailID, user.UserID, commentingUser.UserName, comment, ReferenceID.ToString(), string.Empty, string.Empty, false);
            }
        }
Example #9
0
    protected void btnResetPassword_Click(object sender, EventArgs e)
    {
        int user_id = 0;

        if (!String.IsNullOrEmpty(Request.QueryString["userID"]))
        {
            user_id = Convert.ToInt32(Request.QueryString["userID"]);
            if (txtPassword.Text == "")
            {
                lblMsgReset.Text = "<br><br>New password cannot be blank";
            }
            else if (txtPassword.Text.Length < 6)
            {
                lblMsgReset.Text = "<br><br>New password cannot be less than 6 characters";
            }
            else if (txtPassword.Text.Length > 15)
            {
                lblMsgReset.Text = "<br><br>New password cannot be longer than 15 characters";
            }
            else if (txtPassword.Text == txtPasswordConfirm.Text)
            {
                lblMsgReset.Text = "";
                qPtl_User user = new qPtl_User(user_id);

                if (user.PasswordResetCode == Request.QueryString["resetCode"])
                {
                    user.PasswordResetCode = "";
                    string password_for_storing = FormsAuthentication.HashPasswordForStoringInConfigFile(txtPassword.Text, "sha1");
                    user.Password = password_for_storing;
                    user.Update();
                    txtPassword.Visible        = false;
                    txtPasswordConfirm.Visible = false;
                    btnResetPassword.Visible   = false;
                    hplCancelReset.Visible     = false;

                    lblMsgReset.Text = "Your password has been successfully reset.<br><br> <a href=\"/logon.aspx\" class=\"btn\">Sign in now</a>";
                }
                else
                {
                    lblMsgReset.Text = "<br><br>This password reset code is no longer valid. Please request another one or contact support";
                }
            }
            else
            {
                lblMsgReset.Text = "<br><br>Passwords did not match";
            }
        }
        else
        {
            Response.Redirect("/default.aspx");
        }
    }
Example #10
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!String.IsNullOrEmpty(Request.QueryString["resetCode"]))
     {
         int user_id = 0;
         if (!String.IsNullOrEmpty(Request.QueryString["userID"]))
         {
             user_id = Convert.ToInt32(Request.QueryString["userID"]);
             qPtl_User user = new qPtl_User(user_id);
             lblResetInstructions.Text = "Welcome, " + user.UserName + ". Enter a password below<br><br />";
         }
     }
 }
Example #11
0
    protected void sendNow()
    {
        int emailID = Convert.ToInt32(Request.QueryString["emailID"]);

        // create object
        qCom_EmailTool email = new qCom_EmailTool(emailID);

        qPtl_User user = new qPtl_User(Convert.ToInt32(Context.Items["UserID"]));

        email.SendDatabaseMail(txtEmail.Text, Convert.ToInt32(Request.QueryString["emailID"]), user.UserID, user.UserName, txtValue1.Text, txtValue2.Text, txtValue3.Text, txtValue4.Text, false);

        lblMessage.Text    = "* Email Successfully Sent";
        lblMessage.Visible = true;
    }
Example #12
0
    protected void Page_Load(object sender, EventArgs e)
    {
        int curr_user_id = Convert.ToInt32(Context.Items["UserID"]);

        qPtl_User user = new qPtl_User(curr_user_id);

        if (user.HighestRole == "Space Admin")
        {
        }

        siteMedicationGroups.SelectCommand = "SELECT * FROM qSoc_MedicationGroups WHERE MarkAsDelete = 0 ORDER BY MedicationGroupName ASC";

        if (!Page.IsPostBack)
        {
        }
    }
Example #13
0
    protected void btnRequestPasswordReset_Click(object sender, EventArgs e)
    {
        var user = qPtl_User.GetUserByEmail(txtOrigEmail.Text);

        if (user != null)
        {
            if (user.UserID > 0)
            {
                if (user.SetPasswordResetCode(user.UserID))
                {
                    // create object
                    int            emailID = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["Email_ForgotPasswordID"]);
                    qCom_EmailTool email   = new qCom_EmailTool(emailID);

                    qPtl_User updated_user = new qPtl_User(user.UserID);

                    int sent_email_log_id = email.SendDatabaseMail(updated_user.Email, emailID, updated_user.UserID, updated_user.UserName, updated_user.PasswordResetCode, Request.Url.Authority + HttpRuntime.AppDomainAppVirtualPath.TrimEnd('/'), string.Empty, string.Empty, false);

                    if (sent_email_log_id > 0)
                    {
                        lblMsgRequest.Text              = "<br>Please check your email for further instructions";
                        txtOrigEmail.Visible            = false;
                        btnRequestPasswordReset.Visible = false;
                        hplCancelRequest.Visible        = false;
                    }
                    else
                    {
                        lblMsgRequest.Text = "<br><br>An error occured sending an email, please contact support";
                    }
                }
                else
                {
                    lblMsgRequest.Text = "<br><br>An error occured setting the reset code, please contact support";
                }
            }
        }
        else
        {
            lblMsgRequest.Text = "<br><br>Email address not found";
        }
    }
Example #14
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!String.IsNullOrEmpty(Request.QueryString["resetCode"]))
     {
         plhRequest.Visible = false;
         plhReset.Visible   = true;
         int user_id = 0;
         if (!String.IsNullOrEmpty(Request.QueryString["userID"]))
         {
             user_id = Convert.ToInt32(Request.QueryString["userID"]);
             qPtl_User user = new qPtl_User(user_id);
             lblResetInstructions.Text = "Welcome back, " + user.UserName + ". Enter a new password below<br><br />";
         }
     }
     else
     {
         plhRequest.Visible          = true;
         plhReset.Visible            = false;
         lblRequestInstructions.Text = "What email address did you use when you created your account?<br /><br />";
     }
 }
Example #15
0
    protected void btnVerify_Click(object sender, EventArgs e)
    {
        int    curr_user_id = Convert.ToInt32(Context.Items["UserID"]);
        string pin          = txtMobileVerify.Text;
        string return_url   = string.Empty;

        if (!String.IsNullOrEmpty(lblReturnURL.Text))
        {
            return_url = lblReturnURL.Text;
        }

        qCom_UserPreference comm = qCom_UserPreference.GetUserPreference(curr_user_id);
        qPtl_User           user = new qPtl_User(curr_user_id);

        string dbPIN = Convert.ToString(comm.MobilePIN);

        if (dbPIN == pin)
        {
            comm.OkSms             = "Yes";
            comm.ConfirmSms        = "Yes";
            comm.MobilePINverified = DateTime.Now;
            comm.Update();

            if (!String.IsNullOrEmpty(return_url))
            {
                Response.Redirect(lblReturnURL.Text);
            }
            else
            {
                litMsg.Text = "* PIN successfully validated. You will start receiving messages shortly";
            }
        }
        else
        {
            comm.OkSms = "No";
            comm.Update();

            litMsg.Text = "* WARNING: the PIN your entered does not match the one we sent to your phone. Please try again. If this problem continues, please contact support using the link below.<br><br>";
        }
    }
        //Send to just one address with text replacement
        public int SendDatabaseMail(string address, int emailID, int userID, string userName, string value1, string value2, string value3, string value4, bool no_duplicates_today)
        {
            // get email info
            qCom_EmailTool email      = new qCom_EmailTool(emailID);
            qCom_EmailItem full_email = new qCom_EmailItem(emailID);

            string header              = string.Empty;
            string footer              = string.Empty;
            string strFromEmail        = string.Empty;
            string fromName            = string.Empty;
            string emailUsername       = null;
            string emailPassword       = null;
            string emailServer         = null;
            bool   sslEnabled          = false;
            int    portNum             = 0;
            string strDID              = string.Empty;
            int    return_email_log_id = 0;
            bool   passed_send_checks  = false;
            bool   already_sent_today  = true;
            string returnedEmail       = string.Empty;
            bool   ok_to_send          = false;
            string noEmail             = string.Empty;


            // Check to see if email already sent to user today
            if (no_duplicates_today == true)
            {
                var prior_current_day_log = qCom_EmailLog.CheckForEmailSentLastDay(address);

                if (prior_current_day_log == null)
                {
                    already_sent_today = false;
                }
            }
            else
            {
                already_sent_today = false;
            }

            qCom_UserPreference_View u_pref = new qCom_UserPreference_View(address);

            if (u_pref.UserID > 0)
            {
                if (u_pref.OkBulkEmail == "Yes" || u_pref.OkEmail == "Yes")
                {
                    ok_to_send = true;
                }
            }
            else
            {
                ok_to_send = true;
            }

            if (already_sent_today == false && ok_to_send == true)
            {
                passed_send_checks = true;
            }
            else
            {
                passed_send_checks = false;
            }

            qPtl_User user = new qPtl_User(Convert.ToInt32(userID));

            if (user.UserID == 0)
            {
                user.Email     = "";
                user.FirstName = "";
                user.LastName  = "";
            }

            // load default email preferences
            if (String.IsNullOrEmpty(emailServer))
            {
                var email_pref = qCom_EmailPreference.GetEmailPreferences();

                if (email_pref != null)
                {
                    if (email_pref.EmailPreferencesID > 0)
                    {
                        header        = email_pref.Header;
                        footer        = email_pref.Footer;
                        strFromEmail  = email_pref.FromEmailAddress;
                        fromName      = email_pref.FromName;
                        emailServer   = email_pref.SMTPServer;
                        emailUsername = email_pref.SMTPUsername;
                        emailPassword = email_pref.SMTPPassword;
                        sslEnabled    = email_pref.SMTPSSL;
                        portNum       = email_pref.SMTPPort;
                    }
                }
            }

            // format as friendly send address
            string strFullEmail = string.Empty;

            if (!String.IsNullOrEmpty(fromName))
            {
                strFullEmail = fromName + " <" + strFromEmail + ">";
            }
            else
            {
                strFullEmail = strFromEmail;
            }

            string messageBody = header;

            messageBody += email.emailDraft;
            emailSubject = email.emailSubject;

            messageBody += footer;

            if (!String.IsNullOrEmpty(emailServer) && passed_send_checks == true)
            {
                SmtpClient emailClient = new SmtpClient(emailServer, portNum);
                emailClient.EnableSsl      = sslEnabled;
                emailClient.DeliveryMethod = SmtpDeliveryMethod.Network;

                emailClient.Credentials = new System.Net.NetworkCredential(emailUsername, emailPassword);

                Regex emailCheck = new Regex("^.*<?[-a-zA-Z0-9!#$%&'*+/=?^_`{|}~]+(\\.[-a-zA-Z0-9!#$%&'*+/=?^_`{|}~]+)*@(([a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9]+)?){1,63}\\.)+([a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9]+)?){2,63}>?$");

                // create temp bulk email log -- used for tracking (must be created before sent so can include id in message html)
                int t_log_id = 0;
                qCom_TempBulkEmailLog t_log = new qCom_TempBulkEmailLog();
                t_log.EmailItemID  = emailID;
                t_log.EmailAddress = strFullEmail;
                t_log.Timestamp    = DateTime.Now;
                t_log.Insert();
                t_log_id = t_log.TempBulkEmailLogID;

                if (emailCheck.IsMatch(address.ToLower()))
                {
                    string finalBody = parseContentField(new string[] { Convert.ToString(user.UserID), userName, user.FirstName, user.LastName, user.Email, DateTime.Now.ToString(), value1, value2, value3, value4, strDID, Convert.ToString(emailID), Convert.ToString(t_log_id) }, messageBody);

                    string finalSubject = parseContentField(new string[] { Convert.ToString(user.UserID), userName, user.FirstName, user.LastName, user.Email, DateTime.Now.ToString(), value1, value2, value3, value4, strDID, Convert.ToString(emailID), Convert.ToString(t_log_id) }, emailSubject);

                    MailMessage mailout = new MailMessage(strFullEmail, address, finalSubject, finalBody);
                    mailout.IsBodyHtml = true;

                    emailClient.Send(mailout);

                    return_email_log_id = AddTransmissionLog(scopeID, address, userID, "single", finalSubject, emailID, full_email.CampaignID, strFromEmail);
                }
            }

            return(return_email_log_id);
        }
    private void cmdLogin_ServerClick(object sender, System.EventArgs e)
    {
        if (ValidateUser(txtUserName.Value, txtUserPass.Value))
        {
            qPtl_User user = new qPtl_User(txtUserName.Value);

            qPtl_Sessions session = new qPtl_Sessions();
            session.Created      = DateTime.Now;
            session.StartTime    = DateTime.Now;
            session.LastTimeSeen = DateTime.Now;
            session.ScopeID      = user.ScopeID;
            session.UserID       = user.UserID;
            session.BrowserType  = Request.Browser.Browser;
            session.ComputerType = Request.Browser.Platform;
            session.Insert();
            int sessionID = session.SessionID;
            int scopeID   = user.ScopeID;

            var    u_roles   = qPtl_UserRole_View.GetUserRoles(user.UserID);
            string role_list = string.Empty;

            if (u_roles != null)
            {
                foreach (var u in u_roles)
                {
                    role_list += string.Format("{0},", u.RoleName, ",");
                }
            }

            role_list.TrimEnd(',');

            // see if there is a campaign code
            string reg_code        = string.Empty;
            string custom_redirect = string.Empty;
            if (!String.IsNullOrEmpty(txtSpaceCode.Text))
            {
                reg_code = txtSpaceCode.Text;

                qSoc_Campaign campaign = new qSoc_Campaign(reg_code);

                if (campaign.CampaignID > 0)
                {
                    // see if already enrolled
                    var exist_campaign = qSoc_UserCampaign.GetUserCampaign(user.UserID, campaign.CampaignID);

                    if (exist_campaign != null)
                    {
                        if (exist_campaign.UserCampaignID > 0)
                        {
                            exist_campaign.DeleteUserCampaign(campaign.CampaignID, user.UserID);
                            exist_campaign.DeleteUserCampaignActions(campaign.CampaignID, user.UserID);
                        }
                    }

                    AddUserCampaign(campaign.CampaignID, user.ScopeID, user);
                    custom_redirect = "~/social/learning/campaigns/campaign-details.aspx?campaignID=" + campaign.CampaignID;
                }
            }

            string userData = string.Format("{0};{1};{2}", sessionID, role_list, scopeID);

            FormsAuthenticationTicket tkt;
            string     cookiestr;
            HttpCookie ck;
            int        timeout_minutes          = 480;  // default shorter timeout (8 hours)
            int        timeout_extended_minutes = 1440; // default extended timeout (1 day)
            int        logout_minutes           = 0;
            if (!String.IsNullOrEmpty(Convert.ToString(System.Configuration.ConfigurationManager.AppSettings["Site_LoginTimeOut"])))
            {
                timeout_minutes = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["Site_LoginTimeOut"]);
            }
            else if (!String.IsNullOrEmpty(Convert.ToString(System.Configuration.ConfigurationManager.AppSettings["Site_ExtendedLoginTimeOut"])))
            {
                timeout_extended_minutes = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["Site_ExtendedLoginTimeOut"]);
            }

            if (chkLeaveLoggedIn.Checked)
            {
                logout_minutes = timeout_extended_minutes;
            }
            else
            {
                logout_minutes = timeout_minutes;
            }

            tkt       = new FormsAuthenticationTicket(1, user.UserID.ToString(), DateTime.Now, DateTime.Now.AddMinutes(logout_minutes), true, userData);
            cookiestr = FormsAuthentication.Encrypt(tkt);
            ck        = new HttpCookie(FormsAuthentication.FormsCookieName, cookiestr);
            //if (chkPersistCookie.Checked)
            //ck.Expires = tkt.Expiration;
            ck.Path = FormsAuthentication.FormsCookiePath;
            Response.Cookies.Add(ck);

            HttpCookie cookie2 = new HttpCookie("UserID", Convert.ToString(user.UserID));
            if (tkt.IsPersistent)
            {
                cookie2.Expires = tkt.Expiration.AddMinutes(logout_minutes + 5);
            }
            Response.Cookies.Add(cookie2);

            string strRedirect;
            strRedirect = Request["ReturnUrl"];
            if (strRedirect == null)
            {
                strRedirect = "~/utilities/manage-user-access.aspx";
            }
            if (!String.IsNullOrEmpty(custom_redirect))
            {
                strRedirect = custom_redirect;
            }
            Response.Redirect(strRedirect, true);
        }
        else
        {
            lblMsg.Text = "<br><br>Your username or password is not correct. Please try again.";
        }
    }
        //Send to just one address with a preset body (no text replacement)
        public int SendEventTestMail(string address, string customMessage, string customSubject, int userID, string value1, string value2)
        {
            int    return_email_log_id = 0;
            string header        = string.Empty;
            string footer        = string.Empty;
            string strFromEmail  = string.Empty;
            string fromName      = string.Empty;
            string emailUsername = null;
            string emailPassword = null;
            string emailServer   = null;
            bool   sslEnabled    = false;
            int    portNum       = 0;

            qPtl_User user = new qPtl_User((int)userID);

            // get email preferences
            var email_pref = qCom_EmailPreference.GetEmailPreferences();

            if (email_pref != null)
            {
                if (email_pref.EmailPreferencesID > 0)
                {
                    header        = email_pref.Header;
                    footer        = email_pref.Footer;
                    strFromEmail  = email_pref.FromEmailAddress;
                    fromName      = email_pref.FromName;
                    emailServer   = email_pref.SMTPServer;
                    emailUsername = email_pref.SMTPUsername;
                    emailPassword = email_pref.SMTPPassword;
                    sslEnabled    = email_pref.SMTPSSL;
                    portNum       = email_pref.SMTPPort;
                }
            }

            // format as friendly send address
            string strFullEmail = fromName + " <" + strFromEmail + ">";

            if (email_pref.EmailPreferencesID > 0)
            {
                SmtpClient emailClient = new SmtpClient(emailServer, portNum);
                emailClient.EnableSsl      = sslEnabled;
                emailClient.DeliveryMethod = SmtpDeliveryMethod.Network;

                emailClient.Credentials = new System.Net.NetworkCredential(emailUsername, emailPassword);

                emailSubject = customSubject;

                Regex emailCheck = new Regex("^.*<?[-a-zA-Z0-9!#$%&'*+/=?^_`{|}~]+(\\.[-a-zA-Z0-9!#$%&'*+/=?^_`{|}~]+)*@(([a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9]+)?){1,63}\\.)+([a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9]+)?){2,63}>?$");

                if (emailCheck.IsMatch(address.ToLower()))
                {
                    string finalBody = parseContentField(new string[] { Convert.ToString(user.UserID), user.UserName, user.FirstName, user.LastName, user.Email, DateTime.Now.ToString(), value1, value2 }, customMessage);

                    string finalSubject = parseContentField(new string[] { Convert.ToString(user.UserID), user.UserName, user.FirstName, user.LastName, user.Email, DateTime.Now.ToString(), value1, value2 }, emailSubject);

                    MailMessage mailout = new MailMessage(strFullEmail, address, finalSubject, finalBody);
                    mailout.IsBodyHtml = true;

                    emailClient.Send(mailout);

                    return_email_log_id = AddTransmissionLog(scopeID, strFullEmail, userID, "test", customSubject, 0, 0, address);
                }
            }

            return(return_email_log_id);
        }
        public int SendDatabaseMailWithAttachment(string address, int emailID, int userID, string value1, string value2, string value3, string attachment)
        {
            int    return_email_log_id = 0;
            string header        = string.Empty;
            string footer        = string.Empty;
            string strFromEmail  = string.Empty;
            string fromName      = string.Empty;
            string emailUsername = null;
            string emailPassword = null;
            string emailServer   = null;
            bool   sslEnabled    = false;
            int    portNum       = 0;

            qPtl_User user = new qPtl_User((int)userID);

            // get email preferences
            var email_pref = qCom_EmailPreference.GetEmailPreferences();

            if (email_pref != null)
            {
                if (email_pref.EmailPreferencesID > 0)
                {
                    header        = email_pref.Header;
                    footer        = email_pref.Footer;
                    strFromEmail  = email_pref.FromEmailAddress;
                    fromName      = email_pref.FromName;
                    emailServer   = email_pref.SMTPServer;
                    emailUsername = email_pref.SMTPUsername;
                    emailPassword = email_pref.SMTPPassword;
                    sslEnabled    = email_pref.SMTPSSL;
                    portNum       = email_pref.SMTPPort;
                }
            }

            // format as friendly send address
            string strFullEmail = fromName + " <" + strFromEmail + ">";

            // get email info
            qCom_EmailTool email = new qCom_EmailTool(emailID);

            string messageBody = header;

            messageBody += email.emailDraft;
            messageBody += footer;

            if (email_pref.EmailPreferencesID > 0)
            {
                SmtpClient emailClient = new SmtpClient(emailServer, portNum);
                emailClient.EnableSsl      = sslEnabled;
                emailClient.DeliveryMethod = SmtpDeliveryMethod.Network;

                emailClient.Credentials = new System.Net.NetworkCredential(emailUsername, emailPassword);

                emailSubject = email.emailSubject;

                Regex emailCheck = new Regex("^.*<?[-a-z0-9!#$%&'*+/=?^_`{|}~]+(\\.[-a-z0-9!#$%&'*+/=?^_`{|}~]+)*@(([a-z]([-a-z0-9]*[a-z0-9]+)?){1,63}\\.)+([a-z]([-a-z0-9]*[a-z0-9]+)?){2,63}>?$");

                if (emailCheck.IsMatch(address.ToLower()))
                {
                    string finalBody    = string.Empty;
                    string finalSubject = string.Empty;
                    if (userID == 0)
                    {
                        finalBody    = parseContentField(new string[] { "", "", "", "", "", DateTime.Now.ToString(), value1, value2, value3 }, messageBody);
                        finalSubject = parseContentField(new string[] { "", "", "", "", "", DateTime.Now.ToString(), value1, value2, value3 }, emailSubject);
                    }
                    else
                    {
                        finalBody    = parseContentField(new string[] { Convert.ToString(user.UserID), user.UserName, user.FirstName, user.LastName, user.Email, DateTime.Now.ToString(), value1, value2, value3 }, messageBody);
                        finalSubject = parseContentField(new string[] { Convert.ToString(user.UserID), user.UserName, user.FirstName, user.LastName, user.Email, DateTime.Now.ToString(), value1, value2, value3 }, emailSubject);
                    }

                    MailMessage mailout = new MailMessage(strFullEmail, address, finalSubject, finalBody);
                    if (!String.IsNullOrEmpty(attachment))
                    {
                        Attachment attach = new Attachment(attachment, "");
                        mailout.Attachments.Add(attach);
                    }
                    mailout.IsBodyHtml = true;

                    emailClient.Send(mailout);

                    return_email_log_id = AddTransmissionLog(scopeID, address, userID, "single", finalSubject, 0, 0, address);
                }
            }

            return(return_email_log_id);
        }
Example #20
0
    protected void ProcessContacts(string[] to_pass)
    {
        string mode   = to_pass[0];
        string f_name = to_pass[1];

        lblFileName.Text = fileFullName;
        string fileName = string.Format("{0}{1}", Server.MapPath(Convert.ToString(System.Configuration.ConfigurationManager.AppSettings["Resources_PDFFolder"])), f_name);
        string message  = string.Empty;

        if (File.Exists(fileName))
        {
            List <string[]> contacts = parseCSV(fileName);

            message = "RESULTS<br>";

            //try
            //{
            int i = 0;
            foreach (string[] c in contacts)
            {
                string first_name          = string.Empty;
                string last_name           = string.Empty;
                string email               = string.Empty;
                string keywords            = string.Empty;
                string source              = string.Empty;
                string ok_email            = string.Empty;
                string did                 = string.Empty;
                string partner             = string.Empty;
                string main_group          = string.Empty;
                string sub_group           = string.Empty;
                string custom_html_element = string.Empty;

                first_name          = c[0];
                last_name           = c[1];
                email               = c[2];
                keywords            = c[3];
                source              = c[4];
                ok_email            = c[5];
                partner             = c[6];
                main_group          = c[7];
                sub_group           = c[8];
                custom_html_element = c[9];

                bool   success = false;
                string reason  = string.Empty;

                if (i > 0)
                {
                    // check to see if valid email
                    string pat = @"^([0-9a-zA-Z]+[-._+&amp;])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}$";
                    Regex  r   = new Regex(pat, RegexOptions.IgnoreCase);

                    Match m = r.Match(email);
                    if (m.Success && mode == "process")
                    {
                        // check to see if already exists
                        qCom_Contact e_contact = qCom_Contact.GetContactByEmail(email);

                        if (e_contact != null)
                        {
                            if (e_contact.ContactID > 0)
                            {
                                // update existing contact (except email address)
                                string curr_keywords = e_contact.Keywords;
                                string curr_source   = e_contact.Source;
                                e_contact.FirstName = first_name;
                                e_contact.LastName  = last_name;
                                e_contact.Email     = email;
                                e_contact.Keywords  = keywords;
                                e_contact.Source    = source;
                                // run check to insure that OkEmail is carried over from existing record
                                if (e_contact.OKEmail == "No")
                                {
                                    e_contact.OKEmail = "No";
                                }
                                else
                                {
                                    e_contact.OKEmail = ok_email;
                                }
                                e_contact.LastModified   = DateTime.Now;
                                e_contact.LastModifiedBy = Convert.ToInt32(Context.Items["UserID"]);
                                if (!String.IsNullOrEmpty(main_group))
                                {
                                    int int_main_group;
                                    if (int.TryParse(main_group, out int_main_group))
                                    {
                                        e_contact.MainGroup = Convert.ToInt32(int_main_group);
                                    }
                                }
                                if (!String.IsNullOrEmpty(sub_group))
                                {
                                    int int_sub_group;
                                    if (int.TryParse(sub_group, out int_sub_group))
                                    {
                                        e_contact.SubGroup = Convert.ToInt32(int_sub_group);
                                    }
                                }
                                e_contact.CustomHTMLElement = custom_html_element;

                                // does a registered user with the same email exist? only perform this check if the conctact does NOT have a valid userID
                                if (!String.IsNullOrEmpty(Convert.ToString(e_contact.UserID)) && Convert.ToString(e_contact.UserID) != "0")
                                {
                                    qPtl_User user = new qPtl_User(email);
                                    if (user != null)
                                    {
                                        if (user.UserID > 0)
                                        {
                                            e_contact.UserID = user.UserID;
                                        }
                                    }
                                    else
                                    {
                                        e_contact.UserID = 0;
                                    }
                                }

                                e_contact.Update();
                                success = true;
                            }
                        }
                        else
                        {
                            // create new contact
                            qCom_Contact n_contact = new qCom_Contact();
                            n_contact.ScopeID           = Convert.ToInt32(Context.Items["ScopeID"]);
                            n_contact.Available         = "Yes";
                            n_contact.Created           = DateTime.Now;
                            n_contact.CreatedBy         = Convert.ToInt32(Context.Items["UserID"]);
                            n_contact.LastModified      = DateTime.Now;
                            n_contact.LastModifiedBy    = Convert.ToInt32(Context.Items["UserID"]);
                            n_contact.MarkAsDelete      = 0;
                            n_contact.FirstName         = first_name;
                            n_contact.LastName          = last_name;
                            n_contact.Email             = email;
                            n_contact.Keywords          = keywords;
                            n_contact.Source            = source;
                            n_contact.OKEmail           = ok_email;
                            n_contact.Partner           = partner;
                            n_contact.CustomHTMLElement = custom_html_element;
                            if (!String.IsNullOrEmpty(main_group))
                            {
                                int int_main_group;
                                if (int.TryParse(main_group, out int_main_group))
                                {
                                    n_contact.MainGroup = Convert.ToInt32(int_main_group);
                                }
                            }
                            if (!String.IsNullOrEmpty(sub_group))
                            {
                                int int_sub_group;
                                if (int.TryParse(sub_group, out int_sub_group))
                                {
                                    n_contact.SubGroup = Convert.ToInt32(int_sub_group);
                                }
                            }

                            // does a registered user with the same email exist?
                            qPtl_User user = new qPtl_User(email);
                            if (user != null)
                            {
                                if (user.UserID > 0)
                                {
                                    n_contact.UserID = user.UserID;
                                }
                            }
                            else
                            {
                                n_contact.UserID = 0;
                            }

                            n_contact.Insert();
                            success = true;
                        }
                    }
                    else if (m.Success && mode == "test")
                    {
                        success = true;
                    }
                    else if (m.Success == false)
                    {
                        reason = " bad email address";
                    }
                }

                i++;

                if (mode == "process" && success == true)
                {
                    message += "Line " + i + " SUCCESS - " + email + " successfully added to contact list<br>";
                }
                else if (mode == "test" && success == true)
                {
                    message += "Line " + i + " SUCCESS - " + email + " will be processed<br>";
                }
                else if (i > 1)
                {
                    message += "Line " + i + " FAILURE - " + email + " could not be added for the following reason: " + reason + "<br>";
                }
                else
                {
                    message += "Line " + i + " LINE NOT PROCESSED - header line in the file<br>";
                }
            }

            if (mode == "process")
            {
                lblMessage.Text           = message;
                plhStep3.Visible          = false;
                plhStep3Completed.Visible = true;
            }
            else if (mode == "test")
            {
                lblTestOutput.Text        = message;
                plhStep3.Visible          = true;
                plhStep2Completed.Visible = true;
                lblUploadFail.Text        = "";
            }
            //}
            //catch
            //{
            //lblTestOutput.Text = "WARNING: File processing failed. Make sure to use a properly formatted .csv file. You can download an example from the top of the page.";
            //}
        }
    }
    protected void btnSendConfirm_Click(object sender, EventArgs e)
    {
        // see if there are alternate language versions of this same message URI
        if (!string.IsNullOrEmpty(ddlCampaignMessages.SelectedValue))
        {
            // output variables
            string output_message            = string.Empty;
            int    num_messages_sent         = 0;
            int    limit_day_in_campaign_min = 0;
            int    limit_day_in_campaign_max = 0;

            limit_day_in_campaign_min = Convert.ToInt32(txtMinDays.Text);
            limit_day_in_campaign_max = Convert.ToInt32(txtMaxDays.Text);

            int sms_message_id = Convert.ToInt32(ddlCampaignMessages.SelectedValue);

            qCom_SMSMessage init_message = new qCom_SMSMessage(sms_message_id);

            campaign_id = Convert.ToInt32(Request.QueryString["campaignID"]);

            bool adjust_times = false;
            if (chkAlignSendTimes.Checked == true)
            {
                adjust_times = true;
            }

            // SEND TO INDIVIDUAL OR ALL ENROLLED MEMBERS
            if (!String.IsNullOrEmpty(Request.QueryString["userID"]))
            {
                // send to single person in the campaign
                int       user_id = Convert.ToInt32(Request.QueryString["userID"]);
                qPtl_User user    = new qPtl_User(user_id);

                if (user.UserID > 0)
                {
                    var log = SMSMessageFunctions.SendTextMessageToUser(user_id, init_message, campaign_id, adjust_times);

                    if (log != null)
                    {
                        if (!String.IsNullOrEmpty(log.ReferenceMessageID))
                        {
                            num_messages_sent++;
                            output_message += "<br>Member mobile number: " + log.MobilePhoneNumber + " successfully sent message";
                        }
                    }
                }
            }
            else if (limit_day_in_campaign_min != limit_day_in_campaign_max)
            {
                // send only to members between specific dates
                var users = qSoc_UserCampaign_View.GetCampaignUsersBetweenDaysInCampaign(campaign_id, limit_day_in_campaign_min, limit_day_in_campaign_max);

                if (users != null)
                {
                    foreach (var u in users)
                    {
                        var log = SMSMessageFunctions.SendTextMessageToUser(u.UserID, init_message, campaign_id, adjust_times);

                        if (log != null)
                        {
                            if (!String.IsNullOrEmpty(log.ReferenceMessageID))
                            {
                                num_messages_sent++;
                                output_message += "<br>Member mobile number: " + log.MobilePhoneNumber + " successfully sent message";
                            }
                        }
                    }
                }
            }
            else
            {
                // send to everyone in the campaign
                var users = qSoc_UserCampaign_View.GetCampaignUsers(campaign_id);

                if (users != null)
                {
                    foreach (var u in users)
                    {
                        var log = SMSMessageFunctions.SendTextMessageToUser(u.UserID, init_message, campaign_id, adjust_times);

                        if (log != null)
                        {
                            if (!String.IsNullOrEmpty(log.ReferenceMessageID))
                            {
                                num_messages_sent++;
                                output_message += "<br>Member mobile number: " + log.MobilePhoneNumber + " successfully sent message";
                            }
                        }
                    }
                }
            }

            btnSendConfirm.Visible = false;
            hlpRefresh.Visible     = true;
            hlpRefresh.NavigateUrl = Request.Url.ToString();
            litOutputMessage.Text  = "<br><br><div style=\"height:300px; width:500px; overflow-y:auto\"><span class=\"validation2\"><strong>" + num_messages_sent + "</strong> messages successfully sent.<br><br><strong>SEND LOG</strong><br>" + output_message + "</span></div>";
        }
    }
Example #22
0
    protected void btnSave_OnClick(object sender, EventArgs e)
    {
        Page.Validate("form");

        if (Page.IsValid)
        {
            int       language_id         = 1;
            int       emailID             = (string.IsNullOrEmpty(Request.QueryString["emailID"])) ? 0 : Convert.ToInt32(Request.QueryString["emailID"]);
            int       curr_email_id       = 0;
            int       scopeID             = Convert.ToInt32(Context.Items["ScopeID"]);
            int       user_id             = Convert.ToInt32(Context.Items["UserID"]);
            var       last_version_number = qPtl_HTMLRevision.GetLastVersionNumber(emailID, "email", language_id);
            qPtl_User user = new qPtl_User(user_id);

            if (emailID > 0)
            {
                lblTitle.Text = "Edit Email";
                qCom_EmailItem email = new qCom_EmailItem(emailID);
                email.URI     = txtURI.Text;
                email.Subject = txtSubject.Text;
                if (!String.IsNullOrEmpty(Convert.ToString(ddlEmailType.SelectedValue)))
                {
                    email.Type = Convert.ToString(ddlEmailType.SelectedValue);
                }
                if (!String.IsNullOrEmpty(Convert.ToString(ddlLanguages.SelectedValue)))
                {
                    email.LanguageID = Convert.ToInt32(ddlLanguages.SelectedValue);
                }
                if (!String.IsNullOrEmpty(Convert.ToString(ddlCampaigns.SelectedValue)))
                {
                    email.CampaignID = Convert.ToInt32(ddlCampaigns.SelectedValue);
                }
                email.Draft = reContent.Content;
                email.Update();

                lblMessage.Text = "*** Email Successfully Saved at " + DateTime.Now + " ***";

                curr_email_id = emailID;

                //Response.Redirect("~/qCom/email-list.aspx");
            }
            else
            {
                int new_email_id = CreateNewEmail("new", -1);

                lblMessage.Text = "*** Email Successfully Created at " + DateTime.Now + " ***";

                curr_email_id = new_email_id;
                //Response.Redirect("~/qCom/email-list.aspx");
            }

            qPtl_HTMLRevision revision = new qPtl_HTMLRevision();
            revision.Available        = "Yes";
            revision.ScopeID          = Convert.ToInt32(Context.Items["ScopeID"]);
            revision.Created          = DateTime.Now;
            revision.CreatedBy        = user_id;
            revision.LastModified     = DateTime.Now;
            revision.LastModifiedBy   = user_id;
            revision.MarkAsDelete     = 0;
            revision.ModuleInstanceID = curr_email_id;
            revision.SourceType       = "email";
            revision.HTML             = reContent.Content;
            revision.VersionNumber    = last_version_number + 1;
            revision.VersionInfo      = "Version: " + revision.VersionNumber + " saved by " + user.FirstName + " " + user.LastName + " [" + user.UserName + "] at " + DateTime.Now;
            revision.LanguageID       = language_id;

            revision.Insert();
        }
    }
Example #23
0
    protected void btnEnroll_Click(object sender, EventArgs e)
    {
        // run check for mobile text
        if (!String.IsNullOrEmpty(lblCampaignID.Text))
        {
            campaign_id = Convert.ToInt32(lblCampaignID.Text);
        }
        return_url = lblReturnURL.Text;
        string mobile_number  = txtMobileNumber.Text;
        bool   error_occurred = false;
        bool   phone_belongs_to_another_user = false;

        // check to see if this number is already being used by another user
        int curr_user_id = Convert.ToInt32(Context.Items["UserID"]);
        int scope_id     = Convert.ToInt32(Context.Items["ScopeID"]);

        var check_user = qPtl_User.GetUserByPhone(txtMobileNumber.Text, scope_id);

        if (check_user.UserID > 0)
        {
            if (check_user.UserID != curr_user_id)
            {
                error_occurred = true;
                phone_belongs_to_another_user = true;
            }
        }

        // replace characters
        if (mobile_number.Contains("-"))
        {
            mobile_number = mobile_number.Replace("-", "");
        }

        if (mobile_number.Contains("."))
        {
            mobile_number = mobile_number.Replace(".", "");
        }

        if (mobile_number.Contains("/"))
        {
            mobile_number = mobile_number.Replace("/", "");
        }

        if (mobile_number.Contains("("))
        {
            mobile_number = mobile_number.Replace("(", "");
        }

        if (mobile_number.Contains(")"))
        {
            mobile_number = mobile_number.Replace(")", "");
        }

        if (mobile_number.Contains("*"))
        {
            mobile_number = mobile_number.Replace("*", "");
        }

        if (mobile_number.Contains(" "))
        {
            mobile_number = mobile_number.Replace(" ", "");
        }

        try
        {
            string first_char = mobile_number.Substring(0, 1);
            if (mobile_number.Length == 11 && first_char == "1")
            {
                mobile_number = mobile_number.Substring(1, 10);
            }
        }
        catch
        {
            litMsg.Text    = "<br><br>* Make sure to enter a 10 digit phone number";
            error_occurred = true;
        }

        if (String.IsNullOrEmpty(mobile_number))
        {
            litMsg.Text    = "<br><br>* Make sure to enter a 10 digit phone number";
            error_occurred = true;
        }

        string pat_m = @"^[0-9]{10}$";
        Regex  r_m   = new Regex(pat_m, RegexOptions.IgnoreCase);
        Match  m_m   = r_m.Match(mobile_number);

        if (!m_m.Success)
        {
            error_occurred = true;
            litMsg.Text    = "<br><br>* Make sure to enter a 10 digit phone number";
        }

        if (error_occurred == false)
        {
            if (btnEnroll.Text == "Turn Off Text Messages")
            {
                qCom_UserPreference pref = new qCom_UserPreference(curr_user_id);
                pref.OkSms = "No";
                pref.Update();
            }
            else
            {
                // save phone number to profile
                qPtl_UserProfile profile = new qPtl_UserProfile(curr_user_id);
                if (profile.Phone1Type == "Mobile")
                {
                    profile.Phone1     = string.Empty;
                    profile.Phone1Type = string.Empty;
                }
                if (profile.Phone2Type == "Mobile")
                {
                    profile.Phone2     = string.Empty;
                    profile.Phone2Type = string.Empty;
                }
                profile.Phone1     = txtMobileNumber.Text;
                profile.Phone1Type = "Mobile";

                profile.Update();

                // add new mobile verification code to qCom_UserPreferences
                var pref    = qCom_UserPreference.GetUserPreference(curr_user_id);
                int new_pin = qCom_UserPreference.GenerateMobilePIN();

                if (pref != null)
                {
                    if (pref.UserID > 0)
                    {
                        pref.MobilePIN = Convert.ToString(new_pin);
                        pref.Update();
                    }
                }
                else
                {
                    qCom_UserPreference pref2 = new qCom_UserPreference();
                    pref2.ScopeID        = Convert.ToInt32(Context.Items["ScopeID"]);
                    pref2.Available      = "Yes";
                    pref2.Created        = DateTime.Now;
                    pref2.CreatedBy      = curr_user_id;
                    pref2.LastModified   = DateTime.Now;
                    pref2.LastModifiedBy = curr_user_id;
                    pref2.UserID         = curr_user_id;
                    pref2.OkBulkEmail    = "Yes";
                    pref2.OkSms          = "Yes";
                    pref2.OkEmail        = "Yes";
                    pref2.MobilePIN      = Convert.ToString(new_pin);
                    pref2.Insert();
                }

                // get correct DID
                string alt_did = string.Empty;
                // see if user has custom record
                var camp_pref = qCom_UserCampaignPreference.GetUserCampaignPreferences(campaign_id, curr_user_id);
                if (camp_pref != null)
                {
                    alt_did = camp_pref.DID;
                }
                else
                {
                    // see if campaign has available dedicated DIDs
                    qSoc_Campaign campaign = new qSoc_Campaign(campaign_id);
                    qPtl_User     user     = new qPtl_User(curr_user_id);
                    alt_did = AddCampaignUserPreference(campaign, user, scope_id);

                    if (String.IsNullOrEmpty(alt_did))
                    {
                        alt_did = System.Configuration.ConfigurationManager.AppSettings["SMSDid"];
                    }
                }

                string alt_pin_message_uri = string.Empty;
                var    c_pref = qCom_CampaignPreference.GetCampaignPreferences(campaign_id);
                if (c_pref != null)
                {
                    if (c_pref.CampaignPreferenceID > 0)
                    {
                        alt_pin_message_uri = c_pref.MobileVerifySMSURI;
                    }
                }

                // send mobile pin
                qCom_UserPreference.SendMobilePIN(Convert.ToString(new_pin), curr_user_id, alt_did, alt_pin_message_uri);

                plhManage.Visible = false;
                plhVerify.Visible = true;
            }
        }
        else
        {
            if (phone_belongs_to_another_user == true)
            {
                litMsg.Text = "<br><br>* This phone number belongs to another user.";
            }
        }
    }