protected void Button_Refresh_Click(object sender, EventArgs e)
        {
            //fillContactGrid();

            String entId = Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING].ToString();

            foreach (GridViewRow gVR in GridView1.Rows)
            {
                if (((Label)gVR.Cells[0].FindControl("Label_From_Site")).Text.Equals("Y"))
                {
                    //Refresh the contacts which are taken from the site
                    String contactEntId = ((Label)gVR.Cells[0].FindControl("Label_Hidden")).Text;

                    Dictionary <String, String> whereCls = new Dictionary <string, string>();
                    whereCls.Add(BackEndObjects.Contacts.CONTACT_TABLE_COL_CONTACT_ENTITY_ID, contactEntId);
                    whereCls.Add(BackEndObjects.Contacts.CONTACT_TABLE_COL_ENTITY_ID, entId);

                    MainBusinessEntity mBEObj  = BackEndObjects.MainBusinessEntity.getMainBusinessEntitybyIdwithLessDetailsDB(contactEntId);
                    AddressDetails     addrObj = AddressDetails.getAddressforMainBusinessEntitybyIdDB(mBEObj.getEntityId());
                    Dictionary <String, ProductCategory> mainProdList = MainBusinessEntity.getProductDetailsforMainEntitybyIdDB(contactEntId);

                    String prodList = "";

                    foreach (KeyValuePair <String, ProductCategory> kvp in mainProdList)
                    {
                        prodList += kvp.Value.getCategoryId() + ",";
                    }

                    if (prodList.Length > 0)
                    {
                        prodList = prodList.TrimEnd(',');
                    }

                    Dictionary <String, String> targetVals = new Dictionary <string, string>();
                    targetVals.Add(BackEndObjects.Contacts.CONTACT_TABLE_COL_EMAIL_ID, mBEObj.getEmailId());
                    targetVals.Add(BackEndObjects.Contacts.CONTACT_TABLE_COL_MOB_NO, mBEObj.getPhNo());
                    targetVals.Add(BackEndObjects.Contacts.CONTACT_TABLE_COL_CONTACT_NAME, mBEObj.getEntityName());
                    targetVals.Add(BackEndObjects.Contacts.CONTACT_TABLE_COL_LOCALITY_ID, addrObj.getLocalityId());
                    targetVals.Add(BackEndObjects.Contacts.CONTACT_TABLE_COL_STREET_NAME, addrObj.getAddrLine1());
                    targetVals.Add(BackEndObjects.Contacts.CONTACT_TABLE_COL_PROD_LIST, prodList);

                    BackEndObjects.Contacts.updateContactDetailsDB(targetVals, whereCls, DBConn.Connections.OPERATION_UPDATE);
                }
                fillContactGrid();
            }
            Button_Audit_Contact.Enabled = false;
            Button_Notes_Contact.Enabled = false;

            GridView1.SelectedIndex = -1;
        }
