Zpush issue with Nextcloud Carddav?

Hi,
Currently using nextcloud 14.03 working great with zpush. The issue im having is that the contacts do not sync with zpush. Whats odd is that the calendar, tasks work perfectly. I checked the error logs but nothing odd

when i copy the URL of the contact page on next cloud

https://mail.mydomain.com/remote.php/dav/addressbooks/users/myusername/contacts/

 // ************************
  //  BackendCardDAV settings
// ************************

 // Server protocol: http or https
 define('CARDDAV_PROTOCOL', 'https');

  // Server name
   define('CARDDAV_SERVER', 'mail.mydomain,.com');

 // Server port
  define('CARDDAV_PORT', '443');

// Server path to the addressbook, or the principal with the addressbooks
//  If your user has more than 1 addressbook point it to the principal.
   //  Example: user test@domain.com will have 2 addressbooks
   //      http://localhost/caldav.php/test@domain.com/addresses/personal
//      http://localhost/caldav.php/test@domain.com/addresses/work
   //      You set the CARDDAV_PATH to '/caldav.php/%u/addresses/' and personal and work will be autodiscovered
  // %u: replaced with the username
 // %d: replaced with the domain
 //   Add the trailing /
   define('CARDDAV_PATH', '/remote.php/dav/addressbooks/users/%u/contacts/');


  // Server path to the default addressbook
   //  Mobile device will create new contacts here. It must be under CARDDAV_PATH
 // %u: replaced with the username
   // %d: replaced with the domain
   //   Add the trailing /
 define('CARDDAV_DEFAULT_PATH', '/remote.php/dav/addressbooks/users/%u/contacts/');

       // Server path to the GAL addressbook. This addressbook is readonly and searchable by the user, but it will NOT be synced.
  // If you don't want GAL, comment it
      // %u: replaced with the username
     // %d: replaced with the domain
      //  Add the trailing /
      define('CARDDAV_GAL_PATH', '/remote.php/dav/addressbooks/users/%u/contacts/');

        // Minimal length for the search pattern to do the real search.
       define('CARDDAV_GAL_MIN_LENGTH', 5);

     // Addressbook display name, the name showed in the mobile device
  // %u: replaced with the username
      // %d: replaced with the domain
      define('CARDDAV_CONTACTS_FOLDER_NAME', '%u Addressbook');


    // If the CardDAV server supports the sync-collection operation
     // DAViCal and SabreDav support it, but Owncloud, SOGo don't
      // SabreDav version must be at least 1.9.0, otherwise set this to false
   // Setting this to false will work with most servers, but it will be slower: 1 petition for the href of vcards, and 1                   petition for each vcard
      define('CARDDAV_SUPPORTS_SYNC', true);


    /          / If the CardDAV server supports the FN attribute for searches
    // DAViCal supports it, but SabreDav, Owncloud and SOGo don't
   // Setting this to true will search by FN. If false will search by sn, givenName and email
   // It's safe to leave it as false
   define('CARDDAV_SUPPORTS_FN_SEARCH', false);


      // If your carddav server needs to use file extension to recover a vcard.
    //    Davical needs it
  //    SOGo official demo online needs it, but some SOGo installation don't need it, so test it
     define('CARDDAV_URL_VCARD_EXTENSION', '.vcf');

EDIT:
So after troubleshooting more i figured out something is odd with the combined backend i tried with a carddav app on android perfectly worked then saw another error

   /var/www/zpush/src/backend/carddav/carddav.php:569 Undefined offset: 0 (8)
   /var/www/zpush/src/backend/carddav/carddav.php:570 Undefined offset: 0 (8)

SOLVED: I had to install apt-get install php5-xsl then reboot and remove the account to readd it