Jump to content

Restricting Access


greeham

Recommended Posts

<? if(Auth::LoggedIn()){ ?>
<!-- HTML for logged in here -->
<? } else { ?>
<!-- HTML for guests here -->
<? } ?>

In the tpl files for the pages you want to hide.

Alternatively you can do it by editing the module code, but that can get messy with updates and if you don't know php very well.

Link to comment
Share on other sites

Hi Tom,

Thanks for that, I just tried that with the roster (pilots_list.tpl), code shown below (just for a test) and it still listed the hubs with the not allowed under each heading, all I really wanted was a message saying not allowed. COuld you add any further pointers?

Cheers,

Graham

<h3><?php echo $title?></h3>
<? if(Auth::LoggedIn()){ ?> 
<?php
if(!$allpilots)
{
	echo 'There are no pilots!';
	return;
}
?>
<table id="tabledlist" class="tablesorter">
<thead>
<tr>
<th>Pilot ID</th>
<th>Name</th>
<th>Rank</th>
<th>Flights</th>
<th>Hours</th>
</tr>
</thead>
<tbody>
<?php
foreach($allpilots as $pilot)
{
/* 
	To include a custom field, use the following example:

	<td>
		<?php echo PilotData::GetFieldValue($pilot->pilotid, 'VATSIM ID'); ?>
	</td>

	For instance, if you added a field called "IVAO Callsign":

		echo PilotData::GetFieldValue($pilot->pilotid, 'IVAO Callsign');		
 */

 // To skip a retired pilot, uncomment the next line:
 //if($pilot->retired == 1) { continue; }
?>
<tr>
<td width="1%" nowrap><a href="<?php echo url('/profile/view/'.$pilot->pilotid);?>">
		<?php echo PilotData::GetPilotCode($pilot->code, $pilot->pilotid)?></a>
</td>
<td>
	<img src="<?php echo Countries::getCountryImage($pilot->location);?>" 
		alt="<?php echo Countries::getCountryName($pilot->location);?>" />

	<?php echo $pilot->firstname.' '.$pilot->lastname?>
</td>
<td><img src="<?php echo $pilot->rankimage?>" alt="<?php echo $pilot->rank;?>" /></td>
<td><?php echo $pilot->totalflights?></td>
<td><?php echo Util::AddTime($pilot->totalhours, $pilot->transferhours); ?></td>
<?php
}
?>
</tbody>
</table>
<? } else { ?>

Not allowed

<? } ?>

Link to comment
Share on other sites

Because of the way the list works, you'll want to just include the title as well. Problem is if you have multiple hubs it will display the error multiple times, so this would be one of the modules where editing the php would look better.

Here's the code:

<? if(Auth::LoggedIn()){ ?> 
<h3><?php echo $title?></h3>
<?php
if(!$allpilots)
{
	echo 'There are no pilots!';
	return;
}
?>
<table id="tabledlist" class="tablesorter">
<thead>
<tr>
<th>Pilot ID</th>
<th>Name</th>
<th>Rank</th>
<th>Flights</th>
<th>Hours</th>
</tr>
</thead>
<tbody>
<?php
foreach($allpilots as $pilot)
{
/* 
	To include a custom field, use the following example:

	<td>
		<?php echo PilotData::GetFieldValue($pilot->pilotid, 'VATSIM ID'); ?>
	</td>

	For instance, if you added a field called "IVAO Callsign":

		echo PilotData::GetFieldValue($pilot->pilotid, 'IVAO Callsign');		
 */

 // To skip a retired pilot, uncomment the next line:
 //if($pilot->retired == 1) { continue; }
?>
<tr>
<td width="1%" nowrap><a href="<?php echo url('/profile/view/'.$pilot->pilotid);?>">
		<?php echo PilotData::GetPilotCode($pilot->code, $pilot->pilotid)?></a>
</td>
<td>
	<img src="<?php echo Countries::getCountryImage($pilot->location);?>" 
		alt="<?php echo Countries::getCountryName($pilot->location);?>" />

	<?php echo $pilot->firstname.' '.$pilot->lastname?>
</td>
<td><img src="<?php echo $pilot->rankimage?>" alt="<?php echo $pilot->rank;?>" /></td>
<td><?php echo $pilot->totalflights?></td>
<td><?php echo Util::AddTime($pilot->totalhours, $pilot->transferhours); ?></td>
<?php
}
?>
</tbody>
</table>
<? } else { ?>

Not allowed

<? } ?>

Link to comment
Share on other sites

For the pilots list, open core/modules/Pilots/Pilots.php

Find:

public function index()
{
	// Get all of our hubs, and list pilots by hub
	$allhubs = OperationsData::GetAllHubs();

	if(!$allhubs) $allhubs = array();

	foreach($allhubs as $hub)
	{
		$this->set('title', $hub->name);
		$this->set('icao', $hub->icao);

		$this->set('allpilots', PilotData::findPilots(array('p.hub'=>$hub->icao)));

		$this->render('pilots_list.tpl');
	}

	$nohub = PilotData::findPilots(array('p.hub'=>''));
	if(!$nohub)
	{
		return;
	}

	$this->set('title', 'No Hub');
	$this->set('icao', '');
	$this->set('allpilots', $nohub);
	$this->render('pilots_list.tpl');
}

Replace:

public function index()
{
	if(!Auth::LoggedIn()){
		$this->set('message', 'Not allowed');
		$this->render('core_error.tpl');
		return;
	}
	// Get all of our hubs, and list pilots by hub
	$allhubs = OperationsData::GetAllHubs();

	if(!$allhubs) $allhubs = array();

	foreach($allhubs as $hub)
	{
		$this->set('title', $hub->name);
		$this->set('icao', $hub->icao);

		$this->set('allpilots', PilotData::findPilots(array('p.hub'=>$hub->icao)));

		$this->render('pilots_list.tpl');
	}

	$nohub = PilotData::findPilots(array('p.hub'=>''));
	if(!$nohub)
	{
		return;
	}

	$this->set('title', 'No Hub');
	$this->set('icao', '');
	$this->set('allpilots', $nohub);
	$this->render('pilots_list.tpl');
}

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...