/
DisplayCourseInfo.ascx.cs
127 lines (115 loc) · 4.78 KB
/
DisplayCourseInfo.ascx.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
using System;
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.Users;
using Plugghest.Base2;
using DotNetNuke.Services.Localization;
namespace Plugghest.Modules.DisplayCourse
{
public partial class DisplayCourseInfo : PortalModuleBase
{
public int CourseId;
public string CultureCode;
public CourseContainer cc;
public bool IsAuthorized;
protected void Page_Load(object sender, EventArgs e)
{
string coursePageName = ((DotNetNuke.Framework.CDefault)this.Page).Title;
coursePageName = coursePageName.Replace("C", "");
CourseId = Convert.ToInt32(coursePageName);
CultureCode = (Page as DotNetNuke.Framework.PageBase).PageCulture.Name;
BaseHandler bh = new BaseHandler();
cc = new CourseContainer(CultureCode, CourseId);
IsAuthorized = ((this.UserId != -1 && cc.TheCourse.WhoCanEdit == EWhoCanEdit.Anyone) || cc.TheCourse.CreatedByUserId == this.UserId || (UserInfo.IsInRole("Administator")));
if (Request.Form["__EVENTTARGET"] == "btnWhoCanEdit")
{
// Fire event
btnWhoCanEdit_Click(this, new EventArgs());
}
if (Request.Form["__EVENTTARGET"] == "btnListed")
{
// Fire event
btnListed_Click(this, new EventArgs());
}
UserController uc = new UserController();
UserInfo u = uc.GetUser(PortalId, cc.TheCourse.CreatedByUserId);
hlCreatedBy.Text = u.DisplayName;
hlCreatedBy.NavigateUrl = DotNetNuke.Common.Globals.UserProfileURL(cc.TheCourse.CreatedByUserId);
lbltheCreatedOn.Text = cc.TheCourse.CreatedOnDate.ToString();
rblWhoCanEdit.Items.Clear();
rblWhoCanEdit.Items.Add("Anyone");
rblWhoCanEdit.Items.Add("Only me");
rblWhoCanEdit.SelectedValue = "Anyone";
switch (cc.TheCourse.WhoCanEdit)
{
case EWhoCanEdit.Anyone:
lbltheWhoCanEdit.Text = "Anyone";
break;
case EWhoCanEdit.OnlyMe:
lbltheWhoCanEdit.Text = "Only me";
rblWhoCanEdit.SelectedValue = "Only me";
break;
case EWhoCanEdit.NotSet :
lbltheWhoCanEdit.Text = "Not set";
break;
}
rblListed.Items.Clear();
rblListed.Items.Add(Localization.GetString("Listed.Text", this.LocalResourceFile));
rblListed.Items.Add(Localization.GetString("NotListed.Text", this.LocalResourceFile));
rblListed.SelectedIndex = 0;
if (cc.TheCourse.IsListed)
lblTheListed.Text = "Yes";
else
{
lblTheListed.Text = "No";
rblListed.SelectedIndex = 1;
}
if (cc.TheCourse.CreatedByUserId == this.UserId)
{
btnWhoCanEdit.Visible = true;
btnListed.Visible = true;
}
cc.LoadDescription();
if (cc.TheDescription != null)
lbltheDespription.Text = cc.TheDescription.Text;
else
lbltheDespription.Text = "-";
if(cc.TheCourse.CreatedByUserId == this.UserId || UserInfo.IsInRole("Administator"))
{
btnDelete.Visible = true;
}
}
protected void btnDelete_Click(object sender, EventArgs e)
{
cc.TheCourse.IsDeleted = true;
cc.UpdateCourseEntity();
Response.Redirect(DotNetNuke.Common.Globals.NavigateURL(PortalSettings.HomeTabId));
}
protected void btnWhoCanEdit_Click(object sender, EventArgs e)
{
string commandArgument = !string.IsNullOrEmpty(Request.Form["__EVENTARGUMENT"])?Request.Form["__EVENTARGUMENT"]:string.Empty;
switch (commandArgument)
{
case "Anyone":
cc.TheCourse.WhoCanEdit = EWhoCanEdit.Anyone;
break;
case "Only me":
cc.TheCourse.WhoCanEdit = EWhoCanEdit.OnlyMe;
break;
}
cc.UpdateCourseEntity();
}
protected void btnListed_Click(object sender, EventArgs e)
{
if (rblListed.SelectedIndex == 0)
cc.TheCourse.IsListed = true;
else
cc.TheCourse.IsListed = false;
cc.UpdateCourseEntity();
}
}
}