kk Star Ratings - Version 2.5.1

Version Description

  • Fix: Google rich snippets with new vocabulary code.
  • Fix: Average calculation when x amount of stars used and changed dynamically.
  • Fix: Shortcode.
  • Fix: Styling.
Download this release

Release Info

Developer bhittani
Plugin Icon 128x128 kk Star Ratings
Version 2.5.1
Comparing to
See all releases

Code changes from version 2.5 to 2.5.1

admin.php CHANGED
@@ -2,6 +2,21 @@
2
  <?php if(isset($sidebar)) : ?>
3
  <div class="bf-wrap-small _right">
4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  <!-- Place this tag where you want the button to render. -->
6
  <a class="github-button" href="https://github.com/kamalkhan/kk-star-ratings" data-icon="octicon-star" data-style="mega" data-count-href="/kamalkhan/kk-star-ratings/stargazers" data-count-api="/repos/kamalkhan/kk-star-ratings#stargazers_count" data-count-aria-label="# stargazers on GitHub" aria-label="Star kamalkhan/kk-star-ratings on GitHub">
7
  kk Star Ratings
2
  <?php if(isset($sidebar)) : ?>
3
  <div class="bf-wrap-small _right">
4
 
5
+ <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=CM659D9SHGKE6" target="_blank"
6
+ style="background-color: #B24747;
7
+ border: 1px solid #883232;
8
+ border-radius: 3px;
9
+ color: #fff;
10
+ padding: .75em;
11
+ display: block;
12
+ width: 140px;
13
+ text-align: center;
14
+ font-size: 14px;">
15
+ Donate to this plugin
16
+ </a>
17
+
18
+ <br>
19
+
20
  <!-- Place this tag where you want the button to render. -->
21
  <a class="github-button" href="https://github.com/kamalkhan/kk-star-ratings" data-icon="octicon-star" data-style="mega" data-count-href="/kamalkhan/kk-star-ratings/stargazers" data-count-api="/repos/kamalkhan/kk-star-ratings#stargazers_count" data-count-aria-label="# stargazers on GitHub" aria-label="Star kamalkhan/kk-star-ratings on GitHub">
22
  kk Star Ratings
css.css CHANGED
@@ -1,6 +1,7 @@
1
 
2
  .kk-star-ratings {
3
  width: 120px;
 
4
  }
5
  .kk-star-ratings.top-left,
6
  .kk-star-ratings.top-right {
@@ -46,6 +47,11 @@
46
  text-decoration: none;
47
  border: 0;
48
  }
 
 
 
 
 
49
  .kk-star-ratings .kksr-legend {
50
  font-size: 12px;
51
  color: #999;
@@ -57,3 +63,9 @@
57
  .kk-star-ratings .kksr-legend .kksr-title {
58
  display: none;
59
  }
 
 
 
 
 
 
1
 
2
  .kk-star-ratings {
3
  width: 120px;
4
+ min-height: 48px;
5
  }
6
  .kk-star-ratings.top-left,
7
  .kk-star-ratings.top-right {
47
  text-decoration: none;
48
  border: 0;
49
  }
50
+ .kk-star-ratings .kksr-stars a:focus {
51
+ text-decoration: none;
52
+ border: 0;
53
+ outline: none;
54
+ }
55
  .kk-star-ratings .kksr-legend {
56
  font-size: 12px;
57
  color: #999;
63
  .kk-star-ratings .kksr-legend .kksr-title {
64
  display: none;
65
  }
66
+
67
+ .kk-star-ratings .kksr-stars,
68
+ .kk-star-ratings .kksr-stars .kksr-fuel,
69
+ .kk-star-ratings .kksr-stars a {
70
+ background-color: transparent !important;
71
+ }
index.php CHANGED
@@ -4,7 +4,7 @@
4
  Plugin Name: kk Star Ratings
5
  Plugin URI: https://github.com/kamalkhan/kk-star-ratings
6
  Description: Renewed from the ground up(as of v2.0), clean, animated and light weight ratings feature for your blog. With kk Star Ratings, you can <strong>allow your blog posts to be rated by your blog visitors</strong>. It also includes a <strong>widget</strong> which you can add to your sidebar to show the top rated post. Wait! There is more to it. Enjoy the extensive options you can set to customize this plugin.
7
- Version: 2.5
8
  Author: Kamal Khan
9
  Author URI: http://bhittani.com
10
  License: GPLv2 or later
@@ -443,11 +443,12 @@ if(!class_exists('BhittaniPlugin_kkStarRatings')) :
443
  {
444
  do_action('kksr_init', $pid, number_format((float)($avg*($total_stars/5)), 2, '.', '').'/'.$total_stars, $ncasts);
445
  }
446
- $legend = parent::get_options('kksr_legend');
447
- $legend = str_replace('[total]', $ncasts, $legend);
448
- $legend = str_replace('[avg]', number_format((float)($avg*($total_stars/5)), 2, '.', '').'/'.$total_stars, $legend);
449
- $legend = str_replace('[s]', $ncasts==1?'':'s', $legend);
450
- $Response[$pid]['legend'] = str_replace('[per]',$per.'%', $legend);
 
451
  $Response[$pid]['fuel'] = $per;
452
  }
453
 
@@ -653,21 +654,21 @@ if(!class_exists('BhittaniPlugin_kkStarRatings')) :
653
  if($score)
654
  {
655
  $votes = get_post_meta($id, '_kksr_casts', true) ? get_post_meta($id, '_kksr_casts', true) : 0;
656
- $avg = $score ? number_format((float)($score/$votes), 2, '.', '') : 0;
657
- $per = $score ? number_format((float)((($score/$votes)/5)*100), 2, '.', '') : 0;
658
-
659
- $leg = str_replace('[total]', '<span property="v:votes">'.$votes.'</span>', $legend);
660
- $leg = str_replace('[avg]', '<span property="v:average">'.$avg.'</span>/<span property="v:best">'.$best.'</span>', $leg);
661
- $leg = str_replace('[per]',$per.'%', $leg);
662
- $leg = str_replace('[s]', $votes==1?'':'s', $leg);
663
-
664
- $snippet = '<div xmlns:v="http://rdf.data-vocabulary.org/#Rating" typeof="v:Review-aggregate">';
665
- $snippet .= '<span property="v:itemreviewed" class="kksr-title">' . $title . '</span>';
666
- $snippet .= '<span rel="v:rating">';
667
- $snippet .= ' <span typeof="v:Rating">';
668
- $snippet .= $leg;
669
- $snippet .= ' </span>';
670
- $snippet .= '</span>';
671
  $snippet .= '</div>';
672
  }
673
  else
@@ -681,7 +682,7 @@ if(!class_exists('BhittaniPlugin_kkStarRatings')) :
681
  }
682
  }
683
 
684
- $kkStarRatings_obj = new BhittaniPlugin_kkStarRatings('bhittani_plugin_kksr', 'kk Star Ratings', '2.5');
685
 
686
  // Setup
687
  register_activation_hook(__FILE__, array($kkStarRatings_obj, 'activate'));
4
  Plugin Name: kk Star Ratings
5
  Plugin URI: https://github.com/kamalkhan/kk-star-ratings
6
  Description: Renewed from the ground up(as of v2.0), clean, animated and light weight ratings feature for your blog. With kk Star Ratings, you can <strong>allow your blog posts to be rated by your blog visitors</strong>. It also includes a <strong>widget</strong> which you can add to your sidebar to show the top rated post. Wait! There is more to it. Enjoy the extensive options you can set to customize this plugin.
7
+ Version: 2.5.1
8
  Author: Kamal Khan
9
  Author URI: http://bhittani.com
10
  License: GPLv2 or later
443
  {
444
  do_action('kksr_init', $pid, number_format((float)($avg*($total_stars/5)), 2, '.', '').'/'.$total_stars, $ncasts);
445
  }
446
+ // $legend = parent::get_options('kksr_legend');
447
+ // $legend = str_replace('[total]', $ncasts, $legend);
448
+ // $legend = str_replace('[avg]', number_format((float)($avg*($total_stars/5)), 2, '.', '').'/'.$total_stars, $legend);
449
+ // $legend = str_replace('[s]', $ncasts==1?'':'s', $legend);
450
+ // $Response[$pid]['legend'] = str_replace('[per]',$per.'%', $legend);
451
+ $Response[$pid]['legend'] = apply_filters('kksr_legend', parent::get_options('kksr_legend'), $pid);
452
  $Response[$pid]['fuel'] = $per;
453
  }
454
 
654
  if($score)
