Esempio n. 1
0
        protected override void OnLoad(EventArgs e)
        {
            if (this.Active)
            {
                if (CheckMenuRight)
                {
                    if (!CheckMenuRightsByName(this.Page.AppRelativeVirtualPath))
                    {
                        String messageKey = "Web/AccessDenied/accessdenied";
                        var provider = new JQMessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo, EFClientTools.ClientUtility.ClientInfo.Locale);
                        //EFBase.MessageProvider provider = new EFBase.MessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo.Locale);
                        String msg = provider[messageKey];
                        String strRenderScript = String.Format("alert('{0}');", msg);
                        strRenderScript += String.Format("location.href='{0}/LogOn.aspx';", Page.Request.ApplicationPath);
                        this.Page.ClientScript.RegisterStartupScript(this.GetType(), Guid.NewGuid().ToString(), strRenderScript, true);
                        System.Web.HttpContext.Current.Session.Abandon();

                        //Page.Response.Redirect(string.Format("", ));
                    }
                }
                if (!string.IsNullOrEmpty(EFClientTools.ClientUtility.ClientInfo.UserID))
                {
                    SetControl(this.Parent);
                    RenderJS();
                }
            }
        }
Esempio n. 2
0
        private static string GetToolItemText(string text)
        {
            if (System.Web.HttpContext.Current != null)
            {
                //EFBase.MessageProvider provider = new EFBase.MessageProvider(System.Web.HttpContext.Current.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo.Locale);
                var provider = new JQMessageProvider(System.Web.HttpContext.Current.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo, EFClientTools.ClientUtility.ClientInfo.Locale);
                var itemtexts = provider["JQWebClient/toolitemtext"];
                //provider = new EFBase.MessageProvider(System.Web.HttpContext.Current.Request.PhysicalApplicationPath, string.Empty);
                provider = new JQMessageProvider(System.Web.HttpContext.Current.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo, string.Empty);
                var itemnames = provider["JQWebClient/toolitemtext"];
                if (!string.IsNullOrEmpty(itemtexts) && !string.IsNullOrEmpty(itemnames))
                {
                    var names = itemnames.Split(',').ToList();
                    var texts = itemtexts.Split(',');
                    var index = names.IndexOf(text);
                    if (index >= 0 && index < texts.Length)
                    {
                        return texts[index];
                    }
                }
            }

            return text;
        }
Esempio n. 3
0
        protected override void Render(HtmlTextWriter writer)
        {
            if (!this.DesignMode)
            {
                EFClientTools.ClientUtility.ClientInfo.cErrorCode = 8100;
                CheckProperties();
                writer.AddAttribute(HtmlTextWriterAttribute.Id, this.ID);
                //if (this.Closed)
                //{
                //    writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:none");
                //}
                if (this.DivFramed)
                {
                    writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.Panel);
                    writer.AddAttribute(JQProperty.DataOptions, string.Format("title:'{0}',collapsible:true", DivTitle));
                    var parent = this.Parent;
                    while (parent != null && !(parent is JQDialog))
                    {
                        parent = parent.Parent;
                    }
                    if (parent != null)
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Style, string.Format("width:{0}px", (parent as JQDialog).Width.Value - 60));
                    }

                }
                writer.AddAttribute(JQProperty.InfolightOptions, InfolightOptions);
                writer.RenderBeginTag(HtmlTextWriterTag.Div);

                writer.AddAttribute(HtmlTextWriterAttribute.Style, string.Format("border-spacing:{0}px {1}px;", HorizontalGap, VerticalGap));
                writer.RenderBeginTag(HtmlTextWriterTag.Table);
                if (IsShowFlowIcon && (QueryString["LISTID"] != null ||
                    QueryString["NAVMODE"] != null &&
                    (QueryString["NAVMODE"] == "Insert"
                    || QueryString["NAVMODE"] == "Modify"
                    || QueryString["NAVMODE"] == "Prepare"
                    || QueryString["NAVMODE"] == "Inquery")))
                {
                    var parent = this.Parent;
                    while (parent != null && !(parent is JQDialog))
                    {
                        parent = parent.Parent;
                    }
                    if (parent != null && ((parent as JQDialog).EditMode == EidtModeType.Continue || (parent as JQDialog).EditMode == EidtModeType.Expand))
                    {
                        throw new Exception("無法使用Continue或Expand模式呈送Flow單據");
                    }

                    String messageKey = "FLClientControls/FLNavigator/NavText";
                    //EFBase.MessageProvider provider = new EFBase.MessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo.Locale);
                    var provider = new JQMessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo, EFClientTools.ClientUtility.ClientInfo.Locale);
                    string[] flowTexts = provider[messageKey].Split(';');

                    InitStates();

                    writer.RenderBeginTag(HtmlTextWriterTag.Tr);
                    writer.AddAttribute(HtmlTextWriterAttribute.Colspan, (HorizontalColumnsCount * 2).ToString());
                    writer.AddAttribute(HtmlTextWriterAttribute.Align, "left");
                    writer.RenderBeginTag(HtmlTextWriterTag.Td);
                    if (QueryString["NAVMODE"] != null && (QueryString["NAVMODE"] == "Insert" || QueryString["NAVMODE"] == "Modify") ||
                        QueryString["NAVIGATOR_MODE"] != null && (QueryString["NAVIGATOR_MODE"] == "1" || QueryString["NAVIGATOR_MODE"] == "2"))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowEdit");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, flowTexts[6]);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doFlowEdit('{0}', 'updated');", this.ID));
                        writer.AddAttribute("iconcls", "icon-edit");
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(flowTexts[6]);
                        writer.RenderEndTag();
                    }

                    string navigatorMode = QueryString["NAVIGATOR_MODE"];
                    if (String.IsNullOrEmpty(navigatorMode))
                    {
                        navigatorMode = QueryString["NAVMODE"];
                    }
                    if (IsControlVisible("Submit") && (!IsAutoSubmit || navigatorMode == "Inquery" || this.CurrentFLState == "Continue"))
                    {
                        String sTitle = flowTexts[16];
                        //'<span class="icon-flow-Select" title="Select" style="display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;" />';
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowSubmit");
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:80px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowSubmit");

                        if (this.CurrentFLState == "Continue")
                        {
                            writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doApprove('winApprove', '{0}', '{1}')", this.ID, flowTexts[17]));
                            sTitle = flowTexts[17];
                            writer.AddAttribute("iconcls", "icon-flow-Approve");
                        }
                        else
                        {
                            writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doSubmit('winSubmit', '{0}', '{1}')", this.ID, flowTexts[16]));
                            sTitle = flowTexts[16];
                            writer.AddAttribute("iconcls", "icon-flow-Submit");
                        }
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, sTitle);
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(sTitle);
                        writer.RenderEndTag();
                    }

                    if (IsControlVisible("Approve") && (string.IsNullOrEmpty(QueryString["PLUSROLES"]) || QueryString["PLUSROLES"].ToLower() == "null"))
                    {
                        string approveText = flowTexts[17];
                        if (this.CurrentFLState == "FSubmit" || this.CurrentFLState == "RSubmit")
                            approveText = flowTexts[16];

                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowApprove");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, approveText);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute("iconcls", "icon-flow-Approve");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowApprove");
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doApprove('winApprove', '{0}', '{1}')", this.ID, approveText));
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(approveText);
                        writer.RenderEndTag();
                    }

                    if (IsControlVisible("Return") && QueryString["FLNAVIGATOR_MODE"] != "0" && (string.IsNullOrEmpty(QueryString["PLUSROLES"]) || QueryString["PLUSROLES"].ToLower() == "null"))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowReturn");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, flowTexts[18]);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute("iconcls", "icon-flow-Return");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowReturn");
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doReturn('winReturn', '{0}', '{1}')", this.ID, flowTexts[18]));
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(flowTexts[18]);
                        writer.RenderEndTag();
                    }

                    if (IsControlVisible("Reject") || ((IsControlVisible("Approve") || IsControlVisible("Submit")) && IsRejectON))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowReject");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, flowTexts[19]);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute("iconcls", "icon-flow-Reject");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowPause");
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doReject('winNotify', '{0}', '{1}')", this.ID, flowTexts[19]));
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(flowTexts[19]);
                        writer.RenderEndTag();
                    }

                    if (IsControlVisible("Plus") && (string.IsNullOrEmpty(QueryString["PLUSROLES"]) || QueryString["PLUSROLES"].ToLower() == "null"))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowPlus");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, flowTexts[22]);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute("iconcls", "icon-flow-Plus");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowPause");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "alert('Plus')");
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doPlusApprove('winPlusApprove', '{0}', '{1}')", this.ID, flowTexts[22]));
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(flowTexts[22]);
                        writer.RenderEndTag();
                    }

                    if (!IsNotifyOFF && IsControlVisible("Notify"))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowNotify");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, flowTexts[20]);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute("iconcls", "icon-flow-Notify");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowNotify");
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doNotify('winNotify', '{0}', '{1}')", this.ID, flowTexts[20]));
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(flowTexts[20]);
                        writer.RenderEndTag();
                    }

                    if (IsControlVisible("FlowDelete"))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowDelete");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, flowTexts[21]);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute("iconcls", "icon-flow-FlowDelete");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowDelete");
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doFlowDelete('winNotify', '{0}', '{1}')", this.ID, flowTexts[21]));
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(flowTexts[21]);
                        writer.RenderEndTag();
                    }

                    if (IsControlVisible("Pause"))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowPause");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, flowTexts[23]);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute("iconcls", "icon-flow-Pause");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowPause");
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doPause('winNotify', '{0}', '{1}')", this.ID, flowTexts[23]));
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(flowTexts[23]);
                        writer.RenderEndTag();
                    }

                    if (IsControlVisible("Comment"))
                    {
                        writer.AddAttribute(HtmlTextWriterAttribute.Id, "FlowComment");
                        writer.AddAttribute(HtmlTextWriterAttribute.Title, flowTexts[24]);
                        writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                        writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton);
                        writer.AddAttribute("iconcls", "icon-flow-Comment");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Style, "display:inline-block;width:26px;height:26px;cursor:pointer;padding:2px;");
                        //writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-FlowComment");
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("doComment('winComment', '{0}', '{1}')", this.ID, flowTexts[24]));
                        //writer.RenderBeginTag(HtmlTextWriterTag.Span);
                        writer.RenderBeginTag(HtmlTextWriterTag.A);
                        writer.Write(flowTexts[24]);
                        writer.RenderEndTag();
                    }

                    writer.RenderEndTag();
                    writer.RenderEndTag();
                }

                if (AlwaysReadOnly && this.TooItems.Count > 0)
                {
                    writer.RenderBeginTag(HtmlTextWriterTag.Tr);
                    writer.AddAttribute(HtmlTextWriterAttribute.Colspan, (HorizontalColumnsCount * 2).ToString());
                    writer.AddAttribute(HtmlTextWriterAttribute.Align, "left");
                    writer.RenderBeginTag(HtmlTextWriterTag.Td);

                    foreach (var toolItem in this.toolitems)
                    {
                        if (toolItem.Visible)
                        {
                            if (toolItem.ID != "")
                            {
                                writer.AddAttribute(HtmlTextWriterAttribute.Id, toolItem.ID);
                            }
                            writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                            writer.AddAttribute(HtmlTextWriterAttribute.Class, toolItem.ItemType);
                            writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("$('#{0}').infoform('callfunction','{1}');", this.ID, toolItem.OnClick));
                            writer.AddAttribute("iconcls", toolItem.Icon);
                            writer.RenderBeginTag(HtmlTextWriterTag.A);
                            writer.Write(toolItem.Text);
                            writer.RenderEndTag();
                        }
                    }
                    writer.RenderEndTag();
                    writer.RenderEndTag();
                }

                var jqDefault = this.Parent.Controls.OfType<JQDefault>().FirstOrDefault(c => c.BindingObjectID == this.ID);
                if (jqDefault == null && this.Parent.Parent != null)
                {
                    jqDefault = this.Parent.Parent.Controls.OfType<JQDefault>().FirstOrDefault(c => c.BindingObjectID == this.ID);
                }
                var jqValidate = this.Parent.Controls.OfType<JQValidate>().FirstOrDefault(c => c.BindingObjectID == this.ID);
                if (jqValidate == null && this.Parent.Parent != null)
                {
                    jqValidate = this.Parent.Parent.Controls.OfType<JQValidate>().FirstOrDefault(c => c.BindingObjectID == this.ID);
                }
                var jqAutoSeq = this.Parent.Controls.OfType<JQAutoSeq>().FirstOrDefault(c => c.BindingObjectID == this.ID);
                if (jqAutoSeq == null && this.Parent.Parent != null)
                {
                    jqAutoSeq = this.Parent.Parent.Controls.OfType<JQAutoSeq>().FirstOrDefault(c => c.BindingObjectID == this.ID);
                }

                for (int i = 0; i < Columns.Count; i++)
                {
                    var column = Columns[i];

                    if (jqDefault != null)
                    {
                        var defaultColumn = jqDefault.Columns.FirstOrDefault(c => c.FieldName == column.FieldName);
                        if (defaultColumn != null)
                        {
                            //column.Default = EFClientTools.ClientUtility.GetSysValue(defaultColumn.Value);
                            column.Default = defaultColumn.Value;
                            column.CarryOn = defaultColumn.CarryOn;
                        }
                    }
                    if (jqValidate != null)
                    {
                        var validateColumn = jqValidate.Columns.FirstOrDefault(c => c.FieldName == column.FieldName);
                        if (validateColumn != null)
                        {
                            column.Validate = validateColumn.Value;
                        }
                    }
                    if (jqAutoSeq != null)
                    {
                        if (jqAutoSeq.FieldName == column.FieldName)
                        {
                            column.AutoSeq = jqAutoSeq.Value;
                        }
                    }
                }

                var visibleColumns = Columns.Where(c => c.Visible).ToList();

                int columnPosition = 0;
                for (int i = 0; i < visibleColumns.Count; i++)
                {
                    var column = visibleColumns[i];
                    //if (i % HorizontalColumnsCount == 0)
                    //{
                    //    writer.RenderBeginTag(HtmlTextWriterTag.Tr);
                    //}
                    if (columnPosition == 0)
                    {
                        writer.RenderBeginTag(HtmlTextWriterTag.Tr);
                    }
                    if (i > 0 && column.NewRow) //属性换行
                    {
                        writer.RenderEndTag();
                        columnPosition = 0;
                        writer.RenderBeginTag(HtmlTextWriterTag.Tr);
                    }
                    //重设span
                    else if (columnPosition + column.Span > HorizontalColumnsCount) //自动换行
                    {
                        writer.RenderEndTag();
                        columnPosition = 0;
                        writer.RenderBeginTag(HtmlTextWriterTag.Tr);
                    }
                    column.Render(writer);
                    columnPosition += column.Span;

                    if (columnPosition >= HorizontalColumnsCount || i == visibleColumns.Count - 1)
                    {
                        writer.RenderEndTag();
                        columnPosition = 0;
                    }
                    //if (i == Columns.Count - 1 || (i + 1) % HorizontalColumnsCount == 0)
                    //{
                    //    writer.RenderEndTag();
                    //}
                }

                var hiddenColumns = Columns.Where(c => !c.Visible);
                if (hiddenColumns.Count() > 0)
                {
                    writer.RenderBeginTag(HtmlTextWriterTag.Tr);
                    foreach (var column in hiddenColumns)
                    {
                        column.Render(writer);
                    }
                    writer.RenderEndTag();
                }

                if (ShowApplyButton)
                {
                    writer.RenderBeginTag(HtmlTextWriterTag.Tr);
                    writer.AddAttribute(HtmlTextWriterAttribute.Colspan, (HorizontalColumnsCount * 2).ToString());
                    writer.AddAttribute(HtmlTextWriterAttribute.Align, "right");
                    writer.RenderBeginTag(HtmlTextWriterTag.Td);
                    writer.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:void(0)");
                    writer.AddAttribute(HtmlTextWriterAttribute.Class, JQControl.LinkButton + " infosysbutton-s");

                    if (this.IsControlVisible("Submit"))
                    {
                        if (this.IsAutoPause)
                        {
                            String messageKey = "FLClientControls/FLNavigator/NavText";
                            //EFBase.MessageProvider provider = new EFBase.MessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo.Locale);
                            var provider = new JQMessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo, EFClientTools.ClientUtility.ClientInfo.Locale);
                            string[] flowTexts = provider[messageKey].Split(';');
                            string onClick = "submitForm('#" + this.ID + "', undefined, function(){ ";
                            if (this.CurrentFLState != "Continue")
                            {
                                onClick += string.Format("doPause('winNotify', '{0}', '{1}',undefined, {2})", this.ID, flowTexts[23], this.IsAutoSubmit.ToString().ToLower());
                            }
                            onClick += "});";
                            writer.AddAttribute(HtmlTextWriterAttribute.Onclick, onClick);
                        }
                        else if (this.IsAutoSubmit)
                        {
                            String messageKey = "FLClientControls/FLNavigator/NavText";
                            //EFBase.MessageProvider provider = new EFBase.MessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo.Locale);
                            var provider = new JQMessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo, EFClientTools.ClientUtility.ClientInfo.Locale);
                            string[] flowTexts = provider[messageKey].Split(';');

                            string approveText = flowTexts[17];
                            if (this.CurrentFLState == "FSubmit" || this.CurrentFLState == "RSubmit")
                                approveText = flowTexts[16];
                            string onClick = "submitForm('#" + this.ID + "', undefined, function(){ ";
                            if (this.CurrentFLState == "Continue")
                            {
                                onClick += string.Format("doApprove('winApprove', '{0}', '{1}');", this.ID, approveText);
                            }
                            else
                            {
                                onClick += string.Format("doSubmit('winSubmit', '{0}', '{1}');", this.ID, flowTexts[16]);
                            }
                            onClick += "});";
                            writer.AddAttribute(HtmlTextWriterAttribute.Onclick, onClick);
                        }
                    }
                    else if (this.IsAutoSubmit)
                    {
                        String messageKey = "FLClientControls/FLNavigator/NavText";
                        //EFBase.MessageProvider provider = new EFBase.MessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo.Locale);
                        var provider = new JQMessageProvider(this.Page.Request.PhysicalApplicationPath, EFClientTools.ClientUtility.ClientInfo, EFClientTools.ClientUtility.ClientInfo.Locale);
                        string[] flowTexts = provider[messageKey].Split(';');

                        string approveText = flowTexts[17];
                        if (this.CurrentFLState == "FSubmit" || this.CurrentFLState == "RSubmit")
                            approveText = flowTexts[16];
                        string onClick = "submitForm('#" + this.ID + "', undefined, function(){ ";
                        if (this.IsControlVisible("Submit"))
                        {
                            if (this.CurrentFLState == "Continue")
                            {
                                onClick += string.Format("doApprove('winApprove', '{0}', '{1}');", this.ID, approveText);
                            }
                            else
                            {
                                onClick += string.Format("doSubmit('winSubmit', '{0}', '{1}');", this.ID, flowTexts[16]);
                            }
                        }
                        if (this.IsControlVisible("Approve"))
                        {
                            onClick += string.Format("doApprove('winApprove', '{0}', '{1}');", this.ID, approveText);
                        }
                        onClick += "});";
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, onClick);
                    }
                    else
                        writer.AddAttribute(HtmlTextWriterAttribute.Onclick, string.Format("applyForm('#{0}')", this.ID));
                    writer.RenderBeginTag(HtmlTextWriterTag.A);
                    writer.Write("Submit");
                    writer.RenderEndTag();
                    writer.RenderEndTag();
                    writer.RenderEndTag();
                }

                writer.RenderEndTag();
                writer.RenderEndTag();
                EFClientTools.ClientUtility.ClientInfo.cErrorCode = 0;
            }
        }