Poll, Survey, Quiz, Slideshow, Form, Story & Landing Page - Version 15.0.0

Version Description

N/A

Download this release

Release Info

Developer opinionstage
Plugin Icon 128x128 Poll, Survey, Quiz, Slideshow, Form, Story & Landing Page
Version 15.0.0
Comparing to
See all releases

Code changes from version 14.7.0 to 15.0.0

opinionstage-functions.php CHANGED
@@ -120,24 +120,6 @@ function opinionstage_add_poll_page() {
120
  <div class="opinionstage-logo-wrapper">
121
  <div class="opinionstage-logo"></div>
122
  </div>
123
- <?php if(!$first_time) {?>
124
- <ul class="opinionstage-menu">
125
- <li class="opinionstage-nav-item">
126
- <a href="<?php echo opinionstage_url_with_token('http://'.OPINIONSTAGE_SERVER_BASE.'/dashboard/content'); ?>" target="_blank">
127
- <div class="os-icon icon-os-menu-content"></div>
128
- <div class="opinionstage-label">CONTENT</div>
129
- <div class="opinionstage-hover-indicator"></div>
130
- </a>
131
- </li>
132
- <li class="opinionstage-nav-item">
133
- <a href="<?php echo opinionstage_url_with_token('http://'.OPINIONSTAGE_SERVER_BASE.'/dashboard/reports'); ?>" target="_blank">
134
- <div class="os-icon icon-os-menu-reports"></div>
135
- <div class="opinionstage-label">REPORTS</div>
136
- <div class="opinionstage-hover-indicator"></div>
137
- </a>
138
- </li>
139
- </ul>
140
- <?php } ?>
141
  </div>
142
  <div class="opinionstage-status-wrapper">
143
  <div class="opinionstage-status-content">
@@ -159,7 +141,12 @@ function opinionstage_add_poll_page() {
159
  <div class="opinionstage-dashboard">
160
  <div class="opinionstage-dashboard-left">
161
  <div id="opinionstage-section-create" class="opinionstage-dashboard-section">
162
- <div class="opinionstage-section-header">Content</div>
 
 
 
 
 
163
  <div class="opinionstage-section-content">
164
  <div class="opinionstage-section-raw">
165
  <div class="opinionstage-section-cell opinionstage-icon-cell">
@@ -214,7 +201,9 @@ function opinionstage_add_poll_page() {
214
  </div>
215
  <div class="opinionstage-dashboard-right">
216
  <div id="opinionstage-section-placements" class="opinionstage-dashboard-section <?php echo($first_time ? "opinionstage-disabled-section" : "")?>">
217
- <div class="opinionstage-section-header">Placements</div>
 
 
218
  <div class="opinionstage-section-content-wrapper">
219
  <div class="opinionstage-section-content">
220
  <div class="opinionstage-section-raw">
@@ -294,7 +283,9 @@ function opinionstage_add_poll_page() {
294
  </div>
295
  <div class="opinionstage-dashboard-left">
296
  <div id="opinionstage-section-help" class="opinionstage-dashboard-section">
297
- <div class="opinionstage-section-header">Help</div>
 
 
298
  <div class="opinionstage-section-content-wrapper">
299
  <div class="opinionstage-section-content">
300
  <div class="opinionstage-section-raw">
@@ -309,7 +300,7 @@ function opinionstage_add_poll_page() {
309
  </div>
310
  <div class="opinionstage-section-raw">
311
  <div class="opinionstage-section-cell">
312
- <?php echo opinionstage_create_link('Discover content', 'discover'); ?>
313
  </div>
314
  </div>
315
  <div class="opinionstage-section-raw">
120
  <div class="opinionstage-logo-wrapper">
121
  <div class="opinionstage-logo"></div>
122
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
  </div>
124
  <div class="opinionstage-status-wrapper">
125
  <div class="opinionstage-status-content">
141
  <div class="opinionstage-dashboard">
142
  <div class="opinionstage-dashboard-left">
143
  <div id="opinionstage-section-create" class="opinionstage-dashboard-section">
144
+ <div class="opinionstage-section-header">
145
+ <div class="opinionstage-section-title">Content</div>
146
+ <?php if(!$first_time) {?>
147
+ <a href="<?php echo opinionstage_url_with_token('http://'.OPINIONSTAGE_SERVER_BASE.'/dashboard/content'); ?>" target="_blank" class="opinionstage-section-action opinionstage-blue-bordered-btn">VIEW MY CONTENT</a>
148
+ <?php } ?>
149
+ </div>
150
  <div class="opinionstage-section-content">
151
  <div class="opinionstage-section-raw">
152
  <div class="opinionstage-section-cell opinionstage-icon-cell">
201
  </div>
202
  <div class="opinionstage-dashboard-right">
203
  <div id="opinionstage-section-placements" class="opinionstage-dashboard-section <?php echo($first_time ? "opinionstage-disabled-section" : "")?>">
204
+ <div class="opinionstage-section-header">
205
+ <div class="opinionstage-section-title">Placements</div>
206
+ </div>
207
  <div class="opinionstage-section-content-wrapper">
208
  <div class="opinionstage-section-content">
209
  <div class="opinionstage-section-raw">
283
  </div>
284
  <div class="opinionstage-dashboard-left">
285
  <div id="opinionstage-section-help" class="opinionstage-dashboard-section">
286
+ <div class="opinionstage-section-header">
287
+ <div class="opinionstage-section-title">Help</div>
288
+ </div>
289
  <div class="opinionstage-section-content-wrapper">
290
  <div class="opinionstage-section-content">
291
  <div class="opinionstage-section-raw">
300
  </div>
301
  <div class="opinionstage-section-raw">
302
  <div class="opinionstage-section-cell">
303
+ <?php echo opinionstage_create_link('Quiz & List examples', 'discover'); ?>
304
  </div>
305
  </div>
306
  <div class="opinionstage-section-raw">
opinionstage-polls.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
  /*
3
- Plugin Name: Poll & Quiz Tools by OpinionStage
4
  Plugin URI: http://www.opinionstage.com
5
  Description: Adds highly engaging polls & quizzes to your site. Easily add polls & quizzes to any post/page or to your site sidebar.
6
- Version: 14.7.0
7
  Author: OpinionStage.com
8
  Author URI: http://www.opinionstage.com
9
  Text Domain: social-polls-by-opinionstage
@@ -12,8 +12,8 @@ Text Domain: social-polls-by-opinionstage
12
  /* --- Static initializer for Wordpress hooks --- */
13
 
14
  define('OPINIONSTAGE_SERVER_BASE', "www.opinionstage.com"); /* Don't include the protocol, added dynamically */
15
- define('OPINIONSTAGE_WIDGET_VERSION', '14.7.0');
16
- define('OPINIONSTAGE_WIDGET_PLUGIN_NAME', 'Poll & Quiz Tools by OpinionStage');
17
  define('OPINIONSTAGE_WIDGET_API_KEY', 'wp35e8');
18
  define('OPINIONSTAGE_OPTIONS_KEY', 'opinionstage_widget');
19
  define('OPINIONSTAGE_POLL_SHORTCODE', 'socialpoll');
@@ -34,7 +34,7 @@ require_once(WP_PLUGIN_DIR."/".OPINIONSTAGE_WIDGET_UNIQUE_ID."/opinionstage-widg
34
 
35
  // Check if OpinionStage plugin already installed.
36
  if (opinionstage_check_plugin_available('opinionstage_popup')) {
37
- add_action('admin_notices', 'os_popup_other_plugin_installed_warning');
38
  } else {
39
  add_shortcode(OPINIONSTAGE_POLL_SHORTCODE, 'opinionstage_add_poll_or_set');
40
  add_shortcode(OPINIONSTAGE_WIDGET_SHORTCODE, 'opinionstage_add_widget');
1
  <?php
2
  /*
3
+ Plugin Name: Poll, Quiz & List by OpinionStage
4
  Plugin URI: http://www.opinionstage.com
5
  Description: Adds highly engaging polls & quizzes to your site. Easily add polls & quizzes to any post/page or to your site sidebar.
6
+ Version: 15.0.0
7
  Author: OpinionStage.com
8
  Author URI: http://www.opinionstage.com
9
  Text Domain: social-polls-by-opinionstage
12
  /* --- Static initializer for Wordpress hooks --- */
13
 
14
  define('OPINIONSTAGE_SERVER_BASE', "www.opinionstage.com"); /* Don't include the protocol, added dynamically */
15
+ define('OPINIONSTAGE_WIDGET_VERSION', '15.0.0');
16
+ define('OPINIONSTAGE_WIDGET_PLUGIN_NAME', 'Poll, Quiz & List by OpinionStage');
17
  define('OPINIONSTAGE_WIDGET_API_KEY', 'wp35e8');
18
  define('OPINIONSTAGE_OPTIONS_KEY', 'opinionstage_widget');
19
  define('OPINIONSTAGE_POLL_SHORTCODE', 'socialpoll');
34
 
35
  // Check if OpinionStage plugin already installed.
36
  if (opinionstage_check_plugin_available('opinionstage_popup')) {
37
+ add_action('admin_notices', 'opinionstage_other_plugin_installed_warning');
38
  } else {
39
  add_shortcode(OPINIONSTAGE_POLL_SHORTCODE, 'opinionstage_add_poll_or_set');
40
  add_shortcode(OPINIONSTAGE_WIDGET_SHORTCODE, 'opinionstage_add_widget');
opinionstage-common.css → opinionstage-style-common.css RENAMED
@@ -1,11 +1,10 @@
1
  #opinionstage-content {
2
- background: #f9f9f9;
3
  margin: 0;
4
  height: auto;
5
  min-height: 100%;
6
  width: 100%;
7
  -webkit-font-smoothing: antialiased;
8
- border: 1px solid #f9f9f9;
9
  }
10
  #opinionstage-content a {
11
  color: #3499c2;
@@ -17,7 +16,7 @@
17
  overflow: hidden;
18
  }
19
  #opinionstage-content .opinionstage-logo-wrapper {
20
- padding: 5px 30px;
21
  float: left;
22
  }
23
  #opinionstage-content .opinionstage-logo-wrapper .opinionstage-logo {
@@ -27,51 +26,7 @@
27
  background-size: contain;
28
  }
29
  #opinionstage-content .opinionstage-menu-wrapper {
30
- height: 42px;
31
- }
32
- #opinionstage-content .opinionstage-menu-wrapper ul.opinionstage-menu {
33
- list-style: none;
34
- list-style-type: none;
35
- margin: 0;
36
- padding: 0;
37
- font-size: 15px;
38
- display: table;
39
- }
40
- #opinionstage-content .opinionstage-menu-wrapper li.opinionstage-nav-item {
41
- display: table-cell;
42
- vertical-align: middle;
43
- position: relative;
44
- }
45
- #opinionstage-content .opinionstage-menu-wrapper li.opinionstage-nav-item:hover {
46
- background-color: #29324e;
47
- }
48
- #opinionstage-content .opinionstage-menu-wrapper li.opinionstage-nav-item:hover .opinionstage-hover-indicator {
49
- background-color: #3499c2;
50
- }
51
- #opinionstage-content .opinionstage-menu-wrapper li.opinionstage-nav-item a {
52
- color: #ffffff;
53
- font-size: 13px;
54
- font-weight: normal;
55
- overflow: hidden;
56
- display: block;
57
- margin-right: 20px;
58
- padding: 12px 0;
59
- }
60
- #opinionstage-content .opinionstage-menu-wrapper li.opinionstage-nav-item a .os-icon {
61
- padding: 3px 6px 0 14px;
62
- min-width: 14px;
63
- float: left;
64
- opacity: 0.8;
65
- }
66
- #opinionstage-content .opinionstage-menu-wrapper li.opinionstage-nav-item .opinionstage-label {
67
- float: left;
68
- opacity: 0.8;
69
- }
70
- #opinionstage-content .opinionstage-menu-wrapper li.opinionstage-nav-item .opinionstage-hover-indicator {
71
- position: absolute;
72
- bottom: 0;
73
- width: 100%;
74
- height: 4px;
75
  }
