<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="EditFormCS.aspx.cs" Inherits="ArconCalendar.EditFormCS" %><
br
><
br
><%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %><
br
><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><
br
><
html
xmlns
=
"http://www.w3.org/1999/xhtml"
><
br
> <
br
><
head
id
=
"Head1"
runat
=
"server"
> <
title
>Edit dialog</
title
></
head
><
br
> <
body
> <
form
id
=
"form1"
runat
=
"server"
> <
br
> <
div
style
=
"height: auto; width: 300px"
><
br
> <
telerik:RadCodeBlock
ID
=
"RadCodeBlock1"
runat
=
"server"
>
<
telerik:RadScriptManager
ID
=
"RadScriptManager1"
runat
=
"server"
></
telerik:RadScriptManager
><
br
> <
telerik:RadFormDecorator
ID
=
"RadFormDecorator1"
runat
=
"server"
DecoratedControls
=
"All"
Width
=
"400px"
/><
br
> <
telerik:RadWindowManager
ID
=
"window1"
runat
=
"server"
ReloadOnShow
=
"true"
> </
telerik:RadWindowManager
><
br
> <
br
/><
br
> <
br
/><
br
> <
asp:DetailsView
ID
=
"DetailsView1"
DataKeyNames
=
"TaskID"
runat
=
"server"
AutoGenerateRows
=
"False"
<br> Height="50px" Width="300px" OnItemCommand="DetailsView1_ItemCommand" OnItemInserting="DetailsView1_ItemInserting" <
br
> BorderWidth="0" CellPadding="0" CellSpacing="7" GridLines="None" OnItemUpdating="DetailsView1_ItemUpdating" OnModeChanging="DetailsView1_ModeChanging" ><
br
> <
Fields
><
br
> <
asp:BoundField
DataField
=
"Title"
HeaderText
=
"Title"
SortExpression
=
"Title"
ReadOnly
=
"false"
/><
br
> <
asp:BoundField
DataField
=
"ProjectName"
HeaderText
=
"ProjectName"
SortExpression
=
"ProjectName"
ReadOnly
=
"false"
/><
br
> <
asp:TemplateField
HeaderText
=
"Assigned Users"
><
br
> <
ItemTemplate
><
br
> <
telerik:RadComboBox
runat
=
"server"
ID
=
"Users"
EnableCheckAllItemsCheckBox
=
"true"
<br> CheckBoxes="true" DataTextField="UserName" DataValueField="UserID" OnLoad="Users_Load" ><
br
><
br
><
br
><
br
> </
telerik:RadComboBox
><
br
><
br
> </
ItemTemplate
><
br
> </
asp:TemplateField
><
br
><
br
> <
asp:TemplateField
HeaderText
=
"Deadline"
><
br
><
br
> <
ItemTemplate
><
br
> <
telerik:RadDatePicker
EnableViewState
=
"false"
MinDate
=
"01/01/1850"
<br> MaxDate="01/01/2100" Skin="Telerik" ID="DeadlineDate"<
br
> DbSelectedDate='<%# DataBinder.Eval(Container.DataItem, "DeadlineDate") %>'<
br
> runat="server"><
br
> </
telerik:RadDatePicker
><
br
><
br
><
br
> </
ItemTemplate
><
br
><
br
> </
asp:TemplateField
><
br
> <
br
> <
br
> <
asp:TemplateField
HeaderText
=
"Note"
><
br
> <
ItemTemplate
><
br
> <
asp:TextBox
ID
=
"Note"
runat
=
"server"
Text='<%# DataBinder.Eval(Container.DataItem,"Note") %>' TextMode="MultiLine" Width="160px"><
br
> </
asp:TextBox
><
br
> </
ItemTemplate
><
br
> </
asp:TemplateField
><
br
><
br
> <
asp:CheckboxField
DataField
=
"IsActive"
HeaderText
=
"IsActive"
SortExpression
=
"IsActive"
ReadOnly
=
"false"
/><
br
> <
br
> <
asp:CommandField
ShowEditButton
=
"True"
ButtonType
=
"Button"
EditText
=
"Update"
/><
br
> <
asp:CommandField
ShowInsertButton
=
"True"
ButtonType
=
"Button"
InsertText
=
"Insert"
/><
br
> <
asp:CommandField
ShowCancelButton
=
"true"
ButtonType
=
"Button"
CancelText
=
"Cancel"
/><
br
><
br
> </
Fields
><
br
> <
br
> </
asp:DetailsView
><
br
> <
br
> </
div
> <
br
><
br
> </
form
><
br
><
br
> </
body
><
br
><
br
></
html
>
using
System;<br>
using
System.Collections.Generic;<br>
using
System.Data;<br>
using
System.Data.SqlClient;<br>
using
System.Linq;<br>
using
System.Web;<br>
using
System.Web.UI;<br>
using
System.Web.UI.WebControls;<br>
using
Telerik.Web.UI;<br><br>
namespace
ArconCalendar<br>{<br>
public
partial
class
EditFormCS : System.Web.UI.Page<br> {<br>
protected
override
void
OnInit(EventArgs e)<br> {<br>
base
.OnInit(e);<br> <br> <br>
if
(Request.QueryString[
"taskid"
] ==
null
)<br> {<br> DetailsView1.DefaultMode = DetailsViewMode.Insert;<br> }<br>
else
<br> {<br> DetailsView1.DataSource = DB.GetData(
"Tasks_Select"
,
"@TaskID"
, Request.QueryString[
"taskid"
]);<br> DetailsView1.DefaultMode = DetailsViewMode.Edit;<br> DetailsView1.DataBind();<br> <br> }<br>
this
.Page.Title =
"Editing record"
;<br> }<br><br>
protected
void
DetailsView1_ItemCommand(
object
sender, DetailsViewCommandEventArgs e)<br> {<br>
if
(e.CommandName ==
"Edit"
)<br> {<br><br> ClientScript.RegisterStartupScript(Page.GetType(),
"mykey"
,
"CloseAndRebind();"
,
true
);<br> }<br>
else
if
(e.CommandName ==
"Insert"
)<br> {<br> ClientScript.RegisterStartupScript(Page.GetType(),
"mykey"
,
"CloseAndRebind('navigateToInserted');"
,
true
);<br> }<br>
else
<br> {<br>
// ClientScript.RegisterStartupScript(Page.GetType(), "mykey", "CancelEdit();", true);<br> }<br> }<br><br> protected void DetailsView1_ItemUpdating(object sender, DetailsViewUpdateEventArgs e)<br> {<br> /*<br> //logic to truncate long string to prevent SQL error<br> for (int i = 1; i < 4; i++)<br> {<br> string val = e.NewValues[i - 1].ToString();<br> int maxLength = i * 10;<br> if (val.Length > maxLength) e.NewValues[i - 1] = val.Substring(0, maxLength);<br> }*/<br><br> string ids = ConcatUserID();<br><br> using (var conn = new SqlConnection(DB.connString))<br> using (var command = new SqlCommand("Tasks_Update", conn) { CommandType = CommandType.StoredProcedure })<br> {<br> conn.Open();<br> SqlDataAdapter da = new SqlDataAdapter(command);<br> command.Parameters.Add(new SqlParameter("@TaskID", e.Keys[0].ToString()));<br> command.Parameters.Add(new SqlParameter("@UserIDs",ids ));<br> <br> command.Parameters.Add(new SqlParameter("@Title",e.NewValues["Title"]));<br> command.Parameters.Add(new SqlParameter("@ProjectName", e.NewValues["ProjectName"]));<br><br> command.Parameters.Add(new SqlParameter("@DeadlineDate", (DetailsView1.FindControl("DeadlineDate") as RadDatePicker).SelectedDate));<br> command.Parameters.Add(new SqlParameter("@IsActive", e.NewValues["IsActive"]));<br><br> command.Parameters.Add(new SqlParameter("@Note", (DetailsView1.FindControl("Note") as TextBox).Text));<br> <br> command.ExecuteNonQuery();<br><br><br><br><br> }<br><br><br><br><br> }<br><br> private string ConcatUserID()<br> {<br> RadComboBox d = (DetailsView1.FindControl("Users") as RadComboBox);<br> string ids = "";<br> string separator = ";";<br><br><br> foreach (RadComboBoxItem item in d.Items)<br> {<br> if(item.Checked==true)<br> ids += item.Value + separator;<br><br> }<br> return ids;<br> }<br><br> protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e)<br> {<br> string ids = ConcatUserID();<br> using (var conn = new SqlConnection(DB.connString))<br> using (var command = new SqlCommand("Tasks_Insert", conn) { CommandType = CommandType.StoredProcedure })<br> {<br> conn.Open();<br> SqlDataAdapter da = new SqlDataAdapter(command);<br> <br> command.Parameters.Add(new SqlParameter("@UserIDs", ids));<br><br> command.Parameters.Add(new SqlParameter("@Title", e.Values["Title"]));<br> command.Parameters.Add(new SqlParameter("@ProjectName", e.Values["ProjectName"]));<br><br> command.Parameters.Add(new SqlParameter("@DeadlineDate", (DetailsView1.FindControl("DeadlineDate") as RadDatePicker).SelectedDate));<br> command.Parameters.Add(new SqlParameter("@IsActive", e.Values["IsActive"]));<br><br> command.Parameters.Add(new SqlParameter("@Note", (DetailsView1.FindControl("Note") as TextBox).Text));<br><br> command.ExecuteNonQuery();<br><br><br><br><br> }<br><br> }<br><br> <br><br> protected void Users_Load(object sender, EventArgs e)<br> {<br> if (!IsPostBack)<br> {<br> RadComboBox rcb = (sender as RadComboBox);<br> DataTable dt = DB.GetData("UsersToTask_Select");<br> rcb.DataSource = dt;<br> rcb.DataBind();<br><br> <br> if (DetailsView1.CurrentMode == DetailsViewMode.Edit)<br> {<br> List<Guid> list = (from row in dt.AsEnumerable()<br> where row.Field<Guid?>("TaskID") ==Guid.Parse( DetailsView1.DataKey.Value.ToString())<br> select row.Field<Guid>("UserId")).ToList<Guid>();<br> foreach (RadComboBoxItem r in rcb.Items)<br> {<br> if (list.Contains(Guid.Parse(r.Value))) r.Checked = true;<br> <br> }<br><br> }<br> }<br> }<br><br> protected void DetailsView1_ModeChanging(object sender, DetailsViewModeEventArgs e)<br> {<br> if (e.CancelingEdit==true)<br> {<br> <br> ClientScript.RegisterStartupScript(Page.GetType(), "mykey", "CancelEdit();", true);<br> <br> }<br> else if (e.NewMode == DetailsViewMode.Edit)<br> {<br> ClientScript.RegisterStartupScript(Page.GetType(), "mykey", "CloseAndRebind();", true);<br> }<br> else if (e.NewMode == DetailsViewMode.Insert)<br> {<br> ClientScript.RegisterStartupScript(Page.GetType(), "mykey", "CloseAndRebind('navigateToInserted');", true);<br> }<br><br> }<br><br> <br><br> <br> }<br>}<br>
<
telerik:GridBoundColumn
UniqueName
=
"SomeDateRange"
DataField
=
"SomeDate"
DataType
=
"System.DateTime"
ShowFilterIcon
=
"false"
SortExpression
=
"SomeDate"
HeaderStyle-Width
=
"330px"
FilterControlWidth
=
"100px"
ItemStyle-HorizontalAlign
=
"Center"
HeaderStyle-HorizontalAlign
=
"Center"
>
<
FilterTemplate
>
<
div
class
=
"dateRange"
>
<
asp:Label
runat
=
"server"
ID
=
"From"
><%# LabelFrom%></
asp:Label
>
<
telerik:RadDatePicker
ID
=
"FromOrderDatePicker"
AutoPostBackOnFilter
=
"true"
runat
=
"server"
Width
=
"140px"
ClientEvents-OnDateSelected
=
"FromDateSelected"
MinDate
=
"07-04-1996"
MaxDate
=
"05-06-2050"
FocusedDate
=
"07-03-2014"
DbSelectedDate='<%# startDate %>'/>
</
div
>
<
div
class
=
"dateRange"
>
<
asp:Label
runat
=
"server"
ID
=
"To"
><%# LabelTo%></
asp:Label
>
<
telerik:RadDatePicker
ID
=
"ToOrderDatePicker"
AutoPostBackOnFilter
=
"true"
runat
=
"server"
Width
=
"140px"
ClientEvents-OnDateSelected
=
"ToDateSelected"
MinDate
=
"07-04-1996"
MaxDate
=
"05-06-2050"
FocusedDate
=
"07-03-2014"
DbSelectedDate='<%# endDate %>' />
</
div
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock1"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function FromDateSelected(sender, args) {
var tableView = $find("<%# ((GridItem)Container).OwnerTableView.ClientID %>");
var ToPicker = $find('<%# ((GridItem)Container).FindControl("ToOrderDatePicker").ClientID %>');
var fromDate = FormatSelectedDate(sender);
var toDate = FormatSelectedDate(ToPicker);
tableView.filter("SomeDateRange", fromDate + " " + toDate, "Between");
}
function ToDateSelected(sender, args) {
var tableView = $find("<%# ((GridItem)Container).OwnerTableView.ClientID %>");
var FromPicker = $find('<%# ((GridItem)Container).FindControl("FromOrderDatePicker").ClientID %>');
var fromDate = FormatSelectedDate(FromPicker);
var toDate = FormatSelectedDate(sender);
tableView.filter("SomeDateRange", fromDate + " " + toDate, "Between");
}
function FormatSelectedDate(picker) {
var date = picker.get_selectedDate();
var dateInput = picker.get_dateInput();
var formattedDate = dateInput.get_dateFormatInfo().FormatDate(date, dateInput.get_displayDateFormat());
return formattedDate;
}
</
script
>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>
<%
@ Page Language="VB" MasterPageFile="~/MasterPages/mainsite.master" AutoEventWireup="false" CodeFile="ContentTest.aspx.vb" Inherits="Test_ContentTest" title="" %>
<%
@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<
asp:content id="Content2" contentplaceholderid="c2" runat="server">
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
<script language="javascript" type="text/javascript">
</script>
</telerik:RadCodeBlock>
<div style="background-color: #191944; text-align: right" class="address_label_white"> Administration - Title Block
</div>
<br />
<br />
<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" EnableAJAX="true" LoadingPanelID="LoadingPanel1">
<div class="container center" style="width: 90%; height: 325px;">
<uc:Header ID="ucHeader" runat="server" pageTitle="" />
<br />
<table border="0" width="98%" cellpadding="3" cellspacing="3" style="text-align:left">
<tr>
<td valign="top" align="center" width='45%'>
<fieldset id="Fieldset1" runat=server>
<legend>Set Content </legend>
<table border="0" cellspacing="3" cellpadding="3" width="98%" height='240px' bgcolor="#E5E7CC" >
<tr>
<td valign='top' align='center' colspan='3' width=100%>
<telerik:RadEditor runat='server' Skin='Vista' ID='radEdit1' AutoResizeHeight=false BackColor="White" ForeColor='green' height='310' Width='980' ToolsFile="../ToolsFiles/TitleEditor.xml" >
<CssFiles>
<telerik:EditorCssFile Value="~/EditorContentArea.css" />
</CssFiles>
</telerik:RadEditor>
</td>
</tr>
</table>
</fieldset>
</td>
<td valign="top" align="center" width='45%'> </td>
</tr>
<tr>
<td colspan='2'>
<table border="0" cellspacing="7" cellpadding="0" width="100%">
<tr>
<td align='right'width='50%'>
<input type="button" id="btnNext" class="buttonFace" value="Next" onclick="" />
</td>
<td align='left'>
<span class="arial_10px">
<input type="button" id="btnCancel" class="buttonFace" value="Cancel" onclick="javascript: window.location='controlPanel.aspx';" />
</span>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</telerik:RadAjaxPanel>
<telerik:RadAjaxLoadingPanel ID="LoadingPanel1" runat="server" BackColor="window" IsSticky="true"
EnableViewState="false" Transparency="15" Style="position: absolute; left: 425px; top: 275px">
<uc:LoadingPanel ID="UCLoadingPanel1" runat="server" />
</telerik:RadAjaxLoadingPanel>
</
asp:Content>
<
telerik:RadTreeView
runat
=
"server"
ID
=
"rdtrOrganization"
Height
=
"450"
BorderWidth
=
"0"
OnNodeExpand
=
"groupsTree_NodeExpand"
OnClientNodeClicked
=
"ClientNodeClicking"
OnClientNodeDropping ="onNodeDropping"
EnableDragAndDrop
=
"true"
EnableDragAndDropBetweenNodes
=
"true"
Width
=
"100%"
Skin
=
"Web20"
CheckBoxes
=
"false"
CausesValidation
=
"false"
TriStateCheckBoxes
=
"false"
></
telerik:RadTreeView
>
function
onNodeDropping(sender, args) {
var
sourceNode = args.get_sourceNode();
var
destinationNode = args.get_destNode();
var
nodeType = sourceNode._attributes.getAttribute(
'<%=k_TreeNodeTypeAttribute%>'
);
if
(nodeType ===
"SP"
|| nodeType ===
"Server"
|| nodeType ===
"Company"
) {
return
;
}
var
dest = args.get_destNode();
if
(dest) {
$telerik.$.ajax({
type:
"POST"
,
url:
"OrganizationManagement.aspx/MoveTeam"
,
data:
"{'sourceID': '"
+ sourceNode._attributes._data.Guid +
"','destinationID': '"
+ destinationNode._attributes._data.Guid +
"'}"
,
contentType:
"application/json; charset=utf-8"
,
dataType:
"json"
,
success:
function
(response) {
clientSideEdit(sender, args);
},
error:
function
(xhr, err) {
}
});
}
}
function
clientSideEdit(sender, args) {
var
destinationNode = args.get_destNode();
if
(destinationNode) {
var
firstTreeView = $find(
'<%= rdtrOrganization.ClientID %>'
);
firstTreeView.trackChanges();
var
sourceNodes = args.get_sourceNodes();
var
dropPosition = args.get_dropPosition();
//Needed to preserve the order of the dragged items
if
(dropPosition ==
"below"
) {
for
(
var
i = sourceNodes.length - 1; i >= 0; i--) {
var
sourceNode = sourceNodes[i];
sourceNode.get_parent().get_nodes().remove(sourceNode);
insertAfter(destinationNode, sourceNode);
}
}
else
{
for
(
var
i = 0; i < sourceNodes.length; i++) {
var
sourceNode = sourceNodes[i];
sourceNode.get_parent().get_nodes().remove(sourceNode);
if
(dropPosition ==
"over"
)
destinationNode.get_nodes().add(sourceNode);
if
(dropPosition ==
"above"
)
insertBefore(destinationNode, sourceNode);
}
}
destinationNode.set_expanded(
true
);
firstTreeView.commitChanges();
}
}
function
insertAfter(destinationNode, sourceNode) {
var
destinationParent = destinationNode.get_parent();
var
index = destinationParent.get_nodes().indexOf(destinationNode);
destinationParent.get_nodes().insert(index + 1, sourceNode);
}
function
insertBefore(destinationNode, sourceNode) {
var
destinationParent = destinationNode.get_parent();
var
index = destinationParent.get_nodes().indexOf(destinationNode);
destinationParent.get_nodes().insert(index, sourceNode);
}