74 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| namespace Zotlabs\Module\Admin;
 | |
| 
 | |
| 
 | |
| 
 | |
| class Features {
 | |
| 
 | |
| 	
 | |
| 	function post() {
 | |
| 	
 | |
| 		check_form_security_token_redirectOnErr('/admin/features', 'admin_manage_features');
 | |
| 	
 | |
| 		logger('postvars: ' . print_r($_POST,true));
 | |
| 	
 | |
| 		$arr = array();
 | |
| 		$features = get_features(false);
 | |
| 	
 | |
| 		foreach($features as $fname => $fdata) {
 | |
| 			foreach(array_slice($fdata,1) as $f) {
 | |
| 				$feature = $f[0];
 | |
| 	
 | |
| 				if(array_key_exists('feature_' . $feature,$_POST))
 | |
| 					$val = intval($_POST['feature_' . $feature]);
 | |
| 				else
 | |
| 					$val = 0;
 | |
| 				set_config('feature',$feature,$val);
 | |
| 	
 | |
| 				if(array_key_exists('featurelock_' . $feature,$_POST))
 | |
| 					set_config('feature_lock',$feature,$val);
 | |
| 				else
 | |
| 					del_config('feature_lock',$feature);
 | |
| 			}
 | |
| 		}
 | |
| 	
 | |
| 		goaway(z_root() . '/admin/features' );
 | |
| 	
 | |
| 	}
 | |
| 	
 | |
| 	function get() {
 | |
| 		
 | |
| 		if((argc() > 1) && (argv(1) === 'features')) {
 | |
| 			$arr = array();
 | |
| 			$features = get_features(false);
 | |
| 	
 | |
| 			foreach($features as $fname => $fdata) {
 | |
| 				$arr[$fname] = array();
 | |
| 				$arr[$fname][0] = $fdata[0];
 | |
| 				foreach(array_slice($fdata,1) as $f) {
 | |
| 	
 | |
| 					$set = get_config('feature',$f[0]);
 | |
| 					if($set === false)
 | |
| 						$set = $f[3];
 | |
| 					$arr[$fname][1][] = array(
 | |
| 						array('feature_' .$f[0],$f[1],$set,$f[2],array(t('Off'),t('On'))),
 | |
| 						array('featurelock_' .$f[0],sprintf( t('Lock feature %s'),$f[1]),(($f[4] !== false) ? 1 : 0),'',array(t('Off'),t('On')))
 | |
| 					);
 | |
| 				}
 | |
| 			}
 | |
| 			
 | |
| 			$tpl = get_markup_template("admin_settings_features.tpl");
 | |
| 			$o .= replace_macros($tpl, array(
 | |
| 				'$form_security_token' => get_form_security_token("admin_manage_features"),
 | |
| 				'$title'	=> t('Manage Additional Features'),
 | |
| 				'$features' => $arr,
 | |
| 				'$submit'   => t('Submit'),
 | |
| 			));
 | |
| 	
 | |
| 			return $o;
 | |
| 		}
 | |
| 	}
 | |
| 	
 | |
| 
 | |
| } |