/// <summary> /// Event handler that gets called when the set rights button is clicked. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ChangeMemberRights(object sender, EventArgs e) { Rights rights = GetSelectedMemberRights(); foreach (string memberID in CheckedMembers.Keys) { try { web.SetMemberRights(iFolderID, memberID, rights); } catch (Exception ex) { string memberName = CheckedMembers[memberID] as String; TopNav.ShowError(String.Format(GetString("ERRORCANNOTCHANGERIGHTS"), memberName), ex); return; } } // Clear the checked members. CheckedMembers.Clear(); MembersChecked = false; // Disable the action buttons. EnableMemberActionButtons = EnableOwnerActionButton = false; // Rebind the data source with the new data. GetiFolderMembers(); }
/// <summary> /// Event handler that gets called when the delete member button is clicked. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void DeleteiFolderMembers(Object sender, EventArgs e) { foreach (string memberID in CheckedMembers.Keys) { try { web.RemoveMember(iFolderID, memberID); } catch (Exception ex) { string memberName = CheckedMembers[memberID] as String; TopNav.ShowError(String.Format(GetString("ERRORCANNOTDELETEMEMBERS"), memberName), ex); return; } } // Clear the checked members. CheckedMembers.Clear(); MembersChecked = false; // Disable the action buttons. EnableMemberActionButtons = EnableOwnerActionButton = false; // Rebind the data source with the new data. GetiFolderMembers(); }
/// <summary> /// Event handler that gets called when the all admins checkbox is checked. /// </summary> /// <param name="source"></param> /// <param name="e"></param> protected void OnAllAdminsChecked(object source, EventArgs e) { CheckBox checkBox = source as CheckBox; foreach (DataGridItem item in AdminList.Items) { // In order to be checked, the row must not be empty. string memberID = item.Cells[0].Text; if (memberID != " ") { if (!IsSuperAdmin(memberID)) { if (checkBox.Checked) { switch (ActiveAdminTab) { case ListDisplayType.GroupAdmins: DeleteButton.Enabled = (CheckedMembers.Count == 1); EditButton.Visible = true; EditButton.Enabled = (CheckedMembers.Count == 1); break; case ListDisplayType.PrimaryAdmins: default: CheckedMembers[memberID] = item.Cells[4].Text; DeleteButton.Enabled = (CheckedMembers.Count > 0); EditButton.Visible = false; break; } } else { switch (ActiveAdminTab) { case ListDisplayType.GroupAdmins: DeleteButton.Enabled = (CheckedMembers.Count == 1); EditButton.Visible = true; EditButton.Enabled = (CheckedMembers.Count == 1); break; case ListDisplayType.PrimaryAdmins: default: // Remove this member from the list. CheckedMembers.Remove(memberID); DeleteButton.Enabled = (CheckedMembers.Count > 0); EditButton.Visible = false; break; } } } } } // See if there are any checked members. DeleteButton.Enabled = (CheckedMembers.Count > 0); // Rebind the data source with the new data. GetiFolderAdminList(); }
/// <summary> /// Event handler that gets called when the change owner button is clicked. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ChangeOwner(object sender, EventArgs e) { // Get the checked user. There must only be one. IEnumerator enumerator = CheckedMembers.Keys.GetEnumerator(); if (enumerator.MoveNext()) { string memberID = enumerator.Current as string; try { //check for no of ifolders per user limit policy for the user who is taking up Ownership if (web.GetiFolderLimitPolicyStatus(memberID) != 1) { TopNav.ShowError(GetString("ERRORIFOLDERTRANSFEREXCEPTION")); return; } //Check for the location of this ifolder, if location is not on this server then change the URL iFolderLocation = web.GetiFolderLocation(iFolderID); UriBuilder remoteurl = new UriBuilder(iFolderLocation); remoteurl.Path = (new Uri(web.Url)).PathAndQuery; web.Url = remoteurl.Uri.ToString(); web.SetiFolderOwner(iFolderID, memberID, (AdoptButton.Visible && !AdoptButton.Enabled)); } catch (Exception ex) { TopNav.ShowError(GetString("ERRORCANNOTCHANGEOWNER"), ex); return; } // Show the new owner in the page. Owner.Text = CheckedMembers[memberID] as string; Owner.NavigateUrl = String.Format("UserDetails.aspx?id={0}", memberID); //if orphaned property was removed then the buttons are changed string IsOrphaned = web.IsOrphanediFolder(iFolderID); if (IsOrphaned.Equals("")) { Orphan.Text = GetString("NO"); AdoptButton.Text = GetString("ADOPT"); AdoptButton.Visible = false; } } // Clear the checked members. CheckedMembers.Clear(); MembersChecked = false; // Disable the action buttons. EnableMemberActionButtons = EnableOwnerActionButton = false; //string ifolderName = GetiFolderDetails(); // Rebind the data source with the new data. GetiFolderMembers(); }
/// <summary> /// Event handler that gets called when the check all members checkbox is selected. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void AllMembersChecked(object sender, EventArgs e) { CheckBox checkBox = sender as CheckBox; string memberID = null; foreach (DataGridItem item in iFolderMemberList.Items) { // In order to be checked, the row must not be empty or must not be // the owner of the ifolder. memberID = item.Cells[0].Text; if ((memberID != " ") && (item.Cells[1].Text != "True")) { if (checkBox.Checked) { CheckedMembers[memberID] = item.Cells[4].Text; } else { // Remove this member from the list. CheckedMembers.Remove(memberID); } } } string PossibleOwner = null; if (CheckedMembers.Count == 1) { // before enabling owner button lets get the memberid to check if he can be owner or not foreach (string tmpmemberID in CheckedMembers.Keys) { PossibleOwner = tmpmemberID; } } // See if there are any checked members. EnableMemberActionButtons = ((CheckedMembers.Count > 0) && (!AdoptButton.Visible || AdoptButton.Enabled) && MemberRightsChangeAllowed); EnableOwnerActionButton = ((CheckedMembers.Count == 1) && GetOwnerButtonActionStatus(PossibleOwner) && (!AdoptButton.Visible && AdoptButton.Enabled) && MemberRightsChangeAllowed); MembersChecked = checkBox.Checked; // Rebind the data source with the new data. GetiFolderMembers(AdoptButton.Visible && !AdoptButton.Enabled && AdoptButtonClicked); }
/// <summary> /// Event handler that gets called when an ifolder member is checked. /// </summary> /// <param name="source"></param> /// <param name="e"></param> protected void MemberChecked(object source, EventArgs e) { // Get the data grid row for this member. CheckBox checkBox = source as CheckBox; DataGridItem item = checkBox.Parent.Parent as DataGridItem; string memberID = item.Cells[0].Text; if (memberID != " ") { // Member is being added. if (checkBox.Checked) { CheckedMembers[memberID] = item.Cells[4].Text; } else { // Remove this member from the list. CheckedMembers.Remove(memberID); } } string PossibleOwner = null; if (CheckedMembers.Count == 1) { // before enabling owner button lets get the memberid to check if he can be owner or not foreach (string tmpmemberID in CheckedMembers.Keys) { PossibleOwner = tmpmemberID; } } // See if there are any checked members. EnableMemberActionButtons = ((CheckedMembers.Count > 0) && (!AdoptButton.Visible || AdoptButton.Enabled) && MemberRightsChangeAllowed); EnableOwnerActionButton = (CheckedMembers.Count == 1 && GetOwnerButtonActionStatus(PossibleOwner) && !(AdoptButton.Visible && AdoptButton.Enabled) && MemberRightsChangeAllowed); }
/// <summary> /// Event handler that gets called when the delete admin button is clicked. /// </summary> /// <param name="source"></param> /// <param name="e"></param> protected void OnDeleteButton_Click(object source, EventArgs e) { switch (ActiveAdminTab) { case ListDisplayType.GroupAdmins: string op = "deletesecondaryadmin"; foreach (string memberID in CheckedMembers.Keys) { Response.Redirect( String.Format( "MemberSelect.aspx?op={0}&secondaryadminid={1}", op, memberID)); // delete secondary admin can be done only for one at a time //return; return; } break; case ListDisplayType.PrimaryAdmins: default: foreach (string memberID in CheckedMembers.Keys) { try { iFolderUser user = web.GetUser(memberID); if (user.MemberRights == Rights.Admin) { web.RemoveAdministrator(memberID); } } catch (Exception ex) { string name = CheckedMembers[memberID] as String; TopNav.ShowError(String.Format(GetString("ERRORCANNOTREMOVEADMIN"), name), ex); return; } } // Clear the checked members. CheckedMembers.Clear(); AllAdminsCheckBox.Checked = false; // Disable the action buttons. DeleteButton.Enabled = false; // Rebind the data source with the new data. GetiFolderAdminList(); break; } // Clear the checked members. //CheckedMembers.Clear(); //AllAdminsCheckBox.Checked = false; // Disable the action buttons. //DeleteButton.Enabled = false; // Rebind the data source with the new data. //GetiFolderAdminList(); }
/// <summary> /// Event handler that gets called when the add admin button is clicked. /// </summary> /// <param name="source"></param> /// <param name="e"></param> //protected void OnAddSecButton_Click( object source, EventArgs e ) //{ //switch(ActiveAdminTab) //{ // case ListDisplayType.GroupAdmins: // Response.Redirect( "MemberSelect.aspx?op=addsecondaryadmin", true ); // break; // case ListDisplayType.AllAdmins: // default: // Response.Redirect( "MemberSelect.aspx?op=addadmin", true ); // break; //} //} /// <summary> /// Event handler that gets called when the admin checkbox is checked. /// </summary> /// <param name="source"></param> /// <param name="e"></param> protected void OnAdminChecked(object source, EventArgs e) { // Get the data grid row for this member. CheckBox checkBox = source as CheckBox; DataGridItem item = checkBox.Parent.Parent as DataGridItem; string memberID = item.Cells[0].Text; if (memberID != " ") { // Member is being added. if (checkBox.Checked) { switch (ActiveAdminTab) { case ListDisplayType.GroupAdmins: //foreach( DataGridItem itemcb in AdminList.Items ) //{ //itemcb.Cells[ 1 ].Enabled = false; //} //checkBox.Enabled = true; //checkBox.Checked = true; CheckedMembers[memberID] = item.Cells[4].Text; EditButton.Visible = true; EditButton.Enabled = (CheckedMembers.Count == 1); DeleteButton.Enabled = (CheckedMembers.Count == 1); break; case ListDisplayType.PrimaryAdmins: default: CheckedMembers[memberID] = item.Cells[4].Text; EditButton.Visible = false; DeleteButton.Enabled = (CheckedMembers.Count > 0); break; } //CheckedMembers[ memberID ] = item.Cells[ 4 ].Text; } else { // Remove this member from the list. switch (ActiveAdminTab) { case ListDisplayType.GroupAdmins: //foreach( DataGridItem itemcb in AdminList.Items ) //{ // itemcb.Cells[ 1 ].Enabled = true; //} CheckedMembers.Remove(memberID); DeleteButton.Enabled = (CheckedMembers.Count == 1); EditButton.Visible = true; EditButton.Enabled = (CheckedMembers.Count == 1); break; case ListDisplayType.PrimaryAdmins: default: // See if there are any checked members. CheckedMembers.Remove(memberID); DeleteButton.Enabled = (CheckedMembers.Count > 0); EditButton.Visible = false; break; } //CheckedMembers.Remove( memberID ); } } // See if there are any checked members. //DeleteButton.Enabled = ( CheckedMembers.Count > 0 ); }
/// <summary> /// Gets whether the admin is checked. /// </summary> /// <param name="id"></param> /// <returns></returns> protected bool GetAdminCheckedState(object id) { return(CheckedMembers.ContainsKey(id) ? true : false); }
/// <summary> /// Returns the checked state for the specified member. /// </summary> /// <param name="memberID">ID of the member</param> /// <returns>True if user is to be added.</returns> protected bool GetMemberCheckedState(Object memberID) { return(CheckedMembers.ContainsKey(memberID) ? true : false); }