You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

154 lines
6.3 KiB

using Swift.web.Library;
using System;
using System.Data;
using System.Text;
namespace Swift.web.Agent
{
public partial class Dashboard2 : System.Web.UI.Page
{
private RemittanceLibrary rl = new RemittanceLibrary();
private string VaultTransferViewFunctionId = "20198000";
protected void Page_Load(object sender, EventArgs e)
{
rl.CheckSession();
if (!IsPostBack)
{
PopulateMenu();
userName.Text = GetStatic.GetAgentName() + " (" + GetStatic.ReadSession("user", "") + ")";
if (rl.HasRight(VaultTransferViewFunctionId))
{
PopulateNotification();
}
}
}
protected void PopulateNotification()
{
string sql = "EXEC proc_notification @user = " + rl.FilterString(getUser()) + ", @portal='agent', @branch_id=" + rl.FilterString(GetStatic.GetBranch());
DataTable dt = rl.ExecuteDataTable(sql);
if (null == dt)
{
return;
}
if (dt.Rows.Count == 0)
{
return;
}
StringBuilder sb = new StringBuilder();
int counter = 0;
foreach (DataRow item in dt.Rows)
{
counter += Convert.ToInt16(item["count"].ToString());
sb.AppendLine("<li class=\"clearfix\">");
sb.AppendLine("<a href=\"" + item["link"].ToString() + "\" target=\"mainFrame\">");
sb.AppendLine("<span class=\"pull-left\">");
sb.AppendLine("<i class=\"fa fa-bell\" style='color:#0e96ec'></i>");
sb.AppendLine("</span>");
sb.AppendLine("<span class=\"media-body\">");
sb.AppendLine(item["msg"].ToString());
sb.AppendLine("<em>" + item["msg1"].ToString() + "</em>");
sb.AppendLine("</span>");
sb.AppendLine("</a></li>");
}
countNotification.InnerHtml = counter.ToString();
notiUL.InnerHtml = "<li class=\"notify-title\">" + counter.ToString() + " New Notification(s)</li>" + sb.ToString();
}
protected string getUser()
{
return GetStatic.GetUser();
}
protected void PopulateMenu()
{
StringBuilder sb = new StringBuilder();
string sql = "exec menu_proc @flag = 'agent', @user = '" + getUser() + "'";
DataSet ds = rl.ExecuteDataset(sql);
DataTable menuGroup = ds.Tables[0];
//sb.AppendLine("<div id=\"navbar-main\" class=\"navbar-collapse collapse\">");
//sb.AppendLine("<ul class=\"nav navbar-nav\">");
//sb.AppendLine("<li class=\"active\"><a href=\"../Agent/Dashboard.aspx\">Dashboard</a></li>");
sb.AppendLine("<li><a href=\"/Agent/AgentMain.aspx\" target='mainFrame'>Dashboard</a></li> ");
if (ds.Tables[0].Rows.Count == 0 || ds.Tables[1].Rows.Count == 0)
{
//sb.AppendLine("</li></ul>");
//sb.AppendLine("</div>");
menu.InnerHtml = sb.ToString();
return;
}
for (int i = 0; i <= menuGroup.Rows.Count; i++)
{
if (menuGroup.Rows.Count != 0)
{
string menuGroupName = menuGroup.Rows[0]["AgentMenuGroup"].ToString();
DataRow[] rows = ds.Tables[1].Select("AgentMenuGroup = ('" + menuGroupName + "')");
if (rows.Length > 0)
sb.AppendLine(GetMenuContents(menuGroupName, rows));
DataRow[] rowsToRemove = menuGroup.Select("AgentMenuGroup = ('" + menuGroupName + "')");
foreach (DataRow row in rowsToRemove)
{
menuGroup.Rows.Remove(row);
}
}
i = 0;
}
//sb.AppendLine("</li></ul>");
//sb.AppendLine("</div>");
sb.AppendLine("<li><a href=\"/Logout.aspx\" style='background-color:#333'>Logout</a></li> ");
menu.InnerHtml = sb.ToString();
}
private string GetMenuContents(string menuGroup, DataRow[] dr)
{
StringBuilder sb = new StringBuilder("");
DataTable dt = CreateDataTable();
foreach (DataRow row in dr)
{
dt.ImportRow(row);
}
sb.AppendLine("<li><a href=\"#\">" + menuGroup + "<span class=\"caret\"></span></a> ");
sb.AppendLine("<ul>");
for (int i = 0; i <= dt.Rows.Count; i++)
{
if (dt.Rows.Count != 0)
{
DataRow[] menuList = dt.Select("AgentMenuGroup = ('" + dt.Rows[0]["AgentMenuGroup"].ToString() + "')");
string subMainMenu = menuList[0]["AgentMenuGroup"].ToString();
foreach (DataRow row in menuList)
{
//sb.AppendLine("<li><a tabindex=\"-1\" href=\"" + row["linkPage"].ToString() + "\" target=\"mainFrame\">" + row["menuName"].ToString() + "</a></li>");
sb.AppendLine("<li><a href=\"" + row["linkPage"].ToString() + "\" target=\"mainFrame\">" + row["menuName"].ToString() + "</a></li>");
}
DataRow[] rows = dt.Select("AgentMenuGroup = ('" + dt.Rows[0]["AgentMenuGroup"].ToString() + "')");
foreach (DataRow row in rows)
{
dt.Rows.Remove(row);
}
}
i = 0;
}
sb.AppendLine("</ul></li>");
return sb.ToString();
}
private DataTable CreateDataTable()
{
DataTable dt = new DataTable();
DataColumn linkPage = new DataColumn("linkPage", Type.GetType("System.String"));
DataColumn menuName = new DataColumn("menuName", Type.GetType("System.String"));
DataColumn agentMenuGroup = new DataColumn("AgentMenuGroup", Type.GetType("System.String"));
dt.Columns.Add(linkPage);
dt.Columns.Add(agentMenuGroup);
dt.Columns.Add(menuName);
return dt;
}
}
}