[Free] CrewCenter - Modern and responsive pilot center

Hi all,

I am pleased to announce my free skin for phpVMS, CrewCenter; a modern, sleek and responsive pilot centre application.

DOWNLOAD: https://github.com/swan58/CrewCenter (Read Installation instructions in readme)

IMPORTANT: If you are running phpVMS 5.5.x, move all the PHP template files from ‘php_templates’ into the main skin folder before uploading.

This skin is designed using the Bootstrap framework, meaning it is fully responsive and works well on all sized devices, including desktops, tablets and phones. CrewCenter is not a complete website skin, it is only a pilot center application, designed to be installed onto a phpVMS installation on a subdomain (e.g. crew.yourva.com) in addition to your ‘front page’ on your main domain, with a link to CrewCenter.

Please note that this skin is still being developed, and I hope to update it and add new features over time. You should be able to just overwrite the existing files to update it. It may also have bugs and issues. If you find, feel free to post an issue report on GitHub or reply to this topic.

If you have any feature, plugin skinning or custom VA branding requests, feel free to post a reply below or email me.

Enjoy!

Screenshots

Dashboard page

Flight Report page

Mobile version of Dashboard page

Tried to install it and it says Header & Footer doesn’t exsist.

The download has tpl files. You are getting that error most likely you are on phpvms 5.5.2.

How can i get it to work?

Try changing all the files to .php and change any reference from .tpl to .php.

ok, i have tried this and it keeps me sending back to the main site after login.

To all those who are experiencing problems!

Please check the following are true as per the installation instructions on GitHub:

  1. The folder in the lib/skins directory was named ‘crewcenter’, not ‘CrewCenter’ or ‘CrewCenter-master’
  2. You are running Nabeel’s version of phpVMS EDIT - Now works on both versions of phpVMS (PHP templates included)

Please be aware this is still in development and some pages may not have been skinned yet.

Thank you very much and I hope this solves any issues. If you have any further questions or comments, feel free to let me know.

Mark

Try changing all the files to .php and change any reference from .tpl to .php.

Please note this will not work as each page has a PHP header to include ‘app_top.tpl’ and ‘app_bottom.tpl’. You would have to change every page to include the .php versions.

I am still considering creating a version of CrewCenter for phpVMS 5.5.x, so if many people want a version for it, let me know.

Mark

I want a php version, but i have done it myself allready.

What i want is to link this with the default database so that not every pilot must register also on the crewcenter.

1 Like

I want a php version, but i have done it myself allready.

What i want is to link this with the default database so that not every pilot must register also on the crewcenter.

Me also

Please do CrewCenter for phpVMS 5.5.x

I’m using Phpvms 5.5x so far no problems , and your template is one of the best I ever saw

Good Work !

I am working on a native 5.5.x version now. Should be out on GitHub in a couple days. I’ll post when it’s done.

1 Like

Hi Guys,

Sorry for the delay. I have taken the liberty of creating PHP versions of all the template files, and put them in the ‘php_templates’ folder.

If you are using Simpilot’s phpVMS 5.5.2 and need the PHP templates, just drag in all the files from ‘php_templates’ into the main skin folder, all done!

If there are any problems please let me know. I’m now working on skinning the bid overview and comments pages.

Is ther any way of linking the 2 sites so you don’t need to input all the information again?

Is ther any way of linking the 2 sites so you don’t need to input all the information again?

Not quite sure exactly what you mean, I’m assuming you want to transfer an existing user database to a new phpVMS installation.

You should just be able to export tables (for users, fleet, airports, schedules etc.) through phpMyAdmin and import them to the new database. An alternative is copying the entire phpVMS installation over to the subdomain and changing the Site URL to the new URL of phpVMS in the config file.

Hope this helps

thanks for the info, But cant you make it as a module with its own template, so we can install it in our main va’s site?

1 Like

thanks for the info, But cant you make it as a module with its own template, so we can install it in our main va’s site?

I don’t have any intentions at this stage to do something like that, however, I have successfully just tried and tested this:

Install another phpVMS installation on your subdomain (crew.yourdomain.com), then change the database to the exact same as the main site you’re currently using. The only issue would be that both of the skins your using on both sites would need to have the same name. In other words, you’d need to change your current skin’s name on your main site to ‘crewcenter’ as well, since the configuration options are stored in the database.

Essentially, you would have 2 sites of phpVMS controlling the same database, so you can have a live ACARS map on both sites, main (for public viewing) and CrewCenter. You could even have some pages, like the profile edit page, on your main site, and have the schedules and PIREP pages on the CrewCenter if you wanted to. This is completely customizable to your needs, it just requires some HTML tweaking.

Hi all,

am I the only one who doesn’t have the login kind of still box for the registration page?

Here is the link to the page http://skyline-va.esy.es/index.php/registration

Nope,

The developer may have just used the default .tpl file and just changed the extension without modifying the contents for the .php version.

Change the following files

registration_mainform.php

