Imports System.Globalization
Imports System.Threading

Partial Class PrintIt
    Inherits System.Web.UI.MasterPage
    Protected _selectedLanguage As String = System.Threading.Thread.CurrentThread.CurrentUICulture.Name
    Protected _user As MembershipUser
    Protected _userProfile As ProfileCommon
    Protected _webWS As New WebWS()

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        _user = Membership.GetUser()
        _userProfile = Profile.GetProfile(_user.UserName)
        Dim _storeId As Integer = _userProfile.StoreId

        If _storeId <> Global.Resources.Resource.HeadOfficeId Then
            AdminDiv.Visible = False
        End If

        'label222.Text = ""
        'Dim _allRoles As String() = Roles.GetAllRoles()
        'For x As Integer = 0 To _allRoles.Length - 1
        '    If Roles.IsUserInRole(_user.UserName, _allRoles(x)) Then
        '        label222.Text = "<br/>" & _allRoles(x)
        '    End If
        'Next

        'If Session("PartnerRole") = "printitmanager" Or Session("PartnerRole") = "printitrepresentative" Then
        label222.text = "*"
        If Roles.IsUserInRole(_user.UserName, "PrintItManager") Or Roles.IsUserInRole(_user.UserName, "PrintItRepresentative") Then
            AdminPartnerDiv.Visible = True
            SettingsDiv.Visible = False
            UserProfileDiv.Visible = False
            ReportDiv.Visible = False
            BillingDiv.Visible = False
            AdminDiv.Visible = False
            label222.text = label222.text & "!"
            If Not Roles.IsUserInRole(_user.UserName, "PrintItManager") Then
                div_2.Visible = False
                div_3.Visible = False
                div_4.Visible = False
            End If
        End If
        label222.text = label222.text & "#"

        If Roles.IsUserInRole(_user.UserName, "HeadOffice") Then
            AdminDiv.Visible = True
        End If

        If _selectedLanguage = "en" Then
            PrintItSiteMapPath.SiteMapProvider = "PrintItSiteMapProvider"
            'SpanishButton.Visible = True
            'FrenchButton.Visible = True
            'LoginStatus1.LogoutText = Global.Resources.Menu.LoginStatus1_LogoutText
        ElseIf _selectedLanguage = "es" Then
            PrintItSiteMapPath.SiteMapProvider = "PrintItEsSiteMapProvider"
            'EnglishButton.Visible = True
            'FrenchButton.Visible = True
            'LoginStatus1.LogoutText = Global.Resources.MenuEs.LoginStatus1_LogoutText
        ElseIf _selectedLanguage = "fr" Then
            PrintItSiteMapPath.SiteMapProvider = "PrintItFrSiteMapProvider"
            'EnglishButton.Visible = True
            'SpanishButton.Visible = True
            'LoginStatus1.LogoutText = Global.Resources.MenuFr.LoginStatus1_LogoutText
        End If

        ' Check if CMS available is available
        '
        Dim _res As Integer = _webWS.GetValue("Select Count(*) From PI_DomainName Where StoreId =" & _storeId.ToString())
        If _res > 0 Then
            If _webWS.GetValue("Select IsCmsAvailable From PI_DomainName Where StoreId =" & _storeId.ToString()) Then
                Me.WebPagesDiv.Visible = True
            Else
                Me.WebPagesDiv.Visible = False
            End If
        Else
            Me.WebPagesDiv.Visible = False
        End If


        ' Check if Print Driver Interface is available
        '
        Dim _ds As System.Data.DataSet = _webWS.GetSectionsByStoreId(_storeId, False)
        If _ds.Tables(0).Rows.Count > 0 Then

            For i As Integer = 0 To _ds.Tables(0).Rows.Count - 1
                Dim _controlType As String = _ds.Tables(0).Rows(i).Item("SectionType")
                If _controlType = "ListItem" Or _controlType = "Div" Then
                    Dim _control As HtmlGenericControl
                    _control = Me.Page.Master.FindControl(_ds.Tables(0).Rows(i).Item("SectionName"))
                    _control.Visible = _ds.Tables(0).Rows(i).Item("IsActive")
                Else
                End If
            Next
        End If


        If Page.IsPostBack = False Then
            LanguageDDL.Items.Clear()

            Dim _listItem As System.Web.UI.WebControls.ListItem = New System.Web.UI.WebControls.ListItem
            Dim _curLang As String = _userProfile.Language
            If _curLang = "en" Then
                _listItem.Text = Global.Resources.Resource.SelectLanguageEn
            ElseIf _curLang = "es" Then
                _listItem.Text = Global.Resources.Resource.SelectLanguageEs
            ElseIf _curLang = "fr" Then
                _listItem.Text = Global.Resources.Resource.SelectLanguageFr
            End If
            _listItem.Value = ""

            LanguageDDL.Items.Add(_listItem)

            _listItem = New System.Web.UI.WebControls.ListItem
            _listItem.Text = "English"
            _listItem.Value = "en"
            LanguageDDL.Items.Add(_listItem)

            _listItem = New System.Web.UI.WebControls.ListItem
            _listItem.Text = "Español"
            _listItem.Value = "es"
            LanguageDDL.Items.Add(_listItem)

            _listItem = New System.Web.UI.WebControls.ListItem
            _listItem.Text = "Français"
            _listItem.Value = "fr"
            LanguageDDL.Items.Add(_listItem)
        End If


        'Dim LanguageDataSource As New SqlDataSource
        'LanguageDataSource.ConnectionString = ConfigurationManager.ConnectionStrings("PrintItConnectionString").ConnectionString
        'LanguageDataSource.SelectCommandType = SqlDataSourceCommandType.Text
        'LanguageDataSource.SelectCommand = "SELECT * FROM PI_Languages order by Language"
        'LanguageDDL.DataSource = LanguageDataSource
        'LanguageDDL.DataTextField = "LanguageLongName"
        'LanguageDDL.DataValueField = "Language"
        'LanguageDDL.DataBind()

        'LanguageDDL.Items.FindByValue(_selectedLanguage).Selected = True



        LoginStatus1.LogoutPageUrl = "~/home.aspx"
        If _user.UserName.ToLower().Substring(0, 2) = "kk" Then
            LoginStatus1.LogoutPageUrl = "~/kwikkopy/login.aspx"
        End If

    End Sub

    'Protected Sub SpanishButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles SpanishButton.Click
    '    Session("lang") = "es"
    '    Response.Cookies("lang").Value = "es"
    '    Response.Cookies("lang").Expires = DateTime.Now.AddYears(50)
    '    Response.Redirect(Request.Url.ToString)
    'End Sub

    'Protected Sub EnglishButtonn_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles EnglishButton.Click
    '    Session("lang") = "en"
    '    Response.Cookies("lang").Value = "en"
    '    Response.Cookies("lang").Expires = DateTime.Now.AddYears(50)
    '    Response.Redirect(Request.Url.ToString)
    'End Sub

    'Protected Sub FrenchButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles FrenchButton.Click
    '    Session("lang") = "fr"
    '    Response.Cookies("lang").Value = "fr"
    '    Response.Cookies("lang").Expires = DateTime.Now.AddYears(50)
    '    Response.Redirect(Request.Url.ToString)
    'End Sub

    Protected Sub LanguageDDL_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles LanguageDDL.SelectedIndexChanged
        '_userProfile.Language = LanguageDDL.SelectedValue
        '_userProfile.Save()
        'Session("lang") = LanguageDDL.SelectedValue
        'Response.Cookies("lang").Value = LanguageDDL.SelectedValue
        'Response.Cookies("lang").Expires = DateTime.Now.AddYears(50)
        'Response.Redirect(Request.Url.ToString)

        'LanguageDDL.Items.FindByValue(Response.Cookies("lang").Value).Selected = True

        'LanguageDDL.Items.FindByValue(_userProfile.Language).Selected = True
        ' 
        _user = Membership.GetUser()
        _userProfile = Profile.GetProfile(_user.UserName)

        Dim cookiename As String = "lang"
        Dim cookie As HttpCookie = New HttpCookie(cookiename)
        Response.Cookies.Clear()
        Response.Cookies.Add(cookie)
        cookie.Value = LanguageDDL.SelectedValue
        Dim dtExpiry As DateTime = DateTime.Now.AddDays(50)
        Response.Cookies(cookiename).Expires = dtExpiry
        _userProfile.Language = LanguageDDL.SelectedValue
        _userProfile.Save()
        Me.Response.Redirect(Request.Url.ToString())

    End Sub
End Class

