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.setStyle({ display: "block" });
30 documentLabel.setStyle({ display: "none" });
33 documentHref.appendChild(document.createTextNode(newUrl));
34 if (newUrl.length > 0)
35 documentLabel.setStyle({ 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.setStyle({ display: "block" });
94 attendeesLabel.setStyle({ 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.setStyle({ textDecoration: "underline", color: "#00f" });
105 attendeesHref.appendChild(document.createTextNode(attendeesNames.value));
106 attendeesLabel.setStyle({ display: "block" });
110 function initializeDocumentHref() {
111 var documentHref = $("documentHref");
112 var documentLabel = $("documentLabel");
113 var documentUrl = $("url");
115 documentHref.addEventListener("click", onPopupDocumentWindow, false);
116 documentHref.setStyle({ textDecoration: "underline", color: "#00f" });
117 if (documentUrl.value.length > 0) {
118 documentHref.appendChild(document.createTextNode(documentUrl.value));
119 documentLabel.setStyle({ display: "block" });
122 var changeUrlButton = $("changeUrlButton");
123 changeUrlButton.addEventListener("click", onPopupUrlWindow, false);
126 function initializePrivacyMenu() {
127 var privacy = $("privacy").value.toUpperCase();
128 if (privacy.length > 0) {
129 var privacyMenu = $("privacy-menu").childNodesWithTag("ul")[0];
130 var menuEntries = privacyMenu.childNodesWithTag("li");
132 if (privacy == "CONFIDENTIAL")
133 chosenNode = menuEntries[1];
134 else if (privacy == "PRIVATE")
135 chosenNode = menuEntries[2];
137 chosenNode = menuEntries[0];
138 privacyMenu.chosenNode = chosenNode;
139 chosenNode.addClassName("_chosen");
143 function onComponentEditorLoad(event) {
144 if (!$("statusPercent"))
145 initializeAttendeesHref();
146 initializeDocumentHref();
147 initializePrivacyMenu();
148 var list = $("calendarList");
149 list.addEventListener("change", onChangeCalendar, false);
150 var onSelectionChangeEvent = document.createEvent("Event");
151 onSelectionChangeEvent.initEvent("change", false, false);
152 list.dispatchEvent(onSelectionChangeEvent);
154 var menuItems = $("itemPrivacyList").childNodesWithTag("li");
155 for (var i = 0; i < menuItems.length; i++)
156 menuItems[i].addEventListener("mouseup", onMenuSetClassification, false);
159 window.addEventListener("load", onComponentEditorLoad, false);