using System.Collections.Generic;
using System.Web.UI.WebControls;
using DotNetNuke.Services.Authentication;
using DotNetNuke.Services.Localization;
using Guido.Modules.User;
using Guido.Modules.Scholen;
using Guido.Modules.Registration;
using Guido.Modules.Registration.Country;
using DotNetNuke.Security.Membership;
using DotNetNuke.Entities.Users;
using System.Web.Security;
using System.Configuration;
namespace DotNetNuke.Modules.Admin.Authentication
public partial class RegistrationUpdate : AuthenticationLoginBase
private SDcontroller SDC = new SDcontroller();
private MyUserController myUC = new MyUserController();
protected MyUserInfo uInfo { get; set; }
public override bool Enabled
return AuthenticationConfig.GetConfig(PortalId).Enabled;
protected void Page_Load(object sender, EventArgs e)
cmdDelete.OnClientClick = "var test = confirm('Bent u zeker dat u dit wilt verwijderen?'); return test;";
uInfo = myUC.getUser(UserInfo.UserID, UserInfo.UserID);
rblReedsAfgestudeerd.Items.Add(new ListItem{Text = Localization.GetString("rblOptie2.text", LocalResourceFile)});
rblReedsAfgestudeerd.Items.Add(new ListItem{Text = Localization.GetString("rblOptie1.text", LocalResourceFile) });
if (uInfo.SchoolTypeID != -1 && uInfo.StudentCityID != -1)
bindScholen(uInfo.SchoolTypeID, uInfo.StudentCityID);
if (uInfo.SchoolID != -1)
bindRichtingen(uInfo.SchoolID);
lblUsernameInfo.Text = uInfo.Username;
txtEmail.Text = uInfo.Email;
if (!(string.IsNullOrEmpty(uInfo.LastName)))
txtFamilienaam.Text = uInfo.LastName;
if (!(string.IsNullOrEmpty(uInfo.FirstName)))
txtVoornaam.Text = uInfo.FirstName;
if (!(string.IsNullOrEmpty(uInfo.Gender)))
lblGeslachtInfo.Text = uInfo.Gender;
if (!(string.IsNullOrEmpty(uInfo.BirthDate.ToString())))
lblGeboorteDatumInfo.Text = uInfo.BirthDate.Day.ToString() + "-" + uInfo.BirthDate.Month.ToString() + "-" + uInfo.BirthDate.Year.ToString();
if (!(string.IsNullOrEmpty(uInfo.Telephone)))
txtGSM.Text = uInfo.Telephone;
if (!(string.IsNullOrEmpty(uInfo.Street)))
txtAdres.Text = uInfo.Street;
if (!(string.IsNullOrEmpty(uInfo.PostalCode)))
txtPostcode.Text = uInfo.PostalCode;
if (!(string.IsNullOrEmpty(uInfo.City)))
txtGemeente.Text = uInfo.City;
if (!(string.IsNullOrEmpty(uInfo.Country)))
ddlLand.SelectedValue = uInfo.Country;
rblSchoolType.SelectedValue = uInfo.SchoolTypeID.ToString();
ddlStudentenStad.SelectedValue = uInfo.StudentCityID.ToString();
ddlSchool.SelectedValue = uInfo.SchoolID.ToString();
ddlRichting.SelectedValue = uInfo.CourseID.ToString();
rblAantalJaar.SelectedValue = uInfo.StudyYear.ToString();
chkOpKot.Checked = uInfo.Kot;
if (ddlRichting.Items.Count == 0)
pnlAantalJaar.Visible = false;
if (ddlSchool.Items.Count == 0)
pnlSchool.Visible = false;
if (ddlRichting.Items.Count == 0)
pnlRichting.Visible = false;
bool isNum = int.TryParse(uInfo.GraduationYear, out gradYear);
if (isNum == true && (gradYear < DateTime.Now.Year))
rblReedsAfgestudeerd.SelectedIndex = 1;
rblReedsAfgestudeerd.SelectedIndex = 0;
if (rblReedsAfgestudeerd.SelectedIndex == 1)
pnlOpKot.Visible = false;
pnlAantalJaar.Visible = false;
private void bindLanden()
CountryController countryC = new CountryController();
ddlLand.DataSource = countryC.GetCountries();
private void BindSchoolTypes()
rblSchoolType.DataSource = SDC.GetOLDSchoolTypesRegistration();
rblSchoolType.DataBind();
protected void ddlStudentenStad_IndexChanged_schoolTypeID_Index_Changed(object sender, EventArgs e)
if (rblSchoolType.SelectedIndex != -1)
int resSchoolType, resStudStad;
resSchoolType = Convert.ToInt32(rblSchoolType.SelectedValue);
if (string.IsNullOrEmpty(ddlStudentenStad.SelectedItem.Text))
resStudStad = Convert.ToInt32(ddlStudentenStad.SelectedValue);
bindScholen(resSchoolType, resStudStad);
bindRichtingen(Convert.ToInt32(ddlSchool.SelectedValue));
private void bindStudentenSteden()
ddlStudentenStad.DataSource = SDC.GetOLDSteden();
ddlStudentenStad.DataBind();
private void bindScholen(int schoolTypeID, int cityID)
pnlSchool.Visible = true;
ddlSchool.DataSource = SDC.GetOLDScholenByCity(schoolTypeID, cityID);
private void bindRichtingen(int schoolID)
pnlRichting.Visible = true;
ddlRichting.DataSource = SDC.GetOLDStudieRichtingenBySchool(schoolID);
bindAantalJaarRichting();
private void bindAantalJaarRichting()
if (!(string.IsNullOrEmpty(ddlRichting.SelectedValue))){
StudieRichting rInfo = SDC.GetOLDStudieRichting(Convert.ToInt32(ddlRichting.SelectedValue));
List<string> lstNumbers = new List<string>();
for (int i = 1; i <= rInfo.aantalJaar; i++)
lstNumbers.Add(i.ToString());
rblAantalJaar.DataSource = lstNumbers;
rblAantalJaar.DataBind();
protected void ddlSchool_IndexChanged(object sender, EventArgs e)
bindRichtingen(Convert.ToInt32(ddlSchool.SelectedValue));
protected void ddlRichting_IndexChanged(object sender, EventArgs e)
if (rblReedsAfgestudeerd.SelectedIndex == 0)
pnlAantalJaar.Visible = true;
bindAantalJaarRichting();
protected void cmdUpdate_OnClick(object sender, EventArgs e)
MembershipUser objUser = Membership.GetUser(UserInfo.Username);
string strPassword = objUser.GetPassword();
if (txtWW.Text == strPassword)
MyUserInfo uInfo = myUC.getUser(UserInfo.UserID, UserInfo.UserID);
if (pnlWWwelWijzigen.Visible)
UserController.ChangePassword(UserInfo, txtWW.Text, txtNieuwWW.Text);
lblVerkeerdeWijziging.Visible = false;
lblGoeieWijziging.Visible = true;
uInfo.Email = txtEmail.Text;
uInfo.LastName = txtFamilienaam.Text;
uInfo.FirstName = txtVoornaam.Text;
if (!(string.IsNullOrEmpty(txtGSM.Text)))
uInfo.Telephone = txtGSM.Text;
uInfo.Street = txtAdres.Text;
uInfo.PostalCode = txtPostcode.Text;
uInfo.City = txtGemeente.Text;
uInfo.Country = ddlLand.SelectedValue;
if (rblSchoolType.SelectedIndex != -1)
uInfo.SchoolTypeID = Convert.ToInt32(rblSchoolType.SelectedValue);
if (ddlStudentenStad.SelectedIndex != -1)
uInfo.StudentCityID = Convert.ToInt32(ddlStudentenStad.SelectedValue);
if (ddlSchool.SelectedIndex != -1)
uInfo.SchoolID = Convert.ToInt32(ddlSchool.SelectedValue);
if (ddlRichting.SelectedIndex != -1)
uInfo.CourseID = Convert.ToInt32(ddlRichting.SelectedValue);
if (pnlOpKot.Visible == true)
uInfo.Kot = chkOpKot.Checked;
uInfo.DisallowPostFromGuido = chkDisallowPostFromGuido.Checked;
uInfo.DisallowPostFromThird = chkAllowEmailFromGuido.Checked;
if (pnlAantalJaar.Visible == false)
uInfo.NextToLastYear = false;
uInfo.GraduationYear = "onbekend";
StudieRichting rInfo = SDC.GetOLDStudieRichting(Convert.ToInt32(ddlRichting.SelectedValue));
int objHuidigJaar = Convert.ToInt32(rblAantalJaar.SelectedValue);
uInfo.StudyYear = objHuidigJaar;
int jaarAfTeStuderen = DateTime.Now.Year + rInfo.aantalJaar - objHuidigJaar;
uInfo.GraduationYear = jaarAfTeStuderen.ToString();
if (objHuidigJaar == rInfo.aantalJaar)
if (objHuidigJaar == (rInfo.aantalJaar - 1))
uInfo.NextToLastYear = true;
uInfo.NextToLastYear = false;
uInfo.UpdateDate = DateTime.Now;
myUC.updateUser(UserInfo.UserID, uInfo);
lblVerkeerdeWijziging.Visible = true;
lblGoeieWijziging.Visible = false;
protected void cmdWWNietWelWijzigen_OnClick(object sender, EventArgs e)
if (pnlWWwelWijzigen.Visible)
pnlWWwelWijzigen.Visible = false;
pnlWWwelWijzigen.Visible = true;
protected void rblReedsAfgestudeerd_IndexChanged(object sender, EventArgs e)
if (rblReedsAfgestudeerd.SelectedIndex == 0 && ddlRichting.SelectedIndex >= 0)
pnlAantalJaar.Visible = true;
pnlAantalJaar.Visible = false;
pnlOpKot.Visible = false;