1 function onPopupAttendeesWindow(event) {
3 event.preventDefault();
4 window.open(ApplicationBaseURL + "editAttendees", null,
5 "width=803,height=573");
10 function onSelectPrivacy(event) {
11 popupToolbarMenu(event, "privacy-menu");
16 function onPopupUrlWindow(event) {
18 event.preventDefault();
20 var urlInput = document.getElementById("url");
21 var newUrl = window.prompt(labels["Target:"].decodeEntities(), urlInput.value);
23 var documentHref = $("documentHref");
24 var documentLabel = $("documentLabel");
25 if (documentHref.childNodes.length > 0) {
26 documentHref.childNodes[0].nodeValue = newUrl;
27 if (newUrl.length > 0)
28 documentLabel.style.display = "block;";
30 documentLabel.style.display = "none;";
33 documentHref.appendChild(document.createTextNode(newUrl));
34 if (newUrl.length > 0)
35 documentLabel.style.display = "block;";
37 urlInput.value = newUrl;
43 function onPopupDocumentWindow(event) {
44 var documentUrl = $("url");
46 event.preventDefault();
47 window.open(documentUrl.value, "SOGo_Document");
52 function onMenuSetClassification(event) {
53 event.cancelBubble = true;
55 var classification = this.getAttribute("classification");
56 if (this.parentNode.chosenNode)
57 this.parentNode.chosenNode.removeClassName("_chosen");
58 this.addClassName("_chosen");
59 this.parentNode.chosenNode = this;
61 log("classification: " + classification);
62 var privacyInput = document.getElementById("privacy");
63 privacyInput.value = classification;
66 function onChangeCalendar(event) {
67 var calendars = $("calendarFoldersList").value.split(",");
68 var form = document.forms["editform"];
69 var urlElems = form.getAttribute("action").split("/");
70 var choice = calendars[this.value];
72 if (choice.indexOf(":") > -1)
73 ownerLogin = choice.split(":")[0];
75 ownerLogin = UserLogin;
76 urlElems[urlElems.length-4] = ownerLogin;
78 form.setAttribute("action", urlElems.join("/"));
81 function refreshAttendees() {
82 var attendeesLabel = $("attendeesLabel");
83 var attendeesNames = $("attendeesNames");
84 var attendeesHref = $("attendeesHref");
86 for (var i = 0; i < attendeesHref.childNodes.length; i++)
87 attendeesHref.removeChild(attendeesHref.childNodes[i]);
89 if (attendeesNames.value.length > 0) {
90 attendeesHref.appendChild(document.createTextNode(attendeesNames.value));
91 attendeesLabel.style.display = "block;";
94 attendeesLabel.style.display = "none;";
97 function initializeAttendeesHref() {
98 var attendeesHref = $("attendeesHref");
99 var attendeesLabel = $("attendeesLabel");
100 var attendeesNames = $("attendeesNames");
102 attendeesHref.addEventListener("click", onPopupAttendeesWindow, false);
103 if (attendeesNames.value.length > 0) {
104 attendeesHref.style.textDecoration = "underline;";
105 attendeesHref.style.color = "#00f;";
106 attendeesHref.appendChild(document.createTextNode(attendeesNames.value));
107 attendeesLabel.style.display = "block;";
111 function initializeDocumentHref() {
112 var documentHref = $("documentHref");
113 var documentLabel = $("documentLabel");
114 var documentUrl = $("url");
116 documentHref.addEventListener("click", onPopupDocumentWindow, false);
117 documentHref.style.textDecoration = "underline;";
118 documentHref.style.color = "#00f;";
119 if (documentUrl.value.length > 0) {
120 documentHref.appendChild(document.createTextNode(documentUrl.value));
121 documentLabel.style.display = "block;";
124 var changeUrlButton = $("changeUrlButton");
125 changeUrlButton.addEventListener("click", onPopupUrlWindow, false);
128 function initializePrivacyMenu() {
129 var privacy = $("privacy").value.toUpperCase();
130 if (privacy.length > 0) {
131 var privacyMenu = $("privacy-menu").childNodesWithTag("ul")[0];
132 var menuEntries = privacyMenu.childNodesWithTag("li");
134 if (privacy == "CONFIDENTIAL")
135 chosenNode = menuEntries[1];
136 else if (privacy == "PRIVATE")
137 chosenNode = menuEntries[2];
139 chosenNode = menuEntries[0];
140 privacyMenu.chosenNode = chosenNode;
141 chosenNode.addClassName("_chosen");
145 function onComponentEditorLoad(event) {
146 if (!$("statusPercent"))
147 initializeAttendeesHref();
148 initializeDocumentHref();
149 initializePrivacyMenu();
150 var list = $("calendarList");
151 list.addEventListener("change", onChangeCalendar, false);
152 var onSelectionChangeEvent = document.createEvent("Event");
153 onSelectionChangeEvent.initEvent("change", false, false);
154 list.dispatchEvent(onSelectionChangeEvent);
156 var menuItems = $("itemPrivacyList").childNodesWithTag("li");
157 for (var i = 0; i < menuItems.length; i++)
158 menuItems[i].addEventListener("mouseup", onMenuSetClassification, false);
161 window.addEventListener("load", onComponentEditorLoad, false);