76
  #opinionstage-content .opinionstage-status-wrapper {
77
  background: url("images/top-bg.png") no-repeat 0px 0px;
@@ -91,7 +46,7 @@
91
  font-weight: lighter;
92
  line-height: 25px;
93
  }
94
- #opinionstage-content .opinionstage-status-wrapper .opinionstage-status-content .os-icon, .opinionstage-sidebar-widget .os-icon {
95
  float: left;
96
  font-size: 19px;
97
  margin: 0;
@@ -100,9 +55,6 @@
100
  #opinionstage-content .opinionstage-status-wrapper .opinionstage-status-content .os-icon {
101
  margin-top: 9px;
102
  }
103
- .opinionstage-sidebar-widget .os-icon {
104
- margin-top: 5px;
105
- }
106
  #opinionstage-content .opinionstage-status-wrapper #os-switch-email {
107
  padding: 11px 0;
108
  float: left;
@@ -124,7 +76,7 @@
124
  #opinionstage-content a.opinionstage-blue-btn:hover {
125
  opacity: 0.9;
126
  }
127
- #opinionstage-content a.opinionstage-blue-bordered-btn {
128
  text-align: center;
129
  text-decoration: none;
130
  -webkit-border-radius: 3px;
@@ -137,7 +89,7 @@
137
  float: left;
