* More Dragonfly translations

* Adds modal.css, which lets us build again!
This commit is contained in:
halex
2007-06-29 10:46:06 +00:00
parent dbb11204c3
commit 3ed09581e7
13 changed files with 245 additions and 117 deletions
+25
View File
@@ -0,0 +1,25 @@
#overlay {
position: absolute;
z-index:80;
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color:#000;
filter:alpha(opacity=40);
-moz-opacity: 0.4;
opacity: 0.4;
}
#box {
width: 50%;
background: #d3d2cf;
padding: 10px;
border: 2px solid #eee;
}
#close {
position: absolute;
top: -5px;
right: -5px;
cursor: pointer;
}
+1 -1
View File
@@ -516,7 +516,7 @@ Dragonfly.AddressBook.ContactPopup.prototype.delConfirm = function ()
this.hide();
var text = [
'<p>', _('contactConfirmRemovePre'), '&ldquo;',
Dragonfly.escapeHTML (this.contact.fn), '&rdquo;', _('contactConfirmRemovePost'), '</p>'
Dragonfly.escapeHTML (this.contact.fn), '&rdquo;', _('genericRemovePost'), '</p>'
];
var actions = [{ value: _('genericCancel'), onclick: 'dispose'}, { value: _('genericDelete'), onclick: 'del'}];
this.setForm (text, actions);
+4 -4
View File
@@ -88,11 +88,11 @@ Dragonfly.Calendar.niceDate = function (day, format)
switch (today.minus (day)) {
case 1:
return "Yesterday";
return _('calendarYesterdayLabel');
case 0:
return "Today";
return _('calendarTodayLabel');
case -1:
return "Tomorrow";
return _('calendarTomorrowLabel');
}
if (!format) {
@@ -342,7 +342,7 @@ Dragonfly.Calendar.Events.build = function (loc)
if (!$('calendar-view-day')) {
Element.setHTML (
'toolbar', [
'<label>View: </label>',
'<label>', _('calendarView'), ' </label>',
'<a id="calendar-view-day" href="#">', _('day'), '</a>',
'<span class="bar"> | </span>',
'<a id="calendar-view-upcoming" href="#">', _('upcoming'), '</a>',
+20 -20
View File
@@ -70,17 +70,17 @@ Dragonfly.Calendar.PersonalProperties.prototype.buildHtml = function (html)
'<input type="hidden" name="calendar-type" value="personal">',
'<table cellspacing="0" cellpadding="0">',
'<tr><td><label for="', this.nameId, '">Name: </label></td>',
'<tr><td><label for="', this.nameId, '">', _('calendarNameLabel'), ' </label></td>',
'<td><input id="', this.nameId, '" name="calendar-name"></td></tr>',
'<tr><td><label for="', this.colorId, '">Color: </label></td>',
'<tr><td><label for="', this.colorId, '">', _('calendarColorLabel'), ' </label></td>',
'<td>');
this.color.buildHtml (html);
html.push ('</td></tr>');
if (this.importDivId) {
html.push ('<tr><td><label for="', this.importFileId, '">Import .ics File: </label></td>',
html.push ('<tr><td><label for="', this.importFileId, '">', _('calendarImportICSLabel'), ' </label></td>',
'<td><input id="', this.importFileId, '" name="import-file" type="file"></td></tr>');
}
@@ -89,15 +89,15 @@ Dragonfly.Calendar.PersonalProperties.prototype.buildHtml = function (html)
// sharing tab
var html2 = new d.HtmlBuilder (
'<div><label><input id="', this.searchableId, '" name="sharing-searchable" type="checkbox"> ',
'Allow other users to search for this calendar</label></div>',
_('calendarSearchableLabel'), '</label></div>',
'<div><label><input id="', this.protectId, '" name="sharing-protect" type="checkbox"> ',
'Password protect access:</label></div>',
_('calendarPasswordProtectLabel'), '</label></div>',
'<div class="indented">',
'<table cellspacing="0" cellpadding="0">',
'<tr><td><label for="', this.userId, '">Name: </label></td>',
'<tr><td><label for="', this.userId, '">', _('calendarNameLabel'), ' </label></td>',
'<td><input id="', this.userId, '" name="sharing-name"></td></tr>',
'<tr style="display: none"><td><label for="', this.oldPassId, '">Current password: </label></td>',
@@ -118,25 +118,25 @@ Dragonfly.Calendar.PersonalProperties.prototype.buildHtml = function (html)
'</div>', // password group
'<a id="', this.basicInviteId, '">Send out invitation...</a>'
'<a id="', this.basicInviteId, '">', _('calendarSendInvitation'), '</a>'
);
html2.set (this.nb.insertPage ('Basic', 0));
// specific users
html2 = new d.HtmlBuilder (
'<div><label>Email: <input id="', this.addUserId, '"><input id="', this.addButtonId, '" type="button" value="Add"></label></div>',
'<div><label>Email: <input id="', this.addUserId, '"><input id="', this.addButtonId, '" type="button" value="', _('buttonAddLabel'), '"></label></div>',
'<div class="scrollv"><ul style="height: 8em; max-width: 25em;" id="', this.userListId, '"></ul></div>',
'<div class="actions"><span class="secondary">',
//'<input type="button" value="+" id="', this.addButtonId, '">',
'<input type="button" value="Remove" id="', this.removeButtonId, '">',
'<input type="button" value="', _('buttonRemoveLabel'), '" id="', this.removeButtonId, '">',
'</span>',
'<span style="display: none">Select: <a id="', this.selectAllId, '">All</a> <a id="', this.selectNoneId, '">None</a></span>',
'</div><div>',
'<a id="', this.detailedInviteId, '">Send out invitation...</a>',
'<a id="', this.detailedInviteId, '">', _('calendarSendInvitation'), '</a>',
'</div>'
);
html2.set (this.nb.insertPage ('Detailed', 1));
@@ -162,7 +162,7 @@ Dragonfly.Calendar.PersonalProperties.prototype.connectHtml = function (elem)
this._loadFrom (this._calendar);
delete this._calendar;
} else {
$(this.nameId).value = 'New Calendar';
$(this.nameId).value = _('defaultCalendarName');
this.color.setColor (d.getRandomColor ());
$(this.colorId).name = 'calendar-color';
this.publishClicked ();
@@ -237,7 +237,7 @@ Dragonfly.Calendar.PersonalProperties.prototype._loadFrom = function (calendar)
this.bongoId = calendar.bongoId;
$(this.nameId).value = cal.name || 'New Calendar';
$(this.nameId).value = cal.name || _('defaultCalendarName');
$(this.colorId).value = cal.color || d.getRandomColor ();
$(this.publishId).checked = !!cal.publish;
@@ -663,7 +663,7 @@ Dragonfly.Calendar.SubscribedProperties.prototype.connectHtml = function (elem)
this._loadFrom (this._calendar);
delete this._calendar;
} else {
$(this.nameId).value = 'New Calendar';
$(this.nameId).value = _('defaultCalendarName');
this.color.setColor (d.getRandomColor ());
$(this.colorId).name = 'calendar-color';
}
@@ -693,7 +693,7 @@ Dragonfly.Calendar.SubscribedProperties.prototype._loadFrom = function (calendar
var cal = calendar.cal;
$(this.nameId).value = cal.name || 'New Calendar';
$(this.nameId).value = cal.name || _('defaultCalendarName');
$(this.colorId).value = cal.color || d.getRandomColor ();
$(this.urlId).value = cal.url || '';
@@ -806,7 +806,7 @@ Dragonfly.Calendar.NewSubscriptionPopup.prototype.buildHtml = function (html)
this, html, '<form id="', this.formId, '">Url: <textarea rows="2" id="', this.urlId, '"></textarea>',
'<div class="actions">',
'<input id="', this.cancelId, '" type="button" value="', _('genericCancel'), '">',
'<input id="', this.subscribeId, '" type="submit" value="Subscribe"></div>',
'<input id="', this.subscribeId, '" type="submit" value="', _('eventSubscribe'), '"></div>',
'</form>');
// No need to connect html because the superclass does it for us
@@ -950,7 +950,7 @@ Dragonfly.Calendar.CalendarPropsPopup.prototype.summarize = function ()
html.push ('<div class="actions">',
'<a id="', deleteId, '" class="secondary">', _('genericDelete'), '</a>',
'<a id="', inviteId, '">Send Invitation...</a>',
'<a id="', editId, '">Edit</a>',
'<a id="', editId, '">', _('genericEdit'), '</a>',
'</div>');
html.set (this.contentId);
@@ -1016,10 +1016,10 @@ Dragonfly.Calendar.CalendarInvitationPopup.prototype.connectHtml = function (ele
'this person and the server ', d.escapeHTML (this.invite.server), '.</p>'];
var actions = [
{ value: "Delete", onclick: 'deleteClicked', secondary: true },
{ value: "Junk", onclick: 'junkClicked', secondary: true },
{ value: "Ignore", onclick: 'ignoreClicked'},
{ value: "Subscribe", onclick: 'subscribedClicked'}];
{ value: _('genericDelete'), onclick: 'deleteClicked', secondary: true },
{ value: _('buttonJunkLabel'), onclick: 'junkClicked', secondary: true },
{ value: _('buttonIgnoreLabel'), onclick: 'ignoreClicked'},
{ value: _('eventSubscribe'), onclick: 'subscribedClicked'}];
this.setForm (form, actions);
this.setClosable (true);
+11 -11
View File
@@ -107,21 +107,21 @@ Dragonfly.Mail.Composer.prototype.buildHtml = function (html)
html.push (
'<table id="', this.id, '" class="msg-compose">',
'<tr><th>To:</th><td>',
'<tr><th>', _('mailTo'), '</th><td>',
'<input id="', this.to, '" class="to" type="text" value="', escapeRecips(this.msg.to), '">',
'<div id="autocomplete-', this.to, '" class="autocompletions"></div></td></tr>',
'<tr><th>Cc:</th><td>',
'<tr><th>', _('mailCc'), '</th><td>',
'<input id="', this.cc, '" class="cc" type="text" value="', escapeRecips (this.msg.cc), '">',
'<div id="autocomplete-', this.cc, '" class="autocompletions"></td></tr>',
'<tr><th>Bcc:</th><td>',
'<tr><th>', _('mailBcc'), '</th><td>',
'<input id="', this.bcc, '" class="bcc" type="text" value="', escapeRecips (this.msg.bcc), '">',
'<div id="autocomplete-', this.bcc, '" class="autocompletions"></td></tr>',
'<tr><th>Subject:</th><td><input id="', this.subject, '" class="subject" value="', d.escapeHTML (this.msg.subject || ''), '"></td></tr>',
'<tr><th>From:</th><td id="', this.from, '" class="from">', d.escapeHTML (this.msg.from), '</td></tr>',
'<tr><th>Attachments:</th><td class="attachments"><ul>');
'<tr><th>', _('mailSubject'), '</th><td><input id="', this.subject, '" class="subject" value="', d.escapeHTML (this.msg.subject || ''), '"></td></tr>',
'<tr><th>', _('mailFrom'), '</th><td id="', this.from, '" class="from">', d.escapeHTML (this.msg.from), '</td></tr>',
'<tr><th>', _('mailAttachments'), '</th><td class="attachments"><ul>');
if (this.msg.contents) {
switch (this.msg.contents.contenttype) {
@@ -143,13 +143,13 @@ Dragonfly.Mail.Composer.prototype.buildHtml = function (html)
}
}
html.push ('<li><a id="', this.addAttachment, '">Attach file...</a></li></ul>',
html.push ('<li><a id="', this.addAttachment, '">', _('mailAttachLabel'), '</a></li></ul>',
'<tr><td colspan="2"><textarea id="', this.body, '" class="body" cols="75" rows="15" wrap="on">',
d.escapeHTML (this.msg.body), '</textarea></td></tr>',
'<tr class="action"><td id="', this.toolbar, '" colspan="2">',
'<input id="', this.discard, '" class="discard" type="button" value="Discard">',
'<input id="', this.save, '" class="save" type="button" value="Save Draft">',
'<input id="', this.send, '" class="send" type="button" value="Send"></td></tr></table>');
'<input id="', this.discard, '" class="discard" type="button" value="', _('mailDiscard'), '">',
'<input id="', this.save, '" class="save" type="button" value="', _('mailDraft'), '">',
'<input id="', this.send, '" class="send" type="button" value="', _('mailSend'), '"></td></tr></table>');
html.addCallback (bind ('connectHtml', this));
return html;
@@ -695,7 +695,7 @@ Dragonfly.Mail.AttachmentForm.prototype.buildHtml = function (html)
}
html.push ('<span id="', this.labelId, '">', d.escapeHTML (this.attachmentId), ' (', d.escapeHTML (this.mimeType), ')</span>',
'<a id="', this.removeId, '">Remove</a>');
'<a id="', this.removeId, '">', _('mailRemoveAttachment'), '</a>');
if (!this.attachmentId) {
html.push ('</form>',
+2 -2
View File
@@ -807,8 +807,8 @@ Dragonfly.buildSidebar = function ()
html = new d.HtmlBuilder (
'<div class="list-selector">',
'<ul id="calendar-list" class="unselected-items"></ul>',
'<div id="new-calendar" class="action"><a id="new-calendar-href" href="javascript:void(Dragonfly.Calendar.newCalendar())">Create New Calendar</a></div>',
'<div id="sub-calendar" class="action"><a id="sub-calendar-href" href="javascript:void(Dragonfly.Calendar.newCalendar(true))">Subscribe</a></div>',
'<div id="new-calendar" class="action"><a id="new-calendar-href" href="javascript:void(Dragonfly.Calendar.newCalendar())">', _('createNewCalendarLabel'), '</a></div>',
'<div id="sub-calendar" class="action"><a id="sub-calendar-href" href="javascript:void(Dragonfly.Calendar.newCalendar(true))">', _('subscribeCalendarLabel'), '</a></div>',
'</div>');
html.set (d.sideBook.appendPage (IMG({ 'class': 'icon calendars', src: '/img/blank.gif' })));
+1 -1
View File
@@ -39,7 +39,7 @@ Dragonfly.Gettext.gettext = function (msgid)
}
if (!g._translations[msgid]) {
logWarning ('No translation found.');
logWarning ('No translation found for "'+msgid+'" in '+g._locale);
return msgid;
}
+1 -1
View File
@@ -527,7 +527,7 @@ Dragonfly.JCal.buildNewEvent = function (summary, dayOrDate, tzid)
var d = Dragonfly;
var c = d.Calendar;
summary = summary || 'New Event';
summary = summary || _('eventDefaultTitle');
var params = { };
var start, end;
+17 -17
View File
@@ -100,10 +100,10 @@ Dragonfly.Mail.updateToolbar = function (loc)
var v = m.getView (loc);
/* these aren't *exactly* right... */
$('mail-toolbar-archive').value = (loc.set == 'all') ? 'Unarchive' : 'Archive';
$('mail-toolbar-delete').value = (loc.set == 'trash') ? 'Undelete' : 'Delete';
$('mail-toolbar-junk').value = (loc.set == 'junk') ? 'Not Junk' : 'Junk';
$('mail-toolbar-star').value = (loc.set == 'starred') ? 'Unstar' : 'Star';
$('mail-toolbar-archive').value = (loc.set == 'all') ? _('buttonUnarchiveLabel') : _('buttonArchiveLabel');
$('mail-toolbar-delete').value = (loc.set == 'trash') ? _('buttonUndeleteLabel') : _('genericDelete');
$('mail-toolbar-junk').value = (loc.set == 'junk') ? _('buttonNotJunkLabel') : _('buttonJunkLabel');
$('mail-toolbar-star').value = (loc.set == 'starred') ? _('buttonUnstarLabel') : _('buttonStarLabel');
Element[v.selectAll ? 'show' : 'hide' ] ('mail-toolbar-select-all');
Element[v.deselectAll ? 'show' : 'hide' ] ('mail-toolbar-deselect-all');
@@ -186,10 +186,10 @@ Dragonfly.Mail.buildSummarySelect = function ()
Element.setHTML ('mail-summary-div', [
'<select name="mail-summary-select" id="mail-summary-select">',
'<option value="conversations">All</option>',
'<option value="tome">To Me</option>',
'<option value="contacts">From My Contacts</option>',
'<option value="subscriptions">Mailing Lists</option>',
'<option value="conversations">', _('mailAllLabel'), '</option>',
'<option value="tome">', _('mailToMeLabel'), '</option>',
'<option value="contacts">', _('mailFromContactsLabel'), '</option>',
'<option value="subscriptions">', _('mailSubscriptionsLabel'), '</option>',
'</select>']);
Event.observe ('mail-summary-select', 'change',
@@ -249,13 +249,13 @@ Dragonfly.Mail.build = function (loc)
'<span id="mail-summary-div"></span>',
'<input type="button" id="mail-toolbar-archive" value="Archive">',
'<input type="button" id="mail-toolbar-junk" value="Junk">',
'<input type="button" id="mail-toolbar-delete" value="Delete">',
'<input type="button" id="mail-toolbar-star" value="Star">',
'<input type="button" id="mail-toolbar-archive" value="', _('buttonArchiveLabel'), '">',
'<input type="button" id="mail-toolbar-junk" value="', _('buttonJunkLabel'), '">',
'<input type="button" id="mail-toolbar-delete" value="', _('genericDelete'), '">',
'<input type="button" id="mail-toolbar-star" value="', _('buttonStarLabel'), '">',
'<input type="button" id="mail-toolbar-select-all" value="Select All">',
'<input type="button" id="mail-toolbar-deselect-all" value="Deselect All">',
'<input type="button" id="mail-toolbar-select-all" value="', _('toolbarSelectAll'), '">',
'<input type="button" id="mail-toolbar-deselect-all" value="', _('toolbarDeselectAll'), '">',
'</td>',
'<td class="prev"><a id="conv-prev-href" href="#"></a></td></tr>',
@@ -499,7 +499,7 @@ Dragonfly.Mail.Messages.build = function (loc)
var d = Dragonfly;
var m = d.Mail;
return m['build' + (loc.message ? 'Conversation' : 'List') + 'View'] (loc);
return m['build' + (loc.message ? _('mailConversation') : _('mailList')) + _('mailView')] (loc);
};
Dragonfly.Mail.Messages.load = function (loc, jsob)
@@ -507,7 +507,7 @@ Dragonfly.Mail.Messages.load = function (loc, jsob)
var c = Dragonfly.Mail.Messages;
var m = Dragonfly.Mail;
return m['load' + (loc.message ? 'Item' : 'List')] (loc, jsob);
return m['load' + (loc.message ? _('mailItem') : _('mailList'))] (loc, jsob);
};
*/
@@ -609,7 +609,7 @@ Dragonfly.Mail.Contacts.getBreadCrumbs = function (loc)
if (loc.contact) {
return d.format ('<a href="#{0}">{1} <strong>{2}</strong></a>',
d.escapeHTML (loc.getClientUrl ('contact')),
loc.set == 'sent' ? 'To ' : 'From ',
loc.set == 'sent' ? _('mailTo') + " " : _('mailFrom') + " ",
d.escapeHTML (ab.getNameForContact (loc.contact)));
}
};
+5 -4
View File
@@ -98,7 +98,7 @@ Dragonfly.Mail.ListView.load = function (loc, jsob)
list.addConversations (html, jsob.conversations);
} else {
list.addGroupFooter (html,
'<span class="empty">No messages</span>');
'<span class="empty">' + _('mailNoMessages') + '</span>');
}
list.buildEnd (html);
@@ -179,7 +179,7 @@ Dragonfly.Mail.MultiListView.load = function (loc, jsob)
if (!group.total) {
list.addGroupFooter (html,
'<span class="empty">No messages</span>');
'<span class="empty">' + _('mailNoMessages') + '</span>');
continue;
}
@@ -187,9 +187,10 @@ Dragonfly.Mail.MultiListView.load = function (loc, jsob)
list.addConversations (html, group.conversations);
if (group.total > group.conversations.length) {
list.addGroupFooter (html,
d.format ('<a href="#{0}/page1/{1}">{2} more...</a>',
d.format ('<a href="#{0}/page1/{1}">{2} {3}</a>',
urlBase, encodeURIComponent (group[subgroup]),
group.total - group.conversations.length));
group.total - group.conversations.length),
_('mailMoreSuffix'));
}
}
+52 -53
View File
@@ -42,10 +42,10 @@ Dragonfly.Calendar.OccurrencePopup.prototype.quickEventEdit = function (elem)
new d.HtmlBuilder (
'<p><input autocomplete="off" size="30" class="occurrence-entry" id="', qeventEntryId, '">',
'<p>enter free-form text, for example:<br>',
'<i>lunch with Joe tomorrow at noon</i><div class="actions">',
'<span class="secondary">or, <a id="', editId, '" >enter details instead</a></span>',
'<input type="button" value="Add Event" id="', qeventPostId, '" disabled></div>'
'<p>', _('freeFormInstructions'), '<br>',
'<i>', _('freeFormExample'), '</i><div class="actions">',
'<span class="secondary">', _('freeFormOption'), '<a id="', editId, '" >', _('freeFormOptionBody'), '</a></span>',
'<input type="button" value="', _('freeFormAddLabel'), '" id="', qeventPostId, '" disabled></div>'
).set (this.contentId);
var editDetails = function (evt) {
@@ -106,8 +106,8 @@ Dragonfly.Calendar.OccurrencePopup.prototype.summarize = function (occurrence, e
var html = new d.HtmlBuilder();
this.summary = new c.OccurrenceSummary (this.occurrence, html);
html.push ('<div class="actions">',
'<a id="', deleteId, '" class="secondary">Delete</a>',
'<a id="', editId, '">Edit</a></div>');
'<a id="', deleteId, '" class="secondary">', _('genericDelete'), '</a>',
'<a id="', editId, '">', _('genericEdit'), '</a></div>');
html.set (this.contentId);
Event.observe (deleteId, 'click', this.delConfirm.bindAsEventListener (this));
@@ -134,14 +134,14 @@ Dragonfly.Calendar.OccurrencePopup.prototype.edit = function (evt, occurrence, e
this.editor = new c.OccurrenceEditor (this.occurrence);
if (!this.occurrence.vcalendar.bongoId) { // use new event actions
this.setForm (this.editor, [
{ value: "Cancel", onclick: 'cancel' },
{ value: "Save", onclick: 'save' }
{ value: _('genericCancel'), onclick: 'cancel' },
{ value: _('genericSave'), onclick: 'save' }
]);
} else { // use existing event actions
this.setForm (this.editor, [
{ value: "Delete", onclick: 'del', secondary: true },
{ value: "Cancel", onclick: 'dispose' },
{ value: "Save", onclick: 'save' }
{ value: _('genericDelete'), onclick: 'del', secondary: true },
{ value: _('genericCancel'), onclick: 'dispose' },
{ value: _('genericSave'), onclick: 'save' }
]);
}
@@ -173,7 +173,7 @@ Dragonfly.Calendar.OccurrencePopup.prototype.del = function ()
return;
}
d.notify ('Deleting event...', true);
d.notify (_('genericSavingChanges'), true);
forEach (occurrence.bubles, function (b) { addElementClass (b, 'deleting') });
JCal.delOccurrence (occurrence, changeScope).addCallbacks (
@@ -184,7 +184,7 @@ Dragonfly.Calendar.OccurrencePopup.prototype.del = function ()
} else {
d.Calendar.remove (occurrence.event);
}
d.notify ('DELETED!!');
d.notify (_('genericChangesSaved'));
return result;
}, this), bind ('showError', this));
};
@@ -215,7 +215,7 @@ Dragonfly.Calendar.OccurrencePopup.prototype.save = function ()
return;
}
d.notify ('Saving changes...', true);
d.notify (_('genericSavingChanges'), true);
if (occurrence.bubles) {
forEach (occurrence.bubles, function (b) {
addElementClass (b, 'saving')
@@ -225,7 +225,7 @@ Dragonfly.Calendar.OccurrencePopup.prototype.save = function ()
JCal.saveOccurrence (occurrence, this.changes, this.changeScope).addCallbacks (
bind (function (result) {
this.hide ();
d.notify ('Changes saved.');
d.notify (_('genericChangesSaved'));
var tab = condGetProp (d.curLoc, 'tab');
if (tab && (tab == 'calendar' || tab == 'summary')) {
if (occurrence.vcalendar.isRecurring) {
@@ -255,10 +255,10 @@ Dragonfly.Calendar.OccurrencePopup.prototype.delConfirm = function ()
}
this.hide ();
var text = ['<p>Are you sure you want to delete the event ',
'&ldquo;', Dragonfly.escapeHTML (this.occurrence.summary), '&rdquo;?',
' This cannot be undone.<p>'];
var actions = [{ value: "Cancel", onclick: 'dispose'}, { value: "Delete", onclick: 'del'}];
var text = ['<p>', _('deleteEventConfirm'),
'&ldquo;', Dragonfly.escapeHTML (this.occurrence.summary), '&rdquo;',
_('genericRemovePost'), '</p>'];
var actions = [{ value: _('genericCancel'), onclick: 'dispose'}, { value: _('genericDelete'), onclick: 'del'}];
this.setForm (text, actions);
this.show();
};
@@ -268,16 +268,16 @@ Dragonfly.Calendar.OccurrencePopup.prototype.getScope = function (forSave)
this.hide ();
this.scopeForm = Dragonfly.nextId ('occurrence-scope');
var form = [
'<p>This event is part of a series. Would you like ',
(forSave) ? 'changes to apply to' : 'to delete', ':</p>',
'<p>', _('eventSeriesIntro'),
(forSave) ? _('eventSeriesChanges') : _('eventSeriesDelete'), ':</p>',
'<form id="', this.scopeForm, '">',
'<label><input type="radio" name="scope" checked>only this event</label><br>',
'<label><input type="radio" name="scope" ', (forSave) ? 'disabled' : '', '>this and following events</label><br>',
'<label><input type="radio" name="scope">all events in series</label>',
'<label><input type="radio" name="scope" checked>', _('eventScopeSingle'), '</label><br>',
'<label><input type="radio" name="scope" ', (forSave) ? 'disabled' : '', '>', _('eventScopeFollowing'), '</label><br>',
'<label><input type="radio" name="scope">', _('eventScopeAll'), '</label>',
'</form>'];
var actions = [
{ value: "Cancel", onclick: 'dispose'},
{ value: forSave ? "Save" : "Delete", onclick: partial (this.dispatchWithScope, forSave) }];
{ value: _('genericCancel'), onclick: 'dispose'},
{ value: forSave ? _('genericSave') : _('genericDelete'), onclick: partial (this.dispatchWithScope, forSave) }];
this.setForm (form, actions);
this.show();
};
@@ -362,7 +362,7 @@ Dragonfly.Calendar.OccurrenceEditor.prototype.buildEventTab = function (page)
var html = new d.HtmlBuilder (
'<div><input id="', this.locationId, '" size="40"></div>',
'<div><label><input id="', this.alldayId, '" type="checkbox"> all day</label></div>');
'<div><label><input id="', this.alldayId, '" type="checkbox"> ', _('allDayLabel'), '</label></div>');
this.dateEntry = new d.DateRangeEntry (o, html);
html.push ('<textarea id="', this.noteId, '"></textarea>');
@@ -376,7 +376,7 @@ Dragonfly.Calendar.OccurrenceEditor.prototype.buildSharingTab = function (page)
var c = d.Calendar;
var html = new d.HtmlBuilder (
'Include this event in:',
_('includeEventLabel'),
'<ul id="', this.calendarsId, '" class="scrollv" style="max-height: 8em">');
var calIds = this.occurrence.vcalendar.calendarIds;
@@ -403,7 +403,7 @@ Dragonfly.Calendar.OccurrenceEditor.prototype.buildSharingTab = function (page)
});
html.push ('</ul>',
'<div><label><input type="checkbox"> Publish this event on its own</label></div>',
'<div><label><input type="checkbox"> ', _('publishEventSelf'), '</label></div>',
'<table cellspacing="0" cellpadding="0">',
'<tr><td><input type="checkbox"></td><td><input></td></tr>',
'<tr><td></td><td><input></td></tr>',
@@ -428,9 +428,9 @@ Dragonfly.Calendar.OccurrenceEditor.prototype.buildHtml = function (html)
html.push ('<div><input id="', this.summaryId, '" size="40"></div>');
this.buildEventTab(this.notebook.insertPage ('Event', c.OccurrenceEditor.EventTab - 1));
this.buildSharingTab(this.notebook.insertPage ('Sharing', c.OccurrenceEditor.SharingTab - 1));
this.buildRepeatTab(this.notebook.insertPage ('Repeat', c.OccurrenceEditor.RepeatTab - 1));
this.buildEventTab(this.notebook.insertPage (_('eventInfoTabLabel'), c.OccurrenceEditor.EventTab - 1));
this.buildSharingTab(this.notebook.insertPage (_('eventSharingTabLabel'), c.OccurrenceEditor.SharingTab - 1));
this.buildRepeatTab(this.notebook.insertPage (_('eventRepeatTabLabel'), c.OccurrenceEditor.RepeatTab - 1));
this.notebook.buildHtml (html);
@@ -445,9 +445,9 @@ Dragonfly.Calendar.OccurrenceEditor.prototype.connectHtml = function (elem)
Event.observe (this.alldayId, 'click', function (evt) {
this.dateEntry.setUntimed ($(this.alldayId).checked);
}.bindAsEventListener (this));
d.LabeledEntry (this.summaryId, 'Summary', this.occurrence.summary);
d.LabeledEntry (this.locationId, 'Location', this.occurrence.location);
d.LabeledEntry (this.noteId, 'Note', this.occurrence.note);
d.LabeledEntry (this.summaryId, _('eventSummaryHint'), this.occurrence.summary);
d.LabeledEntry (this.locationId, _('eventLocationHint'), this.occurrence.location);
d.LabeledEntry (this.noteId, _('eventNoteHint'), this.occurrence.note);
return elem;
};
@@ -580,7 +580,7 @@ Dragonfly.Calendar.RRuleEditor.prototype.buildHtml = function (html)
// Overall layout is a ordered list of controls
this.id = Dragonfly.nextId ('rrule');
this.freqSelectId = Dragonfly.nextId ('rrule-freq');
html.push ('<ol id="', this.id, '" class="rrule-editor"><li><label>Repeat:</label>');
html.push ('<ol id="', this.id, '" class="rrule-editor"><li><label>', _('repeatLabel'), '</label>');
html.push ('<select id="', this.freqSelectId, '">');
Dragonfly.Widgets.addOptions (html, this.constants.freqLabels);
html.push ('</select></li>');
@@ -590,25 +590,25 @@ Dragonfly.Calendar.RRuleEditor.prototype.buildHtml = function (html)
this.intervalLabelId = Dragonfly.nextId ('rrule-interval-label');
html.push (
'<li class="controls day week month-by-day month-by-date year">',
'<label>Every:</label>',
'<label>', _('repeatEveryLabel'), '</label>',
'<input size="2" autocomplete="off" id="', this.intervalCountId, '">',
'<span id="', this.intervalLabelId, '"></span></li>'
);
// repeat weekly
html.push ('<li class="controls week"><label>On:</label>');
html.push ('<li class="controls week"><label>', _('repeatOnLabel'), '</label>');
html.push ('<div style="display:inline-block; display:-moz-inline-box;">');
this.wkdyButtons = new Dragonfly.ToggleButtons (html, this.constants.wkdyLabelsS);
html.push ('</div>');
// repeat monthly by date
html.push ('</li><li class="controls month-by-date"><label>On:</label>');
html.push ('</li><li class="controls month-by-date"><label>', _('repeatOnLabel'), '</label>');
html.push ('<div style="display:inline-block; display:-moz-inline-box;">');
this.modyButtons = new Dragonfly.ToggleButtons (html, this.constants.modyLabels, 5);
html.push ('</div>');
// repeat monthly by day
html.push ('</li><li class="controls month-by-day"><label>On:</label>');
html.push ('</li><li class="controls month-by-day"><label>', _('repeatOnLabel'), '</label>');
this.wkSelectId = Dragonfly.nextId ('rrule-week-select');
this.wkdySelectId = Dragonfly.nextId ('rrule-weekday-select');
html.push ('<select id="', this.wkSelectId, '">');
@@ -623,9 +623,9 @@ Dragonfly.Calendar.RRuleEditor.prototype.buildHtml = function (html)
this.endLabelId = Dragonfly.nextId ('rrule-end-label');
html.push (
'<li class="controls day week month-by-day month-by-date year">',
'<label>Ending:</label><select id="', this.endSelectId,'">',
'<option>Never</option><option>On Date</option>',
'<option>After repeating</option></select></li>',
'<label>', _('repeatEndingLabel'), '</label><select id="', this.endSelectId,'">',
'<option>', _('repeatEndNeverLabel'), '</option><option>', _('repeatEndOnDateLabel'), '</option>',
'<option>', _('repeatEndAfterRepeatLabel'), '</option></select></li>',
'<li class="controls end-by-count"><label></label>',
'<input size="2" autocomplete="off" id="', this.endCountId,'">',
@@ -640,10 +640,9 @@ Dragonfly.Calendar.RRuleEditor.prototype.buildHtml = function (html)
this.warnId = Dragonfly.nextId ('rrule-warn');
this.editAnywayId = Dragonfly.nextId ('rrule-edit-anyway');
html.push (
'<div id="', this.warnId, '" style="display:none;"><p><strong>Caution:</strong>',
'<br>This event has a schedule that cannot be edited with Bongo; ',
'Choosing to edit will replace the existing schedule.<div class="actions">',
'<input type="button" id="', this.editAnywayId, '" value="Edit Schedule" disabled></div></div>'
'<div id="', this.warnId, '" style="display:none;"><p><strong>', _('repeatCautionHeadingLabel'), '</strong>',
'<br>', _('repeatCautionBodyText'), '<div class="actions">',
'<input type="button" id="', this.editAnywayId, '" value="', _('repeatEditAnywayLabel'), '" disabled></div></div>'
);
html.addCallback (bind ('connectHtml', this));
};
@@ -807,9 +806,9 @@ Dragonfly.Calendar.EventInvitationPopup.prototype.connectHtml = function (elem)
d.PopupBuble.prototype.connectHtml.call (this, elem);
this.calendarId = d.nextId ('invite-calendar');
var form = [
'<div id="from">', d.escapeHTML (this.invite.from), ' has invited you to:</div><hr>',
'<div id="from">', d.escapeHTML (this.invite.from), ' ', _('inviteDefaultText'), '</div><hr>',
new c.OccurrenceSummary (this.invite.occurrences[0]), '<hr><div>',
'Calendar: <select id="', this.calendarId, '">'];
_('inviteCalendarPre'), ' <select id="', this.calendarId, '">'];
forEach (c.calendars, function (hcal) {
if (hcal.type == 'personal') {
@@ -820,10 +819,10 @@ Dragonfly.Calendar.EventInvitationPopup.prototype.connectHtml = function (elem)
form.push ('</select></div>');
var actions = [
{ value: "Delete", onclick: 'deleteClicked', secondary: true },
{ value: "Junk", onclick: 'junkClicked', secondary: true },
{ value: "Ignore", onclick: 'ignoreClicked'},
{ value: "Add", onclick: 'addClicked'}];
{ value: _('genericDelete'), onclick: 'deleteClicked', secondary: true },
{ value: _('buttonJunkLabel'), onclick: 'junkClicked', secondary: true },
{ value: _('buttonIgnoreLabel'), onclick: 'ignoreClicked'},
{ value: _('genericAdd'), onclick: 'addClicked'}];
this.setForm (form, actions);
this.setClosable (true);
+1 -1
View File
@@ -645,7 +645,7 @@ Dragonfly.PopupBuble.prototype.canDisposeZone = Dragonfly.PopupBuble.prototype.c
var canHide = !this.isVisible() || hasElementClass (this.frameId, 'closable');
canHide = canHide && this.htmlZone.canHideZone();
if (!canHide) {
Dragonfly.notify ('you have unsaved changes');
Dragonfly.notify (_('unsavedChanges'));
}
return canHide;
}
+105 -2
View File
@@ -46,7 +46,6 @@
"contactEditLabel" : "Diteay",
"contactSelf" : "Histey siey Emey",
"contactConfirmRemovePre" : "Reaay ouyay uresay ouyay antway otay eleteday hetay ontactcay ",
"contactConfirmRemovePost" : "? Histay annotcay ebay ndoneuay.",
"contactEmail" : "Maileay",
"contactPhone" : "Honepay",
"contactFax" : "Axfay",
@@ -59,7 +58,15 @@
"genericCancel" : "Ancelcay",
"genericSave" : "Avesay",
"genericDelete" : "Eleteday",
"genericEdit" : "Diteay",
"genericAdd" : "Ddaay",
"genericSavingChanges" : "Avingsay hangescay...",
"genericChangesSaved" : "Hangescay avedsay.",
"genericPrevious" : "Reviouspay",
"genericPreviousShort" : "Revpay",
"genericNext" : "Extnay",
"genericRemovePost" : "? Histay annotcay ebay ndoneuay.",
"unsavedChanges" : "Ouyay avehay nsaveduay hangescay.",
"monday" : "Ondaymay",
"monday-s" : "O",
@@ -79,5 +86,101 @@
"day" : "Ayday",
"upcoming" : "Pcominguay",
"week" : "Eekway",
"month" : "Onthmay"
"month" : "Onthmay",
"calendarView" : "Iewvay:",
"freeFormInstructions" : "Ntereay reefay-ormfay exttay, orfay xampleeay:",
"freeFormExample" : "unchlay ithway Oejay omorrowtay taay oonnay",
"freeFormOption" : "roay, ",
"freeFormOptionBody" : "ntereay etailsday nsteadiay",
"freeFormAddLabel" : "Ddaay Venteay",
"deleteEventConfirm" : "Reaay ouyay uresay ouyay antway otay eleteday hetay venteay ",
"eventSeriesIntro" : "Histay venteay siay artpay foay ay eriessay. Ouldway ouyay ikelay ",
"eventSeriesChanges" : "hangescay otay pplyaay otay",
"eventSeriesDelete" : "otay eleteday",
"eventScopeSingle" : "nlyoay histay venteay",
"eventScopeFollowing" : "histay ndaay ollowingfay ventseay",
"eventScopeAll" : "llaay ventseay niay eriessay",
"includeEventLabel" : "Ncludeiay histay venteay niay:",
"publishEventSelf" : "Ublishpay histay venteay noay tsiay wnoay",
"allDayLabel" : "llaay ayday",
"eventInfoTabLabel" : "Venteay",
"eventSharingTabLabel" : "Haringsay",
"eventRepeatTabLabel" : "Epeatray",
"eventSummaryHint" : "Ummarysay",
"eventLocationHint" : "Ocationlay",
"eventNoteHint" : "Otesnay",
"eventDefaultTitle" : "Ewnay venteay",
"eventSubscribe" : "Ubscribesay",
"defaultCalendarName" : "Ewnay alendarcay",
"calendarNameLabel" : "Amenay:",
"calendarColorLabel" : "Olorcay:",
"calendarImportICSLabel" : "Mportiay ICS ilefay:",
"calendarSearchableLabel" : "Llowaay theroay sersuay otay earchsay orfay histay alendarcay",
"calendarPasswordProtectLabel" : "Asswordpay rotectpay histay alendercay",
"calendarSendInvitation" : "Endsay nvitationiay...",
"createNewCalendarLabel" : "Reatecay alendarcay",
"subscribeCalendarLabel" : "Ubscribesay",
"inviteDefaultText" : "ashay nvitediay ouyay otay:",
"inviteCalendarPre" : "Alendarcay:",
"buttonArchiveLabel" : "Rchivecay",
"buttonJunkLabel" : "Unkjay",
"buttonIgnoreLabel" : "Gnoreiay",
"buttonStarLabel" : "Tarsay",
"buttonUnarchiveLabel" : "Narchiveuay",
"buttonNotJunkLabel" : "Otnay Unkjay",
"buttonUndeleteLabel" : "Ndeleteuay",
"buttonUnstarLabel" : "Nstaruay",
"buttonAddLabel" : "Ddaay",
"buttonRemoveLabel" : "Emoveray",
"repeatLabel" : "Epeatray:",
"repeatEveryLabel" : "Veryeay:",
"repeatOnLabel" : "Noay:",
"repeatEndingLabel" : "Ndingeay:",
"repeatEndNeverLabel" : "Evernay",
"repeatEndOnDateLabel" : "Noay ateday",
"repeatEndAfterRepeatLabel" : "Fteraay epeatingaay",
"repeatCautionHeadingLabel" : "Autioncay",
"repeatCautionBodyText" : "Histay venteay ashay ay chedulesay hattay annotcay ebay ditedeay ithway Bongo; hoosingcay otay diteaey illway eplaceray hetay xistingeay chedulesay.",
"repeatEditAnywayLabel" : "Diteay Nywayaay",
"calendarYesterdayLabel" : "Esterdayyay",
"calendarTodayLabel" : "Odaytay",
"calendarTomorrowLabel" : "Omorrowtay",
"mailAllLabel" : "Llaay",
"mailToMeLabel" : "Otay Emay",
"mailFromContactsLabel" : "Romfay Ymay Ontactscay",
"mailSubscriptionsLabel" : "Ailingmay Istslay",
"mailNoMessages" : "Onay essagesmay oundfay.",
"mailMoreSuffix" : "oremay...",
"mailTo" : "Otay:",
"mailFrom" : "Romfay:",
"mailCc" : "CC:",
"mailBcc" : "BCC:",
"mailSubject" : "Ubjectsay:",
"mailAttachments" : "Ttachmentsaay:",
"mailAttachLabel" : "Ttachaay ilefay...",
"mailRemoveAttachment" : "Emoveray",
"mailConversation" : "Onversationcay",
"mailList" : "Istlay",
"mailItem" : "Temiay",
"mailView" : "Iewvay",
"mailDiscard" : "Iscardday",
"mailDraft" : "Avesay Raftday",
"mailSend" : "Endsay",
"toolbarSelectAll" : "Electsay Llaay",
"toolbarDeselectAll" : "Eselectday Llaay"
}