From 66b898887b10851fa63018d729eaffd257a47c09 Mon Sep 17 00:00:00 2001 From: Mohammed Tantawy <6102@ait.nsw.edu.au> Date: Sat, 2 Feb 2019 20:18:51 +1100 Subject: [PATCH] Added Ads and Ads Details routing and services Renamed files --- package.json | 2 +- .../ads-details/ads-details.controller.js | 18 ++++++ .../scripts/ads-details/ads-details.html | 39 +++--------- ...{ads.service.js => ads-details.service.js} | 8 +-- src/assets/scripts/ads-details/controller.js | 8 --- src/assets/scripts/ads-details/index.js | 18 ++++-- src/assets/scripts/ads/ads.controller.js | 15 +++++ src/assets/scripts/ads/ads.html | 63 +++---------------- src/assets/scripts/ads/ads.service.js | 19 ++++++ src/assets/scripts/ads/controller.js | 6 -- src/assets/scripts/ads/index.js | 12 +++- src/assets/scripts/app/index.js | 4 +- ...{controller.js => dashboard.controller.js} | 0 src/assets/scripts/dashboard/index.js | 2 +- src/assets/scripts/masonry/index.js | 2 +- 15 files changed, 99 insertions(+), 117 deletions(-) create mode 100644 src/assets/scripts/ads-details/ads-details.controller.js rename src/assets/scripts/ads-details/{ads.service.js => ads-details.service.js} (60%) delete mode 100644 src/assets/scripts/ads-details/controller.js create mode 100644 src/assets/scripts/ads/ads.controller.js create mode 100644 src/assets/scripts/ads/ads.service.js delete mode 100644 src/assets/scripts/ads/controller.js rename src/assets/scripts/dashboard/{controller.js => dashboard.controller.js} (100%) diff --git a/package.json b/package.json index 4b272c9..3b51bc8 100755 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "load-google-maps-api": "^1.0.0", "lodash": "^4.17.4", "masonry-layout": "^4.2.0", - "moment": "^2.19.1", + "moment": "^2.24.0", "ng-tags-input": "^3.2.0", "node-sass": "^4.5.3", "perfect-scrollbar": "^1.1.0", diff --git a/src/assets/scripts/ads-details/ads-details.controller.js b/src/assets/scripts/ads-details/ads-details.controller.js new file mode 100644 index 0000000..16fb0e9 --- /dev/null +++ b/src/assets/scripts/ads-details/ads-details.controller.js @@ -0,0 +1,18 @@ +import moment from 'moment'; + +const AdsDetailsController = ($scope, AdsDetailsService, $routeParams) => { + AdsDetailsService.fetchAdDetails($routeParams) + .then(function(result){ + $scope.ad = result; + window.msnry.layout(); + console.log(result); + }) + .catch(function(error){ + console.log(error); + }); + $scope.daysAgo = (timestamp) => { + return moment(timestamp).fromNow(); + } +} + +export default AdsDetailsController; \ No newline at end of file diff --git a/src/assets/scripts/ads-details/ads-details.html b/src/assets/scripts/ads-details/ads-details.html index cf72bb6..9fddd12 100644 --- a/src/assets/scripts/ads-details/ads-details.html +++ b/src/assets/scripts/ads-details/ads-details.html @@ -20,36 +20,14 @@ class="avatar">
-

Graphic Design Internship

-
Great Southern Press
+

{{ ad.title }}

+
{{ ad.companyname }}
-
About the business:
-

Great Southern Press is a leading B2B publishing and events company built on - partnerships with industry. We deliver quality business information to our industries and great marketing - results to our clients. - - We build long-lasting partnerships with our industry partners in the energy and infrastructure sectors, - aligning the success of our business with the continued growth and expansion of the industries we publish - for. -

-
About the role:
-

This part-time role will suit a university graduate or someone looking - for an entry-level design position. The successful candidate will be involved in all areas of design - including:

- - • Publication layout (annual directories, books etc).
- • Creation of artwork for print and online advertisements.
- • Wallcharts, flyers, brochures and other print design as required.
- • Event collateral including branding, signage, handbooks etc.
- • Designs for website, email communications and social media.

- - Reporting to the Head of Design, you will have an opportunity to work with and be mentored by someone - with more than 10 years’ industry experience. -

+ {{ ad.description }}
@@ -59,14 +37,15 @@
Location:
-

Melbourne, CBD & Inner Suburbs

+

{{ad.location}}

Application close:

14th March 2019 (Friday)

+
Skills:
-
Graphic Design
-
Adobe Creaetive CC
-
Illustration
-

Posted 3 days ago

+
+ {{ skill }} +
+

{{ daysAgo(ad.timestamp) }}

diff --git a/src/assets/scripts/ads-details/ads.service.js b/src/assets/scripts/ads-details/ads-details.service.js similarity index 60% rename from src/assets/scripts/ads-details/ads.service.js rename to src/assets/scripts/ads-details/ads-details.service.js index fde2223..e92afd9 100644 --- a/src/assets/scripts/ads-details/ads.service.js +++ b/src/assets/scripts/ads-details/ads-details.service.js @@ -1,11 +1,11 @@ const AdsDetailsService = ($http) => { let serv = {}; - serv.fetchAdsService = () =>{ - return $http.get('https://nomitwisp-restapi.herokuapp.com/api/ads') + serv.fetchAdDetails = (route) =>{ + return $http.get('https://nomitwisp-restapi.herokuapp.com/api/ads/'+route.id) .then( (result) => { - console.log(result); - return result; + console.log(route.id); + return result.data; }, (error) => { console.log(error); return error; diff --git a/src/assets/scripts/ads-details/controller.js b/src/assets/scripts/ads-details/controller.js deleted file mode 100644 index 0a76b90..0000000 --- a/src/assets/scripts/ads-details/controller.js +++ /dev/null @@ -1,8 +0,0 @@ -const AdsDetailsController = async($scope, AdsDetailsService, $routeParams) => { - await AdsDetailsService.fetchAdsService() - .then((data) => { - $scope.ad = data[$routeParams.id]; - }) -} - -export default AdsDetailsController; \ No newline at end of file diff --git a/src/assets/scripts/ads-details/index.js b/src/assets/scripts/ads-details/index.js index bd0ccbe..1ffb8bc 100644 --- a/src/assets/scripts/ads-details/index.js +++ b/src/assets/scripts/ads-details/index.js @@ -1,7 +1,13 @@ -import * as angular from 'angular'; -import AdsDetailsController from './controller'; -import AdsDetailsService from './ads.service' +import angular from 'angular'; +import ngRoute from 'angular-route'; +import ngCookie from 'angular-cookies'; +import AdsDetailsController from './ads-details.controller'; +import AdsDetailsService from './ads-details.service' -angular.module('nwAdsDetails', []) - .controller(AdsDetailsController.name, AdsDetailsController) - .factory(AdsDetailsService.name, AdsDetailsService); \ No newline at end of file +angular.module('nwAdsDetails', [ngRoute, ngCookie]) + .config(['$httpProvider', function($httpProvider) { + $httpProvider.defaults.withCredentials = true; + }]) + .factory(AdsDetailsService.name, AdsDetailsService) + .controller(AdsDetailsController.name, AdsDetailsController); + \ No newline at end of file diff --git a/src/assets/scripts/ads/ads.controller.js b/src/assets/scripts/ads/ads.controller.js new file mode 100644 index 0000000..b0f5973 --- /dev/null +++ b/src/assets/scripts/ads/ads.controller.js @@ -0,0 +1,15 @@ +/** @ngInject */ +const AdsController = ($scope, AdsService) => { + AdsService.fetchAdsService() + .then(function(result){ + $scope.ads = result; + console.log(result); + }) + .catch(function(error){ + console.log(error); + }) + + +} + +export default AdsController; \ No newline at end of file diff --git a/src/assets/scripts/ads/ads.html b/src/assets/scripts/ads/ads.html index 4000d8e..e2a9d16 100644 --- a/src/assets/scripts/ads/ads.html +++ b/src/assets/scripts/ads/ads.html @@ -10,76 +10,27 @@
-
-
+
+
Card image cap
-

Graphic Designer

+

{{ ad.title }}

-

Sierra Delta Creative

-
Two stars
-

Some quick example text to build on the card title and make up the bulk of the card's content.

+

{{ ad.description }}

+
TBD
+

{{ ad.companyintro }}

- +
VIEW MORE
- - -
-
- Card image cap -
-
-

Graphic Designer

-
- -
-
-

Sierra Delta Creative

-
Two stars
-

Some quick example text to build on the card title and make up the bulk of the card's content.

-
- -
- VIEW MORE -
-
-
-
- - - -
-
- Card image cap -
-
-

Graphic Designer

-
- -
-
-

Sierra Delta Creative

-
Two stars
-

Some quick example text to build on the card title and make up the bulk of the card's content.

-
- -
- VIEW MORE -
-
-
-
- -
diff --git a/src/assets/scripts/ads/ads.service.js b/src/assets/scripts/ads/ads.service.js new file mode 100644 index 0000000..612006a --- /dev/null +++ b/src/assets/scripts/ads/ads.service.js @@ -0,0 +1,19 @@ +/** @ngInject */ +const AdsService = ($http) => { + let serv = {}; + + serv.fetchAdsService = () =>{ + return $http.get('https://nomitwisp-restapi.herokuapp.com/api/ads', { withCredentials: true }) + .then( (result) => { + console.log(result.data); + return result.data; + }) + .catch( (error) => { + console.log(error); + return []; + }); + } + return serv; +} + +export default AdsService; \ No newline at end of file diff --git a/src/assets/scripts/ads/controller.js b/src/assets/scripts/ads/controller.js deleted file mode 100644 index 0c7c7d1..0000000 --- a/src/assets/scripts/ads/controller.js +++ /dev/null @@ -1,6 +0,0 @@ -/** @ngInject */ -const AdsController = ($scope) => { - -} - -export default AdsController; \ No newline at end of file diff --git a/src/assets/scripts/ads/index.js b/src/assets/scripts/ads/index.js index 35d7b32..b3b64a0 100644 --- a/src/assets/scripts/ads/index.js +++ b/src/assets/scripts/ads/index.js @@ -1,6 +1,12 @@ import * as angular from 'angular'; -import AdsController from './controller'; +import ngCookies from 'angular-cookies'; +import AdsController from './ads.controller'; +import AdsService from './ads.service'; -angular.module('nwAds', []) - .controller(AdsController.name, AdsController); +angular.module('nwAds', [ngCookies]) + .config(['$httpProvider', function($httpProvider) { + $httpProvider.defaults.withCredentials = true; + }]) + .controller(AdsController.name, AdsController) + .factory(AdsService.name, AdsService); \ No newline at end of file diff --git a/src/assets/scripts/app/index.js b/src/assets/scripts/app/index.js index 6ff29c6..d751643 100644 --- a/src/assets/scripts/app/index.js +++ b/src/assets/scripts/app/index.js @@ -14,7 +14,9 @@ angular.module('NomitWisp', ngRoute ]) - .config(function ($routeProvider) { + .config(function ($routeProvider, $httpProvider) { + $httpProvider.defaults.withCredentials = true; + $routeProvider .when('/', { controller: 'DashboardController', diff --git a/src/assets/scripts/dashboard/controller.js b/src/assets/scripts/dashboard/dashboard.controller.js similarity index 100% rename from src/assets/scripts/dashboard/controller.js rename to src/assets/scripts/dashboard/dashboard.controller.js diff --git a/src/assets/scripts/dashboard/index.js b/src/assets/scripts/dashboard/index.js index 722e817..2047d4b 100644 --- a/src/assets/scripts/dashboard/index.js +++ b/src/assets/scripts/dashboard/index.js @@ -1,6 +1,6 @@ import * as angular from 'angular'; import ngCookies from 'angular-cookies'; -import DashboardController from './controller'; +import DashboardController from './dashboard.controller'; angular.module('nwDashboard', [ngCookies]) .controller(DashboardController.name, DashboardController); \ No newline at end of file diff --git a/src/assets/scripts/masonry/index.js b/src/assets/scripts/masonry/index.js index 1b52abb..2e50a5c 100755 --- a/src/assets/scripts/masonry/index.js +++ b/src/assets/scripts/masonry/index.js @@ -4,7 +4,7 @@ import Masonry from 'masonry-layout'; export default (function () { window.addEventListener('load', () => { if ($('.masonry').length > 0) { - new Masonry('.masonry', { + window.msnry = new Masonry('.masonry', { itemSelector: '.masonry-item', columnWidth: '.masonry-sizer', percentPosition: true,