⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 insenz.inc.php

📁 Discuz功能源码(开源)
💻 PHP
📖 第 1 页 / 共 4 页
字号:
			showformheader('insenz&operation=settings&do=relatedad');
			insenz_showsettings($do);

		} else {
			$relatedadstatus = in_array($relatedadstatus, array(0, 1)) ? $relatedadstatus : 1;
			if($insenz['relatedadstatus'] != $relatedadstatus) {
				$insenz['relatedadstatus'] = $relatedadstatus;
				$data ='<cmd id="editrelatedadstatus">'.
					'<relatedadstatus>'.$relatedadstatus.'</relatedadstatus>'.
					'<s_key>'.md5($authkey.'Discuz!INSENZ').'</s_key>'.
					'</cmd>';
				$response = insenz_request($data);
				if($response['status']) {
					cpmsg($response['data'], '', 'error');
				} else {
					$response = $response['data'];
					if($response['response'][0]['status'][0]['VALUE'] == 1) {
						cpmsg(insenz_convert($response['response'][0]['reason'][0]['VALUE'], 0), '', 'error');
					}
				}
				insenz_updatesettings();
				$db->query("REPLACE INTO {$tablepre}settings (variable, value) VALUES ('insenz', '".addslashes(serialize($insenz))."')");
				require_once DISCUZ_ROOT.'./include/cache.func.php';
				updatecache('settings');
			}
			cpmsg('insenz_settings_updated_succeed', $baseurl.'&do='.$do, 'succeed');
		}

	} elseif($do == 'virtualforum') {

		if(!submitcheck('settingssubmit')) {

			showtips('insenz_tips_virtualforumsetting');
			showformheader('insenz&operation=settings&do=virtualforum');
			insenz_showsettings($do);

		} else {
			$virtualforumstatus = in_array($virtualforumstatus, array(0, 1)) ? $virtualforumstatus : 1;
			if($insenz['virtualforumstatus'] != $virtualforumstatus) {
				$insenz['virtualforumstatus'] = $virtualforumstatus;
				$data ='<cmd id="editvirtualforumstatus">'.
					'<virtualforumstatus>'.$virtualforumstatus.'</virtualforumstatus>'.
					'<s_key>'.md5($authkey.'Discuz!INSENZ').'</s_key>'.
					'</cmd>';
				$response = insenz_request($data);
				if($response['status']) {
					cpmsg($response['data'], '', 'error');
				} else {
					$response = $response['data'];
					if($response['response'][0]['status'][0]['VALUE'] == 1) {
						cpmsg(insenz_convert($response['response'][0]['reason'][0]['VALUE'], 0), '', 'error');
					}
				}
				insenz_updatesettings();
				$db->query("REPLACE INTO {$tablepre}settings (variable, value) VALUES ('insenz', '".addslashes(serialize($insenz))."')");
				require_once DISCUZ_ROOT.'./include/cache.func.php';
				updatecache('settings');
			}
			cpmsg('insenz_settings_updated_succeed', $baseurl.'&do='.$do, 'succeed');
		}
	} elseif($do == 'host') {
		if(!submitcheck('settingssubmit')) {
			if(!function_exists('fsockopen')) {
				cpmsg('insenz_fsockopen_notavailable', '', 'error');
			}
			showformheader('insenz&operation=settings&do=host');
			showtableheader();
			showtitle('insenz_settings_host');
			showsetting('insenz_settings_domain', 'host', $insenz['host'], 'text');
		} else {
			if($host && $insenz['host'] != $host && (preg_match("/\w{1,8}\.insenz\.com/i", $host) || strcmp(long2ip(sprintf('%u', ip2long($host))), $host) == 0)) {
				$insenz['host'] = $host;
				$db->query("REPLACE INTO {$tablepre}settings (variable, value) VALUES ('insenz', '".addslashes(serialize($insenz))."')");
			}
			cpmsg('insenz_settings_updated_succeed', $baseurl.'&do='.$do, 'succeed');
		}
	}

	if(!submitcheck('settingssubmit')) {
		showsubmit('settingssubmit');
		showtablefooter();
		showformfooter();
	}

} elseif($operation == 'virtualforum') {

	if(submitcheck('acceptsubmit')) {

		insenz_checkfiles();

		$c_id = intval($c_id);
		$subject = dhtmlspecialchars(trim($c_name));
		$query = $db->query("SELECT COUNT(*) FROM {$tablepre}campaigns WHERE id='$c_id' AND type='4'");
		if($db->result($query, 0)) {
			cpmsg('insenz_campaign_dumplicate', '', 'error');
		}

		$gid = $db->result_first("SELECT fid FROM {$tablepre}virtualforums WHERE type='group' LIMIT 1");
		if(!$gid) {
			$db->query("INSERT INTO {$tablepre}virtualforums (cid, fup, type, name, status, displayorder) VALUES ('$c_id', '0', 'group', '".$lang['insenz_vf_init_forumname']."', '1', '0')");
			$gid = $db->insert_id();
		}

		$c_forumlink = strpos($c_forumlink, '?') !== FALSE ? $c_forumlink.'&' : $c_forumlink.'?';
		$db->query("INSERT INTO {$tablepre}virtualforums (cid, fup, type, name, description, logo, status, displayorder, threads, posts, lastpost) VALUES ('$c_id', '$gid', 'forum', '$c_forumname', '$c_forumnote', '$icon', '0', '0', '$threads', '$posts', '$vflastpost')");
		$fid = $db->insert_id();

		$data = '<cmd id="acceptVirtualForum">'.
			'<c_id>'.$c_id.'</c_id>'.
			'<boardid>'.$fid.'</boardid>'.
			'</cmd>';
		$response = insenz_request($data, TRUE, $fp);

		if($response['status']) {
			$db->query("DELETE FROM {$tablepre}virtualforums WHERE fid='$fid'");
			cpmsg($response['data'], '', 'error');
		} else {
			$response = $response['data'];
			if($response['response'][0]['status'][0]['VALUE'] == 1) {
				$db->query("DELETE FROM {$tablepre}virtualforums WHERE fid='$fid'");
				cpmsg(insenz_convert($response['response'][0]['reason'][0]['VALUE'], 0), '', 'error');
			}
		}

		$query = $db->query("REPLACE INTO {$tablepre}campaigns(id, fid, tid, type, status, begintime, starttime, endtime, expiration, nextrun, url, autoupdate)
			VALUES ('$c_id', '$fid', '0', '4', '1', '$c_begintime', '$c_starttime', '$c_endtime', '0', '$c_begintime', '$c_forumlink', '$c_autoupdate')");

		insenz_cronnextrun($c_begintime);

		cpmsg('insenz_vf_send', $BASESCRIPT.'?action=insenz&operation=virtualforum&c_status=2', 'succeed');

	} elseif(submitcheck('ignoresubmit')) {

		insenz_checkfiles();

		$c_id = intval($c_id);
		$subject = dhtmlspecialchars(trim($c_name));
		$query = $db->query("SELECT COUNT(*) FROM {$tablepre}campaigns WHERE id='$c_id' AND type='4'");
		if($db->result($query, 0)) {
			cpmsg('insenz_campaign_dumplicate', '', 'error');
		}

		if(!$confirmed) {
			showformheader("insenz&operation=virtualforum&c_id=$c_id&confirmed=yes");
			showtableheader('discuz_message');
			showsetting('insenz_campaign_input_ignore_reson', array('reason', array(
				array(1, $lang['insenz_campaign_ignore_reson_more_threads']),
				array(2, $lang['insenz_campaign_reson_price']),
				array(3, $lang['insenz_campaign_reson_content_unsuitable']),
				array(4, $lang['insenz_campaign_reson_subject_notmathched'])
			)), '', 'mradio');
			showsubmit('', '', '', '<input type="submit" class="btn" name="ignoresubmit" onclick="return checkform(this.form);" value="'.$lang['ok'].'"> &nbsp;<input type="button" class="btn" value="'.$lang['cancel'].'" onClick="history.go(-1)">');
			showtablefooter();
			showformfooter();
			echo '<script type="text/JavaScript">
				function checkform(theform) {
					for(var i = 0; i < 4; i++) {
						if(theform.reason[i].checked) return true;
					}
					alert(\''.$lang['insenz_campaign_input_reason'].'\');
					return false;
				}
			</script>';

		} else {

			if(!$reason = intval($reason)) {
				cpmsg('insenz_campaign_input_reason', '', 'error');
			}
			$data = '<cmd id="ignoreVirtualForum">'.
				'<c_id>'.$c_id.'</c_id>'.
				'<reason>'.$reason.'</reason>'.
				'</cmd>';
			$response = insenz_request($data);
			if($response['status']) {
				cpmsg($response['data'], '', 'error');
			} else {
				$response = $response['data'];
				if($response['response'][0]['status'][0]['VALUE'] == 1) {
					cpmsg(insenz_convert($response['response'][0]['reason'][0]['VALUE'], 0), '', 'error');
				}
			}
			cpmsg('insenz_campaign_specified_ignored', $BASESCRIPT.'?action=insenz&operation=virtualforum&c_status=2', 'succeed');

		}

	} else {

		shownav('adv', 'insenz', 'insenz_nav_virtualforum');
		showsubmenu('nav_insenz_vf', array(
			array('nav_insenz_vf_new', 'insenz&operation=virtualforum&c_status=2', $c_status == 2),
			array('nav_insenz_vf_online', 'insenz&operation=virtualforum&c_status=6', $c_status == 6),
			array('nav_insenz_vf_offline', 'insenz&operation=virtualforum&c_status=7', $c_status == 7)
		));

		if($c_status == 6) {
			$onlineids = $offlineids = 0;
			$query = $db->query("SELECT id, status FROM {$tablepre}campaigns WHERE type='4' AND status IN ('2','3')");
			while($c = $db->fetch_array($query)) {
				if($c['status'] == 2) {
					$onlineids .= ','.$c['id'];
				} else {
					$offlineids .= ','.$c['id'];
				}
			}
		}
		showtips('insenz_tips_virtualforum');
		$statuslist = array('2'=>$lang['insenz_campaign_new'], '6'=>$lang['insenz_campaign_playing'], '7'=>$lang['insenz_campaign_over']);
		showtableheader($statuslist[$c_status], 'fixpadding');
		showsubtitle(array('insenz_campaign_id', 'insenz_campaign_name', 'insenz_campaign_price', 'insenz_campaign_starttime', 'insenz_campaign_endtime', 'insenz_vf_name', $c_status == 6 ? 'insenz_campaign_status' : NULL, ''));
		showtagheader('tbody', 'tbody1', TRUE);
		showtablerow('', 'colspan="8" id="loading"', '<img src="'.IMGDIR.'/loading.gif" border="0"> '.$lang['insenz_loading']);
		showtagfooter('tbody');
		showtablefooter();

		echo '	<script src="./include/js/bbcode.js" type="text/javascript"></script>
			<script src="http://'.$insenz['url'].'/virtualforum.php?action=list&c_status='.$c_status.'&id='.$insenz['siteid'].'&t='.$timestamp.'&k='.md5($insenz['authkey'].$insenz['siteid'].$timestamp.'Discuz!').'&insenz_version='.INSENZ_VERSION.'&discuz_version='.DISCUZ_VERSION.'-'.DISCUZ_RELEASE.'&c_status='.$c_status.'&page='.$page.'&random='.random(4).'" type="text/javascript" charset="UTF-8"></script>
			<script type="text/JavaScript">
			if(typeof error_msg != "undefined" && error_msg) {
				$("loading").innerHTML = error_msg;
				alert(error_msg);
			} else {
				var s = "";
				for(k in Camps) {
					var camp = Camps[k];
					s += "<tr><td align=\"left\">"+camp.c_id+"</td>";
					s += "<td align=\"left\">"+camp.c_name+"</td>";
					s += "<td>"+camp.c_price+"</td>";
					s += "<td>"+camp.c_begindate+"</td>";
					s += "<td>"+camp.c_enddate+"</td>";
					s += "<td>"+camp.c_forumname+"</td>";
					'.($c_status == 6 ? 's += "<td>"+(in_array(camp.c_id, ['.$onlineids.']) ? "<span class=\"diffcolor2\">'.$lang[insenz_campaign_status_online].'</span>" : (in_array(camp.c_id, ['.$offlineids.']) ? "<span class=\"lightfont\">'.$lang[insenz_campaign_status_offline].'</span>" : "<span class=\"diffcolor3\">'.$lang[insenz_campaign_status_waiting].'</span>"))+"</td>";' : '').'
					s += "<td><a href=\"javascript:showdetail("+camp.c_id+")\">'.$lang['detail'].'</a></td></tr>";
					s += "<tr><td colspan=\"8\" id=\"detail_"+camp.c_id+"\" style=\"display: none;\"></td></tr>";
				}
				$("loading").style.display = "none";
				ajaxinnerhtml($("tbody1"), s);
			}
			function showdetail(id) {
				var camp = Camps[id];
				var obj = $("detail_" + id);
				obj.style.display = obj.style.display == "" ? "none" : "";
				obj.style.padding = "10px";

				s = "<b>'.$lang['insenz_vf_note'].':</b><br>" + camp.c_forumnote;
				s += "<br><b>'.$lang['insenz_vf_camp_note'].':</b><br>" + camp.c_note;
				s += "<form name=\"form\" action=\"$BASESCRIPT?action=insenz&operation=virtualforum\" method=\"post\">";
				s += "<input type=\"hidden\" name=\"formhash\" value=\"'.FORMHASH.'\">";
				s += "<input type=\"hidden\" name=\"c_id\" value=\""+parseInt(camp.c_id)+"\">";
				s += "<input type=\"hidden\" name=\"c_name\" value=\""+htmlspecialchars(camp.c_name)+"\">";
				s += "<input type=\"hidden\" name=\"c_note\" value=\""+htmlspecialchars(camp.c_note)+"\">";
				s += "<input type=\"hidden\" name=\"c_price\" value=\""+parseInt(camp.c_price)+"\">";
				s += "<input type=\"hidden\" name=\"c_begintime\" value=\""+parseInt(camp.c_begintime)+"\">";
				s += "<input type=\"hidden\" name=\"c_endtime\" value=\""+parseInt(camp.c_endtime)+"\">";
				s += "<input type=\"hidden\" name=\"c_forumname\" value=\""+htmlspecialchars(camp.c_forumname)+"\">";
				s += "<input type=\"hidden\" name=\"c_forumlink\" value=\""+htmlspecialchars(camp.c_forumlink)+"\">";
				s += "<input type=\"hidden\" name=\"c_forumnote\" value=\""+htmlspecialchars(camp.c_forumnote)+"\">";
				s += "<input type=\"hidden\" name=\"threads\" value=\""+parseInt(camp.threads)+"\">";
				s += "<input type=\"hidden\" name=\"posts\" value=\""+parseInt(camp.posts)+"\">";
				s += "<input type=\"hidden\" name=\"vflastpost\" value=\""+htmlspecialchars(camp.lastpost)+"\">";
				s += "<input type=\"hidden\" name=\"c_autoupdate\" value=\""+parseInt(camp.c_autoupdate)+"\">";
				s += "<input type=\"hidden\" name=\"icon\" value=\""+htmlspecialchars(camp.c_icon)+"\">";
				s += '.($c_status == 2 ? "'<input type=\"submit\" class=\"btn\" name=\"acceptsubmit\" value=\"".$lang['insenz_campaign_pass']."\"> &nbsp; <input type=\"submit\" class=\"btn\" name=\"ignoresubmit\" value=\"".$lang['insenz_campaign_ignore']."\">'" : "''").';
				obj.innerHTML = s;

			}
			</script>';

	}

} else {

	cpmsg('noaccess', '', 'error');

}

?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -