"Code" button in CKEditor - javascript

I'm using CKEditor (currently using ver. 3.4.1 - I can upgrade if it's necessary) and I'm missing a possibility to use the <code> tag, either from the Format dropdown or via a button on the toolbar.
I couldn't find a plugin that would make this possible. I have also no experience or knowledge of how to write my own plugin for that.
Do you know of a plugin that might help me enable the "code" button/format (wrapping selected text into <code> tags)? If there is none, I would appreciate if you directed me to online resources about CKEditor plugin development (some sort of tutorial explaining the bare basics).
In case it's useful, my site's using Drupal 6.19, CKEditor module, CKEditor 3.4.1. As for plugin development tutorials, I have already found this, but most of it seems to beyond my grasp.

I solved with this ckeditor plugin:
http://code.google.com/p/ckeditor-syntaxhighlight/
It's also compatible with the jquery plugin SyntaxHighlighter
http://alexgorbatchev.com/SyntaxHighlighter/

Try https://ckeditor.com/cke4/addon/codeTag
config.extraPlugins = 'codeTag';
No additional dependencies.

Get wysiwyg
Browse configuration>wysiwyg
...
Enable the 'source' button.

Related

Issue with Upgrading TinyMCE version to 5 on FormBuilder

We have been using FormBuilder to build forms wherein we use TextArea with TinyMCE (version 4.* by default).
We tried to upgrade the TinyMCE library by replacing the existing TinyMCE CDN link - with version 5.* CDN link - in to form-builder.min.js.
this.js=["https://cdn.tinymce.com/4/tinymce.min.js"]
to
this.js=["https://cdn.tiny.cloud/1/no-api-key/tinymce/5/tinymce.min.js"]
After upgrade, it started giving issues when we have multiple TinyMCE elements on a single page as shown in the image:
TinyMCE with Form Builder
Have also tried to include self hosted TinyMCE library which is also giving the same issue. The TinyMCE version 4 was working fine when we use from CDN, but including local libraries for TinyMCE 4.* and using CDN for TinyMCE 5.* is also not working.
Looking for help to correctly upgrade the TinyMCE version on FormBuilder.
Thanks.

Wordpress menu links not working with left click

My wordpress site menu links not working with left click, but when I open them in new tab it works fine, I have installed a theme on it nothing custom developed.
http://rockstar-marketing.com/
Looks like a conflict between a theme and plugin. Try disabling plugins. Start with WP Super Minify. Its compression methods are a common source for conflicts as can be seen from its support forums.
If the problem disappears when you disable a plugin, you've identified the source of the issue. Then for the solution:
Re-enable the plugin and check its settings. Some plugins have compatibility mode options.
Report the issue to the plugin author on their support forum if plugin settings didn't help. Disable plugin until the issue is fixed.
i think this is issue with plugin you used jch-optimized try to disable it and check the links are working or not and you have option to exclude option which js is conflict with theme
Hope this help you!
I was facing a similar issue working with a premium there.
It was because of a plugin - Elementor.
Once I disabled it the theme worked as it was supposed to :)
I hope this helps you. cheers.

Wordpress 3.8 jQuery

