Link Plugin RTE Touch UI

Avatar

Avatar

NitroHazeDev

Avatar

NitroHazeDev

NitroHazeDev

22-06-2016

Guys,

I am trying to find out if there is any way i could add a custom plugin similar to the OOTB coral UI link plugin for the touch UI. Please let me know the steps i need to follow

Appreciate help here.

Replies

Avatar

Avatar

smacdonald2008

Total Posts

12.7K

Likes

1.4K

Correct Reply

2.3K

Avatar

smacdonald2008

Total Posts

12.7K

Likes

1.4K

Correct Reply

2.3K
smacdonald2008

22-06-2016

HI Nicole - see this blog from Sreekanth Choudry Nalabotu 

http://experience-aem.blogspot.ca/2015/11/aem-61-extend-touch-ui-rich-text-table-plugin-add-summary....

He also has other articles on this blog that you may find helpful.  

Avatar

Avatar

NitroHazeDev

Avatar

NitroHazeDev

NitroHazeDev

22-06-2016

smacdonald2008 wrote...

HI Nicole - see this blog from Sreekanth Choudry Nalabotu 

http://experience-aem.blogspot.ca/2015/11/aem-61-extend-touch-ui-rich-text-table-plugin-add-summary....

He also has other articles on this blog that you may find helpful.  

 

 

 

Thank you Scott, i did refer to that but i was trying to figure out a way to create a new plugin similar to the linkplugin JS  with the required customizations. I somehow think Link plugin for touch UI is located at /etc/clientlibs/granite/coralui2/optional/rte/js/core/plugins/LinkPlugin.js, but unsure.

Avatar

Avatar

kautuk_sahni

Community Manager

Total Posts

5.7K

Likes

1.0K

Correct Reply

1.1K

Avatar

kautuk_sahni

Community Manager

Total Posts

5.7K

Likes

1.0K

Correct Reply

1.1K
kautuk_sahni
Community Manager

23-06-2016

Hi 

"LinkPlugin.js" is the things your are looking for.

To provide a new plugin in RTE, a new clientlib will have to be created. In the js file, the intended functionality of button can be implemented in ExtJs. In CSS file, the appearance/image of thee button can be specified. Then the newly created clientlib can be registered as a plugin for RTE by using following line :

CUI.rte.plugins.PluginRegistry.register("pluginName",ClientlibName.PluginName.Plugin);

The entire process has been described step by step AT :- http://experience-aem.blogspot.in/2014/02/aem-cq-56-extend-richtext-editor-add-new-plugin-pullquote....

Overwriting " /etc/clientlibs/" is not a good practice.

The problem comes with upgrades:
- unchanged defaults should be upgraded
- customer changes however should not be overwritten
- but the new product version should be kept available, so the customer can look at it & upgrade his version manually

 

Thanks and Regards

Kautuk Sahni

Avatar

Avatar

NitroHazeDev

Avatar

NitroHazeDev

NitroHazeDev

23-06-2016

kautuksahni wrote...

Hi 

"LinkPlugin.js" is the things your are looking for.

To provide a new plugin in RTE, a new clientlib will have to be created. In the js file, the intended functionality of button can be implemented in ExtJs. In CSS file, the appearance/image of thee button can be specified. Then the newly created clientlib can be registered as a plugin for RTE by using following line :

CUI.rte.plugins.PluginRegistry.register("pluginName",ClientlibName.PluginName.Plugin);

The entire process has been described step by step AT :- http://experience-aem.blogspot.in/2014/02/aem-cq-56-extend-richtext-editor-add-new-plugin-pullquote....

Overwriting " /etc/clientlibs/" is not a good practice.

The problem comes with upgrades:
- unchanged defaults should be upgraded
- customer changes however should not be overwritten
- but the new product version should be kept available, so the customer can look at it & upgrade his version manually

 

Thanks and Regards

Kautuk Sahni

 

Thank you Kautuk,

I will give it a shot and update with the outcome. I did look at the link you provided, but  isn't it for Classic UI, i guess i would probably have to refer to the link that Scott shared for touch UI?

Avatar

Avatar

sompalli

Avatar

sompalli

sompalli

14-12-2016

NitroHazeDev wrote...

kautuksahni wrote...

Hi 

"LinkPlugin.js" is the things your are looking for.

To provide a new plugin in RTE, a new clientlib will have to be created. In the js file, the intended functionality of button can be implemented in ExtJs. In CSS file, the appearance/image of thee button can be specified. Then the newly created clientlib can be registered as a plugin for RTE by using following line :

CUI.rte.plugins.PluginRegistry.register("pluginName",ClientlibName.PluginName.Plugin);

The entire process has been described step by step AT :- http://experience-aem.blogspot.in/2014/02/aem-cq-56-extend-richtext-editor-add-new-plugin-pullquote....

Overwriting " /etc/clientlibs/" is not a good practice.

The problem comes with upgrades:
- unchanged defaults should be upgraded
- customer changes however should not be overwritten
- but the new product version should be kept available, so the customer can look at it & upgrade his version manually

 

Thanks and Regards

Kautuk Sahni

 

Thank you Kautuk,

I will give it a shot and update with the outcome. I did look at the link you provided, but  isn't it for Classic UI, i guess i would probably have to refer to the link that Scott shared for touch UI?

 

Hi,

I have same kinda requirement, Need to add some more fields to RTE Link Plugin. Could you please help me what are the classes i need to extend ?

Thanks in advance. 

Avatar

Avatar

hemantbellani-O

Avatar

hemantbellani-O

hemantbellani-O

31-08-2017

Hi Sompali,

We have a similar requirement, so wanted to check if the above attempt resolved your quest?

If yes, could you possibly share the steps or some cues around it?

Thanks.

Hemant