138
  margin-right: 5px;
139
  }
140
- #opinionstage-content a.opinionstage-blue-bordered-btn:hover {
141
  color: white;
142
  background-color: #3499c2;
143
  cursor: pointer;
@@ -155,7 +107,7 @@
155
  font-style: italic;
156
  color: #b1b1b1 !important;
157
  }
158
- #opinionstage-content input#os-email, .opinionstage-sidebar-widget input#os-email {
159
  margin: 0 15px 0 0;
160
  border: none;
161
  font-size: 20px;
@@ -163,16 +115,12 @@
163
  padding: 3px 10px;
164
  float: left;
165
  }
166
-
167
- #opinionstage-content input#os-email:disabled, .opinionstage-sidebar-widget input#os-email:disabled {
168
  color: white;
169
  background-color: black;
170
  padding: 3px 10px;
171
  opacity: 0.7;
172
  }
173
- #opinionstage-content .opinionstage-status-wrapper input#os-email:disabled {
174
- font-size: 22px;
175
- }
176
  #opinionstage-content .opinionstage-dashboard {
177
  padding: 30px;
178
  overflow: hidden;
@@ -190,8 +138,18 @@
190
  margin-bottom: 30px;
191
  }
192
  #opinionstage-content .opinionstage-dashboard-section .opinionstage-section-header {
 
 
 
 
193
  font-size: 25px;
194
- margin-bottom: 25px;
 
 
 
 
 
 
195
  }
196
  #opinionstage-content .opinionstage-dashboard-section .opinionstage-section-content {
197
  display: table;
@@ -359,14 +317,59 @@
359
  right: 3px;
360
  }
361
  .opinionstage-sidebar-widget {
 
 
 
 
 
 
 
 
 
362
  overflow: hidden;
363
- margin-bottom: 15px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
364
  }
365
  .opinionstage-sidebar-widget p {
366
  overflow: hidden;
367
  }
368
- .wp-admin .opinionstage-sidebar-widget p input[type=checkbox] {
369
- margin: 0;
 
 
 
 
 
 
 
 
 
370
  }
371
  .opinionstage-sidebar-widget .os-button {
372
  float: left;
@@ -400,7 +403,4 @@
400
  background-image: linear-gradient(top, #40aacd, #40aacd);
401
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#40aacd, endColorstr=#40aacd);
402
  color: #ffffff !important;
403
- }
404
- .opinionstage-sidebar-widget .os-configure-content {
405
- margin-right: 7px;
406
  }
1
  #opinionstage-content {
 
2
  margin: 0;
3
  height: auto;
4
  min-height: 100%;
5
  width: 100%;
6
  -webkit-font-smoothing: antialiased;
7
+ padding-top: 20px;
8
  }
9
  #opinionstage-content a {
10
  color: #3499c2;
16
  overflow: hidden;
17
  }
18
  #opinionstage-content .opinionstage-logo-wrapper {
19
+ padding: 10px 30px;
20
  float: left;
21
  }
22
  #opinionstage-content .opinionstage-logo-wrapper .opinionstage-logo {
26
  background-size: contain;
27
  }
28
  #opinionstage-content .opinionstage-menu-wrapper {
29
+ height: 50px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
  }
31
  #opinionstage-content .opinionstage-status-wrapper {
32
  background: url("images/top-bg.png") no-repeat 0px 0px;
46
  font-weight: lighter;
47
  line-height: 25px;
48
  }
49
+ #opinionstage-content .opinionstage-status-wrapper .opinionstage-status-content .os-icon {
50
  float: left;
51
  font-size: 19px;
52
  margin: 0;
55
  #opinionstage-content .opinionstage-status-wrapper .opinionstage-status-content .os-icon {
