Polls


List of examples:

Polls

Creating a poll




// Creates a new poll object
PollInfo newPoll = new PollInfo();

// Sets the poll properties (the poll is global)
newPoll.PollDisplayName = "Color poll";
newPoll.PollCodeName = "ColorPoll";
newPoll.PollTitle = "Color poll";
newPoll.PollQuestion = "What is your favorite color?";
newPoll.PollResponseMessage = "Thank you for voting.";
newPoll.PollAllowMultipleAnswers = false;
newPoll.PollAccess = SecurityAccessEnum.AllUsers;

// Saves the new poll to the database
PollInfoProvider.SetPollInfo(newPoll);


> Back to list of examples

Updating a poll




// Gets the poll
// In this case, the poll is global. The . prefix in the code name parameter specifies a global poll.
PollInfo updatePoll = PollInfoProvider.GetPollInfo(".ColorPoll", 0);

if (updatePoll != null)
{
    // Updates the poll properties
    updatePoll.PollDisplayName = updatePoll.PollDisplayName.ToLower();

    // Saves the updated poll to the database
    PollInfoProvider.SetPollInfo(updatePoll);
}


> Back to list of examples

Updating multiple polls




// Gets all polls created for the current site
// Only returns polls created directly for the given site. Does not include global polls that are made available on the site.
var polls = PollInfoProvider.GetPolls().OnSite(SiteContext.CurrentSiteID);

// Loops through individual polls
foreach (PollInfo poll in polls)
{
    // Updates the poll properties
    poll.PollDisplayName = poll.PollDisplayName.ToUpper();

    // Saves the updated poll to the database
    PollInfoProvider.SetPollInfo(poll);
}


> Back to list of examples

Making a global poll available on a site




// Gets the global poll. The . prefix in the code name parameter specifies a global poll.
PollInfo poll = PollInfoProvider.GetPollInfo(".ColorPoll", 0);

if (poll != null)
{
    // Assigns the global poll to the current site
    PollSiteInfoProvider.AddPollToSite(poll.PollID, SiteContext.CurrentSiteID);
}


> Back to list of examples

Removing a global poll from a site




// Gets the global poll. The . prefix in the code name parameter specifies a global poll.
PollInfo poll = PollInfoProvider.GetPollInfo(".ColorPoll", 0);

if (poll != null)
{
    // Removes the global poll from the current site
    PollSiteInfoProvider.RemovePollFromSite(poll.PollID, SiteContext.CurrentSiteID);
}


> Back to list of examples

Deleting a poll




// Gets the poll
// In this case, the poll is global. The . prefix in the code name parameter specifies a global poll.
PollInfo deletePoll = PollInfoProvider.GetPollInfo(".ColorPoll", 0);

if (deletePoll != null)
{
    // Deletes the poll
    PollInfoProvider.DeletePollInfo(deletePoll);
}


> Back to list of examples

Poll answers

Adding answers to a poll




// Gets the poll
// In this case, the poll is global. The . prefix in the code name parameter specifies a global poll.
PollInfo poll = PollInfoProvider.GetPollInfo(".ColorPoll", 0);

if (poll != null)
{
    // Creates a new answer object
    PollAnswerInfo newAnswer = new PollAnswerInfo();

    // Sets the answer properties and assigns the answer to the specified poll
    newAnswer.AnswerPollID = poll.PollID;
    newAnswer.AnswerText = "My favorite color is blue.";
    newAnswer.AnswerEnabled = true;
    newAnswer.AnswerCount = 0;

    // Saves the poll answer to the database
    PollAnswerInfoProvider.SetPollAnswerInfo(newAnswer);
}


> Back to list of examples

Updating poll answers




// Gets the poll
// In this case, the poll is global. The . prefix in the code name parameter specifies a global poll.
PollInfo poll = PollInfoProvider.GetPollInfo(".ColorPoll", 0);

if (poll != null)
{
    // Gets the poll's answers
    var answers = PollAnswerInfoProvider.GetPollAnswers().WhereEquals("AnswerPollID", poll.PollID);

    // Loops through individual poll answers
    foreach (var answer in answers)
    {
        // Updates the answer properties
        answer.AnswerText = answer.AnswerText.ToUpper();

        // Saves the updated poll answer to the database
        PollAnswerInfoProvider.SetPollAnswerInfo(answer);
    }
}


> Back to list of examples

Deleting poll answers




// Gets the poll
// In this case, the poll is global. The . prefix in the code name parameter specifies a global poll.
PollInfo poll = PollInfoProvider.GetPollInfo(".ColorPoll", 0);

if (poll != null)
{
    // Gets the poll's first answer
    var deleteAnswer = PollAnswerInfoProvider.GetPollAnswers()
                                             .WhereEquals("AnswerPollID", poll.PollID)
                                             .TopN(1)
                                             .FirstObject;

    if (deleteAnswer != null)
    {                   
        // Deletes the poll answer
        PollAnswerInfoProvider.DeletePollAnswerInfo(deleteAnswer);
    }
}


> Back to list of examples