Author: jablko
Date: Tue Oct 26 09:28:25 2010
New Revision: 8504

Log:
Refactor pages to use generic slug

Modified:
   trunk/config/schema.yml
   trunk/data/fixtures/staticPages.yml
   trunk/data/sql/lib.model.schema.sql
   trunk/lib/model/QubitStaticPage.php
   trunk/lib/model/map/StaticPageTableMap.php
   trunk/lib/model/om/BaseStaticPage.php

Modified: trunk/config/schema.yml
==============================================================================
--- trunk/config/schema.yml     Tue Oct 26 09:15:03 2010        (r8503)
+++ trunk/config/schema.yml     Tue Oct 26 09:28:25 2010        (r8504)
@@ -339,7 +339,6 @@
 
   static_page:
     id: { type: integer, required: true, primaryKey: true, foreignTable: 
object, foreignReference: id, onDelete: cascade, inheritanceKey: true }
-    permalink: { type: varchar(255), unique: true }
 
   static_page_i18n:
     title: varchar(255)

Modified: trunk/data/fixtures/staticPages.yml
==============================================================================
--- trunk/data/fixtures/staticPages.yml Tue Oct 26 09:15:03 2010        (r8503)
+++ trunk/data/fixtures/staticPages.yml Tue Oct 26 09:28:25 2010        (r8504)
@@ -1,6 +1,6 @@
 QubitStaticPage:
   QubitStaticPage_384:
-    permalink: homepage
+    slug: home
     source_culture: en
     title:
       de: Willkommen
@@ -23,7 +23,7 @@
       pt: "Essa é a página padrão para Qubit open information management 
toolkit (ferramentas de gerenciamento aberto da informação Qubit).\n\nQubit é 
um um software aberto, totalmente baseado na web, que permite que indivíduos e 
instituições, como arquivos, bibliotecas, museus, e galerias de arte possam 
gerenciar e hospedar on-line conjuntos de recursos de informação (por exemplo, 
documentos arquivísticos, fotografias, vídeos, livros, etc.). Qubit abriga 
acervos multilíngues e de diversas entidades custodiadoras.\n\nLeia o <a 
href=\"http://qubit-toolkit.org/\";>manual on-line</a> para aprender como 
personalizar o Qubit e comece a inserir e gerenciar seus dados."
       sl: "To je prednastavljena domača stran za Qubit odprtokodno orodje za 
upravljanje z informacijami.\n\nQubit je spletno odprtokodno orodje, ki omogoča 
posameznikom in institucijam kot so arhivi, knjižnice, muzeji, in umetnostne 
galerije, da upravljajo in gostijo spletne zbirke informacije o virih (kot so 
npr. arhivski dokumenti, fortografije, video, knjige, in podobno). Qubit 
podpira večjezikovne zbirke in zbirke v več skladiščih.\n\nGlej <a 
href=\"http://qubit-toolkit.org/\";>spletni priročnik</a>, da spoznaš kako 
prilagoditi Qubit in ga začeti uporabljati za zajemanje in upravljanje lastnih 
podatkov."
   QubitStaticPage_385:
-    permalink: about
+    slug: about
     source_culture: en
     title:
       de: Über

Modified: trunk/data/sql/lib.model.schema.sql
==============================================================================
--- trunk/data/sql/lib.model.schema.sql Tue Oct 26 09:15:03 2010        (r8503)
+++ trunk/data/sql/lib.model.schema.sql Tue Oct 26 09:28:25 2010        (r8504)
@@ -1203,7 +1203,6 @@
 CREATE TABLE `static_page`
 (
        `id` INTEGER  NOT NULL,
-       `permalink` VARCHAR(255),
        `source_culture` VARCHAR(7)  NOT NULL,
        PRIMARY KEY (`id`),
        CONSTRAINT `static_page_FK_1`

Modified: trunk/lib/model/QubitStaticPage.php
==============================================================================
--- trunk/lib/model/QubitStaticPage.php Tue Oct 26 09:15:03 2010        (r8503)
+++ trunk/lib/model/QubitStaticPage.php Tue Oct 26 09:28:25 2010        (r8504)
@@ -24,6 +24,15 @@
     return (string) $this->title;
   }
 
+  protected function insert($connection = null)
+  {
+    parent::insert($connection);
+
+    QubitSlug::staticInsert($this->id, QubitSlug::slugify($this->title), 
$connection);
+
+    return $this;
+  }
+
   public function isProtected()
   {
     return $this->slug == 'about' || $this->slug == 'home';

Modified: trunk/lib/model/map/StaticPageTableMap.php
==============================================================================
--- trunk/lib/model/map/StaticPageTableMap.php  Tue Oct 26 09:15:03 2010        
(r8503)
+++ trunk/lib/model/map/StaticPageTableMap.php  Tue Oct 26 09:28:25 2010        
(r8504)
@@ -37,7 +37,6 @@
                $this->setUseIdGenerator(false);
                // columns
                $this->addForeignPrimaryKey('ID', 'id', 'INTEGER' , 'object', 
'ID', true, null, null);
-               $this->addColumn('PERMALINK', 'permalink', 'VARCHAR', false, 
255, null);
                $this->addColumn('SOURCE_CULTURE', 'sourceCulture', 'VARCHAR', 
true, 7, null);
                // validators
        } // initialize()

Modified: trunk/lib/model/om/BaseStaticPage.php
==============================================================================
--- trunk/lib/model/om/BaseStaticPage.php       Tue Oct 26 09:15:03 2010        
(r8503)
+++ trunk/lib/model/om/BaseStaticPage.php       Tue Oct 26 09:28:25 2010        
(r8504)
@@ -8,7 +8,6 @@
     TABLE_NAME = 'static_page',
 
     ID = 'static_page.ID',
-    PERMALINK = 'static_page.PERMALINK',
     SOURCE_CULTURE = 'static_page.SOURCE_CULTURE';
 
   public static function addSelectColumns(Criteria $criteria)
@@ -18,7 +17,6 @@
     $criteria->addJoin(QubitStaticPage::ID, QubitObject::ID);
 
     $criteria->addSelectColumn(QubitStaticPage::ID);
-    $criteria->addSelectColumn(QubitStaticPage::PERMALINK);
     $criteria->addSelectColumn(QubitStaticPage::SOURCE_CULTURE);
 
     return $criteria;

-- 
You received this message because you are subscribed to the Google Groups 
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/qubit-commits?hl=en.

Reply via email to