Aggiunto layout home
This commit is contained in:
parent
48d68db6b0
commit
314cefdc70
19 changed files with 705 additions and 26 deletions
179
hackatonApp/scss/home-items.scss
Normal file
179
hackatonApp/scss/home-items.scss
Normal file
|
|
@ -0,0 +1,179 @@
|
||||||
|
$home-category-bg: $theme-color-3;
|
||||||
|
$home-category-color: #FFFFFF;
|
||||||
|
|
||||||
|
//home entries
|
||||||
|
$entry-heading-color: $theme-color-3;
|
||||||
|
$entry-title-color: #FFFFFF;
|
||||||
|
|
||||||
|
$entry-excerpt-lines: 5;
|
||||||
|
$entry-font-size: 14px;
|
||||||
|
|
||||||
|
$home-categories-img-ratio: 1 1;
|
||||||
|
|
||||||
|
// Merge maps
|
||||||
|
$pre-img-ratios: append($pre-img-ratios, $home-categories-img-ratio);
|
||||||
|
|
||||||
|
.category-homes-view
|
||||||
|
{
|
||||||
|
background-color: $content-bg !important;
|
||||||
|
|
||||||
|
.category-homes
|
||||||
|
{
|
||||||
|
.item
|
||||||
|
{
|
||||||
|
padding-left: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item .thumbnail-outer
|
||||||
|
{
|
||||||
|
position: absolute;
|
||||||
|
left: 10px;
|
||||||
|
width: 40px;
|
||||||
|
|
||||||
|
.thumbnail
|
||||||
|
{
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.item .title
|
||||||
|
{
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item .description
|
||||||
|
{
|
||||||
|
color: lighten($content-color, 35%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.homes-categories-view
|
||||||
|
{
|
||||||
|
background-color: $content-bg !important;
|
||||||
|
|
||||||
|
.categories-list
|
||||||
|
{
|
||||||
|
@include flex-wrap(wrap);
|
||||||
|
}
|
||||||
|
|
||||||
|
.home-category
|
||||||
|
{
|
||||||
|
// THIS IS FUCKING AWESOME: http://caniuse.com/#feat=viewport-units
|
||||||
|
@include calc(height, "50vw - 15px");
|
||||||
|
box-shadow: 0 1px 3px rgba(darken($home-category-bg, 30%), 0.3);
|
||||||
|
border-radius: 2px;
|
||||||
|
position: relative;
|
||||||
|
display: block;
|
||||||
|
|
||||||
|
.category-image
|
||||||
|
{
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
border-radius: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.category-bg
|
||||||
|
{
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
left: 0px;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
-webkit-box-shadow: 0px 5px 10px 0px rgba(50, 50, 50, 0.5);
|
||||||
|
-moz-box-shadow: 0px 5px 10px 0px rgba(50, 50, 50, 0.5);
|
||||||
|
box-shadow: 0px 5px 10px 0px rgba(50, 50, 50, 0.5);
|
||||||
|
background-color: #FF4C4C;
|
||||||
|
}
|
||||||
|
|
||||||
|
.category-title
|
||||||
|
{
|
||||||
|
color: $home-category-color;
|
||||||
|
position: absolute;
|
||||||
|
top: 2px;
|
||||||
|
left: 8px;
|
||||||
|
font-weight: 500;
|
||||||
|
text-transform: capitalize;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.home-entries-view
|
||||||
|
{
|
||||||
|
background-color: $content-bg !important;
|
||||||
|
|
||||||
|
.entry-heading
|
||||||
|
{
|
||||||
|
padding-top: 8px;
|
||||||
|
padding-bottom: 8px;
|
||||||
|
background-color: darken($entry-heading-color, 10%);
|
||||||
|
border-color: #000;
|
||||||
|
|
||||||
|
.entry-title
|
||||||
|
{
|
||||||
|
color: $entry-title-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.entry-author
|
||||||
|
{
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.entry-content
|
||||||
|
{
|
||||||
|
padding-top: 8px;
|
||||||
|
padding-bottom: 0px;
|
||||||
|
|
||||||
|
.entry-excerpt
|
||||||
|
{
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
@include display(flex);
|
||||||
|
@include flex-direction(column);
|
||||||
|
-webkit-line-clamp: $entry-excerpt-lines; /* number of lines to show */
|
||||||
|
line-height: $entry-font-size + 4; /* fallback */
|
||||||
|
font-size: $entry-font-size; /* fallback */
|
||||||
|
max-height: ($entry-font-size + 4) * $entry-excerpt-lines; /* fallback */
|
||||||
|
|
||||||
|
*
|
||||||
|
{
|
||||||
|
font-size: inherit !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.entry-actions
|
||||||
|
{
|
||||||
|
padding: 10px 0px;
|
||||||
|
|
||||||
|
.col
|
||||||
|
{
|
||||||
|
padding:0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.actions
|
||||||
|
{
|
||||||
|
.button-icon
|
||||||
|
{
|
||||||
|
min-height: initial;
|
||||||
|
line-height: 28px;
|
||||||
|
padding: 0px;
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-icon:before
|
||||||
|
{
|
||||||
|
font-size: 28px;
|
||||||
|
line-height: 28px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.read-more
|
||||||
|
{
|
||||||
|
.button
|
||||||
|
{
|
||||||
|
margin:0px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -56,3 +56,4 @@
|
||||||
|
|
||||||
@import "scss/forms/forms.styles";
|
@import "scss/forms/forms.styles";
|
||||||
@import "scss/settings/settings.styles";
|
@import "scss/settings/settings.styles";
|
||||||
|
@import "scss/home-items";
|
||||||
|
|
|
||||||
|
|
@ -42,11 +42,22 @@ ion-side-menu
|
||||||
ion-item.item:first-child
|
ion-item.item:first-child
|
||||||
{
|
{
|
||||||
border-top:none;
|
border-top:none;
|
||||||
|
.icon:before
|
||||||
|
{
|
||||||
|
background-image: url("/img/icons/park2.png");
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-item.item:last-child
|
ion-item.item:last-child
|
||||||
{
|
{
|
||||||
border-bottom:none;
|
border-bottom:none;
|
||||||
|
|
||||||
|
.icon:before
|
||||||
|
{
|
||||||
|
color:red;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.heading-item
|
.heading-item
|
||||||
|
|
|
||||||
22
hackatonApp/www/home-categories.json
Normal file
22
hackatonApp/www/home-categories.json
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"id":"booking",
|
||||||
|
"title":"Prenota",
|
||||||
|
"image":"img/feeds/news.jpg"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id":"addticketwithphoto",
|
||||||
|
"title":"Aggiungi un biglietto",
|
||||||
|
"image":"img/feeds/sports.jpg"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id":"shop",
|
||||||
|
"title":"Spendi i crediti",
|
||||||
|
"image":"img/feeds/business.jpg"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id":"ranks",
|
||||||
|
"title":"Classifica",
|
||||||
|
"image":"img/feeds/entertainment.jpg"
|
||||||
|
}
|
||||||
|
]
|
||||||
BIN
hackatonApp/www/img/icons/park2.png
Normal file
BIN
hackatonApp/www/img/icons/park2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
BIN
hackatonApp/www/img/laura.jpg
Normal file
BIN
hackatonApp/www/img/laura.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 23 KiB |
|
|
@ -238,15 +238,6 @@ angular.module('your_app_name', [
|
||||||
})
|
})
|
||||||
|
|
||||||
//OTHERS
|
//OTHERS
|
||||||
.state('app.settings', {
|
|
||||||
url: "/settings",
|
|
||||||
views: {
|
|
||||||
'menuContent': {
|
|
||||||
templateUrl: "views/app/settings.html",
|
|
||||||
controller: 'SettingsCtrl'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
.state('app.forms', {
|
.state('app.forms', {
|
||||||
url: "/forms",
|
url: "/forms",
|
||||||
|
|
@ -276,6 +267,81 @@ angular.module('your_app_name', [
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
.state('app.allTickets', {
|
||||||
|
url: "/allTickets",
|
||||||
|
views: {
|
||||||
|
'menuContent': {
|
||||||
|
templateUrl: "views/app/allTickets.html",
|
||||||
|
controller: 'AllTicketsCtrl'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
.state('app.settings', {
|
||||||
|
url: "/settings",
|
||||||
|
views: {
|
||||||
|
'menuContent': {
|
||||||
|
templateUrl: "views/app/settings.html",
|
||||||
|
controller: 'SettingsCtrl'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
.state('app.booking', {
|
||||||
|
url: "/booking",
|
||||||
|
views: {
|
||||||
|
'menuContent': {
|
||||||
|
templateUrl: "views/app/booking.html",
|
||||||
|
controller: 'BookingCtrl'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.state('app.addTicketWithPhoto', {
|
||||||
|
url: "/addTicketWithPhoto",
|
||||||
|
views: {
|
||||||
|
'menuContent': {
|
||||||
|
templateUrl: "views/app/addTicketWithPhoto.html",
|
||||||
|
controller: 'AddTicketWithPhotoCtrl'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.state('app.shop', {
|
||||||
|
url: "/shop",
|
||||||
|
views: {
|
||||||
|
'menuContent': {
|
||||||
|
templateUrl: "views/app/shop.html",
|
||||||
|
controller: 'ShopCtrl'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.state('app.ranks', {
|
||||||
|
url: "/ranks",
|
||||||
|
views: {
|
||||||
|
'menuContent': {
|
||||||
|
templateUrl: "views/app/ranks.html",
|
||||||
|
controller: 'RanksCtrl'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.state('app.home', {
|
||||||
|
url: "/home",
|
||||||
|
views: {
|
||||||
|
'menuContent': {
|
||||||
|
templateUrl: "views/app/home.html",
|
||||||
|
controller: 'HomeCtrl'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
.state('app.category', {
|
||||||
|
url: "/category/:categoryId",
|
||||||
|
views: {
|
||||||
|
'menuContent': {
|
||||||
|
templateUrl: "views/app/category.html",
|
||||||
|
controller: 'CategoryCtrl'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
;
|
;
|
||||||
|
|
||||||
// if none of the above states are matched, use this as the fallback
|
// if none of the above states are matched, use this as the fallback
|
||||||
|
|
|
||||||
|
|
@ -7,10 +7,17 @@ angular.module('your_app_name.controllers', [])
|
||||||
// APP
|
// APP
|
||||||
.controller('AppCtrl', function($scope, $ionicConfig) {
|
.controller('AppCtrl', function($scope, $ionicConfig) {
|
||||||
|
|
||||||
|
$scope.user={};
|
||||||
|
$scope.user.name="Laura";
|
||||||
|
$scope.user.surname="Rossi";
|
||||||
|
$scope.user.email="laura.rossi@email.it";
|
||||||
|
$scope.user.telephone="3477608470";
|
||||||
|
$scope.user.picture="img/laura.jpg";
|
||||||
|
$scope.user.score="15463";
|
||||||
})
|
})
|
||||||
|
|
||||||
//LOGIN
|
//LOGIN
|
||||||
.controller('LoginCtrl', function($scope, $state, $templateCache, $q, $rootScope) {
|
/*.controller('LoginCtrl', function($scope, $state, $templateCache, $q, $rootScope) {
|
||||||
$scope.doLogIn = function(){
|
$scope.doLogIn = function(){
|
||||||
$state.go('app.feeds-categories');
|
$state.go('app.feeds-categories');
|
||||||
};
|
};
|
||||||
|
|
@ -27,9 +34,26 @@ angular.module('your_app_name.controllers', [])
|
||||||
$scope.selected_tab = data.title;
|
$scope.selected_tab = data.title;
|
||||||
});
|
});
|
||||||
|
|
||||||
})
|
})*/
|
||||||
|
.controller('LoginCtrl', function($scope, $state, $templateCache, $q, $rootScope) {
|
||||||
|
$scope.doLogIn = function(){
|
||||||
|
$state.go('app.home');
|
||||||
|
};
|
||||||
|
|
||||||
.controller('SignupCtrl', function($scope, $state) {
|
$scope.user = {};
|
||||||
|
|
||||||
|
$scope.user.email = "tuaemail@dominio.com";
|
||||||
|
$scope.user.pin = "12345";
|
||||||
|
|
||||||
|
// We need this for the form validation
|
||||||
|
$scope.selected_tab = "";
|
||||||
|
|
||||||
|
$scope.$on('my-tabs-changed', function (event, data) {
|
||||||
|
$scope.selected_tab = data.title;
|
||||||
|
});
|
||||||
|
|
||||||
|
})
|
||||||
|
/*.controller('SignupCtrl', function($scope, $state) {
|
||||||
$scope.user = {};
|
$scope.user = {};
|
||||||
|
|
||||||
$scope.user.email = "john@doe.com";
|
$scope.user.email = "john@doe.com";
|
||||||
|
|
@ -37,16 +61,35 @@ angular.module('your_app_name.controllers', [])
|
||||||
$scope.doSignUp = function(){
|
$scope.doSignUp = function(){
|
||||||
$state.go('app.feeds-categories');
|
$state.go('app.feeds-categories');
|
||||||
};
|
};
|
||||||
|
})*/
|
||||||
|
.controller('SignupCtrl', function($scope, $state) {
|
||||||
|
$scope.user = {};
|
||||||
|
|
||||||
|
$scope.user.email = "tuaemail@dominio.com";
|
||||||
|
|
||||||
|
$scope.doSignUp = function(){
|
||||||
|
$state.go('app.home');
|
||||||
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
.controller('ForgotPasswordCtrl', function($scope, $state) {
|
/*.controller('ForgotPasswordCtrl', function($scope, $state) {
|
||||||
$scope.recoverPassword = function(){
|
$scope.recoverPassword = function(){
|
||||||
$state.go('app.feeds-categories');
|
$state.go('app.feeds-categories');
|
||||||
};
|
};
|
||||||
|
|
||||||
|
$scope.user = {};
|
||||||
|
})*/
|
||||||
|
|
||||||
|
.controller('ForgotPasswordCtrl', function($scope, $state) {
|
||||||
|
$scope.recoverPassword = function(){
|
||||||
|
//$state.go('app.home');
|
||||||
|
alert("non implementato");
|
||||||
|
};
|
||||||
|
|
||||||
$scope.user = {};
|
$scope.user = {};
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
.controller('RateApp', function($scope) {
|
.controller('RateApp', function($scope) {
|
||||||
$scope.rateApp = function(){
|
$scope.rateApp = function(){
|
||||||
if(ionic.Platform.isIOS()){
|
if(ionic.Platform.isIOS()){
|
||||||
|
|
@ -216,6 +259,8 @@ angular.module('your_app_name.controllers', [])
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//this method brings posts for a source provider
|
//this method brings posts for a source provider
|
||||||
.controller('FeedEntriesCtrl', function($scope, $stateParams, $http, FeedList, $q, $ionicLoading, BookMarkService) {
|
.controller('FeedEntriesCtrl', function($scope, $stateParams, $http, FeedList, $q, $ionicLoading, BookMarkService) {
|
||||||
$scope.feed = [];
|
$scope.feed = [];
|
||||||
|
|
@ -461,5 +506,44 @@ angular.module('your_app_name.controllers', [])
|
||||||
window.plugins.socialsharing.share(null, null, $scope.images);
|
window.plugins.socialsharing.share(null, null, $scope.images);
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
.controller('BookingCtrl', function($scope, $http) {
|
||||||
|
})
|
||||||
|
.controller('RanksCtrl', function($scope, $http) {
|
||||||
|
})
|
||||||
|
.controller('ShopCtrl', function($scope, $http) {
|
||||||
|
console.log("icic");
|
||||||
|
})
|
||||||
|
.controller('BookingCtrl', function($scope, $http) {
|
||||||
|
})
|
||||||
|
.controller('AddTicketWithCtrl', function($scope, $http) {
|
||||||
|
})
|
||||||
|
.controller('AllTicketsCtrl', function($scope, $http) {
|
||||||
|
})
|
||||||
|
.controller('HomeCtrl', function($scope, $http) {
|
||||||
|
|
||||||
|
$scope.home_categories = [];
|
||||||
|
|
||||||
|
$http.get('home-categories.json').success(function(response) {
|
||||||
|
$scope.home_categories = response;
|
||||||
|
});
|
||||||
|
console.log("HOME");
|
||||||
|
})
|
||||||
|
.controller('CategoryCtrl', function($scope, $http, $stateParams) {
|
||||||
|
$scope.category_sources = [];
|
||||||
|
|
||||||
|
$scope.categoryId = $stateParams.categoryId;
|
||||||
|
|
||||||
|
$http.get('home-categories.json').success(function(response) {
|
||||||
|
var category = _.find(response, {id: $scope.categoryId});
|
||||||
|
$scope.categoryTitle = category.title;
|
||||||
|
$scope.category_sources = category.home_sources;
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.controller('HomeEntriesCtrl', function($scope, $stateParams, $http, $q, $ionicLoading) {
|
||||||
|
$scope.home = [];
|
||||||
|
|
||||||
|
var categoryId = $stateParams.categoryId,
|
||||||
|
sourceId = $stateParams.sourceId;
|
||||||
|
})
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
|
||||||
|
|
@ -209,4 +209,5 @@ angular.module('your_app_name.factories', [])
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
|
||||||
|
|
@ -224,4 +224,6 @@ angular.module('your_app_name.services', [])
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
|
||||||
35
hackatonApp/www/views/app/addTicketWithPhoto.html
Normal file
35
hackatonApp/www/views/app/addTicketWithPhoto.html
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
<ion-view class="bookmarks-view">
|
||||||
|
<ion-nav-title>
|
||||||
|
<span>Bookmarks</span>
|
||||||
|
</ion-nav-title>
|
||||||
|
<ion-content>
|
||||||
|
<div ng-if="(bookmarks.wordpress.length == 0 && bookmarks.feeds.length == 0)" class="row bookmarks-container">
|
||||||
|
<div class="col col-center">
|
||||||
|
<div class="empty-results">
|
||||||
|
<i class="icon ion-bookmark"></i>
|
||||||
|
<h3 class="no-bookmarks">There's nothing here yet. Start exploring!</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul ng-if="(bookmarks.wordpress.length > 0 || bookmarks.feeds.length > 0)" class="bookmarks-list">
|
||||||
|
<div ng-if="bookmarks.feeds.length > 0" class="item item-divider">
|
||||||
|
Feeds Bookmarks
|
||||||
|
</div>
|
||||||
|
<li class="bookmark-item" ng-repeat="bookmark in bookmarks.feeds">
|
||||||
|
<a ng-click=goToFeedPost(bookmark.link)>
|
||||||
|
<h2 class="post-title" ng-bind-html="bookmark.title | rawHtml"></h2>
|
||||||
|
<p class="post-date">Posted <span class="post-time" am-time-ago="bookmark.date"></span></p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<div ng-if="bookmarks.wordpress.length > 0" class="item item-divider">
|
||||||
|
Wordpress bookmarks
|
||||||
|
</div>
|
||||||
|
<li class="bookmark-item" ng-repeat="bookmark in bookmarks.wordpress">
|
||||||
|
<a ng-click=goToWordpressPost(bookmark.id)>
|
||||||
|
<h2 class="post-title" ng-bind-html="bookmark.title | rawHtml"></h2>
|
||||||
|
<p class="post-date">Posted <span class="post-time" am-time-ago="bookmark.date"></span></p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</ion-content>
|
||||||
|
</ion-view>
|
||||||
38
hackatonApp/www/views/app/allTickets.html
Normal file
38
hackatonApp/www/views/app/allTickets.html
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
<ion-view class="bookmarks-view">
|
||||||
|
<ion-nav-buttons side="left">
|
||||||
|
<button menu-toggle="left" class="button button-icon icon ion-navicon"></button>
|
||||||
|
</ion-nav-buttons>
|
||||||
|
<ion-nav-title>
|
||||||
|
<span>Bookmarks</span>
|
||||||
|
</ion-nav-title>
|
||||||
|
<ion-content>
|
||||||
|
<div ng-if="(bookmarks.wordpress.length == 0 && bookmarks.feeds.length == 0)" class="row bookmarks-container">
|
||||||
|
<div class="col col-center">
|
||||||
|
<div class="empty-results">
|
||||||
|
<i class="icon ion-bookmark"></i>
|
||||||
|
<h3 class="no-bookmarks">There's nothing here yet. Start exploring!</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul ng-if="(bookmarks.wordpress.length > 0 || bookmarks.feeds.length > 0)" class="bookmarks-list">
|
||||||
|
<div ng-if="bookmarks.feeds.length > 0" class="item item-divider">
|
||||||
|
Feeds Bookmarks
|
||||||
|
</div>
|
||||||
|
<li class="bookmark-item" ng-repeat="bookmark in bookmarks.feeds">
|
||||||
|
<a ng-click=goToFeedPost(bookmark.link)>
|
||||||
|
<h2 class="post-title" ng-bind-html="bookmark.title | rawHtml"></h2>
|
||||||
|
<p class="post-date">Posted <span class="post-time" am-time-ago="bookmark.date"></span></p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<div ng-if="bookmarks.wordpress.length > 0" class="item item-divider">
|
||||||
|
Wordpress bookmarks
|
||||||
|
</div>
|
||||||
|
<li class="bookmark-item" ng-repeat="bookmark in bookmarks.wordpress">
|
||||||
|
<a ng-click=goToWordpressPost(bookmark.id)>
|
||||||
|
<h2 class="post-title" ng-bind-html="bookmark.title | rawHtml"></h2>
|
||||||
|
<p class="post-date">Posted <span class="post-time" am-time-ago="bookmark.date"></span></p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</ion-content>
|
||||||
|
</ion-view>
|
||||||
35
hackatonApp/www/views/app/booking.html
Normal file
35
hackatonApp/www/views/app/booking.html
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
<ion-view class="bookmarks-view">
|
||||||
|
<ion-nav-title>
|
||||||
|
<span>Bookmarks</span>
|
||||||
|
</ion-nav-title>
|
||||||
|
<ion-content>
|
||||||
|
<div ng-if="(bookmarks.wordpress.length == 0 && bookmarks.feeds.length == 0)" class="row bookmarks-container">
|
||||||
|
<div class="col col-center">
|
||||||
|
<div class="empty-results">
|
||||||
|
<i class="icon ion-bookmark"></i>
|
||||||
|
<h3 class="no-bookmarks">There's nothing here yet. Start exploring!</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul ng-if="(bookmarks.wordpress.length > 0 || bookmarks.feeds.length > 0)" class="bookmarks-list">
|
||||||
|
<div ng-if="bookmarks.feeds.length > 0" class="item item-divider">
|
||||||
|
Feeds Bookmarks
|
||||||
|
</div>
|
||||||
|
<li class="bookmark-item" ng-repeat="bookmark in bookmarks.feeds">
|
||||||
|
<a ng-click=goToFeedPost(bookmark.link)>
|
||||||
|
<h2 class="post-title" ng-bind-html="bookmark.title | rawHtml"></h2>
|
||||||
|
<p class="post-date">Posted <span class="post-time" am-time-ago="bookmark.date"></span></p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<div ng-if="bookmarks.wordpress.length > 0" class="item item-divider">
|
||||||
|
Wordpress bookmarks
|
||||||
|
</div>
|
||||||
|
<li class="bookmark-item" ng-repeat="bookmark in bookmarks.wordpress">
|
||||||
|
<a ng-click=goToWordpressPost(bookmark.id)>
|
||||||
|
<h2 class="post-title" ng-bind-html="bookmark.title | rawHtml"></h2>
|
||||||
|
<p class="post-date">Posted <span class="post-time" am-time-ago="bookmark.date"></span></p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</ion-content>
|
||||||
|
</ion-view>
|
||||||
48
hackatonApp/www/views/app/category.html
Normal file
48
hackatonApp/www/views/app/category.html
Normal file
|
|
@ -0,0 +1,48 @@
|
||||||
|
<ion-view class="settings-view">
|
||||||
|
|
||||||
|
<ion-nav-title>
|
||||||
|
<span>Settings</span>
|
||||||
|
</ion-nav-title>
|
||||||
|
<ion-content>
|
||||||
|
<ul class="list">
|
||||||
|
|
||||||
|
<div class="item item-divider">TOGGLE</div>
|
||||||
|
|
||||||
|
<ion-toggle ng-model="airplaneMode" toggle-class="toggle-assertive">Airplane Mode</ion-toggle>
|
||||||
|
<ion-toggle ng-model="wifi" toggle-class="toggle-positive">Wi-Fi</ion-toggle>
|
||||||
|
<ion-toggle ng-model="bluetooth" toggle-class="toggle-calm">Bluetooth</ion-toggle>
|
||||||
|
<ion-toggle ng-model="personalHotspot" toggle-class="toggle-dark">Personal Hotspot</ion-toggle>
|
||||||
|
|
||||||
|
<div class="item item-divider">CHECKBOXES</div>
|
||||||
|
|
||||||
|
<ion-checkbox ng-model="checkOpt1">Option 1</ion-checkbox>
|
||||||
|
<ion-checkbox ng-model="checkOpt2">Option 2</ion-checkbox>
|
||||||
|
<ion-checkbox ng-model="checkOpt3">Option 3</ion-checkbox>
|
||||||
|
|
||||||
|
<div class="item item-divider">RADIO</div>
|
||||||
|
|
||||||
|
<ion-radio ng-model="radioChoice" ng-value="'A'">Choose A</ion-radio>
|
||||||
|
<ion-radio ng-model="radioChoice" ng-value="'B'">Choose B</ion-radio>
|
||||||
|
<ion-radio ng-model="radioChoice" ng-value="'C'">Choose C</ion-radio>
|
||||||
|
|
||||||
|
<div class="item item-divider">RANGES</div>
|
||||||
|
|
||||||
|
<div class="range">
|
||||||
|
<i class="icon ion-volume-low"></i>
|
||||||
|
<input type="range" name="volume">
|
||||||
|
<i class="icon ion-volume-high"></i>
|
||||||
|
</div>
|
||||||
|
<div class="item range range-positive">
|
||||||
|
<i class="icon ion-ios-sunny-outline"></i>
|
||||||
|
<input type="range" name="volume" min="0" max="100" value="33">
|
||||||
|
<i class="icon ion-ios-sunny"></i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="item item-divider"></div>
|
||||||
|
|
||||||
|
<button class="button button-block button-assertive" ng-click="showLogOutMenu()">
|
||||||
|
Logout
|
||||||
|
</button>
|
||||||
|
</ul>
|
||||||
|
</ion-content>
|
||||||
|
</ion-view>
|
||||||
34
hackatonApp/www/views/app/home-entries.html
Normal file
34
hackatonApp/www/views/app/home-entries.html
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
<ion-view class="home-entries-view">
|
||||||
|
<ion-nav-title>
|
||||||
|
<span>{{sourceTitle}}</span>
|
||||||
|
</ion-nav-title>
|
||||||
|
<ion-content>
|
||||||
|
<!-- Refresh to get the new posts -->
|
||||||
|
<ion-refresher pulling-text="Pull to refresh..." on-refresh="doRefresh()">
|
||||||
|
</ion-refresher>
|
||||||
|
|
||||||
|
<div class="entries-list">
|
||||||
|
<div ng-repeat="entry in home.entries" class="list card entry-item">
|
||||||
|
<div class="entry-heading item item-text-wrap">
|
||||||
|
<h2 class="entry-title" ng-bind-html="entry.title | rawHtml"></h2>
|
||||||
|
<p class="entry-author">
|
||||||
|
Published <span>{{ entry.publishedDate | parseDate | amTimeAgo }}</span>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="entry-content item item-text-wrap">
|
||||||
|
<p class="entry-excerpt" dynamic-anchor-fix ng-bind-html="entry.contentSnippet | rawHtml"></p>
|
||||||
|
<div class="entry-actions row">
|
||||||
|
<div class="actions col col-center col-66">
|
||||||
|
<a class="button button-icon icon ion-bookmark" ng-click="bookmarkPost(entry)"></a>
|
||||||
|
</div>
|
||||||
|
<div class="read-more col col-center col-33" dynamic-anchor-fix>
|
||||||
|
<a class="button button-small button-block button-assertive" ng-href="{{entry.link}}">
|
||||||
|
Read more
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</ion-content>
|
||||||
|
</ion-view>
|
||||||
29
hackatonApp/www/views/app/home.html
Normal file
29
hackatonApp/www/views/app/home.html
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
<ion-view class="homes-categories-view">
|
||||||
|
<ion-nav-buttons side="left">
|
||||||
|
<button menu-toggle="left" class="button button-icon icon ion-navicon"></button>
|
||||||
|
</ion-nav-buttons>
|
||||||
|
<ion-nav-title>
|
||||||
|
<span>Home</span>
|
||||||
|
</ion-nav-title>
|
||||||
|
<ion-content>
|
||||||
|
<div class="list card">
|
||||||
|
|
||||||
|
<div class="item item-thumbnail-left">
|
||||||
|
<img src="">
|
||||||
|
<h2>Punti {{user.score}}</h2>
|
||||||
|
<p>dkdkdk</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row categories-list">
|
||||||
|
<div ng-repeat="category in home_categories" class="col col-50">
|
||||||
|
<a class="home-category" ui-sref="app.category({categoryId: (category.id | slugify)})">
|
||||||
|
<pre-img ratio="_1_1" helper-class="square-image">
|
||||||
|
<img class="category-image" ng-src="{{category.image}}" spinner-on-load>
|
||||||
|
</pre-img>
|
||||||
|
<div class="category-bg"></div>
|
||||||
|
<span class="category-title">{{category.title}}</span>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</ion-content>
|
||||||
|
</ion-view>
|
||||||
35
hackatonApp/www/views/app/ranks.html
Normal file
35
hackatonApp/www/views/app/ranks.html
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
<ion-view class="bookmarks-view">
|
||||||
|
<ion-nav-title>
|
||||||
|
<span>Bookmarks</span>
|
||||||
|
</ion-nav-title>
|
||||||
|
<ion-content>
|
||||||
|
<div ng-if="(bookmarks.wordpress.length == 0 && bookmarks.feeds.length == 0)" class="row bookmarks-container">
|
||||||
|
<div class="col col-center">
|
||||||
|
<div class="empty-results">
|
||||||
|
<i class="icon ion-bookmark"></i>
|
||||||
|
<h3 class="no-bookmarks">There's nothing here yet. Start exploring!</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul ng-if="(bookmarks.wordpress.length > 0 || bookmarks.feeds.length > 0)" class="bookmarks-list">
|
||||||
|
<div ng-if="bookmarks.feeds.length > 0" class="item item-divider">
|
||||||
|
Feeds Bookmarks
|
||||||
|
</div>
|
||||||
|
<li class="bookmark-item" ng-repeat="bookmark in bookmarks.feeds">
|
||||||
|
<a ng-click=goToFeedPost(bookmark.link)>
|
||||||
|
<h2 class="post-title" ng-bind-html="bookmark.title | rawHtml"></h2>
|
||||||
|
<p class="post-date">Posted <span class="post-time" am-time-ago="bookmark.date"></span></p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<div ng-if="bookmarks.wordpress.length > 0" class="item item-divider">
|
||||||
|
Wordpress bookmarks
|
||||||
|
</div>
|
||||||
|
<li class="bookmark-item" ng-repeat="bookmark in bookmarks.wordpress">
|
||||||
|
<a ng-click=goToWordpressPost(bookmark.id)>
|
||||||
|
<h2 class="post-title" ng-bind-html="bookmark.title | rawHtml"></h2>
|
||||||
|
<p class="post-date">Posted <span class="post-time" am-time-ago="bookmark.date"></span></p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</ion-content>
|
||||||
|
</ion-view>
|
||||||
50
hackatonApp/www/views/app/shop.html
Normal file
50
hackatonApp/www/views/app/shop.html
Normal file
|
|
@ -0,0 +1,50 @@
|
||||||
|
<ion-view class="settings-view">
|
||||||
|
<ion-nav-buttons side="left">
|
||||||
|
<button menu-toggle="left" class="button button-icon icon ion-navicon"></button>
|
||||||
|
</ion-nav-buttons>
|
||||||
|
<ion-nav-title>
|
||||||
|
<span>Settings</span>
|
||||||
|
</ion-nav-title>
|
||||||
|
<ion-content>
|
||||||
|
<ul class="list">
|
||||||
|
|
||||||
|
<div class="item item-divider">TOGGLE</div>
|
||||||
|
|
||||||
|
<ion-toggle ng-model="airplaneMode" toggle-class="toggle-assertive">Airplane Mode</ion-toggle>
|
||||||
|
<ion-toggle ng-model="wifi" toggle-class="toggle-positive">Wi-Fi</ion-toggle>
|
||||||
|
<ion-toggle ng-model="bluetooth" toggle-class="toggle-calm">Bluetooth</ion-toggle>
|
||||||
|
<ion-toggle ng-model="personalHotspot" toggle-class="toggle-dark">Personal Hotspot</ion-toggle>
|
||||||
|
|
||||||
|
<div class="item item-divider">CHECKBOXES</div>
|
||||||
|
|
||||||
|
<ion-checkbox ng-model="checkOpt1">Option 1</ion-checkbox>
|
||||||
|
<ion-checkbox ng-model="checkOpt2">Option 2</ion-checkbox>
|
||||||
|
<ion-checkbox ng-model="checkOpt3">Option 3</ion-checkbox>
|
||||||
|
|
||||||
|
<div class="item item-divider">RADIO</div>
|
||||||
|
|
||||||
|
<ion-radio ng-model="radioChoice" ng-value="'A'">Choose A</ion-radio>
|
||||||
|
<ion-radio ng-model="radioChoice" ng-value="'B'">Choose B</ion-radio>
|
||||||
|
<ion-radio ng-model="radioChoice" ng-value="'C'">Choose C</ion-radio>
|
||||||
|
|
||||||
|
<div class="item item-divider">RANGES</div>
|
||||||
|
|
||||||
|
<div class="range">
|
||||||
|
<i class="icon ion-volume-low"></i>
|
||||||
|
<input type="range" name="volume">
|
||||||
|
<i class="icon ion-volume-high"></i>
|
||||||
|
</div>
|
||||||
|
<div class="item range range-positive">
|
||||||
|
<i class="icon ion-ios-sunny-outline"></i>
|
||||||
|
<input type="range" name="volume" min="0" max="100" value="33">
|
||||||
|
<i class="icon ion-ios-sunny"></i>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="item item-divider"></div>
|
||||||
|
|
||||||
|
<button class="button button-block button-assertive" ng-click="showLogOutMenu()">
|
||||||
|
Logout
|
||||||
|
</button>
|
||||||
|
</ul>
|
||||||
|
</ion-content>
|
||||||
|
</ion-view>
|
||||||
|
|
@ -3,10 +3,7 @@
|
||||||
<ion-nav-bar class="bar app-top-bar">
|
<ion-nav-bar class="bar app-top-bar">
|
||||||
<ion-nav-back-button>
|
<ion-nav-back-button>
|
||||||
</ion-nav-back-button>
|
</ion-nav-back-button>
|
||||||
<ion-nav-buttons side="left">
|
|
||||||
<button class="button button-icon button-clear ion-navicon" menu-toggle="left">
|
|
||||||
</button>
|
|
||||||
</ion-nav-buttons>
|
|
||||||
</ion-nav-bar>
|
</ion-nav-bar>
|
||||||
<ion-nav-view name="menuContent"></ion-nav-view>
|
<ion-nav-view name="menuContent"></ion-nav-view>
|
||||||
</ion-side-menu-content>
|
</ion-side-menu-content>
|
||||||
|
|
@ -14,26 +11,38 @@
|
||||||
<ion-side-menu side="left" class="main-menu" expose-aside-when="large">
|
<ion-side-menu side="left" class="main-menu" expose-aside-when="large">
|
||||||
<ion-content>
|
<ion-content>
|
||||||
<ion-list>
|
<ion-list>
|
||||||
<ion-item class="heading-item item item-avatar" nav-clear menu-close ui-sref="app.profile">
|
<ion-item class="heading-item item item-avatar" nav-clear menu-close ui-sref="#">
|
||||||
<div class="user-image-container">
|
<div class="user-image-container">
|
||||||
<pre-img ratio="_1_1" helper-class="rounded-image">
|
<pre-img ratio="_1_1" helper-class="rounded-image">
|
||||||
<img class="user-image" ng-src="https://s3.amazonaws.com/uifaces/faces/twitter/brynn/128.jpg" spinner-on-load>
|
<img class="user-image" ng-src="{{user.picture}}" spinner-on-load>
|
||||||
</pre-img>
|
</pre-img>
|
||||||
</div>
|
</div>
|
||||||
<h2 class="greeting">Hi Brynn</h2>
|
<h2 class="greeting">Ciao {{user.name}}.</h2>
|
||||||
<p class="message">Welcome back</p>
|
<p class="message">Bentornata!</p>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.bookmarks">
|
<ion-item class="item-icon-left" menu-close ui-sref="app.allTickets">
|
||||||
|
<i class="icon ion-pricetags"></i>
|
||||||
|
<h2 class="menu-text">Tutti i biglietti</h2>
|
||||||
|
</ion-item>
|
||||||
|
<ion-item class="item-icon-left" menu-close ui-sref="app.settings">
|
||||||
|
<i class="icon ion-gear-a"></i>
|
||||||
|
<h2 class="menu-text">Impostazioni</h2>
|
||||||
|
</ion-item>
|
||||||
|
<ion-item class="item-icon-left" menu-close ui-sref="#">
|
||||||
|
<i class="icon ion-power"></i>
|
||||||
|
<h2 class="menu-text">Logout</h2>
|
||||||
|
</ion-item>
|
||||||
|
<!-- <ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.bookmarks">
|
||||||
<i class="icon ion-bookmark"></i>
|
<i class="icon ion-bookmark"></i>
|
||||||
<h2 class="menu-text">Saved for later</h2>
|
<h2 class="menu-text">Tutti i biglietti!</h2>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.feeds-categories">
|
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.feeds-categories">
|
||||||
<i class="icon ion-radio-waves"></i>
|
<i class="icon ion-radio-waves"></i>
|
||||||
<h2 class="menu-text">Feeds</h2>
|
<h2 class="menu-text">Impostazioni</h2>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.wordpress">
|
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.wordpress">
|
||||||
<i class="icon ion-social-wordpress"></i>
|
<i class="icon ion-social-wordpress"></i>
|
||||||
<h2 class="menu-text">Wordpress</h2>
|
<h2 class="menu-text">Logout</h2>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.layouts">
|
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.layouts">
|
||||||
<i class="icon ion-wand"></i>
|
<i class="icon ion-wand"></i>
|
||||||
|
|
@ -50,7 +59,7 @@
|
||||||
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.settings">
|
<ion-item class="item-icon-left" nav-clear menu-close ui-sref="app.settings">
|
||||||
<i class="icon ion-gear-a"></i>
|
<i class="icon ion-gear-a"></i>
|
||||||
<h2 class="menu-text">Settings</h2>
|
<h2 class="menu-text">Settings</h2>
|
||||||
</ion-item>
|
</ion-item>-->
|
||||||
|
|
||||||
</ion-list>
|
</ion-list>
|
||||||
</ion-content>
|
</ion-content>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue