Esempio n. 1
0
		redirect_header( XOOPS_URL."/modules/".$mydirname."/index.php?page=singlefile?cid=$cid&lid=$lid", 20, _MD_D3DOWNLOADS_NOPERMISETOLINK );
		exit() ;
	}
}

$user_access = new user_access( $mydirname ) ;
$whr_cat = "d.cid IN (".implode(",", $user_access->can_read() ).")" ;
$mydownload = new MyDownload( $mydirname, $whr_cat, $lid ) ;
if( ! $mydownload->return_lid() ) {
	d3download_delete_cache_of_categories( $mydirname ) ;
	redirect_header( XOOPS_URL."/modules/".$mydirname."/", 20, _MD_D3DOWNLOADS_NOMATCH ) ;
	exit() ;
}

if ( xoops_refcheck() ) $mydownload->Hits_Count( $lid ) ;
d3download_delete_cache_of_categories( $mydirname ) ;

switch( $second ) {
	case false :
		$url = $mydownload->return_url('Show') ;
		$filename = $mydownload->return_filename('Show') ;
		$ext = $mydownload->return_ext('Show') ;
		break ;
	case true :
		$url = $mydownload->return_file2('Show') ;
		$filename = $mydownload->return_filename2('Show') ;
		$ext = $mydownload->return_ext2('Show') ;
		break ;
}

d3download_download( $url, $filename, $ext, 0 ) ;
Esempio n. 2
0
	function d3download_import_from_d3download( $mydirname , $import_mid, $uploads_dir_error )
	{
		$db =& Database::getInstance() ;

		include_once dirname( dirname(__FILE__) ).'/include/mytable.php' ;

		if( ! empty( $uploads_dir_error ) ){
			redirect_header( XOOPS_URL."/modules/$mydirname/admin/index.php?page=import" , 10 , _MD_D3DOWNLOADS_FILE_CONFIGERROR ) ;
			exit ;
		} else {
			$module_handler = & xoops_gethandler( 'module' ) ;
			$from_module =& $module_handler->get( $import_mid ) ;
			$from_dirname = $from_module->getVar('dirname') ;
			foreach( $GLOBALS['d3download_tables'] as $table_name => $columns ) {
				$to_table = $db->prefix( $mydirname.'_'.$table_name ) ;
				$from_table = $db->prefix( $from_dirname.'_'.$table_name ) ;
				$columns4sql = implode( ',' , $columns ) ;
				$db->query( "DELETE FROM `$to_table`" ) ;
				$irs = $db->query( "INSERT INTO `$to_table` ( $columns4sql ) SELECT $columns4sql FROM `$from_table`" ) ;
				if( ! $irs ) d3download_import_errordie( $mydirname ) ;
			}
			// upload files delete
			d3download_delete_uploadfiles_for_import( $mydirname );
			// upload files copy
			d3download_copy_uploadfiles_for_import( $mydirname, $from_dirname );
			// convert url
			d3download_copy_converturl_for_import( $mydirname, $from_dirname );
			// make serialize data
			include_once dirname( dirname(__FILE__) ).'/include/common_functions.php' ;
			d3download_make_serialize_data( $mydirname );
			// cache files delete
			d3download_delete_cache_of_categories( $mydirname ) ;
		}
	}
Esempio n. 3
0
	function d3download_delete_lid( $mydirname, $lid )
	{
		$db =& Database::getInstance() ;
		$module_handler =& xoops_gethandler('module');
		$config_handler =& xoops_gethandler('config');
		$module =& $module_handler->getByDirname( $mydirname );
		$mod_config =& $config_handler->getConfigsByCat( 0, $module->getVar( 'mid' ) );

		$res = $db->query("SELECT lid, filename, file2, submitter FROM ".$db->prefix( $mydirname."_downloads")." WHERE lid=$lid" ) ;
		while( list( $id, $fname, $fil2, $uid ) = $db->fetchRow( $res ) ) 
		{
			$filename = htmlspecialchars( $fname , ENT_QUOTES ) ;
			$file2 = htmlspecialchars( $fil2 , ENT_QUOTES ) ;
			$submitter = intval( $uid ) ;

			// 「投稿をユーザーの投稿数に反映」が有効な場合、投稿数に反映
			if( $submitter > 0 && ! empty( $mod_config['plus_posts'] ) ) {
				d3download_decrementPost( $submitter ) ;
			}

			$db->query( "DELETE FROM ".$db->prefix( $mydirname."_downloads")." WHERE lid=$id" ) or die( "DB error: DELETE downloads table." ) ;
			$db->query( "DELETE FROM ".$db->prefix( $mydirname."_broken")." WHERE lid=$id" ) or die( "DB error: DELETE broken table." ) ;
			$db->query( "DELETE FROM ".$db->prefix( $mydirname."_downloads_history")." WHERE lid=$id" ) or die( "DB error: DELETE downloads_history table." ) ;
			$db->query( "DELETE FROM ".$db->prefix( $mydirname."_votedata")." WHERE lid=$id" ) or die( "DB error: DELETE votedata table." ) ;
		}
		if( ! empty( $filename ) || ! empty( $file2 ) ){
			d3download_delete_uploadfiles( $mydirname, $lid );
		}
		d3download_delete_cache_of_categories( $mydirname ) ;
	}
Esempio n. 4
0
// THIS PAGE CAN BE CALLED ONLY FROM D3DOWNLOADS
if( $xoopsModule->getVar('dirname') != $mydirname ) die( 'this page can be called only from '.$mydirname ) ;

// PERMISSION ERROR
$module_handler =& xoops_gethandler( 'module' ) ;
$module =& $module_handler->getByDirname( $mydirname ) ;
$moduleperm_handler =& xoops_gethandler( 'groupperm' ) ;
$mid = $module->getVar('mid') ;
if( ! is_object( @$xoopsUser ) || ! $moduleperm_handler->checkRight( 'module_admin' , $mid , $xoopsUser->getGroups() ) ) {
	die( 'Only administrator can use this feature.' ) ;
}
if( ! empty( $_POST['copy'] ) ){
	if ( ! $xoopsGTicket->check( true , 'd3downloads' ) ) {
		redirect_header(XOOPS_URL.'/modules/'.$mydirname.'/admin/index.php',3,$xoopsGTicket->getErrors());
	}
	$error = 0 ;
	$file_manager = new file_manager( $mydirname ) ;
	$cid = isset( $_POST['cid'] ) ? intval( $_POST['cid'] ) : 0 ;
	$lid = isset( $_POST['lid'] ) ? intval( $_POST['lid'] ) : 0 ;
	$taget_mid = isset( $_POST['copy_mid'] ) ? intval( $_POST['copy_mid'] ) : 0 ;
	$taget_category = isset( $_POST['copy_category_id'][$taget_mid] ) ? intval( $_POST['copy_category_id'][$taget_mid] ) : 0 ;
	if( empty( $taget_mid ) || empty( $taget_category ) ) $error = true ;
	else $to_dirname = $file_manager->copy_execution( $taget_mid, $taget_category, $lid ) ;

	if( empty( $error ) ) d3download_delete_cache_of_categories( $to_dirname ) ;
	redirect_header( XOOPS_URL."/modules/$mydirname/index.php?page=modfile&cid=$cid&lid=$lid" , 2 , $error ? _MD_D3DOWNLOADS_NO_COPY : _MD_D3DOWNLOADS_COPYED ) ;
	exit();
}

?>
Esempio n. 5
0
	function d3download_approval_insertdb( $mydirname, $myparams )
	{
		require_once dirname( dirname(__FILE__) ).'/class/db_download.php' ;
		require_once dirname( dirname(__FILE__) ).'/include/common_functions.php' ;
		include_once dirname( dirname(__FILE__) ).'/include/upload_functions.php' ;

		$db =& Database::getInstance() ;
		global $xoopsUser , $xoopsModuleConfig ;

		// Initialization
		$error = 0 ;
		foreach ( $myparams as $key=>$value ){ $$key = $value; }

		// MAKE LINK SQL
		if( ! empty( $requestid ) && empty( $modify ) && empty( $lid ) ) {
			$new_lid = $db->genId($db->prefix( $mydirname."_downloads" )."_lid_seq");
			$make_link = new db_download( $db->prefix( $mydirname."_downloads" ) , "lid", $new_lid ) ;
			$newid = $make_link->db_insert( $set4sql );
			if( empty( $newid ) ) $error = $requestid ;
			d3download_convert_for_newid( $mydirname, $newid, $post_url, $post_file2, $submitter );

			// Category title
			include_once dirname( dirname(__FILE__) ).'/class/mycategory.php' ;
			$mycategory = new MyCategory( $mydirname, 'Show', $cid ) ;
			$ctitle = $mycategory->return_title() ;

			// Define tags for notification message
			$tags = array();
			$tags = array(
				'POSTER_UNAME' => $postname ,
				'POST_TITLE' => $title ,
				'POST_BODY' => $body ,
				'POST_URL' => XOOPS_URL . '/modules/' . $mydirname . '/index.php?page=singlefile&cid=' . $cid . '&lid=' . $newid,
				'CAT_TITLE' => $ctitle ,
				'CAT_URL' => XOOPS_URL . '/modules/' . $mydirname . '/index.php?cid=' . $cid ,
			) ;
			d3download_main_trigger_event( $mydirname , 'global' , 0 , 'newpost' , $tags, 0 ) ;
			d3download_main_trigger_event( $mydirname , 'category' , $cid , 'newpost' , $tags, 0 ) ;
			d3download_main_trigger_event( $mydirname , 'category' , $cid , 'newpostfull' , $tags, 0 ) ;
			if( ! empty( $notify ) ){
				d3download_main_trigger_event( $mydirname , 'global' , $requestid , 'approve' , $tags, 0 ) ;
			}

			// Increment Post
			if( $submitter > 0 && ! empty( $xoopsModuleConfig['plus_posts'] ) ) {
				$user = new XoopsUser( $submitter ) ;
				$user->incrementPost() ;
			}
		} elseif( ! empty( $requestid ) && ! empty( $modify ) && ! empty( $lid ) ) {
			// UPDATE SQL
			$make_link = new db_download( $db->prefix( $mydirname."_downloads" ) , "lid", $lid ) ;
			$count = $make_link->db_getrowsnum( $lid );
			if( $count > 0 ){
				require_once dirname( dirname(__FILE__) ).'/class/history_download.php' ;
				$history = new history_download( $mydirname ) ;
				$history->history_Insert_DB( $lid ) ;
				$result = $make_link->db_update( $set4sql, $lid );
				if( ! $result ) $error = $lid ;
				$history->history_Delete( $lid ) ;
				if( ! empty( $notify ) ){
					// Define tags for notification message
					$tags = array();
					$tags = array(
						'POST_TITLE' => $title ,
						'POST_URL' => XOOPS_URL . '/modules/' . $mydirname . '/index.php?page=singlefile&cid=' . $cid . '&lid=' . $lid,
					) ;
					d3download_main_trigger_event( $mydirname , 'global' , $lid , 'approve' , $tags, 0 ) ;
				}
			}
		}
		$sql = "SELECT COUNT(*) FROM ".$db->prefix( $mydirname."_unapproval" )." WHERE requestid='".$requestid."'";
		list( $count ) = $db->fetchRow( $db->query( $sql ) );
		if( $count > 0 ){
			$sql = "DELETE FROM ".$db->prefix($mydirname."_unapproval")." WHERE requestid = ".$requestid;
			$result = $db->query($sql);
			if( ! $result ) $error = $requestid ;
		}
		d3download_delete_cache_of_categories( $mydirname ) ;
		redirect_header( XOOPS_URL."/modules/$mydirname/admin/index.php?page=approvalmanager" , 2 , $error ? sprintf( _MD_D3DOWNLOADS_ERROR_MESSEAGE , $error ) : _MD_D3DOWNLOADS_SUBMIT_APPROVED ) ;
		exit();
	}