Current File : /home/inlingua/www/decay_sym/root/var/softaculous/apps/php-common/themes/admin/editini_theme.php
<?php

//////////////////////////////////////////////////////////////
//===========================================================
// WEBUZO CONTROL PANEL
// Inspired by the DESIRE to be the BEST OF ALL
// ----------------------------------------------------------
// Started by: Pulkit
// Date:       10th Jan 2009
// Time:       21:00 hrs
// Site:       https://webuzo.com/ (WEBUZO)
// ----------------------------------------------------------
// Please Read the Terms of Use at https://webuzo.com/terms
// ----------------------------------------------------------
//===========================================================
// (c) Softaculous Ltd.
//===========================================================
//////////////////////////////////////////////////////////////

if(!defined('SOFTACULOUS')){
	die('Hacking Attempt');
}

function phpc_editini_theme(){

global $theme, $globals, $user, $langs, $skins, $error, $saved, $list, $done, $iapps, $filename, $apps, $phpversion, $curr_php, $ini;

	//Get ids for all the PHP's 
	$php_ids = group_iapp_ids('php');
	sort($php_ids);

	echo '
<div class="soft-smbox p-3 col-12 col-md-10 mx-auto">
	<div class="sai_main_head">
		<img src="'.$theme['images'].'php_conf.png" class="me-1"/>
			'.__('PHP Configuration').'
	</div>
</div>
<div class="soft-smbox p-3 mt-4 col-12 col-md-10 mx-auto">
	<div class="row mb-3">
		<h4 class="sai_sub_head d-inline-block" id="setting_lbl">'.__('Configure basic settings of a PHP version').'</h4></br></br>
		<div class="col-12 col-md-4">
			<label class="sai_head" for="phpversion">'.__('Select Version').'</label>
		</div>
		<div class="col-12 col-md-8">
			<select class="form-select" name="phpversion" id="phpversion">';
				foreach($php_ids as $id){
					echo '<option value="'.$id.'" '.(POSTselect('phpversion', $id, ($phpversion == $id ? 1 : ""))).'>'.$iapps[$id]['name'].'</option>';
				}
		echo ' 
			</select>
		</div>
	</div>
	<ul class="nav nav-tabs mb-3 webuzo-tabs" id="pills-tab" role="tablist">
		<li class="nav-item" role="presentation">
			<button class="nav-link active heading_a" id="b_mode_t" data-bs-toggle="tab" data-bs-target="#b_mode" type="button" role="tab" aria-controls="b_mode" aria-selected="true" onclick="changeTab(this)">'.__('Basic Mode').'</button>
		</li>
		<li class="nav-item" role="presentation">
			<button class="nav-link" href="#e_mode" id="e_mode_t" data-bs-toggle="tab" data-bs-target="#e_mode" type="button" role="tab" aria-controls="e_mode" aria-selected="false" onclick="changeTab(this)">'.__('Editor Mode').'</button>
		</li>
	</ul>
	<div class="tab-content" id="pills-tabContent">
		<div class="tab-pane fade show active" id="b_mode" role="tabpanel" aria-labelledby="b_mode_t">			
			<form name="b_form_cont" id="b_form_cont" action="" method="post" onsubmit="return submitit(this)" data-phpversion="">
				<div class="table-responsive">
					<table class="table align-middle table-nowrap mb-0 webuzo-table" >
						<thead class="sai_head2">
							<tr>
							<th class="align-middle">'.__('PHP Directive').'</th>
							<th class="align-middle">'.__('Information').'</th>
							<th class="align-middle">'.__('Setting').'</th>
							</tr>
						</thead>
						<tbody>';
						foreach($ini['form_keys'] as $key => $value){
							echo '
							<tr id="tr'.$key.'">
								<td>'.($value["key"] ? $value["key"] : $key).'</td>
								<td>'.$value["info"].'</td>
								<td class="align-middle">';
								if($value["type"] == "checkbox"){
									echo '
									<div class="form-check form-switch">
										<input class="form-check-input" name="'.$key.'" type="checkbox" '.($value["default"] ? "checked" : "").'>
									</div>';
								}else{
									echo '
									<input class="form-control" type="text" name="'.$key.'" value="'.$value["default"].'" >
									';
								}
								echo '
								</td>
							</tr>';
						}
						echo '
						</tbody>
					</table>
				</div>
				<div class="text-center mt-2">
					<input type="submit" class="btn btn-primary me-1" name="save_basic_mode" value="'.__('Apply').'">
				</div>
			</form>
		</div>
		<div class="tab-pane fade show" id="e_mode" role="tabpanel" aria-labelledby="e_mode_t">';			
			if(empty($filename)){	
				echo '
			<div class="alert alert_warning">
				<h4>'.__('The selected version of PHP could not be found on your server.').'</h4>
			</div>';
				
			}else{
				
				$linecount = count(file($filename));
				
				echo '
			<form accept-charset="'.$globals['charset'].'" name="editphpini" method="post" action="" id="editphpini" class="form-horizontal" onsubmit="return submitit(this)">
				<div class="row">
					<div class="col-12 ContentDivs">
						<div class="row ini-data m-3">
							<div class="col-2 col-sm-1 text-center line-numbers">';
								for($i=1; $i<=$linecount; $i++){
									echo $i."<br/>";
								}
							echo '
							</div>
							<div class="col-10 col-sm-11">
								<textarea WRAP=off name="phpini_data" id="phpini_data" rows='.$linecount.' onkeydown="if(event.keyCode===9){var v=this.value,s=this.selectionStart,e=this.selectionEnd;this.value=v.substring(0, s)+\'\t\'+v.substring(e);this.selectionStart=this.selectionEnd=s+1;return false;}">'.htmlentities(file_get_contents($filename), ENT_QUOTES, "UTF-8").'</textarea>
							</div>
						</div>
					</div>
				</div>
				<div class="text-center">
					<input type="submit" value="'.__('Save').'" name="savephpini" class="btn btn-primary me-1" id="savephpini" />
				</div>
			</form>';
			}
		echo '
		</div>
	</div>	
</div>

<script language="javascript" type="text/javascript">

function changeTab(jEle){
	let mt = $(jEle).attr("aria-controls");
	if(mt === "b_mode"){
		$("#setting_lbl").html("'.__js('Configure basic settings of a PHP version').'");
	}else if(mt === "e_mode"){
		$("#setting_lbl").html("'.__js('Edit the INI settings of a PHP version').'");
	}
}

$("#phpversion").change(function(){
	var phpversion = $(this).val();
	window.location = "'.$globals['ind'].'act=editini&phpversion="+phpversion;
});

</script>';

}