protected void Page_Load(object sender, EventArgs e)
        {
            IncludePage(SelectProductInc, Resources.Resource.incSelectProduct);
            IncludePage(RhosMovementInc, Resources.Resource.incRhosMovement2);

            long userId = Util.UserId;

            divSignUp.Visible = (Session["userid"] == null);

            if (!IsPostBack)
            {
                using (Database db = new MySqlDatabase())
                {
                    ClientInfo ci = null;
                    if (userId > -1)
                        ci = db.GetClientInfo(userId);

                    string currency = "EUR";
                    string countryIso2	= "NL";
                    string currencyFmt = "{0} {1:N2}";
                    if (ci != null)
                    {
                        countryIso2 = Util.GetCountryIso2(ci.Country);
                        currency = Util.GetCurrencyIsoNameByCountryIso2("NL");
                        currencyFmt = Util.GetCurrencyFormatByCountryIso2("NL");
                    }

                    string culture = "en-US";
                    if (Session["culture"] != null)
                        culture = Session["culture"] as string;
                    if (culture.Length == 2)
                    {
                        switch (culture)
                        {
                        case "nl":
                            culture += "-NL";
                            break;
                        case "en":
                            culture += "US";
                            break;
                        case "NL":
                            culture = "nl-" + culture;
                            break;
                        case "US":
                            culture = "en" + culture;
                            break;
                        }
                    }
                    ProductInfoList pil = db.GetProducts();
                    int i = 0;
                    foreach (ProductInfo prod in pil)
                    {
                        ProductPriceInfoList ppil = db.GetProductPrices(prod.ProductId, culture);
                        TableRow row = new TableRow();
                        row.VerticalAlign = VerticalAlign.Top;

                        TableCell cell = new TableCell();
                        if (i < 4)
                        {
                            Image img = new Image();
                            img.ImageUrl = string.Format(Resources.Resource.imgVaultFmt, _desc[i]);
                            cell.Controls.Add(img);
                            ++i;
                        }
                        else
                        {
                            cell.Text = "&nbsp;";
                        }
                        row.Cells.Add(cell);

                        string desc = db.GetProductTitle(prod.ProductId, culture);
                        cell = new TableCell();
                        Literal lit = new Literal();
                        lit.Text = "<div style=\"margin-left:8px;margin-right:8px;\">" + desc + "</div>";
                        cell.Controls.Add(lit);
                        row.Cells.Add(cell);

                        cell = new TableCell();
                        cell.Width = Unit.Pixel(50);
                        cell.Font.Bold = true;
                        cell.HorizontalAlign = HorizontalAlign.Center;
                        if (ppil[0].Price > 0m)
                        {
                            cell.Text = string.Format(
                                currencyFmt,
                                Util.GetCurrencySymbolByCountryIso2("NL"),
                                ppil[0].Price);
                        }
                        else
                        {
                            cell.Text = Resources.Resource.Quotation;
                        }
                        row.Cells.Add(cell);

                        cell = new TableCell();
                        HyperLink hl = new HyperLink();
                        hl.CssClass = "linkBuy";
                        if (string.IsNullOrEmpty(countryIso2))
                            countryIso2 = "NL";
                        if (ppil[0].Price > 0m)
                        {
                            // Normal products, just process them
                            hl.NavigateUrl = string.Format(Session["userid"] != null ?
                                "~/Member/BuyProduct.aspx?pid={0}&country={1}&price={2}" :
                                "~/Account/Login.aspx?pid={0}&country={1}&price={2}",
                                prod.ProductId, countryIso2, ppil[0].Price);
                            hl.ImageUrl = Resources.Resource.imgBuyCredits;
                        }
                        else
                        {
                            // Special products, check the description field to
                            // find out more about the product
                            switch (prod.Extra.ToLower())
                            {
                            case "subscription":
                                hl.NavigateUrl = string.Format(Session["userid"] != null ?
                                    "~/Member/Subscription.aspx?pid={0}&country={1}&price={2}" :
                                    "~/Account/Login.aspx?pid={0}&country={1}&price={2}&sub=1"
                                    );
                                break;

                            default:
                                hl.NavigateUrl = string.Format(Session["userid"] != null ?
                                    "~/Member/Quotation.aspx?pid={0}&country={1}&price={2}" :
                                    "~/Account/Login.aspx?pid={0}&country={1}&price={2}&sub=0",
                                    prod.ProductId, countryIso2, 0);
                                hl.ImageUrl = Resources.Resource.imgQuotation;
                                break;
                            }
                        }
                        cell.Controls.Add(hl);
                        row.Cells.Add (cell);

                        ProductTable.Rows.Add (row);
                    }
                }
            }
            else
            {
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session != null)
            {
                // Store essential session information temporarily
                string culture = Session["culture"] as string ?? "nl-NL";
                // Restore the essential session information
                Session.Clear();
                Session.RemoveAll();

                Session["culture"] = culture;
            }

            if (!IsPostBack)
            {
                long userId = Util.UserId;
                Session["bodyid"] = "user-home";
                #region Generating product information and binding their price ------- !

                List<Product> listProductInformation = new List<Product>();
                using (Database db = new MySqlDatabase())
                {
                    ClientInfo ci = null;
                    if (userId > -1)
                        ci = db.GetClientInfo(userId);

                    string currency = "EUR";
                    string countryIso2 = "NL";
                    string currencyFmt = "{0} {1:N2}";
                    if (ci != null)
                    {
                        countryIso2 = Util.GetCountryIso2(ci.Country);
                        currency = Util.GetCurrencyIsoNameByCountryIso2("NL");
                        currencyFmt = Util.GetCurrencyFormatByCountryIso2("NL");
                    }

                    string culture = "en-US";
                    if (Session["culture"] != null)
                        culture = Session["culture"] as string;

                    if (culture.Length == 2)
                    {
                        switch (culture)
                        {
                            case "nl":
                                culture += "-NL";
                                break;
                            case "en":
                                culture += "US";
                                break;
                            case "NL":
                                culture = "nl-" + culture;
                                break;
                            case "US":
                                culture = "en" + culture;
                                break;
                        }
                    }

                    ProductInfoList pil = db._GetProducts();
                    string price = string.Empty;
                    string link = string.Empty;
                    int i = 0;
                    foreach (ProductInfo prod in pil)
                    {
                        //Added by Nagesh

                        ProductPriceInfoList ppil = db.GetProductPrices(prod.ProductId, culture);

                        if (ppil[0].Price > 0m)
                        {
                            price = string.Format(
                                currencyFmt,
                                Util.GetCurrencySymbolByCountryIso2("NL"),
                                ppil[0].Price);
                        }
                        else
                        {
                            price = Resources.Resource.Quotation;
                        }

                        if (ppil[0].Price > 0m)
                        {
                            // Normal products, just process them
                            //link = string.Format(Session["userid"] != null ?
                            //    "/Member/BuyProduct.aspx?pid={0}&country={1}&price={2}" :
                            //    "/Account/Login.aspx?pid={0}&country={1}&price={2}",
                            //    prod.ProductId, countryIso2, ppil[0].Price);

                            link = string.Format(Session["userid"] != null ?
                                "/Member/BuyProduct.aspx?pid={0}&country={1}&price={2}" :
                                "/Account/Login.aspx?pid={0}&country={1}&price={2}",
                                prod.ProductId, "NL", ppil[0].Price);

                        }
                        else
                        {
                            // Special products, check the description field to
                            // find out more about the product
                            switch (prod.Extra.ToLower())
                            {
                                case "subscription":
                                    link = string.Format(Session["userid"] != null ?
                                        "/Member/Subscription.aspx?pid={0}&country={1}&price={2}" :
                                        "/Account/Login.aspx?pid={0}&country={1}&price={2}&sub=1"
                                        );
                                    break;

                                default:
                                    link = string.Format(Session["userid"] != null ?
                                        "/Member/Quotation.aspx?pid={0}&country={1}&price={2}" :
                                        "/Account/Login.aspx?pid={0}&country={1}&price={2}&sub=0",
                                        prod.ProductId, countryIso2, 0);

                                    break;
                            }
                        }
                        //End Here
                        string desc = db.GetProduct_Desc_Price(prod.ProductId, culture);

                        Product _product = new Product();
                        _product.ProductPlan = prod.ProductPlan;
                        _product.Credits = Convert.ToString(prod.Credits);
                        _product.ProductDesc = desc.Split('#')[0];
                        _product.ProductPrice = desc.Split('#')[1];
                        _product.ProductId = prod.ProductId;
                        listProductInformation.Add(_product);
                        string planCss = "plans";
                        if (i == 3)
                        {
                            planCss = "plans managed";
                        }
                        ltrProducts.Text = ltrProducts.Text + "<li> <div class='" + planCss + "'><div class='icon-img'><i class='icon-logo'></i></div><h2 class='plan-title'> " + _product.ProductPlan + "<span class='number'>" + _product.Credits + "</span></h2><p class='description'>" + _product.ProductDesc + "</p><div class='row'><div class='small-6 columns'> <h2 class='price'>" + price + "</h2></div> <div class='small-6 columns'><a href=" + link + " class='button'>" + Resources.Resource.BuyNow + "</a></div></div><p class='footnote'> " + _product.ProductPrice + "</p> </div></li>";
                        i++;
                    }
                }

                #endregion

                #region Setting en/nl contents ------- !

                //ProductList.DataSource = listProductInformation;
                //ProductList.DataBind();

                if (Session["culture"] == null)
                {
                    string _culture = "nl-NL";

                    string lang = "en";
                    if (Request.UserLanguages != null)
                        lang = Request.UserLanguages[0] ?? "en";

                    lang = lang.Split(';')[0].Trim();
                    switch (lang)
                    {
                        case "en":
                            _culture = "en-US";
                            break;
                        case "nl":
                            _culture = "nl-NL";
                            break;
                    }

                    Session["culture"] = _culture;
                    Culture = _culture;
                    UICulture = _culture;

                    Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(_culture);
                    Thread.CurrentThread.CurrentUICulture = new CultureInfo(_culture);
                }

                IncludePage(InfoGraphicLiteral, Resources.Resource.InfoGraphicSection);
                IncludePage(UpsLiteral, Resources.Resource.UpsSection);
                IncludePage(AboutLiteral, Resources.Resource.AboutSection);
                IncludePage(IntroLiteral, Resources.Resource.IntroSection);
                IncludePage(FooterLiteral, Resources.Resource.FooterSection);
                IncludePage(FAQLiteral, Resources.Resource.FAQTop10);
                IncludePage(newsLiteral, Resources.Resource.NewsLiteral);

                #endregion
                FormsAuthentication.SignOut();
            }

            //------- Highlight the selected lang button ------- !

            if (Convert.ToString(Session["culture"]).Contains("nl"))
            {
                ClientScript.RegisterStartupScript(this.GetType(), "HighLightLangBtn", "HighLightLangBtn('" + "LanguageNL" + "');", true);
                ClientScript.RegisterStartupScript(this.GetType(), "UnHighLightLangBtn", "UnHighLightLangBtn('" + "LanguageUS" + "');", true);
                ClientScript.RegisterStartupScript(this.GetType(), "HighLightLangBtn", "HighLightLangBtn('" + "btnNLSmall" + "');", true);
                ClientScript.RegisterStartupScript(this.GetType(), "UnHighLightLangBtn", "UnHighLightLangBtn('" + "btnENSmall" + "');", true);
            }
            else
            {
                ClientScript.RegisterStartupScript(this.GetType(), "HighLightLangBtn", "HighLightLangBtn('" + "LanguageUS" + "');", true);
                ClientScript.RegisterStartupScript(this.GetType(), "UnHighLightLangBtn", "UnHighLightLangBtn('" + "LanguageNL" + "');", true);
                ClientScript.RegisterStartupScript(this.GetType(), "HighLightLangBtn", "HighLightLangBtn('" + "btnENSmall" + "');", true);
                ClientScript.RegisterStartupScript(this.GetType(), "UnHighLightLangBtn", "UnHighLightLangBtn('" + "btnNLSmall" + "');", true);
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            Logger logger = Logger.Instance;

            IncludePage(BuyProductInc, Resources.Resource.incBuyProduct);
            IncludePage(RhosMovementInc, Resources.Resource.incRhosMovement2);

            string activeModule = string.Empty;

            using (Database db = new MySqlDatabase())
            {
                UserInfo ui = db.GetUser(Util.UserId);
                ClientInfo ci = db.GetClientInfo(Util.UserId);

                DataSet ds = db.GetRegister(Util.UserId);
                int protectedTracks = ds.Tables[0].Rows.Count;

                LoggedOnTitle.Text = Resources.Resource.LoggedOnTitle;
                LoggedOnUserName.Text = string.Format("<span><b>{0}</b></span>", ci.FirstName);// ci.GetFullName());
                CreditsLiteral.Text = Util.GetUserCredits(Util.UserId).ToString();
                ProtectedLiteral.Text = protectedTracks.ToString();
                string userDocPath = db.GetUserDocumentPath(ui.UserId, Session["access"] as string);
                decimal percentComplete = DetermineCompletion(userDocPath, ui, ci);
                CompletedLiteral.Text = string.Empty;
                if (percentComplete < 100)
                    CompletedLiteral.Text = string.Format(Resources.Resource.PercentComplete, percentComplete / 100m);
                divAccPerCompleted.Visible = ClickToLinkLiteral.Visible = (CompletedLiteral.Text != string.Empty);
            }

            if (!IsPostBack)
            {
                long prodid = -1;
                long transid = -1;
                ParamsDictionary parms = new ParamsDictionary();
                string desc = "???";
                if (Request.Params["pid"] != null /* && Request.Params["tid"] == null */)
                {
                    prodid = Convert.ToInt64(Request.Params["pid"]);
                    if (prodid > -1)
                    {
                        using (Database db = new MySqlDatabase())
                        {
                            ProductInfo pi = db.GetProductById(prodid);
                            ProductPriceInfoList ppil = db.GetProductPrices(prodid);
                            decimal price = 0m;
                            foreach (ProductPriceInfo ppi in ppil)
                            {
                                if (ppi.IsoCurrency == "EUR")
                                {
                                    price = ppi.Price;
                                    break;
                                }
                            }

                            desc = pi.Name;
                            parms.Add("{%product%}", desc);
                            parms.Add("{%credits%}", pi.Credits.ToString());
                            parms.Add("{%price%}", string.Format("{0:C}", price));
                        }

                        string _priceInEuro = parms["{%price%}"];

                        if (_priceInEuro.Contains("$"))
                        {
                            parms.Remove("{%price%}");
                            _priceInEuro = _priceInEuro.Replace("$", "€").Replace(".", ",");
                            parms.Add("{%price%}", _priceInEuro);
                        }
                    }
                }

                if (Request.Params["tid"] != null /* && Request.Params["pid"] != null */)
                {
                    transid = Convert.ToInt64(Request.Params["tid"]);
                    if (transid > -1)
                    {
                        using (Database db = new MySqlDatabase())
                        {
                            Transaction transaction = db.GetQuotation(transid);
                            string statuscode = transaction.StatusCode;
                            string[] parts = statuscode.Split('(', ':', ')');
                            int credits = 0;
                            if (parts.Length >= 3)
                                credits = Convert.ToInt32(parts[2]);
                            desc = string.Format(Resources.Resource.BulkPurchase, credits, transaction.Amount);
                            parms.Add("{%product%}", desc);
                            parms.Add("{%credits%}", credits.ToString());
                        }
                    }
                }

                IncludePage(ProductInc, Resources.Resource.incBuyProductText, parms);

                //ProductLiteral.Text = string.Format(Resources.Resource.Purchase1, desc);
            }

            if (Convert.ToString(Session["culture"]).Contains("nl"))
            {
                ClientScript.RegisterStartupScript(this.GetType(), "HighLightLangBtn", "HighLightLangBtn('" + "ctl00_HeadLoginView_LanguageNL" + "');", true);
                ClientScript.RegisterStartupScript(this.GetType(), "UnHighLightLangBtn", "UnHighLightLangBtn('" + "ctl00_HeadLoginView_LanguageUS" + "');", true);
            }
            else
            {
                ClientScript.RegisterStartupScript(this.GetType(), "HighLightLangBtn", "HighLightLangBtn('" + "ctl00_HeadLoginView_LanguageUS" + "');", true);
                ClientScript.RegisterStartupScript(this.GetType(), "UnHighLightLangBtn", "UnHighLightLangBtn('" + "ctl00_HeadLoginView_LanguageNL" + "');", true);
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string culture = "nl-NL";
            if (Session["culture"] != null)
                culture = Session["culture"] as string;

            IncludePage(ShowProductInc, Resources.Resource.incShowProduct);
            IncludePage(RhosMovementInc, Resources.Resource.incRhosMovement2);

            using (Database db = new MySqlDatabase())
            {
                UserInfo ui = db.GetUser(Util.UserId);
                ClientInfo ci = db.GetClientInfo(Util.UserId);

                DataSet ds = db.GetRegister(Util.UserId);
                int protectedTracks = ds.Tables[0].Rows.Count;

                LoggedOnTitle.Text = Resources.Resource.LoggedOnTitle;
                LoggedOnUserName.Text = string.Format("<span><b>{0}</b></span>", ci.FirstName); // ci.GetFullName());
                CreditsLiteral.Text = string.Format(Resources.Resource.spnCredits, Util.GetUserCredits(Util.UserId));
                ProtectedLiteral.Text = string.Format(Resources.Resource.spnProtected, protectedTracks);
                decimal percentComplete = 0m;
                if (Session["percentComplete"] != null)
                    percentComplete = Convert.ToDecimal(Session["percentComplete"]);
                CompletedLiteral.Text = string.Empty;
                if (percentComplete < 100)
                    CompletedLiteral.Text = string.Format(Resources.Resource.PercentComplete, percentComplete / 100m);
                ClickToLinkLiteral.Visible = (CompletedLiteral.Text != string.Empty);
            }

            long userid = Util.UserId;

            if (!IsPostBack)
            {
                DescriptionLiteral.Text = string.Empty;
                int pid = 0;
                if (Request.Params["pid"] != null)
                {
                    string tmp = Request.Params["pid"];
                    if (!string.IsNullOrEmpty(tmp))
                    {
                        int iTmp;
                        if (int.TryParse(tmp, out iTmp))
                            pid = iTmp;
                    }
                }
                if (pid <= 0)
                {
                    DescriptionLiteral.Text = Resources.Resource.NoProductDescription;
                }
                else
                {
                    string[] _desc = new string[] { "starter", "medium", "pro", "bulk" };

                    DescriptionImage.ImageUrl = string.Format(Resources.Resource.imgVaultFmt, _desc[pid - 1]);
                    using (Database db = new MySqlDatabase())
                    {
                        ProductInfoList pil = db.GetProducts();
                        foreach (ProductInfo pi in pil)
                        {
                            if (pi.ProductId == pid)
                            {
                                BuyProductButton.Visible = true;
                                BuyProductButton.CommandName = pid.ToString();
                                /*
                                if (User.Identity.IsAuthenticated)
                                    BuyProductButton.Visible = true;
                                */

                                StringBuilder pricingInfo = new StringBuilder();
                                string iso2Country = "NL";
                                string isoCurrency = "EUR";
                                if (userid > -1)
                                {
                                    ClientInfo ci = db.GetClientInfo(userid);
                                    if (ci != null)
                                    {
                                        iso2Country = Util.GetCountryIso2(ci.Country);
                                        isoCurrency = Util.GetCurrencyIsoNameByCountryIso2(iso2Country);
                                    }
                                }
                                ProductPriceInfoList ppil = db.GetProductPrices(pi.ProductId, culture);
                                if (ppil.Count > 0)
                                {
                                    pricingInfo.Append("<table cellpadding='4'>");
                                    foreach (ProductPriceInfo ppi in ppil)
                                    {
                                        if (ppi.Price == 0m)
                                        {
                                            pricingInfo.AppendFormat(
                                                "<tr><td><span class='priceInfo'>{0}</span></td></tr>", Resources.Resource.RequestQuotation);
                                        }
                                        else
                                        {
                                            string curr = Util.GetCurrencySymbolByCountryIso2("NL");
                                            string currFmt = Util.GetCurrencyFormatByCountryIso2("NL");
                                            pricingInfo.AppendFormat("<tr><td><span class='priceInfo'>{0}</span></td><td><span class='priceInfo'>", Resources.Resource.Price);
                                            pricingInfo.AppendFormat(currFmt, curr, ppi.Price);
                                            pricingInfo.Append("</span></td></tr>");
                                        }
                                    }
                                    pricingInfo.Append("</table>");
                                }

                                TitleLiteral.Text = db.GetProductTitle(pi.ProductId, culture);

                                string desc = db.GetProductDescription(pi.ProductId, culture);
                                if (string.IsNullOrEmpty(desc))
                                    desc = pi.Description;

                                if (string.IsNullOrEmpty(desc))
                                    DescriptionLiteral.Text = "<p><h1>" + pi.Name + "</h1></p>" + pricingInfo.ToString();
                                else
                                    DescriptionLiteral.Text = desc + pricingInfo.ToString();
                            }
                        }
                    }
                }
            }
            else
            {
            }
        }
        protected void SubmitButton_Command(object sender, CommandEventArgs e)
        {
            long prodid = -1;
            if (Request.Params["pid"] != null)
                prodid = Convert.ToInt64(Request.Params["pid"]);

            if (prodid > -1)
            {
                long userid = Util.UserId;

                string desc = string.Empty;
                decimal amount = 0m;
                //bool taxed = false;
                using (Database db = new MySqlDatabase())
                {
                    ProductInfo pi = db.GetProductById(prodid);
                    ProductPriceInfoList ppil = db.GetProductPrices(prodid, Request.Params["country"]);
                    desc = pi.Name;
                    amount = ppil[0].Price;
                    //taxed = true;
                }
                Session["pid"] = prodid;
                Session["amt"] = amount;

                PurchaseProduct(prodid, amount, desc);
            }
        }