post new offering travel, and user page
arnaucode idoctnef@openmailbox.org
Thu, 26 Jan 2017 14:13:32 +0100
15 files changed,
176 insertions(+),
103 deletions(-)
jump to
M
www/css/style.css
→
www/css/style.css
@@ -1,50 +1,95 @@
-/* Empty. Add your own CSS if you like */ -.o-imgMenu{ - width: 25px!important; - height: 25px!important; +.o_noPaddingMargin{ + padding: 0!important; + margin: 0!important; +} +.o_mainRow{ + height: calc(100%/4); +} +.o_floatRight{ + float: right; +} +/* + SISTEMA DE COLORS + + users: blue + routines: red + diets: yellow + + la nomenclatura és: + o_bColor + la 'o' és de 'own', per saber que és una classe pròpia nostra i que no colisioni amb les classes dels frameworks css + la 'b' és de background, si és una 'f' és de font + a part podem posar ColorDark o ColorLight per fer un color més fosc o més clar +*/ +.o_bSidenav{ + background: #333b42!important; + color: #c6ccd2!important; } -.o-imgTitle{ - width: 40px!important; - height: 40px!important; +.o_fWhiteLight{ + color: #c6ccd2!important; +} +.o_bGrey{ + background: #e6e6e6!important; + color: #000000!important; +} +.o_bGreyLight{ + background: #CFD8DC!important; + color: #000000!important; +} +/* backgrounds color: bColor */ +.o_bRed{ + background: rgb(252,87,85)!important; + color: #ffffff!important; +} +.o_bRedLight{ + background: #E57373!important; + color: #ffffff!important; +} +.o_bRedDark{ + background: rgb(218, 89, 120)!important; + color: #ffffff!important; +} +.o_bGreen{ + background: rgb(123,195,70)!important; + color: #ffffff!important; +} +.o_bGreenLight{ + background: #81C784!important; + color: #ffffff!important; } -.o-imgSelectAvatar{ - width: 45px!important; - height: 45px!important; +.o_bGreenDark{ + background: rgb(54,188,155)!important; + color: #ffffff!important; } -.o-bold{ - font-weight: bold!important; +.o_bBlue{ + background: rgb(104,195,240)!important; + color: #ffffff!important; } -.o-float-right{ - float: right; +.o_bBlueDark{ + background: rgb(72,118,180)!important; + color: #ffffff!important; } -.o-text-right{ - text-align: right; +.o_bYellow{ + background: rgb(251,187,61)!important; + color: #ffffff!important; } -.o-mini-text{ - font-size: 12px; - display: inline-block; +.o_bYellowDark{ + background: #F9A825!important; + color: #ffffff!important; } -.o-img-joined{ - width: 20px!important; - height: 20px!important; +.o_bOrange{ + background: rgb(251, 126, 61)!important; + color: #ffffff!important; } -.o-img-new{ - width: 30px!important; - height: 30px!important; +.o_bOrangeDark{ + background: #FF7043!important; + color: #ffffff!important; } -.o-badgeCollectivized{ - background: #33CD5F; - padding: 5px; - border-radius: 5px; - font-size: 12px; - color: #ffffff; - font-weight: bold; +.o_bPurple{ + background: #9575CD!important; + color: #ffffff!important; } -.o-badge-calm{ - background: #11C1F3; - padding: 5px; - border-radius: 7px; - font-size: 12px; - color: #ffffff; - font-weight: bold; +.o_bPurpleDark{ + background: #512DA8!important; + color: #ffffff!important; }
M
www/js/app.js
→
www/js/app.js
@@ -131,7 +131,7 @@ }
} }) .state('app.user', { - url: '/users/:username', + url: '/users/:userid', views: { 'menuContent': { templateUrl: 'templates/user.html',@@ -201,4 +201,31 @@ };
$translateProvider.useSanitizeValueStrategy('escape'); - }]); + }]) + .factory('httpInterceptor', function httpInterceptor($q, $window, $location) { + return { + request: function (config) { + return config; + }, + requestError: function (config) { + return config; + }, + response: function (res) { + return res; + }, + responseError: function (res) { + return res; + } + } + }) + .factory('api', function ($http) { + return { + init: function () { + $http.defaults.headers.common['X-Access-Token'] = localStorage.getItem("cim_app_token"); + $http.defaults.headers.post['X-Access-Token'] = localStorage.getItem("cim_app_token"); + } + }; + }) + .run(function (api) { + api.init(); + });
M
www/js/login.js
→
www/js/login.js
@@ -9,7 +9,7 @@ $scope.doLogin = function() {
console.log('Doing login', $scope.loginData); $http({ - url: urlapi + 'auth', + url: urlapi + 'login', method: "POST", data: $scope.loginData })
M
www/js/offerCar.js
→
www/js/offerCar.js
@@ -1,5 +1,23 @@
angular.module('app.offerCar', ['pascalprecht.translate']) -.controller('OfferCarCtrl', function($scope, $stateParams, $translate, $filter) { +.controller('OfferCarCtrl', function($scope, $stateParams, $translate, + $http, $filter) { + $scope.newtravel={}; + $scope.createTravel =function(){ + $scope.newtravel.type="offering"; + $http({ + url: urlapi + 'travels', + method: "POST", + data: $scope.newtravel + }) + .then(function(data) { + console.log(data); + window.location="#app/travels" + }, + function(data) { // optional + // failed + console.log(data); + }); + }; });
M
www/js/signup.js
→
www/js/signup.js
@@ -6,7 +6,7 @@ $scope.doSignup = function() {
console.log('Doing signup', $scope.signupData); if ($scope.emptyParams($scope.signupData)) { $http({ - url: urlapi + 'users', + url: urlapi + 'signup', method: "POST", data: $scope.signupData })@@ -49,7 +49,7 @@ }
if (obj.password == undefined) { return (false); } - if (obj.mail == undefined) { + if (obj.email == undefined) { return (false); } /*if(obj.avatar==undefined)
M
www/js/user.js
→
www/js/user.js
@@ -1,32 +1,14 @@
angular.module('app.user', ['pascalprecht.translate']) .controller('UserCtrl', function($scope, $stateParams, $http, $filter, $ionicModal) { - if(localStorage.getItem('c_token')){// adding token to the headers - $http.defaults.headers.common['X-Access-Token'] = localStorage.getItem('c_token'); - } - $scope.storageusername=localStorage.getItem("c_username"); - $scope.users= JSON.parse(localStorage.getItem('c_users')); - $scope.user = $filter('filter')($scope.users, {username: $stateParams.username}, true)[0]; - //$scope.user=""; - console.log($stateParams.username); - /*$http.get(urlapi + 'users/byusername/'+$stateParams.username) - .success(function(data, status, headers,config){ - console.log('data success'); - console.log(data); // for browser console - $scope.user = data; // for UI - }) - .error(function(data, status, headers,config){ - console.log('data error'); - }) - .then(function(result){ - user = result.data; - });*/ + - $http.get(urlapi + 'travels/user/'+$stateParams.username) + $scope.user={}; + $http.get(urlapi + 'users/getByUserId/'+$stateParams.userid) .success(function(data, status, headers,config){ console.log('data success'); console.log(data); // for browser console - $scope.travels = data; // for UI + $scope.user = data; // for UI }) .error(function(data, status, headers,config){ console.log('data error');
M
www/templates/main.html
→
www/templates/main.html
@@ -1,18 +1,18 @@
<ion-view view-title="Main"> <ion-content> - <a ng-href="#/app/user/{{storageuser._id}}" class="item item-icon-left o_bBlue"> + <a ng-href="#/app/travels" class="item item-icon-left o_bGreenDark"> <i class="icon ion-android-car"></i> Travels </a> - <a href="#/app/dashboard" class="item item-icon-left o_bGreen"> + <a href="#/app/users" class="item item-icon-left o_bBlue"> <i class="icon ion-person-stalker"></i> Users </a> - <a href="#/app/marks/{{storageuser._id}}" class="item item-icon-left o_bOrange"> + <a href="#/app/settings" class="item item-icon-left o_bOrange"> <i class="icon ion-settings"></i> Settings </a> - <a href="#/app/runs/{{storageuser._id}}" class="item item-icon-left o_bPurple"> + <a href="#/app/help" class="item item-icon-left"> <i class="icon ion-ios-help-outline"></i> Help </a>
M
www/templates/offerCar.html
→
www/templates/offerCar.html
@@ -1,6 +1,6 @@
<ion-view view-title="Offer Car"> <ion-content> - <form class="list"> + <div class="list"> <label class="item item-input"> <span class="input-label"t>{{'Title' | translate}}</span> <input ng-model="newtravel.title" class="positive" type="text" placeholder="">@@ -50,13 +50,10 @@ <span class="input-label">{{'Description' | translate}}</span>
<input ng-model="newtravel.description" type="text" placeholder="Description"> </label> <p class="padding"> - <button ng-click="closeNewOfferingTravel()" class="button button-assertive"> - {{'Cancel' | translate}} - </button> - <button ng-click="doNewOfferingTravel()" class="button button-calm"> + <button ng-click="createTravel()" class="button button-calm o_floatRight"> {{'Create_travel' | translate}} </button> </p> - </form> + </div> </ion-content> </ion-view>
M
www/templates/signup.html
→
www/templates/signup.html
@@ -18,7 +18,7 @@ <input type="password" ng-model="signupData.password">
</label> <label class="item item-input"> <span class="input-label">{{'Mail' | translate }}*</span> - <input type="email" ng-model="signupData.mail"> + <input type="email" ng-model="signupData.email"> </label> <label class="item item-input"> <span class="input-label">{{'Phone' | translate }}</span>
M
www/templates/travels.html
→
www/templates/travels.html
@@ -24,7 +24,7 @@ {{'Pull_from_top_to_refresh' | translate}}
</div> </div> <a ng-repeat="travel in travels | orderBy: 'date' | filter: search" class="item item-avatar" href="#/app/travels/{{travel._id}}"> - <img ng-src="img/{{travel.modality}}.png"/> + <img ng-src="img/{{travel.type}}.png"/> <h2>{{travel.title}}</h2> <div class="item-note text-right"> <div class="positive">{{travel.date | date:"dd/MM"}}</div>
M
www/templates/user.html
→
www/templates/user.html
@@ -1,13 +1,13 @@
<ion-view view-title="{{'User' | translate}} {{user.username}}"> <ion-content> <div class="item item-avatar"> - <img ng-src="img/avatars/{{user.avatar}}.png" /> + <img ng-src="{{user.avatar}}" /> <h2>{{user.username}}</h2> </div> <div class="item item-body"> <p class="o-bold">{{user.description}}</p> <p>{{user.mail}}</p> - <p> + <p ng-show="user.telegram"> <!--<a ng-href="https://telegram.me/{{user.telegram}}" target="_blank" class="button">--> <img class='o-imgMenu' src="img/telegram.png" /> @{{user.telegram}} <!--</a>-->@@ -34,13 +34,13 @@ </div>
</div> <div class="item item-body"> {{'current_publications_of' | translate}} {{user.username}}: - <div class="positive">{{travels.length}} {{'publications' | translate}}</div> + <div class="positive">{{user.travels.length}} {{'publications' | translate}}</div> - <a ng-repeat="travel in travels | orderBy: 'date'" class="item item-avatar" href="#/app/travels/{{travel._id}}"> - <img ng-src="img/{{travel.modality}}.png"> + <a ng-repeat="travel in user.travels | orderBy: 'date'" class="item item-avatar" href="#/app/travels/{{travel._id}}"> + <img ng-src="img/{{travel.type}}.png"> <h2>{{travel.title}} <div class="item-note"> - <div class="positive">{{travel.date | date:"dd/MM HH:mm a"}}</div> + <div class="positive">{{travel.date | date:"dd/MM/yyyy HH:mm a"}}</div> </div> </h2>
M
www/templates/users.html
→
www/templates/users.html
@@ -13,7 +13,7 @@ </div>
</div> <a ng-repeat="user in users | orderBy: 'date'" class="item item-avatar" ng-href="#/app/users/{{user.username}}"> - <img ng-src="img/avatars/{{user.avatar}}.png"> + <img ng-src="{{user.avatar}}"> <h2>{{user.username}}</h2> <p> {{user.description}}