示例#2
0
        protected void LoginButton_Click(object sender, EventArgs e)
        {
            // BackEndObjects.userDetails uDObj = new BackEndObjects.userDetails();

            BackEndObjects.userDetails userObj = BackEndObjects.userDetails.getUserDetailsbyIdDB(UserName.Text);
            //Combine salt and generate the password
            byte[]        plainTextBytes = System.Text.Encoding.UTF8.GetBytes(Password.Text + userObj.getSalt());
            HashAlgorithm hashConverter  = new SHA256Managed();

            byte[] hashedByteStream = hashConverter.ComputeHash(plainTextBytes);
            String encryptedAndConvertedPassword = Convert.ToBase64String(hashedByteStream);


            if (userObj.authenticateUserDB(UserName.Text, encryptedAndConvertedPassword))
            {
                Session[SessionFactory.LOGGED_IN_USER_ID_STRING] = UserName.Text.Trim();
                Session[SessionFactory.LOGGED_IN_USER_THEME]     = userObj.getTheme() == null || userObj.getTheme().Equals("") ? "ThemeBlue" : userObj.getTheme();
                //Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING] = BackEndObjects.userDetails.getUserDetailsbyIdDB(UserName.Text).getMainEntityId();
                Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING] = userObj.getMainEntityId();
                Session[SessionFactory.ACCESSLIST_FOR_USER]            = new ActionLibrary.LoginActions().
                                                                         retrieveAccessList(UserName.Text.Trim(), Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING].ToString());
                Session[SessionFactory.CURRENCY_LIST] = BackEndObjects.Currency.getAllCurrencyDetailsDB();
                Session[SessionFactory.MAIN_BUSINESS_ENTITY_DEFAULT_CURRENCY] = AddressDetails.
                                                                                getAddressforMainBusinessEntitybyIdDB(Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING].ToString()).getBaseCurrencyId();

                ArrayList contactObjList = Contacts.
                                           getAllContactsbyEntityIdDB(Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING].ToString());
                Dictionary <String, String> existingContactDict = new Dictionary <string, string>();
                for (int i = 0; i < contactObjList.Count; i++)
                {
                    String contactName  = ((Contacts)contactObjList[i]).getContactName();
                    String contactEntId = ((Contacts)contactObjList[i]).getContactEntityId();

                    if (!existingContactDict.ContainsKey(contactName))
                    {
                        existingContactDict.Add(contactName, contactEntId);
                    }
                }
                Session[SessionFactory.EXISTING_CONTACT_DICTIONARY] = existingContactDict;

                FormsAuthentication.RedirectFromLoginPage(UserName.Text, RememberMe.Checked);
            }
            else
            {
                FailureText.Visible = true;
            }
        }
        /// <summary>
        /// Complete registration for the business entity
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button1_Click(object sender, EventArgs e)
        {
            String shortRegstr = (Session[SessionFactory.SHORT_REGISTR_COMPLETE] != null ? Session[SessionFactory.SHORT_REGISTR_COMPLETE].ToString() : "");

            bool shortRegstrCompl = ((shortRegstr != null && shortRegstr.Equals("true"))? true : false);

            ActionLibrary.RegistrationActions regstr = new ActionLibrary.RegistrationActions();


            BackEndObjects.MainBusinessEntity mBE = new MainBusinessEntity();
            mBE.setEntityName(TextBox5.Text);
            mBE.setEmailId(TextBox4.Text);
            mBE.setWebSite(TextBox7.Text);
            mBE.setIndChain(DropDownList1.SelectedValue.Trim());
            mBE.setOwnerName(TextBox6.Text);
            mBE.setDesc(DropDownListDescr.SelectedValue);
            mBE.setPhNo(TextBox10.Text);

            String mBEId = "";

            BackEndObjects.Id IdGen = new BackEndObjects.Id();

            if (!shortRegstrCompl)
            {
                mBEId = IdGen.getNewId(Id.ID_TYPE_CMP_USR_STRING);
            }
            else
            {
                mBEId = (Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING] != null ? Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING].ToString() : "");
            }

            mBE.setEntityId(mBEId);


            int[] prodServ = ListBoxProdServc.GetSelectedIndices();
            Dictionary <String, ProductCategory> prdDict = new Dictionary <string, BackEndObjects.ProductCategory>();

            Dictionary <String, ProductCategory> prodCatMBE = MainBusinessEntity.getProductDetailsforMainEntitybyIdDB(mBE.getEntityId());

            for (int i = 0; i < prodServ.Length; i++)
            {
                ProductCategory ePd = new ProductCategory();

                //Add products/service which are not already added for the Main business entity - this is to avoid error situation
                //when the user by mistake clicks twice in the submit button in the registration page
                if (!prodCatMBE.ContainsKey(ListBoxProdServc.Items[prodServ[i]].Value))
                {
                    ePd.setCategoryId(ListBoxProdServc.Items[prodServ[i]].Value);
                    ePd.setProductCategoryName(ListBoxProdServc.Items[prodServ[i]].Text);
                    prdDict.Add(ePd.getCategoryId(), ePd);
                }
            }
            mBE.setMainProductServices(prdDict);

            userDetails uD = new userDetails();
            Boolean     userIdAlreadyExistis = false;

            if (!shortRegstrCompl)
            {
                userDetails udTest = BackEndObjects.userDetails.getUserDetailsbyIdDB(TextBox1.Text);
                if (udTest.getUserId() == null || udTest.getUserId().Equals("")) //New user id
                {
                    uD.setMainEntityId(mBEId);

                    Random ranGen         = new Random();
                    int    saltInt        = ranGen.Next(1, 16);
                    byte[] plainTextBytes = System.Text.Encoding.UTF8.GetBytes((TextBox2.Text.Equals("") ? TextBox2.Attributes["password"] : TextBox2.Text)
                                                                               + saltInt);
                    HashAlgorithm hashConverter    = new SHA256Managed();
                    byte[]        hashedByteStream = hashConverter.ComputeHash(plainTextBytes);
                    String        encryptedAndConvertedPassword = Convert.ToBase64String(hashedByteStream);

                    uD.setPassword(encryptedAndConvertedPassword);
                    uD.setUserId(TextBox1.Text);
                    uD.setMainEntityId(mBE.getEntityId());
                    uD.setSalt(saltInt.ToString());
                    uD.setPrivilege(BackEndObjects.EntityAccessListRecord.ENTITY_ACCESS_LIST_RECORD_ACCESS_OWNER_ACCESS);
                }
                else
                {
                    Label_UserId_Exists.Visible = true;
                    Label_UserId_Exists.Text    = "User Id not available.. please enter a different one";
                    userIdAlreadyExistis        = true;
                }
            }

            AddressDetails aD = new AddressDetails();

            AddressDetails aDTest = AddressDetails.getAddressforMainBusinessEntitybyIdDB(mBE.getEntityId());

            //If Address detais for this main business entity is not already set up - this is to handle error situation.
            //when the user by mistake clicks twice in the submit button in the registration page
            //Because as of now, the backend only accepts one address detail for the main business entity
            if (aDTest.getLocalityId() == null || aDTest.getLocalityId().Equals(""))
            {
                aD.setAddrLine1(TextBox8.Text);
                aD.setLocalityId(DropDownList5.SelectedValue);
                aD.setBaseCurrencyId(DropDownListBaseCurr.SelectedValue);
                aD.setMainBusinessId(mBEId);
                aD.setSubEntityId(AddressDetails.DUMMY_CHAIN_ID);
            }
            //FileUpload fU = FileUpload1;
            //Removing the option of image upload in registration page
            BackEndObjects.Image imgObj = new BackEndObjects.Image();

            /*if (fU != null && fU.HasFile)
             * {
             *  imgObj.setImgId(IdGen.getNewId(Id.ID_TYPE_IMAGE_ID_STRING));
             *  imgObj.setEntityId(mBE.getEntityId());
             *  imgObj.setFileStream(fU);
             *  imgObj.setImgPath();
             * }*/

            Session[SessionFactory.MAIN_BUSINESS_ENTITY_ID_STRING] = mBEId;
            ArrayList regstObjs = new ArrayList();

            if (mBE.getEntityId() != null && !mBE.getEntityId().Equals(""))
            {
                regstObjs.Add(mBE);
            }
            if (uD.getUserId() != null && !uD.getUserId().Equals(""))
            {
                regstObjs.Add(uD);
            }
            if (aD.getLocalityId() != null && !aD.getLocalityId().Equals(""))
            {
                regstObjs.Add(aD);
            }
            if (imgObj.getImgId() != null && !imgObj.getImgId().Equals(""))
            {
                regstObjs.Add(imgObj);
            }

            try
            {
                if (!userIdAlreadyExistis)
                {
                    regstr.completeRegr(regstObjs);
                    Label_Status.Visible             = true;
                    Label_Status.ForeColor           = System.Drawing.Color.Green;
                    Label_Status.Text                = "Data inserted successfully";
                    Button_Register_Business.Enabled = false;
                    Button_Register_Short.Enabled    = false;
                }
            }
            catch (Exception ex)
            {
                Label_Status.Visible   = true;
                Label_Status.ForeColor = System.Drawing.Color.Red;
                Label_Status.Text      = "Error entering details";
            }
            HyperLink1.Visible = true;
        }