[Uludag-commits] r19865 - in trunk/staj-projeleri/sahip/src: . po sahip

uludag-commits at pardus.org.tr uludag-commits at pardus.org.tr
1 Eyl 2008 Pzt 06:05:32 EEST


Author: emre.aladag
Date: Mon Sep  1 06:05:31 2008
New Revision: 19865

Added:
   trunk/staj-projeleri/sahip/src/po/de.po
   trunk/staj-projeleri/sahip/src/po/sahip.pot
   trunk/staj-projeleri/sahip/src/sahip/maingui.ui
   trunk/staj-projeleri/sahip/src/sahip/sahip.py
   trunk/staj-projeleri/sahip/src/sahip/sahiplib.py
   trunk/staj-projeleri/sahip/src/sahip/userdialog.py
   trunk/staj-projeleri/sahip/src/sahip/usergui.ui
Removed:
   trunk/staj-projeleri/sahip/src/sahip/sahipcore.py
   trunk/staj-projeleri/sahip/src/sahip/sahipgui.ui
   trunk/staj-projeleri/sahip/src/sahip/sahipmain.py
Modified:
   trunk/staj-projeleri/sahip/src/po/tr.po
   trunk/staj-projeleri/sahip/src/sahip/sahipgen.py
   trunk/staj-projeleri/sahip/src/setup.py
Log:
Radical changes...

* Seperate dialog for user form.
* Change in generator module (shadow attrs)
* Several other changes (forgot most of them...)

Took my weekend!



Modified: trunk/staj-projeleri/sahip/src/po/tr.po
=================================================================
Suppressed!
	Too long (more than 250 lines) diff output suppressed...
Modified: trunk/staj-projeleri/sahip/src/sahip/sahipgen.py
=================================================================
--- trunk/staj-projeleri/sahip/src/sahip/sahipgen.py	(original)
+++ trunk/staj-projeleri/sahip/src/sahip/sahipgen.py	Mon Sep  1 06:05:31 2008
@@ -4,7 +4,7 @@
 """The XML generator module for Sahip."""
 
 import piksemel
-from sahipcore import User
+# from sahiplib import User   # Import user class we need to access the users
 
 import gettext
 __trans = gettext.translation('sahip', fallback=True)
@@ -12,8 +12,8 @@
 
 class SahipGenerator:
     """Generates XML file with the information filled in the GUI Form."""
