зеркало из https://github.com/mozilla/pjs.git
Bug 306079 Create a proper prefs file, rather than initializing prefs from .properties, r=mvl
This commit is contained in:
Родитель
fa844bcd6d
Коммит
5d4643e5fc
|
@ -130,6 +130,20 @@
|
|||
this.calView.mEndMin);
|
||||
break;
|
||||
|
||||
case "calendar.week.d0sundaysoff":
|
||||
case "calendar.week.d1mondaysoff":
|
||||
case "calendar.week.d2tuesdaysoff":
|
||||
case "calendar.week.d3wednesdaysoff":
|
||||
case "calendar.week.d4thursdaysoff":
|
||||
case "calendar.week.d5fridaysoff":
|
||||
case "calendar.week.d6saturdaysoff":
|
||||
if (this.calView.mWorkdaysOnly) {
|
||||
this.calView.goToDay(this.calView.selectedDay);
|
||||
}
|
||||
break;
|
||||
case "calendar.week.start":
|
||||
this.calView.goToDay(this.calView.selectedDay);
|
||||
break;
|
||||
case "calendar.view.defaultendhour":
|
||||
this.calView.mEndMin = subj.getIntPref(pref) * 60;
|
||||
viewElem = document.getAnonymousElementByAttribute(
|
||||
|
|
|
@ -116,48 +116,12 @@ unsubscribeCalendarMessage=Are you sure you want to unsubscribe from calendar "%
|
|||
|
||||
weekDayMonthLabel=%1$S %2$S %3$S
|
||||
|
||||
#
|
||||
# P R E F S
|
||||
# Default values for preferences
|
||||
#
|
||||
|
||||
#the default day to start the week on
|
||||
#0=Sunday 1=Monday 2=Tuesday 3=Wednesday 4=Thursday 5=Friday 6=Saturday
|
||||
defaultWeekStart=0
|
||||
# default days off (not in work week)
|
||||
defaultWeekSundaysOff =true
|
||||
defaultWeekMondaysOff =false
|
||||
defaultWeekTuesdaysOff =false
|
||||
defaultWeekWednesdaysOff=false
|
||||
defaultWeekThursdaysOff =false
|
||||
defaultWeekFridaysOff =false
|
||||
defaultWeekSaturdaysOff =true
|
||||
defaultWeeksInView=4
|
||||
defaultPreviousWeeksInView=0
|
||||
showAlarms=1
|
||||
showMissed=1
|
||||
playAlarmSound=0
|
||||
soundURL=chrome://calendar/content/sound.wav
|
||||
reloadServersOnLaunch=false
|
||||
defaultEventLength=60
|
||||
defaultSnoozeAlarmLength=60
|
||||
dateFormat=0
|
||||
storeInGmt=0
|
||||
defaultStartHour=8
|
||||
defaultEndHour=17
|
||||
defaultzone=America/New_York
|
||||
defaulteventalarmunit=minutes
|
||||
defaulttodoalarmunit=minutes
|
||||
|
||||
Week=Week
|
||||
WeekTitle=Week %1$S
|
||||
# Used to format the Multiweek's labels, ie Weeks 2 - 7
|
||||
WeeksTitle=Weeks %1$S-%2$S
|
||||
None=None
|
||||
|
||||
# Alarm
|
||||
TooManyAlarmsMessage=You have %1$S total alarms. We've shown you the last 6. Click Acknowledge All to clear them all.
|
||||
|
||||
# Error strings
|
||||
## @name UID_NOT_FOUND
|
||||
## @loc none
|
||||
|
|
|
@ -36,4 +36,20 @@
|
|||
|
||||
#filter substitution
|
||||
|
||||
#the default day to start the week on
|
||||
#0=Sunday 1=Monday 2=Tuesday 3=Wednesday 4=Thursday 5=Friday 6=Saturday
|
||||
pref("calendar.week.start", 0);
|
||||
|
||||
# default days off (not in work week)
|
||||
pref("calendar.week.d0sundaysoff", true);
|
||||
pref("calendar.week.d1mondaysoff", false);
|
||||
pref("calendar.week.d2tuesdaysoff", false);
|
||||
pref("calendar.week.d3wednesdaysoff", false);
|
||||
pref("calendar.week.d4thursdaysoff", false);
|
||||
pref("calendar.week.d5fridaysoff", false);
|
||||
pref("calendar.week.d6saturdaysoff", true);
|
||||
|
||||
pref("general.useragent.locale", "@AB_CD@");
|
||||
|
||||
# categories
|
||||
pref("calendar.categories.names", "Anniversary,Birthday,Business,Calls,Clients,Competition,Customer,Favorites,Follow up,Gifts,Holidays,Ideas,Issues,Miscellaneous,Personal,Projects,Public Holiday,Status,Suppliers,Travel,Vacation");
|
||||
|
|
|
@ -18,7 +18,6 @@ calendar-@AB_CD@.jar:
|
|||
locale/@AB_CD@/calendar/calendar.dtd (%chrome/calendar/calendar.dtd)
|
||||
locale/@AB_CD@/calendar/calendarCreation.dtd (%chrome/calendar/calendarCreation.dtd)
|
||||
locale/@AB_CD@/calendar/calendar.properties (%chrome/calendar/calendar.properties)
|
||||
locale/@AB_CD@/calendar/categories.properties (%chrome/calendar/categories.properties)
|
||||
locale/@AB_CD@/calendar/dateFormat.properties (%chrome/calendar/dateFormat.properties)
|
||||
locale/@AB_CD@/calendar/email.properties (%chrome/calendar/email.properties)
|
||||
locale/@AB_CD@/calendar/global.dtd (%chrome/calendar/global.dtd)
|
||||
|
|
|
@ -58,23 +58,9 @@
|
|||
**********
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*-----------------------------------------------------------------
|
||||
* G L O B A L V A R I A B L E S
|
||||
*/
|
||||
|
||||
// single global instance of CalendarWindow
|
||||
var gCalendarWindow;
|
||||
|
||||
var prefService = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
.getService(Components.interfaces.nsIPrefService);
|
||||
var rootPrefNode = prefService.getBranch(null); // preferences root node
|
||||
|
||||
|
||||
/*-----------------------------------------------------------------
|
||||
* G L O B A L C A L E N D A R F U N C T I O N S
|
||||
*/
|
||||
|
@ -278,7 +264,9 @@ function newEvent(startDate, endDate, allDay)
|
|||
calendarEvent.startDate.jsDate = startDate;
|
||||
|
||||
if (!endDate) {
|
||||
var MinutesToAddOn = getIntPref(gCalendarWindow.calendarPreferences.calendarPref, "event.defaultlength", gCalendarBundle.getString("defaultEventLength" ) );
|
||||
var pb2 = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
.getService(Components.interfaces.nsIPrefBranch2);
|
||||
var MinutesToAddOn = pb2.getIntPref("calendar.event.defaultlength");
|
||||
|
||||
endDate = new Date(startDate);
|
||||
endDate.setMinutes(endDate.getMinutes() + MinutesToAddOn);
|
||||
|
@ -445,62 +433,6 @@ function print()
|
|||
"printdialog","chrome");
|
||||
}
|
||||
|
||||
function getCharPref (prefObj, prefName, defaultValue)
|
||||
{
|
||||
try {
|
||||
return prefObj.getCharPref (prefName);
|
||||
} catch (e) {
|
||||
prefObj.setCharPref( prefName, defaultValue );
|
||||
return defaultValue;
|
||||
}
|
||||
}
|
||||
|
||||
function getIntPref(prefObj, prefName, defaultValue)
|
||||
{
|
||||
try {
|
||||
return prefObj.getIntPref(prefName);
|
||||
} catch (e) {
|
||||
prefObj.setIntPref(prefName, defaultValue);
|
||||
return defaultValue;
|
||||
}
|
||||
}
|
||||
|
||||
function getBoolPref (prefObj, prefName, defaultValue)
|
||||
{
|
||||
try
|
||||
{
|
||||
return prefObj.getBoolPref (prefName);
|
||||
}
|
||||
catch (e)
|
||||
{
|
||||
prefObj.setBoolPref( prefName, defaultValue );
|
||||
return defaultValue;
|
||||
}
|
||||
}
|
||||
|
||||
function GetUnicharPref(prefObj, prefName, defaultValue)
|
||||
{
|
||||
try {
|
||||
return prefObj.getComplexValue(prefName, Components.interfaces.nsISupportsString).data;
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
SetUnicharPref(prefObj, prefName, defaultValue);
|
||||
return defaultValue;
|
||||
}
|
||||
}
|
||||
|
||||
function SetUnicharPref(aPrefObj, aPrefName, aPrefValue)
|
||||
{
|
||||
try {
|
||||
var str = Components.classes["@mozilla.org/supports-string;1"]
|
||||
.createInstance(Components.interfaces.nsISupportsString);
|
||||
str.data = aPrefValue;
|
||||
aPrefObj.setComplexValue(aPrefName, Components.interfaces.nsISupportsString, str);
|
||||
}
|
||||
catch(e) {}
|
||||
}
|
||||
|
||||
/* Change the only-workday checkbox */
|
||||
function changeOnlyWorkdayCheckbox() {
|
||||
var oldValue = (document.getElementById("toggle_workdays_only")
|
||||
|
|
|
@ -232,7 +232,6 @@
|
|||
<script type="application/x-javascript" src="chrome://calendar/content/mouseoverPreviews.js"/>
|
||||
<script type="application/x-javascript" src="chrome://calendar/content/unifinder.js"/>
|
||||
<script type="application/x-javascript" src="chrome://calendar/content/unifinderToDo.js"/>
|
||||
<script type="application/x-javascript" src="chrome://calendar/content/pref/rootCalendarPref.js"/>
|
||||
|
||||
<!--<script type="application/x-javascript" src="chrome://calendar/content/email.js"/>-->
|
||||
|
||||
|
|
|
@ -278,6 +278,12 @@ function initCalendarManager()
|
|||
initColors();
|
||||
var calendarList = document.getElementById("list-calendars-listbox");
|
||||
calendarList.addEventListener("select", onCalendarListSelect, true);
|
||||
|
||||
// Set up a pref listener so the proper UI bits can be refreshed when prefs
|
||||
// are changed.
|
||||
var pb2 = prefService.getBranch("").QueryInterface(
|
||||
Components.interfaces.nsIPrefBranch2);
|
||||
pb2.addObserver("calendar.", calPrefObserver, false);
|
||||
}
|
||||
|
||||
function finishCalendarManager() {
|
||||
|
@ -285,6 +291,7 @@ function finishCalendarManager() {
|
|||
var pbi = prefService.getBranch("");
|
||||
pbi = pbi.QueryInterface(Components.interfaces.nsIPrefBranch2);
|
||||
pbi.removeObserver("calendar.category.color.", categoryPrefObserver);
|
||||
pbi.removeObserver("calendar.", calPrefObserver);
|
||||
|
||||
var calendarList = document.getElementById("list-calendars-listbox");
|
||||
calendarList.removeEventListener("select", onCalendarListSelect, true);
|
||||
|
@ -404,3 +411,35 @@ var categoryPrefObserver =
|
|||
updateStyleSheetForObject(name);
|
||||
}
|
||||
}
|
||||
|
||||
var calPrefObserver =
|
||||
{
|
||||
observe: function(aSubject, aTopic, aPrefName)
|
||||
{
|
||||
subject = aSubject.QueryInterface(Components.interfaces.nsIPrefBranch2);
|
||||
|
||||
switch (aPrefName) {
|
||||
case "calendar.week.start":
|
||||
document.getElementById("lefthandcalendar").refreshDisplay(true);
|
||||
break;
|
||||
case "calendar.date.format":
|
||||
var currentView = document.getElementById("view-deck").selectedPanel;
|
||||
currentView.goToDay(currentView.selectedDay);
|
||||
refreshEventTree();
|
||||
toDoUnifinderRefresh();
|
||||
break;
|
||||
|
||||
case "calendar.timezone.local":
|
||||
gDefaultTimezone = subject.getCharPref(aPrefName);
|
||||
|
||||
var currentView = document.getElementById("view-deck").selectedPanel;
|
||||
currentView.goToDay(currentView.selectedDay);
|
||||
refreshEventTree();
|
||||
toDoUnifinderRefresh();
|
||||
break;
|
||||
|
||||
default :
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -139,12 +139,6 @@ var gViewController = new calViewController();
|
|||
|
||||
function CalendarWindow( )
|
||||
{
|
||||
//setup the preferences
|
||||
this.calendarPreferences = new calendarPreferences( this );
|
||||
|
||||
// miniMonth used by preferences
|
||||
this.miniMonth = document.getElementById( "lefthandcalendar" );
|
||||
|
||||
//setup the calendar event selection
|
||||
this.EventSelection = new CalendarEventSelection( this );
|
||||
gViewController.selectionManager = this.EventSelection;
|
||||
|
|
|
@ -1,364 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<!-- ***** BEGIN LICENSE BLOCK *****
|
||||
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
-
|
||||
- The contents of this file are subject to the Mozilla Public License Version
|
||||
- 1.1 (the "License"); you may not use this file except in compliance with
|
||||
- the License. You may obtain a copy of the License at
|
||||
- http://www.mozilla.org/MPL/
|
||||
-
|
||||
- Software distributed under the License is distributed on an "AS IS" basis,
|
||||
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
- for the specific language governing rights and limitations under the
|
||||
- License.
|
||||
-
|
||||
- The Original Code is Mozilla Calendar Code.
|
||||
-
|
||||
- The Initial Developer of the Original Code is Mike Potter.
|
||||
- Portions created by the Initial Developer are Copyright (C) 2002
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Mike Potter <mikep@oeone.com>
|
||||
- ArentJan Banck <ajbanck@planet.nl>
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
- in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
- of those above. If you wish to allow use of your version of this file only
|
||||
- under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
- use your version of this file under the terms of the MPL, indicate your
|
||||
- decision by deleting the provisions above and replace them with the notice
|
||||
- and other provisions required by the LGPL or the GPL. If you do not delete
|
||||
- the provisions above, a recipient may use your version of this file under
|
||||
- the terms of any one of the MPL, the GPL or the LGPL.
|
||||
-
|
||||
- ***** END LICENSE BLOCK ***** -->
|
||||
|
||||
|
||||
<?xml-stylesheet href="chrome://communicator/skin/" type="text/css"?>
|
||||
|
||||
<!-- DTD File with all strings specific to the file -->
|
||||
<!DOCTYPE page
|
||||
[
|
||||
<!ENTITY % dtd1 SYSTEM "chrome://calendar/locale/prefs.dtd" > %dtd1;
|
||||
<!ENTITY % dtd2 SYSTEM "chrome://calendar/locale/global.dtd" > %dtd2;
|
||||
#ifdef MOZ_SUNBIRD
|
||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" > %brandDTD;
|
||||
#endif
|
||||
]>
|
||||
|
||||
<page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="parent.initPanel('chrome://calendar/content/pref/calendarPref.xul');calendarPrefOnLoad()"
|
||||
headertitle="&calendarPanel.label;">
|
||||
|
||||
<script type="application/x-javascript" src="chrome://global/content/strres.js"/>
|
||||
<script type="application/x-javascript" src="chrome://calendar/content/calendarUtils.js"/>
|
||||
|
||||
<script type="application/x-javascript">
|
||||
var labelLong = "&pref.dateformat.long;";
|
||||
var labelShort = "&pref.dateformat.short;";
|
||||
var noneLabel = "&pref.categories.none.label;";
|
||||
var addTitle = "&pref.categories.add.title;";
|
||||
var editTitle = "&pref.categories.edit.title;";
|
||||
var overwrite = "&pref.categories.overwrite;";
|
||||
var overwriteTitle = "&pref.categories.overwrite.title;";
|
||||
var noBlankCategories = "&pref.categories.noBlankCategories;";
|
||||
</script>
|
||||
|
||||
<script type="application/x-javascript">
|
||||
<![CDATA[
|
||||
function calendarPrefOnLoad()
|
||||
{
|
||||
var dateFormatter = Components.classes["@mozilla.org/calendar/datetime-formatter;1"]
|
||||
.getService(Components.interfaces.calIDateTimeFormatter);
|
||||
//
|
||||
// create example dates using today's date
|
||||
var dateFormattedLong = dateFormatter.formatDateLong(now());
|
||||
var dateFormattedShort = dateFormatter.formatDateShort(now());
|
||||
//
|
||||
// menu items include examples of current date formats.
|
||||
document.getElementById( "dateformat-long-menuitem" ).setAttribute( "label", labelLong+": "+dateFormattedLong);
|
||||
document.getElementById( "dateformat-short-menuitem" ).setAttribute( "label", labelShort+": "+dateFormattedShort);
|
||||
//
|
||||
// deselect and reselect to update visible item title
|
||||
var dateFormatMenuList = document.getElementById( "dateformat" );
|
||||
var selectedIndex = dateFormatMenuList.selectedIndex;
|
||||
dateFormatMenuList.selectedIndex = -1;
|
||||
dateFormatMenuList.selectedIndex = selectedIndex;
|
||||
}
|
||||
|
||||
// An array to store the categories in, because taking them from
|
||||
// the listbox is unreliable. It might update too late.
|
||||
var gCategoryList;
|
||||
//A list of preferences to be reverted when the dialog is cancelled.
|
||||
//It needs to be a property of the parent to be visible onCancel
|
||||
if (!parent.backupPrefList)
|
||||
parent.backupPrefList = [];
|
||||
|
||||
var prefService = Components.classes["@mozilla.org/preferences-service;1"]
|
||||
.getService(Components.interfaces.nsIPrefService);
|
||||
var categoryPrefBranch = prefService.getBranch("calendar.category.color.");
|
||||
|
||||
// not in onload, because that will be called too early
|
||||
// if this panel is the default to open. and it is.
|
||||
function Startup()
|
||||
{
|
||||
var categories = document.getElementById("categories").value;
|
||||
gCategoryList = categories.split(",");
|
||||
updateCategoryList();
|
||||
parent.hPrefWindow.registerCancelCallbackFunc(panelOnCancel);
|
||||
}
|
||||
|
||||
function updateCategoryList()
|
||||
{
|
||||
gCategoryList.sort();
|
||||
document.getElementById("categories").value = gCategoryList.join(",");
|
||||
var listbox = document.getElementById("categorieslist");
|
||||
|
||||
listbox.clearSelection();
|
||||
document.getElementById("editCButton").disabled="true";
|
||||
document.getElementById("deleteCButton").disabled="true";
|
||||
|
||||
while(listbox.lastChild.id != "categoryColumns")
|
||||
listbox.removeChild(listbox.lastChild);
|
||||
|
||||
for (var i = 0; i < gCategoryList.length; i++) {
|
||||
var newListItem = document.createElement("listitem");
|
||||
var categoryName = document.createElement("listcell");
|
||||
categoryName.setAttribute("id", gCategoryList[i]);
|
||||
categoryName.setAttribute("label", gCategoryList[i]);
|
||||
var categoryNameFix = fixName(gCategoryList[i]);
|
||||
var categoryColor = document.createElement("listcell");
|
||||
try {
|
||||
var colorCode = categoryPrefBranch.getCharPref(categoryNameFix);
|
||||
categoryColor.setAttribute("id", colorCode);
|
||||
categoryColor.setAttribute("style","background-color: "+colorCode+';');
|
||||
}
|
||||
catch (ex) {
|
||||
categoryColor.setAttribute("label", noneLabel);
|
||||
}
|
||||
|
||||
newListItem.appendChild(categoryName);
|
||||
newListItem.appendChild(categoryColor);
|
||||
listbox.appendChild(newListItem);
|
||||
}
|
||||
}
|
||||
|
||||
function addCategory()
|
||||
{
|
||||
var list = document.getElementById("categorieslist");
|
||||
list.selectedIndex = -1;
|
||||
document.getElementById("editCButton").disabled = "true";
|
||||
document.getElementById("deleteCButton").disabled = "true";
|
||||
window.openDialog("chrome://calendar/content/pref/editCategory.xul",
|
||||
"addCategory", "modal,centerscreen,chrome,resizable=no",
|
||||
"", null, addTitle);
|
||||
}
|
||||
|
||||
function editCategory()
|
||||
{
|
||||
var list = document.getElementById("categorieslist");
|
||||
var categoryNameFix=fixName(gCategoryList[list.selectedIndex]);
|
||||
try {
|
||||
var currentColor = categoryPrefBranch.getCharPref(categoryNameFix);
|
||||
}
|
||||
catch (ex) {
|
||||
var currentColor = null;
|
||||
}
|
||||
if(list.selectedItem)
|
||||
window.openDialog("chrome://calendar/content/pref/editCategory.xul",
|
||||
"editCategory", "modal,centerscreen,chrome,resizable=no",
|
||||
gCategoryList[list.selectedIndex], currentColor, editTitle);
|
||||
}
|
||||
|
||||
function deleteCategory()
|
||||
{
|
||||
var list = document.getElementById("categorieslist");
|
||||
if (list.selectedItem) {
|
||||
var categoryNameFix = fixName(gCategoryList[list.selectedIndex]);
|
||||
backupData(categoryNameFix);
|
||||
try {
|
||||
categoryPrefBranch.clearUserPref(categoryNameFix);
|
||||
}
|
||||
catch (ex) { }
|
||||
gCategoryList.splice(list.selectedIndex, 1);
|
||||
updateCategoryList();
|
||||
}
|
||||
}
|
||||
|
||||
function saveCategory(categoryName, categoryColor) {
|
||||
var list = document.getElementById("categorieslist");
|
||||
//Check to make sure another category doesn't have the same name
|
||||
var toBeDeleted = -1;
|
||||
var promptService =
|
||||
Components.classes["@mozilla.org/embedcomp/prompt-service;1"]
|
||||
.getService(Components.interfaces.nsIPromptService);
|
||||
for (var i = 0; i < gCategoryList.length; i++) {
|
||||
if (i == list.selectedIndex)
|
||||
continue;
|
||||
if (categoryName.toLowerCase() == gCategoryList[i].toLowerCase()) {
|
||||
if (promptService.confirm(null, overwriteTitle, overwrite)) {
|
||||
if(list.selectedIndex != -1)
|
||||
//Don't delete the old category yet. It will mess up indices.
|
||||
toBeDeleted = list.selectedIndex;
|
||||
list.selectedIndex = i;
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (categoryName.length == 0) {
|
||||
promptService.alert(null, null, noBlankCategories);
|
||||
return;
|
||||
}
|
||||
|
||||
var categoryNameFix = fixName(categoryName);
|
||||
if (list.selectedIndex == -1) {
|
||||
backupData(categoryNameFix);
|
||||
gCategoryList.push(categoryName);
|
||||
if (categoryColor)
|
||||
categoryPrefBranch.setCharPref(categoryNameFix, categoryColor);
|
||||
}
|
||||
else {
|
||||
backupData(categoryNameFix);
|
||||
gCategoryList.splice(list.selectedIndex, 1, categoryName);
|
||||
if(categoryColor)
|
||||
categoryPrefBranch.setCharPref(categoryNameFix, categoryColor);
|
||||
else {
|
||||
try {
|
||||
categoryPrefBranch.clearUserPref(categoryNameFix);
|
||||
}
|
||||
catch (ex) { }
|
||||
}
|
||||
}
|
||||
|
||||
//If 'Overwrite' was chosen, delete category that was being editted
|
||||
if (toBeDeleted != -1) {
|
||||
list.selectedIndex = toBeDeleted;
|
||||
deleteCategory();
|
||||
}
|
||||
updateCategoryList();
|
||||
}
|
||||
|
||||
function fixName(categoryName) {
|
||||
var categoryNameFix = categoryName.toLowerCase();
|
||||
categoryNameFix = categoryNameFix.replace(' ','_');
|
||||
return categoryNameFix;
|
||||
}
|
||||
|
||||
function enableButtons() {
|
||||
document.getElementById("editCButton").disabled=null;
|
||||
document.getElementById("deleteCButton").disabled=null;
|
||||
}
|
||||
|
||||
function backupData(categoryNameFix) {
|
||||
var currentColor;
|
||||
try {
|
||||
currentColor = categoryPrefBranch.getCharPref(categoryNameFix);
|
||||
}
|
||||
catch (ex) {
|
||||
currentColor="##NEW";
|
||||
}
|
||||
for(var i = 0; i < parent.backupPrefList.length; i++) {
|
||||
if (categoryNameFix == parent.backupPrefList[i].name)
|
||||
return;
|
||||
}
|
||||
parent.backupPrefList[parent.backupPrefList.length] = {name : categoryNameFix,
|
||||
color : currentColor};
|
||||
}
|
||||
|
||||
function panelOnCancel() {
|
||||
for(var i = 0; i < parent.backupPrefList.length; i++) {
|
||||
if (parent.backupPrefList[i].color == "##NEW") {
|
||||
try {
|
||||
categoryPrefBranch.clearUserPref(parent.backupPrefList[i].name);
|
||||
}
|
||||
catch (ex) { }
|
||||
}
|
||||
else
|
||||
categoryPrefBranch.setCharPref(parent.backupPrefList[i].name,
|
||||
parent.backupPrefList[i].color);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef MOZ_SUNBIRD
|
||||
function showConnections()
|
||||
{
|
||||
openDialog("chrome://calendar/content/pref/connectionPrefs.xul", "", "chrome,dialog");
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
** NOTE:
|
||||
** When you add a pref to this page, you have to add its ID to the following list.
|
||||
*/
|
||||
var _elementIDs = [
|
||||
"dateformat", "defaultlength", "defaultsnoozelength",
|
||||
"reloadonlaunch", "categories", "storeingmt"
|
||||
];
|
||||
]]>
|
||||
</script>
|
||||
|
||||
<groupbox align="start" orient="vertical">
|
||||
<caption label="&pref.mainbox.label;"/>
|
||||
<checkbox id="storeingmt" preftype="bool" prefstring="calendar.dateformat.storeingmt" label="&pref.dateformat.storeingmt;" />
|
||||
<hbox>
|
||||
<description>&pref.dateformat.label;</description>
|
||||
<menulist id="dateformat" crop="none" prefstring="calendar.date.format">
|
||||
<menupopup id="dateformat">
|
||||
<menuitem id="dateformat-long-menuitem" label="&pref.dateformat.long;" value="0"/>
|
||||
<menuitem id="dateformat-short-menuitem" label="&pref.dateformat.short;" value="1" selected="true"/>
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<description>&pref.defaultlength.label;</description>
|
||||
<textbox flex="1" id="defaultlength" preftype="int" prefstring="calendar.event.defaultlength" maxlength="3" size="3"/>
|
||||
<label value="&pref.minutes.label;"/>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<description>&pref.defaultsnoozelength.label;</description>
|
||||
<textbox flex="1" id="defaultsnoozelength" preftype="int" prefstring="calendar.alarms.defaultsnoozelength" maxlength="3" size="3"/>
|
||||
<label value="&pref.minutes.label;"/>
|
||||
</hbox>
|
||||
|
||||
<checkbox id="reloadonlaunch" preftype="bool" prefstring="calendar.servers.reloadonlaunch" label="&pref.reloadonlaunch;" />
|
||||
</groupbox>
|
||||
#ifdef MOZ_SUNBIRD
|
||||
<groupbox>
|
||||
<caption label="&pref.connectionsInfo.caption;"/>
|
||||
<hbox align="center">
|
||||
<description flex="1">&pref.proxiesInfo.label;</description>
|
||||
<button id="catProxiesButton" icon="network" label="&pref.showConnections.label;"
|
||||
accesskey="&pref.showConnections.accesskey;"
|
||||
oncommand="showConnections()"/>
|
||||
</hbox>
|
||||
</groupbox>
|
||||
#endif
|
||||
<groupbox flex="1">
|
||||
<caption label="&pref.categories.label;"/>
|
||||
<hbox flex="1">
|
||||
<listbox id="categorieslist" flex="1" onselect="enableButtons()">
|
||||
<listhead>
|
||||
<listheader label="&pref.categories.name.label;"/>
|
||||
<listheader label="&pref.categories.color.label;"/>
|
||||
</listhead>
|
||||
<listcols id="categoryColumns">
|
||||
<listcol flex="1"/>
|
||||
<listcol maxwidth="100" flex="1"/>
|
||||
</listcols>
|
||||
</listbox>
|
||||
<vbox>
|
||||
<spacer flex="1"/>
|
||||
<button label="&add.label;" oncommand="addCategory()"/>
|
||||
<button id="editCButton" label="&edit.label;" oncommand="editCategory()"/>
|
||||
<button id="deleteCButton" label="&remove.label;" oncommand="deleteCategory()"/>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<textbox id="categories" prefstring="calendar.categories.names" hidden="true"/>
|
||||
</groupbox>
|
||||
</page>
|
|
@ -87,7 +87,6 @@ calendar.jar:
|
|||
* content/calendar/pref/calendarPref.xul (content/pref/calendarPref.xul)
|
||||
content/calendar/pref/prefOverlay.xul (content/pref/prefOverlay.xul)
|
||||
content/calendar/pref/alarmPrefs.js (content/pref/alarmPrefs.js)
|
||||
content/calendar/pref/rootCalendarPref.js (content/pref/rootCalendarPref.js)
|
||||
content/calendar/pref/viewPrefs.xul (content/pref/viewPrefs.xul)
|
||||
content/calendar/pref/timezonePrefs.xul (content/pref/timezonePrefs.xul)
|
||||
content/calendar/pref/editCategory.xul (content/pref/editCategory.xul)
|
||||
|
|
|
@ -40,6 +40,26 @@
|
|||
// SYNTAX HINTS: dashes are delimiters. Use underscores instead.
|
||||
// The first character after a period must be alphabetic.
|
||||
|
||||
pref("calendar.alarms.show", true);
|
||||
pref("calendar.alarms.showmissed", true);
|
||||
pref("calendar.alarms.playsound", true);
|
||||
pref("calendar.alarms.soundURL", "chrome://calendar/content/sound.wav");
|
||||
pref("calendar.alarms.onforevents", 0); //XXX this should be a bool
|
||||
pref("calendar.alarms.onfortodos", 0); //XXX this should be a bool
|
||||
pref("calendar.alarms.eventalarmlen", 15);
|
||||
pref("calendar.alarms.todoalarmlen", 15);
|
||||
pref("calendar.alarms.eventalarmunit", "minutes");
|
||||
pref("calendar.alarms.todoalarmunit", "minutes");
|
||||
pref("calendar.alarms.defaultsnoozelength", 60);
|
||||
pref("calendar.date.format", 0);
|
||||
pref("calendar.event.defaultlength", 60);
|
||||
// Do NOT set this. If it is unset, we guess the timezone from the system
|
||||
//pref("calendar.timezone.local", "America/New_York);
|
||||
pref("calendar.view.defaultstarthour", 8);
|
||||
pref("calendar.view.defaultendhour", 17);
|
||||
pref("calendar.weeks.inview", 4);
|
||||
pref("calendar.previousweeks.inview", 0);
|
||||
|
||||
// pref("startup.homepage_override_url","chrome://browser-region/locale/region.properties");
|
||||
pref("general.startup.calendar", true);
|
||||
|
||||
|
|
|
@ -76,7 +76,6 @@
|
|||
<script type="application/x-javascript" src="chrome://calendar/content/mouseoverPreviews.js"/>
|
||||
<script type="application/x-javascript" src="chrome://calendar/content/unifinder.js"/>
|
||||
<script type="application/x-javascript" src="chrome://calendar/content/unifinderToDo.js"/>
|
||||
<script type="application/x-javascript" src="chrome://calendar/content/pref/rootCalendarPref.js"/>
|
||||
|
||||
<!-- <script type="application/x-javascript" src="chrome://calendar/content/email.js"/>-->
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче