/***************** XML **********************/ /* Alle -Tags mŸssen um das Element erweitert werden muss einen der folgenden Werte haben : left, right, unisex oder den Leerstring. */ /* pageitems.xml left 0 0 0 */ /* Anpassen der Panelstatements in panelstatements.h */ /* Die beiden Statements 22 und 23 mŸssen die Werte der oben eingefŸgten Elemente abholen. Deshalb mŸssen die Abholspalten (vor node ...) wie folgt erweitert werden: */ /* , spread.position, spread.leftitem, spread.middleitem, spread.rightitem */ /* Das Statement 28 muss die Werte der neuen Elemente einsetzen. */ /* "pageitems.xml" update name = ?, description = ?, type.name = ?, type.id = ?, domain.name = ?, domain.id = ?, state.value = ?, state.id = ?, placeholder.id = ?, placeholder.name = ?, spread.position = ?, spread.leftitem = ?, spread.middleitem = ?, spread.rightitem = ?, node pageitems.pageitem where id = ? */ /* FŸr den Vorlagendialog werden zwei neue Statements benštigt. 56 lŠdt die PopupmenŸs mit den linken, rechten und Unisex-Seiten, die fŸr eine bestimmte Seite wŠhlbar sind. !! Achten Sie bei diesen Befehl darauf, dass auch die aktuell ausgewŠhlte Vorlage im MenŸ erscheint. Mit 57 wird der Preview einer Vorlage ausgewŠhlt. */ /* 56 Lade ID und Name der Vorlagen eines bestimmten Seitetypes zur Verwendung in den Seitentyp-Popupmenues "pageitems.xml" select id, name node pageitems.pageitem where id > 0 and (domain.id = ? or domain.id = 0 or id = ?) and (spread.position = ? or spread.position = '' or id = ?) orderby name 57 Lade den Previewpfad einer Vorlage zur Darstellung im Dialog "pageitems.xml" select preview.src node pageitems.pageitem where id = ? */ /***************** Datenbank **********************/ /* Spreads fŸr die Vorlagen : spreadID = 0 beliebig einsetzbar spreadID = 1 nur fŸr linke Seiten spreadID = 2 nur fŸr Unisex-Seiten spreadID = 3 nur fŸr rechte Seiten LeftID, MiddleID, RightID verweisen auf PageItems, die alternativ verwendet werden kšnnen : Soll eine Vorlage, die nur fŸr linke Seiten verwendet werden darf, auf einer rechten Seite eingesetzt werden, wird automatisch die Vorlage RightID eingesetzt (wenn diese ID existiert und ungleich 0 ist) */ alter table pageitems add SpreadID number (10); alter table pageitems add LeftID number (10); alter table pageitems add MiddleID number (10); alter table pageitems add RightID number (10); update Pageitems set SpreadID = 0, LeftID = 0, MiddleID = 0, RightID = 0; commit; update panelstatements set statement = 'select p.name, t.name, d.name, s.value, p.description, p.preview, p.leftpos, p.toppos, p.rightpos, p.bottompos, p.spreadID, p.leftID, p.middleID, p.rightID from PageItems p, PageItemTypes t, Domain d, RelatedTo s where t.ID = p.TypeID and d.ID = p.DomainID and s.ID = p.StateID and p.id = ?' where id = 23; update panelstatements set statement = 'update PageItems set name = ?, typeid = ?, domainid = ?, stateid = ?, placeholderID = ?, description = ?, spreadid = ?, leftid = ?, middleid = ?, rightid = ? where id = ?' where id = 28; commit; delete from PanelStatements where ID = 56; insert into PanelStatements (ID, Domain, Statement, In_Parameters, Out_Parameters, Description) values ( 56, '', 'select distinct (ID), Name from PageItems where ID > ? and (DomainID = ? OR DomainID = 0 OR ID = ?) and (SpreadID = ? OR SpreadID = 0 OR ID = ?) order by name', '', '', 'Alle Vorlagen einer bestimmten Seitenklasse (linksseitig, mitte, rechtsseitig) laden' ); delete from PanelStatements where ID = 57; insert into PanelStatements (ID, Domain, Statement, In_Parameters, Out_Parameters, Description) values ( 57, '', 'select preview from PageItems where ID = ?', '', '', 'Lade ein Preview einer Vorlage zur Darstellung im Dialog' ); create or replace function create_pageitem return number is newID number (10); begin select max (id) into newID from pageitems; newID := newID +1; begin insert into PageItems values (newID, '', '', NULL, NULL, 0, 0, 0, 0.0, 0.0, 0.0, 0.0, 0, '', '', '', '', 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0); end; return newID; end; commit;