Index: /main/waeup.sirp/trunk/src/waeup/sirp/hostels/browser.py
===================================================================
--- /main/waeup.sirp/trunk/src/waeup/sirp/hostels/browser.py	(revision 6955)
+++ /main/waeup.sirp/trunk/src/waeup/sirp/hostels/browser.py	(revision 6956)
@@ -32,9 +32,26 @@
 from waeup.sirp.browser.resources import toggleall
 from waeup.sirp.authentication import get_principal_role_manager
-from waeup.sirp.students.browser import msave
 from waeup.sirp.hostels.container import HostelsContainer
 from waeup.sirp.hostels.hostel import Hostel
 from waeup.sirp.hostels.interfaces import IHostelsContainer, IHostel
 
+def write_log_message(view, message):
+    ob_class = view.__implemented__.__name__.replace('waeup.sirp.','')
+    view.context.loggerInfo(ob_class, message)
+    return
+
+# Save function used for save methods in manager pages
+def msave(view, **data):
+    form = view.request.form
+    changed_fields = view.applyData(view.context, **data)
+    # Turn list of lists into single list
+    if changed_fields:
+        changed_fields = reduce(lambda x,y: x+y, changed_fields.values())
+    fields_string = ' + '.join(changed_fields)
+    view.context._p_changed = True
+    view.flash('Form has been saved.')
+    if fields_string:
+        write_log_message(view, 'saved: % s' % fields_string)
+    return
 
 class HostelsTab(PrimaryNavTab):
@@ -118,4 +135,5 @@
         hostel = Hostel()
         self.applyData(hostel, **data)
+        hostel.hostel_id = data['hostel_name'].lower().replace(' ','_')
         self.context.addHostel(hostel)
         self.flash('Hostel created.')
@@ -132,11 +150,11 @@
     pnav = 5
 
-    #@property
-    #def label(self):
-    #    return self.context.name
+    @property
+    def label(self):
+        return self.context.hostel_name
 
-    #@property
-    #def title(self):
-    #    return self.title
+    @property
+    def title(self):
+        return self.context.hostel_name
 
 class HostelManageActionButton(ManageActionButton):
@@ -159,7 +177,7 @@
     pnav = 5
 
-    #@property
-    #def title(self):
-    #    return self.context.name
+    @property
+    def title(self):
+        return self.context.hostel_name
 
     def update(self):
Index: /main/waeup.sirp/trunk/src/waeup/sirp/hostels/container.py
===================================================================
--- /main/waeup.sirp/trunk/src/waeup/sirp/hostels/container.py	(revision 6955)
+++ /main/waeup.sirp/trunk/src/waeup/sirp/hostels/container.py	(revision 6956)
@@ -20,5 +20,5 @@
 from grok import index
 from waeup.sirp.hostels.interfaces import IHostelsContainer, IHostel
-from waeup.sirp.utils.helpers import attrs_to_fields
+from waeup.sirp.utils.helpers import attrs_to_fields, get_current_principal
 from waeup.sirp.utils.logger import Logger
 
Index: /main/waeup.sirp/trunk/src/waeup/sirp/hostels/interfaces.py
===================================================================
--- /main/waeup.sirp/trunk/src/waeup/sirp/hostels/interfaces.py	(revision 6955)
+++ /main/waeup.sirp/trunk/src/waeup/sirp/hostels/interfaces.py	(revision 6956)
@@ -19,7 +19,45 @@
         """
 
+    #hostel_id = Attribute('Hostel Id')
+
     hostel_id = schema.TextLine(
-        title = u'Hostel ID',
+        title = u'Hostel Id',
+        readonly = True,
+        )
+
+    sort_id = schema.Int(
+        title = u'Sort Id',
+        required = True,
+        default = 10,
+        )
+
+    hostel_name = schema.TextLine(
+        title = u'Hall Name',
         required = True,
         default = u'hostel_1',
         )
+
+    nr_of_blocks = schema.Int(
+        title = u'Number of Blocks',
+        required = True,
+        default = 3,
+        )
+
+    nr_of_floors = schema.Int(
+        title = u'Number of Blocks',
+        required = True,
+        default = 3,
+        )
+
+    rooms_per_floor = schema.Int(
+        title = u'Number of Blocks',
+        required = True,
+        default = 20,
+        )
+
+    beds_per_room = schema.Int(
+        title = u'Number of Blocks',
+        required = True,
+        default = 6,
+        )
+
