<telerik:RadTreeView ID="radTreeView" runat="server" CssClass="treeView" EnableDragAndDrop="True" OnClientNodeDropping="rowDropping" OnNodeDrop="radTreeView_NodeDrop" Skin="Windows7"> <Nodes> <telerik:RadTreeNode runat="server" Owner="radTreeView" Text="Test"> <Nodes> <telerik:RadTreeNode runat="server" Owner="" Text="Test2"> </telerik:RadTreeNode> <telerik:RadTreeNode runat="server" Owner="" Text="Test"> </telerik:RadTreeNode> </Nodes> </telerik:RadTreeNode> <telerik:RadTreeNode runat="server" Owner="radTreeView" Text="Test2"> </telerik:RadTreeNode> </Nodes></telerik:RadTreeView><telerik:RadScheduler ID="radScheduler" runat="server" DayEndTime="19:00:00" FirstDayOfWeek="Monday" LastDayOfWeek="Sunday" OverflowBehavior="Expand" SelectedView="WeekView" ShowAllDayRow="False" ShowFooter="False" Skin="Windows7" WorkDayEndTime="19:00:00" OnClientAppointmentClick="OnClientAppointmentClick" OnClientTimeSlotClick="OnClientTimeSlotClick" CssClass="scheduler" ShowViewTabs="False"> <AdvancedForm Modal="True" /> <TimelineView UserSelectable="False" /> <MonthView UserSelectable="False" /></telerik:RadScheduler>function rowDropping(sender, eventArgs) { // Fired when the user drops a grid row var htmlElement = eventArgs.get_htmlElement(); var scheduler = $find('<%= radScheduler.ClientID %>'); if (isPartOfSchedulerAppointmentArea(htmlElement)) { // The row was dropped over the scheduler appointment area // Find the exact time slot and save its unique index in the hidden field var timeSlot = scheduler._activeModel.getTimeSlotFromDomElement(htmlElement); // $get("TargetSlotHiddenField").value = timeSlot.get_index(); $get('<%= TargetSlotHiddenField.ClientID %>').value = timeSlot.get_index(); // The HTML needs to be set in order for the postback to execute normally eventArgs.set_htmlElement('<%= TargetSlotHiddenField.ClientID %>'); } else { // The node was dropped elsewhere on the document eventArgs.set_cancel(true); }}<input type="hidden" runat="server" id="TargetSlotHiddenField" />protected void radTreeView_NodeDrop(object sender, RadTreeNodeDragDropEventArgs e){ RadTreeNode treeNode = e.DraggedNodes[0]; string id = treeNode.Value; string subject = treeNode.Text; string targetSlotIndex = TargetSlotHiddenField.Value; if (targetSlotIndex != string.Empty) { HandleSchedulerDrop(id, subject, targetSlotIndex); TargetSlotHiddenField.Value = string.Empty; }}private void HandleSchedulerDrop(string id, string subject, string targetSlotIndex){ radScheduler.Rebind(); ISchedulerTimeSlot slot = radScheduler.GetTimeSlotFromIndex(targetSlotIndex); TimeSpan duration = TimeSpan.FromHours(1); if (slot.Duration == TimeSpan.FromDays(1)) { duration = slot.Duration; } ScheduleTask(id, subject, slot.Start, slot.Start.Add(duration));}using
System;
using
System.Collections;
using
System.Collections.Generic;
using
System.Linq;
using
System.Web;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
DotNetNuke.Entities.Modules;
using
DotNetNuke.Entities.Modules.Definitions;
using
DotNetNuke.Entities.Users;
using
DotNetNuke.Security.Permissions;
using
Mandeeps.HelpDesk.Base.Library.Data;
using
Telerik.Web.UI;
namespace
Mandeeps.DNN.Modules.HelpDesk
{
public partial class DnnHelpDesk : PortalModuleBase
{
Mandeeps.HelpDesk.Base.Library.
HelpDesk lhd;
ModuleSecurity ms;
protected void Page_Load(object sender, EventArgs e)
{
ms =
new ModuleSecurity(this.ModuleConfiguration);
InitModulePermissions();
Mandeeps.DNN.Modules.HelpDesk.Data.
HelpdeskSettingDataContext context = new Modules.HelpDesk.Data.HelpdeskSettingDataContext(DotNetNuke.Common.Utilities.Config.GetConnectionString());
foreach (Mandeeps.DNN.Modules.HelpDesk.Data.HelpdeskSetting h in context.HelpdeskSettings)
{
lhd =
new Mandeeps.HelpDesk.Base.Library.HelpDesk(DotNetNuke.Common.Utilities.Config.GetConnectionString());
lhd.Pop3 =
new Mandeeps.HelpDesk.Base.Library.Mail.Pop3(h.Pop3LicenseKey, h.Pop3Server, h.Pop3Username, h.Pop3Password);
lhd.Smtp =
new Mandeeps.HelpDesk.Base.Library.Mail.Smtp(h.SmtpLicenseKey, h.SmtpServer, h.SmtpUsername, h.SmtpPassword);
lhd.Smtp.ServerPort = 2525;
lhd.PortalId = PortalId;
}
if(!IsPostBack)
Initilize();
}
public void Initilize()
{
List<Ticket> tic=null;
if(ms.IsOperator)
{
rtbSetting.Visible =
false;
rtbView.Items[0].Text =
"UnAssigned Tickets";
rtbView.Items[0].ToolTip =
"Click here for show UnAssigned Ticket's";
rtbView.Items[2].Text =
"My Tickets";
rtbView.Items[2].ToolTip =
"Click here for show Self Assigned Ticket's";
rtbView.Items[3].Visible =
true;
rtbView.Items[4].Visible =
true;
rgTicket.Columns[3].Visible =
true;
tic = lhd.GetAllOpenTickets(
null, UserId);
if (tic.Count == 0)
{
tic = lhd.GetAllUnassignedTickets();
((rtbView.Items[0])
as RadToolBarButton).Checked = true;
}
else
((rtbView.Items[2])
as RadToolBarButton).Checked = true;
}
else
tic = lhd.GetAllOpenTickets(UserId);
rgTicket.DataSource = tic;
rgTicket.DataBind();
}
protected void rtbSetting_ButtonClick(object sender, RadToolBarEventArgs e)
{
if (e.Item.Text == "Add New Ticket")
Response.Redirect(EditUrl(
"AddNewTicket"));
}
protected void rtbView_ButtonClick(object sender, RadToolBarEventArgs e)
{
List<Ticket> ticket = new List<Ticket>();
switch (e.Item.Text)
{
case "Pending":
{
rgTicket.Columns[6].Visible =
false;
ticket = lhd.GetAllOpenTickets(UserId);
break;
}
case "Resolved":
{
rgTicket.Columns[6].Visible =
true;
ticket = lhd.GetAllCloseTickets(UserId);
break;
}
case "UnAssigned Tickets":
{
rgTicket.Columns[4].Visible =
false;
rgTicket.Columns[6].Visible =
false;
ticket = lhd.GetAllUnassignedTickets();
break;
}
case "My Tickets":
{
rgTicket.Columns[4].Visible =
false;
rgTicket.Columns[6].Visible =
false;
ticket = lhd.GetAllOpenTickets(
null,UserId);
break;
}
case "All Tickets":
{
rgTicket.Columns[4].Visible =
true;
rgTicket.Columns[6].Visible =
false;
ticket = lhd.GetAllOpenTickets();
break;
}
}
rgTicket.DataSource = ticket;
rgTicket.DataBind();
}
protected void rgTicket_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = e.Item as GridDataItem;
TableCell title = item["Title"];
if (title != null)
{
Control ctl = title.FindControl("hlTicketDetails");
if (ctl != null)
{
HyperLink ticketDetails = ctl as HyperLink;
Label ticketId = title.FindControl("lTicketDetails") as Label;
Mandeeps.HelpDesk.Base.Library.Data.
Ticket t = item.DataItem as Mandeeps.HelpDesk.Base.Library.Data.Ticket;
ticketId.Text =
"#" + t.TicketID.ToString();
if (t.Title.Length > 25)
ticketDetails.Text = t.Title.Substring(0, 25)+
"...";
else
ticketDetails.Text = t.Title;
ticketDetails.NavigateUrl = EditUrl(
"", "", "ViewTicketDetail", "TicketID=" + t.TicketID.ToString());
}
}
}
}
public string ConcatColumns(object objText)
{
if (objText.ToString().Length > 50)
return objText.ToString().Substring(0, 50)+ "...";
else
return objText.ToString();
}
public string CategoryName(object objText)
{
if (int.Parse(objText.ToString()) == 0)
return "";
else
return lhd.GetCategoryName(int.Parse(objText.ToString()));
}
public string AssignedToName(object objText)
{
if (int.Parse(objText.ToString()) == -1)
return "";
else
{
UserController uC = new UserController();
UserInfo user = uC.GetUser(PortalId, int.Parse(objText.ToString()));
return user.DisplayName;
}
}
}
protected void rgTicket_SortCommand(object sender, GridSortCommandEventArgs e)
{
}
}
}
<%
@ Control Language="C#" AutoEventWireup="true" CodeBehind="DnnHelpDesk.ascx.cs" Inherits="Mandeeps.DNN.Modules.HelpDesk.DnnHelpDesk" %>
<%
@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
 