655
  {
656
  $votes = get_post_meta($id, '_kksr_casts', true) ? get_post_meta($id, '_kksr_casts', true) : 0;
657
+ $avg = $score ? round((float)(($score/$votes)*($best/5)), 2) : 0;
658
+ $per = $score ? round((float)((($score/$votes)/5)*100), 2) : 0;
659
+
660
+ $leg = str_replace('[total]', '<span property="ratingCount">'.$votes.'</span>', $legend);
661
+ $leg = str_replace('[avg]', '<span property="ratingValue">'.$avg.'</span>', $leg);
662
+ $leg = str_replace('[per]', $per .'%', $leg);
663
+ $leg = str_replace('[s]', $votes == 1 ? '' : 's', $leg);
664
+
665
+ $snippet = '<div vocab="http://schema.org/" typeof="Blog">';
666
+ $snippet .= ' <div property="name" class="kksr-title">' . $title . '</div>';
667
+ $snippet .= ' <div property="aggregateRating" typeof="AggregateRating">';
668
+ $snippet .= $leg;
669
+ $snippet .= ' <meta property="bestRating" content="'. $best . '"/>';
670
+ $snippet .= ' <meta property="worstRating" content="1"/>';
671
+ $snippet .= ' </div>';
672
  $snippet .= '</div>';
673
  }
674
  else
682
  }
683
  }
684
 
685
+ $kkStarRatings_obj = new BhittaniPlugin_kkStarRatings('bhittani_plugin_kksr', 'kk Star Ratings', '2.5.1');
686
 
687
  // Setup
688
  register_activation_hook(__FILE__, array($kkStarRatings_obj, 'activate'));
readme.txt CHANGED
@@ -11,7 +11,7 @@ Requires at least: 3.0
11
 
12
  Tested up to: 4.4.2
13
 
14
- Stable tag: 2.5
15
 
16
 
17
  kk Star Ratings allows blog visitors to involve and interact more effectively with your website by rating posts.
@@ -77,6 +77,13 @@ Enhanced settings page where you can adjust quite anything you may need to. You
77
 
78
 
79
  == Frequently Asked Questions ==
 
 
 
 
 
 
 
80
 
81
  =
82
 
@@ -140,6 +147,12 @@ Visit the help tab in the settings to find out what you can do.
140
 
141
  == Changelog ==
142
 
 
 
 
 
 
 
143
  = 2.5 =
144
  * Fix: Deprecate WP_Widget for __construct. Required for wp 4.3+.
145
  * Fix google rich snippets by using #Ratings as the vocabulary.
11
 
12
  Tested up to: 4.4.2
13
 
14
+ Stable tag: 2.5.1
15
 
16
 
17
  kk Star Ratings allows blog visitors to involve and interact more effectively with your website by rating posts.
77
 
78
 
79
  == Frequently Asked Questions ==
80
+ =
81
+
82
+ Google rich snippets are not being displayed when I updated to v2.5.1
83
+
84
+ =
85
+
86
+ The snippet code vocabulary has been updated. Have some patience and let google crawl your posts/pages again for some days.
87
 
88
  =
89
 
147
 
148
  == Changelog ==
149
 
150
+ = 2.5.1 =
151
+ * Fix: Google rich snippets with new vocabulary code.
152
+ * Fix: Average calculation when x amount of stars used and changed dynamically.
153
+ * Fix: Shortcode.
154
+ * Fix: Styling.
155
+
156
  = 2.5 =
157
  * Fix: Deprecate WP_Widget for __construct. Required for wp 4.3+.
158
  * Fix google rich snippets by using #Ratings as the vocabulary.
shortcode/mce/kkstarratings/editor_plugin.js CHANGED
@@ -5,10 +5,10 @@
5
 
6
  // Register button and click event
7
  ed.addButton('kkstarratings', {
8
- title : 'Insert Star Ratings',
9
- cmd : 'mceKKStarRatings',
10
- image: url + '/icon.png',
11
- onclick : function(){
12
  ed.execCommand('mceReplaceContent', false, "[kkstarratings]");
13
  }});
14
  },
@@ -18,7 +18,7 @@
18
  longname : 'kk Star Ratings',
19
  author : 'Kamal Khan',
20
  authorurl : 'http://bhittani.com',
21
- infourl : 'http://wakeusup.com/2011/05/kk-star-ratings',
22
  version : tinymce.majorVersion + "." + tinymce.minorVersion
23
  };
24
  }
@@ -26,5 +26,5 @@
26
 
27
  // Register plugin
28
  tinymce.PluginManager.add('kkstarratings', tinymce.plugins.kkStarRatings);
29
-
30
- })();
5
 
6
  // Register button and click event
7
  ed.addButton('kkstarratings', {
8
+ title : 'kk Star Ratings',
9
+ cmd : 'mceKKStarRatings',
10
+ image: url + '/icon.png',
11
+ onClick : function(){
12
  ed.execCommand('mceReplaceContent', false, "[kkstarratings]");
13
  }});
14
  },
18
  longname : 'kk Star Ratings',
19
  author : 'Kamal Khan',
20
  authorurl : 'http://bhittani.com',
21
+ infourl : 'http://bhittani.com',
22
  version : tinymce.majorVersion + "." + tinymce.minorVersion
23
  };
24
  }
26
 
27
  // Register plugin
28
  tinymce.PluginManager.add('kkstarratings', tinymce.plugins.kkStarRatings);
29
+
30
+ })();
shortcode/mce/kkstarratings/tiny_mce_popup.js CHANGED
@@ -1,5 +1 @@
1
-
2
- // Uncomment and change this document.domain value if you are loading the script cross subdomains
3
- // document.domain = 'moxiecode.com';
4
-
5
- var tinymce=null,tinyMCEPopup,tinyMCE;tinyMCEPopup={init:function(){var b=this,a,c;a=b.getWin();tinymce=a.tinymce;tinyMCE=a.tinyMCE;b.editor=tinymce.EditorManager.activeEditor;b.params=b.editor.windowManager.params;b.features=b.editor.windowManager.features;b.dom=b.editor.windowManager.createInstance("tinymce.dom.DOMUtils",document,{ownEvents:true,proxy:tinyMCEPopup._eventProxy});b.dom.bind(window,"ready",b._onDOMLoaded,b);if(b.features.popup_css!==false){b.dom.loadCSS(b.features.popup_css||b.editor.settings.popup_css)}b.listeners=[];b.onInit={add:function(e,d){b.listeners.push({func:e,scope:d})}};b.isWindow=!b.getWindowArg("mce_inline");b.id=b.getWindowArg("mce_window_id");b.editor.windowManager.onOpen.dispatch(b.editor.windowManager,window)},getWin:function(){return(!window.frameElement&&window.dialogArguments)||opener||parent||top},getWindowArg:function(c,b){var a=this.params[c];return tinymce.is(a)?a:b},getParam:function(b,a){return this.editor.getParam(b,a)},getLang:function(b,a){return this.editor.getLang(b,a)},execCommand:function(d,c,e,b){b=b||{};b.skip_focus=1;this.restoreSelection();return this.editor.execCommand(d,c,e,b)},resizeToInnerSize:function(){var a=this;setTimeout(function(){var b=a.dom.getViewPort(window);a.editor.windowManager.resizeBy(a.getWindowArg("mce_width")-b.w,a.getWindowArg("mce_height")-b.h,a.id||window)},10)},executeOnLoad:function(s){this.onInit.add(function(){eval(s)})},storeSelection:function(){this.editor.windowManager.bookmark=tinyMCEPopup.editor.selection.getBookmark(1)},restoreSelection:function(){var a=tinyMCEPopup;if(!a.isWindow&&tinymce.isIE){a.editor.selection.moveToBookmark(a.editor.windowManager.bookmark)}},requireLangPack:function(){var b=this,a=b.getWindowArg("plugin_url")||b.getWindowArg("theme_url");if(a&&b.editor.settings.language&&b.features.translate_i18n!==false&&b.editor.settings.language_load!==false){a+="/langs/"+b.editor.settings.language+"_dlg.js";if(!tinymce.ScriptLoader.isDone(a)){document.write('<script type="text/javascript" src="'+tinymce._addVer(a)+'"><\/script>');tinymce.ScriptLoader.markDone(a)}}},pickColor:function(b,a){this.execCommand("mceColorPicker",true,{color:document.getElementById(a).value,func:function(e){document.getElementById(a).value=e;try{document.getElementById(a).onchange()}catch(d){}}})},openBrowser:function(a,c,b){tinyMCEPopup.restoreSelection();this.editor.execCallback("file_browser_callback",a,document.getElementById(a).value,c,window)},confirm:function(b,a,c){this.editor.windowManager.confirm(b,a,c,window)},alert:function(b,a,c){this.editor.windowManager.alert(b,a,c,window)},close:function(){var a=this;function b(){a.editor.windowManager.close(window);tinymce=tinyMCE=a.editor=a.params=a.dom=a.dom.doc=null}if(tinymce.isOpera){a.getWin().setTimeout(b,0)}else{b()}},_restoreSelection:function(){var a=window.event.srcElement;if(a.nodeName=="INPUT"&&(a.type=="submit"||a.type=="button")){tinyMCEPopup.restoreSelection()}},_onDOMLoaded:function(){var b=tinyMCEPopup,d=document.title,e,c,a;if(b.features.translate_i18n!==false){c=document.body.innerHTML;if(tinymce.isIE){c=c.replace(/ (value|title|alt)=([^"][^\s>]+)/gi,' $1="$2"')}document.dir=b.editor.getParam("directionality","");if((a=b.editor.translate(c))&&a!=c){document.body.innerHTML=a}if((a=b.editor.translate(d))&&a!=d){document.title=d=a}}if(!b.editor.getParam("browser_preferred_colors",false)||!b.isWindow){b.dom.addClass(document.body,"forceColors")}document.body.style.display="";if(tinymce.isIE){document.attachEvent("onmouseup",tinyMCEPopup._restoreSelection);b.dom.add(b.dom.select("head")[0],"base",{target:"_self"})}b.restoreSelection();b.resizeToInnerSize();if(!b.isWindow){b.editor.windowManager.setTitle(window,d)}else{window.focus()}if(!tinymce.isIE&&!b.isWindow){b.dom.bind(document,"focus",function(){b.editor.windowManager.focus(b.id)})}tinymce.each(b.dom.select("select"),function(f){f.onkeydown=tinyMCEPopup._accessHandler});tinymce.each(b.listeners,function(f){f.func.call(f.scope,b.editor)});if(b.getWindowArg("mce_auto_focus",true)){window.focus();tinymce.each(document.forms,function(g){tinymce.each(g.elements,function(f){if(b.dom.hasClass(f,"mceFocus")&&!f.disabled){f.focus();return false}})})}document.onkeyup=tinyMCEPopup._closeWinKeyHandler},_accessHandler:function(a){a=a||window.event;if(a.keyCode==13||a.keyCode==32){var b=a.target||a.srcElement;if(b.onchange){b.onchange()}return tinymce.dom.Event.cancel(a)}},_closeWinKeyHandler:function(a){a=a||window.event;if(a.keyCode==27){tinyMCEPopup.close()}},_eventProxy:function(a){return function(b){tinyMCEPopup.dom.events.callNativeHandler(a,b)}}};tinyMCEPopup.init();
1
+ var tinymce=null,tinyMCEPopup,tinyMCE;tinyMCEPopup={init:function(){var b=this,a,c;a=b.getWin();tinymce=a.tinymce;tinyMCE=a.tinyMCE;b.editor=tinymce.EditorManager.activeEditor;b.params=b.editor.windowManager.params;b.features=b.editor.windowManager.features;b.dom=b.editor.windowManager.createInstance("tinymce.dom.DOMUtils",document,{ownEvents:true,proxy:tinyMCEPopup._eventProxy});b.dom.bind(window,"ready",b._onDOMLoaded,b);if(b.features.popup_css!==false){b.dom.loadCSS(b.features.popup_css||b.editor.settings.popup_css)}b.listeners=[];b.onInit={add:function(e,d){b.listeners.push({func:e,scope:d})}};b.isWindow=!b.getWindowArg("mce_inline");b.id=b.getWindowArg("mce_window_id");b.editor.windowManager.onOpen.dispatch(b.editor.windowManager,window)},getWin:function(){return(!window.frameElement&&window.dialogArguments)||opener||parent||top},getWindowArg:function(c,b){var a=this.params[c];return tinymce.is(a)?a:b},getParam:function(b,a){return this.editor.getParam(b,a)},getLang:function(b,a){return this.editor.getLang(b,a)},execCommand:function(d,c,e,b){b=b||{};b.skip_focus=1;this.restoreSelection();return this.editor.execCommand(d,c,e,b)},resizeToInnerSize:function(){var a=this;setTimeout(function(){var b=a.dom.getViewPort(window);a.editor.windowManager.resizeBy(a.getWindowArg("mce_width")-b.w,a.getWindowArg("mce_height")-b.h,a.id||window)},10)},executeOnLoad:function(s){this.onInit.add(function(){eval(s)})},storeSelection:function(){this.editor.windowManager.bookmark=tinyMCEPopup.editor.selection.getBookmark(1)},restoreSelection:function(){var a=tinyMCEPopup;if(!a.isWindow&&tinymce.isIE){a.editor.selection.moveToBookmark(a.editor.windowManager.bookmark)}},requireLangPack:function(){var b=this,a=b.getWindowArg("plugin_url")||b.getWindowArg("theme_url");if(a&&b.editor.settings.language&&b.features.translate_i18n!==false&&b.editor.settings.language_load!==false){a+="/langs/"+b.editor.settings.language+"_dlg.js";if(!tinymce.ScriptLoader.isDone(a)){document.write('<script type="text/javascript" src="'+tinymce._addVer(a)+'"><\/script>');tinymce.ScriptLoader.markDone(a)}}},pickColor:function(b,a){this.execCommand("mceColorPicker",true,{color:document.getElementById(a).value,func:function(e){document.getElementById(a).value=e;try{document.getElementById(a).onchange()}catch(d){}}})},openBrowser:function(a,c,b){tinyMCEPopup.restoreSelection();this.editor.execCallback("file_browser_callback",a,document.getElementById(a).value,c,window)},confirm:function(b,a,c){this.editor.windowManager.confirm(b,a,c,window)},alert:function(b,a,c){this.editor.windowManager.alert(b,a,c,window)},close:function(){var a=this;function b(){a.editor.windowManager.close(window);tinymce=tinyMCE=a.editor=a.params=a.dom=a.dom.doc=null}if(tinymce.isOpera){a.getWin().setTimeout(b,0)}else{b()}},_restoreSelection:function(){var a=window.event.srcElement;if(a.nodeName=="INPUT"&&(a.type=="submit"||a.type=="button")){tinyMCEPopup.restoreSelection()}},_onDOMLoaded:function(){var b=tinyMCEPopup,d=document.title,e,c,a;if(b.features.translate_i18n!==false){c=document.body.innerHTML;if(tinymce.isIE){c=c.replace(/ (value|title|alt)=([^"][^\s>]+)/gi,' $1="$2"')}document.dir=b.editor.getParam("directionality","");if((a=b.editor.translate(c))&&a!=c){document.body.innerHTML=a}if((a=b.editor.translate(d))&&a!=d){document.title=d=a}}if(!b.editor.getParam("browser_preferred_colors",false)||!b.isWindow){b.dom.addClass(document.body,"forceColors")}document.body.style.display="";if(tinymce.isIE){document.attachEvent("onmouseup",tinyMCEPopup._restoreSelection);b.dom.add(b.dom.select("head")[0],"base",{target:"_self"})}b.restoreSelection();b.resizeToInnerSize();if(!b.isWindow){b.editor.windowManager.setTitle(window,d)}else{window.focus()}if(!tinymce.isIE&&!b.isWindow){b.dom.bind(document,"focus",function(){b.editor.windowManager.focus(b.id)})}tinymce.each(b.dom.select("select"),function(f){f.onkeydown=tinyMCEPopup._accessHandler});tinymce.each(b.listeners,function(f){f.func.call(f.scope,b.editor)});if(b.getWindowArg("mce_auto_focus",true)){window.focus();tinymce.each(document.forms,function(g){tinymce.each(g.elements,function(f){if(b.dom.hasClass(f,"mceFocus")&&!f.disabled){f.focus();return false}})})}document.onkeyup=tinyMCEPopup._closeWinKeyHandler},_accessHandler:function(a){a=a||window.event;if(a.keyCode==13||a.keyCode==32){var b=a.target||a.srcElement;if(b.onchange){b.onchange()}return tinymce.dom.Event.cancel(a)}},_closeWinKeyHandler:function(a){a=a||window.event;if(a.keyCode==27){tinyMCEPopup.close()}},_eventProxy:function(a){return function(b){tinyMCEPopup.dom.events.callNativeHandler(a,b)}}};tinyMCEPopup.init();