Example #1
0
   // Moves the location of tag in the file name
   // possible directions should be next, prev, last, first
 function moveTagLocation(filePath, tagName, direction) {
   console.log('Moves the location of tag in the file name: ' + filePath);
   var fileName = extractFileName(filePath);
   var containingDirectoryPath = extractContainingDirectoryPath(filePath);
   var extractedTags = extractTags(filePath);
   var tmpTag;
   for (var i = 0; i < extractedTags.length; i++) {
     // check if tag is already in the tag array
     if (extractedTags[i] === tagName) {
       if (direction === 'prev' && i > 0) {
         tmpTag = extractedTags[i - 1];
         extractedTags[i - 1] = extractedTags[i];
         extractedTags[i] = tmpTag;
         break;
       } else if (direction === 'next' && i < extractedTags.length - 1) {
         tmpTag = extractedTags[i];
         extractedTags[i] = extractedTags[i + 1];
         extractedTags[i + 1] = tmpTag;
         break;
       } else if (direction === 'first' && i > 0) {
         tmpTag = extractedTags[i];
         extractedTags[i] = extractedTags[0];
         extractedTags[0] = tmpTag;
         break;
       }
     }
   }
   var newFileName = generateFileName(fileName, extractedTags);
   TSCORE.IO.renameFile(filePath, containingDirectoryPath + TSCORE.dirSeparator + newFileName);
 }
Example #2
0
 drop: function( event, ui ) {
         var filePath = ui.draggable.attr("filepath");
         var fileName = TSCORE.TagUtils.extractFileName(filePath);
         var targetDir = $(this).attr("key");
         console.log("Moving file: "+filePath+" to "+targetDir);
         TSCORE.IO.renameFile(filePath, targetDir+TSCORE.dirSeparator+fileName);
         $(ui.helper).remove();                                 
 }                  
Example #3
0
 $( '#renameFileButton' ).click(function() {
     var initialFilePath = $( "#renamedFileName" ).attr("filepath");
     var containingDir = TSCORE.TagUtils.extractContainingDirectoryPath(initialFilePath);
     TSCORE.IO.renameFile(
         initialFilePath,
         containingDir+TSCORE.dirSeparator+$( "#renamedFileName" ).val()
     );
 });
Example #4
0
 drop: function(event, ui) {
   ui.draggable.detach();
   var filePath = ui.draggable.attr('filepath');
   var fileName = TSCORE.TagUtils.extractFileName(filePath);
   var targetDir = $(this).attr('key');
   console.log('Moving file: ' + filePath + ' to ' + targetDir);
   TSCORE.IO.renameFile(filePath, targetDir + TSCORE.dirSeparator + fileName);
   $(ui.helper).remove();
 }
Example #5
0
 $( "#moveFilesButton" ).click(function(e) {
     e.preventDefault();
     TSCORE.showWaitingDialog("Files are being renaming");
     var newFilePath;
     for (var i = 0; i < TSCORE.selectedFiles.length; i++) {
         newFilePath = $("#moveCopyDirectoryPath").val()+TSCORE.dirSeparator+TSCORE.TagUtils.extractFileName(TSCORE.selectedFiles[i]);
         TSCORE.IO.renameFile(TSCORE.selectedFiles[i],newFilePath);
     }
 });
Example #6
0
 function cleanFileFromTags(filePath) {
     console.log("Cleaning file from tags: " + filePath);
     var fileTitle = extractTitle(filePath);
     var fileExt = extractFileExtension(filePath);
     var containingDirectoryPath = extractContainingDirectoryPath(filePath);
     if(fileExt.length > 0) {
         fileExt = "."+fileExt;
     }
     TSCORE.IO.renameFile(filePath, containingDirectoryPath+TSCORE.dirSeparator+fileTitle+fileExt);
 }
Example #7
0
 drop: function( event, ui ) {
     // Fixing issue with dropping on stacked/overlapped directories
     if( $(this).parent().parent().parent().hasClass("in") ) {
         var filePath = ui.draggable.attr("filepath");
         var fileName = TSCORE.TagUtils.extractFileName(filePath);
         var targetDir = $(this).attr("key");
         console.log("Moving file: "+filePath+" to "+targetDir);
         TSCORE.IO.renameFile(filePath, targetDir+TSCORE.dirSeparator+fileName);
         $(ui.helper).remove();  
     }                              
 }                   