-    def __init__(self, filename="~/Desktop/kahya.xml", language=None,\
-                  variant=None, root_password=None,\
+    def __init__(self, filename="~/Desktop/kahya.xml", language=None, \
+                  variant=None, root_password=None, root_shadowed=False,\
                   timezone=None, hostname=None, users=None, \
                   partitioning_type=None, disk=None,\
                   reponame=None, repoaddr=None ):
@@ -22,47 +22,79 @@
         self.language = language
         self.variant = variant
         self.root_password = root_password
+        self.root_shadowed = root_shadowed
         self.timezone = timezone
         self.hostname = hostname
         self.users = users
         self.partitioning_type = partitioning_type
         self.disk = disk
         self.reponame = reponame
-        self.repoaddr = repoaddr
-        
+        self.repoaddr = repoaddr        
  
     def generate(self):
         """Generates XML File with the attributes of the object."""
+        
+        # Put the constant header
         xmlHeader =  '''<?xml version="1.0" encoding="utf-8"?>
 '''
         doc = piksemel.newDocument("yali")
         doc.setAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance")
         doc.setAttribute("xsi:noNamespaceSchemaLocation","yalisema.xsd")
         
+        # Set language and variant information
         doc.insertTag("language").insertData(self.language)
-        if self.variant: doc.insertTag("variant").insertData(self.variant)        
-        doc.insertTag("root_password").insertData(self.root_password)
+        if self.variant:
+            doc.insertTag("variant").insertData(self.variant)
+        
+        # Root password: shadowed or not...
+        if self.root_shadowed:
+            srp = doc.insertTag("root_password")
+            srp.insertData(self.root_password)
+            srp.setAttribute("shadowed", "yes")
+        else:                    
+            doc.insertTag("root_password").insertData(self.root_password)
+        
+        # Timezone and hostname
         doc.insertTag("timezone").insertData(self.timezone)
         doc.insertTag("hostname").insertData(self.hostname)
                 
-        # USERS
-        usersTag = doc.insertTag("users")
-        for theuser in self.users:
-            newuser = usersTag.insertTag("user")
-            if theuser.autologin:
-                newuser.setAttribute("autologin","yes")
-            newuser.insertTag("username").insertData(theuser.username)
-            newuser.insertTag("realname").insertData(theuser.realname)
-            newuser.insertTag("password").insertData(theuser.password)
-            newuser.insertTag("groups").insertData(",".join(theuser.groups))      
+        # ------ User Stuff ---------------
+        # Note that if statement below can be removed if </users> tag is desired.
+        if self.users:
+            usersTag = doc.insertTag("users")
+            for theuser in self.users:
+                newuser = usersTag.insertTag("user")
+                # If it is autologin, then set set an attribute to it.
+                if theuser.autologin:
+                    newuser.setAttribute("autologin","yes")
+                
+                # username and realName
+                newuser.insertTag("username").insertData(theuser.username)
+                newuser.insertTag("realname").insertData(theuser.realName)
+            
+                # Password: Normal or shadowed
+                if theuser.shadowed:
+                    sp = newuser.insertTag("password")
+                    sp.insertData(theuser.shadowedPassword)
+                    sp.setAttribute("shadowed", "yes")
+                else:        
+                    newuser.insertTag("password").insertData(theuser.normalPassword)
+                
+                # Groups for user.
+                newuser.insertTag("groups").insertData(",".join(theuser.groups))      
+        # ----- USER STUFF FINISHED --------
         
+        # Repo and partitioning settings
         doc.insertTag("reponame").insertData(self.reponame)
         doc.insertTag("repoaddr").insertData(self.repoaddr)
+        
         pt = doc.insertTag("partitioning")
         pt.insertData(self.disk)
         pt.setAttribute("partitioning_type", self.partitioning_type)
         
-                
+        # ------ ALL FINISHED -------------
+        
+        # Now try to write the XML File.        
         try:
             f = open(self.filename, "w")
             f.write(xmlHeader+doc.toPrettyString())
@@ -71,7 +103,7 @@
                     'filename'  : self.filename
                     }
         except:
-            print _("Could not write to %s" % self.filename)
+            # print _("Could not write to %s") % self.filename
             return {'status'    : False,
                     'filename'  : self.filename
                     }
\ No newline at end of file

Modified: trunk/staj-projeleri/sahip/src/setup.py
=================================================================
--- trunk/staj-projeleri/sahip/src/setup.py	(original)
+++ trunk/staj-projeleri/sahip/src/setup.py	Mon Sep  1 06:05:31 2008
@@ -63,7 +63,7 @@
                 y = l.split(",")[0]+', '
                 l = l.replace(y,z)
             l = l.replace(keyEnd,")")
-            #l = l.replace("data_rc","yali4.data_rc")
+            #l = l.replace("data_rc","sahip.data_rc")
             x.write(l)
 
     def compile_ui(self, ui_file):
@@ -81,7 +81,7 @@
         for f in qt_ui_files():
             self.compile_ui(f)
             self.add_gettext_support(f)
-        #os.system("pyrcc4 yali4/data.qrc -o yali4/data_rc.py")
+        #os.system("pyrcc4 sahip/data.qrc -o sahip/data_rc.py")
         build.run(self)
 
 ##
@@ -149,7 +149,7 @@
 setup(name="sahip",
       version= getVersion(),
       description="SAHIP (XML Generator for Kahya)",
-      long_description="SAHIP (XML Generator for Kahya (Silent Installer for YALI)",
+      long_description="SAHIP (XML Generator for Kahya (Silent Installer for YALI))",
       license="GNU GPL2",
       author="Ahmet Emre Aladag",
       author_email="emre at jabber.pardus.org.tr",


Uludag-commits mesaj listesiyle ilgili daha fazla bilgi