summaryrefslogtreecommitdiffstats
path: root/templates
diff options
context:
space:
mode:
authorJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2018-07-10 18:40:59 +0200
committerJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2018-07-11 15:31:29 +0200
commit75f0d3c093de01365f85e8e3035291d9a9a8c889 (patch)
treeb84b25a2e6eb16c00a74fd6db8b0f446ef661a03 /templates
parent3f3ad0eeb8e01fe725a89ad196d23f22ad33de41 (diff)
Vue cleanup and init
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Diffstat (limited to 'templates')
-rw-r--r--templates/addressBook.html120
-rw-r--r--templates/addressBookList.html15
-rw-r--r--templates/avatar.html12
-rw-r--r--templates/contact.html5
-rw-r--r--templates/contactDetails.html79
-rw-r--r--templates/contactFilter.html9
-rw-r--r--templates/contactImport.html15
-rw-r--r--templates/contactList.html12
-rw-r--r--templates/detailItems/adr.html36
-rw-r--r--templates/detailItems/date.html8
-rw-r--r--templates/detailItems/email.html14
-rw-r--r--templates/detailItems/groups.html10
-rw-r--r--templates/detailItems/hidden.html1
-rw-r--r--templates/detailItems/n.html32
-rw-r--r--templates/detailItems/select.html7
-rw-r--r--templates/detailItems/tel.html14
-rw-r--r--templates/detailItems/text.html12
-rw-r--r--templates/detailItems/textarea.html9
-rw-r--r--templates/detailItems/url.html12
-rw-r--r--templates/detailItems/username.html12
-rw-r--r--templates/group.html8
-rw-r--r--templates/groupList.html3
-rw-r--r--templates/importScreen.html7
-rw-r--r--templates/main.php59
-rw-r--r--templates/newContactButton.html2
-rw-r--r--templates/propertyGroup.html7
-rw-r--r--templates/sortBy.html4
27 files changed, 3 insertions, 521 deletions
diff --git a/templates/addressBook.html b/templates/addressBook.html
deleted file mode 100644
index f885e0e7..00000000
--- a/templates/addressBook.html
+++ /dev/null
@@ -1,120 +0,0 @@
-<form ng-submit="ctrl.renameAddressBook()" ng-show="ctrl.editing">
- <input select-expression="ctrl.editing" placeholder="{{ctrl.t.addressBookName}}" class="renameAddressBookInput" ng-model="ctrl.addressBook.displayName" type="text" />
- <input type="submit" value="" class="renameAddressBookSubmit inline-button icon-confirm action pull-right" />
-</form>
-<span class="addressBookName" ng-class="{disabled: !ctrl.enabled}" onloadedmetadata=""title="{{ctrl.addressBook.displayName}}" ng-hide="ctrl.editing">{{ctrl.addressBook.displayName}}</span>
-<span class="utils" ng-hide="ctrl.editing">
- <span class="action">
- <span
- class="addressbooklist-icon icon-shared"
- title="{{ctrl.t.shareAddressbook}}"
- ng-click="ctrl.toggleSharesEditor(ctrl.addressBook)">
- </span>
- </span>
- <span class="action">
- <span
- class="icon-more openMenuButton"
- ng-click="ctrl.toggleMenu($id)">
- </span>
- </span>
- <div class="popovermenu bubble menu"
- ng-class="{open: $parent.ctrl.openedMenu === $id}"
- click-outside="ctrl.closeMenus()"
- outside-if-not="openMenuButton,popovermenu">
- <ul>
- <li>
- <a class="addressbookurl-copy btn"
- ngclipboard ngclipboard-success="ctrl.clipboardSuccess()" ngclipboard-error="ctrl.clipboardError()"
- data-clipboard-text="{{ctrl.addressBook.url}}"
- tooltip-placement="right" uib-tooltip="{{ctrl.tooltipTitle}}" tooltip-append-to-body="true">
- <span class="icon icon-public"></span>
- <span>{{ctrl.t.copyURL}}</span>
- </a>
- </li>
- <li>
- <a href="{{ctrl.addressBook.url}}?export" id="download_{{$id}}">
- <span class="icon icon-download"></span>
- <span>{{ctrl.t.download}}</span>
- </a>
- </li>
- <li>
- <a ng-click="ctrl.edit()">
- <span class="icon icon-rename"></span>
- <span>{{ctrl.t.renameAddressbook}}</span>
- </a>
- </li>
- <li>
- <a ng-click="ctrl.toggleState()">
- <input id="state_{{$id}}" type="checkbox" class="checkbox" ng-checked="ctrl.enabled" />
- <label for="state_{{$id}}">{{ctrl.enabled ? ctrl.t.enabled : ctrl.t.disabled}}</span>
- </a>
- </li>
- <li ng-if="ctrl.list.length > 1">
- <a ng-click="ctrl.deleteAddressBook()">
- <span class="icon icon-delete"></span>
- <span>{{ctrl.t.deleteAddressbook}}</span>
- </a>
- </li>
- </ul>
- </div>
-</span>
-
-<div class="addressBookUrlContainer" ng-show="ctrl.showInputUrl">
- <input id="addressBookUrl_{{ctrl.addressBook.ctag}}" class="addressBookUrl"
- uib-tooltip="{{ctrl.InputUrlTooltip}}"
- tooltip-is-open="true" tooltip-append-to-body="true"
- type="url" value="{{ctrl.addressBook.url}}" readonly />
- <input type="button" class="inline-button icon-close action pull-right" ng-click="ctrl.showInputUrl=false" uib-tooltip="{{ctrl.t.close}}">
-</div>
-
-<div class="addressBookShares" ng-show="ctrl.editingShares">
- <i ng-show="ctrl.loadingSharees" class="glyphicon glyphicon-refresh"></i>
- <input
- type="text"
- class="shareeInput"
- uib-typeahead="sharee.display for sharee in ctrl.findSharee($viewValue)"
- typeahead-on-select="ctrl.onSelectSharee($item)"
- typeahead-loading="ctrl.loadingSharees"
- ng-model="ctrl.selectedSharee"
- placeholder="{{ctrl.t.shareInputPlaceHolder}}">
- <ul class="addressBook-share-list">
- <li ng-repeat="userShare in ctrl.addressBook.sharedWith.users" class="addressBook-share-item">
- <span class="icon icon-user"></span>
- <span class="shareeIdentifier">{{ userShare.displayname }}</span>
- <span class="utils">
- <input type="checkbox" name="editable" class="checkbox"
- id="checkbox_sharedWithUser_{{ctrl.addressBook.tmpId}}_{{$id}}"
- ng-model="userShare.writable" value="edit"
- ng-change="ctrl.updateExistingUserShare(userShare.id, userShare.writable)">
- <label for="checkbox_sharedWithUser_{{ctrl.addressBook.tmpId}}_{{$id}}"> {{ctrl.t.canEdit}}</label>
- <span class="action">
- <span href="#"
- data-id="{{ ctrl.addressBook.uri }}"
- title="{{ctrl.t.delete}}"
- class="icon-delete"
- ng-click="ctrl.unshareFromUser(userShare.id)">
- </span>
- </span>
- </span>
- </li>
- <li ng-repeat="groupShare in ctrl.addressBook.sharedWith.groups" class="calendar-share-item">
- <span class="icon icon-group"></span>
- <span class="shareeIdentifier">{{ groupShare.displayname }}</span>
- <span class="utils">
- <input type="checkbox" name="editable" class="checkbox"
- id="checkbox_sharedWithGroup_{{ctrl.addressBook.tmpId}}_{{$id}}"
- ng-model="groupShare.writable" value="edit"
- ng-change="ctrl.updateExistingGroupShare(groupShare.id, groupShare.writable)">
- <label for="checkbox_sharedWithGroup_{{ctrl.addressBook.tmpId}}_{{$id}}"> {{ctrl.t.canEdit}}</label>
- <span class="action">
- <span href="#"
- data-id="{{ ctrl.addressBook.uri }}"
- title="{{ctrl.t.delete}}"
- class="icon-delete"
- ng-click="ctrl.unshareFromGroup(groupShare.id)">
- </span>
- </span>
- </span>
- </li>
- </ul>
-</div>
diff --git a/templates/addressBookList.html b/templates/addressBookList.html
deleted file mode 100644
index 2ddfd3d4..00000000
--- a/templates/addressBookList.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<i ng-show="ctrl.loading" style="display: block" class="icon-loading-small"></i>
-<ul class="addressBookList">
- <li ng-repeat="addressBook in ctrl.addressBooks" addressbook data="addressBook" list="ctrl.addressBooks"></li>
- <li class="newAddressBookContainer">
- <form ng-submit="ctrl.createAddressBook()" name="newAddressBookForm">
- <input id="newList" placeholder="{{ctrl.t.addressBookName}}" class="newAddressBookInput"
- ng-model="ctrl.newAddressBookName" type="text" ng-minlength="1"
- autocomplete="off" autocorrect="off" spellcheck="false" tooltip-enable="!newAddressBookForm.$pristine"
- required ng-pattern="ctrl.addressBookRegex" tooltip-is-open="newAddressBookForm.$invalid && !newAddressBookForm.$error.required" tooltip-trigger="none"
- tooltip-placement="top" uib-tooltip="{{ctrl.t.regexError}}" />
- <input type="submit" value="" class="newAddressBookSubmit inline-button icon-confirm action pull-right"
- ng-disabled="newAddressBookForm.$invalid || newAddressBookForm.$pristine" />
- </form>
- </li>
-</ul>
diff --git a/templates/avatar.html b/templates/avatar.html
deleted file mode 100644
index fd226c61..00000000
--- a/templates/avatar.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<div ng-if="ctrl.contact.failedProps.indexOf('photo') !== -1" class="icon-error"></div>
-<img ng-show="contact.photo()!==undefined" class="contactdetails__logo avatar" id="contact-avatar" data-ng-src="{{contact.photo()}}" ng-click="ctrl.openPhoto()" />
-<div class="avatar-options">
- <input type="file" id="avatar-upload" class="hidden" accept="image/*" />
- <label for="avatar-upload" class="icon-upload-white" tooltip-placement="top" uib-tooltip="{{ctrl.t.uploadNewPhoto}}" tooltip-append-to-body="true"></label>
- <div class="icon-delete-white" ng-show="contact.photo()!==undefined" ng-click="ctrl.removePhoto()"
- tooltip-placement="top" uib-tooltip="{{ctrl.t.deletePhoto}}" tooltip-append-to-body="true"></div>
- <div class="icon-fullscreen-white" ng-show="contact.photo()!==undefined" ng-click="ctrl.openPhoto()"
- tooltip-placement="top" uib-tooltip="{{ctrl.t.closePhoto}}" tooltip-append-to-body="true"></div>
- <div class="icon-download-white" ng-show="contact.photo()!==undefined" ng-click="ctrl.downloadPhoto()"
- tooltip-placement="top" uib-tooltip="{{ctrl.t.downloadPhoto}}" tooltip-append-to-body="true"></div>
-</div>
diff --git a/templates/contact.html b/templates/contact.html
deleted file mode 100644
index a342de0d..00000000
--- a/templates/contact.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<img class="app-content-list-item-icon contact__icon" ng-show="ctrl.contact.photo()!==undefined" data-ng-src="{{ctrl.contact.photo()}}" />
-<div class="app-content-list-item-icon contact__icon" ng-show="ctrl.contact.photo()===undefined" ng-style="{'background-color': (ctrl.contact.uid() | contactColor) }">{{ ctrl.contact.displayName() | firstCharacter }}</div>
-<div class="app-content-list-item-failed icon-error" tooltip-placement="auto left" ng-if="ctrl.contact.failedProps.length>0" uib-tooltip="{{ ctrl.t.errorMessage }}"></div>
-<div class="app-content-list-item-line-one">{{ ctrl.getName() | newContact }}</div>
-<div class="app-content-list-item-line-two" ng-if="ctrl.contact.email()">{{ctrl.contact.email()}}</div>
diff --git a/templates/contactDetails.html b/templates/contactDetails.html
deleted file mode 100644
index 84460f82..00000000
--- a/templates/contactDetails.html
+++ /dev/null
@@ -1,79 +0,0 @@
-<div class="contact-details-wrapper wrapper-show"
- ng-class="{'mobile-show': ctrl.show, 'icon-loading': ctrl.loading}">
- <div id="app-navigation-toggle-back" class="details-back icon-download" ng-click="ctrl.clearContact()"></div>
- <div ng-if="ctrl.contact===undefined && !ctrl.loading && !ctrl.init">
- <div id="emptycontent">
- <div class="icon-contacts-dark"></div>
- <h2>{{ctrl.t.noContacts}}</h2>
- </div>
- </div>
- <div ng-if="ctrl.init">
- <div id="emptycontent">
- <div class="icon-contacts-dark"></div>
- <h2>{{ctrl.t.loading}}</h2>
- </div>
- </div>
- <div ng-if="ctrl.contact!==undefined">
- <header class="contactdetails__header" ng-style="{'background-color': (ctrl.contact.uid() | contactColor)}">
- <avatar data="ctrl.contact" ng-class="{'avatar--missing': ctrl.contact.photo()===undefined}"></avatar>
- <div id="details-contact-infos">
- <h2>
- <input type="text" id="details-fullName" class="contactdetails__name" placeholder="{{ctrl.t.placeholderName}}" autocomplete="off" autocorrect="off" spellcheck="false"
- name="fullname" ng-model="ctrl.contact.fullName" ng-model-options="{ getterSetter: true, debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- ng-disabled="ctrl.addressBook.readOnly" />
- </h2>
- <div id="details-org-container">
- <input type="text" id="details-org" class="contactdetails__org" placeholder="{{ctrl.t.placeholderOrg}}" autocomplete="off" autocorrect="off" spellcheck="false"
- name="org" ng-model="ctrl.contact.org" ng-model-options="{ getterSetter: true, debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- inputresize size="{{ctrl.contact.org().length > 1 ? ctrl.contact.org().length : '1'}}"
- ng-disabled="ctrl.addressBook.readOnly" />
- <input type="text" id="details-title" class="contactdetails__title" placeholder="{{ctrl.t.placeholderTitle}}" autocomplete="off" autocorrect="off" spellcheck="false"
- name="title" ng-model="ctrl.contact.title" ng-model-options="{ getterSetter: true, debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- inputresize size="{{ctrl.contact.title().length > 1 ? ctrl.contact.title().length : '1'}}"
- ng-disabled="ctrl.addressBook.readOnly" />
- </div>
- </div>
- <div id="details-actions">
- <div class="icon-more-white openMenuButton" ng-click="ctrl.toggleMenu('options')">
- </div>
- <div class="popovermenu bubble menu"
- ng-class="{open: ctrl.openedMenu === 'options'}"
- click-outside="ctrl.closeMenus()"
- outside-if-not="openMenuButton,popovermenu">
- <ul>
- <li ng-if="ctrl.contact.failedProps.length>0">
- <a id="contact-failed-save" ng-click="ctrl.updateContact()" uib-tooltip="Contact failed to save please update" class="icon-checkmark">
- <span>Update</span>
- </a>
- </li>
- <li>
- <a href="{{ctrl.contact.data.url}}" id="contact-export-link" download="{{ ctrl.contact.readableFilename() }}" class="icon-download">
- <span>Download</span>
- </a>
- </li>
- <li ng-if="!ctrl.addressBook.readOnly">
- <a ng-click="ctrl.deleteContact()" class="icon-delete">
- <span>Delete</span>
- </a>
- </li>
- </ul>
- </div>
- </div>
- </header>
- <section>
- <propertyGroup ng-repeat="prop in ctrl.contact.props | toArray | orderDetailItems:'$key'" model="ctrl.contact" data="prop" name="prop.$key" class="property-{{prop.$key}} grid-span-{{prop.length}}"></propertyGroup>
-
- <div class="select-addressbook" ng-if="ctrl.addressBooks.length > 1 && !ctrl.addressBook.readOnly">
- <label for="details-addressbook">{{ctrl.t.addressBook}}</label>
- <select ng-model="ctrl.addressBook" ng-change="ctrl.changeAddressBook(ctrl.addressBook, oldAddressBook)" id="details-addressbook"
- ng-options="book.displayName for book in ctrl.addressBooks | filter: {readOnly: false}"
- ng-click="oldAddressBook = ctrl.addressBook" ng-init="oldAddressBook = ctrl.addressBook">
- </select>
- </div>
- <select class="add-field" ng-model="ctrl.field" ng-change="ctrl.addField(ctrl.field)" ng-if="!ctrl.addressBook.readOnly">
- <option value=''>{{ctrl.t.selectField}}</option>
- <option ng-repeat="field in ctrl.fieldDefinitions | fieldFilter: ctrl.contact | orderBy : 'name'" value="{{field.id}}">{{field.name}}</option>
- </select>
- </section>
- </div>
-</div>
diff --git a/templates/contactFilter.html b/templates/contactFilter.html
deleted file mode 100644
index 8dbbc6ba..00000000
--- a/templates/contactFilter.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<a ng-href="#/{{ctrl.contactFilter.name}}">{{ ctrl.contactFilter.name }}</a>
-<div class="app-navigation-entry-utils">
- <ul>
- <li class="app-navigation-entry-utils-counter" tooltip-placement="right"
- uib-tooltip="{{ctrl.contactFilter.count | counterTooltipDisplay}}" tooltip-append-to-body="true">
- {{ctrl.contactFilter.count | counterFormatter}}
- </li>
- </ul>
-</div> \ No newline at end of file
diff --git a/templates/contactImport.html b/templates/contactImport.html
deleted file mode 100644
index f1220f6a..00000000
--- a/templates/contactImport.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<input type="file" id="contact-import" class="hidden-visually" multiple />
-<label for="contact-import" class="button {{ctrl.loadingClass}}" ng-class="{'no-select': ctrl.addressBooks.length === 1}" id="upload"
- ng-if="ctrl.addressBooks.length > 0 && ctrl.selectedAddressBook">
- {{ctrl.importText}}
- <span ng-if="ctrl.addressBooks.length === 1 && !ctrl.importing" ng-class="{'icon-loading-small': ctrl.loading}">{{ctrl.selectedAddressBook.displayName}}</span>
-</label>
-<ui-select ng-model="ctrl.selectedAddressBook" ng-if="ctrl.addressBooks.length > 1 && ctrl.selectedAddressBook" search-enabled="ctrl.addressBooks.length > 4"
- theme="select2" class="form-control" title="{{ctrl.t.selectAddressbook}}"
- uis-open-close="ctrl.stopHideMenu(isOpen)" ng-class="{'icon-loading-small': ctrl.loading}">
- <ui-select-match placeholder="{{ctrl.t.selectAddressbook}}">{{$select.selected.displayName}}</ui-select-match>
- <ui-select-choices repeat="addressBook in ctrl.addressBooks | filter: {readOnly: false} | filter: {displayName: $select.search}">
- {{addressBook.displayName}}
- </ui-select-choices>
-</ui-select>
-<div ng-if="ctrl.addressBooks.length === 0 || !ctrl.selectedAddressBook">{{ctrl.t.importdisabled}}</div>
diff --git a/templates/contactList.html b/templates/contactList.html
deleted file mode 100644
index 9cc7c55f..00000000
--- a/templates/contactList.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<a class="app-content-list-item"
- ng-repeat="contact in ctrl.filteredContacts = (ctrl.contactList | contactGroupFilter:ctrl.routeParams.gid | localeOrderBy:ctrl.sortBy | filter:query | limitTo:ctrl.limitTo ) as filtered track by contact.uid()"
- contact data="contact"
- href="#/{{ctrl.routeParams.gid}}/{{contact.uid()}}"
- ng-class="{active: contact.uid() === ctrl.getSelectedId()}">
-</a>
-<div ng-show="!ctrl.filteredContacts.length && !ctrl.loading && ctrl.searchTerm !== ''">
- <div id="emptycontent" class="emptycontent-search">
- <div class="icon-search"></div>
- <h2>{{ctrl.t.emptySearch}}</h2>
- </div>
-</div>
diff --git a/templates/detailItems/adr.html b/templates/detailItems/adr.html
deleted file mode 100644
index 1e0789c4..00000000
--- a/templates/detailItems/adr.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<select ng-model="ctrl.type" ng-model-options="{ debounce: 500 }" ng-change="ctrl.changeType(ctrl.type)" ng-disabled="ctrl.contact.readOnly">
- <option ng-repeat="option in ctrl.availableOptions" value="{{option.id}}">{{option.name}}</option>
-</select>
-<button ng-click="ctrl.deleteField()" class="icon-delete" title="{{ctrl.t.delete}}" ng-if="!ctrl.contact.readOnly"></button>
-<div>
-
- <label for="details-pobox-{{ctrl.index}}">{{ctrl.t.poBox}}</label>
- <input type="text" id="details-pobox-{{ctrl.index}}" name="address" ng-model="ctrl.data.value[0]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
-<div>
- <label for="details-address-{{ctrl.index}}">{{ctrl.t.address}}</label>
- <input type="text" id="details-address-{{ctrl.index}}" name="address" ng-model="ctrl.data.value[2]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- ng-disabled="ctrl.contact.readOnly"
- focus-expression="$parent.ctrl.focus === ctrl.name" />
-</div>
-<div>
- <label for="details-postal-code-{{ctrl.index}}">{{ctrl.t.postalCode}}</label>
- <input type="text" id="details-postal-code-{{ctrl.index}}" name="postal-code" ng-model="ctrl.data.value[5]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
-<div>
- <label for="details-city-{{ctrl.index}}">{{ctrl.t.city}}</label>
- <input type="text" id="details-city-{{ctrl.index}}" name="city" ng-model="ctrl.data.value[3]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
-<div>
- <label for="details-state-{{ctrl.index}}">{{ctrl.t.state}}</label>
- <input type="text" id="details-state-{{ctrl.index}}" name="state" ng-model="ctrl.data.value[4]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
-<div>
- <label for="details-country-{{ctrl.index}}">{{ctrl.t.country}}</label>
- <input type="text" id="details-country-{{ctrl.index}}" name="state" ng-model="ctrl.data.value[6]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateContact()" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
diff --git a/templates/detailItems/date.html b/templates/detailItems/date.html
deleted file mode 100644
index b8761779..00000000
--- a/templates/detailItems/date.html
+++ /dev/null
@@ -1,8 +0,0 @@
-<label for="details-{{ctrl.name}}-{{ctrl.index}}">{{ctrl.meta.readableName}}</label>
-<input type="text" id="details-{{ctrl.name}}-{{ctrl.index}}" name="{{ctrl.name}}"
- ng-model="ctrl.data.value" datepicker ng-model-options="{ debounce: 500 }"
- ng-change="ctrl.dateInputChanged()" value=""
- focus-expression="$parent.ctrl.focus === ctrl.name"
- ng-disabled="ctrl.contact.readOnly"
-/>
-<button ng-click="ctrl.deleteField()" class="icon-delete" title="{{ctrl.t.delete}}" ng-if="!ctrl.contact.readOnly"></button>
diff --git a/templates/detailItems/email.html b/templates/detailItems/email.html
deleted file mode 100644
index 543ec32c..00000000
--- a/templates/detailItems/email.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<select ng-model="ctrl.type" ng-model-options="{ debounce: 500 }" ng-change="ctrl.changeType(ctrl.type)" ng-disabled="ctrl.contact.readOnly">
- <option ng-repeat="option in ctrl.availableOptions" value="{{option.id}}">{{option.name}}</option>
-</select>
-<a ng-if="ctrl.data.value.length" class="item-action" href="mailto:{{ctrl.data.value}}">
- <i class="icon-mail"></i>
-</a>
-<input type="email" id="details-{{ctrl.name}}-{{ctrl.index}}" name="email"
- ng-model="ctrl.data.value" email-model ng-model-options="{ debounce: 500 }"
- ng-change="ctrl.updateContact()" value=""
- placeholder="{{ctrl.meta.readableName}}"
- focus-expression="$parent.ctrl.focus === ctrl.name"
- ng-disabled="ctrl.contact.readOnly"
-/>
-<button ng-click="ctrl.deleteField()" class="icon-delete" title="{{ctrl.t.delete}}" ng-if="!ctrl.contact.readOnly"></button>
diff --git a/templates/detailItems/groups.html b/templates/detailItems/groups.html
deleted file mode 100644
index 8da05fc5..00000000
--- a/templates/detailItems/groups.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<label ng-if="ctrl.availableOptions.length === 0" for="details-{{ctrl.name}}-{{ctrl.index}}">{{ctrl.meta.readableName}}</label>
-<ui-select id="details-{{ctrl.name}}-{{ctrl.index}}" multiple tagging tagging-label="{{ctrl.t.newGroup}}" ng-model="ctrl.data.value"
- on-remove="ctrl.updateContact()" on-select="ctrl.updateContact()"
- theme="select2" focus-expression="$parent.$parent.ctrl.focus === ctrl.name"
- ng-disabled="ctrl.contact.readOnly">
- <ui-select-match placeholder="{{ctrl.meta.readableName}}">{{$item}}</ui-select-match>
- <ui-select-choices repeat="group in ctrl.availableGroups | filter:$select.search">
- {{group}}
- </ui-select-choices>
-</ui-select>
diff --git a/templates/detailItems/hidden.html b/templates/detailItems/hidden.html
deleted file mode 100644
index 258e1e1a..00000000
--- a/templates/detailItems/hidden.html
+++ /dev/null
@@ -1 +0,0 @@
-<input type="hidden" id="details-{{ctrl.name}}-{{ctrl.index}}" name="{{ctrl.name}}" ng-model="ctrl.data.value" value="" />
diff --git a/templates/detailItems/n.html b/templates/detailItems/n.html
deleted file mode 100644
index 15efde60..00000000
--- a/templates/detailItems/n.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<label ng-if="ctrl.availableOptions.length === 0">{{ctrl.meta.readableName}}</label>
-<button ng-click="ctrl.deleteField()" class="icon-delete" title="{{ctrl.t.delete}}" ng-if="!ctrl.contact.readOnly"></button>
-<div>
- <label for="details-honorificPrefix-{{ctrl.index}}">{{ctrl.t.honorificPrefix}}</label>
- <input type="text" id="details-honorificPrefix-{{ctrl.index}}" name="honorificPrefix" ng-model="ctrl.data.value[3]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateDetailedName()"
- autocomplete="off" autocorrect="off" spellcheck="false" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
-<div>
- <label for="details-firstName-{{ctrl.index}}">{{ctrl.t.firstName}}</label>
- <input type="text" id="details-firstName-{{ctrl.index}}" name="firstName" ng-model="ctrl.data.value[1]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateDetailedName()"
- autocomplete="off" autocorrect="off" spellcheck="false" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
-<div>
- <label for="details-additionalNames-{{ctrl.index}}">{{ctrl.t.additionalNames}}</label>
- <input type="text" id="details-additionalNames-{{ctrl.index}}" name="additionalNames" ng-model="ctrl.data.value[2]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateDetailedName()"
- autocomplete="off" autocorrect="off" spellcheck="false" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
-<div>
- <label for="details-familyName-{{ctrl.index}}">{{ctrl.t.familyName}}</label>
- <input type="text" id="details-familyName-{{ctrl.index}}" name="familyName" ng-model="ctrl.data.value[0]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateDetailedName()"
- autocomplete="off" autocorrect="off" spellcheck="false" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
-<div>
- <label for="details-honorificSuffix-{{ctrl.index}}">{{ctrl.t.honorificSuffix}}</label>
- <input type="text" id="details-honorificSuffix-{{ctrl.index}}" name="honorificSuffix" ng-model="ctrl.data.value[4]" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateDetailedName()"
- autocomplete="off" autocorrect="off" spellcheck="false" value=""
- ng-disabled="ctrl.contact.readOnly" />
-</div>
diff --git a/templates/detailItems/select.html b/templates/detailItems/select.html
deleted file mode 100644
index 64d583de..00000000
--- a/templates/detailItems/select.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<label ng-if="ctrl.availableOptions.length > 0" for="details-{{ctrl.name}}">{{ctrl.meta.readableName}}</label>
-<select id="details-{{ctrl.name}}" name="{{ctrl.name}}" ng-if="ctrl.availableOptions.length > 0"
- ng-model="ctrl.data.value" ng-model-options="{ debounce: 500 }" ng-change="ctrl.updateContact()"
- ng-disabled="ctrl.contact.readOnly">
- <option ng-repeat="option in ctrl.availableOptions" value="{{option.id}}">{{option.name}}</option>
-</select>
-<button ng-click="ctrl.deleteField()" class="icon-delete" title="{{ctrl.t.delete}}" ng-if="!ctrl.contact.readOnly"></button>
diff --git a/templates/detailItems/tel.html b/templates/detailItems/tel.html
deleted file mode 100644
index b3cf0253..00000000
--- a/templates/detailItems/tel.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<select ng-model="ctrl.type" ng-model-options="{ debounce: 500 }" ng-change="ctrl.changeType(ctrl.type)" ng-disabled="ctrl.contact.readOnly">
- <option ng-repeat="option in ctrl.availableOptions" value="{{option.id}}">{{option.name}}</option>
-</select>
-<a ng-if="ctrl.data.value.length" class="item-action" href="tel:{{ctrl.data.value}}">
- <i class="icon-comment"></i>
-</a>
-<input type="tel" id="details-{{ctrl.name}}-{{ctrl.index}}" name="phone"
- ng-model="ctrl.data.value" tel-model ng-model-options="{ debounce: 500 }"
- ng-change="ctrl.updateContact()" value=""
- placeholder="{{ctrl.meta.readableName}}"
- focus-expression="$parent.ctrl.focus === ctrl.name"
- ng-disabled="ctrl.contact.readOnly"
-/>
-<button ng-click="ctrl.deleteField()" class="icon-delete" title="{{ctrl.t.delete}}" ng-if="!ctrl.contact.readOnly"></button>
diff --git a/templates/detailItems/text.html b/templates/detailItems/text.html
deleted file mode 100644
index 1c7873a6..00000000
--- a/templates/detailItems/text.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<select ng-if="ctrl.availableOptions.length > 0" ng-model="ctrl.type" ng-model-options="{ debounce: 500 }" ng-change="ctrl.changeType(ctrl.type)" ng-disabled="ctrl.contact.readOnly">
- <option ng-r