]> source.dussan.org Git - nextcloud-server.git/commitdiff
More fixes on saving TYPE parameters.
authorThomas Tanghus <thomas@tanghus.net>
Tue, 10 Jan 2012 13:59:31 +0000 (14:59 +0100)
committerThomas Tanghus <thomas@tanghus.net>
Tue, 10 Jan 2012 13:59:31 +0000 (14:59 +0100)
Use jQuery Dialog for error messages instead of alert()

apps/contacts/ajax/addcard.php
apps/contacts/ajax/addproperty.php
apps/contacts/js/interface.js
apps/contacts/templates/index.php

index 9d782246a0acec2fbcb657e94493be959a136827..54e4faa6ed98914ecf77040f5c4fcbebbea856cc 100644 (file)
@@ -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());
 
index 0122cf019c7fb151d648bd37fb077283b22cc40d..0f76add3c9bc0f11b56f5578e7fbf8bb54adce5c 100644 (file)
@@ -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);
        }
 }
 
index 187c8941dcf2dc0c369057bd97f0737a611608b3..4a27073c156bb52bfd6cd0839b54f0c153b891b5 100644 (file)
@@ -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');
 });
index 90143f25fa6c158d92269d7e86deadadf2b1e2db..24484231af44d8b681e675afb535827fdf644c0e 100644 (file)
@@ -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 -->