From 28a4ec4ac2f8d493af130d13a28432d6249f4cfd Mon Sep 17 00:00:00 2001 From: Andrew Bennett Date: Wed, 4 May 2011 19:31:45 -0600 Subject: [PATCH] Remove git submodule references in cache and add to repo instead. Fixes locomotivecms/engine#49, locomotivecms/engine#55, and locomotivecms/engine#67 --- .../plugins/com.example.aloha.plugins.Product | 1 - .../plugins/com.example.aloha.plugins.Save | 1 - .../plugins/com.gentics.aloha.plugins.Abbr | 1 - .../examples/AlohaAbbr.css | 48 ++++ .../examples/AlohaAbbr.html | 69 +++++ .../i18n/de.dict | 4 + .../i18n/en.dict | 4 + .../com.gentics.aloha.plugins.Abbr/plugin.js | 7 + .../plugins/com.gentics.aloha.plugins.Format | 1 - .../i18n/de.dict | 30 +++ .../i18n/en.dict | 30 +++ .../i18n/eo.dict | 29 +++ .../i18n/fi.dict | 30 +++ .../i18n/fr.dict | 30 +++ .../i18n/it.dict | 30 +++ .../i18n/pl.dict | 30 +++ .../i18n/ru.dict | 30 +++ .../plugin.js | 7 + ...m.gentics.aloha.plugins.HighlightEditables | 1 - .../css/HighlightEditables.css | 14 ++ .../plugin.js | 7 + .../plugins/com.gentics.aloha.plugins.Link | 1 - .../LinkList.js | 7 + .../css/Link.css | 15 ++ .../delicious.js | 7 + .../i18n/de.dict | 4 + .../i18n/en.dict | 4 + .../i18n/fr.dict | 4 + .../i18n/pl.dict | 4 + .../i18n/ru.dict | 4 + .../com.gentics.aloha.plugins.Link/plugin.js | 7 + .../com.gentics.aloha.plugins.LinkChecker | 1 - .../css/LinkChecker.css | 14 ++ .../examples/AlohaLinkChecker.css | 49 ++++ .../examples/AlohaLinkChecker.html | 82 ++++++ .../i18n/en.dict | 27 ++ .../plugin.js | 7 + .../proxy.php | 235 ++++++++++++++++++ .../plugins/com.gentics.aloha.plugins.List | 1 - .../i18n/de.dict | 2 + .../i18n/en.dict | 2 + .../i18n/eo.dict | 2 + .../i18n/fi.dict | 2 + .../i18n/fr.dict | 2 + .../i18n/it.dict | 2 + .../i18n/ru.dict | 2 + .../com.gentics.aloha.plugins.List/plugin.js | 7 + .../plugins/com.gentics.aloha.plugins.Paste | 1 - .../com.gentics.aloha.plugins.Paste/plugin.js | 7 + .../wordpastehandler.js | 7 + .../plugins/com.gentics.aloha.plugins.TOC | 1 - .../i18n/de.dict | 1 + .../i18n/en.dict | 1 + .../com.gentics.aloha.plugins.TOC/plugin.js | 1 + .../plugins/com.gentics.aloha.plugins.Table | 1 - .../i18n/de.dict | 14 ++ .../i18n/en.dict | 14 ++ .../i18n/eo.dict | 12 + .../i18n/fi.dict | 12 + .../i18n/fr.dict | 12 + .../i18n/it.dict | 12 + .../i18n/pl.dict | 12 + .../i18n/ru.dict | 12 + .../com.gentics.aloha.plugins.Table/plugin.js | 7 + .../resources/down.cur | Bin 0 -> 183 bytes .../resources/left.cur | Bin 0 -> 55 bytes .../resources/table.css | 112 +++++++++ .../resources/wai_green.png | Bin 0 -> 51404 bytes .../resources/wai_red.png | Bin 0 -> 48696 bytes 69 files changed, 1126 insertions(+), 11 deletions(-) delete mode 160000 public/javascripts/admin/aloha/plugins/com.example.aloha.plugins.Product delete mode 160000 public/javascripts/admin/aloha/plugins/com.example.aloha.plugins.Save delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/examples/AlohaAbbr.css create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/examples/AlohaAbbr.html create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/i18n/de.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/i18n/en.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/plugin.js delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/de.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/en.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/eo.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/fi.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/fr.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/it.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/pl.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/ru.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/plugin.js delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables/css/HighlightEditables.css create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables/plugin.js delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/LinkList.js create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/css/Link.css create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/delicious.js create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/i18n/de.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/i18n/en.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/i18n/fr.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/i18n/pl.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/i18n/ru.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/plugin.js delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/css/LinkChecker.css create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/examples/AlohaLinkChecker.css create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/examples/AlohaLinkChecker.html create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/i18n/en.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/plugin.js create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/proxy.php delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/de.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/en.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/eo.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/fi.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/fr.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/it.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/ru.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/plugin.js delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste/plugin.js create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste/wordpastehandler.js delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/i18n/de.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/i18n/en.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/plugin.js delete mode 160000 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/de.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/en.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/eo.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/fi.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/fr.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/it.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/pl.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/ru.dict create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/plugin.js create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/down.cur create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/left.cur create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/table.css create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/wai_green.png create mode 100644 public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/wai_red.png diff --git a/public/javascripts/admin/aloha/plugins/com.example.aloha.plugins.Product b/public/javascripts/admin/aloha/plugins/com.example.aloha.plugins.Product deleted file mode 160000 index 97cacd37..00000000 --- a/public/javascripts/admin/aloha/plugins/com.example.aloha.plugins.Product +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 97cacd37ee095d66b8018c89ac072c783df36840 diff --git a/public/javascripts/admin/aloha/plugins/com.example.aloha.plugins.Save b/public/javascripts/admin/aloha/plugins/com.example.aloha.plugins.Save deleted file mode 160000 index c574ed11..00000000 --- a/public/javascripts/admin/aloha/plugins/com.example.aloha.plugins.Save +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c574ed110c2cb3fb2927ad2ca529b18522be2f88 diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr deleted file mode 160000 index a9b8cd6b..00000000 --- a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr +++ /dev/null @@ -1 +0,0 @@ -Subproject commit a9b8cd6b908016f32dcfee138d4b9eea5ed03b5e diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/examples/AlohaAbbr.css b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/examples/AlohaAbbr.css new file mode 100644 index 00000000..84f64efe --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/examples/AlohaAbbr.css @@ -0,0 +1,48 @@ +body { + font-family: sans-serif; +} + +body { + background-color: #ccc; +} + +#bodyContent { + font-size:0.9em; +} + +h1, h2, h3, h4, h5, h6 { + font-family: sans-serif; + padding-bottom:0.1em; + padding-top:0.5em; +} +h1 { + border-bottom:1px solid #AAAAAA; +} + +h1 { font-size: 188%; } +h2 { font-size: 150%; } +h3 { font-size: 132%; } +h4 { font-size: 116%; } +h5 { font-size: 100%; } +h6 { font-size: 80%; } + +#main { + width: 650px; + margin-top: 40px; + margin-left: auto ; + margin-right: auto ; + padding: 70px; + background-color: white; + border-radius: 1px; + -moz-border-radius: 1px; + box-shadow: 5px 5px rgba(0,0,0,0.3); + -webkit-box-shadow: 5px 5px rgba(0,0,0,0.3); + -moz-box-shadow: 5px 5px rgba(0,0,0,0.3); +} + +abbr, acronym +{ + border-bottom: .1em dotted; + cursor: help; +} + diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/examples/AlohaAbbr.html b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/examples/AlohaAbbr.html new file mode 100644 index 00000000..2e0b77f1 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/examples/AlohaAbbr.html @@ -0,0 +1,69 @@ + + + + +Aloha, Abbreviations ! + + + + + + + + + + + + +
+
+
+

Aloha

+

Etymology

+

The word aloha derives from the Proto-Polynesian root *qalofa. It has cognates in other Polynesian languages, such as Samoan alofa +and Māori aroha, also meaning "love."

+

AE is the word's most advanced browser based RTE made with aloha passion.

+

A folk etymology claims that it derives from a compound of the Hawaiian words alo meaning "presence", "front", "face", or "share"; and +ha, meaning "breath of life" or "essence of life." Although alo does indeed mean "presence" etc., the word for breath is spelled with a macron +or kahakō over the a (hā) whereas the word aloha does not have a long a.

+

Usage

+

Before contact with the West, the words used for greeting were welina and anoai. Today, "aloha kakahiaka" is the phrase for "good +morning." "Aloha ʻauinalā" means "good afternoon" and "aloha ahiahi" means "good evening." "Aloha kākou" is a common form of "welcome to all."

+

In modern Hawaiʻi, numerous businesses have aloha in their names, with more than 3 pages of listings in the Oʻahu phone book alone.

+

Trends

+

Recent trends are popularizing the term elsewhere in the United States. Popular entertainer, Broadway star and Hollywood actress Bette +Midler, born in Honolulu, uses the greeting frequently in national appearances. The word was also used frequently in the hit television drama +Hawaii Five-O. In the influential 1982 film comedy Fast Times at Ridgemont High, the eccentric teacher Mr. Hand makes use of the greeting. The +Aloha Spirit is a major concept in Lilo and Stitch, a very popular Disney series of movies and TV shows, set in Hawaiʻi. The drama series Lost, +shot in Hawaiʻi, has a thank you note at the end of the credits saying "We thank the people of Hawaiʻi and their Aloha Spirit". Aloha is a term +also used in the Nickelodeon program Rocket Power.

+
    +
  • Arguably the most famous historical Hawaiian song, "Aloha ʻOe" was written by the last queen of Hawaii, Liliʻuokalani.
  • +
  • The term inspired the name of the ALOHA Protocol introduced in the 1970s by the University of Hawaii.
  • +
  • In Hawaii someone can be said to have or show aloha in the way they treat others; whether family, friend, neighbor or stranger.
  • +
