123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198 |
- * @ngdoc function
- * @name domainManagerApp.controller:AboutCtrl
- * @description
- * # AboutCtrl
- * Controller of the domainManagerApp
- */
- angular.module('codexApp.index', [])
- .controller('AppCtrl', ['$scope', '$rootScope', '$state', '$location', 'FileService', 'PrefsService', '$timeout', function ($scope, $rootScope, $state, $location, FileService, PrefsService, $timeout) {
- $scope.setView = function() {
- $scope.view = PrefsService.getCurrentView();
- $scope.files = [];
- $timeout(function() {
- switch ($scope.view) {
- case "All Notes":
- var note = {
- type : "All Notes"
- }
- FileService.setCurrentNote(note);
- $scope.files = FileService.getAllNotes();
- var info = $scope.files.length + " Notes"
- $rootScope.$broadcast('footer:info', info);
- break;
- case "All Files":
- $scope.files = FileService.getAllFiles();
- var info = $scope.files.length + " Files"
- $rootScope.$broadcast('footer:info', info);
- break;
- case "Notebooks":
- $scope.current_folder = FileService.getNotesDir();
- $scope.files = FileService.getFolders();
- var info = $scope.files.length + " Notebooks"
- $rootScope.$broadcast('footer:info', info);
- break;
- case "Notebook":
- $scope.files = FileService.getFiles(FileService.getCurrentNote().path);
- var info = $scope.files.length + " Items"
- $rootScope.$broadcast('footer:info', info);
- break;
- case "Searched Files":
- $scope.files = FileService.getSearchFiles();
- var info = $scope.files.length + " Items"
- $rootScope.$broadcast('footer:info', info);
- break;
- }
- }, 1);
- }
- $scope.setView();
- $rootScope.$on('window-view:change', function(){
- $scope.setView();
- });
- var remote = require('remote')
- $scope.openFile = function(file){
- console.log("-> Openning " + file.type + " link: " + file.path);
- switch (file.type) {
- case "Markdown":
- FileService.setCurrentNote(file)
- $rootScope.$broadcast('main-window:note-view');
- $state.go("note-view");
- break;
- case "Folder":
- $scope.current_folder = file.path;
- FileService.setCurrentNote(file)
- PrefsService.setCurrentView("Notebook");
- $scope.setView();
- break;
- }
- }
- $scope.editFile = function(file){
- console.log("-> Editing " + file.type + " link: " + file.path);
- switch (file.type) {
- case "Markdown":
- FileService.setCurrentNote(file)
- $rootScope.$broadcast('main-window:note-edit');
- $state.go("note-edit");
- break;
- }
- }
- $rootScope.$on('file-service:files-loaded', function(){
- if(!$scope.$$phase) {
- $scope.$apply(function(){
- $scope.itemSpacing();
- });
- } else {
- $scope.itemSpacing();
- }
- })
- $rootScope.$on('$stateNotFound', function(event, unfoundState, fromState, fromParams){
- console.log(unfoundState.to);
- console.log(unfoundState.toParams);
- console.log(unfoundState.options);
- })
- $rootScope.$on('$stateChangeError', function(event, toState, toParams, fromState, fromParams, error){
- console.log('Change state error');
- console.log(error)
- console.log(toState)
- console.log(toParams)
- console.log(fromState)
- console.log(fromParams)
- })
- $scope.itemSpacing = function(){
-
-
-
-
-
-
-
- }
- $scope.isImage = function(file_type) {
- if(file_type != 'Image') { return true; }
- else { return false; }
- }
- $scope.getImageURL = function(img_url) {
- return "" + FileService.absoluteToRelativeURL(FileService.getNotesDir(), img_url)
- }
- $scope.shortenPath = function(path) {
- if($scope.current_folder != null) {
- return FileService.shortenPath(path);
- } else {
- return "";
- }
- }
- var Menu = remote.require('menu');
- var MenuItem = remote.require('menu-item');
- var currentWindow = remote.getCurrentWindow();
- var clipboard = require('clipboard');
- $scope.fileContextMenu = function (file) {
- var menu = new Menu();
- menu.append(new MenuItem({ label: 'Open File', click: function () {
- $scope.openFile(file);
- } }));
- menu.append(new MenuItem({ label: 'Edit File', click: function () {
- $scope.editFile(file);
- } }));
- menu.append(new MenuItem({ label: 'Copy File URL', click: function () {
- var url = file.path;
- console.log("-> Copying URL to clipboard " + url);
- clipboard.writeText(url);
- } }));
- menu.append(new MenuItem({ label: 'Delete', click: function () {
- if(FileService.deleteFile(file.path)){
- var index = $scope.files.indexOf(file);
- if (index > -1) {
- if(!$scope.$$phase) {
- $scope.$apply(function(){
- $scope.files.splice(index, 1);
- });
- } else {
- $scope.files.splice(index, 1);
- }
- }
- };
- } }));
- menu.popup(currentWindow);
- }
- var HTMLNodesToArray = function (reference, elems) {
- reference = document.getElementById(reference);
- console.log(reference);
-
-
-
- var elements = angular.element(document.querySelector( '.file-view-item' ));
- console.log(elements);
-
-
-
-
-
-
-
-
-
-
-
- return elements;
- }
- }]);
|