mirror of
https://github.com/owncloudarchive/contacts.git
synced 2024-12-01 13:24:10 +01:00
Merge branch 'master' into filesystem
This commit is contained in:
commit
e3c6556280
@ -128,10 +128,10 @@ if(in_array($name, $multi_properties)) {
|
||||
'Cannot save property of type "%s" as array', array($name,)
|
||||
));
|
||||
}
|
||||
setParameters($property, $parameters);
|
||||
} else {
|
||||
$property = VObject\Property::create($name, $value, $parameters);
|
||||
}
|
||||
setParameters($property, $parameters);
|
||||
$vcard->add($property);
|
||||
$checksum = substr(md5($property->serialize()), 0, 8);
|
||||
try {
|
||||
|
@ -31,8 +31,8 @@
|
||||
}
|
||||
#content textarea { font-family: inherit; }
|
||||
|
||||
#content input:-moz-placeholder #content ::-moz-placeholder, #content input[placeholder], #content input:placeholder, #content input:-ms-input-placeholder, #content input::-webkit-input-placeholder, #content input:-moz-placeholder {
|
||||
color: #aaa;
|
||||
#content ::-moz-placeholder, #content input:-moz-placeholder, #content input[placeholder], #content input:placeholder, #content input:-ms-input-placeholder, #content input::-webkit-input-placeholder, #content input:-moz-placeholder {
|
||||
color: #bbb;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
@ -43,7 +43,6 @@
|
||||
-moz-border-radius: 0px; -webkit-border-radius: 0px; border-radius: 0px;
|
||||
-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
|
||||
float: left;
|
||||
width: auto;
|
||||
}
|
||||
#content input[type="button"]:hover, #content select:hover, #content select:focus, #content select:active, #content input[type="button"]:focus, #content .button:hover, button:hover { background-color:#fff; color:#333; }
|
||||
|
||||
@ -135,18 +134,23 @@
|
||||
#firstrun #selections { font-size:0.8em; margin: 2em auto auto auto; clear: both; }
|
||||
|
||||
#contact { margin: 1em; }
|
||||
#contact textarea { min-height: 5em; min-width: 30em; margin: 0 !important; padding: 0 !important; outline: 0 !important;}
|
||||
#contact textarea { min-height: 5em; width: 100%; margin: 0 !important; padding: 0 !important; outline: 0 !important;}
|
||||
|
||||
#contact input[type="checkbox"] { margin-top: 10px; vertical-align: bottom; float: left; }
|
||||
dl.form { display: block; width: auto; margin: 0; padding: 0; cursor: normal; }
|
||||
.form dt { display: table-cell; clear: left; float: left; width: 7em; margin: 0; padding: 0.8em 0.5em 0 0; text-align:right; text-overflow:ellipsis; o-text-overflow: ellipsis; vertical-align: text-bottom; color: #bbb;/* white-space: pre-wrap; white-space: -moz-pre-wrap !important; white-space: -pre-wrap; white-space: -o-pre-wrap;*/ }
|
||||
.form dd { display: table-cell; clear: right; float: left; margin: 0; padding: 0; white-space: nowrap; vertical-align: text-bottom; }
|
||||
/*dl.form { display: block; width: auto; margin: 0; padding: 0; cursor: normal; }*/
|
||||
.form dt { display: inline-block; clear: left; float: left; width: 7em; margin: 0; padding: 0.8em 0.5em 0 0; text-align:right; text-overflow:ellipsis; o-text-overflow: ellipsis; vertical-align: text-bottom; color: #bbb;/* white-space: pre-wrap; white-space: -moz-pre-wrap !important; white-space: -pre-wrap; white-space: -o-pre-wrap;*/ }
|
||||
.form dd { display: inline-block; clear: right; float: left; margin: 0; padding: 0; white-space: nowrap; vertical-align: text-bottom; }
|
||||
|
||||
/* override the default margin on share dropdown */
|
||||
#dropdown { margin: 1.5em 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; width: 100%; }
|
||||
|
||||
/* reset box-sizing for multiSelect */
|
||||
#content div.multiselect, #content div.multiselect > * { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; }
|
||||
|
||||
/* Reset values for jquery.multiselect */
|
||||
.ui-multiselect-checkboxes label { width: 100%; color: #333; font-size: 1em !important; }
|
||||
.ui-multiselect-checkboxes input[type="checkbox"] { margin: 3px !important; }
|
||||
|
||||
#content .multiselectoptions > li > * {
|
||||
-webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box;
|
||||
color: #888888;
|
||||
@ -245,8 +249,9 @@ dl.form { display: block; width: auto; margin: 0; padding: 0; cursor: normal; }
|
||||
width: 20px; height: 20px;
|
||||
opacity: 0;
|
||||
}
|
||||
.singleproperties .groupscontainer { display: block; clear: left; }
|
||||
.singleproperties .propertycontainer:hover .action { opacity: 1; }
|
||||
.singleproperties dl { width: 270px; }
|
||||
.singleproperties dl { width: 280px;}
|
||||
|
||||
.parameters {
|
||||
width: 120px;
|
||||
@ -296,7 +301,7 @@ ul.propertylist { width: 450px; }
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
#rightcontent label:hover, .form dt:hover, #rightcontent input.label:hover { color: #777 !important; }
|
||||
#rightcontent label:hover, #rightcontent dt:hover, #rightcontent input.label:hover { color: #777 !important; }
|
||||
#rightcontent input.label:hover, #rightcontent input.label:active { border: 0 none !important; border-radius: 0; cursor: pointer; }
|
||||
.typelist[type="button"] { float: left; max-width: 8em; border: 0; background-color: #fff; color: #bbb; box-shadow: none; } /* for multiselect */
|
||||
.typelist[type="button"]:hover { color: #777; } /* for multiselect */
|
||||
|
@ -48,6 +48,7 @@ $freeSpace=max($freeSpace, 0);
|
||||
$maxUploadFilesize = min($maxUploadFilesize, $freeSpace);
|
||||
|
||||
OCP\Util::addscript('contacts', 'multiselect');
|
||||
OCP\Util::addscript('', 'jquery.multiselect');
|
||||
OCP\Util::addscript('', 'oc-vcategories');
|
||||
OCP\Util::addscript('contacts', 'modernizr.custom');
|
||||
OCP\Util::addscript('contacts', 'app');
|
||||
@ -58,6 +59,7 @@ OCP\Util::addscript('contacts', 'jquery.combobox');
|
||||
OCP\Util::addscript('files', 'jquery.fileupload');
|
||||
OCP\Util::addscript('contacts', 'jquery.Jcrop');
|
||||
OCP\Util::addStyle('contacts', 'multiselect');
|
||||
OCP\Util::addStyle('', 'jquery.multiselect');
|
||||
OCP\Util::addStyle('contacts', 'jquery.combobox');
|
||||
OCP\Util::addStyle('contacts', 'jquery.Jcrop');
|
||||
OCP\Util::addStyle('contacts', 'contacts');
|
||||
|
10
js/app.js
10
js/app.js
@ -389,8 +389,14 @@ OC.Contacts = OC.Contacts || {
|
||||
});
|
||||
|
||||
$(document).bind('request.contact.addtogroup', function(e, data) {
|
||||
console.log('contact', data.id, 'request.contact.addtogroup');
|
||||
self.groups.addTo(data.id, data.groupid);
|
||||
self.groups.addTo(data.id, data.groupid, function(response) {
|
||||
console.log('contact', data.id, 'request.contact.addtogroup', response);
|
||||
});
|
||||
});
|
||||
|
||||
$(document).bind('request.contact.removefromgroup', function(e, data) {
|
||||
console.log('contact', data.id, 'request.contact.removefromgroup');
|
||||
self.groups.removeFrom(data.id, data.groupid);
|
||||
});
|
||||
|
||||
$(document).bind('request.contact.export', function(e, data) {
|
||||
|
@ -110,6 +110,15 @@ OC.Contacts = OC.Contacts || {};
|
||||
}
|
||||
|
||||
if($elem) {
|
||||
// If there's already a property of this type enable setting as preferred.
|
||||
if(this.multi_properties.indexOf(name) !== -1 && this.data[name] && this.data[name].length > 0) {
|
||||
var selector = 'li[data-element="' + name.toLowerCase() + '"]';
|
||||
$.each(this.$fullelem.find(selector), function(idx, elem) {
|
||||
$(elem).find('input.parameter[value="PREF"]').show();
|
||||
});
|
||||
} else if(this.multi_properties.indexOf(name) !== -1) {
|
||||
$elem.find('input.parameter[value="PREF"]').hide();
|
||||
}
|
||||
$elem.find('select.type[name="parameters[TYPE][]"]')
|
||||
.combobox({
|
||||
singleclick: true,
|
||||
@ -119,6 +128,7 @@ OC.Contacts = OC.Contacts || {};
|
||||
};
|
||||
|
||||
Contact.prototype.deleteProperty = function(params) {
|
||||
// TODO: Disable PREF if less than 2 multi_properties.
|
||||
var obj = params.obj;
|
||||
if(!this.enabled) {
|
||||
return;
|
||||
@ -225,10 +235,6 @@ OC.Contacts = OC.Contacts || {};
|
||||
var q = '';
|
||||
if(params.obj) {
|
||||
obj = params.obj;
|
||||
if($(obj).is('select')) {
|
||||
console.warn('Group adding will have to be refactored.');
|
||||
return;
|
||||
}
|
||||
q = this.queryStringFor(obj);
|
||||
element = this.propertyTypeFor(obj);
|
||||
} else {
|
||||
@ -476,17 +482,17 @@ OC.Contacts = OC.Contacts || {};
|
||||
self.access.id = parseInt(jsondata.data.aid);
|
||||
self.data = jsondata.data.details;
|
||||
// Add contact to current group
|
||||
if(self.groupprops && self.groupprops.currentgroup.name !== 'all'
|
||||
&& self.groupprops.currentgroup.name !== 'fav') {
|
||||
if(self.groupprops && self.groupprops.currentgroup.id !== 'all'
|
||||
&& self.groupprops.currentgroup.id !== 'fav') {
|
||||
if(!self.data.CATEGORIES) {
|
||||
self.data.CATEGORIES = [{value:[self.groupprops.currentgroup.name], parameters:[]}];
|
||||
// Save to vCard
|
||||
self.saveProperty({name:'CATEGORIES', value:self.data.CATEGORIES[0].value.join(',') });
|
||||
// Tell OC.Contacts to save in backend
|
||||
self.addToGroup(self.groupprops.currentgroup.name);
|
||||
$(document).trigger('request.contact.addtogroup', {
|
||||
id: self.id,
|
||||
groupid: self.groupprops.currentgroup.id
|
||||
});
|
||||
self.$groupSelect.find('option[value="' + self.groupprops.currentgroup.id + '"]')
|
||||
.attr('selected', 'selected');
|
||||
self.$groupSelect.multiselect('refresh');
|
||||
}
|
||||
}
|
||||
$(document).trigger('status.contact.added', {
|
||||
@ -579,25 +585,16 @@ OC.Contacts = OC.Contacts || {};
|
||||
return $container.is('input')
|
||||
? $container.val()
|
||||
: (function() {
|
||||
if($container.is('select[data-element="categories"]')) {
|
||||
console.warn('Group adding will have to be refactored.');
|
||||
retval = {};
|
||||
$.each($container.find(':selected'), function(idx, e) {
|
||||
retval[$(e).val()] = $(e).text();
|
||||
var $elem = $container.find('textarea.value,input.value:not(:checkbox)');
|
||||
console.assert($elem.length > 0, 'Couldn\'t find value for ' + $container.data('element'));
|
||||
if($elem.length === 1) {
|
||||
return $elem.val();
|
||||
} else if($elem.length > 1) {
|
||||
var retval = [];
|
||||
$.each($elem, function(idx, e) {
|
||||
retval.push($(e).val());
|
||||
});
|
||||
return retval;
|
||||
} else {
|
||||
var $elem = $container.find('textarea.value,input.value:not(:checkbox)');
|
||||
console.assert($elem.length > 0, 'Couldn\'t find value for ' + $container.data('element'));
|
||||
if($elem.length === 1) {
|
||||
return $elem.val();
|
||||
} else if($elem.length > 1) {
|
||||
var retval = [];
|
||||
$.each($elem, function(idx, e) {
|
||||
retval.push($(e).val());
|
||||
});
|
||||
return retval;
|
||||
}
|
||||
}
|
||||
})();
|
||||
};
|
||||
@ -660,13 +657,33 @@ OC.Contacts = OC.Contacts || {};
|
||||
var self = this;
|
||||
this.groupprops = groupprops;
|
||||
|
||||
var buildGroupSelect = function($groupSelect, availableGroups) {
|
||||
var buildGroupSelect = function(availableGroups) {
|
||||
//this.$groupSelect.find('option').remove();
|
||||
$.each(availableGroups, function(idx, group) {
|
||||
var $option = $('<option value="' + group.id + '">' + group.name + '</option>');
|
||||
if(self.inGroup(group.name)) {
|
||||
$option.attr('selected', 'selected');
|
||||
}
|
||||
$groupSelect.append($option);
|
||||
self.$groupSelect.append($option);
|
||||
});
|
||||
self.$groupSelect.multiselect({
|
||||
header: false,
|
||||
selectedList: 3,
|
||||
noneSelectedText: self.$groupSelect.attr('title'),
|
||||
selectedText: t('contacts', '# groups')
|
||||
});
|
||||
self.$groupSelect.bind('multiselectclick', function(event, ui) {
|
||||
var action = ui.checked ? 'addtogroup' : 'removefromgroup';
|
||||
console.assert(typeof self.id === 'number', 'ID is not a number')
|
||||
$(document).trigger('request.contact.' + action, {
|
||||
id: self.id,
|
||||
groupid: parseInt(ui.value)
|
||||
});
|
||||
if(ui.checked) {
|
||||
self.addToGroup(ui.text);
|
||||
} else {
|
||||
self.removeFromGroup(ui.text);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
@ -699,8 +716,7 @@ OC.Contacts = OC.Contacts || {};
|
||||
});
|
||||
|
||||
this.$groupSelect = this.$fullelem.find('#contactgroups');
|
||||
buildGroupSelect(this.$groupSelect, groupprops.groups);
|
||||
this.$groupSelect.multiSelect();
|
||||
buildGroupSelect(groupprops.groups);
|
||||
|
||||
this.$addMenu = this.$fullelem.find('#addproperty');
|
||||
this.$addMenu.on('change', function(event) {
|
||||
@ -776,7 +792,7 @@ OC.Contacts = OC.Contacts || {};
|
||||
});
|
||||
|
||||
this.$fullelem.on('change', '.value,.parameter', function(event) {
|
||||
if(this.value === this.defaultValue) {
|
||||
if($(this).hasClass('value') && this.value === this.defaultValue) {
|
||||
return;
|
||||
}
|
||||
console.log('change', this.defaultValue, this.value);
|
||||
@ -838,7 +854,7 @@ OC.Contacts = OC.Contacts || {};
|
||||
case 'URL':
|
||||
case 'EMAIL':
|
||||
$property = self.renderStandardProperty(name.toLowerCase(), property);
|
||||
if(self.data[name].length >= 1) {
|
||||
if(self.data[name].length === 1) {
|
||||
$property.find('input:checkbox[value="PREF"]').hide();
|
||||
}
|
||||
break;
|
||||
@ -847,6 +863,9 @@ OC.Contacts = OC.Contacts || {};
|
||||
break;
|
||||
case 'IMPP':
|
||||
$property = self.renderIMProperty(property);
|
||||
if(self.data[name].length === 1) {
|
||||
$property.find('input:checkbox[value="PREF"]').hide();
|
||||
}
|
||||
break;
|
||||
}
|
||||
if(!$property) {
|
||||
@ -1656,7 +1675,7 @@ OC.Contacts = OC.Contacts || {};
|
||||
self.contacts[parseInt(contact.id)]
|
||||
= new Contact(
|
||||
self,
|
||||
contact.id,
|
||||
parseInt(contact.id),
|
||||
self.addressbooks[parseInt(contact.aid)],
|
||||
contact.data,
|
||||
self.$contactListItemTemplate,
|
||||
|
@ -87,7 +87,7 @@ OC.Contacts = OC.Contacts || {};
|
||||
* @returns string The name of the group.
|
||||
*/
|
||||
GroupList.prototype.nameById = function(id) {
|
||||
return this.findById(id).clone().find("*").remove().end().text(); //.contents().filter(function(){ return(this.nodeType == 3); }).text().trim();
|
||||
return this.findById(id).clone().find("*").remove().end().text().trim(); //.contents().filter(function(){ return(this.nodeType == 3); }).text().trim();
|
||||
};
|
||||
|
||||
/** Get the group element by id.
|
||||
@ -206,6 +206,8 @@ OC.Contacts = OC.Contacts || {};
|
||||
cb({status:'error', message:t('contacts', 'Contacts are already in this group.')});
|
||||
}
|
||||
}
|
||||
} else {
|
||||
console.warn('Invalid data type: ' + typeof contactid);
|
||||
}
|
||||
if(doPost) {
|
||||
$.post(OC.filePath('contacts', 'ajax', 'categories/addto.php'), {contactids: ids, categoryid: groupid},function(jsondata) {
|
||||
|
@ -3,10 +3,12 @@
|
||||
"Contacts" => "Контакти",
|
||||
"Upload too large" => "Файлът който сте избрали за качване е прекалено голям",
|
||||
"Download" => "Изтегляне",
|
||||
"Edit" => "Промяна",
|
||||
"Delete" => "Изтриване",
|
||||
"Text" => "Текст",
|
||||
"Settings" => "Настройки",
|
||||
"Groups" => "Групи",
|
||||
"Title" => "Заглавие",
|
||||
"Add" => "Добавяне",
|
||||
"Email" => "E-mail",
|
||||
"Name" => "Име",
|
||||
|
@ -112,6 +112,7 @@
|
||||
"Additional names" => "অতিরিক্ত নামসমূহ",
|
||||
"Nickname" => "ছদ্মনাম",
|
||||
"Enter nickname" => "ছদ্মনাম প্রবেশ করান",
|
||||
"Title" => "শিরোনাম",
|
||||
"Organization" => "প্রতিস্ঠান",
|
||||
"Birthday" => "জন্মদিন",
|
||||
"Add" => "যোগ কর",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "El nom de la llibreta d'adreces no pot ser buit.",
|
||||
"Is this correct?" => "És correcte?",
|
||||
"There was an unknown error when trying to delete this contact" => "S'ha produït un error en intentar esborrat aquest contacte",
|
||||
"# groups" => "# grups",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Heu marcat eliminar alguns contactes, però encara no s'han eliminat. Espereu mentre s'esborren.",
|
||||
"Click to undo deletion of {num} contacts" => "Feu clic a desfés eliminació de {num} contactes",
|
||||
"Cancelled deletion of {num}" => "S'ha cancel·lat l'eliminació de {num}",
|
||||
@ -185,10 +186,10 @@
|
||||
"Edit current photo" => "Edita la foto actual",
|
||||
"Upload new photo" => "Carrega una foto nova",
|
||||
"Select photo from ownCloud" => "Selecciona una foto de ownCloud",
|
||||
"Select groups" => "Selecciona grups",
|
||||
"First name" => "Nom",
|
||||
"Additional names" => "Noms addicionals",
|
||||
"Last name" => "Cognom",
|
||||
"Select groups" => "Selecciona grups",
|
||||
"Nickname" => "Sobrenom",
|
||||
"Enter nickname" => "Escriviu el sobrenom",
|
||||
"Title" => "Títol",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "Název knihy adres nemůže být prázdný.",
|
||||
"Is this correct?" => "Je to správně?",
|
||||
"There was an unknown error when trying to delete this contact" => "Nastala neznámá chyba při mazání tohoto kontaktu",
|
||||
"# groups" => "# skupiny",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Některé kontakty jsou označeny ke smazání, ale nejsou smazány. Počkejte, prosím, na dokončení operace.",
|
||||
"Click to undo deletion of {num} contacts" => "Klikněte pro navrácení mazání {num} kontaktů",
|
||||
"Cancelled deletion of {num}" => "Mazání {num} položek zrušeno",
|
||||
@ -185,10 +186,10 @@
|
||||
"Edit current photo" => "Upravit současnou fotku",
|
||||
"Upload new photo" => "Nahrát novou fotku",
|
||||
"Select photo from ownCloud" => "Vybrat fotku z ownCloudu",
|
||||
"Select groups" => "Vybrat skupiny",
|
||||
"First name" => "Křestní jméno",
|
||||
"Additional names" => "Další jména",
|
||||
"Last name" => "Příjmení",
|
||||
"Select groups" => "Vybrat skupiny",
|
||||
"Nickname" => "Přezdívka",
|
||||
"Enter nickname" => "Zadejte přezdívku",
|
||||
"Title" => "Název",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "Derzeitiges Foto ändern",
|
||||
"Upload new photo" => "Neues Foto hochladen",
|
||||
"Select photo from ownCloud" => "Foto aus der ownCloud auswählen",
|
||||
"Select groups" => "Wähle Gruppen aus",
|
||||
"First name" => "Vorname",
|
||||
"Additional names" => "Zusätzliche Namen",
|
||||
"Last name" => "Nachname",
|
||||
"Select groups" => "Wähle Gruppen aus",
|
||||
"Nickname" => "Spitzname",
|
||||
"Enter nickname" => "Spitzname angeben",
|
||||
"Title" => "Titel",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "Der Name des Adressbuches darf nicht leer sein.",
|
||||
"Is this correct?" => "Ist das richtig?",
|
||||
"There was an unknown error when trying to delete this contact" => "Beim Löschen des Kontakts trat ein unbekannten Fehler auf.",
|
||||
"# groups" => "# Gruppen",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Einige zum Löschen vorgemerkte Kontakte wurden noch nicht gelöscht. Bitte warten.",
|
||||
"Click to undo deletion of {num} contacts" => "Klicken Sie hier um das Löschen von {num} Kontakten rückgängig zu machen",
|
||||
"Cancelled deletion of {num}" => "Das Löschen von {num} wurde abgebrochen.",
|
||||
@ -185,10 +186,10 @@
|
||||
"Edit current photo" => "Derzeitiges Foto ändern",
|
||||
"Upload new photo" => "Neues Foto hochladen",
|
||||
"Select photo from ownCloud" => "Foto aus der ownCloud auswählen",
|
||||
"Select groups" => "Wähle Gruppe",
|
||||
"First name" => "Vorname",
|
||||
"Additional names" => "Zusätzliche Namen",
|
||||
"Last name" => "Nachname",
|
||||
"Select groups" => "Wähle Gruppe",
|
||||
"Nickname" => "Spitzname",
|
||||
"Enter nickname" => "Spitzname angeben",
|
||||
"Title" => "Titel",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "Το όνομα του βιβλίου διευθύνσεων δεν πρέπει να είναι κενό.",
|
||||
"Is this correct?" => "Είναι σωστό;",
|
||||
"There was an unknown error when trying to delete this contact" => "Παρουσιάστηκε άγνωστο σφάλμα κατά τη διαγραφή αυτής της επαφής",
|
||||
"# groups" => "# ομάδες",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Κάποιες επαφές σημειώθηκαν προς διαγραφή,δεν έχουν διαγραφεί ακόμα. Παρακαλώ περιμένετε μέχρι να διαγραφούν.",
|
||||
"Click to undo deletion of {num} contacts" => "Κλικ για να αναιρέσετε τη διαγραφή {num} επαφών",
|
||||
"Cancelled deletion of {num}" => "Αναιρέθηκε η διαγραφή {num}",
|
||||
@ -188,6 +189,7 @@
|
||||
"First name" => "Όνομα",
|
||||
"Additional names" => "Επιπλέον ονόματα",
|
||||
"Last name" => "Επώνυμο",
|
||||
"Select groups" => "Επιλέξτε ομάδες",
|
||||
"Nickname" => "Παρατσούκλι",
|
||||
"Enter nickname" => "Εισάγετε παρατσούκλι",
|
||||
"Title" => "Τίτλος",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "Editar fotografía actual",
|
||||
"Upload new photo" => "Subir nueva fotografía",
|
||||
"Select photo from ownCloud" => "Seleccionar fotografía desde ownCloud",
|
||||
"Select groups" => "Seleccionar grupos",
|
||||
"First name" => "Nombre",
|
||||
"Additional names" => "Nombres adicionales",
|
||||
"Last name" => "Apellido",
|
||||
"Select groups" => "Seleccionar grupos",
|
||||
"Nickname" => "Alias",
|
||||
"Enter nickname" => "Introduce un alias",
|
||||
"Title" => "Título",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "Editar imagen actual",
|
||||
"Upload new photo" => "Subir nueva imagen",
|
||||
"Select photo from ownCloud" => "Seleccionar imagen desde ownCloud",
|
||||
"Select groups" => "Seleccionar grupos",
|
||||
"First name" => "Nombre",
|
||||
"Additional names" => "Segundo nombre",
|
||||
"Last name" => "Apellido",
|
||||
"Select groups" => "Seleccionar grupos",
|
||||
"Nickname" => "Sobrenombre",
|
||||
"Enter nickname" => "Escribí un sobrenombre",
|
||||
"Title" => "Título",
|
||||
|
@ -82,6 +82,7 @@
|
||||
"The address book name cannot be empty." => "Helbide-liburuaren izena ezin da hutsik egon.",
|
||||
"Is this correct?" => "Hau zuzena al da?",
|
||||
"There was an unknown error when trying to delete this contact" => "Errore ezezagun bat izan da kontaktu hau ezabatzeko orduan",
|
||||
"# groups" => "# taldeak",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Kontaktu batzuk ezabatzeko markatuta daude, baina oraindik ez dira ezabatu. Mesedez itxoin ezabatu arte.",
|
||||
"Click to undo deletion of {num} contacts" => "Klikatu {num} kontaktuen ezabaketa desegiteko",
|
||||
"Cancelled deletion of {num}" => "{num}en ezabaketa ezeztatuta",
|
||||
@ -187,6 +188,7 @@
|
||||
"First name" => "Izena",
|
||||
"Additional names" => "Tarteko izenak",
|
||||
"Last name" => "Abizena",
|
||||
"Select groups" => "Hautatu taldeak",
|
||||
"Nickname" => "Ezizena",
|
||||
"Enter nickname" => "Sartu ezizena",
|
||||
"Title" => "Izenburua",
|
||||
|
@ -2,6 +2,7 @@
|
||||
"Error (de)activating addressbook." => "Virhe osoitekirjan (de)aktivoinnissa ",
|
||||
"id is not set." => "Tunnistetta (ID) ei ole asetettu.",
|
||||
"Cannot update addressbook with an empty name." => "Osoitekirjaa ei voida päivittää, koska nimi on tyhjä.",
|
||||
"Error adding group." => "Virhe ryhmää lisättäessä.",
|
||||
"No ID provided" => "Tunnistetta (ID) ei ole tarjottu",
|
||||
"Error setting checksum." => "Virhe asettaessa tarkistussummaa.",
|
||||
"No categories selected for deletion." => "Luokkia ei ole valittu poistettavaksi.",
|
||||
@ -10,6 +11,7 @@
|
||||
"element name is not set." => "kohteen nimeä ei ole asetettu.",
|
||||
"checksum is not set." => "tarkistussummaa ei ole asetettu.",
|
||||
"Information about vCard is incorrect. Please reload the page." => "vCardin tiedot eivät kelpaa. Lataa sivu uudelleen.",
|
||||
"Couldn't find vCard for %d." => "Kohteelle %d ei löytynyt vCardia.",
|
||||
"Information about vCard is incorrect. Please reload the page: " => "vCard osoitetietueen tiedot ovat virheelliset. Virkistä sivu uudestaan: ",
|
||||
"Something went FUBAR. " => "Jokin meni pahasti pieleen.",
|
||||
"Missing IM parameter." => "Puuttuva IM-arvo.",
|
||||
@ -154,6 +156,7 @@
|
||||
"Add new contact" => "Lisää uusi yhteystieto",
|
||||
"Add new addressbook" => "Lisää uusi osoitekirja",
|
||||
"Delete current contact" => "Poista nykyinen yhteystieto",
|
||||
"<h3>You have no contacts in your addressbook.</h3><p>Add a new contact or import existing contacts from a VCF file.</p>" => "<h3>Osoitekirjassasi ei ole yhteystietoja.</h3><p>Lisää uusi yhteystieto tai tuo olemassa olevia yhteystietoja VCF-tiedostosta.</p>",
|
||||
"Add contact" => "Lisää yhteystieto",
|
||||
"Compose mail" => "Lähetä sähköpostia",
|
||||
"Delete group" => "Poista ryhmä",
|
||||
@ -161,10 +164,10 @@
|
||||
"Edit current photo" => "Muokkaa nykyistä valokuvaa",
|
||||
"Upload new photo" => "Lähetä uusi valokuva",
|
||||
"Select photo from ownCloud" => "Valitse valokuva ownCloudista",
|
||||
"Select groups" => "Valitse ryhmät",
|
||||
"First name" => "Etunimi",
|
||||
"Additional names" => "Lisänimet",
|
||||
"Last name" => "Sukunimi",
|
||||
"Select groups" => "Valitse ryhmät",
|
||||
"Nickname" => "Kutsumanimi",
|
||||
"Enter nickname" => "Anna kutsumanimi",
|
||||
"Title" => "Otsikko",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "Editer la photo actuelle",
|
||||
"Upload new photo" => "Envoyer une nouvelle photo",
|
||||
"Select photo from ownCloud" => "Sélectionner une photo depuis ownCloud",
|
||||
"Select groups" => "Sélectionnez les groupes",
|
||||
"First name" => "Prénom",
|
||||
"Additional names" => "Nom supplémentaires",
|
||||
"Last name" => "Nom",
|
||||
"Select groups" => "Sélectionnez les groupes",
|
||||
"Nickname" => "Surnom",
|
||||
"Enter nickname" => "Entrer un surnom",
|
||||
"Title" => "Titre",
|
||||
|
@ -129,10 +129,10 @@
|
||||
"Edit current photo" => "Aktuális kép szerkesztése",
|
||||
"Upload new photo" => "Új kép feltöltése",
|
||||
"Select photo from ownCloud" => "Kép kiválasztása ownCloud-ból",
|
||||
"Select groups" => "Csoportok kiválasztása",
|
||||
"First name" => "Keresztnév",
|
||||
"Additional names" => "További nevek",
|
||||
"Last name" => "Vezetéknév",
|
||||
"Select groups" => "Csoportok kiválasztása",
|
||||
"Nickname" => "Becenév",
|
||||
"Enter nickname" => "Becenév megadása",
|
||||
"Title" => "Felirat",
|
||||
|
@ -37,6 +37,7 @@
|
||||
"Close" => "tutup",
|
||||
"Nickname" => "nama panggilan",
|
||||
"Enter nickname" => "masukkan nama panggilan",
|
||||
"Title" => "Judul",
|
||||
"Organization" => "organisasi",
|
||||
"Birthday" => "tanggal lahir",
|
||||
"Add" => "tambah",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "Il nome della rubrica non può essere vuoto.",
|
||||
"Is this correct?" => "È corretto?",
|
||||
"There was an unknown error when trying to delete this contact" => "Si è verificato un errore durante il tentativo di eliminare il contatto.",
|
||||
"# groups" => "# gruppi",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Alcuni contatti sono marcati per l'eliminazione, ma non sono stati ancora rimossi. Attendi fino al completamento dell'operazione.",
|
||||
"Click to undo deletion of {num} contacts" => "Un clic per annullare l'eliminazione di {num} contatti",
|
||||
"Cancelled deletion of {num}" => "Eliminazione di {num} annullata",
|
||||
@ -185,10 +186,10 @@
|
||||
"Edit current photo" => "Modifica la foto corrente",
|
||||
"Upload new photo" => "Invia una nuova foto",
|
||||
"Select photo from ownCloud" => "Seleziona la foto da ownCloud",
|
||||
"Select groups" => "Seleziona gruppi",
|
||||
"First name" => "Nome",
|
||||
"Additional names" => "Nomi aggiuntivi",
|
||||
"Last name" => "Cognome",
|
||||
"Select groups" => "Seleziona gruppi",
|
||||
"Nickname" => "Pseudonimo",
|
||||
"Enter nickname" => "Inserisci pseudonimo",
|
||||
"Title" => "Titolo",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "アドレス帳名は空に出来ません。",
|
||||
"Is this correct?" => "これは正しいですか?",
|
||||
"There was an unknown error when trying to delete this contact" => "この連絡先の削除時に不明なエラーが発生しました",
|
||||
"# groups" => "グループ数",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "いくつかの連絡先が削除対象としてマークされていますが、まだ削除されていません。削除するまでお待ちください。",
|
||||
"Click to undo deletion of {num} contacts" => "{num} 個の連絡先の削除を元に戻す",
|
||||
"Cancelled deletion of {num}" => "{num} 個の削除をキャンセルしました",
|
||||
@ -185,10 +186,10 @@
|
||||
"Edit current photo" => "現在の写真を編集",
|
||||
"Upload new photo" => "新しい写真をアップロード",
|
||||
"Select photo from ownCloud" => "ownCloudから写真を選択",
|
||||
"Select groups" => "グループを選択",
|
||||
"First name" => "名",
|
||||
"Additional names" => "ミドルネーム",
|
||||
"Last name" => "姓",
|
||||
"Select groups" => "グループを選択",
|
||||
"Nickname" => "ニックネーム",
|
||||
"Enter nickname" => "ニックネームを入力",
|
||||
"Title" => "タイトル",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "현재 사진 편집",
|
||||
"Upload new photo" => "새로운 사진 업로드",
|
||||
"Select photo from ownCloud" => "ownCloud에서 사진 선택",
|
||||
"Select groups" => "그룹 선택",
|
||||
"First name" => "이름",
|
||||
"Additional names" => "추가 이름",
|
||||
"Last name" => "성",
|
||||
"Select groups" => "그룹 선택",
|
||||
"Nickname" => "별명",
|
||||
"Enter nickname" => "별명 입력",
|
||||
"Title" => "직위",
|
||||
|
@ -85,6 +85,7 @@
|
||||
"Additional names" => "Nama tambahan",
|
||||
"Nickname" => "Nama Samaran",
|
||||
"Enter nickname" => "Masukkan nama samaran",
|
||||
"Title" => "Judul",
|
||||
"Organization" => "Organisasi",
|
||||
"Birthday" => "Hari lahir",
|
||||
"Add" => "Tambah",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "De naam van het adresboek mag niet leeg zijn.",
|
||||
"Is this correct?" => "Is dit correct?",
|
||||
"There was an unknown error when trying to delete this contact" => "Er is een onbekende fout opgetreden bij het verwijderen van deze contactpersoon",
|
||||
"# groups" => "# groepen",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Enkele contacten zijn gemarkeerd om verwijderd te worden, maar zijn nog niet verwijderd. Wacht totdat ze zijn verwijderd.",
|
||||
"Click to undo deletion of {num} contacts" => "Klik om het verwijderen van {num} contactpersonen ongedaan te maken.",
|
||||
"Cancelled deletion of {num}" => "Verwijderen geannuleerd van {num}",
|
||||
@ -185,10 +186,10 @@
|
||||
"Edit current photo" => "Wijzig huidige foto",
|
||||
"Upload new photo" => "Upload nieuwe foto",
|
||||
"Select photo from ownCloud" => "Selecteer foto uit ownCloud",
|
||||
"Select groups" => "Selecteer groepen",
|
||||
"First name" => "Voornaam",
|
||||
"Additional names" => "Extra namen",
|
||||
"Last name" => "Achternaam",
|
||||
"Select groups" => "Selecteer groepen",
|
||||
"Nickname" => "Roepnaam",
|
||||
"Enter nickname" => "Voer roepnaam in",
|
||||
"Title" => "Titel",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "Edytuj aktualne zdjęcie",
|
||||
"Upload new photo" => "Wczytaj nowe zdjęcie",
|
||||
"Select photo from ownCloud" => "Wybierz zdjęcie z ownCloud",
|
||||
"Select groups" => "Wybierz grupy",
|
||||
"First name" => "Imię",
|
||||
"Additional names" => "Dodatkowe nazwy",
|
||||
"Last name" => "Nazwisko",
|
||||
"Select groups" => "Wybierz grupy",
|
||||
"Nickname" => "Nazwa",
|
||||
"Enter nickname" => "Wpisz nazwę",
|
||||
"Title" => "Tytuł",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "O nome do livro de endereços não pode estar vazio.",
|
||||
"Is this correct?" => "Isto está correcto?",
|
||||
"There was an unknown error when trying to delete this contact" => "Houve um erro desconhecido enquanto tentava eliminar este contacto.",
|
||||
"# groups" => "# grupos",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Alguns contactos forma marcados para apagar, mas ainda não foram apagados. Por favor espere que ele sejam apagados.",
|
||||
"Click to undo deletion of {num} contacts" => "Clique para desfazer a eliminar de {num} contactos",
|
||||
"Cancelled deletion of {num}" => "Cancelada a eliminação de {num} contactos",
|
||||
@ -185,10 +186,10 @@
|
||||
"Edit current photo" => "Editar a foto actual",
|
||||
"Upload new photo" => "Carregar nova foto",
|
||||
"Select photo from ownCloud" => "Selecionar uma foto da ownCloud",
|
||||
"Select groups" => "Seleccionar Grupos",
|
||||
"First name" => "Primeiro Nome",
|
||||
"Additional names" => "Nomes adicionais",
|
||||
"Last name" => "Ultimo Nome",
|
||||
"Select groups" => "Seleccionar Grupos",
|
||||
"Nickname" => "Alcunha",
|
||||
"Enter nickname" => "Introduza alcunha",
|
||||
"Title" => "Titulo ",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "Редактировать текущую фотографию",
|
||||
"Upload new photo" => "Загрузить новую фотографию",
|
||||
"Select photo from ownCloud" => "Выбрать фотографию из ownCloud",
|
||||
"Select groups" => "Выбрать группу",
|
||||
"First name" => "Имя",
|
||||
"Additional names" => "Отчество",
|
||||
"Last name" => "Фамилия",
|
||||
"Select groups" => "Выбрать группу",
|
||||
"Nickname" => "Псевдоним",
|
||||
"Enter nickname" => "Введите псевдоним",
|
||||
"Title" => "Заголовок",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "Upraviť súčasnú fotku",
|
||||
"Upload new photo" => "Nahrať novú fotku",
|
||||
"Select photo from ownCloud" => "Vybrať fotku z ownCloud",
|
||||
"Select groups" => "Vyber skupiny",
|
||||
"First name" => "Krstné meno",
|
||||
"Additional names" => "Ďalšie mená",
|
||||
"Last name" => "Priezvisko",
|
||||
"Select groups" => "Vyber skupiny",
|
||||
"Nickname" => "Prezývka",
|
||||
"Enter nickname" => "Zadajte prezývku",
|
||||
"Title" => "Nadpis",
|
||||
|
@ -185,10 +185,10 @@
|
||||
"Edit current photo" => "Redigera aktuellt foto",
|
||||
"Upload new photo" => "Ladda upp ett nytt foto",
|
||||
"Select photo from ownCloud" => "Välj foto från ownCloud",
|
||||
"Select groups" => "Välj grupper",
|
||||
"First name" => "Förnamn",
|
||||
"Additional names" => "Mellannamn",
|
||||
"Last name" => "Efternamn",
|
||||
"Select groups" => "Välj grupper",
|
||||
"Nickname" => "Smeknamn",
|
||||
"Enter nickname" => "Ange smeknamn",
|
||||
"Title" => "Titel",
|
||||
|
@ -83,6 +83,7 @@
|
||||
"The address book name cannot be empty." => "Ім'я адресної книги не може бути порожнім.",
|
||||
"Is this correct?" => "Це вірно?",
|
||||
"There was an unknown error when trying to delete this contact" => "Виникла невідома помилка при спробі видалити цей контакт",
|
||||
"# groups" => "# груп",
|
||||
"Some contacts are marked for deletion, but not deleted yet. Please wait for them to be deleted." => "Деякі контакти помічено для видалення, але ще не видалені. Будь ласка, зачекайте, доки вони будуть видалені.",
|
||||
"Click to undo deletion of {num} contacts" => "Натисніть для відміни видалення {num} контактів",
|
||||
"Cancelled deletion of {num}" => "Відмінено видалення {num}",
|
||||
@ -188,6 +189,7 @@
|
||||
"First name" => "Ім'я",
|
||||
"Additional names" => "Додаткові імена",
|
||||
"Last name" => "Прізвище",
|
||||
"Select groups" => "Оберіть групи",
|
||||
"Nickname" => "Прізвисько",
|
||||
"Enter nickname" => "Ввести прізвисько",
|
||||
"Title" => "Назва",
|
||||
|
@ -178,10 +178,10 @@
|
||||
"Edit current photo" => "编辑当前照片",
|
||||
"Upload new photo" => "上传新照片",
|
||||
"Select photo from ownCloud" => "从 ownCloud 选择照片",
|
||||
"Select groups" => "选择分组",
|
||||
"First name" => "名",
|
||||
"Additional names" => "其他名称",
|
||||
"Last name" => "姓",
|
||||
"Select groups" => "选择分组",
|
||||
"Nickname" => "昵称",
|
||||
"Enter nickname" => "输入昵称",
|
||||
"Title" => "标题",
|
||||
|
@ -172,11 +172,10 @@
|
||||
</ul>
|
||||
<a class="favorite action {favorite}"></a>
|
||||
</div>
|
||||
<select id="contactgroups" class="value propertycontainer" data-element="categories" title="<?php echo $l->t('Select groups'); ?>" name="value" multiple></select>
|
||||
<div class="singleproperties">
|
||||
<input data-element="fn" class="fullname value propertycontainer" type="text" name="value" value="{name}" required />
|
||||
<a class="action edit"></a>
|
||||
<fieldset class="n hidden editor propertycontainer" data-element="n">
|
||||
<fieldset class="n hidden editor propertycontainer" data-element="n">
|
||||
<ul>
|
||||
<li>
|
||||
<input class="value tooltipped rightwards onfocus" type="text" id="n_1" name="value[1]" value="{n1}"
|
||||
@ -197,6 +196,9 @@
|
||||
<input class="value" type="hidden" id="n_3" name="value[3]" value="{n3}" />
|
||||
<input class="value" type="hidden" id="n_4" name="value[4]" value="{n4}" />
|
||||
</fieldset>
|
||||
<div class="groupscontainer propertycontainer" data-element="categories">
|
||||
<select id="contactgroups" title="<?php echo $l->t('Select groups'); ?>" name="value" multiple></select>
|
||||
</div>
|
||||
<dl class="form">
|
||||
<dt data-element="nickname">
|
||||
<?php echo $l->t('Nickname'); ?>
|
||||
@ -262,6 +264,7 @@
|
||||
<select class="add action text button" id="addproperty">
|
||||
<option value=""><?php echo $l->t('Add'); ?></option>
|
||||
<option value="ORG"><?php echo $l->t('Organization'); ?></option>
|
||||
<option value="TITLE"><?php echo $l->t('Title'); ?></option>
|
||||
<option value="NICKNAME"><?php echo $l->t('Nickname'); ?></option>
|
||||
<option value="BDAY"><?php echo $l->t('Birthday'); ?></option>
|
||||
<option value="TEL"><?php echo $l->t('Phone'); ?></option>
|
||||
@ -270,7 +273,6 @@
|
||||
<option value="ADR"><?php echo $l->t('Address'); ?></option>
|
||||
<option value="NOTE"><?php echo $l->t('Note'); ?></option>
|
||||
<option value="URL"><?php echo $l->t('Web site'); ?></option>
|
||||
<option value="CATEGORIES"><?php echo $l->t('Groups'); ?></option>
|
||||
</select>
|
||||
<button class="delete action text float right tooltipped downwards" title="<?php echo $l->t('Delete contact'); ?>"><?php echo $l->t('Delete'); ?></button>
|
||||
</footer>
|
||||
|
Loading…
Reference in New Issue
Block a user