Index: main/waeup.ikoba/trunk/src/waeup/ikoba/app.py
===================================================================
--- main/waeup.ikoba/trunk/src/waeup/ikoba/app.py	(revision 12097)
+++ main/waeup.ikoba/trunk/src/waeup/ikoba/app.py	(revision 12098)
@@ -43,5 +43,5 @@
     _curr_doc_id = 101
 
-    _curr_app_id = 101
+    _curr_con_id = 101
 
     # Setup authentication for this app. Note: this is only
@@ -87,6 +87,6 @@
         """
         # lock.acquire() # lock data
-        new_id = u'a%s' % (self._curr_app_id)
-        self._curr_app_id += 1
+        new_id = u'c%s' % (self._curr_con_id)
+        self._curr_con_id += 1
         # self._p_changed = True
         # commit()
Index: main/waeup.ikoba/trunk/src/waeup/ikoba/customers/interfaces.py
===================================================================
--- main/waeup.ikoba/trunk/src/waeup/ikoba/customers/interfaces.py	(revision 12097)
+++ main/waeup.ikoba/trunk/src/waeup/ikoba/customers/interfaces.py	(revision 12098)
@@ -29,5 +29,5 @@
 
 from waeup.ikoba.customers.vocabularies import (
-    contextual_reg_num_source, GenderSource, nats_vocab, AppCatProductSource)
+    contextual_reg_num_source, GenderSource, nats_vocab, ConCatProductSource)
 
 
@@ -289,5 +289,5 @@
     product = schema.Choice(
         title = _(u'Product'),
-        source = AppCatProductSource(),
+        source = ConCatProductSource(),
         required = False,
         )
@@ -300,5 +300,5 @@
     product = schema.Choice(
         title = _(u'Product'),
-        source = AppCatProductSource(),
-        required = True,
-        )
+        source = ConCatProductSource(),
+        required = True,
+        )
Index: main/waeup.ikoba/trunk/src/waeup/ikoba/customers/tests/test_browser.py
===================================================================
--- main/waeup.ikoba/trunk/src/waeup/ikoba/customers/tests/test_browser.py	(revision 12097)
+++ main/waeup.ikoba/trunk/src/waeup/ikoba/customers/tests/test_browser.py	(revision 12098)
@@ -1068,8 +1068,8 @@
         self.browser.getControl("Create contract").click()
         self.assertTrue('Sample Contract created.' in self.browser.contents)
-        contract = self.customer['contracts']['a102']
+        contract = self.customer['contracts']['c102']
 
         # Contract can be edited
-        self.browser.getLink("a102").click()
+        self.browser.getLink("c102").click()
         self.browser.getLink("Manage").click()
         self.browser.getControl(name="form.product").value = ['SAM']
@@ -1078,5 +1078,5 @@
         self.assertTrue('Form has been saved.' in self.browser.contents)
         self.browser.getLink("View").click()
-        self.assertEqual(self.browser.url, self.contracts_path + '/a102/index')
+        self.assertEqual(self.browser.url, self.contracts_path + '/c102/index')
 
         # Transitions can be performed
@@ -1101,5 +1101,5 @@
         self.assertTrue(
             'INFO - zope.mgr - customers.browser.ContractManageFormPage '
-            '- K1000000 - a102 - saved: title'
+            '- K1000000 - c102 - saved: title'
             in logcontent)
         self.assertTrue(
@@ -1131,13 +1131,13 @@
         self.browser.getControl("Create contract").click()
         self.assertTrue('Sample Contract created.' in self.browser.contents)
-        contract = self.customer['contracts']['a102']
+        contract = self.customer['contracts']['c102']
         # Contract can be edited ...
-        self.browser.getLink("a102").click()
-        self.browser.open(self.contracts_path + '/a102/edit')
+        self.browser.getLink("c102").click()
+        self.browser.open(self.contracts_path + '/c102/edit')
         #self.browser.getLink("Edit").click()
         self.assertTrue('The requested form is locked' in self.browser.contents)
         # Customer is in wrong state
         IWorkflowState(self.customer).setState(APPROVED)
-        self.browser.open(self.contracts_path + '/a102/edit')
+        self.browser.open(self.contracts_path + '/c102/edit')
         self.browser.getControl(name="form.title").value = 'My second app'
         # SAM is in the correct contract_category ...
@@ -1146,17 +1146,17 @@
         self.assertFalse('<option value="LIC">' in self.browser.contents)
         # So far last_product_id is None.
-        self.assertTrue(self.customer['contracts']['a102'].last_product_id is None)
+        self.assertTrue(self.customer['contracts']['c102'].last_product_id is None)
         self.browser.getControl(name="form.product").value = ['SAM']
         self.browser.getControl("Save").click()
         # After saving the form, last_product_id is set.
-        self.assertEqual(self.customer['contracts']['a102'].last_product_id, 'SAM')
+        self.assertEqual(self.customer['contracts']['c102'].last_product_id, 'SAM')
         self.assertTrue('Form has been saved.' in self.browser.contents)
         # Saving the form again does not unset last_product_id
         self.assertEqual(contract.title, 'My second app')
         self.browser.getControl("Save").click()
-        self.assertEqual(self.customer['contracts']['a102'].last_product_id, 'SAM')
+        self.assertEqual(self.customer['contracts']['c102'].last_product_id, 'SAM')
         self.assertTrue('Form has been saved.' in self.browser.contents)
         self.browser.getLink("View").click()
-        self.assertEqual(self.browser.url, self.contracts_path + '/a102/index')
+        self.assertEqual(self.browser.url, self.contracts_path + '/c102/index')
         # Customer can submit the form. The form is also saved.
         self.browser.getLink("Edit").click()
@@ -1167,5 +1167,5 @@
         self.assertTrue('Contract State: submitted for approval' in self.browser.contents)
         # Customer can't edit the contract once it has been submitted
-        self.browser.open(self.contracts_path + '/a102/edit')
+        self.browser.open(self.contracts_path + '/c102/edit')
         self.assertTrue('The requested form is locked' in self.browser.contents)
 
@@ -1181,5 +1181,5 @@
         print "Sample PDF overview_slip.pdf written to %s" % path
         # Officers can open contract slips
-        self.browser.open(self.customer_path + '/contracts/a101')
+        self.browser.open(self.customer_path + '/contracts/c101')
         self.browser.getLink("Download contract slip").click()
         self.assertEqual(self.browser.headers['Status'], '200 Ok')
Index: main/waeup.ikoba/trunk/src/waeup/ikoba/customers/tests/test_catalog.py
===================================================================
--- main/waeup.ikoba/trunk/src/waeup/ikoba/customers/tests/test_catalog.py	(revision 12097)
+++ main/waeup.ikoba/trunk/src/waeup/ikoba/customers/tests/test_catalog.py	(revision 12098)
@@ -187,5 +187,5 @@
         logcontent = open(logfile).read()
         self.assertTrue(
-            'INFO - system - ObjectRemovedEvent - K1000000 - a101 - removed: product\n'
+            'INFO - system - ObjectRemovedEvent - K1000000 - c101 - removed: product\n'
             in logcontent)
 
Index: main/waeup.ikoba/trunk/src/waeup/ikoba/customers/vocabularies.py
===================================================================
--- main/waeup.ikoba/trunk/src/waeup/ikoba/customers/vocabularies.py	(revision 12097)
+++ main/waeup.ikoba/trunk/src/waeup/ikoba/customers/vocabularies.py	(revision 12098)
@@ -120,21 +120,21 @@
 
 
-class AppCatProductSource(SmartBasicContextualSourceFactory):
+class ConCatProductSource(SmartBasicContextualSourceFactory):
     """An contract category product delivers all products
     which belong to a certain contract_category.
     """
     def contains(self, context, value):
-        appcat = getattr(context, 'contract_category', None)
-        if value.contract_category == appcat:
+        concat = getattr(context, 'contract_category', None)
+        if value.contract_category == concat:
             return True
         return False
 
     def getValues(self, context):
-        appcat = getattr(context, 'contract_category', None)
+        concat = getattr(context, 'contract_category', None)
         products = grok.getSite()['products'].values()
-        if not appcat:
+        if not concat:
             return products
         resultlist = [
-            value for value in products if value.contract_category == appcat]
+            value for value in products if value.contract_category == concat]
         return resultlist
 
Index: main/waeup.ikoba/trunk/src/waeup/ikoba/products/interfaces.py
===================================================================
--- main/waeup.ikoba/trunk/src/waeup/ikoba/products/interfaces.py	(revision 12097)
+++ main/waeup.ikoba/trunk/src/waeup/ikoba/products/interfaces.py	(revision 12098)
@@ -23,10 +23,10 @@
 from waeup.ikoba.interfaces import MessageFactory as _
 
-class AppCatSource(ContextualDictSourceFactoryBase):
+class ConCatSource(ContextualDictSourceFactoryBase):
     """A contract category source delivers all contract categories
     provided in the portal.
     """
     #: name of dict to deliver from kofa utils.
-    DICT_NAME = 'APP_CATS_DICT'
+    DICT_NAME = 'CON_CATS_DICT'
 
 class IProductsContainer(IIkobaObject):
@@ -57,5 +57,5 @@
     contract_category = schema.Choice(
         title = _(u'Contract Category'),
-        source = AppCatSource(),
+        source = ConCatSource(),
         default = u'license',
         required = True,
Index: main/waeup.ikoba/trunk/src/waeup/ikoba/utils/utils.py
===================================================================
--- main/waeup.ikoba/trunk/src/waeup/ikoba/utils/utils.py	(revision 12097)
+++ main/waeup.ikoba/trunk/src/waeup/ikoba/utils/utils.py	(revision 12098)
@@ -102,8 +102,8 @@
         return sorted_phone_prefixes(data, request)
 
-    APP_CATS_DICT = {
+    CON_CATS_DICT = {
         'sample': 'Sample Category',
         'license': 'License',
-        'no': 'no application',
+        'no': 'no contract',
         }
 
