Easy Poll - Website Poll Manager
- Requirements
- Configuration
- Installation
- Linux/Unix/Mac Servers
- Common Installation Problems on Linux/Unix/Mac Servers
- Windows Servers
- Common Installation Problems on Windows Servers
- License and Disclaimer
- Getting Started / Creating Polls
- Traditional Code
- Compact XML Code
- Editing Polls
- Deleting Polls
- Displaying Poll Results
- Changing your password
Requirements
This script requires Perl on either a UNIX or WINDOWS server. All you need is a cgi-bin
Configuration
This Script requires no Configuration, however if you have trouble installing the Script, you can hard code some values in the _key.cgi file.
Installation - Linux/Unix/Mac Servers
[script] refers to the first portion of the name of the CGI Scripts you purchased.
- Setting the Path to Perl. Open all CGI Scripts (except [script]_key.cgi) in a Plain Text Editor and make sure the first line of the CGI Script is the Path Perl for your server. Most Users can skip this step being the default Path to Perl shipped in the CGI Script is very common.
NB: if you do not you a Plain Text editor such as Windows NotePad or Mac Textedit (in Plain Text Mode), your Text/HTML editor will add extraneous code to the CGI Script when you save it which will result in a server 500 Error.
- Upload all CGI Scripts to your cgi-bin or any cgi enabled
directory and CHMOD
all the CGI Scripts to 755. It is imperative that you upload (transfer) all CGI Scripts to your server in ASCII mode.
If you forget to CHMOD all CGI Scripts to 755, Step 3 will
yield a Server 500 Error.
If you do NOT upload (transfer) all CGI Scripts to your
server in ASCII mode, Step 3 will yield a Server 500 Error.
- Load your Browser, point it to the [script]_setup.cgi file and follow the on-screen instructions for installation. For example, in your browser, type :
http://www.yourdomainname.com/cgi-bin/[script]_setup.cgi
- Enter a Username and Password. This will be your Username and Password for the Administration Section. If the Setup Routine is successfully processed a link to the Administration Section will appear on the resulting page. Click the link to access the Administration Section with the Username and Password you just entered in the Setup Script.
Should you encounter any Permission problems with the Setup Routine follow the instructions returned by the Script.
Upon successful completion of the Setup Routine the [script]_setup.cgi_setup.cgi script attempts to delete itself. This ensures the Setup Routine can not be repeated by another Surfer who would effectively reset your Administration Section Username and Password. Manually delete the [script]_setup.cgi
CGI Script you uploaded if the Setup Routine could not automatically
delete it (Refresh your FTP directory listing to check).
Should you ever forget your Administration Section Username and Password you can repeat this Step to set a new Username and Password.
Common Installation Problems - Linux/Unix/Mac Servers
NB: Shared Secure Servers, VPS, SBOX and Free Servers.
- Server 500 Error. This most often occurs because Step 2 was not followed precisely. Make sure the CGI Scripts you are uploaded are CHMOD to 755, the folder the CGI Scripts reside in is also CHMOD to 755, and the CGI Scripts were transferred in ASCII Mode. Auto-Detect only detects the extensions you specify in your FTP client's Settings.
- I can initially load the Setup Script and punch in my Username and Password, but when I submit the Form, I receive 404 Error Page or an alternate Error Page stating "Page Cannot be found".
This suggests your Server is operated by a very nervous System Administrator employing strict security measures, you're using a Shared Secure Server which dynamically sets your domain name to something other than the a standard Top Level Domain (www.yourdomainname.com) or sbox is employed by your server.
In any case, open [script]_key.cgi in Plain Text Editor (not a WYSIWYG Text Editor, nor a Rich HTML Editor) and enter the URL to the folder you uploaded the CGI Scripts to in the $SecureServer Variable. If you uploaded the CGI Scripts to your cgi-bin, then you'd set the following:
$SecureServer = "http://www.yourdomainname.com/cgi-bin";
Do NOT enter the CGI Script name, do NOT enter a trailing slash. After setting the Variable refresh the Setup Routine's Page that asks you to enter your Username and Password. Unless you refresh the initial Setup Page, the Form's URL will not be updated to reflect your Variable value.
- I cannot find the correct path to my WebSpace or the required Data Directories and/or Password file cannot be created.
You need to find that Path. Ask your host, or Download a copy of our free E-Vars CGI Script and install it on your server. CHMOD it to 755 then load it in your Web Browser which will print your Server's environment variables and other useful information. Determine your Server's Document_ROOT or Absolute Server Path to the folder your home page (index.html) resides in. You may need to append "/www" or "/httpdocs" to your Document_ROOT or Absolute Server Path to complete the path to your Writable WebSpace.
Once you've determined your Absolute Server Path, open [script]_key.cgi in Plain Text Editor (not a WYSIWYG Text Editor, nor a Rich HTML Editor) and set the $DefaultData Variable. For example:
$DefaultData = "/var/username/www/htdocs";
Finally, on some Server's it's necessary to CHMOD the folder just above your WebSpace to 777 granting permission to the CGI Script to create the Required Directories at WebSpace Level. In the example above, the "htdocs" folder would need to have it's permissions set to 777.
- We offer a very reasonably priced Custom Installation Service. We'll Setup the CGI Script for you and send you the Log in details which you can update at your own leisure. If we cannot successfully Setup the CGI Script we will refund both the Installation fee and the purchase price of the CGI Script. To Order Custom Installation, please fill in our Secure Installation Order Form.
Installation - Windows Servers
[script] refers to the first portion of the name of the CGI Scripts you purchased.
- Your Windows Server may not execute CGI scripts even if Perl is Supported. Many Server Administrators do not modify the Registry to accommodate Scripts with a .cgi extension. In this case, contact us for a copy PL Version.
- Setting the Path to Perl. Your Server may or may not require the Path to Perl. It's highly likely you don't need it, and you can ignore this Step. However you may want to check with your Host if you can not load the Setup Script in your web Browser.
NB: if you do not you a Plain Text editor such as Windows NotePad or Mac Textedit (in Plain Text Mode), your Text/HTML editor will add extraneous code to the CGI Script when you save it which will result in a server 500 Error.
- Upload all CGI Scripts to your cgi-bin or any cgi enabled directory. It is imperative that you upload (transfer) all CGI Scripts to your server in ASCII mode.
If you do NOT upload (transfer) all CGI Scripts to your
server in ASCII mode, Step 3 will yield a Server 500 Error.
- Load your Browser, point it to the [script]_setup.cgi file and follow the on-screen instructions for installation. For example, in your browser, type :
http://www.yourdomainname.com/cgi-bin/[script]_setup.cgi
- Enter a Username and Password. This will be your Username and Password for the Administration Section. If the Setup Routine is successfully processed a link to the Administration Section will appear on the resulting page. Click the link to access the Administration Section with the Username and Password you just entered in the Setup Script.
Should you encounter any Permission problems during the Setup Routine, you need to contact your Host and request "Full Read/Write Permissions" be applied to at least one folder on your Server. Many Servers have at least one writable folder, often named "database". See Common Installation Problems below for more information.
Upon successful completion of the Setup Routine the [script]_setup.cgi_setup.cgi script attempts to delete itself. This ensures the Setup Routine can not be repeated by another Surfer who would effectively reset your Administration Section Username and Password. Manually delete the [script]_setup.cgi
CGI Script you uploaded if the Setup Routine could not automatically
delete it (Refresh your FTP directory listing to check).
Should you ever forget your Administration Section Username and Password you can repeat this Step to set a new Username and Password.
Common Installation Problems - Windows Servers
NB: Shared Secure Servers, VPS, SBOX and Free Servers.
- Server 500 Errors are usually misleading on Windows Servers. It seems to be the default error page for just about every error. Make sure you typed in the correct Website Address (URL) to the CGI Scripts on your server. Make sure the CGI Scripts were transferred in ASCII Mode. Auto-Detect only detects the extensions you specify in your FTP client's Settings.
- I can initially load the Setup Script and punch in my Username and Password, but when I submit the Form, I receive 404 Error Page or an alternate Error Page stating "Page Cannot be found".
This suggests your Server is operated by a very nervous System Administrator employing strict security measures, you're using a Shared Secure Server which dynamically sets your domain name to something other than the a standard Top Level Domain (www.yourdomainname.com) or sbox is employed by your server.
In any case, open [script]_key.cgi in Plain Text Editor (not a WYSIWYG Text Editor, nor a Rich HTML Editor) and enter the URL to the folder you uploaded the CGI Scripts to in the $SecureServer Variable. If you uploaded the CGI Scripts to your cgi-bin, then you'd set the following:
$SecureServer = "http://www.yourdomainname.com/cgi-bin";
Do NOT enter the CGI Script name, do NOT enter a trailing slash. After setting the Variable refresh the Setup Routine's Page that asks you to enter your Username and Password. Unless you refresh the initial Setup Page, the Form's URL will not be updated to reflect your Variable value.
- I cannot find the correct path to my WebSpace or the required Data Directories and/or Password file cannot be created.
You need to find that Path. Ask your host, or Download a copy of our free E-Vars CGI Script and install it on your server. You will need to rename the E-Vars CGI Script to "myserver.pl" if your Server only executes Scripts with .pl extensions. Upload it to your cgi-bin or any cgi executable folder then load it in your Web Browser which will print your Server's environment variables and other useful information. Determine your Server's Document_ROOT or Absolute Server Path to the folder your home page (index.html) resides in. You may need to append "\\www" or "\\httpdocs" to your Document_ROOT or Absolute Server Path to complete the path to your Writable WebSpace.
Once you've determined your Absolute Server Path, open [script]_key.cgi in Plain Text Editor (not a WYSIWYG Text Editor, nor a Rich HTML Editor) and set the $DefaultData Variable. Be sure to separate folder names with two backslashes, not one slash. For example:
$DefaultData = "C:\\html\\username\\htdocs";
- We offer a very reasonably priced Custom Installation Service. We'll Setup the CGI Script for you and send you the Log in details which you can update at your own leisure. If we cannot successfully Setup the CGI Script we will refund both the Installation fee and the purchase price of the CGI Script. To Order Custom Installation, please fill in our Secure Installation Order Form.
License and Disclaimer
The following constitutes an agreement between you (the end user/purchaser) and us, PerlScripts JavaScripts.com (a wholly owned subsidiary of InterActive Scripts). By purchasing and using our software, products or services you agree to and accept the licensing agreement stated on this page. All documentation, goods and services are provided "as is" and without warranty. We hereby disclaim all warranties relating to any documentation, goods and services, whether express or implied, including warranties of suitability. In no event shall we be liable for any direct, indirect or consequential damages resulting in loss of revenue or data, incurred by you or any of our products, information or services. We reserve the right to revise the terms and conditions stated on this page at any time without notice. You agree to be bound by such revisions, and you are encouraged to periodically revisit this page to review the then current terms and conditions.
We grant you the right to use one copy of the software, product or service purchased, for testing and familiarization purposes. We also grant you the right to implement, install and use one copy of the software, product or service purchased on a single web site domain for use by one entity once the evaluation copy is removed / deleted.
By purchasing a product you are also subscribing to our periodic newsletter which will notify you of new software releases, updates and special offers. In accordance with United States and International anti-spamming laws, an unsubscribe link that removes you from all future mailings will accompany each e-mail notification.
For taxation purposes, we must keep accurate transaction and installation records. At the time of software installation, you will be asked to enter information such as your web site's domain name and your product's serial number. This information is used to validate copies of our software.
We reserve all rights. Written permission must be obtained from us before you may copy, reproduce, publish, modify or alter in any way, any media, software, documents or products, in part or in whole, contained within our web site or traded by us. All media, software, documents and products are the property of PerlScriptsJavaScripts.com. We retain ownership and copyright of software products purchased from us and all copies of the software. As a licensee you may make one copy of the software product solely for backup purposes. Removal of any copyright messages, publicly visible or otherwise without prior written permission from us is expressly forbidden. Unauthorized reproduction of any of our software, documents or products is prohibited by Federal and International laws and subject to criminal prosecution.
Any use of software and accompanying documentation on our Web site is subject to the terms of a software license agreement between you and us. You must read this license agreement in it's entirety and agree to it's terms prior to installing or using the software. All ownership rights and rights not implied are reserved. We reserve the right to revoke these permissions and terminate this agreement at anytime or at it's own discretion without reasonable notice. We reserve the right temporarily or permanently discontinue any software product or the support associated the product at anytime or at it's own discretion without reasonable notice. You agree and accept that we shall not be liable to you or to any third party for any such cessation.
You agree that any issue or dispute that may arise between PerlScriptsJavaScripts.com and yourself in respect to this web site or it's goods or services will be resolved and governed by and within the courts and laws of Melbourne Australia. If your local laws do not allow for such an agreement, you must delete all copies of products supplied to you by us and you are hereby notified of the termination of this license.
Getting Started / Creating Polls
Upon successful installation of Easy Poll, you'll be presented with a link to the Admin section. Log in to the admin section and you'll see a current list of active polls (if you have created any). To create a new Poll, click on the "Create new" link.
The only required fields are :
Reference Name
Poll Question
Answers
Click on each of the gray colored links for instant information about each available option. Once you have entered your Question, answers and preferred settings for this Poll, scroll to the very bottom of the page and press the large button labelled "Create Poll". These Settings apply to dynamic polls which can be viewed or linked to from your website.
The Public List of your website Polls can be accessed by clicking the link in Easy Poll's control panel. Easy Poll prints a list of currently available Polls on demand. Your Public List of Polls can be located at :
http://www.YOURDMNE.com/cgi-bin/epoll/vote.cgi?list
assuming you installed Easy Poll in a directory named /cgi-bin/epoll. As soon as you paste the code in to a web page and upload it to your server, the Polling booth is live and ready for use. Alternatively you can link to your copy of the Public List from your Home Page and let your visitors cast their Votes in their chosen Polls. The Public List renders it's look based on your Settings.
Each website poll can be directly accessed from the Public List or you can place a direct link to your poll on any web page by grabbing it from the Public List. Easy Poll's Settings page also has an option to ""Link to Results from Public List. If set to "Yes" the "Results" column will be printed on the Public List page.
The page will reload and your Poll's Settings will have been stored to the server. You can now copy and paste the generated code into any of your web documents and begin taking votes.
To fetch the code for an existing Poll, from the Summary page, click the poll's name in the Name - Get Code column.
The generated code for your Poll form may be modified to change the visible appearance of your Polling station, however you MUST retain all form field names and values as generated. There are types of polling forms generated.
- Traditional Code
This poll form is a conventional form which when submitted by your visitors will either pop the poll results in a new window (see FAQ for details on how to do this) or by default, redirect the user to the results page or your chosen redirect URL.
- Compact XML Code
This poll form uses an XML HTTP request supported by all modern major browsers. Should a browser not support it, the form will act as described in the "Traditional Code" section. The purpose of this form is to show the visitor the results of the poll without them leaving the page they're currently on (your poll form's page). A <div> tag is used, which acts like a web page in it's own right. The Voting form is displayed within the <div> tag and when submitted, the results are also displayed within the same <div> tag.
Because of the nature of what is essentially a down-sized web page, you will want to keep the content (poll results) to a size which can be accommodated. To do this, you can include configuration settings inside the poll form. That is, each of your poll forms, can dictate the size and content of the results shown. The available options are as follows, examples for each are shown below :
- id - this is a required field and must be in each Voting form. The generated code will always include this field.
- xml - this field indicates the poll form is a compact form and as such the results should not print the Header and Footer defined in Easy Poll's "Settings".
- question - The poll's question can be redefined or shortened so that it does not use up much space in the results.
- shownums - can be set to no or 0 (zero) so only percentages are printed rather than the number of votes and percentages.
- redirect - can be used to fetch an existing website page into the results <div>, must begin with http:// or https://
- rTab - set the results table's background color, can be a color name such as red or a hex code such as #ff0000
- rHead - set the results table's background color for the first row (where the question is displayed), can be a color name such as red or a hex code such as #ff0000
- rTabWidth - set the width of the results table, can either be an integer or percentage. It populates the table's width attribute, not the style.
- barcolors - set the colors for each bar as a comma separated list for the poll results table, can be color names such as red, blue, green or hex codes such as #ff0000, #0000ff, #008800
- face - set the font type or family for the poll results table, populates the font's style attribute
- fsize - set the font size for the poll results table, populates the font's style attribute
- color1 - set the font color for the poll results table, can be a color name such as red or a hex code such as #ff0000, populates the font's style attribute
All of the above poll configuration settings will take precedence over the settings defined when you created the form. This enables you to display the same poll results with different settings in different pages or <div> tags. Here's an example of how to over-ride the server defined poll settings using your poll form.
<form action="..../vote.cgi?cast=1171862184" method="post" onsubmit="return castVote_1171862184(this);">
<input type="Hidden" name="id" value="1171862184">
<input type="Hidden" name="xml" value="1">
<input type="Hidden" name="shownums" value="No">
<input type="Hidden" name="rTabWidth" value="150">
<input type="Hidden" name="rTab" value="#06FF00">
<input type="Hidden" name="barcolors" value="red, blue, #06FF00">
<input type="Hidden" name="face" value="Arial">
<input type="Hidden" name="fsize" value="11px">
<input type="Hidden" name="color1" value="black">
.....
</form>
The same can be applied to the JavaScript tag used to display poll results on any web page. The tag generated for displaying results may look like the following :
<script language="JavaScript" src="..../vote.cgi?view=1052073423&js=1"></script>
But can be modified to display your poll results with a different look, as such :
<script language="JavaScript" src="..../vote.cgi?view=1052073423&js=1&xml=1&shownums=no&rTabWidth=300&fsize=11px"></script>
Note how each setting and it's definition (key/value pair) is separated with an & and an = sign. As in &xml=1
Editing Polls - Managing Polls
To edit and existing poll, from the Summary page, click the relevant Edit link. When editing existing polls, you'll see each answer's voting figures left of each answer. You have the ability to update or modify the Poll's existing answers from this screen. One additional answer field is always available on the Edit screen enabling the posting of new answers to the Poll.
To remove answers from the Poll, blank out the text field and save the Form. If you modify any of a Poll's Settings, the Public List of Polls and program generated polls are auto-updated, however the Poll code embedded in to your Static HTML pages must be manually updated by you. The exception to the rule applies to the following options : URL to thank you page; Unique Votes; Show Vote Numbers; These are controlled on the Server Side.
Resetting all figures to zero for any of your existing Polls is achieved from the Summary page by clicking desired Reset link.
Deleting Polls
Clicking the Delete links on the Summary page will permanently delete the selected Poll. All votes and data recorded pertinent to that Poll will be permanently erased. You will receive a JavaScript confirmation box asking if you're sure you would like to delete the Poll. If you press "OK" or the space bar, the poll will be deleted.
Displaying Poll Results
The code for Poll Tallies can be acquired in one of two ways.
1. From the Summary page click on the name of the Poll, or
2. After creating (or editing a Poll's Settings by clicking the Edit link) Easy Poll will generate the code for your Voting forms and Poll Results.
To display results on any page at all times, click the Name of any Poll listed on the Summary page. Copy then paste the code to any of your web pages, anywhere in the page. Example :
<script src="http://www.yoursite.com/cgi-bin/vote.cgi?view=1057641426=1">
Where the bold red number between the equals signs, is the selected Poll's ID number.
In addition to displaying the results of a Poll on any Web Page, you also have the option of hiding the results until your visitors have cast their Votes. In the same page you have embedded your Poll, you may paste the second chunk of Code generated by Easy Poll. The page will keep the results hidden from view until a Vote is successfully cast and the Voter returned to the same page with a special Query String appended. You configure the Poll to return the Voter to the same page you pasted the JavaScript code to. This can be the same page as the Poll itself is found, or it can be any other page.
To show results after a Vote has been place, you must append the following Query String to the URL you pasted the JavaScript code to :
?show=yes
For example, if your Web Poll and JavaScript code is on your Home Page at :
http://www.YOURDOMAIN.com/index.html
Your Thank you page would be set to :
http://www.YOURDOMAIN.com/index.html?show=yes.
Changing your password
Enables you to update or change the administration log in details. Enter your current log in details, enter your new log in details and press the button labelled "Change Pass".
|