I have a blog using Wordpress version 3.8 (http://tech-article.com). If I visit my site as a user it is working well. But if I visit my site after logging in as an admin than then hot post area JQuery effects such as rendering the post title and post avatar are not working.
I opened the console and got what you see below. May be JQuery is not working?
"undefined"!=typeof jQuery?("undefined"==typeof jQuery.fn.hoverIntent&&!function(a){a.fn.hoverIntent=function(b,c,d){var e={interval:100,sensitivity:7,timeout:0};e="object"==typeof b?a.extend(e,b):a.isFunction(c)?a.extend(e,{over:b,out:c,selector:d}):a.extend(e,{over:b,out:b,selector:c});var f,g,h,i,j=function(a){f=a.pageX,g=a.pageY},k=function(b,c){return c.hoverIntent_t=clearTimeout(c.hoverIntent_t),Math.abs(h-f)+Math.abs(i-g)<e.sensitivity?(a(c).off("mousemove.hoverIntent",j),c.hoverIntent_s=1,e.over.apply(c,[b])):(h=f,i=g,c.hoverIntent_t=setTimeout(function(){k(b,c)},e.interval),void 0)},l=function(a,b){return b.hoverIntent_t=clearTimeout(b.hoverIntent_t),b.hoverIntent_s=0,e.out.apply(b,[a])},m=function(b){var c=jQuery.extend({},b),d=this;d.hoverIntent_t&&(d.hoverIntent_t=clearTimeout(d.hoverIntent_t)),"mouseenter"==b.type?(h=c.pageX,i=c.pageY,a(d).on("mousemove.hoverIntent",j),1!=d.hoverIntent_s&&(d.hoverIntent_t=setTimeout(function(){k(c,d)},e.interval))):(a(d).off("mousemove.hoverIntent",j),1==d.hoverIntent_s&&(d.hoverIntent_t=setTimeout(function(){l(c,d)},e.timeout)))};return this.on({"mouseenter.hoverIntent":m,"mouseleave.hoverIntent":m},e.selector)}}(jQuery),jQuery(document).ready(function(a){var b,c,d,e=a("#wpadminbar"),f=!1;b=function(b,c){var d=a(c),e=d.attr("tabindex");e&&d.attr("tabindex","0").attr("tabindex",e)},c=function(b){e.find("li.menupop").on("click.wp-mobile-hover",function(c){var d=a(this);d.parent().is("#wp-admin-bar-root-default")&&!d.hasClass("hover")?(c.preventDefault(),e.find("li.menupop.hover").removeClass("hover"),d.addClass("hover")):d.hasClass("hover")||(c.stopPropagation(),c.preventDefault(),d.addClass("hover")),b&&(a("li.menupop").off("click.wp-mobile-hover"),f=!1)})},d=function(){var b=/Mobile\/.+Safari/.test(navigator.userAgent)?"touchstart":"click";a(document.body).on(b+".wp-mobile-hover",function(b){a(b.target).closest("#wpadminbar").length||e.find("li.menupop.hover").removeClass("hover")})},e.removeClass("nojq").removeClass("nojs"),"ontouchstart"in window?(e.on("touchstart",function(){c(!0),f=!0}),d()):/IEMobile\/[1-9]/.test(navigator.userAgent)&&(c(),d()),e.find("li.menupop").hoverIntent({over:function(){f||a(this).addClass("hover")},out:function(){f||a(this).removeClass("hover")},timeout:180,sensitivity:7,interval:100}),window.location.hash&&window.scrollBy(0,-32),a("#wp-admin-bar-get-shortlink").click(function(b){b.preventDefault(),a(this).addClass("selected").children(".shortlink-input").blur(function(){a(this).parents("#wp-admin-bar-get-shortlink").removeClass("selected")}).focus().select()}),a("#wpadminbar li.menupop > .ab-item").bind("keydown.adminbar",function(c){if(13==c.which){var d=a(c.target),e=d.closest("ab-sub-wrapper");c.stopPropagation(),c.preventDefault(),e.length||(e=a("#wpadminbar .quicklinks")),e.find(".menupop").removeClass("hover"),d.parent().toggleClass("hover"),d.siblings(".ab-sub-wrapper").find(".ab-item").each(b)}}).each(b),a("#wpadminbar .ab-item").bind("keydown.adminbar",function(c){if(27==c.which){var d=a(c.target);c.stopPropagation(),c.preventDefault(),d.closest(".hover").removeClass("hover").children(".ab-item").focus(),d.siblings(".ab-sub-wrapper").find(".ab-item").each(b)}}),a("#wpadminbar").click(function(b){("wpadminbar"==b.target.id||"wp-admin-bar-top-secondary"==b.target.id)&&(b.preventDefault(),a("html, body").animate({scrollTop:0},"fast"))}),a(".screen-reader-shortcut").keydown(function(b){var c,d;13==b.which&&(c=a(this).attr("href"),d=navigator.userAgent.toLowerCase(),-1!=d.indexOf("applewebkit")&&c&&"#"==c.charAt(0)&&setTimeout(function(){a(c).focus()},100))}),"sessionStorage"in window&&a("#wp-admin-bar-logout a").click(function(){try{for(var a in sessionStorage)-1!=a.indexOf("wp-autosave-")&&sessionStorage.removeItem(a)}catch(b){}}),navigator.userAgent&&-1===document.body.className.indexOf("no-font-face")&&/Android (1.0|1.1|1.5|1.6|2.0|2.1)|Nokia|Opera Mini|w(eb)?OSBrowser|webOS|UCWEB|Windows Phone OS 7|XBLWP7|ZuneWP7|MSIE 7/.test(navigator.userAgent)&&(document.body.className+=" no-font-face")})):!function(a,b){var c,d=function(a,b,c){a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent&&a.attachEvent("on"+b,function(){return c.call(a,window.event)})},e=new RegExp("\\bhover\\b","g"),f=[],g=new RegExp("\\bselected\\b","g"),h=function(a){for(var b=f.length;b--;)if(f[b]&&a==f[b][1])return f[b][0];return!1},i=function(b){for(var d,i,j,k,l,m,n=[],o=0;b&&b!=c&&b!=a;)"LI"==b.nodeName.toUpperCase()&&(n[n.length]=b,i=h(b),i&&clearTimeout(i),b.className=b.className?b.className.replace(e,"")+" hover":"hover",k=b),b=b.parentNode;if(k&&k.parentNode&&(l=k.parentNode,l&&"UL"==l.nodeName.toUpperCase()))for(d=l.childNodes.length;d--;)m=l.childNodes[d],m!=k&&(m.className=m.className?m.className.replace(g,""):"");for(d=f.length;d--;){for(j=!1,o=n.length;o--;)n[o]==f[d][1]&&(j=!0);j||(f[d][1].className=f[d][1].className?f[d][1].className.replace(e,""):"")}},j=function(b){for(;b&&b!=c&&b!=a;)"LI"==b.nodeName.toUpperCase()&&!function(a){var b=setTimeout(function(){a.className=a.className?a.className.replace(e,""):""},500);f[f.length]=[b,a]}(b),b=b.parentNode},k=function(b){for(var d,e,f,h=b.target||b.srcElement;;){if(!h||h==a||h==c)return;if(h.id&&"wp-admin-bar-get-shortlink"==h.id)break;h=h.parentNode}for(b.preventDefault&&b.preventDefault(),b.returnValue=!1,-1==h.className.indexOf("selected")&&(h.className+=" selected"),d=0,e=h.childNodes.length;e>d;d++)if(f=h.childNodes[d],f.className&&-1!=f.className.indexOf("shortlink-input")){f.focus(),f.select(),f.onblur=function(){h.className=h.className?h.className.replace(g,""):""};break}return!1},l=function(a){var b,c,d,e,f,g;if(!("wpadminbar"!=a.id&&"wp-admin-bar-top-secondary"!=a.id||(b=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,1>b)))for(g=b>800?130:100,c=Math.min(12,Math.round(b/g)),d=b>800?Math.round(b/30):Math.round(b/20),e=[],f=0;b;)b-=d,0>b&&(b=0),e.push(b),setTimeout(function(){window.scrollTo(0,e.shift())},f*c),f++};d(b,"load",function(){c=a.getElementById("wpadminbar"),a.body&&c&&(a.body.appendChild(c),c.className&&(c.className=c.className.replace(/nojs/,"")),d(c,"mouseover",function(a){i(a.target||a.srcElement)}),d(c,"mouseout",function(a){j(a.target||a.srcElement)}),d(c,"click",k),d(c,"click",function(a){l(a.target||a.srcElement)}),d(document.getElementById("wp-admin-bar-logout"),"click",function(){if("sessionStorage"in window)try{for(var a in sessionStorage)-1!=a.indexOf("wp-autosave-")&&sessionStorage.removeItem(a)}catch(b){}})),b.location.hash&&b.scrollBy(0,-32),navigator.userAgent&&-1===document.body.className.indexOf("no-font-face")&&/Android (1.0|1.1|1.5|1.6|2.0|2.1)|Nokia|Opera Mini|w(eb)?OSBrowser|webOS|UCWEB|Windows Phone OS 7|XBLWP7|ZuneWP7|MSIE 7/.test(navigator.userAgent)&&(document.body.className+=" no-font-face")})}(document,window);
When I used it with wordpress 3.6 it worked well. But this the problem appeared after update to version 3.8. Please give proper solution.
just took a casual look at your blog, it has jquery 1.4.2 included in your theme this is probably getting overwritten by "admin bar" javascript/jquery when you are logged in as admin. I am not sure as I never check if adminbar include it's own jquery. But remove jquery from theme and use wordpress enqueue function to include wordpress' default jquery this always ensure that you have one and latest version of jquery always included.
Really we need some more information code, server etc to provide the best help but I would suggest that it is likely once you login a new extension is becoming active. It may be loading Jquery and thus causing some sort of conflict.

JQueryUI Autocomplete collides with legacy code

My issue is. I have jQueryUI in version 1.8.5 and lot and a lot of legacy source code in a project. In legacy code it happens that there is 3ple times registred plugin autocomplete for jquery. However jQueryUI is registring the very same plugin. So when I type into my javascript:
$('#some_id').autocomplete();
It's not actually a jQueryUI.
Any chance to explicit choose UI?
I tried such approach:
jQuery.fn.myautocomplete = jQuery.ui.autocomplete
And then to use in my code:
$('#some_id').myautocomplete();
But this does not work. (Well it was a blind shoot so I did not expect to much.)
Any suggestion how to workaround the problem.
P.S.
Legacy code is blessed by the Pope and cannot be removed for next year or so.
You can:
download jquery.ui without autocomplete
change jquery.ui source
change old plugin source

tiny mce spell checker

does any know if tiny MCE support spell checking?
A quick Google search for "tinymce spell" revealed: http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker
So it appears that spell checking is not built in, but requires an additional plugin.
It seems there is at least one plugin to add a spellchecking feature : TinyMCE:Plugins/spellchecker (quoting) :
This plugin adds spellchecker
functionality to TinyMCE by providing
a new button that performs a AJAX call
to a backend PHP page that uses
PSpell/ASpell or Google spellchecker.
So, I'd say TinyMCE doesn't natively support spellchecking... But, as long as you can install that plugin (Which has some requirements, especially in terms of server software), things should be OK ;-)
TinyMCE ships with an internal plugin for spell checking, however, this plugin only makes use of pre-installed browser extensions/add-ons/dictionaries. In the case of IE, it asks the user for installation of IESpell - if not available already.
To enable this feature, place the following settings in your TinyMCE configuration:
plugins: "iespell,spellchecker",
theme_advanced_buttons1: "spellchecker,iespell,|,...
Only one button will appear in the toolbar: IE will only show a button for IESpell. Firefox, chrome, etc., will only show the default spellchecker button. If no dictionary is installed in Firefox, this spell checker plugin will not have any effect. If available, you can activate/deactivate spell checking in the tiny textarea.
If you wan't to consistently provide spell checking, use the PHP plugin - as mentioned above. This plugin also works with Python/Django in combination with PyEnchant.

Categories

Resources