From 73a80d86236f7a2444c7b5d0496821ab4a4cab48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Tue, 16 Apr 2013 08:11:12 +0000 Subject: [PATCH] Template Addon --- addons/CodingGuidelines.txt | 29 ++++++++++ addons/template/content/init.js.php | 87 +++++++++++++++++++++++++++++ content/fas.xul.php | 11 +++- content/tempus.js.php | 6 +- 4 files changed, 131 insertions(+), 2 deletions(-) create mode 100644 addons/CodingGuidelines.txt create mode 100644 addons/template/content/init.js.php diff --git a/addons/CodingGuidelines.txt b/addons/CodingGuidelines.txt new file mode 100644 index 000000000..5da2faac9 --- /dev/null +++ b/addons/CodingGuidelines.txt @@ -0,0 +1,29 @@ +Coding Guidlines für Addon-Entwickung +===================================== + +Hier sind einige Coding Guidlines die beachtet werden sollten um Konflikte zu vermeiden + + +XUL-Applikationen +================= + +IDs von XUL Elementen sollten immer nach folgendem Schema benannt werden: + +addon-namedesaddons-xultag-bezeichnung + +Ein Beispiel für das Addon mit dem Namen Template + + +Namen von globalen Variablen sollten immer nach folgendem Schema benannt werden: + +AddonNamedesAddonsMeineVariable + +Ein Beispiel für das Addon mit dem Namen Template +AddonTemplatePersonID=0 + +Namen von Funktionen sollten immer nach folgendem Schema benannt werden: + +AddonNamedesAddonsMeineFunktion + +Ein Beispiel für das Addon mit dem Namen Template +function AddonTemplateSave() diff --git a/addons/template/content/init.js.php b/addons/template/content/init.js.php new file mode 100644 index 000000000..af6717a7d --- /dev/null +++ b/addons/template/content/init.js.php @@ -0,0 +1,87 @@ + + */ +/** + * Initialisierung des Addons + */ +?> +addon.push( +{ + init: function() + { + // Diese Funktion wird nach dem Laden des FAS aufgerufen + + + // Hinzufuegen eines zusaetzlichen Tabs bei Mitarbeitern mit einem Label darin + var tabitem = document.createElement("tab"); + tabitem.setAttribute("id","addon-template-tab"); + tabitem.setAttribute("label","Template"); + + var mitarbeitertabs = document.getElementById("mitarbeiter-tabs"); + mitarbeitertabs.appendChild(tabitem); + + var tabpanelitem = document.createElement("vbox"); + tabpanelitem.setAttribute("id","addon-template-tabpannel-vbox"); + var label = document.createElement("label"); + label.setAttribute("value","Template"); + tabpanelitem.appendChild(label); + + var mitarbeitertabpanels=document.getElementById("mitarbeiter-tabpanels-main"); + mitarbeitertabpanels.appendChild(tabpanelitem); + + // zusaetzliche Funktion beim klicken des Suchen Button bei Mitarbeitern hinzufuegen + searchbutton = document.getElementById("mitarbeiter-toolbar-button-search"); + searchbutton.addEventListener("command",AddonTemplateMitarbeiterSearch, true); + + // Menuepunkt hinzufuegen + statistikmenue = document.getElementById("menu-statistic-popup"); + + var menuentry = document.createElement("menuitem"); + menuentry.setAttribute("id","addons-template-mymenuentry"); + menuentry.setAttribute("label","Addon Template Menu Entry"); + menuentry.addEventListener("command",AddonTemplateMenuEntry, true); + + statistikmenue.appendChild(menuentry); + }, + selectMitarbeiter: function(person_id, mitarbeiter_uid) + { + }, + selectStudent: function(person_id, prestudent_id, student_uid) + { + }, + selectVerband: function(item) + { + }, + selectInstitut: function(institut) + { + }, + selectLektor: function(lektor) + { + } +}); + +function AddonTemplateMitarbeiterSearch() +{ + alert("AddonTemplateSearchButtonClicked"); +} + +function AddonTemplateMenuEntry() +{ + alert("AddonTemplateMenuEntry clicked"); +} diff --git a/content/fas.xul.php b/content/fas.xul.php index 8918cb540..bf5f10e56 100644 --- a/content/fas.xul.php +++ b/content/fas.xul.php @@ -71,6 +71,15 @@ echo '';