private void BindAllServices()
    {
        string modulePath             = this.AppRelativeTemplateSourceDirectory;
        string aspxTemplateFolderPath = ResolveUrl("~/") + "Templates/" + TemplateName;
        string aspxRootPath           = ResolveUrl("~/");

        hst = AppLocalized.getLocale(modulePath);
        string             pageExtension     = SageFrameSettingKeys.PageExtension;
        List <ServiceInfo> lstAllService     = AspxServiceController.GetAllServices(aspxCommonObj);
        StringBuilder      allServiceViewBld = new StringBuilder();

        allServiceViewBld.Append("<div id=\"divBindAllServices\" class=\"cssClassAllService\">");
        if (lstAllService != null && lstAllService.Count > 0)
        {
            foreach (var allserviceInfo in lstAllService)
            {
                string serviceName = allserviceInfo.ServiceName;
                string imagePath   = "Modules/AspxCommerce/AspxCategoryManagement/uploads/" + allserviceInfo.ServiceImagePath;
                if (allserviceInfo.ServiceImagePath == "")
                {
                    imagePath = NoImageService;
                }
                var hrefServices = aspxRedirectPath + "service/" + fixedEncodeURIComponent(serviceName) + pageExtension;
                allServiceViewBld.Append("<li><a href=\"" + hrefServices + "\">");
                allServiceViewBld.Append("<div class=\"cssClassImgWrapper\">");
                allServiceViewBld.Append("<img src=\"" + aspxRootPath +
                                         imagePath.Replace("uploads", "uploads/Medium") +
                                         "\"/>");
                allServiceViewBld.Append("</div><h3>" + serviceName + "</h3></a></li>");
            }
        }
        else
        {
            allServiceViewBld.Append("<span class=\"cssClassNotFound\">" + getLocale("There are no services available!") +
                                     "</span>");
        }
        allServiceViewBld.Append("</div>");
        ltrBindAllServices.Text = allServiceViewBld.ToString();
    }
    public void BindFrontServiceView()
    {
        string modulePath             = this.AppRelativeTemplateSourceDirectory;
        string aspxTemplateFolderPath = ResolveUrl("~/") + "Templates/" + TemplateName;
        string aspxRootPath           = ResolveUrl("~/");

        hst = AppLocalized.getLocale(modulePath);
        string pageExtension = SageFrameSettingKeys.PageExtension;
        List <FrontServiceView> lstService       = AspxServiceController.GetFrontServices(aspxCommonObj, count);
        StringBuilder           frontServiceView = new StringBuilder();

        if (lstService != null && lstService.Count > 0)
        {
            frontServiceView.Append("<div id=\"divFrontService\"><ul>");
            foreach (var serviceView in lstService)
            {
                string serviceDesc    = "";
                int    index          = 0;
                string serviceDetails = "";
                rowTotal = serviceView.RowTotal;
                if (serviceView.ServiceDetail != "" || serviceView.ServiceDetail != "null")
                {
                    serviceDesc = serviceView.ServiceDetail;
                    if (serviceDesc.IndexOf(' ') > 1)
                    {
                        if (serviceDesc.LastIndexOf(' ') > 60)
                        {
                            index          = serviceDesc.Substring(0, 60).LastIndexOf(' ');
                            serviceDetails = serviceDesc.Substring(0, index);
                            serviceDetails = serviceDetails + "...";
                        }
                    }
                    else
                    {
                        serviceDetails = serviceDesc;
                    }
                }
                else
                {
                    serviceDetails = "";
                }
                string imagePath = "Modules/AspxCommerce/AspxCategoryManagement/uploads/" + serviceView.ServiceImagePath;
                if (serviceView.ServiceImagePath == "")
                {
                    imagePath = NoImageService;
                }
                var hrefServices = aspxRedirectPath + "service/" + fixedEncodeURIComponent(serviceView.ServiceName) + pageExtension;
                frontServiceView.Append("<li><h3><a href=\"" + hrefServices + "\"><span class=\"cssClassImgWrapper\">" + serviceView.ServiceName);
                frontServiceView.Append("<img title=\"" + serviceView.ServiceName + "\" alt=\"" + serviceView.ServiceName + "\" src=\"" + aspxRootPath + imagePath.Replace("uploads", "uploads/Medium") + "\"/></span></a></h3><p>" + serviceDetails + "</p></li>");
            }
            frontServiceView.Append("</ul></div>");
            if (rowTotal > count)
            {
                frontServiceView.Append("<div id=\"divViewMoreServices\" class=\"cssViewMore\">");
                frontServiceView.Append("<a href=\"" + aspxRootPath + "Services" + pageExtension + "\">" +
                                        getLocale("View More") + "</a>");
                frontServiceView.Append("</div>");
            }
        }
        else
        {
            frontServiceView.Append("<div id=\"divFrontService\"><span class=\"cssClassNotFound\">" +
                                    getLocale("There are no services available!") + "</span></div>");
        }
        ltrForntServiceView.Text = frontServiceView.ToString();
    }
    private void BindServiceItemDetail(int itemID)
    {
        decimal            rate           = 1;
        StoreSettingConfig ssc            = new StoreSettingConfig();
        decimal            additionalCCVR = decimal.Parse(ssc.GetStoreSettingsByKey(StoreSetting.AdditionalCVR, aspxCommonObj.StoreID, aspxCommonObj.PortalID, aspxCommonObj.CultureName));
        string             MainCurrency   = ssc.GetStoreSettingsByKey(StoreSetting.MainCurrency, aspxCommonObj.StoreID, aspxCommonObj.PortalID, aspxCommonObj.CultureName);

        if (HttpContext.Current.Session["CurrencyRate"] != null)
        {
            if (Session["CurrencyCode"].ToString() != MainCurrency)
            {
                decimal rate1 = decimal.Parse(Session["CurrencyRate"].ToString());
                rate = Math.Round(rate1 + (rate1 * additionalCCVR / 100), 4);
            }
            else
            {
                rate = decimal.Parse(Session["CurrencyRate"].ToString());
            }
        }
        string modulePath             = this.AppRelativeTemplateSourceDirectory;
        string aspxTemplateFolderPath = ResolveUrl("~/") + "Templates/" + TemplateName;
        string aspxRootPath           = ResolveUrl("~/");

        hst = AppLocalized.getLocale(modulePath);
        string pageExtension = SageFrameSettingKeys.PageExtension;
        List <ServiceItemDetailsInfo> lstSIDetail = AspxServiceController.GetServiceItemDetails(itemID, aspxCommonObj);
        StringBuilder serviceIDetailBdl           = new StringBuilder();

        serviceIDetailBdl.Append("<div id=\"divServiceItemDetails\" class=\"cssServiceItemDetails\">");
        if (lstSIDetail != null && lstSIDetail.Count > 0)
        {
            foreach (ServiceItemDetailsInfo item in lstSIDetail)
            {
                string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + item.ImagePath;
                if (item.ImagePath == "")
                {
                    imagePath = NoImageServiceItemPath;
                }
                serviceIDetailBdl.Append("<div class=\"cssItemName\"><h2><span>" + item.ItemName + "</span></h2></div>");
                serviceIDetailBdl.Append("<div class=\"cssItemImage\">");
                serviceIDetailBdl.Append("<img alt=\"" + item.ItemName + "\" src=" + aspxRootPath + imagePath.Replace("uploads", "uploads/Small") + "></div>");
                serviceIDetailBdl.Append("<div class=\"cssDesc\">");
                serviceIDetailBdl.Append("<p>" + HttpUtility.HtmlDecode(item.Description) + "</p></div>");

                serviceIDetailBdl.Append("<span class=\"cssClassServiceDuration\" value=\"" +
                                         (item.ServiceDuration) + "\">" + '(' +
                                         (item.ServiceDuration) + ' ' + "minutes" + ')' +
                                         "</span>&nbsp;");
                serviceIDetailBdl.Append("<span class=\"cssClassFormatCurrency\" value=" + (item.Price) + ">" + Math.Round(item.Price * rate, 2) + "</span>");
                serviceIDetailBdl.Append("<div class=\"sfButtonwrapper\">");
                serviceIDetailBdl.Append("<a href=" + aspxRedirectPath + "Book-An-Appointment" + pageExtension + "?cid=" + item.CategoryID + "&pid=" + item.ItemID + ">Book Now</a>");
                serviceIDetailBdl.Append("</div></div>");
            }
        }
        else
        {
            serviceIDetailBdl.Append("<div class=\"cssClassNotFound\">");
            serviceIDetailBdl.Append("<p>There is no service description available</p></div>");
        }
        serviceIDetailBdl.Append("</div>");
        ltrServiceItemDetail.Text = serviceIDetailBdl.ToString();
    }
    private void BindServiceDetails()
    {
        decimal            rate           = 1;
        StoreSettingConfig ssc            = new StoreSettingConfig();
        decimal            additionalCCVR =
            decimal.Parse(ssc.GetStoreSettingsByKey(StoreSetting.AdditionalCVR, aspxCommonObj.StoreID,
                                                    aspxCommonObj.PortalID, aspxCommonObj.CultureName));
        string MainCurrency = ssc.GetStoreSettingsByKey(StoreSetting.MainCurrency, aspxCommonObj.StoreID,
                                                        aspxCommonObj.PortalID, aspxCommonObj.CultureName);

        if (HttpContext.Current.Session["CurrencyRate"] != null)
        {
            if (Session["CurrencyCode"].ToString() != MainCurrency)
            {
                decimal rate1 = decimal.Parse(Session["CurrencyRate"].ToString());
                rate = Math.Round(rate1 + (rate1 * additionalCCVR / 100), 4);
            }
            else
            {
                rate = decimal.Parse(Session["CurrencyRate"].ToString());
            }
        }
        string modulePath             = this.AppRelativeTemplateSourceDirectory;
        string aspxTemplateFolderPath = ResolveUrl("~/") + "Templates/" + TemplateName;
        string aspxRootPath           = ResolveUrl("~/");

        hst = AppLocalized.getLocale(modulePath);
        string pageExtension = SageFrameSettingKeys.PageExtension;

        List <ServiceDetailsInfo> lstServiceDetail = AspxServiceController.GetServiceDetails(Servicekey, aspxCommonObj);
        StringBuilder             serviceDetailBld = new StringBuilder();
        var categoryImage   = "";
        var categoryDetails = "";
        int itemId          = 0;

        if (lstServiceDetail != null && lstServiceDetail.Count > 0)
        {
            itemId        = lstServiceDetail[0].ItemID;
            categoryImage = "Modules/AspxCommerce/AspxCategoryManagement/uploads/" +
                            lstServiceDetail[0].CategoryImagePath;
            categoryDetails = HttpUtility.HtmlDecode(lstServiceDetail[0].CategoryDetails);
            serviceDetailBld.Append("<div id=\"divServiceDetails\" class=\"cssServiceDetail\">");
            serviceDetailBld.Append("<div id=\"divServiceName\" class=\"cssServiceName\">");
            serviceDetailBld.Append("<h2><span>" + lstServiceDetail[0].CagegoryName + "</span></h2>");
            serviceDetailBld.Append("<div class=\"cssImageWrapper\">");
            serviceDetailBld.Append("<img alt=\"" + lstServiceDetail[0].CagegoryName + "\" title=\"" + lstServiceDetail[0].CagegoryName + "\" src=\"" + aspxRootPath + categoryImage.Replace("uploads", "uploads/Large") + "\"/></div>");
            serviceDetailBld.Append("<div class=\"cssServiceDesc\"><p>" + categoryDetails + "</p></div>");
            serviceDetailBld.Append("</div>");
            StringBuilder serviceItemBld = new StringBuilder();
            serviceItemBld.Append("<div class=\"cssServiceItemWrapper\">");
            foreach (var serviceDetailsInfo in lstServiceDetail)
            {
                string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + serviceDetailsInfo.ItemImagePath;
                if (serviceDetailsInfo.ItemImagePath == null)
                {
                    imagePath = "";
                }
                if ((lstServiceDetail.IndexOf(serviceDetailsInfo) + 1) % NoOfItemInRow == 0)
                {
                    serviceItemBld.Append("<div class=\"cssClassItems cssClassNoMargin\">");
                }
                else
                {
                    serviceItemBld.Append("<div class=\"cssClassItems\">");
                }
                serviceItemBld.Append("<h3>");
                serviceItemBld.Append("<a href=\"" + aspxRootPath + "Service-Item-Details" + pageExtension + "?id=" + serviceDetailsInfo.ItemID + "\"><span>" + serviceDetailsInfo.ItemName + "</span></a></h3>");
                //serviceItemBld.Append("<div class=\"cssImageWrapper\"><img src=" + aspxRootPath + imagePath + "/></div>");
                serviceItemBld.Append("<p>" + HttpUtility.HtmlDecode(serviceDetailsInfo.ShortDescription.Trim()) + "</p>");
                serviceItemBld.Append("<span class=\"cssClassServiceDuration\" value=\"" +
                                      (serviceDetailsInfo.ServiceDuration) + "\">" + '(' +
                                      (serviceDetailsInfo.ServiceDuration) + ' ' + getLocale("minutes") + ')' +
                                      "</span>&nbsp;");
                serviceItemBld.Append("<span class=\"cssClassFormatCurrency\" value=\"" + (serviceDetailsInfo.Price) + "\">" + (serviceDetailsInfo.Price * rate) + "</span><div class=\"cssClassClear\"></div>");
                serviceItemBld.Append("<div class=\"sfButtonwrapper\"><a href=\"" + aspxRedirectPath +
                                      "Book-An-Appointment" + pageExtension + "?cid=" + serviceDetailsInfo.CategoryID +
                                      "&amp;pid=" + serviceDetailsInfo.ItemID + "\">" + getLocale("Book Now") +
                                      "</a></div><div class=\"cssClassClear\"></div></div>");
            }
            serviceItemBld.Append("</div>");
            serviceDetailBld.Append(serviceItemBld);
            serviceDetailBld.Append("</div>");
        }
        else
        {
            serviceDetailBld.Append("<div id=\"divServiceDetails\" class=\"cssServiceDetail\">");
            serviceDetailBld.Append("<div id=\"divServiceName\" class=\"cssServiceName\"><h2><span>" + Servicekey + "</span></h2></div>");
            serviceDetailBld.Append("<span class=\"cssClassNotFound\">" +
                                    getLocale("No Service's Products are Available!") + "</span>");
            serviceDetailBld.Append("</div>");
        }
        ltrServiceDetails.Text = serviceDetailBld.ToString();
    }