Liberation poll's documentation

Configure, insert and optionally adapt the following HTML form anywhere you want to run a liberation poll (or, if you are not directly running the liberation poll from the Web, open the visitor's browser using the GET method to encode the form in the URL).

HTML form

Code

<form method="POST" action="https://yooook.net/site/liberation_poll/" style="padding: 16px; background-image: url(https://yooook.net/file/liberation_poll/form-bg-audiovisual.gif); background-repeat: no-repeat; background-position: center center; width: 470px; height: 258px; color: black; font-family: sans-serif; font-size: 12px;">
<!-- CLIENT SIDE: method can be GET or POST -->

<input type="hidden" name="rallying_entity" value="USERNAME" />
<!-- OPTIONNAL: replace USERNAME by your yooook account username -->

<input type="hidden" name="title" value="TITLE" />
<!-- MANDATORY (max. length: 128): replace TITLE with the content's title -->

<input type="hidden" name="rallying_url" value="RALLYING_URL" />
<!-- OPTIONNAL (max. length: 1024): replace RALLYING_URL with the URL from where visitors are supposed to come from, and where they are supposed to be redirected after answering the liberation poll -->

<input type="hidden" name="explicit_url" value="EXPLICIT_URL" />
<!-- OPTIONNAL (max. length: 1024): we do our best to identify the content, even with mistyped, fuzzy, ambiguous, rare a.k.a. title, etc. But we are not responsible if it fails the identification process, no complaint can be registered about non-gathered answers. To counterbalance the risk to be forgotten you can help identifying the content by replacing EXPLICIT_URL with a common URL describing the content (e.g. English Wikipedia, IMDb, freedb, etc.). -->

<input type="hidden" name="group" value="audiovisual" />
<!-- MANDATORY (max. length: 128): group's value must be audiovisual (no other choice yet). -->

<input type="hidden" name="group_category" value="GROUP_CATEGORY" />
<!-- OPTIONNAL (max. length: 128): sometimes the same title is used for various types of content (or encapsulation level, e.g. serie->season->episode). Replacing GROUP_CATEGORY with one of the following values might help the identification of the content: tv_show|movie|serie|episode|season|documentary|album|track|picture. -->

<input type="hidden" name="author" value="AUTHOR" />
<!-- OPTIONNAL (max. length: 128): sometimes the same topic is treated by different authors under the same title. Replacing AUTHOR with the authors's name might help its identification. -->

<input type="hidden" name="year" value="YEAR" />
<!-- OPTIONNAL: sometimes the same topic is treated under the same title at different periods. Replacing YEAR with the content's date might help its identification. -->

<p style="margin: 0px; padding: 0px 0px 20px 0px; text-align: left; font-weight: bold; text-decoration: underline;" ><a style="color: #88185c;" target="_blank" href="https://yooook.net/">yooook</a> liberation poll for <em style="color: #287f8d; font-style: italic;" >TITLE</em></p>
<!-- CLIENT SIDE: replace TITLE with the content's title -->

<p style="margin: 0px; padding: 0px 0px 10px 0px; text-align: center; font-size: 15px; font-weight: bold;" >How much would you give to get the official right to:</p>

<table style="margin-right: auto; margin-left: auto;">
  <tr>
    <th style="padding: 2px 8px 8px 2px; text-align: right; font-weight: bold; line-height: 140%;">copy+distribute it (non-commercially)?<br/>
      <small><a style="color: gray; text-decoration: none;" target="_blank" href="http://creativecommons.org/licenses/by-nc-nd/3.0/">(under the terms of the
        <img style="border-width: 0px; vertical-align: -25%;" src="https://yooook.net/file/content/image/license/80x15_cc-by-nc-nd.png"> license)</a></small>
    </th>
    <td style="font-size: 18px; font-weight: bold; vertical-align: top;">
      <input style="width: 40px; font-size: 18px; font-weight: bold; margin-right: 2px; border: 1px solid #cccccc; padding: 1px 3px; text-align: center;" type="text" value="20" name="cc-by-nc-nd-question" />&euro;
    </td>
  </tr>
  <tr>
    <th style="padding: 2px 8px 8px 2px; text-align: right; font-weight: bold; line-height: 140%;">copy+distribute+remix it (non-commercially)?<br/>
      <small><a style="color: gray; text-decoration: none;" target="_blank" href="http://creativecommons.org/licenses/by-nc-sa/3.0/">(under the terms of the
        <img style="border-width: 0px; vertical-align: -25%;" src="https://yooook.net/file/content/image/license/80x15_cc-by-nc-sa.png"> license)</a></small>
    </th>
    <td style="font-size: 18px; font-weight: bold; vertical-align: top;">
      <input style="width: 40px; font-size: 18px; font-weight: bold; margin-right: 2px; border: 1px solid #cccccc; padding: 1px 3px; text-align: center;"  type="text" value="30" name="cc-by-nc-sa-question" />&euro;
    </td>
  </tr>
  <tr>
    <th style="padding: 2px 8px 8px 2px; text-align: right; font-weight: bold; line-height: 140%;">copy+distribute+remix it (even commercially)?<br/>
      <small><a style="color: gray; text-decoration: none;" target="_blank" href="http://creativecommons.org/licenses/by-sa/3.0/">(under the terms of the
        <img style="border-width: 0px; vertical-align: -25%;" src="https://yooook.net/file/content/image/license/80x15_cc-by-sa.png"> license)</a></small>
    </th>
    <td style="font-size: 18px; font-weight: bold; vertical-align: top;">
      <input style="width: 40px; font-size: 18px; font-weight: bold; margin-right: 2px; border: 1px solid #cccccc; padding: 1px 3px; text-align: center;"  type="text" value="40" name="cc-by-sa-question" />&euro;
    </td>
  </tr>
  <tr>
    <td style="text-align: right;" colspan="2">
      <input style="background-image: url(https://yooook.net/file/liberation_poll/submit.gif); background-color: tranparent; border-width: 0px; width: 82px; height: 30px;" value="" type="submit" name="submit" />
    </td>
  </tr>
</table>

</form>

Preview

yooook liberation poll for TITLE

How much would you give to get the official right to:

copy+distribute it (non-commercially)?
(under the terms of the license)
copy+distribute+remix it (non-commercially)?
(under the terms of the license)
copy+distribute+remix it (even commercially)?
(under the terms of the license)

API

You, as a Rallying Entity, can access simple information about the visitors' answers coming from your traffic. This information is made available to you in JSON by the API under the base URL: https://yooook.net/site/liberation_poll/?api_version=0.1a.

You need to be logged in in order to access the API. Thus, do not forget to enable cookies to allow authentication when accessing the API from scripts. It might also be a good idea to plan an auto-logging system at https://yooook.net/site/user/login/ in case your cookie's session expires. Otherwise you will receive a 403 error.

Checking an answer

Once a visitor answered a liberation poll, she/he is redirected to the rallying_url with the ID of the answer inserted as a GET variable (named yooook_liberation_poll_answer) into the URL. Thus, you can optionally check whether the answer has effectively been recorded or not via the API, providing the value of the answer's ID as the answer GET variable.

For example, assume a visitor is redirected to your website (e.g. mysite.com) with the URL http://mysite.com/a_cool_movie?yooook_liberation_poll_answer=fccc568e09b28a016394bb9585d3ccac. You can catch the answer's ID and ask about it at https://yooook.net/site/liberation_poll/?api_version=0.1a&answer=fccc568e09b28a016394bb9585d3ccac. If the answer hasn't been recorded (or has been deleted) you will receive a 404 error, otherwise you will receive JSON information confirming the answer as follows: {"rallying_url": "http://mysite.com/a_cool_movie", "datetime": "2009-12-26 18:23:33"}. If you wish you can then render the page to the visitor accordingly (whether the liberation poll answer is effective or not).

Answers' listing

You can list the recorded answers at https://yooook.net/site/liberation_poll/?api_version=0.1a&answers. By default it sends the 16 latest answers, but you can select the range you want by specifying the start:stop values.

Examples: