Files
thinkyu/教育訓練系統/Web/Site2.Master.cs
T
sryang 577060bc78 chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore
- 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
2026-09-10 09:42:37 +08:00

167 lines
7.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Security;
using WebLib;
using System.Diagnostics;
namespace Education
{
public partial class Site2 : System.Web.UI.MasterPage
{
protected void Page_Init(object sender, EventArgs e)
{
//lbSystemName.Text = PublicVariable.CompanyName + PublicVariable.SystemName;
lbSystemName.Text = PublicVariable.SystemName;
lbCopyrightText.Text = PublicVariable.CopyrightText;
Page.Title = lbSystemName.Text;
//switch (DAC.GetString(Session[PublicVariable.CompanyId]))
//{
// case "":
// imgLogo.ImageUrl = "~/picture/Default/logo_both2.png";
// break;
// case "TY":
// imgLogo.ImageUrl = "~/picture/Default/logo_ty.png";
// break;
// case "JY":
// imgLogo.ImageUrl = "~/picture/Default/logo_jy.png";
// break;
//}
// 查詢字串表,替換頁面字串
// 這個動作務必放在 Page_Init 的最後面
StringReplacer.TravelControl(PublicVariable.UserLanguage, this.Controls);
}
protected void Page_Load(object sender, EventArgs e)
{
// 引用 JQuery 及其他需要使用的 JS 檔案
#if DEBUG
Page.ClientScript.RegisterClientScriptInclude("JQuery", ResolveClientUrl($"~/Scripts/jquery-1.12.4.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("JQueryUI", ResolveClientUrl($"~/Scripts/jquery-ui-1.12.1.js?v={PublicVariable.SystemVersion}"));
#else
Page.ClientScript.RegisterClientScriptInclude("JQuery", ResolveClientUrl($"~/Scripts/jquery-1.12.4.min.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("JQueryUI", ResolveClientUrl($"~/Scripts/jquery-ui-1.12.1.min.js?v={PublicVariable.SystemVersion}"));
#endif
Page.ClientScript.RegisterClientScriptInclude("Utility", ResolveClientUrl($"~/Utility/Utility.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("LookupList", ResolveClientUrl($"~/Utility/LookupList.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("dw_cookies", ResolveClientUrl($"~/Utility/dw_cookies.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("ClickMenu", ResolveClientUrl($"~/Utility/ClickMenu.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("DatePicker", ResolveClientUrl($"~/Utility/DatePicker.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("AddressEditor", ResolveClientUrl($"~/Utility/AddressEditor.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("json2", ResolveClientUrl($"~/Utility/json2.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterClientScriptInclude("Phrase", ResolveClientUrl($"~/Utility/phrase.js?v={PublicVariable.SystemVersion}"));
Page.ClientScript.RegisterStartupScript(Page.GetType(), "publicVars",
String.Format("var datePickerPage=\"{0}\";\r\n"
+ "var checkinPage=\"{1}\";\r\n"
+ "var menuClientId=\"{2}\"\r\n"
+ "var UserLangId = \"{3}\";\r\n"
+ "var msgConfirmCancel=\"{4}\";\r\n"
+ "var msgConfirmDelete=\"{5}\";\r\n"
+ "var msgConfirmSave=\"{6}\";\r\n"
+ "var msgMustDate=\"{7}\";\r\n"
+ "var msgMustNumber=\"{8}\";\r\n"
+ "var msgNotEmpty=\"{9}\";\r\n"
+ "var msgNotFound = \"{10}\";\r\n"
+ "var heartBeatUrl = \"{11}\";\r\n",
ResolveClientUrl("~/Utility/DatePicker.aspx"),
ResolveClientUrl("~/Forms/CheckIn/CheckIn.aspx"),
mu學員.ClientID,
PublicVariable.UserLanguage,
StringTable.GetString("是否確定取消?"),
StringTable.GetString("是否確定刪除?"),
StringTable.GetString("是否確定存檔?"),
StringTable.GetString("請輸入日期"),
StringTable.GetString("請輸入數值"),
StringTable.GetString("請輸入"),
StringTable.GetString("找不到相關資料"),
ResolveClientUrl("~/Default.aspx/Heartbeat")),
true);
// ScriptManager.RegisterStartupScript(Page, Page.GetType(), "startCountdown", "startCountdown();", true);
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "startHeartBeat", "startHeartBeat();", true);
ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "APIBase", $@"API_BASE = '{ResolveClientUrl("~/Services")}';", true);
if (DAC.GetString(Session[PublicVariable.UserId]) == "")
{
FormsAuthentication.RedirectToLoginPage();
lbCurrentUser.Text = "(您尚未登入)";
btnLogout.Visible = false;
mu學員.Visible = false;
mu管理員.Visible = false;
mu承辦人.Visible = false;
}
else
{
lbCurrentUser.Text = "歡迎 " + Session[PublicVariable.UserName].ToString();
hidCurrentUser.Value = Session[PublicVariable.UserId].ToString();
hidCurrentUserName.Value = Session[PublicVariable.UserName].ToString();
btnLogout.Visible = true;
// 依照登入者身份顯示不同的功能表
if (Page is FormBase page)
{
mu管理員.Visible = page.IsManager;
mu承辦人.Visible = !mu管理員.Visible && page.IsWorker;
mu學員.Visible = !mu管理員.Visible && !mu承辦人.Visible;
}
else
{
mu學員.Visible = false;
mu管理員.Visible = false;
mu承辦人.Visible = false;
}
}
}
public virtual string FunctionName
{
get
{
return lbFunctionName.Text;
}
set
{
if (value.Length > 0)
{
lbFunctionName.Text = StringTable.GetString(value);
lbFunctionName.Visible = true;
}
else
{
lbFunctionName.Visible = false;
}
}
}
public virtual string HelpUrl
{
get
{
return "";
}
set
{
if (value.Length > 0)
{
btnHelp.Visible = true;
btnHelp.OnClientClick = String.Format("javascript:window.open(\"{0}\", \"_blank\"); return false;", ResolveClientUrl(value));
}
}
}
protected void btnLogout_Click(object sender, EventArgs e)
{
//Session.Remove(PublicVariable.UserId);
//Session.Remove(PublicVariable.UserName);
Session.Clear();
FormsAuthentication.SignOut();
FormsAuthentication.RedirectToLoginPage();
}
}
}