Вход Регистрация
Файл: IPBMafia.ru_IPB_3.4.6_Final_Rus _Nulled/board/upload/admin/applications/core/modules_admin/ajax/bookmarks.php
Строк: 95
<?php
/**
 * @file        bookmarks.php     AJAX storage of bookmarks
 *~TERABYTE_DOC_READY~
 * $Copyright: (c) 2001 - 2012 Invision Power Services, Inc.$
 * $License: http://www.invisionpower.com/company/standards.php#license$
 * $Author: bfarber $
 * @since        7th August 2012
 * $LastChangedDate: 2011-03-10 21:00:38 +0000 (Thu, 10 Mar 2011) $
 * @version        v3.4.6
 * $Revision: 8021 $
 */

if ( ! defined'IN_IPB' ) )
{
    print 
"<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
    exit();
}

/**
 *
 * @class        AJAX storage of bookmarks
 * @brief        AJAX storage of tab order preference
 *
 */
class admin_core_ajax_bookmarks extends ipsAjaxCommand 
{
    private 
$_classBookmark;
    
    
/**
     * Main function executed automatically by the controller
     *
     * @param    object        $registry        Registry object
     * @return    @e void
     */
    
public function doExecuteipsRegistry $registry )
    {
        
$registry->getClass('class_localization')->loadLanguageFile( array( 'admin_global' ), 'core' );
        
        require_once( 
IPS_ROOT_PATH 'sources/classes/admin/bookmarks.php' );
        
$this->_classBookmark = new classes_admin_bookmarks();
        
        
//-----------------------------------------
        // What shall we do?
        //-----------------------------------------
        
        
switch( $this->request['do'] )
        {
            default:
            case 
'add':
                
$this->_add();
            break;
            case 
'managePane':
                
$this->_managePane();
            break;
            case 
'delete':
                
$this->_delete();
            break;
            case 
'save':
                
$this->_save();
            break;
        }
    }
    
    
/**
     * Save all from manage screen
     */
    
protected function _save()
    {
        
$home     intval$this->request['home'] );
        
$names    $_POST['names'];
        
$position = array();
        
        if ( 
is_array$_GET['bookmark'] ) )
        {
            foreach( 
$_GET['bookmark'] as $id )
            {
                
$position$id ] = count$position ) + 1;
            }
        }
        
        if ( 
is_array$names ) )
        {
            foreach( 
$names as $id => $name )
            {
                
$this->_classBookmark->update$id, array( 'title' => $name'position' => intval$position$id ] ) ) );
            }
        }
        
        
$this->_classBookmark->setAsHome$home );
        
        
$this->returnJsonArray( array( 'status' => 'ok''json' => json_decode$this->_classBookmark->asJson(), true ) ) );
    }
    
    
/**
     * Remove a book mark
     */
    
protected function _delete()
    {
        
$id intval$this->request['id'] );
        
        
$this->_classBookmark->removeBookmark$id );
            
        
$this->returnJsonArray( array( 'status' => 'ok''json' => json_decode$this->_classBookmark->asJson(), true ) ) );
    }
    
    
/**
     * Manage panel
     */
    
protected function _managePane()
    {
        
$bookmarks $this->_classBookmark->getBookmarks();
        
        
/* Return it then */
        
$this->returnHtml$this->registry->output->global_template->manageBookmarks$bookmarks ) );
    }
    
    
/**
     * Add a book mark
     */
    
protected function _add()
    {
        
$title $this->request['title'];
        
$url   $this->request['url'];
        
$home  intval$this->request['home'] );
        
        try
        {
            
$this->_classBookmark->addBookmark$url$title$home );
            
            
$this->returnJsonArray( array( 'status' => 'ok''json' => json_decode$this->_classBookmark->asJson(), true ) ) );
        }
        catch( 
Exception $err )
        {
            
$this->returnJsonArray( array( 'status' => 'fail''msg' => $err->getMessage() ) );
        }
    } 
}
Онлайн: 0
Реклама