Security
Headlines
HeadlinesLatestCVEs

Headline

CVE-2023-2757: templates.php in waiting/tags/0.6.2/templates – WordPress Plugin Repository

The Waiting: One-click countdowns plugin for WordPress is vulnerable to authorization bypass due to a missing capability check on ‘saveLang’ functions in versions up to, and including, 0.6.2. This could lead to Cross-Site Scripting due to insufficient input sanitization and output escaping. This makes it possible for subscriber-level attackers to access functions to save plugin data that can potentially lead to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

CVE
#xss#web#google#js#java#wordpress#php#auth

1<script type="text/template" id="pbc-main-tmpl">2 <div class="yrc-content" style="background:#fff;padding:.1em;margin-bottom:2em">3 <div class="yrc-content-header wpb-clr" style="padding:1em 1em 0">4 <h3 class="wpb-float-left" style="margin:0">Message from Waiting Developer</h3>5 </div>6 <div class="widefat" style="padding:0 1em 1em;margin-top:-.5em">7 <p>We’re providing custom development services to fund our new projects:</p>8 <div id="pb-custom-services">9 <div>10 <p class="wpb-pointer" style="margin-bottom:0em"><i class="dashicons dashicons-arrow-down-alt2"></i> Custom plugin development</p>11 <ul class="pb-hidden" style="list-style:inside;margin-left:1em;margin-top:.5em">12 <li>Custom WordPress development led by developer with 8+ years of experience.</li>13 </ul>14 </div>15 <div>16 <p class="wpb-pointer" style="margin-bottom:0em"><i class="dashicons dashicons-arrow-down-alt2"></i> Web scraping (for leads, research and programmatic SEO)</p>17 <ul class="pb-hidden" style="list-style:inside;margin-left:1em;margin-top:.5em">18 <li>Web scraping and data enrichment. Monitor data sources and be the first to know.</li>19 <li>We can provide data never seen before by Google. Email us to see how it’s possible.</li>20 <li>Import scraped data to WordPress.</li>21 </ul>22 </div>23 <div>24 <p class="wpb-pointer" style="margin-bottom:0em"><i class="dashicons dashicons-arrow-down-alt2"></i> Data visualizaion (with React, D3, OSM, Mapbox)</p>25 <ul class="pb-hidden" style="list-style:inside;margin-left:1em;margin-top:.5em">26 <li>Build dashboards with scraped or other data.</li>27 <li>Companies use public data to build dashboards which act as lead magnets.28 See <a href="https://www.adt.com/crime" target="_blank">this example</a>, email us for more.29 </li>30 </ul>31 </div>32 </div>33 <div>34 <p style="margin:1.5em auto .75em">We are based in <span id="pb-c-s-country"></span> so our services will be relatively low-cost for you.</p>35 <a class="button" target="_blank" href="mailto:[email protected]?subject=Custom Development" style="display:inline-flex;align-items:center">36 <i class="dashicons dashicons-email-alt" style="margin-right:.5em"></i> Ask Question37 </a>38 </div>39 </div>40 </div>41 <div class="pb-hidden" style="background:#fff;margin-bottom:1.5em">42 <div class="yrc-content-header wpb-clr">43 <h2 class="wpb-float-left" style="margin:0;padding:1em 1em 0">Waiting PRO</h2>44 </div>45 <div class="widefat" style="padding:0 1em 1em">46 <ul style="list-style:inside">47 <li>Cookies</li>48 <li>Evergreen countdowns</li>49 <li>User timezone</li>50 <li>More styles & on finish options</li>51 <div><strong>-----Also for free-----</strong></div>52 <li>53 Fast support - within hours 54 (see: <a href="https://wordpress.org/support/plugin/waiting/" target="_blank">https://wordpress.org/support/plugin/waiting/</a>)55 </li>56 <li>Custom CSS, we don’t act greedy for simple customisations</li>57 </ul>58 <div>59 <a class="button button-primary" target="_blank" href="https://plugin.builders/waiting/?from=wp&v=<?php echo WPB_Waiting::$version; ?>#pricing">Upgrade</a>60 <a class="button" href="mailto:[email protected]?subject=Waiting Enquiry">Pre-Purchase Question?</a>61 </div>62 </div>63 </div>64 <div id="pbc-downs" class="wpb-hidden">65 <table class="widefat">66 <thead>67 <tr>68 <th><?php _e('Name’, ‘waiting’); ?></th>69 <th><?php _e('To’, ‘waiting’); ?></th>70 <th><?php _e('Shortcode’, ‘waiting’); ?></th>71 <th></th>72 <th></th>73 </tr>74 </thead>75 <tbody></tbody>76 </table>77 <button id="pbc-new-countdown" class="button button-primary"><?php _e('Add New’, ‘waiting’); ?></button>78 </div>79 <div id="pbc-editor"></div>80 <div id="pbc-feedback">81 <a class="button" href="mailto:[email protected]?subject=Extend Waiting"><?php _e('Suggest Feature’, ‘waiting’); ?></a>82 <a class="button" href="mailto:[email protected]?subject=Waiting Problem"><?php _e('Report Issue’, ‘waiting’); ?></a>83 <a class="button" href="https://wordpress.org/support/view/plugin-reviews/waiting?#postform" target="_blank"><?php _e('Write a review’, ‘waiting’); ?></a>84 <a class="button" href="http://plugin.builders/waiting/docs" target="_blank"><?php _e('Docs & Troubleshooting’, ‘waiting’); ?></a>85 </div>86 <div id="pbc-demos" class=""></div>87</script>8889<script type="text/template" id="pbc-duration-tmpl">90 <label><input type="number" min="0" max="999999" name="pbc_insta" value="<%- parseInt(meta.insta[0]) ? (meta.occurence[0][1]/1000) : 0 %>" class="wpb-raw"/><?php _e('Seconds’, ‘waiting’); ?></label>91</script>9293<script type="text/template" id="pbc-countdown-date-tmpl">94 <div class="pbc-field wpb-inline">95 <input name="to_date" value="<%= oto.date %>" class="wpb-raw pbc-date-picker"/>96 </div>97 <div class="pbc-field wpb-inline">98 <input name="to_hours" type="number" min="0" max="23" value="<%= oto.h %>" class="wpb-raw"/>99 <input name="to_mins" type="number" min="0" max="59" value="<%= oto.mi %>" class="wpb-raw"/>100 <input name="to_secs" type="number" min="0" max="59" value="<%= oto.s %>" class="wpb-raw"/>101 </div>102</script>103104<script type="text/template" id="pbc-countdown-start-date-tmpl">105 <div class="pbc-field wpb-inline">106 <input name="start_date" value="<%= ostart.date %>" class="wpb-raw pbc-date-picker"/>107 </div>108 <div class="pbc-field wpb-inline">109 <input name="start_hours" type="number" min="0" max="23" value="<%= ostart.h %>" class="wpb-raw"/>110 <input name="start_mins" type="number" min="0" max="59" value="<%= ostart.mi %>" class="wpb-raw"/>111 <input name="start_secs" type="number" min="0" max="59" value="<%= ostart.s %>" class="wpb-raw"/>112 </div>113</script>114115<script type="text/template" id="pbc-countdown-tmpl">116 <form class="pbc-pane" id="pbc-form">117 <div class="pbc-row">118 <div class="pbc-row-label wpb-inline"><?php _e('Name’, ‘waiting’); ?></div>119 <div class="pbc-row-field wpb-inline">120 <input name="name" value="<%= down.meta.name %>" class="wpb-raw"/> <small><?php _e('Must be unique’, ‘waiting’); ?></small>121 </div>122 </div>123 124 <div class="pbc-row">125 <div class="pbc-row-label wpb-inline"><?php _e('Countdown’, ‘waiting’); ?> <?php _e('To’, ‘waiting’); ?></div>126 <div class="pbc-row-field wpb-inline" id="cd_to">127 <% var insta = parseInt(down.meta.insta[0]); %>128 <div class="pbc-field wpb-inline">129 <label><input type="radio" name="pbc_to" value="to" <%- insta ? ‘’ : ‘checked’ %>/><?php _e('Date’, ‘waiting’); ?></label>130 </div>131 <div class="wpb-inline <%- insta ? ‘wpb-force-hide’ : ‘’ %>" data-cd="to">132 <%= PBC.dateTemplate(oto, down.meta.coffset) %>133 </div></br>134 <div class="pbc-field wpb-inline">135 <label><input type="radio" name="pbc_to" value="insta" <%- insta ? ‘checked’ : ‘’ %>/><?php _e('Duration’, ‘waiting’); ?></label>136 </div>137 <div class="pbc-field wpb-inline <%- insta ? ‘’ : ‘wpb-force-hide’ %>" data-cd="insta">138 <%= PBC.durationTemplate(down) %>139 </div>140 </div>141 </div>142 143 <div class="pbc-row">144 <div class="pbc-row-label wpb-inline"><?php _e('Countdown’, ‘waiting’); ?> <?php _e('From’, ‘waiting’); ?></div>145 <div class="pbc-row-field wpb-inline" id="cd_from">146 <div class="wpb-inline">147 <%= PBC.startDateTemplate(down.meta.occurence[0][0], down.meta.coffset) %>148 </div>149 </div>150 </div>151 152 <div class="pbc-row pbc-manual-starts <%- parseInt(down.meta.insta[0]) ? ‘’ : ‘wpb-hidden’ %>" id="pbc-start-on-click">153 <div class="pbc-row-label wpb-inline"><?php _e('Start on clicking’, ‘waiting’); ?></div>154 <div class="pbc-row-field wpb-inline">155 <div class="wpb-inline" style="width:100%">156 <input type="text" name="start_on_click" value="<%= down.meta.start_on_click %>" class="wpb-raw" style="width:100%"/>157 <p style="margin:.25em 0;">Enter CSS selectors separated by commas, countdown’ll start / restart upon clicking on them.</p>158 </div>159 </div>160 </div>161 162 <div class="pbc-row">163 <div class="pbc-row-label wpb-inline"><?php _e('Timezone’, ‘waiting’); ?></div>164 <div class="pbc-row-field wpb-inline" id="pbc-timezone-field">165 <div class="pbc-field wpb-inline">166 <label><input type="radio" name="timezone" value="WP"167 <%- down.meta.timezone === ‘WP’ ? ‘checked’ : ‘’ %> class=""/><?php _e('WordPress’, ‘waiting’); ?></label>168 </div>169 <div class="pbc-field wpb-inline">170 <label><input type="radio" name="timezone" value="UTC"171 <%- down.meta.timezone === ‘UTC’ ? ‘checked’ : ‘’ %> class=""/><?php _e('UTC’, ‘waiting’); ?></label>172 </div>173 </div>174 </div>175 176 <div class="pbc-row">177 <div class="pbc-row-label wpb-inline"><?php _e('Units’, ‘waiting’); ?></div>178 <div class="pbc-row-field wpb-inline pbc-unit-field">179 <%180 units.forEach(function(unit){ %>181 <div class="pbc-field wpb-inline">182 <label><input type="checkbox" name="unit[]" value="<%= unit %>"183 <%- down.meta.units.indexOf(unit) > -1 ? ‘checked’ : ‘’ %>/><%= PBCUtils.lang.units[unit] %></label>184 </div>185 <% });186 %>187 </div>188 </div>189 190 <div class="pbc-row">191 <div class="pbc-row-label wpb-inline"><?php _e('Labels’, ‘waiting’); ?></div>192 <div class="pbc-row-field wpb-inline">193 <div class="pbc-field wpb-inline">194 <label><input type="checkbox" name="shorten_label"195 <%- parseInt(down.style.shorten_label) ? ‘checked’ : ‘’ %> class="wpb-raw" /><?php _e('Shorten’, ‘waiting’); ?></label>196 </div>197 <div class="pbc-field wpb-inline">198 <label><input type="checkbox" name="lowercase_label"199 <%- parseInt(down.style.lowercase_label) ? ‘checked’ : ‘’ %> class="wpb-raw" /><?php _e('Lowercase’, ‘waiting’); ?></label>200 </div>201 </div>202 </div>203 204 <div class="pbc-row">205 <div class="pbc-row-label wpb-inline"><?php _e('Font’, ‘waiting’); ?></div>206 <div class="pbc-row-field wpb-inline" id="pbc-fonts">207 <%= PBC.fontTemplate() %>208 </div>209 </div>210 211 <div class="pbc-row">212 <div class="pbc-row-label wpb-inline">Style213 </div><div class="pbc-row-field wpb-inline" id="pbc-styles-field">214 <a class="button pbc-choose-style" id="pbc-edit-style"><?php _e('Edit’, ‘waiting’); ?></a>215 <a class="button wpb-force-hide" id="pbc-toggle-style"><?php _e('Toggle’, ‘waiting’); ?></a>216 <div id="pbc-styles"></div>217 </div>218 </div>219 220 <% if(!PBC.free){ %>221 <div class="pbc-row">222 <div class="pbc-row-label wpb-inline"><?php _e('Resize’, ‘waiting’); ?></div>223 <div class="pbc-row-field wpb-inline">224 <label><input type="checkbox" name="resize" <%- parseInt(down.style.resize) ? ‘checked’ : ‘’ %> class="wpb-raw"/><?php _e('Expand width to parent element\’s size.’, ‘waiting’); ?></label>225 </div>226 </div>227 <% } %>228 229 <% var fin = down.meta.onfinish; %>230 <div class="pbc-row" id="pbc-onfinish-row">231 <div class="pbc-row-label wpb-inline"><?php _e('On Finish’, ‘waiting’); ?></div>232 <div class="pbc-row-field wpb-inline" id="pbc-onfinish-field">233 <div class="pbc-option" data-name="nothing">234 <div class="pbc-option-label"><?php _e('Nothing’, ‘waiting’); ?></div>235 </div>236 <div class="pbc-option" data-name="hide">237 <div class="pbc-option-label"><?php _e('Hide’, ‘waiting’); ?> <?php _e('Countdown’, ‘waiting’); ?></div>238 </div>239 <div class="pbc-option" data-name="redirect">240 <div class="pbc-option-label"><?php _e('Redirect’, ‘waiting’); ?></div>241 <div class="pbc-option-field">242 <input type="text" value="<%- fin[0] === ‘redirect’ ? fin[1][0] : ‘’ %>" placeholder="<?php _e('URL’, ‘waiting’); ?>"/>243 </div>244 </div>245 <div class="pbc-option" data-name="event">246 <div class="pbc-option-label"><?php _e('Trigger DOM events (click, hover etc.)', ‘waiting’); ?></div>247 <div class="pbc-option-field">248 <input type="text" value="<%- fin[0] === ‘event’ ? fin[1][0] : ‘’ %>" placeholder="<?php _e('selector’, ‘waiting’); ?>"/>249 <input type="text" value="<%- fin[0] === ‘event’ ? fin[1][1] : ‘’ %>" placeholder="<?php _e('event’, ‘waiting’); ?>"/>250 </div>251 </div>252 </div>253 </div>254 255 <div class="pbc-form-save">256 <div class="pbc-form-message"></div>257 <button class="button button-primary"><?php _e('Save’, ‘waiting’); ?></button>258 <a class="button pbc-cancel-form"><?php _e('Cancel’, ‘waiting’); ?></a>259 <% if(down.meta.id !== ‘nw’){ %>260 <a class="button" id="pbc-delete-form"><?php _e('Delete’, ‘waiting’); ?></a>261 <% } %> 262 </div>263 </form>264 </br>265 <small><?php _e(‘Some changes won\’t take effect in preview’, ‘waiting’); ?>.</small>266</script>267268<script type="text/template" id="pbc-down-tmpl">269 <tr data-down="<%= id %>" class="pbc-down">270 <td><span><%= d.meta.name %></span></td>271 <td><span><%- parseInt(d.meta.insta[0]) ? (d.meta.occurence[0][1]/1000)+’ <?php _e(‘seconds’, ‘waiting’); ?>’ : (oto.date + ' ' + oto.time) %></span></td>272 <td><span>[waiting name="<%= d.meta.name %>"]</span></td>273 <td><a class="button pbc-edit" data-down="<%= id %>"><?php _e('Edit’, ‘waiting’); ?></a></td>274 <td><a class="button pbc-copy" data-down="<%= id %>"><?php _e('Duplicate’, ‘waiting’); ?></a></td>275 </tr>276</script>277278<script type="text/template" id="pbc-html-styles-tmpl">279 <% var css = style.css, scl = 16; %>280 281 <div class="pbc-row" id="pbc-style-toolbar"></div>282 283 <div class="pbc-row wpb-force-hide">284 <div class="pbc-row-label wpb-inline">Wrapper</div>285 <div class="pbc-row-field wpb-inline"> 286 <div class="pbc-field wpb-inline">287 <label><input name="wrapper_bg" value="#000" data-default-color="#000"288 data-keys="0-2, .pbc-shell, background, 0" class="wpb-color"/><?php _e('Background’, ‘waiting’); ?></label>289 </div>290 </div>291 </div>292 <% if(style.type[1] && !PBC.free){ %>293 <div class="pbc-row">294 <div class="pbc-row-field wpb-inline"> 295 <div class="pbc-field wpb-inline">296 <label><input type="radio" name="3do" value="1" data-keys="type-3, , , 1"297 <%- style.type[3] ? ‘checked’ : ‘’ %>/><?php _e('Horizontal’, ‘waiting’); ?></label>298 </div>299 <div class="pbc-field wpb-inline">300 <label><input type="radio" name="3do" value="0" data-keys="type-3, , , 1"301 <%- style.type[3] ? ‘’ : ‘checked’ %>/><?php _e('Vertical’, ‘waiting’); ?></label>302 </div>303 </div>304 </div>305 <% } %>306 307 <div class="pbc-row">308 <div class="pbc-row-label wpb-inline"><?php _e(‘Unit’, ‘waiting’); ?></div>309 <div class="pbc-row-field wpb-inline">310 <div class="pbc-field wpb-inline">311 <label><input name="unit_color" value="<%= css.num[2] %>" data-default-color=’#000’ “312 data-keys="num-2, .pbc-num, color, 0” class="wpb-color"/><?php _e('Color’, ‘waiting’); ?></label>313 </div>314 315 <div class="pbc-field wpb-inline">316 <label><input name="unit_bg" value="<%= css.num[1] %>"317 data-keys="num-1, .pbc-num,.pbc-unit-content, background, 0" class="wpb-color"/><?php _e('Background’, ‘waiting’); ?></label>318 </div>319 320 <div class="pbc-field wpb-inline">321 <label><input name="unit_height" readonly data-range="[0, 150]" value="<%= css.content[0] * scl %>"322 data-keys="content-0, .pbc-unit-content, height, 1" class="wpb-number-input"/><?php _e('Height’, ‘waiting’); ?></label>323 </div>324 <% if(style.type[0] !== ‘canvas’){ %>325 <div class="pbc-field wpb-inline">326 <label><input name="unit_height" readonly data-range="[0, 150]" value="<%= css.unit[1] * scl %>"327 data-keys="unit-1, .pbc-unit, width, 1" class="wpb-number-input"/><?php _e('Width’, ‘waiting’); ?></label>328 </div>329 <% } %>330 331 <div class="pbc-field wpb-inline">332 <label><input name="unit_font_size" readonly data-range="[0, 100]" value="<%= css.num[0] * scl %>"333 data-keys="num-0, .pbc-num, font-size, 1" class="wpb-number-input"/><?php _e('Font size’, ‘waiting’); ?></label>334 </div>335 336 <div class="pbc-field wpb-inline">337 <label><input name="unit_margin_right" readonly data-range="[0, 25]" value="<%= css.unit[2] * scl %>"338 data-keys="unit-2, .pbc-unit, margin-right, 1" class="wpb-number-input"/><?php _e('Margin’, ‘waiting’); ?>-<?php _e('Right’, ‘waiting’); ?></label>339 </div>340 341 <% if(!style.type[1]){ %>342 <div class="pbc-field wpb-inline">343 <label><input name="unit_border_radius" readonly data-range="[0, 50]" value="<%= css.unit[4] * scl %>"344 data-keys="unit-4, .pbc-unit, border-radius, 1" class="wpb-number-input"/><?php _e('Rounded corners’, ‘waiting’); ?></label>345 </div>346 <% } %>347 348 <div class="pbc-field wpb-inline">349 <label><input type="checkbox" name="label_show" <%- parseInt(css.unit[5]) ? ‘checked’ : ‘’ %>350 data-keys="unit-5, .pbc-unit, display, 0"/><?php _e('Hide if Zero’, ‘waiting’); ?> <small>(<?php _e('except last one’, ‘waiting’); ?>)</small></label>351 </div>352 </div>353 </div>354 355 <div class="pbc-row">356 <div class="pbc-row-label wpb-inline"><?php _e('Label’, ‘waiting’); ?></div>357 <div class="pbc-row-field wpb-inline">358 <div class="pbc-field wpb-inline">359 <label><input name="" readonly data-range="[0, 50]" value="<%= css.label[0] * scl %>"360 data-keys="label-0, .pbc-label, font-size, 1" class="wpb-number-input"/><?php _e('Font-size’, ‘waiting’); ?></label>361 </div>362 363 <div class="pbc-field wpb-inline">364 <label><input name="" value="<%= css.label[2] %>"365 data-keys="label-2, .pbc-label, color, 0" class="wpb-color"/><?php _e('Color’, ‘waiting’); ?></label>366 </div>367 <% if(style.type[0] !== ‘canvas’){ %>368 <div class="pbc-field wpb-inline">369 <label><input name="" value="<%= css.label[1] %>"370 data-keys="label-1, .pbc-label, background, 0" class="wpb-color"/><?php _e('Background’, ‘waiting’); ?></label>371 </div>372 <% } %>373 374 <div class="pbc-field wpb-inline">375 <label><input name="" readonly data-range="[0, 10]" value="<%= css.label[3] * scl %>"376 data-keys="label-3, .pbc-label, margin-top, 1" class="wpb-number-input"/><?php _e('Margin’, ‘waiting’); ?></label>377 </div>378 379 <% if(style.type[0] === ‘html’){ %>380 <div class="pbc-field wpb-inline">381 <label><input type="checkbox" name="" <%- parseInt(css.label[5]) ? ‘checked’ : ‘’ %>382 data-keys="label-5, .pbc-label, display, 0"/><?php _e('Top’, ‘waiting’); ?></label>383 </div>384 <% } %>385 386 <div class="pbc-field wpb-inline">387 <label><input type="checkbox" name="label_show" <%- parseInt(css.label[4]) ? ‘checked’ : ‘’ %>388 data-keys="label-4, .pbc-label, display, 0"/><?php _e('Show’, ‘waiting’); ?></label>389 </div>390 </div>391 </div>392 393 <div class="pbc-row">394 <div class="pbc-row-label wpb-inline"><?php _e('Align’, ‘waiting’); ?></div>395 <div class="pbc-row-field wpb-inline">396 <div class="pbc-field wpb-inline">397 <label><input type="radio" name="pbc_align" value="left" <%- (css.unit[7] === ‘left’) ? ‘checked’ : ‘’ %>398 data-keys="unit-7, .pbc-shell, text-align, 0"/><?php _e('Left’, ‘waiting’); ?></label>399 </div>400 <div class="pbc-field wpb-inline">401 <label><input type="radio" name="pbc_align" value="center" <%- (css.unit[7] === ‘center’) ? ‘checked’ : ‘’ %>402 data-keys="unit-7, .pbc-shell, text-align, 0"/><?php _e('Center’, ‘waiting’); ?></label>403 </div>404 <div class="pbc-field wpb-inline">405 <label><input type="radio" name="pbc_align" value="right" <%- (css.unit[7] === ‘right’) ? ‘checked’ : ‘’ %>406 data-keys="unit-7, .pbc-shell, text-align, 0"/><?php _e('Right’, ‘waiting’); ?></label>407 </div>408 </div>409 </div> 410</script>411412<script type="text/template" id="pbc-font-tmpl">413 <select>414 <% for(var font in PBC.fonts){ %>415 <option value="<%= PBC.fonts[font] %>" <%- chosen_font === PBC.fonts[font] ? ‘selected’ : ‘’ %>><%= font %></option>416 <% } %>417 </select>418</script>419420<script type="text/template" id="pbc-lang-form-tmpl">421 <form id="pbc-lang-form" class="pbc-front-form">422 <h2 class="pbc-front-form-header wpb-pointer"><?php _e('Quick Translation’, ‘waiting’); ?></h2>423 <div class="pbc-front-form-inputs wpb-zero">424 <% for(var term in units){ %>425 <div class="pbc-field wpb-inline">426 <label><%= PBC.lang.unit_labels[term] %><input type="text" name="<%= term %>" value="<%= units[term] %>"/></label>427 </div>428 <% } %>429 <div><button class="button button-primary"><?php _e('Save’, ‘waiting’); ?></button></div>430 </div>431 </form>432 433 <form id="pbc-other-settings" class="pbc-front-form">434 <h2 class="pbc-front-form-header wpb-pointer"><?php _e('On Uninstall’, ‘waiting’); ?></h2>435 <div class="wpb-zero pbc-front-form-inputs “>436 <div class="pbc-row-field wpb-inline">437 <div class="pbc-field wpb-inline">438 <label><input type="checkbox” name="clean_on_uninstall" class="wpb-raw" 439 <?php echo get_option(‘waiting_clean_on_uninstall’) ? ‘checked’ : ‘’ ?> /><?php _e('Delete countdowns on Uninstall’, ‘waiting’); ?></label>440 </div>441 </div>442 <div><button class="button button-primary"><?php _e('Save’, ‘waiting’); ?></button></div>443 </div>444 </form>445 446 <div id="pbc-do-upgrade" style="background:#fff;padding:1em;margin-top:1.5em">447 <h3>Pro version features:</h3>448 <ul>449 <li>Multiple kind of circular styles.</li>450 <li>3D flip styles (calendar & book).</li>451 <li>User’s timezone.</li>452 <li>Start / Restart countdown when clicking on a button etc. <b>New</b></li>453 <li>Set cookie to not restart countdown on page reload ( While counting down to seconds. ).</li>454 <li>Literally countless animation directions.</li>455 <li>Multiple countdowns on same page.</li>456 <li>On finish options: Replace countdown with HTML, play YouTube video, play sound.</li>457 <li>Send emails on countdown finish. <b>New</b></li>458 <li>Start / restart coundown on clicking on elements, beep on finish. <b>New</b></li>459 <li>Evergreen countdowns (sticky on top or bottom of the screen).</li>460 <li>Fast effective support (also for the free version :) ).</li>461 </ul>462 <a class="button button-primary" target="_blank" href="https://plugin.builders/waiting/?from=wp&v=<?php echo WPB_Waiting::$version; ?>#pricing">Upgrade</a>463 <a class="button" href="mailto:[email protected]?subject=Waiting Enquiry">Pre-Purchase Question?</a>464 </div>465</script>466467<script type="text/javascript">468 <?php469 $terms = WPB_Waiting::$terms;470 $terms[‘aui’] = array(471 ‘saving’ => __('Saving’, ‘waiting’),472 ‘deleting’ => __('Deleting’, ‘waiting’)473 );474 ?>475 var pbc_translated_terms = <?php echo json_encode( $terms ); ?>476</script>

CVE: Latest News

CVE-2023-50976: Transactions API Authorization by oleiman · Pull Request #14969 · redpanda-data/redpanda
CVE-2023-6905
CVE-2023-6903
CVE-2023-6904
CVE-2023-3907