Server : nginx/1.22.1
System : Linux iZwz9daxib3w3i063fw434Z 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64
User : www ( 1000)
PHP Version : 5.6.40
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Directory :  /www/wwwroot/www.jkmold.com/phpcms/modules/mood/
Upload File :
Current Directory [ Writeable ] Root Directory [ Writeable ]


Current File : /www/wwwroot/www.jkmold.com/phpcms/modules/mood/index.php
<?php

defined('IN_PHPCMS') or exit('No permission resources.');

class index {

	private $setting, $catid, $contentid, $siteid, $mood_id;

	public function __construct() {

		$this->setting = getcache('mood_program', 'commons');

		

		

		$this->mood_id = isset($_GET['id']) ? $_GET['id'] : '';

		if(!preg_match("/^[a-z0-9_\-]+$/i",$this->mood_id)) showmessage((L('illegal_parameters')));

		if (empty($this->mood_id)) {

			showmessage(L('id_cannot_be_empty'));

		}

		list($this->catid, $this->contentid, $this->siteid) = id_decode($this->mood_id);

		

		$this->setting = isset($this->setting[$this->siteid]) ? $this->setting[$this->siteid] : array();

		

		foreach ($this->setting as $k=>$v) {

			if (empty($v['use'])) unset($this->setting[$k]);

		}

		

		define('SITEID', $this->siteid);

	}

	

	//显示心情

	public function init() {

		$mood_id =& $this->mood_id;

		$setting =& $this->setting;

		$mood_db = pc_base::load_model('mood_model');

		$data = $mood_db->get_one(array('catid'=>$this->catid, 'siteid'=>$this->siteid, 'contentid'=>$this->contentid));

		foreach ($setting as $k=>$v) {

			$setting[$k]['fields'] = 'n'.$k;

			if (!isset($data[$setting[$k]['fields']])) $data[$setting[$k]['fields']] = 0;

			if (isset($data['total']) && !empty($data['total'])) {

				$setting[$k]['per'] = ceil(($data[$setting[$k]['fields']]/$data['total']) * 60);

			} else {

				$setting[$k]['per'] = 0;

			}

		}

		ob_start();

		include template('mood', 'index');

		$html = ob_get_contents();

		ob_clean();

		echo format_js($html);

	}

	

	//提交选中

	public function post() {

		if (isset($_GET['callback']) && !preg_match('/^[a-zA-Z_][a-zA-Z0-9_]+$/', $_GET['callback']))  unset($_GET['callback']);

		$mood_id =& $this->mood_id;

		$setting =& $this->setting;

		$cookies = param::get_cookie('mood_id');

		$cookie = explode(',', $cookies);

		if (in_array($this->mood_id, $cookie)) {

			$this->_show_result(0, L('expressed'));

		} else {

			$mood_db = pc_base::load_model('mood_model');

			$key = isset($_GET['k']) && intval($_GET['k']) ? intval($_GET['k']) : '';

			if (!in_array($key, array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)))

				$this->_show_result(0, L('illegal_parameters'));

			$fields = 'n'.$key;

			if ($data = $mood_db->get_one(array('catid'=>$this->catid, 'siteid'=>$this->siteid, 'contentid'=>$this->contentid))) {

				$mood_db->update(array('total'=>'+=1', $fields=>'+=1', 'lastupdate'=>SYS_TIME), array('id'=>$data['id']));

				$data['total']++;

				$data[$fields]++;

			} else {

				$mood_db->insert(array('total'=>'1', $fields=>'1', 'catid'=>$this->catid, 'siteid'=>$this->siteid, 'contentid'=>$this->contentid,'

				lastupdate'=>SYS_TIME));

				$data['total'] = 1;

				$data[$fields] = 1;

			}

			param::set_cookie('mood_id', $cookies.','.$mood_id);

			foreach ($setting as $k=>$v) {

				$setting[$k]['fields'] = 'n'.$k;

				if (!isset($data[$setting[$k]['fields']])) $data[$setting[$k]['fields']] = 0;

				if (isset($data['total']) && !empty($data['total'])) {

					$setting[$k]['per'] = ceil(($data[$setting[$k]['fields']]/$data['total']) * 60);

				} else {

					$setting[$k]['per'] = 0;

				}

			}

			ob_start();

			include template('mood', 'index');

			$html = ob_get_contents();

			ob_clean();

			$this->_show_result(1,$html);

		}

	}

	

	//显示AJAX结果

	protected function _show_result($status = 0, $msg = '') {

		if(CHARSET != 'utf-8') {

			$msg = iconv(CHARSET, 'utf-8', $msg);

		}

		exit(trim_script($_GET['callback']).'('.json_encode(array('status'=>$status, 'data'=>$msg)).')');

	}

}