<
telerik:RadToolBar ID="rtbSetting" runat="server" onbuttonclick="rtbSetting_ButtonClick" style="float:left">
<Items>
<telerik:RadToolBarButton runat="server" Text="Add New Ticket" ToolTip="Click here for Add New Ticket"/>
</Items>
</
telerik:RadToolBar>
<
telerik:RadToolBar ID="rtbView" runat="server" onbuttonclick="rtbView_ButtonClick" EnableShadows="True" style="float:right">
<Items>
<telerik:RadToolBarButton runat="server" Text="Pending" ToolTip="Click here for show Pending Ticket's" CheckOnClick="true" AllowSelfUnCheck="true" />
<telerik:RadToolBarButton runat="server" Text="Button 2" IsSeparator="True"/>
<telerik:RadToolBarButton runat="server" Text="Resolved" ToolTip="Click here for show Resolved Ticket's" CheckOnClick="true" AllowSelfUnCheck="true"/>
<telerik:RadToolBarButton runat="server" Text="Button 3" IsSeparator="True" Visible="false"/>
<telerik:RadToolBarButton runat="server" Text="All Tickets" ToolTip="Click here for show All Ticket's" Visible="false" CheckOnClick="true" AllowSelfUnCheck="true"/>
</Items>
</
telerik:RadToolBar><br style="clear:both;"/>
 
