Вход Регистрация
Файл: rebuildGalleryImages.php
Строк: 95
#!/usr/local/bin/php
<?php

/**
 * <pre>
 * Invision Power Services
 * IP.Board v3.3.3
 * Main public executable wrapper.
 * Set-up and load module to run
 * Last Updated: $Date: 2012-05-10 16:10:13 -0400 (Thu, 10 May 2012) $
 * </pre>
 *
 * @author         $Author: bfarber $
 * @copyright    (c) 2001 - 2009 Invision Power Services, Inc.
 * @license        http://www.invisionpower.com/company/standards.php#license
 * @package        IP.Board
 * @link        http://www.invisionpower.com
 * @version        $Rev: 10721 $
 *
 */

define'IPS_IS_SHELL'TRUE );
define'IPB_THIS_SCRIPT''public' );

if ( 
is_file'./initdata.php' ) )
{
    require_once( 
'./initdata.php' );/*noLibHook*/
}
else
{
    require_once( 
'../initdata.php' );/*noLibHook*/
}

require_once( 
IPS_ROOT_PATH 'sources/base/ipsRegistry.php' );/*noLibHook*/
require_once( IPS_ROOT_PATH 'sources/base/ipsController.php' );/*noLibHook*/

$reg ipsRegistry::instance();
$reg->init();

$moo = new moo$reg );

class 
moo
{
    function 
__constructipsRegistry $registry )
    {
        
$this->registry   =  $registry;
        
$this->DB         =  $this->registry->DB();
        
$this->settings   =& $this->registry->fetchSettings();
        
$this->request    =& $this->registry->fetchRequest();
        
$this->cache      =  $this->registry->cache();
        
$this->caches     =& $this->registry->cache()->fetchCaches();
        
$this->stdin      =  fopen('php://stdin''r');
        
        
$this->_print"--------------------------------------------nWelcome to the IP.Gallery Images SEO Fixern--------------------------------------------n" );
        
$this->_print"Start from row?nEnter: " );

        
$start intval$this->_fetchOption() );
        
        
$this->_print"Do X rowsnEnter: " );
        
        
$end intval$this->_fetchOption() );
        
        
$this->_doImages$start$end );
    }
    
    
/**
     * Rebuild Images
     */
    
protected function _doImages$_start$end )
    {
        
/* INIT */
        
$start time();
        
$done  0;
        
        
$this->DB->build( array( 'select' => '*',
                                 
'from'   => 'gallery_images',
                                 
'order'  => 'id ASC',
                                 
'limit'  => array( $_start$end ) ) );
                                
        
$t $this->DB->execute();
        
        while( 
$row $this->DB->fetch$t ) )
        {
            
$this->DB->update'gallery_images', array( 'caption_seo' => IPSText::makeSeoTitle$row['caption'] ) ), 'id=' $row['id'] );
            
$done++;
            
            if ( 
$done 250 == )
            {
                
$this->_print"Completed... " $done " (IMG ID=" $row['file_id'] . " total=" . ( $_start $done ) . ")" );
            }
            
            
/* Clear cached queries */
            
$this->DB->obj['cached_queries'] = array();
        }
        
        
$end time();
        
$tkn = ( $end $start) / 60;
        
        
$this->_print"FINISHED Images. Took " $tkn "mn" );
    }
    
    
    
/**
     * Out to stdout
     */
    
protected function _print$message$newline="n" )
    {
        
$stdout fopen('php://stdout''w');
        
fwrite$stdout$message $newline );
        
fclose$stdout );
    }
    
    
/* Fetch option
     *
     */
    
protected function _fetchOption()
    {
        return 
trimfgets$this->stdin ) );
    }
}

exit();
Онлайн: 0
Реклама