Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions OpenNote/.gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
/bower_components
/node_modules
/Service
12 changes: 6 additions & 6 deletions OpenNote/bower.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@
"dependencies": {
"jquery": "2.0.3",
"bootstrap": "3.1.1",
"angular": "1.2.16",
"angular-route": "1.2.16",
"angular-resource": "1.2.16",
"angular-sanitize": "1.2.16",
"angular-animate": "1.2.16",
"angular-mocks": "1.2.16",
"angular": "1.2.21",
"angular-route": "1.2.21",
"angular-resource": "1.2.21",
"angular-sanitize": "1.2.21",
"angular-animate": "1.2.21",
"angular-mocks": "1.2.21",
"ckeditor": "ckeditor/ckeditor-releases#full/4.4.x",
"angular-ui-tree": "2.1.2",
"alertify": "0.3.10",
Expand Down
59 changes: 12 additions & 47 deletions OpenNote/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
<head>
<meta charset="UTF-8">
<meta name="description" content="description">

<!-- Disable scrolling and zooming to make app feed more native -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

<title>OpenNote</title>

Expand Down Expand Up @@ -42,13 +45,6 @@
<script src="openNote/openNote.js" type="text/javascript"></script>
<script src="openNote/openNote.config.js" type="text/javascript"></script>
<script src="openNote/router.js" type="text/javascript"></script>

<!-- Controllers -->
<script src="openNote/controllers/loginController.js" type="text/javascript"></script>
<script src="openNote/controllers/folderController.js" type="text/javascript"></script>
<script src="openNote/controllers/noteController.js" type="text/javascript"></script>
<script src="openNote/controllers/listController.js" type="text/javascript"></script>
<script src="openNote/controllers/searchController.js" type="text/javascript"></script>

<!-- Services -->
<script src="openNote/services/userService.js" type="text/javascript"></script>
Expand All @@ -62,50 +58,19 @@
<script src="openNote/factories/folderFactory.js" type="text/javascript"></script>
<script src="openNote/factories/noteFactory.js" type="text/javascript"></script>

<!-- Animations -->
<script src="openNote/animations/waveAnimation.js" type="text/javascript"></script>
<!-- Controllers -->
<script src="openNote/controllers/loginController.js" type="text/javascript"></script>
<script src="openNote/controllers/folderController.js" type="text/javascript"></script>
<script src="openNote/controllers/noteController.js" type="text/javascript"></script>
<script src="openNote/controllers/listController.js" type="text/javascript"></script>
<script src="openNote/controllers/searchController.js" type="text/javascript"></script>

</head>
<body>
<div id="menu" class="ng-hide fadeIn" ng-show="showMenu">
<div class="navbar-header">
<div class="left">
<button type="button" class="customButton" id="home" onclick="window.location.href='#/folder';" data-intro="{{helpContent.homeButton}}">Notes</button>
</div>
<div class="right">
<button type="button" class="navbar-toggle noPadding noMargin" data-toggle="collapse" data-target=".navbar-collapse">
Options
</button>
</div>
</div>
<div class="navbar-collapse collapse noShadow">
<ul class="nav navbar-nav navbar-right">
<li ng-repeat="button in buttons">
<button type="button" class="customButton" ng-click="button.action();" data-intro="{{button.helpText}}">{{button.text}}</button>
</li>
<li ng-show="showHelpButton">
<button type="button" class="customButton" onclick="introJs().start();">Help</button>
</li>
<li ng-show="showLogOutButton">
<button type="button" class="customButton" ng-click="logOut();">Log out</button>
</li>
</ul>
</div>
</div>
<div id="menu" class="ng-hide fadeIn" ng-show="showMenu" ng-include="'openNote/partials/navBarPartial.html'"></div>

<div class="col-lg-2 col-md-3 col-sm-4">
<div id="sideBar" class="ng-hide noPadding fadeIn" ng-controller="listController" ng-show="showSideBar" data-intro="{{helpContent.listArea}}">
<div id="folderList">
<div ui-tree="options" id="tree-root">
<ol ui-tree-nodes="" ng-model="data.foldersInside" >
<li ng-repeat="folder in data.foldersInside" ui-tree-node ng-include="'openNote/partials/treePartial.html'" data-collapsed="!node.collapsed"></li>
</ol>
</div>
</div>
</div>
</div>
<div class="col-lg-2 col-md-3 col-sm-4" ng-include="'openNote/partials/listPartial.html'"></div>

<div class="col-lg-10 col-md-9 col-sm-8" ng-view data-intro="{{helpContent.viewArea}}">
</div>
<div class="col-lg-10 col-md-9 col-sm-8" ng-view data-intro="{{helpContent.viewArea}}"> </div>
</body>
</html>
13 changes: 0 additions & 13 deletions OpenNote/openNote/animations/waveAnimation.js

This file was deleted.

24 changes: 16 additions & 8 deletions OpenNote/openNote/controllers/folderController.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@

openNote.controller("folderController", function($scope, $rootScope, $location, $routeParams, folderFactory, config) {
openNote.controller("folderController", function( $scope,
$rootScope,
$location,
$routeParams,
folderFactory,
config,
$timeout) {
$rootScope.buttons = [];
$scope.folderEditMode = false;
$scope.currentFolder = new folderFactory();
Expand Down Expand Up @@ -54,12 +60,14 @@ openNote.controller("folderController", function($scope, $rootScope, $location,
/**
* Load folder contents
*/
$scope.currentFolder.$get({id:$routeParams.id}).then(function(data){
//Do they have anything to display?
if($scope.currentFolder.id==null && $scope.currentFolder.foldersInside.length==0){
$scope.currentFolder.name=null;//resets title
alertify.alert("It looks like you dont have any folders. You can create one using the \"New Folder\" button in the top right of the page.");
}
$timeout(function(){
$scope.currentFolder.$get({id:$routeParams.id}).then(function(data){
//Do they have anything to display?
if($scope.currentFolder.id==null && $scope.currentFolder.foldersInside.length==0){
$scope.currentFolder.name=null;//resets title
alertify.alert("It looks like you dont have any folders. You can create one using the \"New Folder\" button in the top right of the page.");
}
});
});

/**
Expand All @@ -74,7 +82,7 @@ openNote.controller("folderController", function($scope, $rootScope, $location,
* fade out all folders
*/
$scope.fadeOutFolders = function(callback){
if($scope.currentFolder.foldersInside.length>0)
if($scope.currentFolder.foldersInside !=null && $scope.currentFolder.foldersInside.length>0)
$(".folder").fadeOut(config.fadeSpeedShort(),function(){
$scope.$apply(function(){
callback();
Expand Down
30 changes: 26 additions & 4 deletions OpenNote/openNote/controllers/listController.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,11 @@
/**
* Control
*/
openNote.controller("listController", function($scope, $rootScope, folderFactory) {
openNote.controller("listController", function( $scope,
$rootScope,
folderFactory,
$timeout,
userService) {
$scope.data = new folderFactory();

/**
Expand Down Expand Up @@ -43,7 +47,11 @@ openNote.controller("listController", function($scope, $rootScope, folderFactory
* Load list view
*/
$rootScope.$on("reloadListView", function(event, args) {
$scope.data.$get({levels:100, includeNotes: false});
$scope.data.$get({levels:100, includeNotes: false}).then(function(result){
$scope.treeBuffer = 0;
$scope.data=result;
increaseTreeBuffer();
});
});

/**
Expand Down Expand Up @@ -76,7 +84,6 @@ openNote.controller("listController", function($scope, $rootScope, folderFactory

sourceFolder.__proto__=folderType.__proto__;//Cast this object as a resources


sourceFolder.parrentFolderID=destID;
sourceFolder.$update().then(function(){//wait for a response
//fire off an event to tell everyone we just modified a folder
Expand All @@ -90,9 +97,24 @@ openNote.controller("listController", function($scope, $rootScope, folderFactory
$rootScope.$emit("reloadListView", {}); //refresh either way
//event.source.nodeScope.$$apply = false;
//TODO if they cancel reset list instead of re pulling it

});
}
}
};

/**
* Render list slowly
*/
var increaseTreeBuffer = function(){
if($scope.treeBuffer<=100) {
$scope.treeBuffer++;
$timeout(increaseTreeBuffer, 500);
}
else
$rootScope.$emit("listLoaded", {});//Tell the world we are done
}

//Load the lists initially
if(userService.hasValidToken())
$rootScope.$emit("reloadListView");
});
6 changes: 5 additions & 1 deletion OpenNote/openNote/controllers/loginController.js
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,11 @@ openNote.controller("loginController", function($scope, $rootScope, userService,
$scope.$apply(function(){
alertify.success("Credentials Accepted");
$rootScope.$emit("reloadListView", {}); //send and event to tell the list view to reload
$location.path("/folder/");

if($rootScope.entryURL==null)//send them to the page if they requested
$location.path("/folder/");
else
$location.path($rootScope.entryURL)
});
});
}
Expand Down
52 changes: 39 additions & 13 deletions OpenNote/openNote/controllers/noteController.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,18 +33,7 @@ openNote.controller("noteController", function( $scope, $rootScope, $routeParams
return {
text: "Clear",
action: function(){
alertify.confirm("Are you sure you want to clear your changes?",
function(confirm) {
if(!confirm)
return;

$(".notePartial").fadeOut(config.fadeSpeedShort(),function(){
$scope.$apply(function(){
$location.url("/folder/"+$scope.note.folderID);
});
});
}
);
$scope.clear();
},
helpText: $rootScope.helpContent.clearButton
};
Expand All @@ -63,6 +52,8 @@ openNote.controller("noteController", function( $scope, $rootScope, $routeParams
CKEDITOR.replace("note", config);
$rootScope.buttons=[];

attachWindowUnload();

//Add new buttons
$rootScope.buttons.push(saveButton());
$rootScope.buttons.push(clearButton());
Expand Down Expand Up @@ -100,7 +91,6 @@ openNote.controller("noteController", function( $scope, $rootScope, $routeParams
* Save a note
*/
$scope.save = function(){

$scope.note.note = CKEDITOR.instances["note"].getData();

//Insert only logic
Expand All @@ -109,6 +99,7 @@ openNote.controller("noteController", function( $scope, $rootScope, $routeParams

$(".notePartial").fadeOut(config.fadeSpeedShort());
$scope.note.$save().then(function(){
detachWindowUnload();
$location.url("/note/"+$scope.note.id)
alertify.success("Note Saved"); //all done. close the notify dialog
});
Expand All @@ -127,17 +118,52 @@ openNote.controller("noteController", function( $scope, $rootScope, $routeParams
var folderID = $scope.note.folderID;//need to keep track of this because we are about to delete it
$(".notePartial").fadeOut(config.fadeSpeedShort());
$scope.note.$remove({id: $scope.note.id}).then(function(){
detachWindowUnload();
alertify.success("Note Deleted",5); //all done. close the notify dialog
$location.url("/folder/"+folderID);
});
}
);
}

/**
* Reset changes
*/
$scope.clear = function(){
alertify.confirm("Are you sure you want to clear your changes?",
function(confirm) {
if(!confirm)
return;

$(".notePartial").fadeOut(config.fadeSpeedShort(),function(){
$scope.$apply(function(){
detachWindowUnload();
$location.url("/folder/"+$scope.note.folderID);
});
});
});
};

/**
* Mark html as trusted
*/
$scope.trustHTML = function(html) {
return $sce.trustAsHtml(html);
}

/**
* Attach window on-load listener
*/
var attachWindowUnload = function(){
window.onbeforeunload = function() {
return "Are you sure you want to navigate away?";//Keep the page from closing
};
}

/**
* Remove window on-load listener
*/
var detachWindowUnload = function(){
window.onbeforeunload = null;
}
});
2 changes: 1 addition & 1 deletion OpenNote/openNote/controllers/searchController.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ openNote.controller("searchController", function( $scope,
* fade out all folders
*/
$scope.fadeOutFolders = function(callback){
if($scope.currentFolder.foldersInside.length>0)
if($scope.currentFolder.foldersInside !=null && $scope.currentFolder.foldersInside.length>0)
$(".folder").fadeOut(config.fadeSpeedShort(),function(){
$scope.$apply(function(){
callback();
Expand Down
4 changes: 1 addition & 3 deletions OpenNote/openNote/directives/randomFadeInDirective.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,7 @@ openNote.directive("randomFadeInDirective", function($timeout,config) {
return {
restrict: "C",//class
link: function(scope, element, attrs) {
$timeout(function(){
element.fadeIn(config.fadeSpeedLong());
},500);//give everything time to load
element.hide().fadeIn(config.fadeSpeedLong());
}
};
});
4 changes: 2 additions & 2 deletions OpenNote/openNote/openNote.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ openNote.value("config", {
* Get current version
*/
getVersion: function(){
return "14.07.00";
return "14.07.01";
},

/**
Expand All @@ -21,7 +21,7 @@ openNote.value("config", {
* http path to backend rest service
*/
servicePath: function(){
return "//127.0.0.1/OpenNoteService-PHP/Service";
return "./Service";
},

/**
Expand Down
Loading