<body class="hold-transition login-page" style="background-color: #222222;">
<div class="login-box">
 <div class="login-logo">
	 <a href="" style="color: white;">Crew<b>Center</b></a>
 </div>
 <!-- /.login-logo -->
 <div class="login-box-body">
	 <p class="login-box-msg">Please complete this form to create your account.</p>
		 <form method="post" action="<?php echo url('/registration');?>">
			 <div class="form-group">
				 <input type="text" name="firstname" class="form-control" value="<?php echo Vars::POST('firstname');?>" placeholder="First Name">
				 <?php
					 if($firstname_error == true)
						 echo '<p class="error">Please enter your first name</p>';
				 ?>
			 </div>
			 <div class="form-group">
				 <input type="text" name="lastname" class="form-control" value="<?php echo Vars::POST('lastname');?>" placeholder="Last Name">
				 <?php
					 if($lastname_error == true)
						 echo '<p class="error">Please enter your last name</p>';
				 ?>
			 </div>
			 <div class="form-group">
				 <input type="text" name="email" class="form-control" value="<?php echo Vars::POST('email');?>" placeholder="Email">
				 <?php
					 if($email_error == true)
						 echo '<p class="error">Please enter your email address</p>';
				 ?>
			 </div>
			 <div class="form-group">
				 <input type="password" name="password1" id="password" class="form-control" placeholder="Password">
			 </div>
			 <div class="form-group">
				 <input type="password" name="password2" class="form-control" placeholder="Confirm Password">
				 <?php
					 if($password_error == true)
						 echo '<p class="error">'.$password_error.'</p>';
				 ?>
			 </div>
			 <div class="form-group">
				 <select name="location" class="form-control">
					 <?php
						 foreach($countries as $countryCode=>$countryName)
						 {
						 if(Vars::POST('location') == $countryCode)
							 $sel = 'selected="selected"';
						 else
							 $sel = '';

							 echo '<option value="'.$countryCode.'" '.$sel.'>'.$countryName.'</option>';
						 }
					 ?>
				 </select>
				 <?php
					 if($location_error == true)
						 echo '<p class="error">Please enter your location</p>';
				 ?>
			 </div>

			 <div class="form-group">
				 <select name="code" id="code" class="form-control">
					 <?php
						 foreach($allairlines as $airline)
						 {
							 echo '<option value="'.$airline->code.'">'.$airline->code.' - '.$airline->name.'</option>';
						 }
					 ?>
				 </select>
			 </div>
			 <div class="form-group">
				 <select name="hub" id="hub" class="form-control">
					 <?php
						 foreach($allhubs as $hub)
						 {
							 echo '<option value="'.$hub->icao.'">'.$hub->icao.' - ' . $hub->name .'</option>';
						 }
					 ?>
				 </select>
			 </div>

			 <?php

			 //Put this in a seperate template. Shows the Custom Fields for registration
			 Template::Show('registration_customfields.tpl');

			 ?>

			 <div class="form-group">
				 <?php if(isset($captcha_error)){echo '<p class="error">'.$captcha_error.'</p>';} ?>
				 <div class="g-recaptcha" data-sitekey="<?php echo $sitekey;?>"></div>
				 <script type="text/javascript" src="https://www.google.com/recaptcha/api.js?hl=<?php echo $lang;?>"></script>
			 </div>

				 <div class="row">
				 <div class="col-xs-8">
					 <a href="<?php echo url('/login'); ?>">Already have an account</a>
				 </div>
				 <div class="col-xs-4">
					 <input type="submit" class="btn btn-primary btn-block btn-flat" name="submit" value="Register" />
				 </div>
				 <!-- /.col -->
			 </div>
		 </form>
	 <center style="margin-top: 30px;">
		 <p class="text-muted">CrewCenter by Mark Swan</p>
	 </center>
 </div>
 <!-- /.login-box-body -->
</div>
<!-- /.login-box -->

<!-- iCheck -->
<script src="<?php echo SITE_URL?>/lib/skins/crewcenter/plugins/iCheck/icheck.min.js"></script>
<script>
 $(function () {
 $('input').iCheck({
	 checkboxClass: 'icheckbox_square-blue',
	 radioClass: 'iradio_square-blue',
	 increaseArea: '20%' // optional
 });
 });
</script>
</body>

registration_customfields.php

<?php if(!defined('IN_PHPVMS') && IN_PHPVMS !== true) { die(); } ?>
<?php
/* Show any extra fields
*/
if($field_list) {
foreach($field_list as $field) {
?>
<div class="form-group">
<?php
if($field->type == 'dropdown') {
echo "<select class='form-control' name=\"{$field->fieldname}\">";
$values = explode(',', $field->value);

if(is_array($values))
{	
foreach($values as $val)
{
 $val = trim($val);
 echo "<option value=\"{$val}\">{$val}</option>";
}
}

echo '</select>';
} elseif($field->type == 'textarea') {
echo '<textarea class="form-control" name="'.$field->fieldname.'" class="customfield_textarea"></textarea>';
} else { ?>
	 <input type="text" class="form-control" placeholder="<?php echo $field->title; ?>" name="<?php echo $field->fieldname; ?>" value="<?php echo Vars::POST($field->fieldname);?>" /></div>
<?php }
}
}
?>

Nope,

The developer may have just used the default .tpl file and just changed the extension without modifying the contents for the .php version.

Change the following files

registration_mainform.php

Please complete this form to create your account.

<?php if($firstname_error == true) echo '

Please enter your first name

'; ?>
<?php if($lastname_error == true) echo '

Please enter your last name

'; ?>
<?php if($email_error == true) echo '

Please enter your email address

'; ?>
<?php if($password_error == true) echo '

'.$password_error.'

'; ?>

<?php if($location_error == true) echo '

Please enter your location

'; ?>
<?php //Put this in a seperate template. Shows the Custom Fields for registration Template::Show('registration_customfields.tpl'); ?>
<?php if(isset($captcha_error)){echo '

'.$captcha_error.'

';} ?>

CrewCenter by Mark Swan

registration_customfields.php

<?php if(!defined('IN_PHPVMS') && IN_PHPVMS !== true) { die(); } ?> <?php /* Show any extra fields */ if($field_list) { foreach($field_list as $field) { ?>
<?php if($field->type == 'dropdown') { echo "’;
} elseif($field->type == ‘textarea’) {
echo ‘’;
} else { ?>

<?php } } } ?>

Thanks a lot! works perfect