Вход Регистрация
Файл: textpattern-4.5.7/textpattern/update/_to_4.2.0.php
Строк: 113
<?php

/*
$HeadURL: https://textpattern.googlecode.com/svn/releases/4.5.7/source/textpattern/update/_to_4.2.0.php $
$LastChangedRevision: 4011 $
*/

    
if (!defined('TXP_UPDATE'))
    {
        exit(
"Nothing here. You can't access this file directly.");
    }

    
// support for per-user private prefs
    
$cols getThings('describe `'.PFX.'txp_prefs`');
    if (!
in_array('user_name'$cols))
    {
        
safe_alter('txp_prefs',
        
"ADD `user_name` varchar(64) NOT NULL default '', DROP INDEX `prefs_idx`, ADD UNIQUE `prefs_idx` (`prefs_id`, `name`, `user_name`), ADD INDEX `user_name` (`user_name`)");
    }

    
// remove a few global prefs in favour of future private ones
    
safe_delete('txp_prefs',
        
"user_name = '' AND name in ('article_list_pageby', 'author_list_pageby', 'comment_list_pageby', 'file_list_pageby', 'image_list_pageby', 'link_list_pageby', 'log_list_pageby')");

    
// use dedicated prefs function for setting custom fields
    
safe_update('txp_prefs'"html='custom_set'",
        
"name IN ('custom_1_set', 'custom_2_set', 'custom_3_set', 'custom_4_set', 'custom_5_set', 'custom_6_set', 'custom_7_set', 'custom_8_set', 'custom_9_set', 'custom_10_set') AND html='text_input'");

    
// send comments prefs
    
safe_update('txp_prefs'"html='commentsendmail'""name='comments_sendmail' AND html='yesnoradio'");

    
// Timezone prefs
    
safe_update('txp_prefs'"html='is_dst'""name='is_dst' AND html='yesnoradio'");
    if (!
safe_field('name''txp_prefs'"name = 'auto_dst'"))
    {
        
safe_insert('txp_prefs'"prefs_id = 1, name = 'auto_dst', val = '0', type = '0', event = 'publish', html = 'yesnoradio', position = '115'");
    }
    if (!
safe_field('name''txp_prefs'"name = 'timezone_key'"))
    {
        
$tz = new timezone;
        
$tz $tz->key($gmtoffset);
        
safe_insert('txp_prefs'"prefs_id = 1, name = 'timezone_key', val = '$tz', type = '2', event = 'publish', html = 'textinput', position = '0'");
    }

    
// default event admin pref
    
if (!safe_field('name''txp_prefs'"name = 'default_event'"))
    {
        
safe_insert('txp_prefs'"prefs_id = 1, name = 'default_event', val = 'article', type = '1', event = 'admin', html = 'default_event', position = '150'");
    }

    
// add columns for thumbnail dimensions
    
$cols getThings('describe `'.PFX.'txp_image`');
    if (!
in_array('thumb_w'$cols))
    {
        
safe_alter('txp_image',    "ADD `thumb_w` int(8) NOT NULL default 0, ADD `thumb_h` int(8) NOT NULL default 0");
    }

    
// plugin flags
    
$cols getThings('describe `'.PFX.'txp_plugin`');
    if (!
in_array('flags'$cols))
    {
        
safe_alter('txp_plugin'"ADD flags SMALLINT UNSIGNED NOT NULL DEFAULT 0");
    }

    
// default theme
    
if (!safe_field('name''txp_prefs'"name = 'theme_name'"))
    {
        
safe_insert('txp_prefs'"prefs_id = 1, name = 'theme_name', val = 'classic', type = '1', event = 'admin', html = 'themename', position = '160'");
    }

    
safe_alter('txp_plugin''CHANGE code code MEDIUMTEXT NOT NULL, CHANGE code_restore code_restore MEDIUMTEXT NOT NULL');
    
safe_alter('txp_prefs''CHANGE val val TEXT NOT NULL');

    
// add author column to files and links,
    // boldy assuming that the publisher in charge of updating this site is the author of any existing content items.
    
foreach (array('txp_file''txp_link') as $table)
    {
        
$cols getThings('describe `'.PFX.$table.'`');
        if (!
in_array('author'$cols))
        {
            
safe_alter($table"ADD author varchar(255) NOT NULL default '', ADD INDEX author_idx (author)");
            
safe_update($table"author='".doSlash($txp_user)."'",'1=1');
        }
    }

    
// add indices on author columns
    
foreach (array('textpattern' => 'AuthorID''txp_image' => 'author') as $table => $col)
    {
        
$has_idx 0;
        
$rs getRows('show index from `'.PFX.$table.'`');
        foreach (
$rs as $row)
        {
            if (
$row['Key_name'] == 'author_idx')
                
$has_idx 1;
        }

        if (!
$has_idx)
        {
            
safe_query('ALTER IGNORE TABLE `'.PFX.$table.'` ADD INDEX author_idx('.$col.')');
        }
    }

?>
Онлайн: 0
Реклама