<
telerik:RadGrid ID="rgTicket" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" GridLines="None"
PageSize="4" onitemdatabound="rgTicket_ItemDataBound" Skin="Outlook" onsortcommand="rgTicket_SortCommand">
<MasterTableView>
<CommandItemSettings ExportToPdfText="Export to Pdf"></CommandItemSettings>
<RowIndicatorColumn>
<HeaderStyle Width="20px"/>
</RowIndicatorColumn>
<ExpandCollapseColumn>
<HeaderStyle Width="20px"/>
</ExpandCollapseColumn>
<Columns>
<telerik:GridBoundColumn DataField="TicketID" HeaderText="TicketID" SortExpression="TicketID" UniqueName="TicketID" Visible="False"/>
<telerik:GridTemplateColumn HeaderText="Ticket Detail" UniqueName="Title">
<ItemTemplate>
<asp:HyperLink ID="hlTicketDetails" runat="server" Text="Subject Appears Here" Font-Size="Small" ForeColor="#0000ff"/>
<asp:Label ID="lTicketDetails" runat="server" Font-Size="Smaller" style="float:right"/><br/>
<div>
<asp:Label id="Label1" runat="server" Text='<%#ConcatColumns(DataBinder.Eval(Container.DataItem,"Description")) %>' ForeColor="#6699ff"/></div>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Category" UniqueName="Title">
<ItemTemplate>
<asp:Label id="lcategory" runat="server" Text='<%#CategoryName(DataBinder.Eval(Container.DataItem,"CategoryId")) %>'/>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="Email" HeaderText="From" SortExpression="Email" UniqueName="Email" Visible="false"/>
<telerik:GridTemplateColumn HeaderText="Assigned To" UniqueName="Title" Visible="false">
<ItemTemplate>
<asp:Label id="lAssignedTo" runat="server" Text='<%#AssignedToName(DataBinder.Eval(Container.DataItem,"AssignedTo")) %>'/>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="OpenDateTime" HeaderText="Created On" SortExpression="OpenDateTime" UniqueName="OpenDateTime"/>
<telerik:GridBoundColumn DataField="CloseDateTime" HeaderText="Date Close" SortExpression="CloseDateTime" UniqueName="CloseDateTime" Visible="false"/>
</Columns>
</MasterTableView>
</
telerik:RadGrid>


