mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-03-19 13:25:57 +00:00
Monotone-Parent: 145acd1ad78984a6f26963cc9b6abb3e5c915bcd
Monotone-Revision: d73281348e68338299c1595a484a8a1033de3cd1 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2006-07-17T17:30:42 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -9,30 +9,38 @@
|
||||
<ul id="searchOptions">
|
||||
<li id="subject"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Subject"/></li>
|
||||
onclick="setSearchCriteria(event);"><var:string label:value="Subject"/></li>
|
||||
<li id="sender"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Sender"/></li>
|
||||
onclick="setSearchCriteria(event);"><var:string label:value="Sender"/></li>
|
||||
<li id="subject_or_sender"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Subject or Sender"/></li>
|
||||
onclick="setSearchCriteria(event);"><var:string label:value="Subject or Sender"/></li>
|
||||
<li id="to_or_cc"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="To or Cc"/></li>
|
||||
onclick="setSearchCriteria(event);"><var:string label:value="To or Cc"/></li>
|
||||
<li id="entire_message"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Entire Message"/></li>
|
||||
onclick="setSearchCriteria(event);"><var:string label:value="Entire Message"/></li>
|
||||
<li id="find_in_message"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Find In Message"/></li>
|
||||
onclick="setSearchCriteria(event);"><var:string label:value="Find In Message"/></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<var:if condition="hideFrame" const:negate="YES">
|
||||
<span class="searchBox" style="float: right">
|
||||
<var:string label:value="Subject or Sender contains" />:
|
||||
<input onclick="popupSearchMenu(this, event, 'searchMenu');" name="search" type="text" var:value="searchText" />
|
||||
<input id="searchCriteria" name="criteria" type="hidden" var:value="searchCriteria" />
|
||||
<input id="searchValue" onmousedown="onSearchMouseDown(event);" onclick="popupSearchMenu(event, 'searchMenu');" autocomplete="off" name="search" type="text" var:value="searchText" onchange="onSearchChange();" onblur="onSearchBlur();" onfocus="onSearchFocus(event);" />
|
||||
</span>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
initCriteria();
|
||||
document.pageform.search.focus();
|
||||
</script>
|
||||
</var:if>
|
||||
|
||||
<var:string label:value="View" />:
|
||||
<var:popup list="filters"
|
||||
item="filter" string="filterLabel" value="filter"
|
||||
|
||||
@@ -32,25 +32,25 @@
|
||||
<li class="separator"></li>
|
||||
<li
|
||||
class="submenu"
|
||||
submenu="dummymenu"
|
||||
submenu="mailboxes-menu"
|
||||
onmouseover="dropDownSubmenu(event);"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Move To"/></li>
|
||||
<li
|
||||
class="submenu"
|
||||
submenu="dummymenu"
|
||||
submenu="mailboxes-menu"
|
||||
onmouseover="dropDownSubmenu(event);"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Copy To"/></li>
|
||||
<li
|
||||
class="submenu"
|
||||
submenu="dummymenu"
|
||||
submenu="label-menu"
|
||||
onmouseover="dropDownSubmenu(event);"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Label"/></li>
|
||||
<li
|
||||
class="submenu"
|
||||
submenu="dummymenu"
|
||||
submenu="mark-menu"
|
||||
onmouseover="dropDownSubmenu(event);"
|
||||
onmousedown="return false;"
|
||||
onclick=""><var:string label:value="Mark"/></li>
|
||||
@@ -69,47 +69,38 @@
|
||||
onclick=""><var:string label:value="Delete Message"/></li>
|
||||
</ul>
|
||||
|
||||
<div class="menu" id="dummymenu">
|
||||
<ul id="sourceLisdassdadst">
|
||||
<li
|
||||
class="submenu"
|
||||
submenu="dummymenu2"
|
||||
onmouseover="dropDownSubmenu(event);"
|
||||
onmousedown="return false;"
|
||||
onclick="">tdasdsadsa</li>
|
||||
<div class="menu" id="mailboxes-menu">
|
||||
<ul id="">
|
||||
<li onmousedown="return false;">really</li>
|
||||
<li onmousedown="return false;">is</li>
|
||||
<li onmousedown="return false;">a</li>
|
||||
<li onmousedown="return false;">dumb dummy!</li>
|
||||
</ul>
|
||||
|
||||
<div class="menu" id="dummymenu2">
|
||||
<ul id="sourdsadsaceList">
|
||||
<li
|
||||
class="submenu"
|
||||
submenu="dummymenu3"
|
||||
onmouseover="dropDownSubmenu(event);"
|
||||
onmousedown="return false;"
|
||||
onclick="">Dummy 2</li>
|
||||
<li onmousedown="return false;">really</li>
|
||||
<li onmousedown="return false;">is</li>
|
||||
<li onmousedown="return false;">another</li>
|
||||
<li onmousedown="return false;">dumb dummy!</li>
|
||||
</ul>
|
||||
|
||||
<div class="menu" id="dummymenu3">
|
||||
<ul id="sourdsadsaceList">
|
||||
<li onmousedown="return false;">Dummy 3</li>
|
||||
<li onmousedown="return false;">really</li>
|
||||
<li onmousedown="return false;">is</li>
|
||||
<li onmousedown="return false;">another</li>
|
||||
<li onmousedown="return false;">dumb dummy!</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="menu" id="label-menu">
|
||||
<ul id="">
|
||||
<li onmousedown="return false;"><var:string label:value="None" /></li>
|
||||
<li class="separator"></li>
|
||||
<li onmousedown="return false;"><var:string label:value="Important" /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="Work" /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="Personal" /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="To Do" /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="Later" /></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="menu" id="mark-menu">
|
||||
<ul id="">
|
||||
<li onmousedown="return false;"><var:string label:value="As Read" /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="Thread As Read" /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="As Read By Date..." /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="All Read" /></li>
|
||||
<li class="separator"></li>
|
||||
<li onmousedown="return false;"><var:string label:value="Flag" /></li>
|
||||
<li class="separator"></li>
|
||||
<li onmousedown="return false;"><var:string label:value="As Junk" /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="As Not Junk" /></li>
|
||||
<li onmousedown="return false;"><var:string label:value="Run Junk Mail Controls" /></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -205,8 +196,8 @@
|
||||
<var:foreach list="messages" item="message">
|
||||
<tr class="tableview" var:id="msgRowID"
|
||||
onmousedown="return false;"
|
||||
onclick="onRowClick(this, event);"
|
||||
oncontextmenu="onMenuClick(this, event, 'messageListMenu'); onRowClick(this, event); return false;">
|
||||
onclick="onRowClick(event);"
|
||||
oncontextmenu="onMenuClick(event, 'messageListMenu'); onRowClick(event); return false;">
|
||||
<td>
|
||||
<!-- this seems to break on Safari, it treats name==id? -->
|
||||
</td>
|
||||
@@ -293,10 +284,4 @@
|
||||
</span>
|
||||
|
||||
</div>
|
||||
|
||||
<var:if condition="hideFrame" const:negate="YES">
|
||||
<script language="JavaScript">
|
||||
document.pageform.search.focus();
|
||||
</script>
|
||||
</var:if>
|
||||
</var:component>
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
<td class="mailer_fieldvalue">
|
||||
<var:foreach list="clientObject.fromEnvelopeAddresses"
|
||||
item="currentAddress">
|
||||
<a var:href="currentAddressLink" onclick="onMenuClick(this, event, 'addressMenu');" oncontextmenu="onMenuClick(this, event, 'addressMenu');" onmousedown="return false;">
|
||||
<a var:href="currentAddressLink" onclick="onMenuClick(event, 'addressMenu');" oncontextmenu="onMenuClick(event, 'addressMenu');" onmousedown="return false;">
|
||||
<var:string value="currentAddress"
|
||||
formatter="context.mailEnvelopeFullAddressFormatter" /></a>
|
||||
</var:foreach>
|
||||
@@ -74,7 +74,7 @@
|
||||
<td class="mailer_fieldvalue">
|
||||
<var:foreach list="clientObject.toEnvelopeAddresses"
|
||||
item="currentAddress">
|
||||
<a var:href="currentAddressLink" onclick="onMenuClick(this, event, 'addressMenu');" oncontextmenu="onMenuClick(this, event, 'addressMenu');" onmousedown="return false;">
|
||||
<a var:href="currentAddressLink" onclick="onMenuClick(event, 'addressMenu');" oncontextmenu="onMenuClick(event, 'addressMenu');" onmousedown="return false;">
|
||||
<var:string value="currentAddress"
|
||||
formatter="context.mailEnvelopeFullAddressFormatter" /></a>
|
||||
</var:foreach>
|
||||
@@ -86,7 +86,7 @@
|
||||
<td class="mailer_fieldvalue">
|
||||
<var:foreach list="clientObject.ccEnvelopeAddresses"
|
||||
item="currentAddress">
|
||||
<a var:href="currentAddressLink" onclick="onMenuClick(this, event, 'addressMenu');" oncontextmenu="onMenuClick(this, event, 'addressMenu');" onmousedown="return false;">
|
||||
<a var:href="currentAddressLink" onclick="onMenuClick(event, 'addressMenu');" oncontextmenu="onMenuClick(event, 'addressMenu');" onmousedown="return false;">
|
||||
<var:string value="currentAddress"
|
||||
formatter="context.mailEnvelopeFullAddressFormatter" /></a>
|
||||
<br /> <!-- TODO: better to use li+CSS -->
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
<?xml version='1.0' standalone='yes'?>
|
||||
<var:component
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:var="http://www.skyrix.com/od/binding"
|
||||
xmlns:const="http://www.skyrix.com/od/constant"
|
||||
xmlns:uix="OGo:uix"
|
||||
xmlns:label="OGo:label"
|
||||
className="UIxPageFrame"
|
||||
title="name"
|
||||
>
|
||||
<script type="text/javascript">
|
||||
function submitMeeting(thisForm) {
|
||||
<var:component
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:var="http://www.skyrix.com/od/binding"
|
||||
xmlns:const="http://www.skyrix.com/od/constant"
|
||||
xmlns:uix="OGo:uix"
|
||||
xmlns:label="OGo:label"
|
||||
className="UIxPageFrame"
|
||||
title="name"
|
||||
>
|
||||
<script type="text/javascript">
|
||||
function submitMeeting(thisForm) {
|
||||
thisForm.submit();
|
||||
opener.window.location.reload();
|
||||
window.close();
|
||||
}
|
||||
</script>
|
||||
}
|
||||
</script>
|
||||
|
||||
<var:js-stringtable const:framework="SchedulerUI.SOGo"
|
||||
const:identifier="labels" />
|
||||
|
||||
<form var:href="clientObject.baseURL" name="editform"
|
||||
onsubmit="return validateAptEditor()">
|
||||
<var:js-stringtable const:framework="SchedulerUI.SOGo"
|
||||
const:identifier="labels" />
|
||||
|
||||
<form var:href="clientObject.baseURL" name="editform"
|
||||
onsubmit="return validateAptEditor()">
|
||||
|
||||
<script language="JavaScript"> <!-- TODO: use a resource -->
|
||||
<var:string value="jsCode" const:escapeHTML="NO" />
|
||||
@@ -51,14 +51,14 @@
|
||||
</var:if>
|
||||
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="100%"
|
||||
bgcolor="#e8e8e0"
|
||||
>
|
||||
bgcolor="#e8e8e0"
|
||||
>
|
||||
<tr>
|
||||
<td align="left" colspan="2">
|
||||
<span class="aptview_title">
|
||||
<var:string label:value="Appointment on" />
|
||||
<var:string formatter="titleDateFormatter"
|
||||
value="aptStartDate" /></span>
|
||||
value="aptStartDate" /></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr valign="top">
|
||||
@@ -71,9 +71,9 @@
|
||||
<span class="aptview_text">
|
||||
<var:component className="UIxDatePickerScript" />
|
||||
<var:component className="UIxTimeDateControl"
|
||||
const:controlID="startTime"
|
||||
date="aptStartDate"
|
||||
/>
|
||||
const:controlID="startTime"
|
||||
date="aptStartDate"
|
||||
/>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -86,9 +86,9 @@
|
||||
<td align="left" bgcolor="#FFFFF0">
|
||||
<span class="aptview_text">
|
||||
<var:component className="UIxTimeDateControl"
|
||||
const:controlID="endTime"
|
||||
date="aptEndDate"
|
||||
/>
|
||||
const:controlID="endTime"
|
||||
date="aptEndDate"
|
||||
/>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -101,7 +101,7 @@
|
||||
<td align="left" bgcolor="#FFFFF0">
|
||||
<span class="aptview_text">
|
||||
<input type="text" name="summary" id="summary"
|
||||
const:size="40" var:value="title" />
|
||||
const:size="40" var:value="title" />
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -114,7 +114,7 @@
|
||||
<td align="left" bgcolor="#FFFFF0">
|
||||
<span class="aptview_text">
|
||||
<input type="text" name="location" const:size="40"
|
||||
var:value="location" />
|
||||
var:value="location" />
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -127,7 +127,7 @@
|
||||
<td align="left" bgcolor="#FFFFF0">
|
||||
<span class="aptview_text">
|
||||
<var:popup list="priorities" item="item"
|
||||
string="itemPriorityText" selection="priority"/>
|
||||
string="itemPriorityText" selection="priority"/>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -143,35 +143,35 @@
|
||||
<tr>
|
||||
<td>
|
||||
<var:popup list="cycles" item="item"
|
||||
label:string="$cycleLabel"
|
||||
selection="cycle"
|
||||
const:onChange="selectHasCycle(this);"
|
||||
/>
|
||||
label:string="$cycleLabel"
|
||||
selection="cycle"
|
||||
const:onChange="selectHasCycle(this);"
|
||||
/>
|
||||
</td>
|
||||
<td id="cycle_end_label"
|
||||
var:style="initialCycleVisibility"
|
||||
><var:string label:value="Cycle End"
|
||||
const:style="aptview_text"
|
||||
var:style="initialCycleVisibility"
|
||||
><var:string label:value="Cycle End"
|
||||
const:style="aptview_text"
|
||||
/>:</td>
|
||||
<td id="cycle_end_mode"
|
||||
var:style="initialCycleVisibility"
|
||||
>
|
||||
var:style="initialCycleVisibility"
|
||||
>
|
||||
<var:popup list="cycleEnds" item="item"
|
||||
label:string="$item" value="item"
|
||||
selection="cycleEnd"
|
||||
const:onChange="selectCycleEnd(this);"
|
||||
const:id="cycle_end_mode_selection"
|
||||
/>
|
||||
label:string="$item" value="item"
|
||||
selection="cycleEnd"
|
||||
const:onChange="selectCycleEnd(this);"
|
||||
const:id="cycle_end_mode_selection"
|
||||
/>
|
||||
</td>
|
||||
<td id="cycle_end_until"
|
||||
var:style="initialCycleEndUntilVisibility"
|
||||
>
|
||||
var:style="initialCycleEndUntilVisibility"
|
||||
>
|
||||
<var:component className="UIxTimeDateControl"
|
||||
date="cycleUntilDate"
|
||||
label="foo"
|
||||
const:controlID="cycleUntilDate"
|
||||
const:displayTimeControl="NO"
|
||||
/>
|
||||
date="cycleUntilDate"
|
||||
label="foo"
|
||||
const:controlID="cycleUntilDate"
|
||||
const:displayTimeControl="NO"
|
||||
/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -186,10 +186,11 @@
|
||||
</td>
|
||||
<td align="left" bgcolor="#FFFFF0">
|
||||
<span class="aptview_text">
|
||||
<var:checkbox-list list="categoryItems" item="item"
|
||||
suffix="itemCategoryText"
|
||||
selections="categories"
|
||||
/>
|
||||
<var:checkbox-list list="categoryItems"
|
||||
item="item"
|
||||
suffix="itemCategoryText"
|
||||
selections="categories"
|
||||
/>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -202,7 +203,7 @@
|
||||
<td align="left" bgcolor="#FFFFF0">
|
||||
<span class="aptview_text">
|
||||
<input type="checkbox" var:selection="isPrivate"
|
||||
var:checked="isPrivate" />
|
||||
var:checked="isPrivate" />
|
||||
<var:string label:value="is private" />
|
||||
</span>
|
||||
</td>
|
||||
@@ -213,8 +214,8 @@
|
||||
<tr>
|
||||
<td>
|
||||
<table border="0" cellpadding="2" cellspacing="0"
|
||||
width="100%" bgcolor="#e8e8e0"
|
||||
>
|
||||
width="100%" bgcolor="#e8e8e0"
|
||||
>
|
||||
<tr>
|
||||
<td align="left" colspan="2">
|
||||
<span class="aptview_title">
|
||||
@@ -231,14 +232,14 @@
|
||||
<span class="aptview_text">
|
||||
<!-- use '1' instead of 'YES', otherwise breaks on OSX -->
|
||||
<var:component className="AnaisSelector"
|
||||
const:selectorID="participant"
|
||||
const:role="REQ-PARTICIPANT"
|
||||
attendees="participants"
|
||||
var:emailForUser="emailForUser"
|
||||
var:cnForUser="cnForUser"
|
||||
const:withCN="1"
|
||||
const:withAddressBook="1"
|
||||
/>
|
||||
const:selectorID="participant"
|
||||
const:role="REQ-PARTICIPANT"
|
||||
attendees="participants"
|
||||
var:emailForUser="emailForUser"
|
||||
var:cnForUser="cnForUser"
|
||||
const:withCN="1"
|
||||
const:withAddressBook="1"
|
||||
/>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -248,8 +249,8 @@
|
||||
<tr>
|
||||
<td>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="100%"
|
||||
bgcolor="#e8e8e0"
|
||||
>
|
||||
bgcolor="#e8e8e0"
|
||||
>
|
||||
<tr>
|
||||
<td align="left" colspan="2">
|
||||
<span class="aptview_title">
|
||||
@@ -265,15 +266,15 @@
|
||||
</td>
|
||||
<td align="left" bgcolor="#FFFFF0">
|
||||
<span class="aptview_text">
|
||||
<!--
|
||||
<!--
|
||||
<var:component className="AnaisAttendeeSelector"
|
||||
const:selectorID="resource"
|
||||
const:role="NON-PARTICIPANT"
|
||||
attendees="resources"
|
||||
const:withCN="YES"
|
||||
const:withAddressBook="YES"
|
||||
const:selectorID="resource"
|
||||
const:role="NON-PARTICIPANT"
|
||||
attendees="resources"
|
||||
const:withCN="YES"
|
||||
const:withAddressBook="YES"
|
||||
/>
|
||||
-->
|
||||
-->
|
||||
TODO: need attendee selector (AB)
|
||||
</span>
|
||||
</td>
|
||||
@@ -284,8 +285,8 @@
|
||||
<tr>
|
||||
<td>
|
||||
<table border="0" cellpadding="2" cellspacing="0" width="100%"
|
||||
bgcolor="#e8e8e0"
|
||||
>
|
||||
bgcolor="#e8e8e0"
|
||||
>
|
||||
<tr>
|
||||
<td align="left" colspan="2">
|
||||
<span class="aptview_title">
|
||||
@@ -302,7 +303,7 @@
|
||||
<td align="left" bgcolor="#FFFFF0">
|
||||
<span class="aptview_text">
|
||||
<textarea name="comment" rows="8" cols="80" wrap="physical"
|
||||
var:value="comment" />
|
||||
var:value="comment" />
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -313,33 +314,33 @@
|
||||
<td>
|
||||
<span class="aptview_text">
|
||||
<input type="checkbox"
|
||||
var:selection="checkForConflicts"
|
||||
var:checked="checkForConflicts"
|
||||
/> <var:string label:value="check for conflicts" />
|
||||
var:selection="checkForConflicts"
|
||||
var:checked="checkForConflicts"
|
||||
/> <var:string label:value="check for conflicts" />
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type="submit" label:value="Save" name="save:method"
|
||||
onclick="submitMeeting(this.form); return false;" />
|
||||
<span class="button_auto_env"
|
||||
<input type="submit" label:value="Save" name="save:method"
|
||||
onclick="submitMeeting(this.form); return false;" />
|
||||
<span class="button_auto_env"
|
||||
><a href="../weekoverview"
|
||||
onclick="window.close(); return false;"
|
||||
var:queryDictionary="queryParameters"
|
||||
class="button_auto"
|
||||
><var:string label:value="Cancel" /></a></span>
|
||||
<var:if condition="isUIxDebugEnabled">
|
||||
<input type="submit" value="Test" name="test:method" />
|
||||
</var:if>
|
||||
onclick="window.close(); return false;"
|
||||
var:queryDictionary="queryParameters"
|
||||
class="button_auto"
|
||||
><var:string label:value="Cancel" /></a></span>
|
||||
<var:if condition="isUIxDebugEnabled">
|
||||
<input type="submit" value="Test" name="test:method" />
|
||||
</var:if>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<input type="hidden" name="ical" var:value="iCalString" />
|
||||
</form>
|
||||
<!--
|
||||
<var:if condition="canEditApt" const:negate="YES">
|
||||
<input type="hidden" name="ical" var:value="iCalString" />
|
||||
</form>
|
||||
<!--
|
||||
<var:if condition="canEditApt" const:negate="YES">
|
||||
Forbidden ... <var:redirect const:setURL="view" />
|
||||
</var:if>
|
||||
-->
|
||||
</var:component>
|
||||
-->
|
||||
</var:component>
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 793 B After Width: | Height: | Size: 820 B |
@@ -41,23 +41,125 @@ function moveTo(uri) {
|
||||
alert("MoveTo: " + uri);
|
||||
}
|
||||
|
||||
function popupSearchMenu(elem, event, menuName)
|
||||
function popupSearchMenu(event, menuId)
|
||||
{
|
||||
relX = (event.pageX
|
||||
- (elem.parentNode.offsetLeft + elem.offsetLeft));
|
||||
relY = (event.pageY
|
||||
- elem.parentNode.parentNode.parentNode.offsetTop);
|
||||
window.alert(elem.style.height);
|
||||
// if (event.button == 1
|
||||
// &&
|
||||
// acceptClick = false;
|
||||
// bodyOnClick = "" + document.body.getAttribute("onclick");
|
||||
// document.body.setAttribute("onclick", "onBodyClick('" + menuId + "'); return false;");
|
||||
// popup = document.getElementById(menuId);
|
||||
// popup.setAttribute("style", "visibility: visible; top: " + event.pageY
|
||||
// + "px; left: " + event.pageX + "px;" );
|
||||
// menuClickNode = node;
|
||||
// window.alert
|
||||
var node = event.target;
|
||||
|
||||
return false;
|
||||
superNode = node.parentNode.parentNode.parentNode;
|
||||
relX = (event.pageX - superNode.offsetLeft - node.offsetLeft);
|
||||
relY = (event.pageY - superNode.offsetTop - node.offsetTop);
|
||||
|
||||
if (event.button == 0
|
||||
&& relX < 24) {
|
||||
log('popup');
|
||||
event.cancelBubble = true;
|
||||
event.returnValue = false;
|
||||
|
||||
var popup = document.getElementById(menuId);
|
||||
hideMenu(popup);
|
||||
|
||||
var menuTop = superNode.offsetTop + node.offsetTop + node.offsetHeight;
|
||||
var menuLeft = superNode.offsetLeft + node.offsetLeft;
|
||||
var heightDiff = (window.innerHeight
|
||||
- (menuTop + popup.offsetHeight));
|
||||
if (heightDiff < 0)
|
||||
menuTop += heightDiff;
|
||||
|
||||
var leftDiff = (window.innerWidth
|
||||
- (menuLeft + popup.offsetWidth));
|
||||
if (leftDiff < 0)
|
||||
menuLeft -= popup.offsetWidth;
|
||||
|
||||
popup.style.top = menuTop + "px";
|
||||
popup.style.left = menuLeft + "px";
|
||||
popup.style.visibility = "visible";
|
||||
menuClickNode = node;
|
||||
|
||||
bodyOnClick = "" + document.body.getAttribute("onclick");
|
||||
document.body.setAttribute("onclick", "onBodyClick('" + menuId + "');");
|
||||
}
|
||||
}
|
||||
|
||||
function setSearchCriteria(event)
|
||||
{
|
||||
searchField = document.getElementById('searchValue');
|
||||
searchCriteria = document.getElementById('searchCriteria');
|
||||
|
||||
node = event.target;
|
||||
searchField.setAttribute("ghost-phrase", node.innerHTML);
|
||||
searchCriteria = node.getAttribute('id');
|
||||
}
|
||||
|
||||
function onSearchChange()
|
||||
{
|
||||
log('onSearchChange');
|
||||
}
|
||||
|
||||
function onSearchMouseDown(event)
|
||||
{
|
||||
log('onSearchMouseDown');
|
||||
|
||||
searchField = document.getElementById('searchValue');
|
||||
superNode = searchField.parentNode.parentNode.parentNode;
|
||||
relX = (event.pageX - superNode.offsetLeft - searchField.offsetLeft);
|
||||
relY = (event.pageY - superNode.offsetTop - searchField.offsetTop);
|
||||
|
||||
if (relY < 24) {
|
||||
log('menu');
|
||||
event.cancelBubble = true;
|
||||
event.returnValue = false;
|
||||
}
|
||||
}
|
||||
|
||||
function onSearchFocus(event)
|
||||
{
|
||||
log('onSearchFocus');
|
||||
searchField = document.getElementById('searchValue');
|
||||
ghostPhrase = searchField.getAttribute("ghost-phrase");
|
||||
if (searchField.value == ghostPhrase) {
|
||||
searchField.value = "";
|
||||
searchField.setAttribute("modified", "");
|
||||
} else {
|
||||
searchField.select();
|
||||
}
|
||||
|
||||
searchField.style.color = "#000";
|
||||
}
|
||||
|
||||
function onSearchBlur()
|
||||
{
|
||||
log('onSearchBlur');
|
||||
var searchField = document.getElementById('searchValue');
|
||||
var ghostPhrase = searchField.getAttribute("ghost-phrase");
|
||||
|
||||
if (searchField.value == "") {
|
||||
searchField.setAttribute("modified", "");
|
||||
searchField.style.color = "#aaa";
|
||||
searchField.value = ghostPhrase;
|
||||
} else if (searchField.value == ghostPhrase) {
|
||||
searchField.setAttribute("modified", "");
|
||||
searchField.style.color = "#aaa";
|
||||
} else {
|
||||
searchField.setAttribute("modified", "yes");
|
||||
searchField.style.color = "#000";
|
||||
}
|
||||
}
|
||||
|
||||
function initCriteria()
|
||||
{
|
||||
var searchCriteria = document.getElementById('searchCriteria');
|
||||
var searchField = document.getElementById('searchValue');
|
||||
var firstOption;
|
||||
|
||||
if (searchCriteria.value == ''
|
||||
|| searchField.value == '') {
|
||||
firstOption = document.getElementById('searchOptions').childNodes[1];
|
||||
searchCriteria.value = firstOption.getAttribute('id');
|
||||
searchField.value = firstOption.innerHTML;
|
||||
searchField.setAttribute('ghost-phrase', firstOption.innerHTML);
|
||||
searchField.setAttribute("modified", "");
|
||||
searchField.style.color = "#aaa";
|
||||
|
||||
log(searchField.value);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,14 +24,13 @@
|
||||
|
||||
/* generic stuff */
|
||||
|
||||
logWindow = window.open('', 'logWindow',
|
||||
'directories = no; location = no; menubar = no; resizable = no;'
|
||||
+ 'scrollbars = yes; status = no; toolbar = no; width = 80em; height = 25em;');
|
||||
logWindow = window.open('', 'logWindow');
|
||||
logWindow.document.write('<html><head><title>JavaScript log</title></head>'
|
||||
+ '<body style="font-family: monospace;'
|
||||
+ 'font-size: 10pt;">'
|
||||
+ '<div class="log" id="logArea"></div></body>'
|
||||
+'</html>');
|
||||
+ 'font-size: 10pt; overflow: scroll;">'
|
||||
+ '<div class="log" id="logArea"'
|
||||
+ ' onclick="this.innerHTML=\'\';"></div></body>'
|
||||
+ '</html>');
|
||||
logWindow.resizeTo(640,480);
|
||||
logArea = logWindow.document.getElementById('logArea');
|
||||
logArea.innerHTML = '';
|
||||
@@ -267,7 +266,8 @@ function getSelectedNodes(parentNode) {
|
||||
return selArray.join('|');
|
||||
}
|
||||
|
||||
function onRowClick(node, event) {
|
||||
function onRowClick(event) {
|
||||
var node = event.target;
|
||||
// var text = document.getElementById('list');
|
||||
// text.innerHTML = '';
|
||||
|
||||
@@ -295,39 +295,52 @@ function onRowClick(node, event) {
|
||||
/* popup menus */
|
||||
|
||||
var bodyOnClick = "";
|
||||
var acceptClick = false;
|
||||
// var acceptClick = false;
|
||||
var menuClickNode = null;
|
||||
var currentSubmenu = null;
|
||||
|
||||
function onMenuClick(node, event, menuId)
|
||||
function onMenuClick(event, menuId)
|
||||
{
|
||||
var node = event.target;
|
||||
|
||||
event.cancelBubble = true;
|
||||
event.returnValue = false;
|
||||
|
||||
if (event.button == 1)
|
||||
acceptClick = false;
|
||||
bodyOnClick = "" + document.body.getAttribute("onclick");
|
||||
document.body.setAttribute("onclick", "onBodyClick('" + menuId + "'); return false;");
|
||||
var popup = document.getElementById(menuId);
|
||||
hideMenu(popup);
|
||||
popup.style.top = event.pageY + "px";
|
||||
popup.style.left = event.pageX + "px";
|
||||
|
||||
var menuTop = event.pageY;
|
||||
var menuLeft = event.pageX;
|
||||
var heightDiff = (window.innerHeight
|
||||
- (menuTop + popup.offsetHeight));
|
||||
if (heightDiff < 0)
|
||||
menuTop += heightDiff;
|
||||
|
||||
var leftDiff = (window.innerWidth
|
||||
- (menuLeft + popup.offsetWidth));
|
||||
if (leftDiff < 0)
|
||||
menuLeft -= popup.offsetWidth;
|
||||
|
||||
popup.style.top = menuTop + "px";
|
||||
popup.style.left = menuLeft + "px";
|
||||
popup.style.visibility = "visible";
|
||||
menuClickNode = node;
|
||||
|
||||
return false;
|
||||
bodyOnClick = "" + document.body.getAttribute("onclick");
|
||||
document.body.setAttribute("onclick", "onBodyClick('" + menuId + "');");
|
||||
}
|
||||
|
||||
function onBodyClick(menuId)
|
||||
{
|
||||
if (!acceptClick)
|
||||
acceptClick = true;
|
||||
else
|
||||
{
|
||||
// if (!acceptClick)
|
||||
// acceptClick = true;
|
||||
// else
|
||||
// {
|
||||
popup = document.getElementById(menuId);
|
||||
hideMenu(popup);
|
||||
document.body.setAttribute("onclick", bodyOnClick);
|
||||
}
|
||||
menuClickNode = null;
|
||||
// }
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -368,10 +381,22 @@ function dropDownSubmenu(event)
|
||||
var submenuNode = document.getElementById(submenu);
|
||||
node.parentNode.parentNode.submenu = submenuNode;
|
||||
var menuTop = (node.parentNode.parentNode.offsetTop
|
||||
+ node.offsetTop - 1);
|
||||
+ node.offsetTop - 1);
|
||||
|
||||
var heightDiff = (window.innerHeight
|
||||
- (menuTop + submenuNode.offsetHeight));
|
||||
if (heightDiff < 0)
|
||||
menuTop += heightDiff;
|
||||
var menuLeft = (node.parentNode.parentNode.offsetLeft
|
||||
+ node.parentNode.parentNode.offsetWidth
|
||||
- 2);
|
||||
var leftDiff = (window.innerWidth
|
||||
- (menuLeft + submenuNode.offsetWidth));
|
||||
if (leftDiff < 0)
|
||||
menuLeft -= (node.parentNode.parentNode.offsetWidth
|
||||
+ submenuNode.offsetWidth
|
||||
- 4);
|
||||
|
||||
submenuNode.style.top = menuTop + "px";
|
||||
submenuNode.style.left = menuLeft + "px";
|
||||
submenuNode.style.visibility = "visible";
|
||||
|
||||
@@ -528,7 +528,7 @@ TABLE#messageList TR._selected TD
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
SPAN.searchBox INPUT
|
||||
INPUT#searchValue
|
||||
{
|
||||
height: 22px;
|
||||
margin-right: 1em;
|
||||
@@ -543,8 +543,11 @@ SPAN.searchBox INPUT
|
||||
background-image: url('/SOGo.woa/WebServerResources/Search-bar.png');
|
||||
background-repeat: no-repeat;
|
||||
background-position: 2px 2px;
|
||||
color: #aaa;
|
||||
}
|
||||
|
||||
INPUT#searchValue:focus
|
||||
{ color: #000; }
|
||||
|
||||
/* drag handles */
|
||||
DIV#dragHandle
|
||||
|
||||
@@ -36,9 +36,11 @@
|
||||
/* mail list */
|
||||
|
||||
function openMessageWindow(sender, msguid, url) {
|
||||
return window.open(url, "SOGo_msg_" + msguid,
|
||||
"width=640,height=480,resizable=1,scrollbars=1,toolbar=0," +
|
||||
"location=0,directories=0,status=0,menubar=0,copyhistory=0")
|
||||
var msgWin = window.open(url, "SOGo_msg_" + msguid,
|
||||
"width=640,height=480,resizable=1,scrollbars=1,toolbar=0," +
|
||||
"location=0,directories=0,status=0,menubar=0,copyhistory=0");
|
||||
|
||||
msgWin.focus();
|
||||
}
|
||||
|
||||
function clickedUid(sender, msguid) {
|
||||
@@ -46,6 +48,7 @@ function clickedUid(sender, msguid) {
|
||||
openMessageWindow(sender, msguid, msguid + "/view");
|
||||
return true;
|
||||
}
|
||||
|
||||
function doubleClickedUid(sender, msguid) {
|
||||
alert("DOUBLE Clicked " + msguid);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user