or
<
telerik:RadGrid
runat
=
"server"
ID
=
"gridEmployees"
AllowMultiRowSelection
=
"true"
OnNeedDataSource
=
"gridEmployees_NeedDataSource"
Width
=
"25%"
OnDataBinding
=
"gridEmployees_DataBinding"
AutoGenerateColumns
=
"false"
Style
=
"margin: 10px auto 0px auto;"
GridLines
=
"None"
Skin
=
"WebBlue"
EnableAJAX
=
"true"
ClientSettings-EnablePostBackOnRowClick
=
"false"
>
<
MasterTableView
Name
=
"EmployeeTable"
ClientDataKeyNames
=
"EmployeeID, FirstName"
DataKeyNames
=
"EmployeeID"
AllowMultiColumnSorting
=
"False"
>
<
Columns
>
<
telerik:GridClientSelectColumn
UniqueName
=
"ClientSelectColumn"
>
</
telerik:GridClientSelectColumn
>
<
telerik:GridBoundColumn
SortExpression
=
"FirstName"
HeaderText
=
"Employee"
AllowFiltering
=
"true"
HeaderButtonType
=
"TextButton"
DataField
=
"FirstName"
UniqueName
=
"FirstName"
FilterControlWidth
=
"65px"
/>
<
telerik:GridTemplateColumn
HeaderText
=
"Score"
>
<
ItemStyle
Width
=
"100px"
/>
<
ItemTemplate
>
<
telerik:RadTextBox
ID
=
"txtScore"
runat
=
"server"
Enabled
=
"false"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Notes"
>
<
ItemStyle
Width
=
"100px"
/>
<
ItemTemplate
>
<
telerik:RadTextBox
ID
=
"txtNotes"
runat
=
"server"
Enabled
=
"false"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Failed"
>
<
ItemStyle
Width
=
"20px"
/>
<
ItemTemplate
>
<
asp:CheckBox
ID
=
"chkFailed"
Text
=
""
runat
=
"server"
Enabled
=
"false"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
<
ClientSettings
EnableRowHoverStyle
=
"true"
>
<
Selecting
AllowRowSelect
=
"true"
UseClientSelectColumnOnly
=
"true"
/>
<
ClientEvents
OnRowSelected
=
"RowSelected"
OnRowDeselected
=
"RowDeselected"
/>
</
ClientSettings
>
</
telerik:RadGrid
>
function CallNotification() {
var PwdAttuale = '<%=ViewState("Passwordnow")%>';
var notification = document.getElementById("<%= RadNotification1.ClientID %>");
var txtpwdnow = document.getElementById("<%= txtpwdnow.ClientID %>");
var txtpwdnew = document.getElementById("<%= txtpwdnew.ClientID %>");
var txtpwdnewconf = document.getElementById("<%= Txtpwdnewconf.ClientID %>");
if (txtpwdnow.value != PwdAttuale) {
var messaggio = "Password attuale errata.";
notification.set_text(messaggio);
notification.show();
return false;
}
if (txtpwdnew.value != txtpwdnewconf.value) {
var messaggio = "Password di conferma errata.";
notification.set_text(messaggio);
notification.show();
return false;
}
}
(MainWindow)
function
showNewWindow {
// open radwindow to get new window
var
url =
"/Edit.aspx"
;
var
oWnd = getRadWindow().BrowserWindow.GetRadWindowManager().open(url,
"AddNewEditWindow"
);
// subscribe to the close event for the window
oWnd.add_close(getFieldsFromEditWindow);
}
function
getFieldsFromEditWindow()
{
var
WindowName=
"AddNewEditWindow"
;
var
targWnd = getRadWindow().BrowserWindow.GetRadWindowManager().getWindowByName(WindowName);
var
editWnd = targWnd.get_contentFrame().contentWindow;
var
data_From_EditWindow=editWnd.getDetails();
}
Edit.aspx ( RadWindow)
function
getDetails()
{
return
"HI"
;
}
getDetails() function in Edit.aspx is called successfully in chrome and mozilla but in IE it is failing
when the main window is trying to call the getDetails() in call back function "getFieldsFromEditWindow()"
after the rad window is closed.
It is throwing me an error "Object doesn't support property or method 'getDetails'"
Please help me in fixing this.
<
div
id
=
"container"
>
<
asp:Panel
ID
=
"sidebar"
runat
=
"server"
>
<
asp:PlaceHolder
ID
=
"phSideBar"
runat
=
"server"
></
asp:PlaceHolder
>
</
asp:Panel
>
<
asp:Panel
ID
=
"viewer"
runat
=
"server"
>
<
asp:PlaceHolder
ID
=
"phViewer"
runat
=
"server"
></
asp:PlaceHolder
>
</
asp:Panel
>
</
div
>
protected
void
Page_Load(
object
sender, EventArgs e)
{
System.Web.UI.Control contHardCopyOrdering = (System.Web.UI.Control)LoadControl(
"vwHardCopy.ascx"
);
sidebar.Controls.Add(contHardCopyOrdering);
// Add Order button Control to SideBar phSideBar
ViewerServerControl imgViewer =
new
ViewerServerControl();
viewer.Controls.Add(imgViewer);
// Add viewer to Placeholder
}
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="vwHardCopy.ascx.cs"
Inherits="OriginsNetwork.ImageViewer.vwHardCopy" %>
<%@ Register TagPrefix="telerik" Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" %>
<
telerik:RadWindowManager
ID
=
"RadWindowManager1"
ShowContentDuringLoad
=
"false"
VisibleStatusbar
=
"false"
ReloadOnShow
=
"true"
runat
=
"server"
EnableShadow
=
"true"
Width
=
"1500px"
Height
=
"500px"
>
<
Windows
>
<
telerik:RadWindow
runat
=
"server"
ID
=
"RadWindow_NavigateUrl"
NavigateUrl
=
"Dialog.aspx"
Modal
=
"false"
Width
=
"300px"
Height
=
"250px"
Left
=
"0px"
Title
=
"Title of Window"
>
</
telerik:RadWindow
>
</
Windows
>
</
telerik:RadWindowManager
>
<
div
id
=
"hardcopy"
style
=
"margin-top: 30px;"
>
<
asp:ImageButton
ID
=
"btnDialog"
ImageUrl
=
"/images/buttons/order-original-red.gif"
OnClientClick
=
"openWinNavigateUrl(); return false;"
runat
=
"server"
></
asp:ImageButton
>
<
script
type
=
"text/javascript"
>
function openWinNavigateUrl() {
$find("<%=RadWindow_NavigateUrl.ClientID %>").show();
}
</
script
>
</
div
>
function OnClientAppointmentMoveEnd(sender, eventArgs) {
//if available end time is less then preferred end time, the prefered end time should match the available end time
for (var i = 0; i < apps.get_count(); i++) {
if (apps._array[i]._subject == 'preferred') {
if (apps._array[i].get_end().format('yyyy/mm/dd HH:mm:ss') > newEndTime.format('yyyy/mm/dd HH:mm:ss')) {
apps._array[i].set_end(newEndTime);
break;
}
}
}
}
Please refer to the PNG files
<
telerik:RadAjaxLoadingPanel
ID
=
"radLoading"
runat
=
"server"
>
</
telerik:RadAjaxLoadingPanel
>
<
telerik:RadWindowManager
ID
=
"radWindowManager"
runat
=
"server"
>
</
telerik:RadWindowManager
>
<
telerik:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"rgExportTypes"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"rgExportTypes"
LoadingPanelID
=
"radLoading"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"pnlAlert"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
<
asp:Panel
ID
=
"pnlAlert"
runat
=
"server"
>
<
asp:Label
ID
=
"lbMessage"
runat
=
"server"
CssClass
=
"success"
/>
</
asp:Panel
>
<
telerik:RadGrid
ID
=
"rgExportTypes"
runat
=
"server"
AutoGenerateColumns
=
"False"
CellSpacing
=
"0"
ShowGroupPanel
=
"true"
GridLines
=
"None"
AllowPaging
=
"True"
AllowCustomPaging
=
"True"
AllowFilteringByColumn
=
"True"
AllowSorting
=
"True"
Width
=
"100%"
OnInsertCommand
=
"rgExportTypes_InsertCommand"
OnNeedDataSource
=
"rgExportTypes_NeedDataSource"
OnUpdateCommand
=
"rgExportTypes_UpdateCommand"
OnDetailTableDataBind
=
"rgExportTypes_DetailTableDataBind"
OnDeleteCommand
=
"rgExportTypes_DeleteCommand"
OnItemDataBound
=
"rgExportTypes_ItemDataBound"
>
<
ClientSettings
AllowColumnsReorder
=
"True"
ReorderColumnsOnClient
=
"True"
AllowDragToGroup
=
"true"
>
<
Selecting
CellSelectionMode
=
"None"
></
Selecting
>
</
ClientSettings
>
<
MasterTableView
AllowFilteringByColumn
=
"true"
AllowMultiColumnSorting
=
"true"
CommandItemDisplay
=
"Top"
CommandItemSettings-AddNewRecordText
=
"Add Export Type"
Name
=
"ExportType"
DataKeyNames
=
"Id"
>
<
CommandItemSettings
ExportToPdfText
=
"Export to PDF"
></
CommandItemSettings
>
<
RowIndicatorColumn
Visible
=
"True"
FilterControlAltText
=
"Filter RowIndicator column"
>
<
HeaderStyle
Width
=
"20px"
></
HeaderStyle
>
</
RowIndicatorColumn
>
<
ExpandCollapseColumn
Visible
=
"True"
FilterControlAltText
=
"Filter ExpandColumn column"
>
<
HeaderStyle
Width
=
"20px"
></
HeaderStyle
>
</
ExpandCollapseColumn
>
<
DetailTables
>
<
telerik:GridTableView
DataKeyNames
=
"Id"
runat
=
"server"
CommandItemDisplay
=
"Top"
InsertItemPageIndexAction
=
"ShowItemOnCurrentPage"
CommandItemSettings-AddNewRecordText
=
"Add Column"
HierarchyLoadMode
=
"ServerOnDemand"
AllowPaging
=
"False"
AllowFilteringByColumn
=
"False"
AllowSorting
=
"False"
Name
=
"Column"
NoDetailRecordsText
=
"No columns associated with this export type."
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"ColumnHeader"
FilterControlAltText
=
"Filter column1 column"
HeaderText
=
"Column Header"
UniqueName
=
"ColumnHeader"
>
</
telerik:GridBoundColumn
>
<
telerik:GridNumericColumn
DataField
=
"ColumnNumber"
FilterControlAltText
=
"Filter column1 column"
HeaderText
=
"Column Number"
UniqueName
=
"ColumnNumber"
>
</
telerik:GridNumericColumn
>
<
telerik:GridEditCommandColumn
ButtonType
=
"ImageButton"
>
<
ItemStyle
Width
=
"30px"
/>
<
HeaderStyle
Width
=
"30px"
/>
</
telerik:GridEditCommandColumn
>
</
Columns
>
<
EditFormSettings
EditFormType
=
"WebUserControl"
UserControlName
=
"/controls/forms/ExportTypeColumnForm.ascx"
>
<
EditColumn
FilterControlAltText
=
"Filter EditCommandColumn column"
>
</
EditColumn
>
</
EditFormSettings
>
<
DetailTables
>
<
telerik:GridTableView
DataKeyNames
=
"Id"
runat
=
"server"
InsertItemPageIndexAction
=
"ShowItemOnCurrentPage"
CommandItemDisplay
=
"Top"
HierarchyLoadMode
=
"ServerOnDemand"
AllowPaging
=
"False"
AllowFilteringByColumn
=
"False"
InsertItemDisplay
=
"Bottom"
AllowSorting
=
"True"
AllowMultiColumnSorting
=
"True"
CommandItemSettings-AddNewRecordText
=
"Add Column Values"
Name
=
"ColumnValue"
NoDetailRecordsText
=
"No values from been associated with this column."
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"ColumnName"
FilterControlAltText
=
"Filter column1 column"
HeaderText
=
"Column Name"
UniqueName
=
"ColumnName"
>
</
telerik:GridBoundColumn
>
<
telerik:GridNumericColumn
DataField
=
"ColumnValueOrder"
FilterControlAltText
=
"Filter column2 column"
HeaderText
=
"Column Value Order"
UniqueName
=
"ColumnValueOrder"
>
</
telerik:GridNumericColumn
>
<
telerik:GridEditCommandColumn
ButtonType
=
"ImageButton"
>
<
ItemStyle
Width
=
"60px"
/>
<
HeaderStyle
Width
=
"60px"
/>
</
telerik:GridEditCommandColumn
>
<
telerik:GridButtonColumn
ConfirmText
=
"Delete Column Value: [[ColumnName]]?"
ConfirmDialogType
=
"RadWindow"
ConfirmTitle
=
"Delete"
ButtonType
=
"ImageButton"
CommandName
=
"Delete"
ConfirmDialogHeight
=
"100px"
ConfirmDialogWidth
=
"300px"
UniqueName
=
"DeleteColumn"
/>
</
Columns
>
<
EditFormSettings
EditFormType
=
"WebUserControl"
UserControlName
=
"/controls/forms/ExportTypeColumnValueForm.ascx"
>
<
EditColumn
FilterControlAltText
=
"Filter EditCommandColumn column"
>
</
EditColumn
>
</
EditFormSettings
>
</
telerik:GridTableView
>
</
DetailTables
>
</
telerik:GridTableView
>
</
DetailTables
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"Name"
FilterControlAltText
=
"Filter column column"
HeaderText
=
"Name"
UniqueName
=
"Name"
FilterControlWidth
=
"250px"
>
<
ItemStyle
Width
=
"250px"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"ExportFileType"
FilterControlAltText
=
"Filter column1 column"
HeaderText
=
"ExportFileType"
UniqueName
=
"ExportFileType"
FilterControlWidth
=
"100px"
>
<
ItemStyle
Width
=
"100px"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"Product"
FilterControlAltText
=
"Filter column2 column"
HeaderText
=
"Product"
UniqueName
=
"Product"
FilterControlWidth
=
"75px"
>
<
ItemStyle
Width
=
"75px"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
DataField
=
"PartnerFormat"
FilterControlAltText
=
"Filter TemplateColumn2 column"
HeaderText
=
"Patrtner Format"
UniqueName
=
"PartnerFormat"
FilterControlWidth
=
"30px"
SortExpression
=
"PartnerFormat"
>
<
ItemStyle
Width
=
"30px"
/>
<
ItemTemplate
>
<%# GetBool(Eval("PartnerFormat"))%>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
DataField
=
"HasHeaderRow"
FilterControlAltText
=
"Filter TemplateColumn3 column"
HeaderText
=
"Has Header Row"
UniqueName
=
"HasHeaderRow"
FilterControlWidth
=
"30px"
SortExpression
=
"HasHeaderRow"
>
<
ItemStyle
Width
=
"30px"
/>
<
ItemTemplate
>
<%# GetBool(Eval("HasHeaderRow"))%>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridEditCommandColumn
ButtonType
=
"ImageButton"
>
<
ItemStyle
Width
=
"30px"
/>
<
HeaderStyle
Width
=
"30px"
/>
</
telerik:GridEditCommandColumn
>
</
Columns
>
<
EditFormSettings
EditFormType
=
"WebUserControl"
UserControlName
=
"/controls/forms/ExportTypeForm.ascx"
>
<
EditColumn
FilterControlAltText
=
"Filter EditCommandColumn column"
>
</
EditColumn
>
</
EditFormSettings
>
</
MasterTableView
>
<
FilterMenu
EnableImageSprites
=
"False"
>
</
FilterMenu
>
</
telerik:RadGrid
>
public
partial
class
partners_export_types_default : System.Web.UI.Page
{
private
static
readonly
ILog log = LogManager.GetLogger(
typeof
(partners_export_types_default));
protected
void
Page_Load(
object
sender, EventArgs e)
{
log.Debug(
"Page_Load"
);
switch
(Request[
"Type"
])
{
case
"XDates"
:
ltExportHeader.Text =
"X-Dates Export Types"
;
break
;
default
:
Response.Redirect(
"~/"
);
break
;
}
}
protected
void
rgExportTypes_NeedDataSource(
object
sender, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
{
log.Debug(
"rgExportTypes_NeedDataSource - page size("
+ rgExportTypes.PageSize +
")"
);
int
startIndex = rgExportTypes.CurrentPageIndex * rgExportTypes.PageSize;
string
queryString = @
"SELECT VALUE e FROM ColeAdminContext.ExportTypes As e "
;
if
(!
string
.IsNullOrEmpty(rgExportTypes.MasterTableView.FilterExpression))
{
queryString +=
" where "
+ rgExportTypes.MasterTableView.FilterExpression.FormatWhereColumns(
"e"
, rgExportTypes.MasterTableView.Columns);
}
ColeAdminContext ctx =
new
ColeAdminContext();
ObjectQuery<Cole.Admin.Entities.ExportType> exportCount =
new
ObjectQuery<Cole.Admin.Entities.ExportType>(queryString, ((IObjectContextAdapter)ctx).ObjectContext);
rgExportTypes.VirtualItemCount = exportCount.Count();
if
(rgExportTypes.MasterTableView.SortExpressions.Count > 0)
{
queryString +=
"order by "
+ rgExportTypes.MasterTableView.SortExpressions.GetSortString().FormatOrderColumns(
"e"
, rgExportTypes.MasterTableView.Columns);
}
else
{
queryString +=
"order by e.Name"
;
}
log.Debug(
"query string("
+ queryString +
")"
);
ObjectQuery<Cole.Admin.Entities.ExportType> exportLists =
new
ObjectQuery<Cole.Admin.Entities.ExportType>(queryString, ((IObjectContextAdapter)ctx).ObjectContext);
rgExportTypes.DataSource = exportLists.Skip(startIndex).Take(rgExportTypes.PageSize).ToList();
}
protected
void
rgExportTypes_InsertCommand(
object
sender, Telerik.Web.UI.GridCommandEventArgs e)
{
GridEditableItem editedItem = e.Item
as
GridEditableItem;
UserControl form = (UserControl)e.Item.FindControl(GridEditFormItem.EditFormUserControlID);
if
(e.Item.OwnerTableView.Name ==
"ExportType"
)
{
Cole.Admin.Entities.ExportType exportType =
new
Cole.Admin.Entities.ExportType();
exportType.Name = (form.FindControl(
"txtName"
)
as
TextBox).Text;
exportType.ExportFileType = (form.FindControl(
"ddlExportFileType"
)
as
DropDownList).SelectedValue;
exportType.Product = (form.FindControl(
"ddlProducts"
)
as
DropDownList).SelectedValue;
exportType.PartnerFormat = (form.FindControl(
"cbPartnerFormat"
)
as
CheckBox).Checked;
exportType.HasHeaderRow = (form.FindControl(
"cbHasHeaderRow"
)
as
CheckBox).Checked;
ColeAdminContext ctx =
new
ColeAdminContext();
ctx.ExportTypes.Add(exportType);
AuditEvent ae = AuditEvent.Info(Convert.ToInt32(Page.User.Identity.Name),
"Added Export Type"
);
ctx.AuditEvents.Add(ae);
ctx.SaveChanges();
lbMessage.Text =
"Successfully Added Export Type: "
+ exportType.Name;
lbMessage.Visible =
true
;
}
if
(e.Item.OwnerTableView.Name ==
"Column"
)
{
int
id = Convert.ToInt32(e.Item.OwnerTableView.ParentItem.GetDataKeyValue(
"Id"
));
ExportTypeColumn column =
new
ExportTypeColumn();
column.ColumnHeader = (form.FindControl(
"txtColumnHeader"
)
as
TextBox).Text;
column.ColumnNumber = Convert.ToInt16((form.FindControl(
"ddlColumnNumber"
)
as
DropDownList).SelectedValue);
column.ExportTypeId = id;
ColeAdminContext ctx =
new
ColeAdminContext();
foreach
(ExportTypeColumn existingColumn
in
ctx.ExportTypeColumns.Where(c => c.ColumnNumber >= column.ColumnNumber && c.ExportTypeId == id))
{
existingColumn.ColumnNumber++;
}
ctx.ExportTypeColumns.Add(column);
AuditEvent ae = AuditEvent.Info(Convert.ToInt32(Page.User.Identity.Name),
"Added Column"
);
ctx.AuditEvents.Add(ae);
ctx.SaveChanges();
lbMessage.Text =
"Successfully Added Column: "
+ column.ColumnHeader;
lbMessage.Visible =
true
;
}
if
(e.Item.OwnerTableView.Name ==
"ColumnValue"
)
{
int
id = Convert.ToInt32(e.Item.OwnerTableView.ParentItem.GetDataKeyValue(
"Id"
));
ExportTypeColumnValue columnValue =
new
ExportTypeColumnValue();
columnValue.ColumnName = (form.FindControl(
"ddlColumnName"
)
as
DropDownList).SelectedValue;
columnValue.ColumnValueOrder = Convert.ToInt16((form.FindControl(
"ddlColumnValueOrder"
)
as
DropDownList).SelectedValue);
columnValue.ExportTypeColumnId = id;
ColeAdminContext ctx =
new
ColeAdminContext();
foreach
(ExportTypeColumnValue existingColumn
in
ctx.ExportTypeColumnValues.Where(c => c.ColumnValueOrder >= columnValue.ColumnValueOrder && c.ExportTypeColumnId == id))
{
existingColumn.ColumnValueOrder++;
}
ctx.ExportTypeColumnValues.Add(columnValue);
AuditEvent ae = AuditEvent.Info(Convert.ToInt32(Page.User.Identity.Name),
"Added Column Value"
);
ctx.AuditEvents.Add(ae);
ctx.SaveChanges();
lbMessage.Text =
"Successfully Added Column Value: "
+ columnValue.ColumnName;
lbMessage.Visible =
true
;
}
}
protected
void
rgExportTypes_UpdateCommand(
object
sender, Telerik.Web.UI.GridCommandEventArgs e)
{
log.Debug(
"rgExportTypes_UpdateCommand("
+ e.Item.OwnerTableView.Name +
")"
);
GridEditableItem editedItem = e.Item
as
GridEditableItem;
UserControl form = (UserControl)e.Item.FindControl(GridEditFormItem.EditFormUserControlID);
if
(e.Item.OwnerTableView.Name ==
"ExportType"
)
{
ColeAdminContext ctx =
new
ColeAdminContext();
int
id = Convert.ToInt32(editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex][
"Id"
]);
Cole.Admin.Entities.ExportType exportType = ctx.ExportTypes.Where(et => et.Id == id).Single();
exportType.Name = (form.FindControl(
"txtName"
)
as
TextBox).Text;
exportType.ExportFileType = (form.FindControl(
"ddlExportFileType"
)
as
DropDownList).SelectedValue;
exportType.Product = (form.FindControl(
"ddlProducts"
)
as
DropDownList).SelectedValue;
exportType.PartnerFormat = (form.FindControl(
"cbPartnerFormat"
)
as
CheckBox).Checked;
exportType.HasHeaderRow = (form.FindControl(
"cbHasHeaderRow"
)
as
CheckBox).Checked;
AuditEvent ae = AuditEvent.Info(Convert.ToInt32(Page.User.Identity.Name),
"Updated Export Type"
);
ctx.AuditEvents.Add(ae);
ctx.SaveChanges();
lbMessage.Text =
"Successfully Updated Export Type: "
+ exportType.Name;
lbMessage.Visible =
true
;
}
if
(e.Item.OwnerTableView.Name ==
"Column"
)
{
int
parentId = Convert.ToInt32(e.Item.OwnerTableView.ParentItem.GetDataKeyValue(
"Id"
));
int
id = Convert.ToInt32(editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex][
"Id"
]);
ColeAdminContext ctx =
new
ColeAdminContext();
ExportTypeColumn column = ctx.ExportTypeColumns.Where(c => c.Id == id).Single();
int
newColumnNumber = Convert.ToInt16((form.FindControl(
"ddlColumnNumber"
)
as
DropDownList).SelectedValue);
if
(column.ColumnNumber > newColumnNumber)
{
foreach
(ExportTypeColumn existingColumn
in
ctx.ExportTypeColumns.Where(c => c.ColumnNumber >= newColumnNumber && c.ExportTypeId == parentId))
{
existingColumn.ColumnNumber++;
}
}
if
(column.ColumnNumber < newColumnNumber)
{
foreach
(ExportTypeColumn existingColumn
in
ctx.ExportTypeColumns.Where(c => c.ColumnNumber <= newColumnNumber && c.ExportTypeId == parentId))
{
existingColumn.ColumnNumber--;
}
}
column.ColumnHeader = (form.FindControl(
"txtColumnHeader"
)
as
TextBox).Text;
column.ColumnNumber = (
short
)newColumnNumber;
AuditEvent ae = AuditEvent.Info(Convert.ToInt32(Page.User.Identity.Name),
"Added Column"
);
ctx.AuditEvents.Add(ae);
ctx.SaveChanges();
lbMessage.Text =
"Successfully Added Column: "
+ column.ColumnHeader;
lbMessage.Visible =
true
;
}
if
(e.Item.OwnerTableView.Name ==
"ColumnValue"
)
{
ColeAdminContext ctx =
new
ColeAdminContext();
int
parentId = Convert.ToInt32(e.Item.OwnerTableView.ParentItem.GetDataKeyValue(
"Id"
));
int
id = Convert.ToInt32(editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex][
"Id"
]);
ExportTypeColumnValue columnValue = ctx.ExportTypeColumnValues.Where(v => v.Id == id).Single();
int
newColumnOrder = Convert.ToInt16((form.FindControl(
"ddlColumnValueOrder"
)
as
DropDownList).SelectedValue);
if
(columnValue.ColumnValueOrder > newColumnOrder)
{
foreach
(ExportTypeColumnValue existingColumn
in
ctx.ExportTypeColumnValues.Where(c => c.ColumnValueOrder >= newColumnOrder && c.ExportTypeColumnId == parentId))
{
existingColumn.ColumnValueOrder++;
}
}
if
(columnValue.ColumnValueOrder < newColumnOrder)
{
foreach
(ExportTypeColumnValue existingColumn
in
ctx.ExportTypeColumnValues.Where(c => c.ColumnValueOrder <= newColumnOrder && c.ExportTypeColumnId == parentId))
{
existingColumn.ColumnValueOrder--;
}
}
columnValue.ColumnName = (form.FindControl(
"ddlColumnName"
)
as
DropDownList).SelectedValue;
columnValue.ColumnValueOrder = (
short
)newColumnOrder;
AuditEvent ae = AuditEvent.Info(Convert.ToInt32(Page.User.Identity.Name),
"Updated Column Value"
);
ctx.AuditEvents.Add(ae);
ctx.SaveChanges();
lbMessage.Text =
"Successfully Updated Column Value: "
+ columnValue.ColumnName;
lbMessage.Visible =
true
;
}
}
protected
void
rgExportTypes_DetailTableDataBind(
object
sender, GridDetailTableDataBindEventArgs e)
{
log.Debug(
"rgExportTypes_DetailTableDataBind("
+ e.DetailTableView.Name +
")"
);
GridDataItem parentItem = e.DetailTableView.ParentItem
as
GridDataItem;
if
(parentItem.Edit)
{
return
;
}
if
(e.DetailTableView.Name ==
"Column"
)
{
int
id = Convert.ToInt32(parentItem.GetDataKeyValue(
"Id"
));
ColeAdminContext ctx =
new
ColeAdminContext();
List<ExportTypeColumn> columns = ctx.ExportTypeColumns.Where(u => u.ExportTypeId == id).OrderBy(c => c.ColumnNumber).ToList();
e.DetailTableView.DataSource = columns;
e.DetailTableView.VirtualItemCount = columns.Count;
}
if
(e.DetailTableView.Name ==
"ColumnValue"
)
{
int
id = Convert.ToInt32(parentItem.GetDataKeyValue(
"Id"
));
ColeAdminContext ctx =
new
ColeAdminContext();
List<ExportTypeColumnValue> values = ctx.ExportTypeColumnValues.Where(v => v.ExportTypeColumnId == id).OrderBy(c => c.ColumnValueOrder).ToList();
e.DetailTableView.DataSource = values;
e.DetailTableView.VirtualItemCount = values.Count;
}
}
protected
void
rgExportTypes_ItemDataBound(
object
sender, GridItemEventArgs e)
{
if
(e.Item
is
GridDataItem)
{
if
(e.Item.DataItem
is
ExportTypeColumnValue)
{
ExportTypeColumnValue exportTypeColumn = (ExportTypeColumnValue)e.Item.DataItem;
WebControl deleteButton = (WebControl)((GridDataItem)e.Item)[
"DeleteColumn"
].Controls[0];
string
clickHandler = deleteButton.Attributes[
"onclick"
];
deleteButton.Attributes[
"onclick"
] = clickHandler.Replace(
"[[ColumnName]]"
, exportTypeColumn.ColumnName);
}
}
}
protected
void
rgExportTypes_DeleteCommand(
object
sender, GridCommandEventArgs e)
{
if
(e.Item.OwnerTableView.Name ==
"ColumnValue"
)
{
GridEditableItem editedItem = e.Item
as
GridEditableItem;
int
id = Convert.ToInt32(editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex][
"Id"
]);
ColeAdminContext ctx =
new
ColeAdminContext();
ExportTypeColumnValue exportColumnValue = ctx.ExportTypeColumnValues.Where(r => r.Id == id).Single();
ctx.ExportTypeColumnValues.Remove(exportColumnValue);
AuditEvent ae = AuditEvent.Info(Convert.ToInt32(User.Identity.Name),
"Remove Column Value"
);
ctx.AuditEvents.Add(ae);
ctx.SaveChanges();
lbMessage.Text =
"Successfully Deleted Column Value: "
+ exportColumnValue.ColumnName;
lbMessage.Visible =
true
;
ctx.SaveChanges();
}
}
protected
string
GetBool(
object
boolToFormat)
{
if
(boolToFormat !=
null
)
{
if
((
bool
)boolToFormat)
{
return
"<span class='label label-success'>YES</span>"
;
}
else
{
return
"<span class='label label-important'>NO</span>"
;
}
}
else
{
return
""
;
}
}
protected
void
rgExportTypes_PageSizeChanged(
object
sender, GridPageSizeChangedEventArgs e)
{
log.Debug(
"rgExportTypes_PageSizeChanged"
);
log.Debug(
"new page size("
+ e.NewPageSize +
") page size("
+ rgExportTypes.PageSize +
")"
);
}
}