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 @@
-
-
+
+
-
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
-
-
-
-
-

-
-
-
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
-
-
-
-
-
-
-
-
-
-

-
-
-
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,