alcatel/dataparser/ClientSearchAttributes.py
author Nicolas Sauret <nicolas.sauret@iri.centrepompidou.fr>
Fri, 18 Apr 2014 14:31:58 +0200
changeset 51 79833eaa394a
parent 37 3848e1813a30
permissions -rw-r--r--
set up second level for navigation
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     1
'''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     2
Created on 27 juil. 2012
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     3
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     4
@author: gerard
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     5
'''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     6
import logging
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     7
import time
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     8
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
     9
logger = logging.getLogger('document')
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    10
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    11
class ClientSearchAttributes(object):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    12
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    13
    def __init__(self, request):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    14
        self.request = request
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    15
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    16
    def get_text(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    17
        text = ''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    18
        try:
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    19
            text = self.request.POST['recherche']
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    20
        except Exception, err:
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    21
            '''logger.info('No recherche attribute in the http post request.'+str(err))'''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    22
        return text
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    23
    
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    24
    def get_filtre(self):
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    25
        filtre=''
3848e1813a30 last version
cobled
parents: 27
diff changeset
    26
        try:
3848e1813a30 last version
cobled
parents: 27
diff changeset
    27
            filtre = self.request.POST['filtre']
3848e1813a30 last version
cobled
parents: 27
diff changeset
    28
        except Exception, err:
3848e1813a30 last version
cobled
parents: 27
diff changeset
    29
            logger.info('No recherche attribute in the http post request.'+str(err))    
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    30
        return filtre
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    31
     
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    32
    def get_picture_url(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    33
        picture_url = ''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    34
        try:
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    35
            picture_url = self.request.POST['picture_image']
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    36
        except Exception, err:
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    37
            '''logger.info('Info: ' + str(err))'''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    38
        return picture_url
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    39
    
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    40
    def get_uploaded_picture_name(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    41
        uploaded_picture_name = ''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    42
        if self.request.FILES.keys():
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    43
            for key in self.request.FILES.keys():    
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    44
                image_obj = self.request.FILES[key]
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    45
                uploaded_picture_name = image_obj.name
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    46
        return uploaded_picture_name
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    47
        
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    48
    def has_image_file(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    49
        return len(self.request.FILES.keys())
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    50
         
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    51
    def get_from_date(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    52
        date = ''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    53
        try:
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    54
            date = self.request.POST['from_date']
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    55
            
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    56
            '''time_object = time.strptime(from_date, '%Y-%m-%dT%H:%M:%S.0Z')'''
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    57
            '''time_object = time.strptime(from_date, '%m/%d/%Y')
3848e1813a30 last version
cobled
parents: 27
diff changeset
    58
            date = str(int(time.mktime(time_object)))'''
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    59
        except Exception, err:
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    60
            logger.info('Info: ' + str(err))
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    61
        return date
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    62
    
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    63
    def get_to_date(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    64
        date = ''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    65
        try:
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    66
            date = self.request.POST['to_date']
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    67
                       
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    68
            '''time_object = time.strptime(to_date, '%Y-%m-%dT%H:%M:%S.0Z')'''
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    69
            '''time_object = time.strptime(to_date, '%m/%d/%Y')
3848e1813a30 last version
cobled
parents: 27
diff changeset
    70
            date = str(int(time.mktime(time_object)))'''
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    71
        except Exception, err:
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    72
            logger.info('Info: ' + str(err))
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    73
        return date
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    74
     
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    75
    def get_categories(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    76
        categories = []
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    77
        #try:
3848e1813a30 last version
cobled
parents: 27
diff changeset
    78
            #categories = self.request.POST.getlist('categories')
3848e1813a30 last version
cobled
parents: 27
diff changeset
    79
        logger.info('get_categories ENTER')
3848e1813a30 last version
cobled
parents: 27
diff changeset
    80
       
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    81
        try:
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    82
            c = self.request.POST['categories1']
3848e1813a30 last version
cobled
parents: 27
diff changeset
    83
            categories.append(c)
3848e1813a30 last version
cobled
parents: 27
diff changeset
    84
        except Exception, err:
3848e1813a30 last version
cobled
parents: 27
diff changeset
    85
            logger.info('get_categories categories1'+ str(err))
3848e1813a30 last version
cobled
parents: 27
diff changeset
    86
            categories.append('')
3848e1813a30 last version
cobled
parents: 27
diff changeset
    87
           
3848e1813a30 last version
cobled
parents: 27
diff changeset
    88
        
3848e1813a30 last version
cobled
parents: 27
diff changeset
    89
        try:
3848e1813a30 last version
cobled
parents: 27
diff changeset
    90
            c = self.request.POST['categories2']
3848e1813a30 last version
cobled
parents: 27
diff changeset
    91
            categories.append(c)
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    92
        except Exception, err:
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    93
            logger.info('get_categories categories2'+ str(err))
3848e1813a30 last version
cobled
parents: 27
diff changeset
    94
            categories.append('')
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
    95
        
37
3848e1813a30 last version
cobled
parents: 27
diff changeset
    96
        try:
3848e1813a30 last version
cobled
parents: 27
diff changeset
    97
            c = self.request.POST['categories3']
3848e1813a30 last version
cobled
parents: 27
diff changeset
    98
            categories.append(c)
3848e1813a30 last version
cobled
parents: 27
diff changeset
    99
        except Exception, err:
3848e1813a30 last version
cobled
parents: 27
diff changeset
   100
            logger.info('get_categories categories3'+ str(err))
3848e1813a30 last version
cobled
parents: 27
diff changeset
   101
            categories.append('')
3848e1813a30 last version
cobled
parents: 27
diff changeset
   102
           
3848e1813a30 last version
cobled
parents: 27
diff changeset
   103
        
3848e1813a30 last version
cobled
parents: 27
diff changeset
   104
        try:
3848e1813a30 last version
cobled
parents: 27
diff changeset
   105
            c = self.request.POST['categories4']
3848e1813a30 last version
cobled
parents: 27
diff changeset
   106
            categories.append(c)
3848e1813a30 last version
cobled
parents: 27
diff changeset
   107
        except Exception, err:
3848e1813a30 last version
cobled
parents: 27
diff changeset
   108
            logger.info('get_categories categories4'+ str(err))
3848e1813a30 last version
cobled
parents: 27
diff changeset
   109
            categories.append('')
3848e1813a30 last version
cobled
parents: 27
diff changeset
   110
                
3848e1813a30 last version
cobled
parents: 27
diff changeset
   111
        logger.info('categories = $$$$$$$$$$$'+str(categories))        
27
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   112
        return categories 
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   113
    
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   114
    def get_documentary_file(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   115
        documentary_file = ''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   116
        try:
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   117
            documentary_file = self.request.POST['documentary_file_id']
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   118
        except Exception, err:
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   119
            logger.info('Info: ' + str(err))
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   120
        
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   121
        return documentary_file
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   122
    
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   123
    def get_filtering_params(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   124
        filtering_params = {'from_date':self.get_from_date()}
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   125
        filtering_params['to_date'] = self.get_to_date()
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   126
        filtering_params['categories'] = self.get_categories()
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   127
        return filtering_params
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   128
        
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   129
    def get_hash_value(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   130
        value = 'text' + self.get_text()
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   131
        value += 'image' + self.get_picture_url()
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   132
        '''value += 'from_date' + self.get_from_date()
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   133
        value += 'get_to_date' + self.get_to_date()'''
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   134
        value += 'categories' + str(self.get_categories())
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   135
        return str(hash(repr(value)))
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   136
    
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   137
    def get_hash_value_from_text_image(self):
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   138
        value = 'text' + self.get_text()
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   139
        value += 'image' + self.get_picture_url()
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   140
        value += 'imageuploaded' + self.get_uploaded_picture_name()
8ca7f2cea729 add alcatel folder
cobled@FRVILN0H401086.emea.lucent.com
parents:
diff changeset
   141
        return str(hash(repr(value)))