]> source.dussan.org Git - nextcloud-server.git/commitdiff
Added some check for when addinf deleting contacts.
authorThomas Tanghus <thomas@tanghus.net>
Tue, 14 Feb 2012 09:34:52 +0000 (10:34 +0100)
committerThomas Tanghus <thomas@tanghus.net>
Tue, 14 Feb 2012 09:36:22 +0000 (10:36 +0100)
apps/contacts/ajax/loadintro.php [new file with mode: 0644]
apps/contacts/js/contacts.js
apps/contacts/templates/part.no_contacts.php

diff --git a/apps/contacts/ajax/loadintro.php b/apps/contacts/ajax/loadintro.php
new file mode 100644 (file)
index 0000000..d3249c1
--- /dev/null
@@ -0,0 +1,62 @@
+<?php
+/**
+ * ownCloud - Addressbook
+ *
+ * @author Thomas Tanghus
+ * @copyright 2012 Thomas Tanghus <thomas@tanghus.net>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * 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/>.
+ *
+ */
+
+// Init owncloud
+require_once('../../../lib/base.php');
+function bailOut($msg) {
+       OC_JSON::error(array('data' => array('message' => $msg)));
+       OC_Log::write('contacts','ajax/newcontact.php: '.$msg, OC_Log::DEBUG);
+       exit();
+}
+function debug($msg) {
+       OC_Log::write('contacts','ajax/newcontact.php: '.$msg, OC_Log::DEBUG);
+}
+// foreach ($_POST as $key=>$element) {
+//     debug('_POST: '.$key.'=>'.$element);
+// }
+
+// Check if we are a user
+OC_JSON::checkLoggedIn();
+OC_JSON::checkAppEnabled('contacts');
+
+// $addressbooks = OC_Contacts_Addressbook::all(OC_USER::getUser());
+// 
+// $upload_max_filesize = OC_Helper::computerFileSize(ini_get('upload_max_filesize'));
+// $post_max_size = OC_Helper::computerFileSize(ini_get('post_max_size'));
+// $maxUploadFilesize = min($upload_max_filesize, $post_max_size);
+// 
+// $freeSpace=OC_Filesystem::free_space('/');
+// $freeSpace=max($freeSpace,0);
+// $maxUploadFilesize = min($maxUploadFilesize ,$freeSpace);
+// $adr_types = OC_Contacts_App::getTypesOfProperty('ADR');
+// $phone_types = OC_Contacts_App::getTypesOfProperty('TEL');
+
+$tmpl = new OC_Template('contacts','part.no_contacts');
+// $tmpl->assign('uploadMaxFilesize', $maxUploadFilesize);
+// $tmpl->assign('uploadMaxHumanFilesize', OC_Helper::humanFileSize($maxUploadFilesize));
+// $tmpl->assign('adr_types',$adr_types);
+// $tmpl->assign('phone_types',$phone_types);
+// $tmpl->assign('addressbooks',$addressbooks);
+// $tmpl->assign('id','');
+$page = $tmpl->fetchPage();
+
+OC_JSON::success(array('data' => array( 'page' => $page )));
index d61489b63c30169dc827cd47af62c8772bcca084..6effbdd3ee4972dc18dda227ecfdaf5586a59081 100644 (file)
@@ -132,7 +132,10 @@ Contacts={
                        $('#carddav_url_close').show();
                },
                messageBox:function(title, msg) {
-                       //alert(msg);
+                       if(msg.toLowerCase().indexOf('auth') > 0) {
+                               // fugly hack, I know
+                               alert(msg);
+                       }
                        if($('#messagebox').dialog('isOpen') == true){
                                // NOTE: Do we ever get here?
                                $('#messagebox').dialog('moveToTop');
@@ -253,6 +256,50 @@ Contacts={
                                //$.get(OC.linkTo('contacts', 'export.php'),{'contactid':this.id},function(jsondata){
                                //});
                        },
+                       import:function(){
+                               Contacts.UI.notImplemented();
+                       },
+                       add:function(n, fn, aid){ // add a new contact
+                               console.log('Add contact: ' + n + ', ' + fn + ' ' + aid);
+                               $.post(OC.filePath('contacts', 'ajax', 'addcontact.php'), { n: n, fn: fn, aid: aid },
+                                 function(jsondata) {
+                                       if (jsondata.status == 'success'){
+                                               $('#rightcontent').data('id',jsondata.data.id);
+                                               var id = jsondata.data.id;
+                                               $.getJSON('ajax/contactdetails.php',{'id':id},function(jsondata){
+                                                       if(jsondata.status == 'success'){
+                                                               Contacts.UI.loadHandlers();
+                                                               Contacts.UI.Card.loadContact(jsondata.data);
+                                                               $('#leftcontent .active').removeClass('active');
+                                                               var item = '<li data-id="'+jsondata.data.id+'" class="active"><a href="index.php?id='+jsondata.data.id+'"  style="background: url(thumbnail.php?id='+jsondata.data.id+') no-repeat scroll 0% 0% transparent;">'+Contacts.UI.Card.fn+'</a></li>';
+                                                               var added = false;
+                                                               $('#leftcontent ul li').each(function(){
+                                                                       if ($(this).text().toLowerCase() > Contacts.UI.Card.fn.toLowerCase()) {
+                                                                               $(this).before(item).fadeIn('fast');
+                                                                               added = true;
+                                                                               return false;
+                                                                       }
+                                                               });
+                                                               if(!added) {
+                                                                       $('#leftcontent ul').append(item);
+                                                               }
+                                                               
+                                                       }
+                                                       else{
+                                                               Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
+                                                               //alert(jsondata.data.message);
+                                                       }
+                                               });
+                                               $('#contact_identity').show();
+                                               $('#actionbar').show();
+                                               // TODO: Add to contacts list.
+                                       }
+                                       else{
+                                               Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
+                                               //alert(jsondata.data.message);
+                                       }
+                               });
+                       },
                        delete:function() {
                                $('#contacts_deletecard').tipsy('hide');
                                $.getJSON('ajax/deletecard.php',{'id':this.id},function(jsondata){
@@ -262,17 +309,31 @@ Contacts={
                                                //$('#rightcontent').empty();
                                                this.id = this.fn = this.fullname = this.shortname = this.famname = this.givname = this.addname = this.honpre = this.honsuf = '';
                                                this.data = undefined;
-                                               // Load empty page.
-                                               var firstid = $('#contacts li:first-child').data('id');
-                                               console.log('trying to load: ' + firstid);
-                                               $.getJSON(OC.filePath('contacts', 'ajax', 'contactdetails.php'),{'id':firstid},function(jsondata){
-                                                       if(jsondata.status == 'success'){
-                                                               Contacts.UI.Card.loadContact(jsondata.data);
-                                                       }
-                                                       else{
-                                                               Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
-                                                       }
-                                               });
+                                               // Load first in list.
+                                               if($('#contacts li').length > 0) {
+                                                       var firstid = $('#contacts li:first-child').data('id');
+                                                       console.log('trying to load: ' + firstid);
+                                                       $.getJSON(OC.filePath('contacts', 'ajax', 'contactdetails.php'),{'id':firstid},function(jsondata){
+                                                               if(jsondata.status == 'success'){
+                                                                       Contacts.UI.Card.loadContact(jsondata.data);
+                                                               }
+                                                               else{
+                                                                       Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
+                                                               }
+                                                       });
+                                               } else {
+                                                       // load intro page
+                                                       $.getJSON('ajax/loadintro.php',{},function(jsondata){
+                                                               if(jsondata.status == 'success'){
+                                                                       id = '';
+                                                                       $('#rightcontent').data('id','');
+                                                                       $('#rightcontent').html(jsondata.data.page);
+                                                               }
+                                                               else{
+                                                                       Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
+                                                               }
+                                                       });
+                                               }
                                        }
                                        else{
                                                Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
@@ -285,6 +346,7 @@ Contacts={
                                $('#contact_communication').hide();
                                this.data = jsondata;
                                this.id = this.data.id;
+                               $('#rightcontent').data('id',this.id);
                                //console.log('loaded: ' + this.data.FN[0]['value']);
                                this.populateNameFields();
                                this.loadPhoto();
@@ -397,47 +459,6 @@ Contacts={
                                                $('#rightcontent').html(jsondata.data.page);
                                                Contacts.UI.Card.editName();
                                        }
-                                       else{
-                                               Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
-                                               alert(jsondata.data.message);
-                                       }
-                               });
-                       },
-                       add:function(n, fn, aid){ // add a new contact
-                               console.log('Add contact: ' + n + ', ' + fn + ' ' + aid);
-                               $.post(OC.filePath('contacts', 'ajax', 'addcontact.php'), { n: n, fn: fn, aid: aid },
-                                 function(jsondata) {
-                                       if (jsondata.status == 'success'){
-                                               $('#rightcontent').data('id',jsondata.data.id);
-                                               var id = jsondata.data.id;
-                                               $.getJSON('ajax/contactdetails.php',{'id':id},function(jsondata){
-                                                       if(jsondata.status == 'success'){
-                                                               Contacts.UI.loadHandlers();
-                                                               Contacts.UI.Card.loadContact(jsondata.data);
-                                                               $('#leftcontent .active').removeClass('active');
-                                                               var item = '<li data-id="'+jsondata.data.id+'" class="active"><a href="index.php?id='+jsondata.data.id+'"  style="background: url(thumbnail.php?id='+jsondata.data.id+') no-repeat scroll 0% 0% transparent;">'+Contacts.UI.Card.fn+'</a></li>';
-                                                               var added = false;
-                                                               $('#leftcontent ul li').each(function(){
-                                                                       if ($(this).text().toLowerCase() > Contacts.UI.Card.fn.toLowerCase()) {
-                                                                               $(this).before(item).fadeIn('fast');
-                                                                               added = true;
-                                                                               return false;
-                                                                       }
-                                                               });
-                                                               if(!added) {
-                                                                       $('#leftcontent ul').append(item);
-                                                               }
-                                                               
-                                                       }
-                                                       else{
-                                                               Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
-                                                               //alert(jsondata.data.message);
-                                                       }
-                                               });
-                                               $('#contact_identity').show();
-                                               $('#actionbar').show();
-                                               // TODO: Add to contacts list.
-                                       }
                                        else{
                                                Contacts.UI.messageBox(t('contacts', 'Error'), jsondata.data.message);
                                                //alert(jsondata.data.message);
index ab6129cdde7843ec93637067f98ca19b4d682155..f58fdef09f0106ea95a373d9f62fd347eb26a241 100644 (file)
@@ -2,7 +2,7 @@
 You have no contacts in your list.
        <div id="selections">
                <input type="button" value="Import contacts" onclick="Contacts.UI.Addressbooks.import()" />
-               <input type="button" value="Add contact" onclick="Contacts.UI.Card.add()" />
+               <input type="button" value="Add contact" onclick="Contacts.UI.Card.editNew()" />
                <input type="button" value="Edit addressbooks" onclick="Contacts.UI.Addressbooks.overview()" />
        </div>
 </div>
\ No newline at end of file