aboutsummaryrefslogtreecommitdiffstats
path: root/app/assets
diff options
context:
space:
mode:
authorTeddy Wing2015-01-24 09:41:57 -0500
committerTeddy Wing2015-01-24 09:41:57 -0500
commitc764e3b3964e137038b964c44b0b736828478868 (patch)
tree9c26044cfbedf6c8b5885a9a130540b456dc4b57 /app/assets
parentac4ca71de63bc3ab75b520cfe382040926079982 (diff)
downloadNotes-angular-demo-c764e3b3964e137038b964c44b0b736828478868.tar.bz2
Create initial Notes Angular app
Lists all notes and populates content section with the body of a note when one is clicked.
Diffstat (limited to 'app/assets')
-rw-r--r--app/assets/javascripts/application.js2
-rw-r--r--app/assets/javascripts/notes.coffee3
-rw-r--r--app/assets/javascripts/notes.js15
-rw-r--r--app/assets/javascripts/services/notes.js29
4 files changed, 46 insertions, 3 deletions
diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js
index 9e42736..f1823cb 100644
--- a/app/assets/javascripts/application.js
+++ b/app/assets/javascripts/application.js
@@ -14,4 +14,6 @@
//= require jquery_ujs
//= require turbolinks
//= require angular/angular
+//= require angular-resource/angular-resource
+//= require_tree ./services
//= require_tree .
diff --git a/app/assets/javascripts/notes.coffee b/app/assets/javascripts/notes.coffee
deleted file mode 100644
index 24f83d1..0000000
--- a/app/assets/javascripts/notes.coffee
+++ /dev/null
@@ -1,3 +0,0 @@
-# Place all the behaviors and hooks related to the matching controller here.
-# All this logic will automatically be available in application.js.
-# You can use CoffeeScript in this file: http://coffeescript.org/
diff --git a/app/assets/javascripts/notes.js b/app/assets/javascripts/notes.js
new file mode 100644
index 0000000..9a92f3e
--- /dev/null
+++ b/app/assets/javascripts/notes.js
@@ -0,0 +1,15 @@
+(function() {
+ angular
+ .module('nt.Notes', [
+ 'nt.NoteService'
+ ])
+ .controller('MainController', [
+ '$scope',
+ 'NoteService',
+ function($scope, NoteService) {
+ $scope.noteService = NoteService;
+
+ $scope.noteService.get_notes();
+ }
+ ]);
+})();
diff --git a/app/assets/javascripts/services/notes.js b/app/assets/javascripts/services/notes.js
new file mode 100644
index 0000000..b1b4e90
--- /dev/null
+++ b/app/assets/javascripts/services/notes.js
@@ -0,0 +1,29 @@
+angular
+ .module('nt.NoteService', ['ngResource'])
+ .factory('NoteService', [
+ '$resource',
+ function($resource) {
+ var Note = $resource('/notes/:id.json', { id: '@id' });
+
+ return {
+ notes: [],
+ current_note: null,
+
+ get_notes: function() {
+ this.notes = Note.query();
+ },
+
+ get_note: function(note) {
+ this.current_note = Note.get({ id: note.id });
+ },
+
+ save: function() {
+ Note.save({
+ id: this.current_note.id,
+ title: this.current_note.title,
+ body: this.current_note.body
+ });
+ }
+ };
+ }
+ ]);