212 lines
8.0 KiB
C#
212 lines
8.0 KiB
C#
using System;
|
||
using System.Collections;
|
||
using System.Collections.Generic;
|
||
using System.Data;
|
||
using System.Data.OleDb;
|
||
using System.Web;
|
||
using System.Web.UI;
|
||
using System.Web.UI.WebControls;
|
||
using System.Configuration;
|
||
|
||
public partial class admin_item_setting : MyWeb.config
|
||
{
|
||
|
||
MyWeb.encrypt encrypt = new MyWeb.encrypt();
|
||
|
||
protected void Page_Load(object sender, EventArgs e)
|
||
{
|
||
if (!IsPostBack) {
|
||
|
||
MyWeb.sql sql = new MyWeb.sql();
|
||
DataTable dt = sql.selectTable(db, p_name, "Select * from company where num=1");
|
||
|
||
if (dt.Rows.Count > 0) {
|
||
com_name.Text = dt.Rows[0]["com_name"].ToString();
|
||
email.Text = dt.Rows[0]["com_mail"].ToString();
|
||
bcc_mail.Text = dt.Rows[0]["bcc_mail"].ToString();
|
||
pic_url.Text = dt.Rows[0]["pic_url"].ToString();
|
||
|
||
smtp_url.Text = dt.Rows[0]["smtp_url"].ToString();
|
||
smtp_port.Text = dt.Rows[0]["smtp_port"].ToString();
|
||
smtp_ssl.Checked = (dt.Rows[0]["smtp_ssl"].ToString() == "Y" ? true : false);
|
||
use_sender.Checked = (dt.Rows[0]["use_sender"].ToString() == "Y" ? true : false);
|
||
smtp_user.Text = dt.Rows[0]["smtp_user"].ToString();
|
||
if (!isStrNull(dt.Rows[0]["smtp_password"]))
|
||
smtp_password.Text = encrypt.DecryptAutoKey(dt.Rows[0]["smtp_password"].ToString());
|
||
smtp_def.SelectedValue = dt.Rows[0]["smtp_def"].ToString();
|
||
|
||
menu.Checked = (bool)dt.Rows[0]["menu"];
|
||
log_class.Checked = (bool)dt.Rows[0]["log_class"];
|
||
if (dt.Rows[0]["log_menu"]!=null){
|
||
string log_menu="," + dt.Rows[0]["log_menu"].ToString();
|
||
for (int i=0; i<shop_kind1.Items.Count;i++){
|
||
string value="," + shop_kind1.Items[i].Value + ",";
|
||
if (log_menu.IndexOf(value,0)>-1){
|
||
shop_kind1.Items[i].Selected=true;
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
|
||
if (ValString(admin.info.group) == "EZ")
|
||
{
|
||
PlaceHolder1.Visible = true;
|
||
PlaceHolder2.Visible = true;
|
||
}
|
||
|
||
}
|
||
smtp_password.Attributes.Add("value", smtp_password.Text);
|
||
}
|
||
|
||
protected void Button1_Click(object sender, EventArgs e)
|
||
{
|
||
mailtest.Text = "";
|
||
L_msg.Text = "";
|
||
|
||
MyWeb.sql sql = new MyWeb.sql();
|
||
OleDbConnection sqlConn = sql.conn(db, p_name);
|
||
try{
|
||
|
||
sqlConn.Open();
|
||
UpdateSetOptions(sqlConn);
|
||
ScriptMsgTop("操作成功!", msgIcon.success);
|
||
//L_msg.Text = "設定資料變更完成!";
|
||
}catch (Exception ex){
|
||
ScriptMsgTop("操作失敗!", msgIcon.error);
|
||
L_msg.Type = alert_type.danger;
|
||
L_msg.Text = ex.Message;
|
||
}finally{
|
||
sqlConn.Close(); sqlConn.Dispose();
|
||
}
|
||
}
|
||
|
||
protected void UpdateSetOptions(OleDbConnection sqlConn)
|
||
{
|
||
string log_menu = "";
|
||
for (int i = 0; i < shop_kind1.Items.Count; i++)
|
||
{
|
||
string value = "," + shop_kind1.Items[i].Value + ",";
|
||
if (shop_kind1.Items[i].Selected)
|
||
{
|
||
shop_kind1.Items[i].Selected = true;
|
||
log_menu = log_menu + shop_kind1.Items[i].Value + ",";
|
||
}
|
||
}
|
||
|
||
MyWeb.sql sql = new MyWeb.sql();
|
||
string cu = "com_name,com_mail,bcc_mail,pic_url,menu,log_class,log_menu,smtp_url,smtp_port,smtp_ssl,use_sender,smtp_user,smtp_password,smtp_def";
|
||
|
||
OleDbCommand sqlCmd = new OleDbCommand("", sqlConn);
|
||
sqlCmd.CommandText = "UPDATE company SET " + sql.mark2(cu) + " WHERE num=1";
|
||
sqlCmd.Parameters.Add(new OleDbParameter("com_name", com_name.Text.Trim()));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("com_mail", email.Text.Trim()));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("bcc_mail", bcc_mail.Text.Trim()));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("pic_url", pic_url.Text.Trim()));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("menu", (menu.Checked ? 1 : 0)));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("log_class", (log_class.Checked ? 1 : 0)));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("log_menu", log_menu));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("smtp_url", smtp_url.Text.Trim()));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("smtp_port", smtp_port.Text.Trim()));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("smtp_ssl", (smtp_ssl.Checked ? "Y" : "N")));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("use_sender", (use_sender.Checked ? "Y" : "N")));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("smtp_user", smtp_user.Text.Trim()));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("smtp_password", !isStrNull(smtp_password.Text.Trim()) ? encrypt.EncryptAutoKey(smtp_password.Text.Trim()) : (object)DBNull.Value));
|
||
sqlCmd.Parameters.Add(new OleDbParameter("smtp_def", smtp_def.SelectedValue));
|
||
sqlCmd.ExecuteNonQuery();
|
||
|
||
HttpContext.Current.Application[scc + "WebInfo"] = null;
|
||
}
|
||
|
||
protected void Button2_Click(object sender, EventArgs e)
|
||
{
|
||
Response.Redirect("~/admin/index2.aspx");
|
||
}
|
||
|
||
protected void sqlrun_Click(object sender, EventArgs e)
|
||
{
|
||
|
||
if (this.sqltxt.Text == null)
|
||
{
|
||
ScriptMsg("請填寫sql指令", "", msgIcon.warning);
|
||
}
|
||
else {
|
||
OleDbCommand cmd;
|
||
OleDbConnection conn = new OleDbConnection(db);
|
||
try{
|
||
conn.Open();
|
||
cmd = new OleDbCommand(sqltxt.Text, conn);
|
||
cmd.ExecuteNonQuery();
|
||
ScriptMsg("執行成功!", "", msgIcon.success);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
ScriptMsg("執行失敗!", "", msgIcon.error);
|
||
}
|
||
finally
|
||
{
|
||
conn.Close();
|
||
conn.Dispose();
|
||
}
|
||
|
||
|
||
}
|
||
|
||
|
||
}
|
||
|
||
#region 寄件測試
|
||
|
||
protected void mailsend_Click(object sender, EventArgs e)
|
||
{
|
||
mailtest.Text = ""; mailtest.ForeColor = System.Drawing.Color.Red;
|
||
MyWeb.sql sql = new MyWeb.sql();
|
||
OleDbConnection sqlConn = sql.conn(db, p_name);
|
||
try
|
||
{
|
||
|
||
sqlConn.Open();
|
||
UpdateSetOptions(sqlConn);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
mailtest.Text = ex.Message;
|
||
}
|
||
finally
|
||
{
|
||
sqlConn.Close();
|
||
sqlConn.Dispose();
|
||
}
|
||
|
||
MyWeb.company company = new MyWeb.company();
|
||
|
||
string mailSubject = company.name + "【信件發送測試】";
|
||
string Detail = "<table width='650' border='1' align='center' cellpadding='0' cellspacing='0' bordercolorlight='#CCCCCC' bordercolordark='#FFFFFF'>";
|
||
Detail += "<tr><td bgcolor='#a9c95a' height='30'><div align='center'><font color='#FFFFFF' size='2'>信件發送測試</font></div></td></tr>";
|
||
Detail += "<tr><td>";
|
||
Detail += "<table width='90%' border='0' align='center' cellpadding='0' cellspacing='0'>";
|
||
Detail += "<tr><td><font color='#333333' size='2'>親愛的管理者您好:<br>如果您收到這封信代表您網站的SMTP設定正確!</font></td></tr>";
|
||
Detail += "<tr><td>此信為系統自動發送,請勿回覆,謝謝!";
|
||
Detail += "</td></tr></table>";
|
||
Detail += "</td></tr></table>";
|
||
|
||
//寄給管理者和BCC
|
||
MyWeb.emailSystem emailSystem = new MyWeb.emailSystem();
|
||
if (emailSystem.send(company.email, company.bcc, company.name + "<" + company.email + ">", mailSubject, Detail))
|
||
{
|
||
ScriptMsgTop("寄出成功!", msgIcon.success);
|
||
mailtest.ForeColor = System.Drawing.Color.Green;
|
||
}
|
||
else
|
||
{
|
||
ScriptMsgTop("寄出失敗!", msgIcon.error);
|
||
mailtest.Text = emailSystem.log;
|
||
}
|
||
|
||
|
||
}
|
||
|
||
#endregion
|
||
|
||
} |