Changeset 5685


Ignore:
Timestamp:
Aug 10, 2017, 8:58:55 AM (21 months ago)
Author:
jrpelegrina
Message:

Updated changelog. Improved mount point verification

Location:
lliurex-gdrive/trunk/fuentes
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • lliurex-gdrive/trunk/fuentes/debian/changelog

    r5665 r5685  
     1lliurex-gdrive (0.3.10) xenial; urgency=medium
     2
     3  * Improved mount point verification (empty folder and owner)
     4
     5 -- Juan Ramon Pelegrina <juapesai@hotmail.com>  Thu, 10 Aug 2017 08:55:26 +0200
     6
    17lliurex-gdrive (0.3.9) xenial; urgency=medium
    28
  • lliurex-gdrive/trunk/fuentes/lliurex-gdrive-gui.install/usr/share/lliurex-gdrive/ProfileBox.py

    r5661 r5685  
    138138                self.cancel_add_profile_button.connect("clicked",self.cancel_add_profile_clicked)
    139139                self.new_profile_window.connect("delete_event",self.hide_window)
     140                self.mountpoint_entry.connect("file-set",self.check_mountpoint_folder)
    140141
    141142
     
    147148                self.initial_connection=self.core.LliurexGoogleDriveManager.check_google_connection()
    148149                return
     150
     151        #def check_initial_connection   
    149152       
    150153        def load_info(self,info):
     
    225228                self.check_connection_t.start()
    226229                GLib.timeout_add(100,self.pulsate_add_connection)
     230
     231        #def add_new_profile_button_clicked     
    227232       
    228233        def pulsate_add_connection(self):
     
    310315                        return False   
    311316
     317        #def pulsate_delete_profile             
     318
    312319       
    313320        def delete_profile(self,profile):
    314321
    315322                self.delete=self.core.LliurexGoogleDriveManager.delete_profile(self.profiles_info,profile)
     323
     324        #def delete_profile     
    316325
    317326        def sync_profile_clicked(self,button,hbox):
     
    358367                return False                                   
    359368
     369        #def pulsate_sync_profile       
    360370
    361371        def sync_profile(self,hbox):
     
    370380                self.status_mod,self.status_info=self.core.LliurexGoogleDriveManager.sync_profile(profile,mountpoint,current_status)
    371381               
     382        #def sync_profile       
    372383
    373384        def edit_profile_clicked(self,button,hbox):
     
    419430                return False
    420431
    421 
     432        #def pulsate_edit_connection   
    422433
    423434
     
    425436                self.connection=self.core.LliurexGoogleDriveManager.check_google_connection()
    426437
     438        #def check_connection   
    427439
    428440        def new_profile_button(self,profile_name,email,mountpoint):
     
    537549                self.new_automount=self.automount_entry.get_state()
    538550
    539                 check_form=self.check_profile_info()
     551                #check_form=self.check_profile_info()
     552                check_form=self.core.LliurexGoogleDriveManager.check_profile_info(self.new_profile,self.new_mountpoint,self.edition)
     553
    540554                self.profile_msg.show()
    541555
     
    561575                else:
    562576                        self.profile_msg.set_name("MSG_ERROR_LABEL")
    563                         self.profile_msg.set_text(check_form["msg"])
     577                        #self.profile_msg.set_text(check_form["msg"])
     578                        self.profile_msg.set_text(self.get_msg(check_form["code"]))
    564579                        self.enable_entry_profile_dialog()
    565                                
    566                                
    567                
     580
    568581       
    569582        #def accept_add_profile_clicked
    570583
     584        def check_mountpoint_folder(self,widget):
     585
     586       
     587                self.disable_entry_profile_dialog()
     588                #ENCODING TO UNICODE
     589                profile=self.profile_entry.get_text()
     590
     591                new_profile=profile.strip().decode("utf-8")
     592                new_mountpoint=self.mountpoint_entry.get_filename().decode("utf-8")
     593                               
     594                check_form=self.core.LliurexGoogleDriveManager.check_mountpoint_folder(new_profile,new_mountpoint,self.edition)
     595               
     596                if not check_form["result"]:
     597                        self.profile_msg.show()
     598                        self.profile_msg.set_name("MSG_ERROR_LABEL")
     599                        self.profile_msg.set_text(self.get_msg(check_form["code"]))
     600                       
     601                else:
     602                        self.profile_msg.hide()
     603
     604                self.enable_entry_profile_dialog()     
     605
     606        #def check_mountpoint_folder   
     607
     608        '''     
    571609        def check_profile_info(self):
    572610
     
    599637
    600638        #def check_profile_info
     639
     640        '''     
    601641
    602642        def pulsate_add_profile(self):
     
    654694                        msg_text=_("Changes applied successfully")
    655695               
    656                 elif    code==1:
     696                elif code==1:
    657697                        msg_text=_("Error: Unable to create mount point")
    658698
     
    680720                elif code==9:
    681721                        msg_text=_("Status updated. Now you can change it")
    682                 return msg_text
     722
     723                elif code==10:
     724                        msg_text=_("You must indicate a profile")
     725
     726                elif code==11:
     727                        msg_text=_("Profile can not contain blanks")
     728
     729                elif code==12:
     730                        msg_text=_("Profile already exists")
     731                       
     732                elif code==13:
     733                        msg_text=_("Mount point already used by another profile")       
     734
     735                elif code==14:
     736                        msg_text=_("The mount point must be an empty folder")   
     737
     738                elif code==15:
     739                        msg_text=_("Mount point is not owned by user")         
     740               
     741                return msg_text         
     742               
    683743
    684744        #def get_msg                                                   
  • lliurex-gdrive/trunk/fuentes/python-lliurex-gdrive/lliurex/lliurexgdrive/__init__.py

    r5668 r5685  
    272272                '''
    273273                        code=0: Form OK
    274                         code=1: Profile empty
    275                         code=2: Profile with blanck spaces
    276                         code=3: Profile duplicate
    277                         code=4: Mountpoint duplicate
    278                         code=5: Mountpoint not empty
    279                         code=6: Mountpoint not owned by user
    280 
     274                        code=10: Profile empty
     275                        code=11: Profile with blanck spaces
     276                        code=12: Profile duplicate
     277                       
    281278                '''     
    282279                #profile=profile.decode("utf-8")
     
    290287
    291288                        if profile=="":
    292                                 return {"result":False,"code":1}
     289                                return {"result":False,"code":10}
    293290
    294291                        if ' ' in profile:
    295                                 return {"result":False,"code":2}
     292                                return {"result":False,"code":11}
    296293       
    297294                        else:
    298295                                for item in self.profiles_config:
    299296                                        if profile==item:
    300                                                 return {"result":False,"code":3}
    301 
    302                
     297                                                return {"result":False,"code":12}
     298
     299               
     300                '''
    303301                for item in self.profiles_config:
    304302                        if profile!=item:
     
    318316                                        return {"result":False,"code":5}                                       
    319317
    320                
    321318
    322319                return {"result":True,"code":0}                                                         
     320                       
     321                '''
     322                return self.check_mountpoint_folder(profile,mountpoint,edition)
     323
     324       
     325        #def check_profile_info
     326
     327
     328        def check_mountpoint_folder(self,profile,mountpoint,edition):
     329
     330                '''
     331                        code=13: Mountpoint duplicate
     332                        code=14: Mountpoint not empty
     333                        code=15: Mountpoint not owned by user
     334                '''
     335
     336                for item in self.profiles_config:
     337                        if profile!=item:
     338                                if mountpoint==self.profiles_config[item]["mountpoint"]:
     339                                        return {"result":False,"code":13}
     340
     341                if not os.access(mountpoint,os.W_OK):
     342                        return {"result":False,"code":15}
     343                       
     344
     345                if os.listdir(mountpoint):
     346                        if not edition:
     347                                return {"result":False,"code":14}       
     348                        else:
     349                                if mountpoint != self.profiles_config[profile]["mountpoint"]:
     350                                        return {"result":False,"code":14}                                       
     351
     352               
     353                return {"result":True,"code":0}         
     354
    323355       
    324356        #def check_profile_info
Note: See TracChangeset for help on using the changeset viewer.