示例#1
0
 /**
  * Index admin page
  *
  * @return void
  **/
 function admin_index()
 {
     include_once dirname(__FILE__) . '/models/search-engine.php';
     $options = $this->get_options();
     $engine = SearchEngine::get_engine($options, $options['search_engine']);
     $last = get_option('search_unleashed_last');
     $this->render_admin('index', array('total' => $engine->total(), 'options' => $options, 'engine' => $engine));
 }
示例#2
0
	/**
	 * Re-index
	 *   Current index offset - $_POST['offset']
	 *   Index limit          - $_POST['limit']
	 *
	 * @return void
	 **/
	function su_index() {
		if ( current_user_can( 'administrator' ) && check_ajax_referer( 'searchunleashed-index' ) ) {
			require dirname( __FILE__ ).'/models/spider.php';
			require dirname( __FILE__ ).'/models/search-engine.php';

			ob_start();
			
			$spider = new SearchSpider( $this->options );
			$engine = SearchEngine::get_engine( $this->options, $this->options['search_engine'] );
			$offset = intval( $_POST['offset'] );
		
			if ( $offset == 0 )
				$engine->reset();

			$this->plugin->disable_filters( $this->options['disabled_filters'] );
			
			// Return string formatted: 0|1 Status
			// Where 0 = more data to come
			//       1 = finished
			//       Status = Status message
			list( $remaining, $total ) = $spider->index( $offset, intval( $_POST['limit'] ), $engine );

			ob_end_clean();
			
			$percent = 100;
			if ($total > 0)
				$percent = ( ( $total - $remaining ) / $total ) * 100;

			if ( $remaining > 0 )
				echo sprintf('%d %d%% ', $remaining, $percent).sprintf( __( '%d of %d / %d%%', 'search-unleashed'), $total - $remaining, $total, $percent );
			else {
				echo '0 100% '.__('Finished!', 'search-unleashed');
				$engine->flush( true );
			}

			die();
		}
	}