Stream theStream = FileUpload1.PostedFile.InputStream; int size = Convert.ToInt32(FileUpload1.PostedFile.InputStream.Length + 1); Byte[] rtf = new Byte[FileUpload1.PostedFile.InputStream.Length+1]; theStream.Read(rtf, 0, size); string s = System.Text.Encoding.Default.GetString(rtf); RadEditor1.LoadRtfContent(s);<telerik:RadGrid ID="grdProfileIntakes" AutoGenerateColumns="False" ItemStyle-VerticalAlign="Top" OnNeedDataSource="grdProfileIntakes_NeedDataSource" ShowStatusBar="true" GridLines="None" OnItemDataBound="grdProfileIntakes_ItemDataBound" OnDetailTableDataBind="grdProfileIntakes_DetailDataBind" runat="server" ><MasterTableView
DataKeyNames="IntakeId" CommandItemDisplay="TopAndBottom" NoMasterRecordsText="No Intakes to display."
Height="100%" Width="100%" ItemStyle-VerticalAlign="Top"> <RowIndicatorColumn Visible="True" /> <CommandItemSettings AddNewRecordText="Add new intake" />
<ExpandCollapseColumn Visible="True" /> <Columns> <telerik:GridEditCommandColumn ButtonType="ImageButton" UniqueName="btnEditIntake" /> <telerik:GridBoundColumn DataField="IntakeTitle"
HeaderText="Title" SortExpression="IntakeTitle" UniqueName="IntakeTitle" /> <telerik:GridBoundColumn DataField="StudyPeriodLabel" HeaderText="Study Period" SortExpression="StudyPeriodLabel" UniqueName="StudyPeriodLabel" /> </Columns>
<EditFormSettings EditFormType="Template"> <EditColumn UniqueName="IntakeEditColumn"></EditColumn> <FormTemplate> <table border="0" cellpadding="2" width="500px"> <tr> <td width="50px"><asp:Label ID="Label5" AssociatedControlID="IntakeTitle" runat="server">Title:</asp:Label></td> <td width="200px"> <asp:TextBox ID="IntakeTitle" Width="150px"
Text='<%# Bind("IntakeTitle") %>' TextMode="SingleLine" runat="server" MaxLength="20" /> </td>
</tr>
<tr> <td width="50"><asp:Label ID="Label1" AssociatedControlID="StudyPeriodID" runat="server">Study Period:</asp:Label></td> <td width="200px"> <asp:RadioButtonList ID="StudyPeriodID" DataSourceID="odsStudyPeriods" SelectedValue='<%# GetRadioValue(Eval("StudyPeriodId")) %>' DataTextField="StudyPeriodLabel" DataValueField="StudyPeriodID" AppendDataBoundItems="true" runat="server" /> </td>
</tr>
</table>
<asp:Button ID="btnIntakeUpdate" CommandName="Update" CommandArgument="Intake" Text="Save" runat="server" CausesValidation="true"/> <asp:Button ID="btnIntakeCancel" CommandName="Cancel" Text="Cancel" runat="server" CausesValidation="false"/> <asp:Button ID="btnIntakeDelete" CommandName="Delete" CommandArgument="Intake" OnClientClick="if(!confirm('Delete this Intake from the profile?')) return false;" Text="Delete" runat="server" CausesValidation="false"/> </FormTemplate> </EditFormSettings></MasterTableView></telerik:RadGrid>protected void grdProfileIntakes_ItemDataBound(object sender, GridItemEventArgs e) { if ((e.Item is GridEditFormItem) && (!e.Item.IsInEditMode)) { GridEditFormItem editFormItem = (GridEditFormItem)e.Item; RadioButtonList studyPeriod = (RadioButtonList)editFormItem.FindControl("StudyPeriodID"); if (studyPeriod != null) { studyPeriod.ClearSelection(); } } }<asp:RadioButtonList ID="StudyPeriodID" DataSourceID="odsStudyPeriods" SelectedValue='<%# GetRadioValue(Eval("StudyPeriodId")) %>' DataTextField="StudyPeriodLabel" DataValueField="StudyPeriodID" AppendDataBoundItems="true" runat="server" />protected int GetRadioValue(object val) { if (val.ToString() == string.Empty) { return -1; } else { return CommonFunctions.IntOr0(val.ToString()); } }