Exemple #1
0
 protected void init()
 {
     WeiSha.Common.License lic = WeiSha.Common.License.Value;
     //是否获得授权
     if (lic.IsLicense)
     {
         plYesLic.Visible = true;
         plNoLic.Visible  = false;
         //当前版本
         lbVersion.Text = lic.VersionName;
         //授权类型,授权主体,起始时间
         lbLicType.Text = lic.Type.ToString();
         if ((int)lic.Type == 1 || (int)lic.Type == 2)
         {
             lbLicInfo.Text = lic.Serial;
         }
         else
         {
             lbLicInfo.Text = lic.Serial + ":" + lic.Port;
         }
         lbStartTime.Text = lic.StartTime.ToString("yyyy-MM-dd");
         lbEndTime.Text   = lic.EndTime.ToString("yyyy-MM-dd");
     }
     else
     {
         //没有获得授权
         plYesLic.Visible = false;
         plNoLic.Visible  = true;
         rblActivType_SelectedIndexChanged(null, null);
     }
     //当前版本的限制
     rptLimit.DataSource = lic.LimitItems;
     rptLimit.DataBind();
 }
Exemple #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //默认打开方式
            if (Request.ServerVariables["REQUEST_METHOD"] == "GET")
            {
                /*基本信息*/

                //授权信息
                WeiSha.Common.License lic = WeiSha.Common.License.Value;
                //限制的主域授权类型
                foreach (string d in lic.LimitDomain)
                {
                    lbRootLimit.Text += "." + d + "、";
                }
                if (lbRootLimit.Text.EndsWith("、"))
                {
                    lbRootLimit.Text = lbRootLimit.Text.Substring(0, lbRootLimit.Text.Length - 1);
                }
                //
                DateTime initTime = lic.InitDate;
                lbVersion.Text = lic.VersionName;                                                                //当前版本
                ltVersion.Text = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); //内部版本号
                //系统初始时间
                lbInitDate.Text = lic.InitDate.ToString("yyyy年MM月dd日 HH:mm:ss");
                //已经运行了多少时间
                TimeSpan runTime = DateTime.Now - lic.InitDate;
                lbRunTime.Text = Math.Floor(runTime.TotalDays) + "天" + runTime.Hours + "小时";
                //当前版本的限制
                rptLimit.DataSource = lic.LimitItems;
                rptLimit.DataBind();
                //各版本之间的差别数据
                BindVersionLevel();

                //是否获得授权
                licInfo.Visible = lic.VersionLevel > 0;
                if (lic.VersionLevel > 0)
                {
                    //授权类型,授权主体,起始时间
                    ltLicType.Text = lic.Type.ToString();
                    if ((int)lic.Type == 1 || (int)lic.Type == 2)
                    {
                        ltLicTarget.Text = lic.Serial;
                    }
                    else
                    {
                        ltLicTarget.Text = lic.Serial + ":" + lic.Port;
                    }
                    ltStartTime.Text = lic.StartTime.ToString("yyyy-MM-dd");
                    ltEndTime.Text   = lic.EndTime.ToString("yyyy-MM-dd");
                    //在激活类型上显示当前类型
                    ListItem litype = rblActivType.Items.FindByValue(((int)lic.Type).ToString());
                    if (litype != null)
                    {
                        rblActivType.SelectedIndex = -1;
                        litype.Selected            = true;
                    }
                }
                //假如授权信息不为空,例如授权过期了,虽然显示为免费版,但仍然会有授权信息。
                if (!string.IsNullOrWhiteSpace(lic.FullText))
                {
                    //完整的授权信息
                    ltLicInfo.Text       = lic.FullText.Replace("\n", "<br/>");
                    plLicInfoBox.Visible = true;
                    //如果授权时间过期了,这里醒目提示
                    if (lic.EndTime < DateTime.Now)
                    {
                        ltLicInfo.Text = new Regex(@"结束时间:\d{4}年\d{1,2}月\d{1,2}日")
                                         .Replace(ltLicInfo.Text, "结束时间:<span style=\"color:red;\">" + lic.EndTime.ToString("yyyy年MM月dd日") + "</span>");
                    }
                    UTF8Encoding utf8          = new UTF8Encoding();
                    Byte[]       encodedBytes  = utf8.GetBytes(ltLicInfo.Text);
                    String       decodedString = utf8.GetString(encodedBytes);
                    ltLicInfo.Text = decodedString;
                }
                //生成激活码
                int type = Convert.ToInt32(rblActivType.SelectedValue);
                lbActivCode.Text = getActiveCode(type);     //初始激活码的问题
            }
            //此页面的ajax提交,全部采用了POST方式
            if (Request.ServerVariables["REQUEST_METHOD"] == "POST")
            {
                string action = WeiSha.Common.Request.Form["action"].String;
                switch (action)
                {
                case "code":
                    int    type = WeiSha.Common.Request.Form["type"].Int16 ?? 4;
                    string code = getActiveCode(type);
                    Response.Write(code);
                    break;

                case "refresh":
                    WeiSha.Common.License.Value.Init();
                    break;
                }
                Response.End();
            }
        }