Handle same name projects

This commit is contained in:
brunosimon
2016-08-11 21:04:35 +02:00
parent 816c164c8c
commit 2bd36abac6
3 changed files with 56 additions and 13 deletions
+24 -2
View File
@@ -23,13 +23,35 @@ class Projects
console.log( 'socket projects'.green.bold + ' - ' + 'connect'.cyan + ' - ' + socket.id.cyan )
this.socket.emit( 'update_projects', this.describe() )
} );
} )
}
create_project( _name )
{
// Create project
let project = new Project( { name: _name, socket: this.original_socket } )
let project = new Project( { name: _name, socket: this.original_socket } ),
same_name_project = this.all[ project.slug ]
// Try to found same name project
while( typeof same_name_project !== 'undefined' )
{
// Found new number
let last_number = same_name_project.name.match(/\d+$/),
new_number = 2
if( last_number && last_number.length )
{
last_number = ~~last_number[ 0 ]
new_number = last_number + 1
}
// Update project name
project.set_name( _name + ' ' + new_number )
// Try to found
same_name_project = this.all[ project.slug ]
}
// Save
this.all[ project.slug ] = project