function GroupPermission($db, &$creator)
 {
     $enabled = new dbEnumField('enabled', DB_TYPE_ENUM, 'Y', 'N');
     $permName = new dbField('permission_name', DB_TYPE_STRING, 255);
     $groupID = new dbField('group_id', DB_TYPE_INT, 255);
     $groupJoin = new oneToOneJoinField('group', 'groups', 'group_id', $groupID);
     parent::DBTableObject($db, array($enabled, $permName, $groupID), 'groupPermissions', 'permission_id', $creator);
 }
 /**
  * Constructor.
  *
  * @param $db (dbModule)
  * @param $creator (object)
  * @param $extraFields (object dbField array)
  * @param $extraJoins (object genericJoinField array)
  */
 function UserTranslatedGroup($db, &$creator, $extraFields = array(), $extraJoins = array())
 {
     $name = new dbField('name', DB_TYPE_STRING, 255);
     $description = new dbField('description', DB_TYPE_TEXT);
     $groupID = new dbField('group_id', DB_TYPE_INT);
     $groupID->canBeNull = true;
     $lCode = new dbField('language_code', DB_TYPE_STRING, 5);
     parent::DBTableObject($db, array($name, $description, $groupID, $lCode), 'translatedGroups', 'translated_group_id', $creator, $extraFields);
 }
 function Author(&$db, &$creator)
 {
     $firstName = new dbField('firstname', DB_TYPE_STRING, 70);
     $lastName = new dbField('lastname', DB_TYPE_STRING, 70);
     $ID = new dbField('authorid', DB_TYPE_INT, 11);
     $basicFields = array($ID, $firstName, $lastName);
     $joins = array(new OneToMultipleJoinField('books', 'Books', 'authorid', $ID));
     parent::DBTableObject($db, $basicFields, 'authors', 'authorid', $creator, array(), $joins);
 }
 function calendarEvent(&$db, $extraOptions, &$creator)
 {
     $name = new dbField('name', 'string');
     $start = new dbField('start', 'datetime');
     $end = new dbField('end', 'datetime');
     $desc = new dbField('description', 'text');
     $group = new dbField('groupID', 'int');
     parent::DBTableObject($db, $extraOptions, array('name' => $name, 'start' => $start, 'end' => $end, 'description' => $desc, 'groupID' => $group), 'calendar', 'eventID', $creator);
 }
 /**
  * Constructor
  *
  * @param $db (dbModule)
  * @param $parent (object) the creator of this object (a pagemanager object)
  * @param $extraFields (object dbField array)
  * @param $extraJoins (object dbGenericJoinField array)
  */
 function TranslatedPage(&$db, &$parent, $extraFields = array(), $extraJoins = array())
 {
     $translatedTitle = new dbField('translated_title', DB_TYPE_STRING, 255);
     $translatedNavTitle = new dbField('translated_nav_title', DB_TYPE_STRING, 255);
     $translatedNavTitle->canBeNull = true;
     $translatedContent = new dbField('translated_content', DB_TYPE_TEXT);
     $translatedContent->canBeNull = true;
     $pageID = new dbField('page_id', DB_TYPE_INT, 11);
     $pageID->canBeNull = true;
     $languageCode = new dbField('language_code', DB_TYPE_STRING, 25);
     $ID = new dbField('translated_page_id', DB_TYPE_INT, 11);
     parent::DBTableObject($db, array($ID, $translatedTitle, $translatedNavTitle, $translatedContent, $pageID, 'languageCode' => $languageCode), 'translatedPages', 'translated_page_id', $parent, $extraFields);
 }
 function initEmpty()
 {
     parent::initEmpty();
     $this->setField('place_in_menu', -1);
 }
 function initFromArray($array)
 {
     if (strlen($array['password']) != 32) {
         // not always correct, but I guess nobody will take a password of 32 chars
         $array['password'] = md5($array['password']);
     }
     parent::initFromArray($array);
 }
 /**
  * Constructor
  *
  * @param $db (object database) the database module
  * @param $creator (object)
  * @param $extraFields (dbField array)
  * @param $extraJoins (dbGenericJoinField array)
  */
 function UserGroup($db, &$creator, $extraFields = array(), $extraJoins = array())
 {
     $genericName = new dbField('generic_name', DB_TYPE_STRING, 255);
     $genericDescription = new dbField('generic_description', DB_TYPE_TEXT);
     parent::DBTableObject($db, array($genericName, $genericDescription), 'groups', 'group_id', $creator, $extraFields);
 }