show.blade.php 3.24 KB
<?php
$kformlib=new \App\Jobs\KFormLib($wakka->HRCoreVars["HRFiledsStr"]);

$wakka->setUserTimezone();
$themehome=$wakka->GetThemePath('/');
$varid=Input::get('varid');
$bkvarid=Input::get('bkvarid');

$edituser=0;$noreaduser=0;$oldbkrec=0;
$isuser=$wakka->GetUser()?1:0;
$recruitdata=array();

if($varid=="0")
{
	return;
}
if($varid!=""||$isuser)
{
	$cdataarr=array();
	$cdataarr['status']='____';

	$fdirtytxt='Required';

	if($varid=="")
	{
		if($isuser)
		{
			//try to grab any unused id first
			$moddate=date("Y-m-d H:i:s",time()-(48*60*60));
			$freeid=$wakka->LoadSingle("select id from records where status='____' and modified<'$moddate' limit 1;");
			if($freeid['id']>0)
			{
				$personarr=$wakka->getPerson($freeid['id']);

				if(is_dir("$themehome/recruits/$freeid[id]"))
				{
					$personarr['peopledata']['status']='New';
				}
				else
				{
					$varid=$freeid['id'];
				}
				$wakka->setPerson($freeid['id'],$personarr);	
			}

			if($varid=='')
			{
				$updatetime=time();
				$createdlog[$updatetime]=$wakka->GetUserName();
				$createdlog['createtime']=$updatetime;
				$varid=$wakka->Query("insert into","","records",array('created'=>date('Y-m-d H:i:s')));
				$wakka->Query("update records set modified=now(),created=now(),peopledata='".serialize($cdataarr)."',modifylog='".serialize($createdlog)."',status='".$cdataarr['status']."' where id=$varid limit 1");
			}

			$recruitdata=$wakka->getPerson($varid);
			$recruitdata["peopledata"]['id']=$varid;
			$recruitdata["peopledata"]['status']='New';
			$edituser=1;
		}
	}
	else
	{

		if($varid=="OLDBK")
		{
			if($isuser)
			{
				$varid=intval($bkvarid);
				$recruitdata=$wakka->getPersonOld($varid);
				$oldbkrec=1;
			}
		}
		else
		{

			$varid=intval($varid);
			$recruitdata=$wakka->getPerson($varid);
		}
		
		
		if(!$isuser)
		{
			if($recruitdata["peopledata"]['emppass']!=$_POST['vkey'])
			{
				echo "_ERROR_00450_";
				return;
			}
		}
		
		
		if(!$oldbkrec)
		{
			//grant edit access to relevant users
			if(!$wakka->IsAdmin())
			{
				$clientlst=explode(",",$wakka->GetBBBUserData("clientslist"));
				foreach($clientlst as $tclnt)if($tclnt==$recruitdata["peopledata"]['client']&&$tclnt!=""){$edituser=1;break;}

				if($recruitdata["peopledata"]['client']=='')$edituser=1;
				else if(!stristr($kformlib->fillSelect('client'),$recruitdata["peopledata"]['client']))$edituser=1;
			}
			else $edituser=1;

			if(!$edituser&&$wakka->GetBBBUserData("readotherdata")=="No")
			{
				$noreaduser=1;
				//no edit access and read other data..
				//check if we have owner access = read access
				$oclientlst=$wakka->clientsReadAccess();
				foreach($oclientlst as $tclnt)if(strtolower($tclnt)==strtolower($recruitdata["peopledata"]['client'])&&$tclnt!=""){$noreaduser=0;break;}
			}
		}
	}
	
	
$config=array();
$config['varid']=$varid;
$config['edituser']=$edituser;
$config['gthis']=$wakka;
$config['fdirtytxt']=$fdirtytxt;
$config['isuser']=$isuser;
$config['recruitdata']=$recruitdata;
$config['oldbkrec']=$oldbkrec;
$config['bkvarid']=$bkvarid;
$config['emprecordScripts']=$wakka->HRCoreVars['emprecordScripts'];
$config['HRExclusiveClients']=$wakka->HRCoreVars['HRExclusiveClients'];

$kformlib->data($config);

if($noreaduser)echo "<h2>No Access.</h2>";
else echo $kformlib->CreateForm($kformlib->HRForms);


}
?>