@import url(https://weloveiconfonts.com/api/?family=entypo);
[class*="entypo-"]:before {
font-family: 'entypo', sans-serif;
<div ng-app="android-addressbook">
<div ng-controller="AddressBook.Init">
<div class="row main-app">
<script type="text/ng-template" id="list.html">
<ul class="fixed top full bar topbar tabs two">
<a href='#/contacts'><span class="entypo-user"></span></a>
<a href='#/contacts/starred'><span class="entypo-star"></span></a>
<div class="content" id="wrapper">
<div class="lists" id="scroller">
<div ng:repeat="group in groups">
<div class="title fleft full">{{ group.label }}</div>
<ul class="list single-fill">
<li class="list-item" ng:repeat="contact in group.contacts">
<a class="item" href='#/contact/view/{{ contact._id.$oid }}'>
<span class="fleft name">{{ contact.firstName + ' ' + contact.lastName }}</span>
<span class="fright image"><img width="60" ng-src="{{ ProfileImage('60x60', contact) }}"/></span>
<ul class="fixed bottom full bar bottombar">
<li class="icon icn left">
<a href='#/contacts/search'><span class="entypo-search"></span></a>
<li class="icon icn center">
<a href='#/contact/add'><span class="entypo-user-add"></span></a>
<script type="text/ng-template" id="starred.html">
<ul class="fixed top full bar topbar tabs two">
<a href='#/contacts'><span class="entypo-user"></span></a>
<a href='#/contacts/starred'><span class="entypo-star"></span></a>
<div class="content" id="wrapper">
<div id="scroller" class="fleft">
<ul class="list single-fill">
<li class="list-item half" ng:repeat="contact in starred">
<a class="item profile-image" href='#/contact/view/{{ contact._id.$oid }}'>
<img width="100%" ng-src="{{ ProfileImage('480x480', contact) }}"/>
<span class="absolute bottom caption">
<span class="text">{{ contact.firstName + ' ' + contact.lastName }}</span>
<span class="overlay"></span>
<div class="title fleft full">Frequently viewed</div>
<ul class="list single-fill">
<li class="list-item" ng:repeat="contact in contacts">
<a class="item" href='#/contact/view/{{ contact._id.$oid }}'>
<span class="fleft name">{{ contact.firstName + ' ' + contact.lastName }}</span>
<span class="fright image"><img width="60" ng-src="{{ ProfileImage('60x60', contact) }}"/></span>
<ul class="fixed bottom full bar bottombar">
<li class="icon icn left">
<a href='#/contacts/search'><span class="entypo-search"></span></a>
<li class="icon icn center">
<a href='#/contact/add'><span class="entypo-user-add"></span></a>
<script type="text/ng-template" id="search.html">
<ul class="fixed top full bar topbar">
<li class="icon icn left">
<a href='javascript:void(0)' ng-click="Back()"><span class="entypo-left-open-big"></span></a>
<li class="contact-name icn full form">
<input placeholder="Find contacts" type="text" id="searchterm" name="searchterm" ng-model="searchterm"/>
<span class="form-item-decorator"></span>
<span class="cancel entypo-cancel-circled" ng-show="searchterm" ng-click="searchterm=''"></span>
<div class="content no-bottombar" id="wrapper">
<div class="lists" id="scroller">
<div ng:repeat="group in groups">
<div class="title fleft full">{{ group.label }}</div>
<ul class="list single-fill">
<li class="list-item" ng:repeat="contact in group.contacts | filter:searchterm">
<a class="item" href='#/contact/view/{{ contact._id.$oid }}'>
<span class="fleft name">{{ contact.firstName + ' ' + contact.lastName }}</span>
<span class="fright image"><img width="60" ng-src="{{ ProfileImage('60x60', contact) }}"/></span>
<script type="text/ng-template" id="view.html">
<ul class="fixed top full bar topbar">
<li class="icon icn left">
<a href='javascript:void(0)' ng-click="Back()"><span class="entypo-left-open-big"></span></a>
<li class="contact-name icn full" ng-bind="FullName()"></li>
<li class="icon icn right sec">
<a href='javascript:void(0)'><span ng-click="StarUnStar()" ng-class="{'entypo-star': contact.starred, 'entypo-star-empty': !contact.starred}"></span></a>
<li class="icon icn right" ng-click="_submenu()" ng-class="{'show-submenu': submenu}">
<a href='javascript:void(0)'><span class="entypo-pencil"></span></a>
<a href='#/contact/edit/{{ contact._id.$oid }}'>编辑</a>
<a href='javascript:void(0)' ng-click="DeleteContact()">删除</a>
<div class="content no-bottombar" id="wrapper">
<div class="lists fleft" id="scroller">
<div class="profile-image" ng-click="_showImage()" ng-class="{open: selected}">
<img ng-src="{{ ProfileImage('480x480') }}"/>
<div ng-show="contact.phones.length">
<div class="title fleft full">手机</div>
<li class="list-item" ng:repeat="item in contact.phones">
<a class="item" href="tel:{{ item.value }}">
<span class="value">{{ item.value }}</span>
<span class="label">{{ item.type }}</span>
<div ng-show="contact.emails.length">
<div class="title fleft full">Email</div>
<li class="list-item" ng:repeat="item in contact.emails">
<a class="item" target="_black" href="mailto:{{ item.value }}">
<span class="value">{{ item.value }}</span>
<span class="label">{{ item.type }}</span>
<div ng-show="contact.addresses.length">
<div class="title fleft full">Address</div>
<li class="list-item" ng:repeat="item in contact.addresses">
<a class="item" target="_black" href="https://maps.google.com/maps?q={{ item.value }}">
<span class="value">{{ item.value }}</span>
<span class="label">{{ item.type }}</span>
<div ng-show="contact.birthday">
<div class="title fleft full">生日</div>
<span class="value">{{ contact.birthday }}</span>
<div ng-show="contact.websites.length">
<div class="title fleft full">Websites</div>
<li class="list-item" ng:repeat="item in contact.websites">
<a class="item" target="_black" href="{{ item.value }}">
<span class="value">{{ item.value }}</span>
<span class="label">{{ item.type }}</span>
<div ng-show="contact.notes">
<div class="title fleft full">Notes</div>
<span class="value">{{ contact.notes }}</span>
<script type="text/ng-template" id="edit.html">
<ul class="fixed top full bar topbar">
<li class="icon icn left">
<a href='javascript:void(0)' ng-click="SaveContact()"><span ng-class="{'entypo-dot': contactForm.name.$invalid, 'entypo-check': !contactForm.name.$invalid}"></span></a>
<li class="contact-name icn full" ng-bind="FullName()"></li>
<li class="icon icn right" ng-show="contact._id.$oid">
<a ng-href="#/contact/view/{{ contact._id.$oid }}"><span class="entypo-cancel"></span></a>
<li class="icon icn right" ng-show="!contact._id.$oid">
<a href='javascript:void(0)' ng-click="Back()"><span class="entypo-cancel"></span></a>
<div class="content no-bottombar" id="wrapper">
<div class="lists fleft" id="scroller">
<form class="form" name="contactForm">
<div class="title fleft full">Name</div>
<div class="item form-item">
<input type="text" name="name" maxlength="25" ng-model="contact.firstName" required />
<span class="form-item-decorator"></span>
<div class="item form-item">
<input type="text" maxlength="25" ng-model="contact.lastName"/>
<span class="form-item-decorator"></span>
<div class="title fleft full">Picture URL</div>
<div class="item form-item field-left img">
<input type="text" ng-model="contact.picture"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right img">
<img width="60" ng-src="{{ ProfileImage('60x60') }}"/>
<div class="title fleft full">手机</div>
<li class="list-item" ng:repeat="item in contact.phones">
<div class="item form-item field-left">
<input type="text" ng-model="item.value"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right">
<input type="text" ng-model="item.type"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right-right action">
<button class="delete" ng-click="DiscardField('phones', $index)"><span class="entypo-cancel"></span></button>
<li class="list-item action">
<button class="save" ng-click="AddField('phones')">添新</button>
<div class="title fleft full">Email</div>
<li class="list-item" ng:repeat="item in contact.emails">
<div class="item form-item field-left">
<input type="text" ng-model="item.value"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right">
<input type="text" ng-model="item.type"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right-right action">
<button class="delete" ng-click="DiscardField('emails', $index)"><span class="entypo-cancel"></span></button>
<li class="list-item action">
<button class="save" ng-click="AddField('emails')">添新</button>
<div class="title fleft full">地址</div>
<li class="list-item" ng:repeat="item in contact.addresses">
<div class="item form-item field-left">
<input type="text" ng-model="item.value"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right">
<input type="text" ng-model="item.type"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right-right action">
<button class="delete" ng-click="DiscardField('addresses', $index)"><span class="entypo-cancel"></span></button>
<li class="list-item action">
<button class="save" ng-click="AddField('addresses')">添新</button>
<div class="title fleft full">生日</div>
<div class="item form-item">
<input type="date" ng-model="contact.birthday"/>
<span class="form-item-decorator"></span>
<div class="title fleft full">网站</div>
<li class="list-item" ng:repeat="item in contact.websites">
<div class="item form-item field-left">
<input type="url" ng-model="item.value"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right">
<input type="text" ng-model="item.type"/>
<span class="form-item-decorator"></span>
<div class="item form-item field-right-right action">
<button class="delete" ng-click="DiscardField('websites', $index)"><span class="entypo-cancel"></span></button>
<li class="list-item action">
<button class="save" ng-click="AddField('websites')">添新</button>
<div class="title fleft full">备注</div>
<div class="item form-item">
<textarea ng-model="contact.notes"></textarea>
<span class="form-item-decorator"></span>