typo in delete profile fixed
[stack/code/dboxswitch.git] / profhandler.py
old mode 100755 (executable)
new mode 100644 (file)
index 19a6b97..7575da2
@@ -109,9 +109,20 @@ class ProfHandler():
                 raise AppError('Profile Name does not exists')
         else:
             raise AppError('Profile Name not valid')
-        print("Profile "+profileName+" created.")
+        print("Profile "+profileName+" deleted.")
+
+    def isCurrentProfile(self, ppath):
+        """ Returns true if the current profile path is currently activated """
+        
+        pl = platform.system()
+        if pl in ('Linux','Darwin'):
+            if os.path.exists(self.getDropboxDirectory()):
+                return True if os.readlink(self.getDropboxDirectory()) == ppath else False
+            else:
+                return False
 
     def isValidProfileName(self, pname):
+
         if self.reg.match(pname) is not None:
             return True
         else:
@@ -122,8 +133,6 @@ class ProfHandler():
         if ppath in self.getProfilesList():
             self.stopDropbox()
             try:
-                print self.getDropboxDirectory()
-                print ppath 
                 if pl in ('Linux','Darwin'):
                     if os.path.exists(self.getDropboxDirectory()):
                         os.unlink(self.getDropboxDirectory())
@@ -131,11 +140,16 @@ class ProfHandler():
                 else:
                     raise NotImplementedError, "Not implemented yet."
             except IOError as e:
-                raise AppError('Error on activating Profile: '+ os.path.basename(ppath))
+                raise AppError('Error on activating Profile: '+ self.getBaseProfileName(ppath))
             self.startDropbox()
         else:
             raise AppError("Trying to acrivate non existant profile")
 
+    def getBaseProfileName(self, ppath):
+        """ Returns the base name given a profile returned by getProfilesList """
+
+        return os.path.basename(ppath)
+
     def getDropboxDirectory(self):
         pl = platform.system()
         if pl in ('Linux', 'Darwin'):
@@ -149,6 +163,8 @@ class ProfHandler():
     def stopDropbox(self):
         """ Stop dropbox Daemon """
         pl = platform.system()
+        if pl == 'Linux':
+            os.system("dropbox stop")
         if pl in ('Linux','Darwin'):
             pidfile = os.path.expanduser("~/.dropbox/dropbox.pid")                    
             try: