HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/RMourik/bassol.nl/CMS/CMSModules/Groups/Tools/Polls/Polls_Edit_Answer_List.aspx.cs
using System;
using System.Web.UI.WebControls;

using CMS.Helpers;
using CMS.Polls;
using CMS.Base;
using CMS.UIControls;
using CMS.ExtendedControls.ActionsConfig;


public partial class CMSModules_Groups_Tools_Polls_Polls_Edit_Answer_List : CMSGroupPollsPage
{
    protected int pollId = 0;
    protected int groupId = 0;


    protected void Page_Load(object sender, EventArgs e)
    {
        // Get poll id from querystring		
        pollId = QueryHelper.GetInteger("pollId", 0);
        groupId = QueryHelper.GetInteger("groupId", 0);

        if (CheckGroupPermissions(groupId, CMSAdminControl.PERMISSION_MANAGE, false))
        {
            HeaderAction newItem = new HeaderAction();
            newItem.Text = GetString("Polls_Answer_List.NewItemCaption");
            newItem.RedirectUrl = ResolveUrl("Polls_Edit_Answer_Edit.aspx?pollId=" + pollId.ToString() + "&groupId=" + groupId);
            CurrentMaster.HeaderActions.AddAction(newItem);

            HeaderAction reset = new HeaderAction();
            reset.Text = GetString("Polls_Answer_List.ResetButton");
            reset.OnClientClick = "return confirm(" + ScriptHelper.GetString(GetString("Polls_Answer_List.ResetConfirmation")) + ");";
            reset.CommandName = "btnReset_Click";
            CurrentMaster.HeaderActions.AddAction(reset);

            CurrentMaster.HeaderActions.ActionPerformed += new CommandEventHandler(HeaderActions_ActionPerformed);

            AnswerList.AllowEdit = true;
        }

        AnswerList.OnEdit += new EventHandler(AnswerList_OnEdit);
        AnswerList.OnCheckPermissions += new CMSAdminControl.CheckPermissionsEventHandler(AnswerList_OnCheckPermissions);
        AnswerList.PollId = pollId;
        AnswerList.GroupId = groupId;
    }


    protected override void OnPreRender(EventArgs e)
    {
        base.OnPreRender(e);

        if (!RequestHelper.IsPostBack())
        {
            AnswerList.ReloadData();
        }
    }


    private void AnswerList_OnCheckPermissions(string permissionType, CMSAdminControl sender)
    {
        // Check 'Manage' permission
        int groupId = 0;

        PollInfo pi = PollInfoProvider.GetPollInfo(AnswerList.PollId);
        if (pi != null)
        {
            groupId = pi.PollGroupID;
        }

        // Check permissions
        CheckPermissions(groupId, CMSAdminControl.PERMISSION_MANAGE);
    }


    /// <summary>
    /// AnswerList edit action handler.
    /// </summary>
    private void AnswerList_OnEdit(object sender, EventArgs e)
    {
        URLHelper.Redirect("Polls_Edit_Answer_Edit.aspx?answerId=" + AnswerList.SelectedItemID.ToString() + "&groupId=" + groupId);
    }


    /// <summary>
    /// Header action handler.
    /// </summary>
    /// <param name="sender">Sender</param>
    /// <param name="e">Event args</param>
    private void HeaderActions_ActionPerformed(object sender, CommandEventArgs e)
    {
        switch (e.CommandName.ToLowerCSafe())
        {
            case "btnreset_click": // Reset all answer counts
                // Check 'Manage' permission
                PollInfo pi = PollInfoProvider.GetPollInfo(AnswerList.PollId);
                int groupId = 0;

                if (pi != null)
                {
                    groupId = pi.PollGroupID;
                }

                // Check permissions
                CheckPermissions(groupId, CMSAdminControl.PERMISSION_MANAGE);

                if (pollId > 0)
                {
                    PollAnswerInfoProvider.ResetAnswers(pollId);
                    AnswerList.ReloadData();
                }
                break;
        }
    }
}