Skip to content
Snippets Groups Projects
Commit e316cddf authored by Thomas Tanghus's avatar Thomas Tanghus
Browse files

More fixes on saving TYPE parameters.

Use jQuery Dialog for error messages instead of alert()
parent 60653c05
No related branches found
No related tags found
No related merge requests found
......@@ -54,11 +54,24 @@ foreach( $add as $propname){
$value = $values[$propname];
if( isset( $parameters[$propname] ) && count( $parameters[$propname] )){
$prop_parameters = $parameters[$propname];
}
else{
$prop_parameters = array();
}
$vcard->addProperty($propname, $value, $prop_parameters);
$vcard->addProperty($propname, $value); //, $prop_parameters);
$line = count($vcard->children) - 1;
foreach ($prop_parameters as $key=>$element) {
if(is_array($element) && strtoupper($key) == 'TYPE') {
// FIXME: Maybe this doesn't only apply for TYPE?
// And it probably shouldn't be done here anyways :-/
foreach($element as $e){
if($e != '' && !is_null($e)){
$vcard->children[$line]->parameters[] = new Sabre_VObject_Parameter($key,$e);
}
}
} else {
$vcard->children[$line]->parameters[] = new Sabre_VObject_Parameter($key,$element);
}
}
}
$id = OC_Contacts_VCard::add($aid,$vcard->serialize());
......
......@@ -48,6 +48,8 @@ foreach ($parameters as $key=>$element) {
$vcard->children[$line]->parameters[] = new Sabre_VObject_Parameter($key,$e);
}
}
} else {
$vcard->children[$line]->parameters[] = new Sabre_VObject_Parameter($key,$element);
}
}
......
......@@ -18,9 +18,6 @@
* You should have received a copy of the GNU Affero General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
* TODO:
* If you add a contact, its thumbnail doesnt show in the list. But when you add another one it shows up, but not for the second contact added.
* Place a new contact in correct alphabetic order
*/
......@@ -31,6 +28,20 @@ Contacts={
$('#carddav_url').show();
$('#carddav_url_close').show();
},
messageBox:function(title, msg) {
var $dialog = $('<div></div>')
.html(msg)
.dialog({
autoOpen: true,
title: title,buttons: [
{
text: "Ok",
click: function() { $(this).dialog("close"); }
}
]
}
);
},
Addressbooks:{
overview:function(){
if($('#chooseaddressbook_dialog').dialog('isOpen') == true){
......@@ -85,7 +96,8 @@ Contacts={
Contacts.UI.Contacts.update();
Contacts.UI.Addressbooks.overview();
} else {
alert('Error: ' + data.message);
Contacts.UI.messageBox('Error', data.message);
//alert('Error: ' + data.message);
}
});
}
......@@ -114,37 +126,29 @@ Contacts={
}
},
Contacts:{
/**
* Reload the contacts list.
*/
update:function(){
$.getJSON('ajax/contacts.php',{},function(jsondata){
if(jsondata.status == 'success'){
$('#contacts').html(jsondata.data.page);
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error',jsondata.data.message);
//alert(jsondata.data.message);
}
});
/*
var contactlist = $('#contacts');
var contacts = contactlist.children('li').get();
//alert(contacts);
contacts.sort(function(a, b) {
var compA = $(a).text().toUpperCase();
var compB = $(b).text().toUpperCase();
return (compA < compB) ? -1 : (compA > compB) ? 1 : 0;
})
$.each(contacts, function(idx, itm) { contactlist.append(itm); });
*/
setTimeout(Contacts.UI.Contacts.lazyupdate(), 500);
setTimeout(Contacts.UI.Contacts.lazyupdate, 500);
},
/**
* Add thumbnails to the contact list as they become visible in the viewport.
*/
lazyupdate:function(){
//alert('lazyupdate');
$('#contacts li').live('inview', function(){
if (!$(this).find('a').attr('style')) {
//alert($(this).data('id') + ' has background: ' + $(this).attr('style'));
$(this).find('a').css('background','url(thumbnail.php?id='+$(this).data('id')+') no-repeat');
}/* else {
alert($(this).data('id') + ' has style ' + $(this).attr('style').match('url'));
}*/
}
});
}
}
......@@ -168,7 +172,8 @@ $(document).ready(function(){
$('#leftcontent li[data-id="'+jsondata.data.id+'"]').addClass('active');
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
});
return false;
......@@ -183,7 +188,8 @@ $(document).ready(function(){
$('#rightcontent').empty();
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
});
return false;
......@@ -197,7 +203,8 @@ $(document).ready(function(){
$('#contacts_addproperty').hide();
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
});
return false;
......@@ -226,7 +233,8 @@ $(document).ready(function(){
$('#contacts_addpropertyform').before(jsondata.data.page);
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
}, 'json');
return false;
......@@ -248,7 +256,8 @@ $(document).ready(function(){
.find('select').chosen();
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
});
return false;
......@@ -277,7 +286,8 @@ $(document).ready(function(){
}
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
}, 'json');
return false;
......@@ -291,7 +301,8 @@ $(document).ready(function(){
.find('select').chosen();
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
});
return false;
......@@ -303,7 +314,8 @@ $(document).ready(function(){
$('.contacts_property[data-checksum="'+jsondata.data.oldchecksum+'"]').replaceWith(jsondata.data.page);
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
},'json');
return false;
......@@ -317,7 +329,8 @@ $(document).ready(function(){
$('.contacts_property[data-checksum="'+checksum+'"]').remove();
}
else{
alert(jsondata.data.message);
Contacts.UI.messageBox('Error', jsondata.data.message);
//alert(jsondata.data.message);
}
});
return false;
......@@ -357,4 +370,5 @@ $(document).ready(function(){
$('.action').tipsy();
$('.button').tipsy();
//Contacts.UI.messageBox('Hello','Sailor');
});
......@@ -31,7 +31,4 @@ OC_Util::addStyle('contacts','formtastic');
</div>
<!-- Dialogs -->
<div id="dialog_holder"></div>
<div id="parsingfail_dialog" title="Parsing Fail">
<?php echo $l->t("There was a fail, while parsing the file."); ?>
</div>
<!-- End of Dialogs -->
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment