All pastes #89361 Raw Edit

Unnamed

public text v1 · immutable
#89361 ·published 2006-07-16 04:37 UTC
rendered paste body
if($_GET['action'] ==  "create") {

	// Check if user is a member of an other clan, or on a clan's Approve List!
	$sql = "SELECT name FROM ". CLANS_TABLE ." WHERE leader = '".$userdata['user_id']."' OR members LIKE '%ß".$userdata['user_id']."Þ%' OR approvelist LIKE '%ß".$userdata['user_id']."Þ%' "; 
	if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Error retrieving data', '', __LINE__, __FILE__, $sql); } 
	while ( $row = $db->sql_fetchrow($result) ) 
	{ if(!empty($row['name'])) { 
		// User already is in a clan, output message!
		$message = sprintf($lang['clans_cant_create'], '<b>'.$row['name'].'</b>').'<br />'.sprintf($lang['clans_please_leave'], '<b>'.$row['name'].'</b>').'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=list">','</a>');
		message_die(GENERAL_MESSAGE, $message);
	} }

	$this_title = $lang['clans_createnew'];

	$template->assign_vars(array( 
		'L_CREATENEW' => $lang['clans_createnew'],
		'L_CREATE_TEXT' => $lang['clans_create_text'],
		'L_NAME' => $lang['clans_name'],
		'L_LEADER' => $lang['clans_leader'],
		'L_DESCRIPTION' => $lang['clans_description'],
		'L_URLLOGO' => $lang['clans_urllogo'],
		'L_LOGO' => $lang['clans_logo'],
		'L_APPROVING' => $lang['clans_approve_new'],
		'L_REQ_POSTS' => $lang['clans_req_posts'],
		'L_REQ_POINTS' => $lang['clans_req_points'],
		'L_REQ_LEVEL' => $lang['clans_req_level'],
		'L_JOIN_FEE' => $lang['clans_join_fee'],
		'L_POINTS' => $points_name,
		'L_CREATE' => $lang['clans_create'],
		'L_BACKTOLIST' => sprintf($lang['clans_backtolist'],'<a href="'.$file.'?action=list">','</a>'),
		'L_YES' => $lang['clans_yes'],
		'L_NO' => $lang['clans_no'],

		'FILE' => $file,
		'USERNAME' => '<a href="'.$phpbb_root_path.'profile.php?mode=viewprofile&u='.$userdata['user_id'].'" target="_blank">'.$userdata['username'].'</a>'
	));	
	$template->set_filenames(array('body' => 'clans_create_body.tpl'));
}


if($_GET['action'] ==  "docreate") {

	// Check if user is a member of an other clan, or on a clan's Approve List!
	$sql = "SELECT name FROM ". CLANS_TABLE ." WHERE leader = '".$userdata['user_id']."' OR members LIKE '%ß".$userdata['user_id']."Þ%' "; 
	if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Error retrieving data', '', __LINE__, __FILE__, $sql); } 
	while ( $row = $db->sql_fetchrow($result) ) 
	{ if(!empty($row['name'])) { 
		// User already is in a clan, output message!
		$message = sprintf($lang['clans_cant_create'], '<b>'.$row['name'].'</b>').'<br />'.sprintf($lang['clans_please_leave'], '<b>'.$row['name'].'</b>').'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=list">','</a>');
		message_die(GENERAL_MESSAGE, $message);
	} }

	$name = $_POST['name'];
	$desc = $_POST['description'];
	$leader = $userdata['user_id'];
	$founder = $userdata['user_id'];
	$logo = $_POST['logo'];
	$posts = $_POST['req_posts'];
	$level = $_POST['req_level'];
	$points = $_POST['req_points'];
	$fee = $_POST['join_fee'];

	if(
		($name == "") OR 
		($desc == "") OR 
		($leader == "") OR 
		($founder == "") OR 
		($logo == "") OR 
		($logo == "http://") OR 
		($posts == "") OR 
		($level == "") OR 
		($points == "") OR 
		($fee == "")
	) {
		message_die(GENERAL_MESSAGE, $lang['clans_not_all_fields'].'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=create">','</a>'));
	}
	if(($level < 0) || (!is_numeric($level))) {
		message_die(GENERAL_MESSAGE, sprintf($lang['clans_clp_details_inv_level'],$level).'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=create">','</a>'));
	}
	if(($posts < 0) || (!is_numeric($posts))) {
		message_die(GENERAL_MESSAGE, sprintf($lang['clans_clp_details_inv_posts'],$posts).'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=create">','</a>'));
	}
	if(($fee < 0) || (!is_numeric($fee))) {
		message_die(GENERAL_MESSAGE, sprintf($lang['clans_clp_details_inv_fee'],$fee,$points_name).'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=create">','</a>'));
	}
	if(($points < 0) || (!is_numeric($points))) {
		message_die(GENERAL_MESSAGE, sprintf($lang['clans_clp_details_inv_points'],$points_name,$points,$points_name).'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=create">','</a>'));
	}

	// Check if logo is a jpg/jpeg/gif/png file. If not, output error!
	if ( !preg_match("#^((ht|f)tp://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png))$)#is", $logo) )
	{
		message_die(GENERAL_MESSAGE, sprintf($lang['clans_clp_details_invalid_logo'],'<b>'.$logo.'</b>').'<br />'.$lang['clans_clp_details_invalid_logo2'].'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=create">','</a>'));
	}

	// Check if Approving is a right value! (only 0 or 1!)
	$set_approving = $_POST['approving'];
	if(($set_approving < 0) || ($set_approving > 1) || (!is_numeric($set_approving))) {
		message_die(GENERAL_MESSAGE, sprintf($lang['clans_clp_details_inv_approving'],$set_approve).'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=create">','</a>'));
	}

	// Check if there's a clan with the same name already!
	$sql = "SELECT name FROM ". CLANS_TABLE ." WHERE name = '".$name."' "; 
	if ( !($result = $db->sql_query($sql)) ) { message_die(GENERAL_ERROR, 'Error retrieving data', '', __LINE__, __FILE__, $sql); } 
	while ( $row = $db->sql_fetchrow($result) ) 
	{ if(!empty($row['name'])) { 
		// Clan already exists!!
		$message = sprintf($lang['clans_couldnt_create'], '<b>'.$name.'</b>').'<br />'.$lang['clans_same_name'].'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=create">','</a>');
		message_die(GENERAL_MESSAGE, $message);
	} }
		
	$time = time();

	// Get rid of all those nasty 's, "s and HTML codes
		$name = stripslashes($name);
		$name = addslashes($name);
		$name = htmlspecialchars($name);
		$desc = stripslashes($desc);
		$desc = addslashes($desc);
		$desc = htmlspecialchars($desc);

	$Nsql = "INSERT INTO ". CLANS_TABLE ." (name,leader,members,logo,description,approving,approvelist,approve_fee,req_posts,req_points,req_level,join_fee,founded,founder,news_orderby,news_order,news_amount) VALUES 
		('".$name."','".$leader."','','".$logo."','".$desc."','".$set_approving."','','','".$posts."','".$points."','".$level."','".$fee."','".$time."','".$founder."','date','0','10')
	";
	if ( !$db->sql_query($Nsql) ) { message_die(GENERAL_ERROR, 'Error retrieving data', '', __LINE__, __FILE__, $Nsql); } 	

	message_die(GENERAL_MESSAGE, sprintf($lang['clans_created_succesfully'],'<b>'.$name.'</b>').'<br /><br />'.sprintf($lang['clans_click_here'], '<a href="'.$file.'?action=list">','</a>'));

}