<?php

	// Check nonce
	PHPCUS_PARAM::CUS_REQUIRES_NONCE();
	
	// Check Array Input
	PHPCUS_PARAM::CUS_DOES_NOT_SUPPORT_ARRAY();
	
	// Check already authenticated
	PHPCUS_PARAM::CUS_REQUIRES_AUTHENTICATION();
	
	// Check access rights
	PHPCUS_PARAM::CUS_HAS_PERMISSION(PHPCUS_SYSTEM::AUTHORITY_VIEW_ONLY, 'mobile_volume_control');
	
	
	if
	(
		PHPRC_HTTP_PARAM::REF_ISSET_IN_ARRAY
		(
			[
					'PARAM_VOLCONTROL_ID',
					'PARAM_VOLCONTROL_SCODE_ID',
					'PARAM_VOLCONTROL_RESET_TIME_FROM',
							'PARAM_VOLCONTROL_RESET_TIME_TO',
					'PARAM_VOLCONTROL_MODIFIED_TIME_FROM',
							'PARAM_VOLCONTROL_MODIFIED_TIME_TO',
					'PARAM_VOLCONTROL_STATUS',
					
					'PARAM_ORDER_FIELD',
					'PARAM_ORDER_TYPE',
					'PARAM_SKIP'
			], True
		)
	)
	{
		Try
		{
			// Read params
			// ------------------------------------------------------------------	

			$PARAM_VOLCONTROL_ID = PHPCUS_PARAM::CUS_READ_BIGINT('PARAM_VOLCONTROL_ID');
			$PARAM_VOLCONTROL_SCODE_ID = PHPCUS_PARAM::CUS_READ_BIGINT('PARAM_VOLCONTROL_SCODE_ID');
			$PARAM_VOLCONTROL_RESET_TIME_FROM = PHPCUS_PARAM::CUS_READ_DATETIME('PARAM_VOLCONTROL_RESET_TIME_FROM');
					$PARAM_VOLCONTROL_RESET_TIME_TO = PHPCUS_PARAM::CUS_READ_DATETIME('PARAM_VOLCONTROL_RESET_TIME_TO');
			$PARAM_VOLCONTROL_MODIFIED_TIME_FROM = PHPCUS_PARAM::CUS_READ_DATETIME('PARAM_VOLCONTROL_MODIFIED_TIME_FROM');
					$PARAM_VOLCONTROL_MODIFIED_TIME_TO = PHPCUS_PARAM::CUS_READ_DATETIME('PARAM_VOLCONTROL_MODIFIED_TIME_TO');
			$PARAM_VOLCONTROL_STATUS = PHPCUS_PARAM::CUS_READ_INT('PARAM_VOLCONTROL_STATUS');
			
			$PARAM_ORDER_FIELD = PHPCUS_PARAM::CUS_READ_SORT_FIELD
			(
					'PARAM_ORDER_FIELD',
					[
						'VOLCONTROL_ID', 
						'VOLCONTROL_SCODE_ID', 
						'VOLCONTROL_RESET_TIME', 
						'VOLCONTROL_MODIFIED_TIME', 
						'VOLCONTROL_STATUS'
					]
			);
			
			$PARAM_ORDER_TYPE = PHPCUS_PARAM::CUS_READ_SORT_TYPE('PARAM_ORDER_TYPE');
			$PARAM_SKIP	= PHPCUS_PARAM::CUS_READ_BIGINT('PARAM_SKIP');
			
			// ------------------------------------------------------------------
			
			
			// Execute Stored Procedure
			$DATA_SET = PHPCUS_MOBILE_VOLUME_CONTROL::CUS_GET
						(
								$PARAM_VOLCONTROL_ID,
								$PARAM_VOLCONTROL_SCODE_ID,
								$PARAM_VOLCONTROL_RESET_TIME_FROM,
									$PARAM_VOLCONTROL_RESET_TIME_TO,
								$PARAM_VOLCONTROL_MODIFIED_TIME_FROM,
									$PARAM_VOLCONTROL_MODIFIED_TIME_TO,
								$PARAM_VOLCONTROL_STATUS,
								
								$PARAM_ORDER_FIELD,
								$PARAM_ORDER_TYPE,
								$PARAM_SKIP
						);
						
			// Return JSON response
			if(empty($DATA_SET) === False)
			{
				PHPCUS_PARAM::CUS_JSON_SUCCESS($DATA_SET);
			}
			else
			{
				PHPCUS_PARAM::CUS_JSON_SUCCESS('');
			}
			
		}
		Catch(Exception $ERR)
		{
			PHPVC_LOG::VAR_REPORT_ERROR($ERR, 0);
			PHPCUS_PARAM::CUS_JSON_ERROR($ERR->getMessage());
		}
	}
	else
	{
		PHPCUS_PARAM::CUS_JSON_ERROR('Missing parameters');
	}

?>