+
+
+
+ + \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/i18n/de.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/i18n/de.dict new file mode 100644 index 00000000..357c67d6 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/i18n/de.dict @@ -0,0 +1,4 @@ +floatingmenu.tab.abbr=Abkürzung +button.addabbr.tooltip=Abkürzung einfügen +button.abbr.tooltip=Als Abkürzung formatieren +newabbr.defaulttext=Abb diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/i18n/en.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/i18n/en.dict new file mode 100644 index 00000000..59466c89 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/i18n/en.dict @@ -0,0 +1,4 @@ +floatingmenu.tab.abbr=Abbreviation +button.addabbr.tooltip=insert abbreviation +button.abbr.tooltip=format as abbreviation +newabbr.defaulttext=Abbr diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/plugin.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/plugin.js new file mode 100644 index 00000000..575a0312 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Abbr/plugin.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +GENTICS.Aloha.Abbr=new GENTICS.Aloha.Plugin("com.gentics.aloha.plugins.Abbr");GENTICS.Aloha.Abbr.languages=["en","de"];GENTICS.Aloha.Abbr.config=["abbr"];GENTICS.Aloha.Abbr.init=function(){this.createButtons();this.subscribeEvents();this.bindInteractions()};GENTICS.Aloha.Abbr.createButtons=function(){var that=this;this.formatAbbrButton=new GENTICS.Aloha.ui.Button({iconClass:"GENTICS_button GENTICS_button_abbr",size:"small",onclick:function(){that.formatAbbr()},tooltip:this.i18n("button.abbr.tooltip"),toggle:true});GENTICS.Aloha.FloatingMenu.addButton("GENTICS.Aloha.continuoustext",this.formatAbbrButton,GENTICS.Aloha.i18n(GENTICS.Aloha,"floatingmenu.tab.format"),1);this.insertAbbrButton=new GENTICS.Aloha.ui.Button({iconClass:"GENTICS_button GENTICS_button_abbr",size:"small",onclick:function(){that.insertAbbr(false)},tooltip:this.i18n("button.addabbr.tooltip"),toggle:false});GENTICS.Aloha.FloatingMenu.addButton("GENTICS.Aloha.continuoustext",this.insertAbbrButton,GENTICS.Aloha.i18n(GENTICS.Aloha,"floatingmenu.tab.insert"),1);GENTICS.Aloha.FloatingMenu.createScope(this.getUID("abbr"),"GENTICS.Aloha.continuoustext");this.abbrField=new GENTICS.Aloha.ui.AttributeField({width:320});GENTICS.Aloha.FloatingMenu.addButton(this.getUID("abbr"),this.abbrField,this.i18n("floatingmenu.tab.abbr"),1)};GENTICS.Aloha.Abbr.bindInteractions=function(){var that=this;this.abbrField.addListener("blur",function(obj,event){if(this.getValue()==""){that.removeAbbr()}});for(var i=0;i'+abbrText+"");GENTICS.Utils.Dom.insertIntoDOM(newAbbr,range,jQuery(GENTICS.Aloha.activeEditable.obj));range.startContainer=range.endContainer=newAbbr.contents().get(0);range.startOffset=0;range.endOffset=abbrText.length}else{var newAbbr=jQuery('');GENTICS.Utils.Dom.addMarkup(range,newAbbr,false)}range.select();this.abbrField.focus()};GENTICS.Aloha.Abbr.removeAbbr=function(){var range=GENTICS.Aloha.Selection.getRangeObject();var foundMarkup=this.findAbbrMarkup();if(foundMarkup){GENTICS.Utils.Dom.removeFromDOM(foundMarkup,range,true);GENTICS.Aloha.activeEditable.obj[0].focus();range.select()}};GENTICS.Aloha.Abbr.makeClean=function(obj){}; \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format deleted file mode 160000 index c71edba4..00000000 --- a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c71edba41798a4be621197a7418747252884a34d diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/de.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/de.dict new file mode 100644 index 00000000..467b893e --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/de.dict @@ -0,0 +1,30 @@ +button.b.tooltip=Fett +button.i.tooltip=Kursiv +button.u.tooltip=Unterstrichen +button.cite.tooltip=Zitat +button.q.tooltip= +button.code.tooltip=Code +button.abbr.tooltip=Abkürzung +button.del.tooltip=Durchgestrichen +button.sub.tooltip=Tiefgestellt +button.sup.tooltip=Hochgestellt +button.p.tooltip=Absatz +button.h1.tooltip=Überschrift 1 +button.h2.tooltip=Überschrift 2 +button.h3.tooltip=Überschrift 3 +button.h4.tooltip=Überschrift 4 +button.h5.tooltip=Überschrift 5 +button.h6.tooltip=Überschrift 6 +button.pre.tooltip=Vorformatierter text +button.title.tooltip=Titel +button.removeFormat.tooltip=Formatierung entfernen +button.removeFormat.text=Formatierung entfernen +GENTICS_button_p=GENTICS_button_p_de +GENTICS_button_h1=GENTICS_button_h1_de +GENTICS_button_h2=GENTICS_button_h2_de +GENTICS_button_h3=GENTICS_button_h3_de +GENTICS_button_h4=GENTICS_button_h4_de +GENTICS_button_h5=GENTICS_button_h5_de +GENTICS_button_h6=GENTICS_button_h6_de +GENTICS_button_pre=GENTICS_button_pre_de +GENTICS_button_title=GENTICS_button_title_de \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/en.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/en.dict new file mode 100644 index 00000000..106a1e32 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/en.dict @@ -0,0 +1,30 @@ +button.b.tooltip=Bold +button.i.tooltip=Italic +button.u.tooltip=Underline +button.cite.tooltip=Cite +button.q.tooltip= +button.code.tooltip=Code +button.abbr.tooltip=Abbreviation +button.del.tooltip=Strikethrough +button.sub.tooltip=Subscript +button.sup.tooltip=Superscript +button.p.tooltip=Paragraph +button.h1.tooltip=Heading 1 +button.h2.tooltip=Heading 2 +button.h3.tooltip=Heading 3 +button.h4.tooltip=Heading 4 +button.h5.tooltip=Heading 5 +button.h6.tooltip=Heading 6 +button.pre.tooltip=Pre formated text +button.title.tooltip=Title +button.removeFormat.tooltip=Remove formatting +button.removeFormat.text=Remove formatting +GENTICS_button_p=GENTICS_button_p +GENTICS_button_h1=GENTICS_button_h1 +GENTICS_button_h2=GENTICS_button_h2 +GENTICS_button_h3=GENTICS_button_h3 +GENTICS_button_h4=GENTICS_button_h4 +GENTICS_button_h5=GENTICS_button_h5 +GENTICS_button_h6=GENTICS_button_h6 +GENTICS_button_pre=GENTICS_button_pre +GENTICS_button_title=GENTICS_button_title \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/eo.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/eo.dict new file mode 100644 index 00000000..4cbb70e6 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/eo.dict @@ -0,0 +1,29 @@ +button.i.tooltip=Oblikvigi +button.u.tooltip=Substreki +button.cite.tooltip=Citi +button.q.tooltip= +button.code.tooltip=Kodo +button.abbr.tooltip=Mallongigo +button.del.tooltip=Marki forviita +button.sub.tooltip=Superskripto +button.sup.tooltip=Subskripto +button.p.tooltip=Alineo +button.h1.tooltip=Titolo 1 +button.h2.tooltip=Subtitolo 2 +button.h3.tooltip=Subtitolo 3 +button.h4.tooltip=Subtitolo 4 +button.h5.tooltip=Subtitolo 5 +button.h6.tooltip=Subtitolo 6 +button.pre.tooltip=Antaformatigita teksto +button.title.tooltip=Titolo +button.removeFormat.tooltip=Forvii la formatigon +button.removeFormat.text=Forvii la formatigon +GENTICS_button_p=GENTICS_button_p +GENTICS_button_h1=GENTICS_button_h1 +GENTICS_button_h2=GENTICS_button_h2 +GENTICS_button_h3=GENTICS_button_h3 +GENTICS_button_h4=GENTICS_button_h4 +GENTICS_button_h5=GENTICS_button_h5 +GENTICS_button_h6=GENTICS_button_h6 +GENTICS_button_pre=GENTICS_button_pre +GENTICS_button_title=GENTICS_button_title \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/fi.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/fi.dict new file mode 100644 index 00000000..ab6cdb83 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/fi.dict @@ -0,0 +1,30 @@ +button.b.tooltip=Lihavointi +button.i.tooltip=Kursiivi +button.u.tooltip=Alleviivaus +button.cite.tooltip=Lainaus +button.q.tooltip= +button.code.tooltip=Koodi +button.abbr.tooltip=Lyhennelmä +button.del.tooltip=Yliviivaus +button.sub.tooltip=Alaindeksi +button.sup.tooltip=Yläindeksi +button.p.tooltip=Tekstikappale +button.h1.tooltip=Otsikko 1 +button.h2.tooltip=Otsikko 2 +button.h3.tooltip=Otsikko 3 +button.h4.tooltip=Otsikko 4 +button.h5.tooltip=Otsikko 5 +button.h6.tooltip=Otsikko 6 +button.pre.tooltip=Muotoiltu teksti +button.title.tooltip=Otsikko +button.removeFormat.tooltip=Poista muotoilut +button.removeFormat.text=Poista muotoilut +GENTICS_button_p=GENTICS_button_p +GENTICS_button_h1=GENTICS_button_h1 +GENTICS_button_h2=GENTICS_button_h2 +GENTICS_button_h3=GENTICS_button_h3 +GENTICS_button_h4=GENTICS_button_h4 +GENTICS_button_h5=GENTICS_button_h5 +GENTICS_button_h6=GENTICS_button_h6 +GENTICS_button_pre=GENTICS_button_pre +GENTICS_button_title=GENTICS_button_title diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/fr.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/fr.dict new file mode 100644 index 00000000..be990cc5 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/fr.dict @@ -0,0 +1,30 @@ +button.b.tooltip=Gras +button.i.tooltip=Italique +button.u.tooltip=Souligner +button.cite.tooltip=Cité +button.q.tooltip=Quote +button.code.tooltip=Code +button.abbr.tooltip=Abréviation +button.del.tooltip=Barré +button.sub.tooltip=Indice +button.sup.tooltip=Exposant +button.p.tooltip=Paragraphe +button.h1.tooltip=Titre1 +button.h2.tooltip=Rubrique2 +button.h3.tooltip=Rubrique3 +button.h4.tooltip=Rubrique4 +button.h5.tooltip=Rubrique5 +button.h6.tooltip=Rubrique6 +button.pre.tooltip=texte préformaté +button.title.tooltip=Titre +button.removeFormat.tooltip=Supprimer le formatage +button.removeFormat.text=Supprimer le formatage +GENTICS_button_p=GENTICS_button_p +GENTICS_button_h1=GENTICS_button_h1 +GENTICS_button_h2=GENTICS_button_h2 +GENTICS_button_h3=GENTICS_button_h3 +GENTICS_button_h4=GENTICS_button_h4 +GENTICS_button_h5=GENTICS_button_h5 +GENTICS_button_h6=GENTICS_button_h6 +GENTICS_button_pre=GENTICS_button_pre +GENTICS_button_title=GENTICS_button_title \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/it.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/it.dict new file mode 100644 index 00000000..f60ccbca --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/it.dict @@ -0,0 +1,30 @@ +button.b.tooltip=Grassetto +button.i.tooltip=Corsivo +button.u.tooltip=Sottolineato +button.cite.tooltip=Citazione +button.q.tooltip= +button.code.tooltip=Codice +button.abbr.tooltip=Abbreviazione +button.del.tooltip=Barrato +button.sub.tooltip=Pedice +button.sup.tooltip=Apice +button.p.tooltip=Paragrafo +button.h1.tooltip=Titolo 1 +button.h2.tooltip=Titolo 2 +button.h3.tooltip=Titolo 3 +button.h4.tooltip=Titolo 4 +button.h5.tooltip=Titolo 5 +button.h6.tooltip=Titolo 6 +button.pre.tooltip=Testo pre formattato +button.title.tooltip=Titolo +button.removeFormat.tooltip=Rimuovi formattazione +button.removeFormat.text=Rimuovi formattazione +GENTICS_button_p=GENTICS_button_p +GENTICS_button_h1=GENTICS_button_h1 +GENTICS_button_h2=GENTICS_button_h2 +GENTICS_button_h3=GENTICS_button_h3 +GENTICS_button_h4=GENTICS_button_h4 +GENTICS_button_h5=GENTICS_button_h5 +GENTICS_button_h6=GENTICS_button_h6 +GENTICS_button_pre=GENTICS_button_pre +GENTICS_button_title=GENTICS_button_title diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/pl.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/pl.dict new file mode 100644 index 00000000..eff1a8d0 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/pl.dict @@ -0,0 +1,30 @@ +button.b.tooltip=Pogrubienie +button.i.tooltip=Kursywa +button.u.tooltip=Podkreślenie +button.cite.tooltip=Cytat +button.q.tooltip= +button.code.tooltip=Kod +button.abbr.tooltip=Skrót +button.del.tooltip=Przekreślenie +button.sub.tooltip=Indeks dolny +button.sup.tooltip=Indeks górny +button.p.tooltip=Paragraf +button.h1.tooltip=Nagłówek 1 +button.h2.tooltip=Nagłówek 2 +button.h3.tooltip=Nagłówek 3 +button.h4.tooltip=Nagłówek 4 +button.h5.tooltip=Nagłówek 5 +button.h6.tooltip=Nagłówek 6 +button.pre.tooltip=Tekst preformatowany +button.title.tooltip=Tytuł +button.removeFormat.tooltip=Usuń formatowanie +button.removeFormat.text=Usuń formatowanie +GENTICS_button_p=GENTICS_button_p +GENTICS_button_h1=GENTICS_button_h1 +GENTICS_button_h2=GENTICS_button_h2 +GENTICS_button_h3=GENTICS_button_h3 +GENTICS_button_h4=GENTICS_button_h4 +GENTICS_button_h5=GENTICS_button_h5 +GENTICS_button_h6=GENTICS_button_h6 +GENTICS_button_pre=GENTICS_button_pre +GENTICS_button_title=GENTICS_button_title \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/ru.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/ru.dict new file mode 100644 index 00000000..8e8618e4 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/i18n/ru.dict @@ -0,0 +1,30 @@ +button.b.tooltip=Полужирный +button.i.tooltip=Курсив +button.u.tooltip=Подчеркивание +button.cite.tooltip=Цитировать +button.q.tooltip=Цитата +button.code.tooltip=Код +button.abbr.tooltip=Аббривиатура +button.del.tooltip=Перечеркивание +button.sub.tooltip=Нижний индекс +button.sup.tooltip=Верхний индекс +button.p.tooltip=Параграф +button.h1.tooltip=Заголовок 1 +button.h2.tooltip=Заголовок 2 +button.h3.tooltip=Заголовок 3 +button.h4.tooltip=Заголовок 4 +button.h5.tooltip=Заголовок 5 +button.h6.tooltip=Заголовок 6 +button.pre.tooltip=Отформатированный текс +button.title.tooltip=Название +button.removeFormat.tooltip=Убрать форматирование +button.removeFormat.text=Убрать форматирование +GENTICS_button_p=GENTICS_button_p +GENTICS_button_h1=GENTICS_button_h1 +GENTICS_button_h2=GENTICS_button_h2 +GENTICS_button_h3=GENTICS_button_h3 +GENTICS_button_h4=GENTICS_button_h4 +GENTICS_button_h5=GENTICS_button_h5 +GENTICS_button_h6=GENTICS_button_h6 +GENTICS_button_pre=GENTICS_button_pre +GENTICS_button_title=GENTICS_button_title \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/plugin.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/plugin.js new file mode 100644 index 00000000..fadf95a4 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Format/plugin.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +GENTICS.Aloha.Format=new GENTICS.Aloha.Plugin("com.gentics.aloha.plugins.Format");GENTICS.Aloha.Format.languages=["en","de","fr","eo","fi","ru","it","pl"];GENTICS.Aloha.Format.config=["b","i","del","sub","sup","p","title","h1","h2","h3","h4","h5","h6","pre","removeFormat"];GENTICS.Aloha.Format.init=function(){this.initButtons();var that=this;GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"editableActivated",function(e,params){that.applyButtonConfig(params.editable.obj)})};GENTICS.Aloha.Format.applyButtonConfig=function(obj){config=this.getEditableConfig(obj);for(var button in this.buttons){if(jQuery.inArray(button,config)!=-1){this.buttons[button].button.show()}else{this.buttons[button].button.hide()}}for(var i in this.multiSplitItems){if(jQuery.inArray(this.multiSplitItems[i].name,config)!=-1){this.multiSplitButton.extButton.showItem(this.multiSplitItems[i].name)}else{this.multiSplitButton.extButton.hideItem(this.multiSplitItems[i].name)}}};GENTICS.Aloha.Format.initButtons=function(){var scope="GENTICS.Aloha.continuoustext";this.buttons={};var that=this;this.multiSplitItems=new Array();this.multiSplitButton;jQuery.each(GENTICS.Aloha.Format.config,function(j,button){switch(button){case"b":case"i":case"cite":case"q":case"code":case"abbr":case"del":case"sub":case"sup":that.buttons[button]={button:new GENTICS.Aloha.ui.Button({iconClass:"GENTICS_button GENTICS_button_"+button,size:"small",onclick:function(){if(GENTICS.Aloha.activeEditable){GENTICS.Aloha.activeEditable.obj[0].focus()}var markup=jQuery("<"+button+">");var rangeObject=GENTICS.Aloha.Selection.rangeObject;var foundMarkup=rangeObject.findMarkup(function(){return this.nodeName.toLowerCase()==markup.get(0).nodeName.toLowerCase()},GENTICS.Aloha.activeEditable.obj);if(foundMarkup){if(rangeObject.isCollapsed()){GENTICS.Utils.Dom.removeFromDOM(foundMarkup,rangeObject,true)}else{GENTICS.Utils.Dom.removeMarkup(rangeObject,markup,GENTICS.Aloha.activeEditable.obj)}}else{if(rangeObject.isCollapsed()){GENTICS.Utils.Dom.extendToWord(rangeObject)}GENTICS.Utils.Dom.addMarkup(rangeObject,markup)}rangeObject.select();return false},tooltip:that.i18n("button."+button+".tooltip"),toggle:true}),markup:jQuery("<"+button+">")};GENTICS.Aloha.FloatingMenu.addButton(scope,that.buttons[button].button,GENTICS.Aloha.i18n(GENTICS.Aloha,"floatingmenu.tab.format"),1);break;case"p":case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":case"pre":that.multiSplitItems.push({name:button,tooltip:that.i18n("button."+button+".tooltip"),iconClass:"GENTICS_button "+that.i18n("GENTICS_button_"+button),markup:jQuery("<"+button+">"),click:function(){if(GENTICS.Aloha.activeEditable){GENTICS.Aloha.activeEditable.obj[0].focus()}GENTICS.Aloha.Selection.changeMarkupOnSelection(jQuery("<"+button+">"))}});break;case"removeFormat":that.multiSplitItems.push({name:button,text:that.i18n("button."+button+".text"),tooltip:that.i18n("button."+button+".tooltip"),iconClass:"GENTICS_button GENTICS_button_"+button,wide:true,click:function(){GENTICS.Aloha.Format.removeFormat()}});break;default:GENTICS.Aloha.log("warn",this,'Button "'+button+'" is not defined');break}});if(this.multiSplitItems.length>0){this.multiSplitButton=new GENTICS.Aloha.ui.MultiSplitButton({items:this.multiSplitItems});GENTICS.Aloha.FloatingMenu.addButton(scope,this.multiSplitButton,GENTICS.Aloha.i18n(GENTICS.Aloha,"floatingmenu.tab.format"),3)}GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"selectionChanged",function(event,rangeObject){jQuery.each(that.buttons,function(index,button){for(var i=0;i0){var foundMultiSplit=false;for(var i=0;i

"));var formats=["b","i","cite","q","code","abbr","del","sub","sup"];var rangeObject=GENTICS.Aloha.Selection.rangeObject;var startObj=jQuery(rangeObject.startContainer);var limitObj=jQuery(rangeObject.limitObject);if(rangeObject.isCollapsed()||startObj===limitObj){return}var parent=startObj.parent();while(parent.get(0)!==limitObj.get(0)){var index=formats.indexOf(parent.get(0).nodeName.toLowerCase());parent=parent.parent();if(index!=-1){GENTICS.Aloha.Selection.changeMarkupOnSelection(jQuery("<"+formats[index]+">"));formats.splice(index,1)}}for(var i in formats){GENTICS.Aloha.Selection.changeMarkupOnSelection(jQuery("<"+formats[i]+">"));GENTICS.Aloha.Selection.changeMarkupOnSelection(jQuery("<"+formats[i]+">"))}};GENTICS.Aloha.Format.toString=function(){return"com.gentics.aloha.plugins.Format"}; \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables deleted file mode 160000 index 11d45d8d..00000000 --- a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 11d45d8df725f0e15501c1447975b84473b8c116 diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables/css/HighlightEditables.css b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables/css/HighlightEditables.css new file mode 100644 index 00000000..ce27e7cf --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables/css/HighlightEditables.css @@ -0,0 +1,14 @@ +/*! +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ + +.GENTICS_editable_highlight { + outline: #FFE767 solid 5px !important; +} + +.GENTICS_editable_active, .GENTICS_editable_active[contenteditable=true]:focus { + outline: #B7D6FA solid 5px !important; +} diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables/plugin.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables/plugin.js new file mode 100644 index 00000000..ebb07b32 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.HighlightEditables/plugin.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +GENTICS.Aloha.HighlightEditables=new GENTICS.Aloha.Plugin("com.gentics.aloha.plugins.highlighteditables");GENTICS.Aloha.HighlightEditables.init=function(){var that=this;GENTICS.Utils.Position.addMouseMoveCallback(function(){for(var i=0;i-1)&&(!p.inFolderId||p.inFolderId==e.parentId))});callback.call(this,d)};GENTICS.Aloha.Repositories.LinkList.getChildren=function(p,callback){var d=[];for(e in this.folder){var l=this.folder[e].parentId;if(typeof this.folder[e]!="function"&&(this.folder[e].parentId==p.inFolderId||(!this.folder[e].parentId&&p.inFolderId==this.repositoryId))){d.push(this.folder[e])}}callback.call(this,d)};GENTICS.Aloha.Repositories.LinkList.parseUri=function(str){var o={strictMode:false,key:["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],q:{name:"queryKey",parser:/(?:^|&)([^&=]*)=?([^&]*)/g},parser:{strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/}},m=o.parser[o.strictMode?"strict":"loose"].exec(str),uri={},i=14;while(i--){uri[o.key[i]]=m[i]||""}uri[o.q.name]={};uri[o.key[12]].replace(o.q.parser,function($0,$1,$2){if($1){uri[o.q.name][$1]=$2}});return uri}; \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/css/Link.css b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/css/Link.css new file mode 100644 index 00000000..4eb46564 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/css/Link.css @@ -0,0 +1,15 @@ +/*! +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ + +.GENTICS_link_pointer { + cursor: pointer; +} + +.GENTICS_link_text { + cursor: text; +} + diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/delicious.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/delicious.js new file mode 100644 index 00000000..43f61d05 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Link/delicious.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +if(!GENTICS.Aloha.Repositories){GENTICS.Aloha.Repositories={}}GENTICS.Aloha.Repositories.delicious=new GENTICS.Aloha.Repository("com.gentics.aloha.repositories.delicious");GENTICS.Aloha.Repositories.delicious.settings.username="draftkraft";GENTICS.Aloha.Repositories.delicious.settings.weight=0.35;GENTICS.Aloha.Repositories.delicious.init=function(){var that=this;if(this.settings.weight+0.15>1){this.settings.weight=1-0.15}this.deliciousURL="http://feeds.delicious.com/v2/json/";if(this.settings.username){this.deliciousURL+=this.settings.username+"/";this.repositoryName="deliciuos/"+this.settings.username;this.tags=[];jQuery.ajax({type:"GET",dataType:"jsonp",url:"http://feeds.delicious.com/v2/json/tags/"+that.settings.username,success:function(data){for(var tag in data){that.tags.push(tag)}}})}else{this.repositoryName="deliciuos/"+popular;this.deliciousURL+="tag/"}};GENTICS.Aloha.Repositories.delicious.query=function(p,callback){var that=this;if(p.objectTypeFilter&&jQuery.inArray("website",p.objectTypeFilter)==-1){callback.call(this,[])}else{var tags=[];if(this.settings.username){var queryTags=p.queryString?p.queryString.split(" "):[];for(var i=0;i0){tags.push(newtags[0])}}else{tags.push(queryTag)}}}else{tags=p.queryString.split(" ")}var folderTags=p.inFolderId?p.inFolderId.split("+"):[];jQuery.extend(tags,folderTags);if(p.queryString&&tags.length==0){callback.call(that,[]);return}jQuery.ajax({type:"GET",dataType:"jsonp",url:that.deliciousURL+tags.join("+"),success:function(data){var items=[];for(var i=0;i'+linkText+"");GENTICS.Utils.Dom.insertIntoDOM(newLink,range,jQuery(GENTICS.Aloha.activeEditable.obj));range.startContainer=range.endContainer=newLink.contents().get(0);range.startOffset=0;range.endOffset=linkText.length}else{var newLink=jQuery('');GENTICS.Utils.Dom.addMarkup(range,newLink,false)}range.select();this.hrefField.focus();this.hrefChange()};GENTICS.Aloha.Link.removeLink=function(){var range=GENTICS.Aloha.Selection.getRangeObject();var foundMarkup=this.findLinkMarkup();if(foundMarkup){GENTICS.Utils.Dom.removeFromDOM(foundMarkup,range,true);GENTICS.Aloha.activeEditable.obj[0].focus();range.select()}};GENTICS.Aloha.Link.hrefChange=function(){this.hrefField.setAttribute("target",this.target,this.targetregex,this.hrefField.getQueryValue());this.hrefField.setAttribute("class",this.cssclass,this.cssclassregex,this.hrefField.getQueryValue());if(typeof this.onHrefChange=="function"){this.onHrefChange.call(this,this.hrefField.getTargetObject(),this.hrefField.getQueryValue(),this.hrefField.getItem())}GENTICS.Aloha.EventRegistry.trigger(new GENTICS.Aloha.Event("hrefChanged",GENTICS.Aloha,{obj:this.hrefField.getTargetObject(),href:this.hrefField.getQueryValue(),item:this.hrefField.getItem()}))};GENTICS.Aloha.Link.makeClean=function(obj){obj.find("a").each(function(){jQuery(this).removeClass("GENTICS_link_pointer");jQuery(this).removeClass("GENTICS_link_text")})}; \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker deleted file mode 160000 index b8bac9b6..00000000 --- a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker +++ /dev/null @@ -1 +0,0 @@ -Subproject commit b8bac9b6b11ddd2dfa141053229c17ca209425a3 diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/css/LinkChecker.css b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/css/LinkChecker.css new file mode 100644 index 00000000..797c0bea --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/css/LinkChecker.css @@ -0,0 +1,14 @@ +/*! +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ + +.GENTICS_link_error { + color: red !important; +} + +.GENTICS_link_warn { + color: red !important; +} diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/examples/AlohaLinkChecker.css b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/examples/AlohaLinkChecker.css new file mode 100644 index 00000000..2339c4a2 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/examples/AlohaLinkChecker.css @@ -0,0 +1,49 @@ +body { + font-family: sans-serif; +} + +body { + background-color: #ccc; +} + +#bodyContent { + font-size:0.9em; +} + +h1, h2, h3, h4, h5, h6 { + font-family: sans-serif; + padding-bottom:0.1em; + padding-top:0.5em; +} +h1 { + border-bottom:1px solid #AAAAAA; +} + +h1 { font-size: 188%; } +h2 { font-size: 150%; } +h3 { font-size: 132%; } +h4 { font-size: 116%; } +h5 { font-size: 100%; } +h6 { font-size: 80%; } + +#main { + width: 650px; + margin-top: 40px; + margin-left: auto ; + margin-right: auto ; + padding: 70px; + background-color: white; + border-radius: 1px; + -moz-border-radius: 1px; + box-shadow: 5px 5px rgba(0,0,0,0.3); + -webkit-box-shadow: 5px 5px rgba(0,0,0,0.3); + -moz-box-shadow: 5px 5px rgba(0,0,0,0.3); +} + +.GENTICS_link_error { + color: red; +} + +.GENTICS_link_warn { + color: orange; +} \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/examples/AlohaLinkChecker.html b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/examples/AlohaLinkChecker.html new file mode 100644 index 00000000..cdc04556 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/examples/AlohaLinkChecker.html @@ -0,0 +1,82 @@ + + + + +Aloha, link checker! + + + + + + + + + + + + + +
+
+
+

Aloha

+

Etymology

+

The word aloha derives from the Proto-Polynesian root *qalofa. It has cognates in other Polynesian languages, such as Samoan alofa +and Māori aroha, also meaning "love."

+

invalid Aloha Editor is the word's most advanced browser based Editor made with aloha passion.

+

A folk etymology claims that it derives from a compound of the Hawaiian words alo meaning "presence", "front", "face", or "share"; and +ha, meaning "breath of life" or "essence of life." Although alo does indeed mean "presence" etc., the word for breath is spelled with a macron +or kahakō over the a (hā) whereas the word aloha does not have a long a.

+

Links are the web's Rocket Power.

+

Usage

+

Before contact with the West, the words used for greeting were welina and anoai. Today, "aloha kakahiaka" is the phrase for "good +morning." "Aloha ʻauinalā" means "good afternoon" and "aloha ahiahi" means "good evening." "Aloha kākou" is a common form of "welcome to all."

+

In modern Hawaiʻi, numerous businesses have aloha in their names, with more than 3 pages of listings in the Oʻahu phone book alone.

+

Trends

+

Recent trends are popularizing the term elsewhere in the United States. Popular entertainer, Broadway star and Hollywood actress Bette +Midler, born in Honolulu, uses the greeting frequently in national appearances. The word was also used frequently in the hit television drama +Hawaii Five-O. In the influential 1982 film comedy Fast Times at Ridgemont High, the eccentric teacher Mr. Hand makes use of the greeting. The +Aloha Spirit is a major concept in Lilo and Stitch, a very popular Disney series of movies and TV shows, set in Hawaiʻi. The drama series Lost, +shot in Hawaiʻi, has a thank you note at the end of the credits saying "We thank the people of Hawaiʻi and their Aloha Spirit". Aloha is a term +also used in the Nickelodeon program Rocket Power.

+
    +
  • Arguably the most famous historical Hawaiian song, "Aloha ʻOe" was written by the last queen of Hawaii, Liliʻuokalani.
  • +
  • The term inspired the name of the ALOHA Protocol introduced in the 1970s by the University of Hawaii.
  • +
  • In Hawaii someone can be said to have or show aloha in the way they treat others; whether family, friend, neighbor or stranger.
  • +
+
+
+
+ + \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/i18n/en.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/i18n/en.dict new file mode 100644 index 00000000..1e2a22b5 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/i18n/en.dict @@ -0,0 +1,27 @@ + +error.0=An Error occurred checking this URL. +error.400=Bad Request. The request cannot be fulfilled due to bad syntax. +error.401=Unauthorized. Authentication has failed or not yet been provided. +error.402=Payment Required. +error.403=Forbidden. The request was a legal request, but the server is refusing to respond to it. +error.404=Not Found. The requested resource could not be found, but may be available in the future. +error.405=Method Not Allowed. +error.406=Not Acceptable. Your browser does not support the content. +error.407=Proxy Authentication Required. +error.408=Request Timeout. The server timed out waiting for the request. +error.409=Conflict in the request. +error.410=This resource is gone. +error.411=Length Required by server. This Link may work in the browsers. +error.412=Precondition Failed. This Link may work in the browsers. +error.413=Request Entity Too Large. The request is larger than the server is willing or able to process. +error.414=Request-URI Too Long. The URI provided was too long for the server to process. +error.415=Unsupported Media Type. The request entity has a media type which the server or resource does not support. +error.416=Requested Range Not Satisfiable. The client has asked for a portion of the file, but the server cannot supply that portion. +error.417=Expectation Failed. The server cannot meet the requirements of your browser. +error.418=I'm a teapot. ;-) +error.500=Internal Server Error. A generic error message, given when no more specific message is suitable. +error.501=Not Implemented. The server either does not recognise the request method, or it lacks the ability to fulfill the request. +error.502=Bad Gateway. The server was acting as a gateway or proxy and received an invalid response from the upstream server. +error.503=Service Unavailable. The server is currently unavailable (because it is overloaded or down for maintenance). Generally, this is a temporary state. +error.504=Gateway Timeout. The server was acting as a gateway or proxy and did not receive a timely response from the upstream server. +error.505=HTTP Version Not Supported. The server does not support the HTTP protocol version used in the request. diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/plugin.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/plugin.js new file mode 100644 index 00000000..822ab18a --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/plugin.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +GENTICS.Aloha.LinkChecker=new GENTICS.Aloha.Plugin("com.gentics.aloha.plugins.LinkChecker");GENTICS.Aloha.LinkChecker.languages=["en"];GENTICS.Aloha.LinkChecker.errorCodes=[400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,500,501,502,503,504,505,506];GENTICS.Aloha.LinkChecker.warningCodes=[404,411,412,413,500,503,504,505];GENTICS.Aloha.LinkChecker.init=function(){this.proxyUrl=null;if(GENTICS.Aloha.LinkChecker.settings.proxyUrl!=undefined){this.proxyUrl=GENTICS.Aloha.LinkChecker.settings.proxyUrl}this.timer={};this.xhr={};var that=this;GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"editableActivated",function(jEvent,aEvent){aEvent.editable.obj.find("a").each(function(){that.checkLink(this,jQuery(this).attr("href"),0)})});GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"editableDeactivated",function(jEvent,aEvent){that.makeClean(aEvent.editable.obj)});GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"hrefChanged",function(jEvent,aEvent){that.checkLink(aEvent.obj,"hrefChanged")})};GENTICS.Aloha.LinkChecker.checkLink=function(obj,scope,delay,timeout){var that=this;var url=jQuery(obj).attr("href");var cleanUrl=url;if(typeof url=="string"&&!/^http/.test(url.toLowerCase())){this.makeCleanLink(obj);return}if(this.proxyUrl){url=this.proxyUrl+url}if(this.xhr[scope]){this.xhr[scope].abort();this.xhr[scope]=undefined}this.timer[scope]=this.urlExists(url,function(xhr){that.makeCleanLink(obj)},function(xhr){if(obj){if(jQuery.inArray(xhr.status,that.errorCodes)>=0){var e=xhr.status}else{var e="0"}var o=jQuery(obj);if(o.attr("title")&&!o.attr("data-invalid")){o.attr("data-title",o.attr("title"))}o.attr("data-invalid","true");o.attr("title",cleanUrl+". "+that.i18n("error."+e));if(jQuery.inArray(xhr.status,that.warningCodes)>=0){o.addClass("GENTICS_link_warn")}else{o.addClass("GENTICS_link_error")}}},scope,timeout,delay)};GENTICS.Aloha.LinkChecker.urlExists=function(url,successFunc,failureFunc,scope,timeout,delay){var that=this;clearTimeout(this.timer[scope]);delay=(delay!=null&&delay!=undefined)?delay:700;var newTimer=setTimeout(function(){that.xhr[scope]=jQuery.ajax({url:url,timeout:timeout?10000:timeout,type:"HEAD",complete:function(xhr){clearTimeout(newTimer);try{if(xhr.status<400){successFunc.call(this,xhr)}else{failureFunc.call(this,xhr)}}catch(e){failureFunc.call(this,{status:0})}}})},delay);return newTimer};GENTICS.Aloha.LinkChecker.makeCleanLink=function(obj){if(obj){var o=jQuery(obj);if(o.attr("data-title")){o.attr("title",o.attr("data-title"))}else{o.removeAttr("title")}o.removeAttr("data-title");o.removeAttr("data-invalid");o.removeClass("GENTICS_link_error");o.removeClass("GENTICS_link_warn")}};GENTICS.Aloha.LinkChecker.makeClean=function(editable){var that=this;editable.find("a").each(function(){that.makeCleanLink(this)})};GENTICS.Aloha.LinkChecker.urlencode=function(str){str=(str+"").toString();return encodeURIComponent(str).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}; \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/proxy.php b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/proxy.php new file mode 100644 index 00000000..76208f9e --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.LinkChecker/proxy.php @@ -0,0 +1,235 @@ + 'X');}; + * https url example: https://google.com/adsense + * + */ + +// for debugging +//$_SERVER['SERVER_PROTOCOL'] = 'HTTP/1.0'; +//$_SERVER['REQUEST_METHOD'] = 'HEAD'; +//error_reporting(E_ALL); + +$request = array( + 'method' => $_SERVER['REQUEST_METHOD'], + 'protocol' => $_SERVER['SERVER_PROTOCOL'], + 'headers' => getallheaders(), + //possibly use $HTTP_RAW_POST_DATA if available + 'payload' => http_build_query($_POST), +); + +// read url parameter +if (array_key_exists('url', $_GET)) { + $request['url'] = urldecode($_GET['url']); +} else { + header("HTTP/1.0 400 Bad Request"); + echo "Gentics AJAX Gateway failed because parameter url is missing."; + exit(); +} + +// check if link exists +$response = http_request($request); + +// Note HEAD does not always work even if specified... +// We use HEAD for Linkchecking so we do a 2nd request. +if (strtoupper($method) == 'HEAD' && (int)$response['status'] >= 400 ) { + + $request['method'] = 'GET'; + $response = http_request($request); + + //since we handle a HEAD, we don't need to proxy any contents + fclose($response['socket']); + $response['socket'] = null; +} + +// forward each returned header... +foreach ($response['headers'] as $key => $value) { + header("$key: $value"); +} + +//there is no need to specify a content length since we don't do keep +//alive, and this can cause problems for integration (e.g. gzip output, +//which would change the content length) +header('Content-Length:'); + +// output the contents if any +if (null !== $response['socket']) { + fpassthru($response['socket']); + fclose($response['socket']); +} + +exit; + +/** + * Query an HTTP(S) URL with the given request parameters and return the + * response headers and status code. The socket is returned as well and + * will point to the begining of the response payload (after all headers + * have been read), and must be closed with fclose(). + * @param $url the request URL + * @param $request the request method may optionally be overridden. + * @param $timeout connection and read timeout in seconds + */ +function http_request($request, $timeout = 5) { + + $url = $request['url']; + // Extract the hostname from url + $parts = parse_url($url); + if (array_key_exists('host', $parts)) { + $remote = $parts['host']; + } else { + return myErrorHandler("url ($url) has no host. Is it relative?"); + } + if (array_key_exists('port', $parts)) { + $port = $parts['port']; + } else { + $port = 0; + } + + // Beware that RFC2616 (HTTP/1.1) defines header fields as case-insensitive entities. + $request_headers = ""; + foreach ($request['headers'] as $name => $value) { + switch (strtolower($name)) { + //ommit some headers + case "keep-alive": + case "connection": + case "cookie": + //TPDP: we don't handle any compressions encodings. this is only + //a problem if client communication is already compressed (which + //would double compress the content, once from the remote server + //to us, and once from us to the client, but the client would + //de-compress only once). + case "accept-encoding": + break; + // correct the host parameter + case "host": + $host_info = $remote; + if ($port) { + $host_info .= ':' . $port; + } + $request_headers .= "$name: $host_info\r\n"; + break; + // forward all other headers + default: + $request_headers .= "$name: $value\r\n"; + break; + } + } + + //set fsockopen transport scheme, and the default port + switch (strtolower($parts['scheme'])) { + case 'https': + $scheme = 'ssl://'; + if ( ! $port ) $port = 443; + break; + case 'http': + $scheme = ''; + if ( ! $port ) $port = 80; + break; + default: + //some other transports are available but not really supported + //by this script: http://php.net/manual/en/transports.inet.php + $scheme = $parts['scheme'] . '://'; + if ( ! $port ) { + return myErrorHandler("Unknown scheme ($scheme) and no port."); + } + break; + } + + //we make the request with socket operations since we don't want to + //depend on the curl extension, and the higher level wrappers don't + //give us usable error information. + $sock = @fsockopen("$scheme$remote", $port, $errno, $errstr, $timeout); + if ( ! $sock ) { + return myErrorHandler("Unable to open URL ($url): $errstr"); + } + + //timeout in fsockopen is only for the connection, the following is + //for reading the content + stream_set_timeout($sock, $timeout); + + //absolute url should only be specified for proxy requests + if (array_key_exists('path', $parts)) { + $path_info = $parts['path']; + } else { + $path_info = '/'; + } + + if (array_key_exists('query', $parts)) $path_info .= '?' . $parts['query']; + if (array_key_exists('fragment', $parts)) $path_info .= '#' . $parts['fragment']; + + $out = $request["method"]." ".$path_info." ".$request["protocol"]."\r\n" + . $request_headers + . "Connection: Close\r\n\r\n"; + fwrite($sock, $out); + fwrite($sock, $request['payload']); + + $header_str = stream_get_line($sock, 1024*16, "\r\n\r\n"); + $headers = http_parse_headers($header_str); + + // get http status + preg_match('|HTTP/\d+\.\d+\s+(\d+)\s+.*|i',$headers[0],$match); + $status = $match[1]; + + return array('headers' => $headers, 'socket' => $sock, 'status' => $status); +} + +/** + * Parses a string containing multiple HTTP header lines into an array + * of key => values. + * Inspired by HTTP::Daemon (CPAN). + */ +function http_parse_headers($header_str) { + $headers = array(); + + //ignore leading blank lines + $header_str = preg_replace("/^(?:\x0D?\x0A)+/", '', $header_str); + + while (preg_match("/^([^\x0A]*?)\x0D?(?:\x0A|\$)/", $header_str, $matches)) { + $header_str = substr($header_str, strlen($matches[0])); + $header_line = $matches[1]; + + if (empty($headers)) { + // the status line + $headers[] = $header_line; + } + elseif (preg_match('/^([^:\s]+)\s*:\s*(.*)/', $header_line, $matches)) { + if (isset($key)) { + //previous header is finished (was potentially multi-line) + $headers[$key] = $val; + } + list(,$key,$val) = $matches; + } + elseif (preg_match('/^\s+(.*)/', $header_line, $matches)) { + //continue a multi-line header + $val .= " ".$matches[1]; + } + else { + //empty (possibly malformed) header signals the end of all headers + break; + } + } + if (isset($key)) { + $headers[$key] = $val; + } + return $headers; +} + +function myErrorHandler($msg) +{ + // 500 could be misleading... + // Should we return a special Error when a proxy error occurs? + header("HTTP/1.0 500 Internal Error"); + echo "Gentics Aloha Editor AJAX Gateway Error: $msg"; + exit(); +} + +//EOF diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List deleted file mode 160000 index ada3208a..00000000 --- a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List +++ /dev/null @@ -1 +0,0 @@ -Subproject commit ada3208a19a31251ad0a58f136bbb09fea68fd70 diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/de.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/de.dict new file mode 100644 index 00000000..cdd04e95 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/de.dict @@ -0,0 +1,2 @@ +button.createulist.tooltip=Unsortierte Liste einfügen +button.createolist.tooltip=Sortierte Liste einfügen diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/en.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/en.dict new file mode 100644 index 00000000..31847e05 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/en.dict @@ -0,0 +1,2 @@ +button.createulist.tooltip=Insert Unordered List +button.createolist.tooltip=Insert Ordered List diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/eo.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/eo.dict new file mode 100644 index 00000000..9542e0d4 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/eo.dict @@ -0,0 +1,2 @@ +button.createulist.tooltip=Enmeti senordan liston +button.createolist.tooltip=Enmeti ordan liston diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/fi.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/fi.dict new file mode 100644 index 00000000..deadc8f4 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/fi.dict @@ -0,0 +1,2 @@ +button.createulist.tooltip=Lisää järjestelemätön lista +button.createolist.tooltip=Lisää järjestelty lista diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/fr.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/fr.dict new file mode 100644 index 00000000..62568897 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/fr.dict @@ -0,0 +1,2 @@ +button.createulist.tooltip=Insérer une liste non ordonnée +button.createolist.tooltip=Insérer liste ordonnée diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/it.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/it.dict new file mode 100644 index 00000000..812df235 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/it.dict @@ -0,0 +1,2 @@ +button.createulist.tooltip=Inserisci una lista +button.createolist.tooltip=Inserisci una lista numerata diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/ru.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/ru.dict new file mode 100644 index 00000000..7b61c3bb --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/i18n/ru.dict @@ -0,0 +1,2 @@ +button.createulist.tooltip=Вставить Список +button.createolist.tooltip=Вставить Упорядоченный Список \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/plugin.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/plugin.js new file mode 100644 index 00000000..b85d58c4 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.List/plugin.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +GENTICS.Aloha.ListPlugin=new GENTICS.Aloha.Plugin("com.gentics.aloha.plugins.List");GENTICS.Aloha.ListPlugin.languages=["en","de","fr","eo","fi","ru","it"];GENTICS.Aloha.ListPlugin.config=["ul","ol"];GENTICS.Aloha.ListPlugin.transformableElements={p:true,h1:true,h2:true,h3:true,h4:true,h5:true,h6:true,ul:true,ol:true};GENTICS.Aloha.ListPlugin.init=function(){var that=this;this.createUnorderedListButton=new GENTICS.Aloha.ui.Button({iconClass:"GENTICS_button GENTICS_button_ul",size:"small",tooltip:this.i18n("button.createulist.tooltip"),toggle:true,onclick:function(element,event){that.transformList(false)}});GENTICS.Aloha.FloatingMenu.addButton("GENTICS.Aloha.continuoustext",this.createUnorderedListButton,GENTICS.Aloha.i18n(GENTICS.Aloha,"floatingmenu.tab.format"),1);this.createOrderedListButton=new GENTICS.Aloha.ui.Button({iconClass:"GENTICS_button GENTICS_button_ol",size:"small",tooltip:this.i18n("button.createolist.tooltip"),toggle:true,onclick:function(element,event){that.transformList(true)}});GENTICS.Aloha.FloatingMenu.addButton("GENTICS.Aloha.continuoustext",this.createOrderedListButton,GENTICS.Aloha.i18n(GENTICS.Aloha,"floatingmenu.tab.format"),1);GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"selectionChanged",function(event,rangeObject){that.createUnorderedListButton.setPressed(false);that.createOrderedListButton.setPressed(false);for(var i=0;i"))){that.createUnorderedListButton.setPressed(true);break}if(GENTICS.Aloha.Selection.standardTextLevelSemanticsComparator(effectiveMarkup,jQuery("
    "))){that.createOrderedListButton.setPressed(true);break}}if(GENTICS.Aloha.activeEditable){that.applyButtonConfig(GENTICS.Aloha.activeEditable.obj)}GENTICS.Aloha.FloatingMenu.doLayout()});GENTICS.Aloha.Markup.addKeyHandler(9,function(event){return that.processTab(event)})};GENTICS.Aloha.ListPlugin.applyButtonConfig=function(obj){var config=this.getEditableConfig(obj);if(GENTICS.Aloha.Selection.rangeObject.unmodifiableMarkupAtStart[0]){if(jQuery.inArray("ul",config)!=-1&&GENTICS.Aloha.Selection.canTag1WrapTag2(GENTICS.Aloha.Selection.rangeObject.unmodifiableMarkupAtStart[0].nodeName,"ul")!=-1){this.createUnorderedListButton.show()}else{this.createUnorderedListButton.hide()}if(jQuery.inArray("ol",config)!=-1&&GENTICS.Aloha.Selection.canTag1WrapTag2(GENTICS.Aloha.Selection.rangeObject.unmodifiableMarkupAtStart[0].nodeName,"ol")!=-1){this.createOrderedListButton.show()}else{this.createOrderedListButton.hide()}}};GENTICS.Aloha.ListPlugin.processTab=function(event){switch(event.keyCode){case 9:if(event.shiftKey){return this.outdentList()}else{return this.indentList()}}return true};GENTICS.Aloha.ListPlugin.getStartingDomObjectToTransform=function(){var rangeObject=GENTICS.Aloha.Selection.rangeObject;for(var i=0;i

    "));domToTransform=this.getStartingDomObjectToTransform();if(!domToTransform){GENTICS.Aloha.Log.error(this,"Could not transform selection into a list");return}}var nodeName=domToTransform.nodeName.toLowerCase();if(nodeName=="ul"&&!ordered){var jqList=jQuery(domToTransform);var jqParentList=jqList.parent();if(jqParentList.length>0&&GENTICS.Utils.Dom.isListElement(jqParentList.get(0))){jqList.children().unwrap()}else{var jqToTransform=jQuery(domToTransform);jQuery.each(jqToTransform.children("li"),function(index,li){var newPara=GENTICS.Aloha.Markup.transformDomObject(li,"p");newPara.after(newPara.children("ol,ul"))});jqToTransform.children().unwrap()}}else{if(nodeName=="ul"&&ordered){GENTICS.Aloha.Markup.transformDomObject(domToTransform,"ol");this.mergeAdjacentLists(jQuery(domToTransform))}else{if(nodeName=="ol"&&!ordered){GENTICS.Aloha.Markup.transformDomObject(domToTransform,"ul");this.mergeAdjacentLists(jQuery(domToTransform))}else{if(nodeName=="ol"&&ordered){var jqList=jQuery(domToTransform);var jqParentList=jqList.parent();if(jqParentList.length>0&&GENTICS.Utils.Dom.isListElement(jqParentList.get(0))){jqList.children().unwrap()}else{var jqToTransform=jQuery(domToTransform);jQuery.each(jqToTransform.children("li"),function(index,li){var newPara=GENTICS.Aloha.Markup.transformDomObject(li,"p");newPara.after(newPara.children("ol,ul"))});jqToTransform.children().unwrap()}}else{var selectedSiblings=GENTICS.Aloha.Selection.rangeObject.getSelectedSiblings(domToTransform);var jqList=ordered?jQuery("
      "):jQuery("
        ");var jqNewLi=jQuery("
      • ");jqList.append(jqNewLi);jQuery(domToTransform).contents().appendTo(jqNewLi);jQuery(domToTransform).replaceWith(jqList);if(selectedSiblings){var lastLi=false;for(var i=0;i");jqList.append(lastLi)}lastLi.append(selectedSiblings[i])}}}this.mergeAdjacentLists(jqList)}}}}this.refreshSelection()};GENTICS.Aloha.ListPlugin.indentList=function(){var listItem=this.getNearestSelectedListItem();if(listItem){var jqItemBefore=jQuery(listItem).prev("li");if(jqItemBefore.length==0){return false}var jqOldList=jQuery(listItem).parent();var selectedSiblings=GENTICS.Aloha.Selection.rangeObject.getSelectedSiblings(listItem);var jqNewList=jQuery(listItem).parent().clone(false).empty();jqNewList.append(listItem);jqItemBefore.append(jqNewList);if(selectedSiblings){for(var i=0;i0&&GENTICS.Utils.Dom.isListElement(jqParentList.get(0))){var selectedSiblings=GENTICS.Aloha.Selection.rangeObject.getSelectedSiblings(listItem);if(selectedSiblings&&selectedSiblings.length>0){var lastSelected=jQuery(selectedSiblings[selectedSiblings.length-1])}else{var lastSelected=jqListItem}if(lastSelected.nextAll("li").length>0){var jqNewPostList=jqList.clone(false).empty();jqNewPostList.append(lastSelected.nextAll())}if(wrappingLi.length>0){if(typeof jqNewPostList!=="undefined"){jqListItem.append(jqNewPostList)}wrappingLi.after(jqListItem)}else{jqList.before(jqListItem)}if(selectedSiblings&&selectedSiblings.length>0){for(var i=selectedSiblings.length-1;i>=0;--i){jqListItem.after(jQuery(selectedSiblings[i]))}}if(jqList.contents("li").length==0){jqList.remove()}if(wrappingLi.length>0&&wrappingLi.contents().length==0){wrappingLi.remove()}this.refreshSelection()}return false}return true};GENTICS.Aloha.ListPlugin.refreshSelection=function(){if(GENTICS.Aloha.activeEditable){GENTICS.Aloha.activeEditable.obj[0].focus()}GENTICS.Aloha.Selection.rangeObject.update();GENTICS.Aloha.Selection.rangeObject.select();GENTICS.Aloha.Selection.updateSelection()};GENTICS.Aloha.ListPlugin.mergeAdjacentLists=function(jqList){var firstList=jqList.get(0);while(firstList.previousSibling&&firstList.previousSibling.nodeType==1&&firstList.previousSibling.nodeName==firstList.nodeName){firstList=firstList.previousSibling}jqList=jQuery(firstList);while(firstList.nextSibling&&((firstList.nextSibling.nodeType==1&&firstList.nextSibling.nodeName==firstList.nodeName)||(firstList.nextSibling.nodeType==3&&jQuery.trim(firstList.nextSibling.data).length==0))){var jqNextList=jQuery(firstList.nextSibling);if(firstList.nextSibling.nodeType==1){jqNextList.contents().appendTo(jqList)}jqNextList.remove()}}; \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste deleted file mode 160000 index 56665c88..00000000 --- a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 56665c88d4195e303bac477a773e8fd76d5eb292 diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste/plugin.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste/plugin.js new file mode 100644 index 00000000..61a1c78d --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste/plugin.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +GENTICS.Aloha.PastePlugin=new GENTICS.Aloha.Plugin("com.gentics.aloha.plugins.Paste");GENTICS.Aloha.PastePlugin.pasteHandlers=[];GENTICS.Aloha.PastePlugin.init=function(){var that=this;this.pasteDiv=jQuery('
        ');this.pasteDiv.attr("contentEditable","true");jQuery("body").append(this.pasteDiv);GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"editableCreated",function(event,editable){if(jQuery.browser.msie){editable.obj.bind("beforepaste",function(event){that.redirectPaste()})}else{editable.obj.bind("paste",function(event){that.redirectPaste();window.setTimeout(function(){that.getPastedContent()},10)})}});if(jQuery.browser.msie){this.pasteDiv.bind("paste",function(event){window.setTimeout(function(){that.getPastedContent()},10)})}};GENTICS.Aloha.PastePlugin.redirectPaste=function(){this.currentRange=new GENTICS.Utils.RangeObject(true);this.currentEditable=GENTICS.Aloha.activeEditable;this.pasteDiv.text("");if(this.currentEditable){this.currentEditable.blur()}GENTICS.Utils.Dom.setCursorInto(this.pasteDiv.get(0));this.pasteDiv.focus()};GENTICS.Aloha.PastePlugin.getPastedContent=function(){var that=this;for(var i=0;i=0;--i){GENTICS.Utils.Dom.insertIntoDOM(jQuery(pasteDivContents.get(i)),that.currentRange,that.currentEditable.obj,false)}this.currentEditable.activate();this.currentEditable.obj.focus();if(pasteDivContents.length>0){GENTICS.Utils.Dom.setCursorAfter(pasteDivContents.get(pasteDivContents.length-1))}else{this.currentRange.select()}}this.currentRange=false;this.currentEditable=false;this.pasteDiv.text("")};GENTICS.Aloha.PastePlugin.register=function(pasteHandler){this.pasteHandlers.push(pasteHandler)};GENTICS.Aloha.PastePlugin.PasteHandler=function(){GENTICS.Aloha.PastePlugin.register(this)};GENTICS.Aloha.PastePlugin.PasteHandler.prototype.handlePaste=function(jqPasteDiv){}; \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste/wordpastehandler.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste/wordpastehandler.js new file mode 100644 index 00000000..7436be39 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Paste/wordpastehandler.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +GENTICS.Aloha.PastePlugin.WordPasteHandler=new GENTICS.Aloha.PastePlugin.PasteHandler();GENTICS.Aloha.PastePlugin.WordPasteHandler.handlePaste=function(jqPasteDiv){if(this.detectWordContent(jqPasteDiv)){this.transformWordContent(jqPasteDiv)}};GENTICS.Aloha.PastePlugin.WordPasteHandler.detectWordContent=function(jqPasteDiv){var wordDetected=false;jqPasteDiv.find("*").each(function(){var style=jQuery(this).attr("style");if(style){if(style.toLowerCase().indexOf("mso")>=0){wordDetected=true;return false}}var clazz=jQuery(this).attr("class");if(clazz){if(clazz.toLowerCase().indexOf("mso")>=0){wordDetected=true;return false}}});return wordDetected};GENTICS.Aloha.PastePlugin.WordPasteHandler.isOrderedList=function(listSpan){if(listSpan.css("fontFamily")=="Wingdings"||listSpan.css("fontFamily")=="Symbol"){return false}return listSpan.text().match(/^([0-9]{1,3}\.)|([0-9]{1,3}\)|([a-zA-Z]{1,5}\.)|([a-zA-Z]{1,5}\)))$/)?true:false};GENTICS.Aloha.PastePlugin.WordPasteHandler.transformListsFromWord=function(jqPasteDiv){var that=this;var listElementClass="aloha-list-element";var bulletClass="aloha-list-bullet";var detectionFilter="p.MsoListParagraphCxSpFirst,p.MsoListParagraph,p span";var paragraphs=jqPasteDiv.find(detectionFilter);paragraphs.each(function(){var jqElem=jQuery(this);if(jqElem.hasClass("MsoListParagraphCxSpFirst")||jqElem.hasClass("MsoListParagraph")){jqElem.addClass(listElementClass)}else{if(jqElem.css("font-family").indexOf("Symbol")>=0){jqElem.closest("p").addClass(listElementClass)}else{if(jqElem.css("mso-list")!=""){jqElem.closest("p").addClass(listElementClass)}}}});detectionFilter="p span span span";var spans=jqPasteDiv.find(detectionFilter);spans.each(function(){var jqElem=jQuery(this);var innerText=jqElem.text().trim().replace(/ /g,"");if(innerText.length==0){var outerText=jqElem.parent().parent().text().trim().replace(/ /g,"");if(outerText.match(/^([0-9]{1,3}\.)|([0-9]{1,3}\)|([a-zA-Z]{1,5}\.)|([a-zA-Z]{1,5}\)))$/)){jqElem.closest("p").addClass(listElementClass);jqElem.parent().parent().addClass(bulletClass)}}});detectionFilter="p."+listElementClass;var negateDetectionFilter=":not("+detectionFilter+")";paragraphs=jqPasteDiv.find(detectionFilter);if(paragraphs.length>0){paragraphs.each(function(){var jqElem=jQuery(this);jqElem.removeClass(listElementClass);jqElem.find("font").each(function(){jQuery(this).contents().unwrap()});var nestLevel=0;var margin=parseFloat(jqElem.css("marginLeft"));var lists=[];var following=jqElem.nextUntil(negateDetectionFilter);var firstSpan=jQuery(jqElem.find("span."+bulletClass));if(firstSpan.length==0){firstSpan=jQuery(jqElem.children("span:first"))}var ordered=that.isOrderedList(firstSpan);firstSpan.remove();var jqList=jQuery(ordered?"
          ":"
            ");lists.push(jqList);var jqNewLi=jQuery("
          • ");jqList.append(jqNewLi);jqElem.contents().appendTo(jqNewLi);jqElem.replaceWith(jqList);following.each(function(){var jqElem=jQuery(this);jqElem.find("font").each(function(){jQuery(this).contents().unwrap()});var newMargin=parseFloat(jqElem.css("marginLeft"));firstSpan=jQuery(jqElem.find("span."+bulletClass));if(firstSpan.length==0){firstSpan=jQuery(jqElem.children("span:first"))}ordered=that.isOrderedList(firstSpan);firstSpan.remove();if(newMargin>margin){var jqNewList=jQuery(ordered?"
              ":"
                ");jqList.children(":last").append(jqNewList);jqList=jqNewList;lists.push(jqList);nestLevel++;margin=newMargin}else{if(newMargin0){lists.pop();nestLevel--;jqList=lists[nestLevel];margin=newMargin}}jqNewLi=jQuery("
              • ");jqList.append(jqNewLi);jqElem.contents().appendTo(jqNewLi);jqElem.remove()})})}};GENTICS.Aloha.PastePlugin.WordPasteHandler.transformTitles=function(jqPasteDiv){jqPasteDiv.find("p.MsoTitle").each(function(){GENTICS.Aloha.Markup.transformDomObject(jQuery(this),"h1")});jqPasteDiv.find("p.MsoSubtitle").each(function(){GENTICS.Aloha.Markup.transformDomObject(jQuery(this),"h2")})};GENTICS.Aloha.PastePlugin.WordPasteHandler.transformTables=function(jqPasteDiv){jqPasteDiv.find("table").each(function(){jQuery(this).removeAttr("border").removeAttr("cellspacing").removeAttr("cellpadding")});jqPasteDiv.find("td").each(function(){jQuery(this).removeAttr("width").removeAttr("height").removeAttr("valign")})};GENTICS.Aloha.PastePlugin.WordPasteHandler.transformFormattings=function(jqPasteDiv){jqPasteDiv.find("strong,em,s,u").each(function(){if(this.nodeName.toLowerCase()=="strong"){GENTICS.Aloha.Markup.transformDomObject(jQuery(this),"b")}else{if(this.nodeName.toLowerCase()=="em"){GENTICS.Aloha.Markup.transformDomObject(jQuery(this),"i")}else{if(this.nodeName.toLowerCase()=="s"){GENTICS.Aloha.Markup.transformDomObject(jQuery(this),"del")}else{if(this.nodeName.toLowerCase()=="u"){jQuery(this).contents().unwrap()}}}}})};GENTICS.Aloha.PastePlugin.WordPasteHandler.removeComments=function(jqPasteDiv){jqPasteDiv.contents().each(function(){if(this.nodeType==8){jQuery(this).remove()}})};GENTICS.Aloha.PastePlugin.WordPasteHandler.unwrapTags=function(jqPasteDiv){jqPasteDiv.find("span,font,div").each(function(){jQuery(this).contents().unwrap()})};GENTICS.Aloha.PastePlugin.WordPasteHandler.removeStyles=function(jqPasteDiv){jqPasteDiv.find("*").each(function(){jQuery(this).removeAttr("style").removeClass()})};GENTICS.Aloha.PastePlugin.WordPasteHandler.removeNamespacedElements=function(jqPasteDiv){jqPasteDiv.find("*").each(function(){var nsPrefix=this.prefix?this.prefix:(this.scopeName?this.scopeName:undefined);if(nsPrefix&&nsPrefix!="HTML"){jQuery(this).remove()}})};GENTICS.Aloha.PastePlugin.WordPasteHandler.transformWordContent=function(jqPasteDiv){this.transformListsFromWord(jqPasteDiv);this.transformTables(jqPasteDiv);this.transformTitles(jqPasteDiv);this.removeComments(jqPasteDiv);this.unwrapTags(jqPasteDiv);this.removeStyles(jqPasteDiv);this.removeNamespacedElements(jqPasteDiv);this.transformFormattings(jqPasteDiv)}; \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC deleted file mode 160000 index 7d622b36..00000000 --- a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 7d622b36dc1501f993f39e74649fef64c403ba67 diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/i18n/de.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/i18n/de.dict new file mode 100644 index 00000000..0158dfaf --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/i18n/de.dict @@ -0,0 +1 @@ +button.addtoc.tooltip=Inhaltsverzeichnis \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/i18n/en.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/i18n/en.dict new file mode 100644 index 00000000..bf726d64 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/i18n/en.dict @@ -0,0 +1 @@ +button.addtoc.tooltip=Table of contents \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/plugin.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/plugin.js new file mode 100644 index 00000000..cb4eb1f1 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.TOC/plugin.js @@ -0,0 +1 @@ +(function(){var deps=GENTICS.Aloha.TOC||{jQuery:jQuery},$=deps.jQuery;function last(a){return a[a.length-1]}function head(a){return a[0]}function tail(a){return a.slice(1)}function indexOf(a,item){return detect(a,function(cmp){return cmp===item})}function detect(a,f){for(var i=0;i").attr("id",id).attr("contentEditable","false");var range=GENTICS.Aloha.Selection.getRangeObject();var tocEditable=GENTICS.Aloha.activeEditable;var $tocContainer=$(document.getElementById(tocEditable.getId()));GENTICS.Utils.Dom.insertIntoDOM($tocElement,range,$tocContainer);TOC.create(id).register($containers).update().tickTock()};TOC.spawn=function($ctx,$containers){$ctx=$ctx||$("body");$containers=$containers||TOC.editableContainers();$ctx.find("ol.toc_root").each(function(){var id=$(this).attr("id");if(!id){id=TOC.generateId("toc");$(this).attr("id",id)}TOC.create(id).register($containers).tickTock()})};TOC.create=function(id){allTocs.push(this);return{id:id,"$containers":$(),root:function(){return $(document.getElementById(this.id))},register:function($containers){var self=this;self.$containers=self.$containers.add($containers);self.$containers.filter(function(){return !$(this).data(namespace+"."+self.id+".listening")}).each(function(){var $container=$(this);$container.data(namespace+"."+self.id+".listening",true);$container.bind("blur",function(){self.cleanupIds($container.get(0));self.update($container)})});return self},tickTock:function(interval){var self=this;interval=interval||TOC.settings.updateInterval;if(!interval){return}window.setInterval(function(){self.register(TOC.editableContainers());self.update()},interval);return self},cleanupIds:function(ctx){var ids=[];TOC.headings(this.$containers).each(function(){var id=$(this).attr("id");if((id&&-1!=$.inArray(id,ids))||(ctx&&($.contains(ctx,this)||ctx===this))){$(this).attr("id",TOC.generateId(this))}ids.push(id)});return this},update:function($ctx){var self=this;$ctx=$ctx||self.$containers;var outline=TOC.outline(self.$containers);var ancestors=[self.root()];var prevSiblings=[];last(ancestors).empty();(function descend(outline){var prevSiblings=[];each(outline,function(node){var $section=head(node);var $entry=self.linkSection($section,ancestors,prevSiblings);ancestors.push($entry);descend(tail(node));ancestors.pop();prevSiblings.push($entry)})})(tail(outline));var minEntries=self.root().attr("data-TOC-minEntries")||TOC.settings.minEntries;if(self.root().find("li").length>=minEntries){self.root().show()}else{self.root().hide()}return this},linkSection:function($section,ancestors,prevSiblings){var linkId=$section.eq(0).attr("id");if(!linkId){linkId=TOC.generateId($section.get(0));$section.eq(0).attr("id",linkId)}var $root=this.root();var $entry=TOC.anchorFromLinkId($root,linkId);if(!$entry.length){$entry=$("
              • ")}$entry.find("a").attr("href","#"+linkId).text($section.eq(0).text());if(last(prevSiblings)){last(prevSiblings).after($entry)}else{if(last(ancestors).get(0)==$root.get(0)){$root.append($entry)}else{var $subToc=$("
                  ").append($entry);last(ancestors).append($subToc)}}return $entry}}}}()); \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table deleted file mode 160000 index e7153647..00000000 --- a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e71536475f32b7ee191087f76c2d7acbadad14be diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/de.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/de.dict new file mode 100644 index 00000000..4c6c0b0d --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/de.dict @@ -0,0 +1,14 @@ +floatingmenu.tab.table=Tabelle +deleterows.confirm=Wollen Sie die ausgewählten Zeilen wirklich löschen? +deletecolumns.confirm=Wollen Sie die ausgewählten Spalten wirklich löschen? +deletetable.confirm=Wollen Sie wirklich die ganze Tabelle löschen? +Table=Tabelle +button.createtable.tooltip=Tabelle einfügen +button.addcolleft.tooltip=Spalte links einfügen +button.addcolright.tooltip=Spalte rechts einfügen +button.delcols.tooltip=Spalten löschen +button.addrowbefore.tooltip=Zeile darüber einfügen +button.addrowafter.tooltip=Zeile darunter einfügen +button.delrows.tooltip=Zeilen löschen +button.caption.tooltip=Tabellen Bezeichnung +empty.caption=Tabellen Bezeichnung \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/en.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/en.dict new file mode 100644 index 00000000..5a4bf517 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/en.dict @@ -0,0 +1,14 @@ +floatingmenu.tab.table=Table +deleterows.confirm=Do you really want to delete the selected rows? +deletecolumns.confirm=Do you really want to delete the selected columns? +deletetable.confirm=Do you really want to delete the table? +Table=Table +button.createtable.tooltip=Insert Table +button.addcolleft.tooltip=Add Column left +button.addcolright.tooltip=Add Column right +button.delcols.tooltip=Delete Columns +button.addrowbefore.tooltip=Add Row before +button.addrowafter.tooltip=Add Row after +button.delrows.tooltip=Delete Rows +button.caption.tooltip=Table caption +empty.caption=Table caption \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/eo.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/eo.dict new file mode 100644 index 00000000..c387eb7c --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/eo.dict @@ -0,0 +1,12 @@ +floatingmenu.tab.table=Tabelo +deleterows.confirm=u vi vere volas vii la elektitajn vicojn? +deletecolumns.confirm=u vi vere volas vii la elektitajn kolumnojn? +deletetable.confirm=u vi vere volas forvii la tabelon? +Table=Tabelo +button.createtable.tooltip=Enmeti tabelon +button.addcolleft.tooltip=Aldoni kolumnon maldekstre +button.addcolright.tooltip=Aldoni kolumnon dekstre +button.delcols.tooltip=Forvii kolumnojn +button.addrowbefore.tooltip=Aldoni vicon antae +button.addrowafter.tooltip=Aldoni vicon poste +button.delrows.tooltip=Forvii vicojn \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/fi.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/fi.dict new file mode 100644 index 00000000..92b60250 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/fi.dict @@ -0,0 +1,12 @@ +floatingmenu.tab.table=Taulukko +deleterows.confirm=Oletko varma että haluat poistaa valitut rivit? +deletecolumns.confirm=Oletko varma että haluat poistaa valitut sarakkeet? +deletetable.confirm=Oletko varma että haluat poistaa taulukon? +Table=Taulukko +button.createtable.tooltip=Lisää taulukko +button.addcolleft.tooltip=Lisää sarake vasemmalle +button.addcolright.tooltip=Lisää sarake oikealle +button.delcols.tooltip=Poista sarakkeet +button.addrowbefore.tooltip=Lisää rivi ennen +button.addrowafter.tooltip=Lisää rivi jälkeen +button.delrows.tooltip=Poista rivit diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/fr.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/fr.dict new file mode 100644 index 00000000..c6386740 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/fr.dict @@ -0,0 +1,12 @@ +floatingmenu.tab.table=Table +deleterows.confirm=Voulez-vous vraiment supprimer les lignes sélectionnées ? +deletecolumns.confirm=Voulez-vous vraiment supprimer les colonnes sélectionnées ? +deletetable.confirm=Voulez-vous vraiment supprimer la table ? +Table=Tableau +button.createtable.tooltip=Insérer un tableau +button.addcolleft.tooltip=Ajouter une colonne à gauche +button.addcolright.tooltip=Ajouter Colonne à droite +button.delcols.tooltip=Colonnes Supprimer +button.addrowbefore.tooltip=Ajouter une ligne avant +button.addrowafter.tooltip=Ajouter une ligne après +button.delrows.tooltip=supprimer des lignes \ No newline at end of file diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/it.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/it.dict new file mode 100644 index 00000000..d357c633 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/it.dict @@ -0,0 +1,12 @@ +floatingmenu.tab.table=Tabella +deleterows.confirm=Vuoi davvero eliminare le righe selezionate? +deletecolumns.confirm=Vuoi davvero eliminare le colonne selezionate? +deletetable.confirm=Vuoi davvero eliminare la tabella? +Table=Tabella +button.createtable.tooltip=Crea una nuova tabella +button.addcolleft.tooltip=Aggiungi una colonna a sinistra +button.addcolright.tooltip=Aggiungi una colonna a destra +button.delcols.tooltip=Elimina colonne +button.addrowbefore.tooltip=Aggiungi una riga prima +button.addrowafter.tooltip=Aggiungi una riga dopo +button.delrows.tooltip=Elimina righe diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/pl.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/pl.dict new file mode 100644 index 00000000..b0741378 --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/pl.dict @@ -0,0 +1,12 @@ +floatingmenu.tab.table=Tabela +deleterows.confirm=Czy na pewno chcesz usunąć zaznaczone wiersze? +deletecolumns.confirm=Czy na pewno chcesz usunąć zaznaczone kolumny? +deletetable.confirm=Czy na pewno chcesz usunąć tabelę? +Table=Tabela +button.createtable.tooltip=Wstaw tabelę +button.addcolleft.tooltip=Dodaj kolumnę na lewo +button.addcolright.tooltip=Dodaj kolumnę na prawo +button.delcols.tooltip=Usuń kolumny +button.addrowbefore.tooltip=Dodaj wiersz przed +button.addrowafter.tooltip=Dodaj wiersz po +button.delrows.tooltip=Usuń wiersze diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/ru.dict b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/ru.dict new file mode 100644 index 00000000..21e82f7a --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/i18n/ru.dict @@ -0,0 +1,12 @@ +floatingmenu.tab.table=Таблица +deleterows.confirm=Вы действительно хотите удалить выбранные строки? +deletecolumns.confirm=Вы действительно хотите удалить выбранные колонки? +deletetable.confirm=Вы действительно хотите удалить таблицу? +Table=Таблица +button.createtable.tooltip=Вставить Таблицу +button.addcolleft.tooltip=Добавить колонку слева +button.addcolright.tooltip=Добавить колонку справа +button.delcols.tooltip=Удалить Колонки +button.addrowbefore.tooltip=Удалить пердыдущую строку +button.addrowafter.tooltip=Удалть следующую строку +button.delrows.tooltip=Удалить Строки diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/plugin.js b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/plugin.js new file mode 100644 index 00000000..4146ff0f --- /dev/null +++ b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/plugin.js @@ -0,0 +1,7 @@ +/* +* Aloha Editor +* Author & Copyright (c) 2010 Gentics Software GmbH +* aloha-sales@gentics.com +* Licensed unter the terms of http://www.aloha-editor.com/license.html +*/ +GENTICS.Aloha.TablePlugin=new GENTICS.Aloha.Plugin("com.gentics.aloha.plugins.Table");GENTICS.Aloha.TablePlugin.createLayer=undefined;GENTICS.Aloha.TablePlugin.languages=["en","de","fr","eo","fi","ru","it","pl"];GENTICS.Aloha.TablePlugin.config=["table"];GENTICS.Aloha.TablePlugin.TableRegistry=new Array();GENTICS.Aloha.TablePlugin.activeTable=undefined;GENTICS.Aloha.TablePlugin.parameters={className:"GENTICS_Aloha_Table",classSelectionRow:"GENTICS_Aloha_Table_selectColumn",classSelectionColumn:"GENTICS_Aloha_Table_selectRow",classLeftUpperCorner:"GENTICS_Aloha_Table_leftUpperCorner",classTableWrapper:"GENTICS_Aloha_Table_wrapper",classCellSelected:"GENTICS_Aloha_Cell_selected",waiRed:"GENTICS_WAI_RED",waiGreen:"GENTICS_WAI_GREEN",selectionArea:10};GENTICS.Aloha.TablePlugin.init=function(){this.createLayer=new GENTICS.Aloha.Table.CreateLayer();var that=this;GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"editableCreated",function(event,editable){editable.obj.bind("mousedown",function(jqEvent){GENTICS.Aloha.TablePlugin.setFocusedTable(undefined)});editable.obj.find("table").each(function(){if(that.isEditableTable(this)){var table=new GENTICS.Aloha.Table(this);table.parentEditable=editable;GENTICS.Aloha.TablePlugin.TableRegistry.push(table)}})});this.initTableButtons();GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"selectionChanged",function(event,rangeObject){if(GENTICS.Aloha.activeEditable){var config=that.getEditableConfig(GENTICS.Aloha.activeEditable.obj);if(jQuery.inArray("table",config)!=-1&&GENTICS.Aloha.Selection.mayInsertTag("table")){that.createTableButton.show()}else{that.createTableButton.hide()}GENTICS.Aloha.TableHelper.unselectCells();var table=rangeObject.findMarkup(function(){return this.nodeName.toLowerCase()=="table"},GENTICS.Aloha.activeEditable.obj);if(table){GENTICS.Aloha.FloatingMenu.setScope(that.getUID(GENTICS.Aloha.TableHelper.selectionType))}else{if(that.activeTable){that.activeTable.focusOut()}}GENTICS.Aloha.FloatingMenu.doLayout()}});GENTICS.Aloha.EventRegistry.subscribe(GENTICS.Aloha,"editableActivated",function(event,props){props.editable.obj.find("table").each(function(){var tr=GENTICS.Aloha.TablePlugin.TableRegistry;for(var i=0;i");that.activeTable.obj.append(c);that.makeCaptionEditable(c,captionText);var cDiv=c.find("div").eq(0);var captionContent=cDiv.contents().eq(0);if(captionContent.length>0){var newRange=new GENTICS.Utils.RangeObject();newRange.startContainer=newRange.endContainer=captionContent.get(0);newRange.startOffset=0;newRange.endOffset=captionContent.text().length;that.activeTable.obj.find("div.GENTICS_Table_Cell_editable").blur();cDiv.focus();newRange.select();GENTICS.Aloha.Selection.updateSelection()}}}}});GENTICS.Aloha.FloatingMenu.addButton(this.getUID("cell"),this.captionButton,GENTICS.Aloha.i18n(this,"floatingmenu.tab.table"),1);this.summary=new GENTICS.Aloha.ui.AttributeField({width:350});this.summary.addListener("keyup",function(obj,event){that.activeTable.checkWai()});GENTICS.Aloha.FloatingMenu.addButton(this.getUID("cell"),this.summary,GENTICS.Aloha.i18n(this,"floatingmenu.tab.table"),1)};GENTICS.Aloha.TablePlugin.makeCaptionEditable=function(caption,captionText){var that=this;var cSpan=caption.children("div").eq(0);if(cSpan.length==0){cSpan=jQuery("
                  ");if(caption.contents().length>0){caption.contents().wrap(cSpan)}else{if(captionText){cSpan.text(captionText)}caption.append(cSpan)}}cSpan.contentEditable(true);cSpan.unbind("mousedown");cSpan.bind("mousedown",function(jqEvent){cSpan.focus();jqEvent.preventDefault();jqEvent.stopPropagation();return false})};GENTICS.Aloha.TablePlugin.createDialog=function(callingElement){this.createLayer.set("target",callingElement);this.createLayer.show()};GENTICS.Aloha.TablePlugin.createTable=function(cols,rows){if(GENTICS.Aloha.activeEditable!=null&&typeof GENTICS.Aloha.activeEditable.obj!="undefined"){var table=document.createElement("table");var tableId=table.id=GENTICS.Aloha.TableHelper.getNewTableID();var tbody=document.createElement("tbody");for(var i=0;i0&&GENTICS.Aloha.TableHelper.selectedCells[0].length>0){GENTICS.Aloha.TableHelper.selectedCells[0][0].firstChild.focus()}}});this.obj.bind("mousedown",function(jqEvent){if(!that.hasFocus){that.focus()}jqEvent.stopPropagation();jqEvent.preventDefault();return false});var tableWrapper=jQuery('
                  ');tableWrapper.contentEditable(false);this.obj.wrap(tableWrapper);var htmlTableWrapper=this.obj.parents("."+this.get("classTableWrapper"));htmlTableWrapper.get(0).onresizestart=function(e){return false};htmlTableWrapper.get(0).oncontrolselect=function(e){return false};this.tableWrapper=this.obj.parents("."+this.get("classTableWrapper")).get(0);jQuery(this.cells).each(function(){this.activate()});this.attachSelectionColumn();this.attachSelectionRow();this.attachLastCellEvents();this.makeCaptionEditable();this.checkWai();this.isActive=true;GENTICS.Aloha.EventRegistry.trigger(new GENTICS.Aloha.Event("tableActivated",GENTICS.Aloha,[this]))};GENTICS.Aloha.Table.prototype.makeCaptionEditable=function(){var caption=this.obj.find("caption").eq(0);if(caption){GENTICS.Aloha.TablePlugin.makeCaptionEditable(caption)}};GENTICS.Aloha.Table.prototype.checkWai=function(){var w=this.wai;w.removeClass(this.get("waiGreen"));w.removeClass(this.get("waiRed"));if(this.obj[0].summary.length>5){w.addClass(this.get("waiGreen"))}else{w.addClass(this.get("waiRed"))}};GENTICS.Aloha.Table.prototype.attachSelectionColumn=function(){var emptyCell=jQuery("");emptyCell.html("\u00a0");var that=this;var rows=this.obj.context.rows;for(var i=0;i=0){this.rowsToSelect.splice(arrayIndex,1)}else{this.rowsToSelect.push(this.clickedRowId)}}else{if(jqEvent.shiftKey){this.rowsToSelect.sort(function(a,b){return a-b});var start=this.rowsToSelect[0];var end=this.clickedRowId;if(start>end){start=end;end=this.rowsToSelect[0]}this.rowsToSelect=new Array();for(var i=start;i<=end;i++){this.rowsToSelect.push(i)}}else{this.rowsToSelect=[this.clickedRowId]}}this.selectRows();jqEvent.preventDefault();jqEvent.stopPropagation();return false};GENTICS.Aloha.Table.prototype.rowSelectionMouseOver=function(jqEvent){var rowIndex=jqEvent.currentTarget.parentNode.rowIndex;if(this.mousedown&&this.clickedRowId>=0){var indexInArray=jQuery.inArray(rowIndex,this.rowsToSelect);var start=(rowIndex");emptyCell.html("\u00a0");var numColumns=this.obj.context.rows[0].cells.length;var selectionRow=jQuery("");selectionRow.addClass(this.get("classSelectionRow"));selectionRow.css("height",this.get("selectionArea")+"px");for(var i=0;i0){this.attachColumnSelectEventsToCell(columnToInsert)}else{var columnToInsert=jQuery("").clone();columnToInsert.addClass(this.get("classLeftUpperCorner"));this.wai=jQuery("
                  ");this.wai.width(25);this.wai.height(12);this.wai.click(function(e){that.focus();GENTICS.Aloha.FloatingMenu.userActivatedTab=GENTICS.Aloha.TablePlugin.i18n("floatingmenu.tab.table");GENTICS.Aloha.FloatingMenu.doLayout();GENTICS.Aloha.TablePlugin.summary.focus();e.stopPropagation();e.preventDefault();return false});columnToInsert.append(this.wai)}selectionRow.append(columnToInsert)}jQuery(document).bind("mouseup",function(e){that.mousedown=false;that.clickedColumnId=-1;that.clickedRowId=-1});this.obj.find("tr:first").before(selectionRow)};GENTICS.Aloha.Table.prototype.attachColumnSelectEventsToCell=function(cell){var that=this;cell.unbind("mousedown");cell.unbind("mouseover");cell.get(0).onselectstart=function(){return false};cell.bind("mousedown",function(e){that.mousedown=true;that.columnSelectionMouseDown(e)});cell.bind("mouseover",function(e){if(that.mousedown){that.columnSelectionMouseOver(e)}})};GENTICS.Aloha.Table.prototype.columnSelectionMouseDown=function(jqEvent){this.focus();if(GENTICS.Aloha.TableHelper.selectedCells.length==0){this.columnsToSelect=new Array()}this.clickedColumnId=jqEvent.currentTarget.cellIndex;if(jqEvent.metaKey){var arrayIndex=jQuery.inArray(this.clickedColumnId,this.columnsToSelect);if(arrayIndex>=0){this.columnsToSelect.splice(arrayIndex,1)}else{this.columnsToSelect.push(this.clickedColumnId)}}else{if(jqEvent.shiftKey){this.columnsToSelect.sort(function(a,b){return a-b});var start=this.columnsToSelect[0];var end=this.clickedColumnId;if(start>end){start=end;end=this.columnsToSelect[0]}this.columnsToSelect=new Array();for(var i=start;i<=end;i++){this.columnsToSelect.push(i)}}else{this.columnsToSelect=[this.clickedColumnId]}}this.selectColumns();jqEvent.preventDefault();jqEvent.stopPropagation();return false};GENTICS.Aloha.Table.prototype.columnSelectionMouseOver=function(jqEvent){var colIndex=jqEvent.currentTarget.cellIndex;if(this.mousedown&&this.clickedColumnId>0){var indexInArray=jQuery.inArray(colIndex,this.columnsToSelect);var start=(colIndex0){for(var i=0;i(this.numRows-rowIDs.length)){focusRowId--}this.releaseLastCellEvents();var rows=this.obj.find("tr");var rows2delete=new Array();for(var i=0;i0){for(var i=0;i(this.numCols-colIDs.length)){focusColID--}this.releaseLastCellEvents();var rows=this.obj.find("tr");var cols2delete=new Array();for(var i=0;i=0){this.deactivate();GENTICS.Aloha.TableHelper.selectionType=undefined;GENTICS.Aloha.TablePlugin.TableRegistry.splice(i,1);var newRange=GENTICS.Aloha.Selection.rangeObject;newRange.startContainer=newRange.endContainer=this.obj.get(0).parentNode;newRange.startOffset=newRange.endOffset=GENTICS.Utils.Dom.getIndexInParent(this.obj.get(0).parentNode);newRange.clearCaches();this.obj.remove();this.parentEditable.obj.focus();newRange.correctRange();newRange.select()}};GENTICS.Aloha.Table.prototype.addRowsBefore=function(highlightNewRows){this.addRows("before",highlightNewRows)};GENTICS.Aloha.Table.prototype.addRowsAfter=function(highlightNewRows){this.addRows("after",highlightNewRows)};GENTICS.Aloha.Table.prototype.addRows=function(position,highlightNewRows){if(typeof GENTICS.Aloha.TablePlugin.activeTable!="undefined"){this.releaseLastCellEvents();var that=this;var numCols=this.numCols;var rowsToInsert=1;var rowId=1;if(GENTICS.Aloha.TableHelper.selectedCells.length>0){rowsToInsert=GENTICS.Aloha.TableHelper.selectedCells.length;switch(position){case"before":if(GENTICS.Aloha.TableHelper.selectedCells[0].length){rowId=GENTICS.Aloha.TableHelper.selectedCells[0][0].parentNode.rowIndex}break;case"after":var lastRow=GENTICS.Aloha.TableHelper.selectedCells.length-1;if(GENTICS.Aloha.TableHelper.selectedCells[lastRow].length){rowId=GENTICS.Aloha.TableHelper.selectedCells[lastRow][0].parentNode.rowIndex}break}}else{if(typeof GENTICS.Aloha.Table.Cell.lastActiveCell!="undefined"){rowId=GENTICS.Aloha.Table.Cell.lastActiveCell.obj.context.parentNode.rowIndex}}var newRowIndex=rowId;if(position=="after"){newRowIndex+=1}var rowIdArray=new Array();for(var j=0;j");var selectionColumn=jQuery("");selectionColumn.addClass(this.get("classSelectionColumn"));this.attachRowSelectionEventsToCell(selectionColumn);insertionRow.append(selectionColumn);for(i=0;i");newCol.html("\u00a0");var cell=new GENTICS.Aloha.Table.Cell(newCol.get(0),GENTICS.Aloha.TablePlugin.activeTable);cell.activate();this.cells.push(cell);insertionRow.append(cell.obj)}var currentRow=jQuery(GENTICS.Aloha.TablePlugin.activeTable.obj.find("tr").get(rowId));switch(position){case"before":currentRow.before(insertionRow);break;case"after":currentRow.after(insertionRow);break;default:this.warn(this,"Wrong call of GENTICS.Aloha.Table.prototype.addRow!")}newRowIndex++;this.numRows++}GENTICS.Aloha.TableHelper.unselectCells();this.rowsToSelect=rowIdArray;if(highlightNewRows){this.selectRows()}this.attachLastCellEvents()}};GENTICS.Aloha.Table.prototype.addColumnsRight=function(){this.addColumns("right")};GENTICS.Aloha.Table.prototype.addColumnsLeft=function(){this.addColumns("left")};GENTICS.Aloha.Table.prototype.addColumns=function(position){if(typeof GENTICS.Aloha.TablePlugin.activeTable!="undefined"){this.releaseLastCellEvents();var that=this;var columnsToInsert=1;var colId=1;if(GENTICS.Aloha.TableHelper.selectedCells.length>0){columnsToInsert=GENTICS.Aloha.TableHelper.selectedCells[0].length;switch(position){case"left":if(GENTICS.Aloha.TableHelper.selectedCells[0].length){colId=GENTICS.Aloha.TableHelper.selectedCells[0][0].cellIndex}break;case"right":var lastColumn=GENTICS.Aloha.TableHelper.selectedCells[0].length-1;if(GENTICS.Aloha.TableHelper.selectedCells[0].length){colId=GENTICS.Aloha.TableHelper.selectedCells[0][lastColumn].cellIndex}break}}else{if(typeof GENTICS.Aloha.Table.Cell.lastActiveCell!="undefined"){colId=GENTICS.Aloha.Table.Cell.lastActiveCell.obj.context.cellIndex}}var newColId=colId;var emptyCell=jQuery("");var rows=this.obj.find("tr");var colIdArray=new Array();for(var i=0;i");var wrapper=this.obj.children("div").eq(0);wrapper.contentEditable(true);wrapper.addClass("GENTICS_Table_Cell_editable");var that=this;wrapper.bind("focus",function(jqEvent){if(jqEvent.currentTarget){jqEvent.currentTarget.indexOf=function(){return -1}}that.editableFocus(jqEvent)});wrapper.bind("mousedown",function(jqEvent){if(jqEvent.currentTarget){jqEvent.currentTarget.indexOf=function(){return -1}}that.editableMouseDown(jqEvent)});wrapper.bind("blur",function(jqEvent){that.editableBlur(jqEvent)});wrapper.bind("keyup",function(jqEvent){that.editableKeyUp(jqEvent)});wrapper.bind("keydown",function(jqEvent){that.editableKeyDown(jqEvent)});wrapper.GENTICS_contentEditableSelectionChange(function(event){GENTICS.Aloha.Selection.onChange(wrapper,event);return wrapper});this.obj.bind("mousedown",function(jqEvent){setTimeout(function(){that.wrapper.trigger("focus")},1);GENTICS.Aloha.TableHelper.unselectCells();jqEvent.stopPropagation()});this.obj.get(0).onselectstart=function(jqEvent){return false};this.wrapper=this.obj.children();this.wrapper.get(0).onselectstart=function(){window.event.cancelBubble=true};return this};GENTICS.Aloha.Table.Cell.prototype.deactivate=function(){var wrapper=this.obj.children(".GENTICS_Table_Cell_editable");if(wrapper.length){var innerHtml=wrapper.html();wrapper.unbind();wrapper.remove();this.obj.unbind("click");if(GENTICS.Aloha.trim(this.obj.attr("class"))==""){this.obj.removeAttr("class")}this.obj.html(innerHtml)}};GENTICS.Aloha.Table.Cell.prototype.toString=function(){return"GENTICS.Aloha.Table.Cell"};GENTICS.Aloha.Table.Cell.prototype.selectAll=function(editableNode){var e=(editableNode.jquery)?editableNode.get(0):editableNode;if(!jQuery.browser.msie){var s=window.getSelection();if(s.setBaseAndExtent){s.setBaseAndExtent(e,0,e,e.innerText.length-1)}else{if(window.opera&&e.innerHTML.substring(e.innerHTML.length-4)=="
                  "){e.innerHTML=e.innerHTML+" "}var r=document.createRange();r.selectNodeContents(e);s.removeAllRanges();s.addRange(r)}}else{if(document.getSelection){var s=document.getSelection();var r=document.createRange();r.selectNodeContents(e);s.removeAllRanges();s.addRange(r)}else{if(document.selection){var r=document.body.createTextRange();r.moveToElementText(e);r.select()}}}GENTICS.Aloha.Selection.updateSelection(editableNode)};GENTICS.Aloha.Table.Cell.prototype.editableMouseDown=function(jqEvent){GENTICS.Aloha.TableHelper.unselectCells();if(this.tableObj.hasFocus){jqEvent.stopPropagation()}};GENTICS.Aloha.Table.Cell.prototype.editableKeyUp=function(jqEvent){this.checkForEmptyEvent(jqEvent)};GENTICS.Aloha.Table.Cell.prototype.editableKeyDown=function(jqEvent){this.checkForEmptyEvent(jqEvent);if(!jqEvent.ctrlKey&&!jqEvent.shiftKey){if(GENTICS.Aloha.TableHelper.selectedCells.length>0&&GENTICS.Aloha.TableHelper.selectedCells[0].length>0){GENTICS.Aloha.TableHelper.selectedCells[0][0].firstChild.focus();GENTICS.Aloha.TableHelper.unselectCells();jqEvent.stopPropagation()}}else{if(jqEvent.shiftKey&&GENTICS.Aloha.TableHelper.selectedCells.length>0){var KEYCODE_ARROWLEFT=37;var KEYCODE_ARROWUP=38;var KEYCODE_ARROWRIGHT=39;var KEYCODE_ARROWDOWN=40;switch(GENTICS.Aloha.TableHelper.selectionType){case"row":switch(jqEvent.keyCode){case KEYCODE_ARROWUP:var firstSelectedRow=GENTICS.Aloha.TableHelper.selectedCells[0][0].parentNode.rowIndex;if(firstSelectedRow>1){this.tableObj.rowsToSelect.push(firstSelectedRow-1)}break;case KEYCODE_ARROWDOWN:var lastRowIndex=GENTICS.Aloha.TableHelper.selectedCells.length-1;var lastSelectedRow=GENTICS.Aloha.TableHelper.selectedCells[lastRowIndex][0].parentNode.rowIndex;if(lastSelectedRow1){this.tableObj.columnsToSelect.push(firstColSelected-1)}break;case KEYCODE_ARROWRIGHT:var lastColIndex=GENTICS.Aloha.TableHelper.selectedCells[0].length-1;var lastColSelected=GENTICS.Aloha.TableHelper.selectedCells[0][lastColIndex].cellIndex;if(lastColSelected0){return}var text=this.wrapper.text();if(text==""){this.wrapper.text("\u00a0");this.wrapper.get(0).blur();this.wrapper.get(0).focus()}};GENTICS.Aloha.Table.CreateLayer=function(){};GENTICS.Aloha.Table.CreateLayer.prototype.parameters={elemId:"GENTICS_Aloha_Table_createLayer",className:"GENTICS_Table_Createdialog",numX:10,numY:10,layer:undefined,target:undefined};GENTICS.Aloha.Table.CreateLayer.prototype.config=new Object();GENTICS.Aloha.Table.CreateLayer.prototype.visible=false;GENTICS.Aloha.Table.CreateLayer.prototype.show=function(){var layer=this.get("layer");if(layer==null){this.create()}else{this.setPosition(layer);layer.find("td").removeClass("hover");layer.show()}this.visible=true};GENTICS.Aloha.Table.CreateLayer.prototype.create=function(){var that=this;var layer=jQuery("
                  ");layer.id=this.get("elemId");layer.addClass(this.get("className"));var table=jQuery("
                  ");table.css("width",(this.get("numX")+6)*15);var tr;var td;for(var i=0;i");for(var j=0;j\u00a0");if(i==0&&j==0){td.addClass("hover")}td.bind("mouseover",{rowId:i,colId:j},function(e){that.handleMouseOver(e,table)});td.bind("click",{rowId:i,colId:j},function(e){var rows=e.data.rowId+1;var cols=e.data.colId+1;GENTICS.Aloha.TablePlugin.createTable(cols,rows);that.hide()});tr.append(td)}table.append(tr)}layer.append(table);this.set("layer",layer);this.setPosition();layer.bind("click",function(e){e.stopPropagation()}).mousedown(function(e){e.stopPropagation()});jQuery("body").append(layer).bind("click",function(e){if(e.target!=that.get("target")&&that.visible){that.hide()}})};GENTICS.Aloha.Table.CreateLayer.prototype.handleMouseOver=function(e,table){var rowId=e.data.rowId;var colId=e.data.colId;var innerRows=table.find("tr");for(var n=0;n<=innerRows.length;n++){var innerCells=jQuery(innerRows[n]).find("td");for(var k=0;k<=innerCells.length;k++){if(n<=rowId&&k<=colId){jQuery(innerCells[k]).addClass("hover")}else{jQuery(innerCells[k]).removeClass("hover")}}}};GENTICS.Aloha.Table.CreateLayer.prototype.setPosition=function(){var targetObj=jQuery(this.get("target"));var pos=targetObj.offset();this.get("layer").css("left",pos.left+"px");this.get("layer").css("top",(pos.top+targetObj.height())+"px")};GENTICS.Aloha.Table.CreateLayer.prototype.hide=function(){this.get("layer").hide();this.visible=false};GENTICS.Aloha.Table.CreateLayer.prototype.get=function(property){if(this.config[property]){return this.config[property]}if(this.parameters[property]){return this.parameters[property]}return undefined};GENTICS.Aloha.Table.CreateLayer.prototype.set=function(key,value){if(this.config[key]){this.config[key]=value}else{this.parameters[key]=value}};GENTICS.Aloha.TableHelper=function(){};GENTICS.Aloha.TableHelper.prototype.selectionType=undefined;GENTICS.Aloha.TableHelper.prototype.selectedCells=new Array();GENTICS.Aloha.TableHelper.prototype.unselectCells=function(){if(this.selectedCells.length>0){for(var i=0;i_E)L!3HEN&baUbDaPU;cPEB*=VV?2Ic!PZ?k)`f zL2$v|<&%LToCO|{#S9F5he4R}c>anMpdfpRr>`sfEfzK|HNCy8=_i0f=AJH&ArhC5 z_Iq+MDDW_=|NTGzcr%CVitu8tNQF)=he^H+rVK}!?awguoi+a5HtW^?WAoi#9AwqF WEXBO2xk?IX1cRrmpUXO@geCxkK{dw! literal 0 HcmV?d00001 diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/left.cur b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/left.cur new file mode 100644 index 0000000000000000000000000000000000000000..5df3fd091b7b5b9baa4d68caa88d74b5168954c1 GIT binary patch literal 55 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 Usin2{A1iwRb>17rDGYFaQ7m literal 0 HcmV?d00001 diff --git a/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/wai_red.png b/public/javascripts/admin/aloha/plugins/com.gentics.aloha.plugins.Table/resources/wai_red.png new file mode 100644 index 0000000000000000000000000000000000000000..89589914b94b6269ffd5f65e4310ef91ef3959ec GIT binary patch literal 48696 zcmc$`1#leCm*;6&WXWP?Su9!1+-+IR%*@QJ7TA)-%*@OdGcz+Yvs%n>`u%Ta_iiq3 zcXn;xmgI*( zIsOz^`tp%HzZeC5)Zy&J)Ez&4g1`9ZfcRO)mh|x@j+3yOlc0mKzLUAF%{L`;YvWJM z91P4%3@l8{OsP2=dmlCg|JW$nnmD=YI~acwFtRl;{w8AXVC-t^VCncxP>~I$dM4}B zCkRqI2NhMfw6obRdp{0JbsZ8x)-D~#=hrF?Z8m^P=i3d1#5x9mWPEDc~4`(x|*$@dR8{w=-bql|Ac z(P`rF{b|r!!1CE2SS=<#6<)c>hXrv;Hn>1iM5aHrzZfPJlcS5%AZO<( z@Z7$h${uTn3%cFSNgU1JJ7R-NMXJaPQU)r#YDzO^!JXuNU9MSi^O+25PxC67o<`O_ z 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
                  tcy@i4I;iTsOq&UXl4Yu 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 literal 0 HcmV?d00001