56
  margin-top: 9px;
57
  }
 
 
 
58
  #opinionstage-content .opinionstage-status-wrapper #os-switch-email {
59
  padding: 11px 0;
60
  float: left;
76
  #opinionstage-content a.opinionstage-blue-btn:hover {
77
  opacity: 0.9;
78
  }
79
+ #opinionstage-content a.opinionstage-blue-bordered-btn, .opinionstage-sidebar-widget a.opinionstage-blue-bordered-btn{
80
  text-align: center;
81
  text-decoration: none;
82
  -webkit-border-radius: 3px;
89
  float: left;
90
  margin-right: 5px;
91
  }
92
+ #opinionstage-content a.opinionstage-blue-bordered-btn:hover, .opinionstage-sidebar-widget a.opinionstage-blue-bordered-btn:hover {
93
  color: white;
94
  background-color: #3499c2;
95
  cursor: pointer;
107
  font-style: italic;
108
  color: #b1b1b1 !important;
109
  }
110
+ #opinionstage-content input#os-email {
111
  margin: 0 15px 0 0;
112
  border: none;
113
  font-size: 20px;
115
  padding: 3px 10px;
116
  float: left;
117
  }
118
+ #opinionstage-content input#os-email:disabled {
 
119
  color: white;
120
  background-color: black;
121
  padding: 3px 10px;
122
  opacity: 0.7;
123
  }
 
 
 
124
  #opinionstage-content .opinionstage-dashboard {
125
  padding: 30px;
126
  overflow: hidden;
138
  margin-bottom: 30px;
139
  }
140
  #opinionstage-content .opinionstage-dashboard-section .opinionstage-section-header {
141
+ overflow: hidden;
142
+ height: 58px;
143
+ }
144
+ #opinionstage-content .opinionstage-dashboard-section .opinionstage-section-header .opinionstage-section-title {
145
  font-size: 25px;
146
+ float: left;
147
+ padding: 10px 0;
148
+ }
149
+ #opinionstage-content .opinionstage-dashboard-section .opinionstage-section-header a {
150
+ float: right;
151
+ margin-right: 0;
152
+ padding: 10px 25px;
153
  }
154
  #opinionstage-content .opinionstage-dashboard-section .opinionstage-section-content {
155
  display: table;
317
  right: 3px;
318
  }
319
  .opinionstage-sidebar-widget {
320
+ overflow: hidden;
321
+ margin-bottom: 15px;
322
+ padding-top: 15px;
323
+ }
324
+ .opinionstage-sidebar-widget .opinionstage-sidebar-connected {
325
+ background-color: #eaf5f9;
326
+ padding: 10px 0 10px 5px;
327
+ }
328
+ .opinionstage-sidebar-widget .opinionstage-sidebar-connected .opinionstage-connected-info {
329
  overflow: hidden;
330
+ }
331
+ .opinionstage-sidebar-widget .opinionstage-sidebar-connected .opinionstage-connected-info a {
332
+ float: left;
333
+ }
334
+ .opinionstage-sidebar-widget .opinionstage-sidebar-connected .opinionstage-connected-title {
335
+ margin-bottom: 5px;
336
+ }
337
+ .opinionstage-sidebar-widget .opinionstage-sidebar-enabled {
338
+ float: left;
339
+ }
340
+ .opinionstage-sidebar-widget .opinionstage-sidebar-config {
341
+ float: right;
342
+ }
343
+ .opinionstage-sidebar-widget input[type="text"] {
344
+ width: 100%;
345
+ }
346
+ .opinionstage-sidebar-widget input#os-email {
347
+ margin: 0 7px 0 0;
348
+ color: #444;
349
+ padding-left: 5px;
350
+ float: left;
351
+ width: auto;
352
+ line-height: 27px;
353
+ height: 27px;
354
+ font-size: 13px;
355
+ }
356
+ .opinionstage-sidebar-widget input#os-email:disabled {
357
+ background-color: rgba(10,10,10,0.1);
358
  }
359
  .opinionstage-sidebar-widget p {
360
  overflow: hidden;
361
  }
362
+ .wp-admin .opinionstage-sidebar-widget input[type=checkbox] {
363
+ margin: 10px 5px 10px 0;
364
+ }
365
+ .opinionstage-sidebar-widget .os-icon {
366
+ float: left;
367
+ font-size: 16px;
368
+ margin-right: 7px;
369
+ margin-left: 5px;
370
+ }
371
+ .opinionstage-sidebar-widget .os-icon.icon-os-poll-client {
372
+ margin-top: 4px;
373
  }