Example #8
0
 drop: function(event, ui) {
   ui.draggable.detach();
   // Fixing issue with dropping on stacked/overlapped directories
   if ($(this).parent().parent().parent().hasClass('in')) {
     var filePath = ui.draggable.attr('filepath');
     var fileName = TSCORE.TagUtils.extractFileName(filePath);
     var targetDir = $(this).attr('key');
     console.log('Moving file: ' + filePath + ' to ' + targetDir);
     TSCORE.IO.renameFile(filePath, targetDir + TSCORE.dirSeparator + fileName);
     $(ui.helper).remove();
   }
 }
Example #9
0
     $( '#renameFileButton' ).click(function() {
         var bValid = true;           
 //        bValid = bValid && checkLength( $( "#renamedFileName" ).val(), "filename", 3, 200 );
 //        bValid = bValid && checkRegexp( renamedFileName, /^[a-z]([0-9a-z_.])+$/i, "Filename may consist of a-z, 0-9, underscores, begin with a letter." );
         if ( bValid ) {
             var containingDir = TSCORE.TagUtils.extractContainingDirectoryPath(TSCORE.selectedFiles[0]);
             TSCORE.IO.renameFile(
                     $( "#renamedFileName" ).attr("filepath"),
                     containingDir+TSCORE.dirSeparator+$( "#renamedFileName" ).val()
                 );
         }
     });
Example #10
0
 function changeTitle(filePath, newTitle) {
   console.log('Changing title for file: ' + filePath);
   var containingDirectoryPath = extractContainingDirectoryPath(filePath);
   var extractedTags = extractTags(filePath);
   var fileExt = extractFileExtension(filePath);
   if (fileExt.length > 0) {
     fileExt = '.' + fileExt;
   }
   // TODO generalize generateFileName to support fileTitle & fileExtension
   var newFileName = generateFileName(newTitle, extractedTags);
   TSCORE.IO.renameFile(filePath, containingDirectoryPath + TSCORE.dirSeparator + newFileName + fileExt);
   return true;
 }
Example #11
0
 // Removing a tag from a filename
 function removeTag(filePath, tagName) {
   console.log('Removing tag: ' + tagName + ' from ' + filePath);
   var fileName = extractFileName(filePath);
   var containingDirectoryPath = extractContainingDirectoryPath(filePath);
   var tags = extractTags(filePath);
   var newTags = [];
   for (var i = 0; i < tags.length; i++) {
     if (tags[i] !== tagName) {
       newTags.push(tags[i]);
     }
   }
   var newFileName = generateFileName(fileName, newTags);
   TSCORE.IO.renameFile(filePath, containingDirectoryPath + TSCORE.dirSeparator + newFileName);
 }
Example #12
0
 // Replaces a tag with a new one
 function renameTag(filePath, oldTag, newTag) {
   console.log('Rename tag for file: ' + filePath);
   var fileName = extractFileName(filePath);
   var containingDirectoryPath = extractContainingDirectoryPath(filePath);
   var extractedTags = extractTags(filePath);
   for (var i = 0; i < extractedTags.length; i++) {
     // check if tag is already in the tag array
     if (extractedTags[i] === oldTag) {
       extractedTags[i] = newTag.trim();
     }
   }
   var newFileName = generateFileName(fileName, extractedTags);
   TSCORE.IO.renameFile(filePath, containingDirectoryPath + TSCORE.dirSeparator + newFileName);
 }
Example #13
0
 function writeTagsToFile(filePath, tags) {
   console.log('Add the tags to: ' + filePath);
   var fileName = extractFileName(filePath);
   var containingDirectoryPath = extractContainingDirectoryPath(filePath);
   var extractedTags = extractTags(filePath);
   for (var i = 0; i < tags.length; i++) {
     // check if tag is already in the tag array
     if (extractedTags.indexOf(tags[i].trim()) < 0) {
       // Adding the new tag
       extractedTags.push(tags[i].trim());
     }
   }
   var newFileName = generateFileName(fileName, extractedTags);
   TSCORE.IO.renameFile(filePath, containingDirectoryPath + TSCORE.dirSeparator + newFileName);
 }
Example #14
0
 function removeTagsFromFile(filePath, tags) {
   console.log('Remove the tags from: ' + filePath);
   var fileName = extractFileName(filePath);
   var containingDirectoryPath = extractContainingDirectoryPath(filePath);
   var extractedTags = extractTags(filePath);
   for (var i = 0; i < tags.length; i++) {
     // check if tag is already in the tag array
     var tagLoc = extractedTags.indexOf(tags[i].trim());
     if (tagLoc >= 0) {
       // Remove the new tag
       extractedTags.splice(tagLoc, 1);
     }
   }
   var newFileName = generateFileName(fileName, extractedTags);
   TSCORE.IO.renameFile(filePath, containingDirectoryPath + TSCORE.dirSeparator + newFileName);
 }