Changeset cd2bf2a


Ignore:
Timestamp:
Nov 16, 2011 5:37:50 PM (3 years ago)
Author:
yomguy <yomguy@…>
Branches:
master, crem, crem2, crem3, dev, dev2, diadems, dj1.6, feature/breadcrumbs, feature/ts-0.5, feature/ts-0.5.4, feature/writecache, forma, generic, instru_search, lam, lam2, mapsv3, merge, nlivemulti, production, release/1.4.4, sabiod, search, security, server, social, storage, telecaster, test, video
Children:
4a5aa1d
Parents:
993e056
git-author:
yomguy <yomguy@…> (16/11/2011 17:37:50)
git-committer:
yomguy <yomguy@…> (16/11/2011 17:37:50)
Message:

fix some cases in import scripts

Location:
tools/scripts
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • tools/scripts/telemeta-crem-import-new.py

    r95ce89e4 rcd2bf2a  
    4444        self.pattern = pattern 
    4545 
     46    def write_file(self, item, wav_file): 
     47        if os.path.exists(wav_file): 
     48            if not item.file : 
     49                f = open(wav_file, 'r') 
     50                file_content = ContentFile(f.read()) 
     51                item.file.save(filename, file_content) 
     52                f.close() 
     53                item.code = new_ref 
     54                item.save() 
     55            else: 
     56                msg = code + ' : fichier ' + wav_file + ' déjà ajouté !' 
     57                self.logger.write_error(collection, msg) 
     58        else: 
     59            msg = code + ' : fichier audio ' + wav_file + ' inexistant !' 
     60            self.logger.write_error(collection, msg) 
     61             
    4662    def wav_import(self): 
    47         from telemeta.models import MediaItem 
     63        from telemeta.models import MediaItem, MediaCollection 
     64         
    4865        for collection in self.collections: 
     66            collection_name = collection.split(os.sep)[-1] 
    4967            collection_dir = self.source_dir + os.sep + collection 
    5068            if not '/.' in collection_dir and self.pattern in collection_dir: 
    51                 self.collection_name = collection.split(os.sep)[-1] 
    5269                msg = '************************ ' + collection + ' ******************************' 
    5370                self.logger.write_info(collection, msg[:70]) 
    54  
     71                c = MediaCollection.objects.filter(code=collection_name) 
     72                if len(c) == 0: 
     73                    msg = collection + ' collection NON présente dans la BDD, CREATION ' 
     74                    self.logger.write_info(collection, msg[:70]) 
     75                    c = MediaCollection(code=collection_name) 
     76                    c.save() 
     77                else: 
     78                    c = c[0] 
     79                     
    5580                collection_files = os.listdir(collection_dir) 
    5681                for filename in collection_files: 
    5782                    wav_file = self.source_dir + os.sep + collection + os.sep + filename 
    5883                    code = filename.split('.')[0] 
    59                     print code 
    6084                    items = MediaItem.objects.filter(code=code) 
    6185                    if len(items) != 0: 
     86                        msg = item.code+' : id = '+str(item.id)+" : title = "+item.title 
     87                        self.logger.write_info(collection, msg) 
    6288                        item = items[0] 
    63                         print item.code + ' : id = ' + str(item.id) + " : title = " + item.title 
    64                         if os.path.exists(wav_file): 
    65                             if not item.file : 
    66                                 f = open(wav_file, 'r') 
    67                                 file_content = ContentFile(f.read()) 
    68                                 item.file.save(filename, file_content) 
    69                                 f.close() 
    70                                 item.code = new_ref 
    71                                 item.save() 
    72                             else: 
    73                                 msg = code + ' : fichier ' + wav_file + ' déjà ajouté !' 
    74                                 print msg 
    75                                 self.logger.write_error(collection, msg) 
    76                         else: 
    77                             msg = code + ' : fichier audio ' + wav_file + ' inexistant !' 
    78                             print msg 
    79                             self.logger.write_error(collection, msg) 
    8089                    else: 
    81                         msg = code + ' : item inexistant dans la base de données !' 
    82                         print msg 
    83                         self.logger.write_error(collection, msg) 
     90                        msg = item.code + ' : item NON présent dans la base de données, CREATION' 
     91                        self.logger.write_info(collection, msg) 
     92                        item = MediaItem(code=code, collection=c) 
     93                    self.write_file(item, wav_file) 
    8494 
    8595 
  • tools/scripts/telemeta-crem-import.py

    r95ce89e4 rcd2bf2a  
    4747 
    4848    def wav_import(self): 
    49         from telemeta.models import MediaItem 
     49        from telemeta.models import MediaItem,  MediaCollection 
     50         
    5051        for collection in self.collections: 
    5152            collection_dir = self.source_dir + os.sep + collection 
    5253            if not '/.' in collection_dir and self.pattern in collection_dir: 
    53                 self.collection_name = collection.split(os.sep)[-1] 
     54                collection_name = collection.split(os.sep)[-1] 
     55                c = MediaCollection.objects.filter(code=collection_name) 
     56                if len(c) == 0: 
     57                    sys.exit(msg = collection + ' collection NON présente dans la BDD, SORTIE ') 
     58                     
     59        for collection in self.collections: 
     60            collection_dir = self.source_dir + os.sep + collection 
     61            if not '/.' in collection_dir and self.pattern in collection_dir: 
     62                collection_name = collection.split(os.sep)[-1] 
    5463                msg = '************************ ' + collection + ' ******************************' 
    5564                self.logger.write_info(collection, msg[:70]) 
    56  
     65                     
    5766                collection_files = os.listdir(collection_dir) 
    5867                if not collection + '.csv' in collection_files: 
Note: See TracChangeset for help on using the changeset viewer.