[update] Improve versions infos + [update] Active file

This commit is contained in:
brunosimon
2016-08-13 01:27:47 +02:00
parent f1342c8dc0
commit 03c0629650
4 changed files with 80 additions and 48 deletions
+36 -11
View File
@@ -9,32 +9,57 @@ application.controller(
// Every 5 seconds // Every 5 seconds
$interval( function() $interval( function()
{ {
// // Each version // Each file
// project.each_version( function( version ) for( var _file_key in project.files )
// { {
// // Date var _file = project.files[ _file_key ];
// version.time_from_now = version.moment_date.fromNow();
// } ); // Each version
for( var _version_key in _file.versions )
{
var _version = _file.versions[ _version_key ];
// Date
_version.time_from_now = _version.moment_date.fromNow();
}
}
}, 5000 ); }, 5000 );
$scope.always_last_version_toggle_click = function()
{
$scope.always_last_version = !$scope.always_last_version;
};
$scope.folder_click = function( folder ) $scope.folder_click = function( folder )
{ {
console.log('folder click'); // console.log('folder click');
// folder.active = !folder.active; // folder.active = !folder.active;
}; };
$scope.file_click = function( file ) $scope.file_click = function( file )
{ {
// File
if( $scope.file )
$scope.file.active = false;
file = file.data; file = file.data;
file.notif = 0; file.notif = 0;
file.active = true;
// file.active = true;
$scope.file = file; $scope.file = file;
// Version
if( $scope.version )
$scope.version.active = false;
$scope.version = file.versions[ file.versions.length - 1 ]; $scope.version = file.versions[ file.versions.length - 1 ];
$scope.version.active = true
}; };
$scope.version_click = function( version ) $scope.version_click = function( version )
{ {
if( $scope.version )
$scope.version.active = false;
version.active = true;
$scope.version = version; $scope.version = version;
}; };
@@ -47,12 +72,12 @@ application.controller(
{ {
$scope.$apply( function() $scope.$apply( function()
{ {
$scope.project = project;
} ); } );
} ); } );
$scope.project = project.data; $scope.project = project;
$scope.file = null; $scope.file = null;
$scope.always_last_version = true;
$scope.version = null; $scope.version = null;
} }
] ]
+1 -11
View File
@@ -75,9 +75,6 @@ application.factory(
socket.on( 'create_file', function( data ) socket.on( 'create_file', function( data )
{ {
// console.log('create_file');
// console.log(data);
var file = result.files[ data.path.full ]; var file = result.files[ data.path.full ];
// Doesn't exist yet // Doesn't exist yet
@@ -105,9 +102,6 @@ application.factory(
socket.on( 'create_version', function( data ) socket.on( 'create_version', function( data )
{ {
// console.log('create_version');
// console.log(data);
var file = result.files[ data.file ]; var file = result.files[ data.file ];
// Doesn't exist yet // Doesn't exist yet
@@ -125,9 +119,6 @@ application.factory(
socket.on( 'delete_file', function( data ) socket.on( 'delete_file', function( data )
{ {
// console.log('delete_file');
// console.log(data);
var file = result.files[ data.path.full ]; var file = result.files[ data.path.full ];
// Doesn't exist yet // Doesn't exist yet
@@ -146,8 +137,7 @@ application.factory(
// Update project event // Update project event
socket.on( 'update_project', function( data ) socket.on( 'update_project', function( data )
{ {
// console.log('update_project'); result.name = data.name;
// console.log(data);
// Duplicate files // Duplicate files
for( var _file_key in data.files ) for( var _file_key in data.files )
+13 -5
View File
@@ -28,10 +28,18 @@ section.page-projects .projects .item:last-child:after {display:none;}
*/ */
section.page-project {position:fixed;top:60px;right:0;bottom:0;left:0;} section.page-project {position:fixed;top:60px;right:0;bottom:0;left:0;}
section.page-project .aside {position:absolute;top:0;bottom:0;left:0;width:240px;} section.page-project .aside {position:absolute;top:0;bottom:0;left:0;width:240px;}
section.page-project section.file {position:absolute;top:0;right:0;bottom:0;left:240px;} section.page-project .aside .aside-header {padding:10px;background:#3b3f4e;}
section.page-project section.file .file-header {position:absolute;top:0;right:0;left:0;height:30px;line-height:30px;padding:0 0 0 10px;background:#00f;} section.page-project .aside .aside-header .always-last-version-toggle {cursor:pointer;}
section.page-project section.file .versions-nav {position:absolute;top:30px;bottom:0;left:0;width:140px;background:#555;} section.page-project .aside .aside-header .always-last-version-toggle .switch {display:inline-block;width:12px;height:12px;border:1px solid #f1f5ff;}
section.page-project section.file .code {position:absolute;top:30px;right:0;bottom:0;left:140px;background:#ff0;} section.page-project .aside .aside-header .always-last-version-toggle.active .switch {background:#f1f5ff;}
section.page-project section.main {position:absolute;top:0;right:0;bottom:0;left:240px;}
section.page-project section.no-file {position:absolute;top:0;right:0;bottom:0;left:0;}
section.page-project section.file {position:absolute;top:0;right:0;bottom:0;left:0;}
section.page-project section.file .file-header {position:absolute;top:0;right:0;left:0;height:30px;line-height:30px;padding:0 0 0 10px;background:#777;}
section.page-project section.file .versions-nav {position:absolute;top:30px;bottom:0;left:0;width:160px;background:#555;overflow-y:scroll;}
section.page-project section.file .versions-nav .version {display:block;padding:10px;}
section.page-project section.file .versions-nav .version.active {background:#666;}
section.page-project section.file .code {position:absolute;top:30px;right:0;bottom:0;left:160px;background:#ff0;}
section.page-project section.file .code pre code {position:absolute;top:0;right:0;bottom:0;left:0;} section.page-project section.file .code pre code {position:absolute;top:0;right:0;bottom:0;left:0;}
/** /**
@@ -43,7 +51,7 @@ nav.files-tree-nav li {line-height:24px;cursor:pointer;}
// nav.files-tree-nav .folder.active > ul {display:block;} // nav.files-tree-nav .folder.active > ul {display:block;}
nav.files-tree-nav i {margin:0 6px 0 0;} nav.files-tree-nav i {margin:0 6px 0 0;}
nav.files-tree-nav li > span {display:block;color:#ccc;} nav.files-tree-nav li > span {display:block;color:#ccc;}
// nav.files-tree-nav .active span {color:#fff;} nav.files-tree-nav li.active {background:rgba(255,255,255,0.1);}
nav.files-tree-nav li > span {padding-left:16px;} nav.files-tree-nav li > span {padding-left:16px;}
+15 -6
View File
@@ -6,7 +6,7 @@ script(type="text/ng-template",id="folder_template.html")
| {{_folder.name}} | {{_folder.name}}
ul ul
li.folder(ng-repeat="_folder in _folder.folders",ng-include="'folder_template.html'",ng-class="_folder.active ? 'active' : 'inactive'") li.folder(ng-repeat="_folder in _folder.folders",ng-include="'folder_template.html'",ng-class="_folder.active ? 'active' : 'inactive'")
li.file(ng-repeat="(_key,_file) in _folder.files",ng-class="_file.active ? 'active' : 'inactive'") li.file(ng-repeat="(_key,_file) in _folder.files",ng-class="_file.data.active ? 'active' : 'inactive'")
span(ng-click="file_click(_file)") span(ng-click="file_click(_file)")
i.fa.fa-file-text i.fa.fa-file-text
| {{_file.name}} | {{_file.name}}
@@ -16,22 +16,31 @@ script(type="text/ng-template",id="folder_template.html")
section.page-project(ng-controller="ProjectController as controller",ng-init="init('" + project_slug + "')") section.page-project(ng-controller="ProjectController as controller",ng-init="init('" + project_slug + "')")
aside.aside aside.aside
header.aside-header header.aside-header
div.name
| {{project.name}} | {{project.name}}
div.always-last-version-toggle(ng-click="always_last_version_toggle_click()",ng-class="always_last_version ? 'active' : 'inactive'")
.switch
| always last version
nav.files-tree-nav nav.files-tree-nav
ul ul
li.folder(ng-repeat="_folder in project.tree.folders",ng-include="'folder_template.html'",ng-class="_folder.active ? 'active' : 'inactive'") li.folder(ng-repeat="_folder in project.tree.folders",ng-include="'folder_template.html'",ng-class="_folder.active ? 'active' : 'inactive'")
section.file section.main
section.no-file(ng-if="!file")
| No file
section.file(ng-if="file")
header.file-header header.file-header
span.path
| {{file.path.directory}}/
span.name
| {{file.name}} | {{file.name}}
nav.versions-nav nav.versions-nav
a.version(href="#",ng-repeat="_version in file.versions",ng-click="version_click(_version)") a.version(href="#",ng-repeat="_version in file.versions",ng-click="version_click(_version)",ng-class="_version.active ? 'active' : 'inactive'")
div.date div.date
| {{_version.date_formated}} | {{_version.date_formated}}
sup.time-from-now div.time-from-now
| ({{_version.time_from_now}}) | {{_version.time_from_now}}
div.differences div.differences
| {{_version.diff_percent}} | {{_version.diff_percent}}
br
section.code section.code
pre pre
code(hljs,hljs-source="version.content") code(hljs,hljs-source="version.content")