374
  .opinionstage-sidebar-widget .os-button {
375
  float: left;
403
  background-image: linear-gradient(top, #40aacd, #40aacd);
404
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#40aacd, endColorstr=#40aacd);
405
  color: #ffffff !important;
 
 
 
406
  }
opinionstage-utility-functions.php CHANGED
@@ -11,10 +11,10 @@
11
  *
12
  */
13
  function opinionstage_add_poll_or_set($atts) {
14
- extract(shortcode_atts(array('id' => 0, 'type' => 'poll'), $atts));
15
  if(!is_feed()) {
16
  $id = intval($id);
17
- return opinionstage_create_legacy_embed_code($id, $type);
18
  } else {
19
  return __('Note: There is a poll embedded within this post, please visit the site to participate in this post\'s poll.', OPINIONSTAGE_WIDGET_UNIQUE_ID);
20
  }
@@ -32,10 +32,10 @@ function opinionstage_add_poll_or_set($atts) {
32
  *
33
  */
34
  function opinionstage_add_widget($atts) {
35
- extract(shortcode_atts(array('path' => 0, 'comments' => 'true', 'sharing' => 'true', 'recommendations' => 'false'), $atts));
36
 
37
  if(!is_feed()) {
38
- return opinionstage_create_widget_embed_code($path, $comments, $sharing, $recommendations);
39
  } else {
40
  return __('Note: There is a widget embedded within this post, please visit the site to participate in this post\'s widget.', OPINIONSTAGE_WIDGET_UNIQUE_ID);
41
  }
@@ -66,19 +66,19 @@ function opinionstage_add_placement($atts) {
66
  * Arguments:
67
  * @param id - Id of the poll
68
  */
69
- function opinionstage_create_legacy_embed_code($id, $type) {
70
 
71
  // Only present if id is available
72
  if (isset($id) && !empty($id)) {
73
  // Load embed code from the cache if possible
74
  $is_homepage = is_home();
75
- $transient_name = 'embed_code' . $id . '_' . $type . '_' . ($is_homepage ? "1" : "0");
76
  $code = get_transient($transient_name);
77
  if ( false === $code || '' === $code ) {
78
  if ($type == 'set') {
79
  $embed_code_url = "http://".OPINIONSTAGE_SERVER_BASE."/api/sets/" . $id . "/embed_code.json";
80
  } else {
81
- $embed_code_url = "http://".OPINIONSTAGE_SERVER_BASE."/api/debates/" . $id . "/embed_code.json";
82
  }
83
 
84
  if ($is_homepage) {
@@ -103,15 +103,15 @@ function opinionstage_create_legacy_embed_code($id, $type) {
103
  * Arguments:
104
  * @param path - Path of the widget
105
  */
106
- function opinionstage_create_widget_embed_code($path, $comments, $sharing, $recommendations) {
107
 
108
  // Only present if path is available
109
  if (isset($path) && !empty($path)) {
110
  // Load embed code from the cache if possible
111
- $transient_name = 'embed_code' . $path . '.' . $comments . '.' . $sharing . $recommendations;
112
  $code = get_transient($transient_name);
113
  if ( false === $code || '' === $code ) {
114
- $embed_code_url = "http://".OPINIONSTAGE_SERVER_BASE."/api/widgets" . $path . "/embed_code.json?comments=".$comments."&sharing=".$sharing."&recommendations=".$recommendations;
115
 
116
  extract(opinionstage_get_contents($embed_code_url));
117
  $data = json_decode($raw_data);
@@ -162,7 +162,7 @@ function opinionstage_create_link($caption, $page, $params = "", $css_class = ''
162
  */
163
  function opinionstage_add_stylesheet() {
164
  // Respects SSL, Style.css is relative to the current file
165
- wp_register_style( 'opinionstage-style', plugins_url('opinionstage-common.css', __FILE__) );
166
  wp_register_style( 'opinionstage-font-style', plugins_url('opinionstage-font.css', __FILE__) );
167
  wp_enqueue_style( 'opinionstage-style' );
168
  wp_enqueue_style( 'opinionstage-font-style' );
11
  *
12
  */
13
  function opinionstage_add_poll_or_set($atts) {
14
+ extract(shortcode_atts(array('id' => 0, 'type' => 'poll', 'width' => ''), $atts));
15
  if(!is_feed()) {
16
  $id = intval($id);
17
+ return opinionstage_create_poll_embed_code($id, $type, $width);
18
  } else {
19
  return __('Note: There is a poll embedded within this post, please visit the site to participate in this post\'s poll.', OPINIONSTAGE_WIDGET_UNIQUE_ID);
20
  }
32
  *
33
  */
34
  function opinionstage_add_widget($atts) {
35
+ extract(shortcode_atts(array('path' => 0, 'comments' => 'true', 'sharing' => 'true', 'recommendations' => 'false', 'width' => ''), $atts));
36
 
37
  if(!is_feed()) {
38
+ return opinionstage_create_widget_embed_code($path, $comments, $sharing, $recommendations, $width);
39
  } else {
40
  return __('Note: There is a widget embedded within this post, please visit the site to participate in this post\'s widget.', OPINIONSTAGE_WIDGET_UNIQUE_ID);
41
  }
66
  * Arguments:
67
  * @param id - Id of the poll
68
  */
69
+ function opinionstage_create_poll_embed_code($id, $type, $width) {
70
 
71
  // Only present if id is available
72
  if (isset($id) && !empty($id)) {
73
  // Load embed code from the cache if possible
74
  $is_homepage = is_home();
75
+ $transient_name = 'embed_code' . $id . '_' . $type . '_' . ($is_homepage ? "1" : "0") .'_' . $width;
76
  $code = get_transient($transient_name);
77
  if ( false === $code || '' === $code ) {
78
  if ($type == 'set') {
79
  $embed_code_url = "http://".OPINIONSTAGE_SERVER_BASE."/api/sets/" . $id . "/embed_code.json";
80
  } else {
81
+ $embed_code_url = "http://".OPINIONSTAGE_SERVER_BASE."/api/debates/" . $id . "/embed_code.json?width=".$width;
82
  }
83
 
84
  if ($is_homepage) {
103
  * Arguments:
104
  * @param path - Path of the widget
105
  */
106
+ function opinionstage_create_widget_embed_code($path, $comments, $sharing, $recommendations, $width) {
107
 
108
  // Only present if path is available
109
  if (isset($path) && !empty($path)) {
110
  // Load embed code from the cache if possible
111
+ $transient_name = 'embed_code' . $path . '.' . $comments . '.' . $sharing . $recommendations . $width;
112
  $code = get_transient($transient_name);
113
  if ( false === $code || '' === $code ) {
114
+ $embed_code_url = "http://".OPINIONSTAGE_SERVER_BASE."/api/widgets" . $path . "/embed_code.json?comments=".$comments."&sharing=".$sharing."&recommendations=".$recommendations."&width=".$width;
115
 
116
  extract(opinionstage_get_contents($embed_code_url));
117
  $data = json_decode($raw_data);
162
  */
163
  function opinionstage_add_stylesheet() {
164
  // Respects SSL, Style.css is relative to the current file
165
+ wp_register_style( 'opinionstage-style', plugins_url('opinionstage-style-common.css', __FILE__) );
166
  wp_register_style( 'opinionstage-font-style', plugins_url('opinionstage-font.css', __FILE__) );
167
  wp_enqueue_style( 'opinionstage-style' );
168
  wp_enqueue_style( 'opinionstage-font-style' );
opinionstage-widget.php CHANGED
@@ -96,24 +96,30 @@
96
  <input id="os-email" type="text" value="" class="watermark os-email" data-watermark="Enter Your Email"/>
97
  <a href="javascript:void(0)" class="os-button start-login" id="os-start-login">Connect</a>
98
  <?php } else { ?>
99
- <p>You are connected to Opinion Stage with the following email</p>
100
- <div class="os-icon icon-os-form-success"></div>
101
- <p>
102
- <input id="os-email" type="text" disabled="disabled" value="<?php echo($os_options["email"]) ?>"/>
103
- <a href="javascript:void(0)" class="switch-email" id="os-switch-email" >Switch Account</a>
104
- </p>
 
 
105
  <p>
106
  <label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title', OPINIONSTAGE_WIDGET_UNIQUE_ID); ?></label>
107
  <input class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" class="watermark" data-watermark="Enter the title here" value="<?php echo $title; ?>" />
108
  </p>
109
- <p>
110
- <input type="checkbox" id="<?php echo $this->get_field_id('enabled'); ?>" name="<?php echo $this->get_field_name('enabled'); ?>" value="1" <?php echo($enabled == '1' ? "checked" : "") ?> />
111
- <label for="<?php echo $this->get_field_id('enabled'); ?>">Enabled</label>
112
- </p>
113
- <div class="left">
114
- <a href="<?php echo opinionstage_sidebar_placement_edit_url('content'); ?>" target="_blank" class='os-configure-content'>Configure content</a>
115
- </div>
116
-
 
 
 
 
117
  <?php } ?>
118
  </div>
119
  <?php
96
  <input id="os-email" type="text" value="" class="watermark os-email" data-watermark="Enter Your Email"/>
97
  <a href="javascript:void(0)" class="os-button start-login" id="os-start-login">Connect</a>
98
  <?php } else { ?>
99
+ <div class="opinionstage-sidebar-connected">
100
+ <div class="os-icon icon-os-form-success"></div>
101
+ <div class="opinionstage-connected-info">
102
+ <div class="opinionstage-connected-title"><b>You are connected</b> to Opinion Stage with:</div>
103
+ <input id="os-email" type="text" disabled="disabled" value="<?php echo($os_options["email"]) ?>"/>
104
+ <a href="javascript:void(0)" class="switch-email" id="os-switch-email" >Switch Account</a>
105
+ </div>
106
+ </div>
107
  <p>
108
  <label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title', OPINIONSTAGE_WIDGET_UNIQUE_ID); ?></label>
109
  <input class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" class="watermark" data-watermark="Enter the title here" value="<?php echo $title; ?>" />
110
  </p>
111
+ <div class="opinionstage-sidebar-actions">
112
+ <div class="opinionstage-sidebar-enabled">
113
+ <input type="checkbox" id="<?php echo $this->get_field_id('enabled'); ?>" name="<?php echo $this->get_field_name('enabled'); ?>" value="1" <?php echo($enabled == '1' ? "checked" : "") ?> />
114
+ <label for="<?php echo $this->get_field_id('enabled'); ?>">Enabled</label>
115
+ </div>
116
+ <div class="opinionstage-sidebar-config">
117
+ <a href="<?php echo opinionstage_sidebar_placement_edit_url('content'); ?>" target="_blank" class='opinionstage-blue-bordered-btn'>EDIT CONTENT</a>
118
+ <a href="<?php echo opinionstage_sidebar_placement_edit_url('settings'); ?>" class='opinionstage-blue-bordered-btn opinionstage-edit-settings <?php echo($first_time ? "disabled" : "")?>' target="_blank">
119
+ <div class="os-icon icon-os-common-settings"></div>
120
+ </a>
121
+ </div>
122
+ </div>
123
  <?php } ?>
124
  </div>
125
  <?php
readme.txt CHANGED
@@ -1,7 +1,7 @@
1
- === Poll & Quiz Tools by OpinionStage ===
2
  Contributors: OpinionStage.com
3
  Donate link:
4
- Tags: interactive content, create poll, create polls, create quiz, create quizzes, trivia quiz, personality quiz, custom poll, premade polls, flash poll, free user polls, html poll, online poll, online polls, opinion, page poll, poll, poll builder, poll directory, poll plugin, poll widget, premade user polls, polling, Polling System, polls, post poll, premade polls, user polls, voting polls, easy polls, gallery polls, wordpress poll, wordpress poll widget, WordPress polls, wppolls, yop poll, polldaddy, polldaddy polls, video polls, image polls, wp polls, questionnaire, quiz, quizzes, quizes, post survey, sidebar survey, survey, survey form, survey form builder, survey plugin, survey tool, survey widget, surveys, user survey, wordpress survey, wp survey, wpsurvey, vote, votes, voting, debate, feedback, list, lists, top 10 list, top 5 list, top 50 list, top 100 list, ranking list rating list, rate list, product list, social list, listicles, content marketing list, opinion stage, opinionstage, responsive list, resource list, resource list, listing, listing search, listings, product listings
5
 
6
  Requires at least: 2.8
7
  Tested up to: 4.4.1
@@ -11,15 +11,19 @@ Add a powerful & easy-to-use poll, quiz & list service. Create beautiful polls,
11
 
12
  == Description ==
13
 
14
- The Opinion Stage poll and quiz plug-in allows you to easily add a poll or a quiz to your website or Facebook page.
15
 
16
  = Poll Examples: =
17
 
18
  For poll examples, checkout the <a href="http://www.opinionstage.com/showcase?o=wp35e8" target="_blank">Poll Showcase.</a>
19
 
20
- = Quiz Examples: =
21
 
22
- For quiz examples, checkout the <a href="http://www.opinionstage.com/discovery?o=wp35e8" target="_blank">Quiz Showcase.</a>
 
 
 
 
23
 
24
  = Why Opinion Stage? =
25
 
@@ -31,10 +35,6 @@ For quiz examples, checkout the <a href="http://www.opinionstage.com/discovery?o
31
  * Gather contact info such as emails & social profiles, while your audience participates in the polls & quizzes
32
  * Get up and going with your first poll or quiz in minutes" -> "Get up and going with your first poll or quiz in minutes, creating polls & quizzes with the service is highly intuitive and help is avialable when needed
33
 
34
- <br>
35
-
36
- http://www.youtube.com/watch?v=P7xKNlWbk0s
37
-
38
  = Main Poll Features: =
39
 
40
  * Manage all your WordPress polls from one dashboard
@@ -92,7 +92,7 @@ http://www.youtube.com/watch?v=P7xKNlWbk0s
92
 
93
  = Language support =
94
 
95
- Opinion Stage supports over 30 languages, missing a language? Let us know!
96
 
97
  = About Opinion Stage: =
98
 
@@ -100,8 +100,8 @@ Opinion Stage offers web sites a highly engaging poll, quiz & list solution. For
100
 
101
  == Installation ==
102
 
103
- 1. Upload the "poll & quiz tools by Opinion Stage" plug-in to your blog (or search for it) and install the "poll & quiz tools by Opinion Stage" plugin on your plug-ins page
104
- 2. Active it to start creation polls & quizzes from the polls & quizzes creation dashboard
105
 
106
  == Frequently Asked Questions ==
107
 
@@ -127,13 +127,9 @@ And many more...
127
  2. After the poll or quiz was created, click "Embed" link and then click the "WordPress" tab
128
  3. Copy the WordPress poll code ( e.g. [socialpoll id="119543"] ) or the quiz embed code and paste it into the blog post/page
129
 
130
- = What is the embed ID and where can I find it? =
131
-
132
- Each poll or quiz has a unique ID which identifies it. The poll or quiz ID can be found in the WordPress code (e.g. if [socialpoll id="119543"] is the WordPress code, 119543 is the poll ID)
133
-
134
- = Can I embed a poll or quiz manually? =
135
 
136
- Yes, just post the following syntax into any post/page: [socialpoll ID="xyz"], where the xyz represents the poll ID.
137
 
138
  = How do users share the poll or quiz in social networks? =
139
 
@@ -155,23 +151,18 @@ Opinion Stagte supports many poll settings. You can configure look & feel polls
155
 
156
  You can select between a trivia quiz and a personality quiz, we plan to offer a few more quiz types in the future. If there is a quiz type you are missing, please notify us!
157
 
158
- = Do you offer read-made polls & quizzes? =
159
 
160
- Yes - our editors hand-pick the top polls & quizzes. You can browse the Opinion discover site and discover these polls and quizzes.
161
 
162
 
163
  == Screenshots ==
164
 
165
- 1. **Multiple-choice poll** - example of a multiple-choice social poll, note that you can view who voted what and view the poll voters social profile. You can also filter the poll results by the people you follow, by gender of the poll participants and more
166
- 2. **Head-to-head poll** - example of a head-to-head poll, use this poll layout for highly engaging interactions
167
- 3. **Social sharing** - after voting, users are offered to share their votes in social networks (Facebook, Twitter, Google+), driving traffic back to your site
168
- 4. **Poll set** - example of polls grouped into a poll set, users can navigate between the different polls based on a pre-defined logic
169
- 5. **Poll in post** - you can add polls inside any post/page by adding the Opinion Stage short-code directly or by clicking on the Insert poll icon and inserting the ID
170
- 6. **Poll in sidebar** - you can add polls to your sidebar using the Opinion Stage widget (find it in the Appearance->Widgets screen)
171
- 7. **Poll section in all articles** - you can configure that a poll or a set of polls is displayed at the end of all or specific sections of posts/pages
172
- 8. **Poll results** - From the Opinion Stage dashboard view the poll results and poll performance metrics
173
- 9. **Personality quiz** - example of a personality quiz result. Using a personality quiz, you can ask you users different quiz questions, and based on their answers to the quiz questions, offer them different quiz results. Personality quizzes usually also produce a lot of social shares.
174
- 10. **Trivia quiz** - example of a Trivia quiz result. Set the correct answer in each of the quiz questions, and following users answers to the quiz, give them a quiz result with the number of correct quiz answers. Trivia quizzes are usually one of the most engaging type of content.
175
 
176
  == Other Notes ==
177
 
@@ -242,6 +233,14 @@ You can create many different types of quizzes: Trivia quiz, personality quiz, i
242
  N/A
243
 
244
  == Changelog ==
 
 
 
 
 
 
 
 
245
  = Poll, Quiz & List Version 14.7.0 =
246
  * Various small optimizations
247
  = Poll, Quiz & List Version 14.6.0 =
1
+ === Poll, Quiz & List by OpinionStage ===
2
  Contributors: OpinionStage.com
3
  Donate link:
4
+ Tags: interactive content, poll plugin, create poll, create polls, quiz plugin, create quiz, create quizzes, trivia quiz, personality quiz, custom poll, premade polls, flash poll, free user polls, html poll, online poll, online polls, opinion, page poll, poll, poll builder, poll directory, poll plugin, poll widget, premade user polls, polling, Polling System, polls, post poll, premade polls, user polls, voting polls, easy polls, gallery polls, wordpress poll, wordpress poll widget, WordPress polls, wppolls, yop poll, polldaddy, polldaddy polls, video polls, image polls, wp polls, questionnaire, quiz, quizzes, quizes, post survey, sidebar survey, survey, survey form, survey form builder, survey plugin, survey tool, survey widget, surveys, user survey, wordpress survey, wp survey, wpsurvey, vote, votes, voting, debate, feedback, list, lists, top 10 list, top 5 list, top 50 list, top 100 list, ranking list rating list, rate list, product list, social list, listicles, content marketing list, opinion stage, opinionstage, responsive list, resource list, resource list, listing, listing search, listings, product listings
5
 
6
  Requires at least: 2.8
7
  Tested up to: 4.4.1
11
 
12
  == Description ==
13
 
14
+ The Opinion Stage poll, quiz & list plug-in allows you to easily add a poll, quiz or list to your website or Facebook page.
15
 
16
  = Poll Examples: =
17
 
18
  For poll examples, checkout the <a href="http://www.opinionstage.com/showcase?o=wp35e8" target="_blank">Poll Showcase.</a>
19
 
20
+ = Quiz Example: =
21
 
22
+ For a quiz example, checkout this <a href="http://www.opinionstage.com/polldiscovery/can-we-guess-how-educated-you-are?o=wp35e8" target="_blank">Quiz.</a>
23
+
24
+ = List Example: =
25
+
26
+ For a List example, checkout this <a href="http://www.opinionstage.com/polldiscovery/the-5-best-sources-for-great-free-images?o=wp35e8" target="_blank">List.</a>
27
 
28
  = Why Opinion Stage? =
29
 
35
  * Gather contact info such as emails & social profiles, while your audience participates in the polls & quizzes
36
  * Get up and going with your first poll or quiz in minutes" -> "Get up and going with your first poll or quiz in minutes, creating polls & quizzes with the service is highly intuitive and help is avialable when needed
37
 
 
 
 
 
38
  = Main Poll Features: =
39
 
40
  * Manage all your WordPress polls from one dashboard
92
 
93
  = Language support =
94
 
95
+ Opinion Stage supports over 42 languages, missing a language? Let us know!
96
 
97
  = About Opinion Stage: =
98
 
100
 
101
  == Installation ==
102
 
103
+ 1. Upload the "poll, quiz & list by Opinion Stage" plug-in to your blog (or search for it) and then install the "poll, quiz & list by Opinion Stage" plugin on your plug-ins page
104
+ 2. Active it to start creation polls, quizzes and lists from the polls, quiz & list creation dashboard
105
 
106
  == Frequently Asked Questions ==
107
 
127
  2. After the poll or quiz was created, click "Embed" link and then click the "WordPress" tab
128
  3. Copy the WordPress poll code ( e.g. [socialpoll id="119543"] ) or the quiz embed code and paste it into the blog post/page
129
 
130
+ = Can I embed a poll, quiz or list manually? =
 
 
 
 
131
 
132
+ Yes, just post the wordpress shortcode into any post/page
133
 
134
  = How do users share the poll or quiz in social networks? =
135
 
151
 
152
  You can select between a trivia quiz and a personality quiz, we plan to offer a few more quiz types in the future. If there is a quiz type you are missing, please notify us!
153
 
154
+ = Do you offer read-made polls, quizzes and lists? =
155
 
156
+ Yes - our editors hand-pick the top polls, quizzes and list. You can browse the Opinion discover site and discover these polls, quizzes and lists.
157
 
158
 
159
  == Screenshots ==
160
 
161
+ 1. **Multiple-choice poll** - example of a multiple-choice layout poll
162
+ 2. **Head-to-head poll** - example of a head-to-head layout poll
163
+ 3. **Trivia quiz** - example of a Trivia quiz result. Set the correct answer in each of the quiz questions, and following users answers to the quiz, give them a quiz result with the number of correct quiz answers. Trivia quizzes are one of the most engaging type of content.
164
+ 4. **Personality quiz** - example of a personality quiz. Using a personality quiz, you can ask you users different quiz questions, and based on their answers to the quiz questions, offer them different quiz results. Personality quizzes usually produce a lot of social shares.
165
+ 5. **Content creation dashboard** - example of the Opinion Stage interactive content (e.g. poll, quiz, list) creation dashboard
 
 
 
 
 
166
 
167
  == Other Notes ==
168
 
233
  N/A
234
 
235
  == Changelog ==
236
+ = Poll, Quiz & List Version 15.0.0 =
237
+ * Various optimizations
238
+ = Poll, Quiz & List Version 14.9.0 =
239
+ * Added the option to embed using a fixed width
240
+ = Poll, Quiz & List Version 14.8.0 =
241
+ * Modified sidebar widget management UI
242
+ * Replaced dashboard top navigation links with more prominent 'my content' link
243
+ * Added 'list' to the plugin name
244
  = Poll, Quiz & List Version 14.7.0 =
245
  * Various small optimizations
246
  = Poll, Quiz & List Version 14.6.0 =
screenshot-1.png CHANGED
Binary file
screenshot-10.png DELETED
Binary file
screenshot-2.png CHANGED
Binary file
screenshot-3.png CHANGED
Binary file
screenshot-4.png CHANGED
Binary file
screenshot-5.png CHANGED
Binary file
screenshot-6.png DELETED
Binary file
screenshot-7.png DELETED
Binary file
screenshot-8.png DELETED
Binary file
screenshot-9.png DELETED
Binary file