芝麻web文件管理V1.00
编辑当前文件:/home/p/r/i/prismawe/clients/canaldegap.fr_old/modules/TruetypeText/method.upgrade.php
cms->GetDb(); $dict = NewDataDictionary($db); $flds = " shadow L, shadowcolor C(7), shadowx I, shadowy I "; $sqlarray = $dict->AddColumnSQL(cms_db_prefix().'module_TruetypeText', $flds); $dict->ExecuteSQLArray($sqlarray); $current_version = "0.0.3"; case "0.0.4" : case "0.0.5":case "0.0.6": $current_version = "0.0.7"; case "0.0.7": $db = &$this->cms->GetDb(); $dict = NewDataDictionary($db); $sqlarray = $dict->AddColumnSQL(cms_db_prefix().'module_TruetypeText', 'fulllineheight L'); $dict->ExecuteSQLArray($sqlarray); $current_version = "0.0.8"; case "0.0.8": $db = &$this->cms->GetDb(); $dict = NewDataDictionary($db); $sqlarray = $dict->AddColumnSQL(cms_db_prefix().'module_TruetypeText', 'maxwidth I'); $dict->ExecuteSQLArray($sqlarray); $current_version = "0.0.9"; case "0.0.9":case "1.0 RC1":case "1.0 RC2":case "1.0 RC3": $db = &$this->cms->GetDb(); $dict = NewDataDictionary($db); // table schema description $flds = " tag C(20) KEY, additional C(255) KEY, style C(80), active L "; $taboptarray = array('mysql' => 'TYPE=MyISAM'); // create it. This should do error checking, but I'm a lazy sod. $sqlarray = $dict->CreateTableSQL(cms_db_prefix()."module_TruetypeText_replacements", $flds, $taboptarray); $dict->ExecuteSQLArray($sqlarray); $current_version = "1.0"; case "1.0": $db = &$this->cms->GetDb(); $dict = NewDataDictionary($db); $sqlarray = $dict->AddColumnSQL(cms_db_prefix().'module_TruetypeText', 'pictureperword L'); $dict->ExecuteSQLArray($sqlarray); $current_version = "1.1"; case "1.1": include_once cms_join_path(dirname(__FILE__),'class.style.php'); $styles = array(); $query = 'SELECT * FROM '.cms_db_prefix().'module_TruetypeText'; $dbresult = $db->Execute($query, array($stylename)); while ($dbresult && $row = $dbresult->FetchRow()) { $TTTstyle = new TTTstyle($row['name'],$row['backgroundcolor'],$row['format'],$row['fulllineheight'],$row['maxwidth'],$row['pictureperword']); if ($row['shadow']) $TTTstyle->addTextElement($row['fontfile'], $row['size'], $row['shadowcolor'], $row['shadowx'], $row['shadowy'],$row['angle']); $TTTstyle->addTextElement($row['fontfile'], $row['size'], $row['forecolor'], 0, 0,$row['angle']); $styles[] = $TTTstyle; } $query = 'SELECT * FROM '.cms_db_prefix().'module_TruetypeText_replacements'; $dbresult = $db->Execute($query); $replacements = array(); while ($dbresult && $row = $dbresult->FetchRow()) { $TTTreplacement = new TTTreplacement($row['tag'], $row['additional'], $row['style']); $replacements[] = $TTTreplacement; } $db = &$this->GetDb(); $dict = NewDataDictionary( $db ); $sqlarray = $dict->DropTableSQL( cms_db_prefix()."module_TruetypeText" ); $dict->ExecuteSQLArray($sqlarray); $sqlarray = $dict->DropTableSQL( cms_db_prefix()."module_TruetypeText_replacements" ); $dict->ExecuteSQLArray($sqlarray); // mysql-specific, but ignored by other database $taboptarray = array('mysql' => 'TYPE=MyISAM'); $dict = NewDataDictionary($db); // table schema description $flds = " id I KEY, name C(80) NOT NULL, backgroundcolor C(7), format C(3), fulllineheight L, maxwidth I, pictureperword L, transparent L, elements C(511) "; // create it. This should do error checking, but I'm a lazy sod. $sqlarray = $dict->CreateTableSQL(cms_db_prefix()."module_truetypetext_styles", $flds, $taboptarray); $dict->ExecuteSQLArray($sqlarray); $db->Execute("ALTER TABLE ".$db_prefix."module_truetypetext_styles ADD INDEX (name)"); $db->CreateSequence(cms_db_prefix()."module_truetypetext_styles_seq"); $flds = " id I KEY, tag C(20), additional C(255), style I "; // create it. This should do error checking, but I'm a lazy sod. $sqlarray = $dict->CreateTableSQL(cms_db_prefix()."module_truetypetext_replacements", $flds, $taboptarray); $dict->ExecuteSQLArray($sqlarray); $db->CreateSequence(cms_db_prefix()."module_truetypetext_replacements_seq"); foreach ($styles as $TTTstyle) $TTTstyle->savedbnew(); foreach ($replacements as $TTTreplacement) $TTTreplacement>savedbnew(); $current_version = "2.0.0-RC1"; } // put mention into the admin log $this->Audit( 0, $this->Lang('friendlyname'), $this->Lang('upgraded',$this->GetVersion())); ?>