ispcheck.php 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746
  1. <link rel="stylesheet" href="/css/zujuan.css"/>
  2. <link rel="stylesheet" href="/css/component.css"/>
  3. <link rel="stylesheet" href="/css/all.css"/>
  4. <link rel="stylesheet" href="/css/circle.css"/>
  5. <style type="text/css">
  6. .hideBody {
  7. width: 140px;
  8. background-color: #fff;
  9. border: none;
  10. position: absolute;
  11. bottom: -51px;
  12. z-index: 999;
  13. }
  14. .hideBody dd {
  15. height: 32px;
  16. padding: 0px 14px;
  17. line-height: 32px;
  18. color: #555;
  19. }
  20. .borbd {
  21. border-bottom: 1px solid #fff;
  22. }
  23. .editmenu>li {
  24. float: left;
  25. background-color: #15ae68;
  26. color: #fff;
  27. padding: 5px 10px;
  28. margin-left: 3px;
  29. cursor: pointer;
  30. }
  31. .t.edit {
  32. border: 1px solid #15ae68;
  33. position: relative;
  34. }
  35. .lblButton3 {
  36. display: inline-block;
  37. min-width: 120px;
  38. height: 35px;
  39. line-height: 35px;
  40. text-align: center;
  41. background-color: #15ae68;
  42. color: #fff;
  43. font-weight: bold;
  44. }
  45. a:hover, a:focus {
  46. text-decoration: underline;
  47. }
  48. .printer:hover{color:#fff;}
  49. .replace-question, .replace-question1{
  50. padding-left: 35px;padding-right: 35px;
  51. margin-left:25px;
  52. background-color: #15ae68 !important;
  53. }
  54. .replace-question:hover,.replace-question1:hover{color: #fff !important;}
  55. .question-cont {
  56. padding: 5px 0 25px 25px;
  57. background-color: #fff;
  58. }
  59. .topicContent{overflow:visible !important;word-break:break-all !important;}
  60. .cont{margin-top:20px}
  61. .topicContent img{clear:both !important;}
  62. </style>
  63. <script type="text/javascript">
  64. function numToLetter(number) {
  65. var letters = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
  66. var result = '';
  67. number = parseInt(number);
  68. result = letters[number];
  69. return result;
  70. }
  71. function strip_tags(input, allowed) {
  72. // discuss at: http://phpjs.org/functions/strip_tags/
  73. // original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  74. // improved by: Luke Godfrey
  75. // improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  76. // input by: Pul
  77. // input by: Alex
  78. // input by: Marc Palau
  79. // input by: Brett Zamir (http://brett-zamir.me)
  80. // input by: Bobby Drake
  81. // input by: Evertjan Garretsen
  82. // bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  83. // bugfixed by: Onno Marsman
  84. // bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  85. // bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  86. // bugfixed by: Eric Nagel
  87. // bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  88. // bugfixed by: Tomasz Wesolowski
  89. // revised by: Rafał Kukawski (http://blog.kukawski.pl/)
  90. // example 1: strip_tags('<p>Kevin</p> <br /><b>van</b> <i>Zonneveld</i>', '<i><b>');
  91. // returns 1: 'Kevin <b>van</b> <i>Zonneveld</i>'
  92. // example 2: strip_tags('<p>Kevin <img src="someimage.png" onmouseover="someFunction()">van <i>Zonneveld</i></p>', '<p>');
  93. // returns 2: '<p>Kevin van Zonneveld</p>'
  94. // example 3: strip_tags("<a href='http://kevin.vanzonneveld.net'>Kevin van Zonneveld</a>", "<a>");
  95. // returns 3: "<a href='http://kevin.vanzonneveld.net'>Kevin van Zonneveld</a>"
  96. // example 4: strip_tags('1 < 5 5 > 1');
  97. // returns 4: '1 < 5 5 > 1'
  98. // example 5: strip_tags('1 <br/> 1');
  99. // returns 5: '1 1'
  100. // example 6: strip_tags('1 <br/> 1', '<br>');
  101. // returns 6: '1 <br/> 1'
  102. // example 7: strip_tags('1 <br/> 1', '<br><br/>');
  103. // returns 7: '1 <br/> 1'
  104. allowed = (((allowed || '') + '')
  105. .toLowerCase()
  106. .match(/<[a-z][a-z0-9]*>/g) || [])
  107. .join(''); // making sure the allowed arg is a string containing only tags in lowercase (<a><b><c>)
  108. var tags = /<\/?([a-z][a-z0-9]*)\b[^>]*>/gi,
  109. commentsAndPhpTags = /<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;
  110. // 转字符串
  111. if(typeof input !== 'string') {
  112. var input = input.toString();
  113. }
  114. return input.replace(commentsAndPhpTags, '')
  115. .replace(tags, function($0, $1) {
  116. return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : '';
  117. });
  118. }
  119. function array_unique(inputArr) {
  120. // discuss at: http://phpjs.org/functions/array_unique/
  121. // original by: Carlos R. L. Rodrigues (http://www.jsfromhell.com)
  122. // input by: duncan
  123. // input by: Brett Zamir (http://brett-zamir.me)
  124. // bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  125. // bugfixed by: Nate
  126. // bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  127. // bugfixed by: Brett Zamir (http://brett-zamir.me)
  128. // improved by: Michael Grier
  129. // note: The second argument, sort_flags is not implemented;
  130. // note: also should be sorted (asort?) first according to docs
  131. // example 1: array_unique(['Kevin','Kevin','van','Zonneveld','Kevin']);
  132. // returns 1: {0: 'Kevin', 2: 'van', 3: 'Zonneveld'}
  133. // example 2: array_unique({'a': 'green', 0: 'red', 'b': 'green', 1: 'blue', 2: 'red'});
  134. // returns 2: {a: 'green', 0: 'red', 1: 'blue'}
  135. var key = '',
  136. tmp_arr2 = {},
  137. val = '';
  138. var __array_search = function(needle, haystack) {
  139. var fkey = '';
  140. for (fkey in haystack) {
  141. if (haystack.hasOwnProperty(fkey)) {
  142. if ((haystack[fkey] + '') === (needle + '')) {
  143. return fkey;
  144. }
  145. }
  146. }
  147. return false;
  148. };
  149. for (key in inputArr) {
  150. if (inputArr.hasOwnProperty(key)) {
  151. val = inputArr[key];
  152. if (false === __array_search(val, tmp_arr2)) {
  153. tmp_arr2[key] = val;
  154. }
  155. }
  156. }
  157. return tmp_arr2;
  158. }
  159. function in_array(search, array){
  160. for(var i in array){
  161. if(array[i]==search){
  162. return true;
  163. }
  164. }
  165. return false;
  166. }
  167. function explode(delimiter, string, limit) {
  168. // discuss at: http://phpjs.org/functions/explode/
  169. // original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  170. // example 1: explode(' ', 'Kevin van Zonneveld');
  171. // returns 1: {0: 'Kevin', 1: 'van', 2: 'Zonneveld'}
  172. if (arguments.length < 2 || typeof delimiter === 'undefined' || typeof string === 'undefined') return new Array();
  173. if (delimiter === '' || delimiter === false || delimiter === null) return false;
  174. if (typeof delimiter === 'function' || typeof delimiter === 'object' || typeof string === 'function' || typeof string ===
  175. 'object') {
  176. return {
  177. 0: ''
  178. };
  179. }
  180. if (delimiter === true) delimiter = '1';
  181. // Here we go...
  182. delimiter += '';
  183. string += '';
  184. var s = string.split(delimiter);
  185. if (typeof limit === 'undefined') return s;
  186. // Support for limit
  187. if (limit === 0) limit = 1;
  188. // Positive limit
  189. if (limit > 0) {
  190. if (limit >= s.length) return s;
  191. return s.slice(0, limit - 1)
  192. .concat([s.slice(limit - 1)
  193. .join(delimiter)
  194. ]);
  195. }
  196. // Negative limit
  197. if (-limit >= s.length) return [];
  198. s.splice(s.length + limit);
  199. return s;
  200. }
  201. function implode(glue, pieces) {
  202. // discuss at: http://phpjs.org/functions/implode/
  203. // original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  204. // improved by: Waldo Malqui Silva
  205. // improved by: Itsacon (http://www.itsacon.net/)
  206. // bugfixed by: Brett Zamir (http://brett-zamir.me)
  207. // example 1: implode(' ', ['Kevin', 'van', 'Zonneveld']);
  208. // returns 1: 'Kevin van Zonneveld'
  209. // example 2: implode(' ', {first:'Kevin', last: 'van Zonneveld'});
  210. // returns 2: 'Kevin van Zonneveld'
  211. var i = '',
  212. retVal = '',
  213. tGlue = '';
  214. if (arguments.length === 1) {
  215. pieces = glue;
  216. glue = '';
  217. }
  218. if (typeof pieces === 'object') {
  219. if (Object.prototype.toString.call(pieces) === '[object Array]') {
  220. return pieces.join(glue);
  221. }
  222. for (i in pieces) {
  223. retVal += tGlue + pieces[i];
  224. tGlue = glue;
  225. }
  226. return retVal;
  227. }
  228. return pieces;
  229. }
  230. button = '<div class="replace" style="cursor:pointer;position:absolute;z-index:9999;right:-1px;top:-30px;width:90px;height:30px;line-height:30px;background-color:#15ae68;color:#fff;text-align:center">替换</div>';
  231. layerOpened = false;
  232. notInTopicsIds = "<?php echo $ispTopicsIds;?>";
  233. excludedTopicsIds = notInTopicsIds ? explode(",", notInTopicsIds) : new Array();
  234. alertOpened = false;
  235. function extractTopics(wrongTopicId, topicId, topicType, methodDifficulty, methodId, wrongTopic, layerObj, num){
  236. layer.load(1);
  237. jQuery(layerObj).find(".layui-layer-content").empty();
  238. var excludedTopicsIdsStr = implode(",", excludedTopicsIds);
  239. jQuery.post(
  240. "<?php echo $this->createUrl("print/ajaxgetpapertopicreplace");?>",
  241. {topicId:wrongTopicId, notInTopicsIds: excludedTopicsIdsStr, topicType: topicType, methodDifficulty: methodDifficulty, methodId: methodId, examId: "<?php echo $examId;?>", paperId: "<?php echo $paperId;?>", num: num},
  242. function(data){
  243. data = JSON.parse(data);
  244. if (data.status == 0) {
  245. if(layerOpened && !alertOpened){
  246. layer.open({
  247. content: data.error,
  248. icon: 5,
  249. success: function(){
  250. alertOpened = true;
  251. },
  252. end: function(index){
  253. layer.close(index);
  254. layer.closeAll("page");
  255. alertOpened = false;
  256. }
  257. });
  258. }
  259. layer.closeAll("loading");
  260. return false;
  261. }
  262. html = "";
  263. html += "<div style='padding: 15px 25px;border-width:0px;border-left-width:1px;border-style:solid;border-color:#ccc'><div style='float:left;width:80%;'>"+wrongTopic+"</div><div style='float:left;width:15%;margin-right:20px;float:right;font-size:13px;position:relative;'><a id='reselect' href='javascript:;' style='padding-left:10px !important;padding-right:10px !important;' class='btn-gre bg-hot inline-block replace-question1'>重选"+num+"道题</a></div><div style='clear:both'></div></div>";
  264. for(i in data){
  265. if(typeof(data[i].id) == "undefined")
  266. continue;
  267. num = excludedTopicsIds.length;
  268. if(!in_array(data[i].id, excludedTopicsIds))
  269. excludedTopicsIds[num] = data[i].id;
  270. methodsIds = "";
  271. if(typeof(data[i].specials) != "undefined"){
  272. for(j in data[i].specials){
  273. methodsIds += data[i].specials[j].method_name+" ";
  274. }
  275. }
  276. switch(data[i].difficulty){
  277. case 2:
  278. difficultyName = "中";
  279. break;
  280. case 3:
  281. difficultyName = "难";
  282. break;
  283. default:
  284. difficultyName = "易";
  285. break;
  286. }
  287. options = "";
  288. if(data[i].type_id == 1 && typeof(data[i].items[0].options) != "undefined"){ //单选题
  289. for(j in data[i].items[0].options){
  290. var style = "font-weight:bold;padding-right:10px;";
  291. if(data[i].items[0].options[j].option_correct)
  292. style += "color:red;";
  293. options += '<div><span style="'+style+'">'+numToLetter(j)+'.</span>'+strip_tags(data[i].items[0].options[j].option_content, "<img>")+'</div>';
  294. }
  295. }
  296. kps = "";
  297. for(j in data[i].kps){
  298. kps += data[i].kps[j].kp_name+"; ";
  299. }
  300. if(kps)
  301. kps = kps.substr(0, kps.length - 2);
  302. methods = "";
  303. for(j in data[i].specials){
  304. methods += data[i].specials[j].method_name+"; ";
  305. }
  306. if(methods)
  307. methods = methods.substr(0, methods.length - 2);
  308. html += ''+
  309. '<div class="choose-question" sourceTopicId="'+topicId+'" topicId="'+data[i].id+'" topicType="'+data[i].type_name+'">'+
  310. '<ul class="clearfix">'+
  311. '<li class="fl">题号:'+data[i].id+'</li>'+
  312. '<li class="fl">题型:'+data[i].type_name+'</li>'+
  313. '<li class="fl">难度:'+difficultyName+'</li>'+
  314. '</ul>'+
  315. '<div class="clearfix question-cont questionTitle">'+
  316. '<div>知识点:<span style="color:#FF6600;margin-right:10px">'+kps+'</span>'+
  317. '考点:<span style="color:#FF6600;">'+methods+'</span></div>'+
  318. '<div class="fl btn-gre bg-gray tit">试题内容</div>'+
  319. '<div class="fl cont">'+
  320. strip_tags(data[i].title, "<img>")+
  321. '</div>'+
  322. '<div class="fl cont" style="margin-left:156px">'+
  323. options+
  324. '</div>'+
  325. '</div>'+
  326. '<div style="margin-bottom:20px;background-color:#fff">'+
  327. '<a href="javascript:;" class="btn-gre bg-hot inline-block replace-question">替&nbsp;&nbsp;&nbsp;&nbsp;换</a>'+
  328. '</div>'+
  329. '</div>';
  330. }
  331. jQuery(layerObj).find(".layui-layer-content").html(html);
  332. layer.closeAll("loading");
  333. }
  334. );
  335. }
  336. jQuery(document).ready(function(){
  337. jQuery(document).on("mouseenter", ".topicContent", function(){
  338. if(typeof(timeout) != "undefined"){
  339. clearTimeout(timeout);
  340. }
  341. jQuery(".topicContent, .dxtanswer").css("border-width", "0px");
  342. jQuery(".replace").remove();
  343. jQuery(this).css("border-style", "solid");
  344. jQuery(this).css("border-color", "#15ae68");
  345. jQuery(this).css("border-width", "1px");
  346. jQuery(this).css("border-bottom-width", "0px");
  347. jQuery(this).next(".dxtanswer").css("border-style", "solid");
  348. jQuery(this).next(".dxtanswer").css("border-color", "#15ae68");
  349. jQuery(this).next(".dxtanswer").css("border-width", "1px");
  350. jQuery(this).next(".dxtanswer").css("border-top-width", "0px");
  351. jQuery(this).append(button);
  352. });
  353. jQuery(document).on("mouseleave", ".topicContent", function(){
  354. if(layerOpened)
  355. return false;
  356. var obj = this;
  357. //timeout = setTimeout(function(){
  358. jQuery(obj).css("border-width", "0px");
  359. jQuery(obj).next(".dxtanswer").css("border-width", "0px");
  360. jQuery(obj).find(".replace").remove();
  361. //}, 1500);
  362. });
  363. jQuery(document).on("click", ".replace-question", function(){
  364. var obj = jQuery(this).parent().parent();
  365. var previousTopicId = obj.attr("sourceTopicId");
  366. var newTopicId = obj.attr("topicId");
  367. jQuery.post(
  368. "<?php echo $this->createUrl("print/replaceisptopicact");?>",
  369. {"planId": "<?php echo $planId;?>", "previousTopicId": previousTopicId, "newTopicId": newTopicId},
  370. function(data){
  371. data = JSON.parse(data);
  372. if(data.code == "0"){
  373. msg = data.msg;
  374. icon = 6;
  375. }
  376. else{
  377. msg = "因为以下原因操作失败:<br/>"+data.msg;
  378. icon = 5;
  379. }
  380. layer.open({
  381. content: msg,
  382. icon: icon,
  383. end: function(index){
  384. layer.close(index);
  385. if(data.code == 0){
  386. location.reload();
  387. }
  388. }
  389. });
  390. }
  391. );
  392. });
  393. jQuery("#check").click(function(){
  394. jQuery("form#setchecked").submit();
  395. });
  396. jQuery(document).on("mouseup", ".topicContent .replace", function(){
  397. if(layerOpened)
  398. return false;
  399. notInTopicsIds = "<?php echo $ispTopicsIds;?>";
  400. excludedTopicsIds = notInTopicsIds ? explode(",", notInTopicsIds) : new Array();
  401. var obj = this;
  402. wrongTopic = jQuery(obj).parent().parent().find("span.wrongTopic").html();
  403. wrongTopicId = jQuery(obj).parent().parent().find("span.wrongTopic").attr("topicId");
  404. topicId = jQuery(obj).parent().attr("topicId");
  405. wrongTopicType = jQuery(obj).parent().parent().find("span.wrongTopic").attr("topicType");
  406. wrongTopicMethodDifficulty = jQuery(obj).parent().parent().find("span.wrongTopic").attr("methodDifficulty");
  407. wrongTopicMethodId = jQuery(obj).parent().parent().find("span.wrongTopic").attr("methodId");
  408. examId = "<?php echo $examId;?>";
  409. paperId = "<?php echo $paperId;?>";
  410. notIncludeTopicId = null;
  411. num = 5;
  412. if(!layerOpened){
  413. layer.open({
  414. type: 1,
  415. area: ['900px', '450px'],
  416. title: "替换题目",
  417. content: "&nbsp;",
  418. success: function(index, layerObj){
  419. layerOpened = true;
  420. document.onkeydown = function(){
  421. if (window.event && window.event.keyCode == 13){
  422. window.event.returnValue = false;
  423. }
  424. }
  425. extractTopics(wrongTopicId, topicId, wrongTopicType, wrongTopicMethodDifficulty, wrongTopicMethodId, wrongTopic, index, num);
  426. jQuery(document).on("mouseup", "#reselect", function(){
  427. extractTopics(wrongTopicId, topicId, wrongTopicType, wrongTopicMethodDifficulty, wrongTopicMethodId, wrongTopic, index, num);
  428. });
  429. },
  430. end: function(){
  431. layerOpened = false;
  432. jQuery(".topicContent").css("border-width", "0px");
  433. obj = jQuery(".topicContent");
  434. obj.next(".dxtanswer").css("border-width", "0px");
  435. jQuery(".replace").remove();
  436. }
  437. });
  438. }
  439. });
  440. });
  441. </script>
  442. <style type="text/css">
  443. td.noRecord{padding:50px 0 50px 0 !important;text-align:center !important;}
  444. </style>
  445. <div class="hdcontent mt30">
  446. <div class="hdcontent mb30 bgWhite clearfix">
  447. <input type="hidden" name="exam_id" value="" />
  448. <input type="hidden" name="paper_id" value="" />
  449. <div class="sjcontent pt80">
  450. <h3 class="sjtitle font24 marginNo"><?php echo $isp['plan_name']; ?></h3>
  451. <?php $sectionIndex = 1;foreach ($topicSections AS $topicType => $topicSection){if($topicSection["correct_topics_count"]){$topicIndex = 1;?>
  452. <div class="xttitle"><?php echo Char::numToZh($sectionIndex); ?>、<?php echo $topicType;?></div>
  453. <div class="stlist">
  454. <?php foreach ($topicSection["wrong_topics"] AS $wrongTopic){if(isset($topicSection["correct_topics"][$wrongTopic["id"]])){ ?>
  455. <div class="t dxt">
  456. <div class="dxtquestion">
  457. <?php echo $topicIndex; ?>、<span class="wrongTopic" topicId="<?php echo $wrongTopic["id"];?>" topicType="<?php echo $wrongTopic["type_id"];?>" methodId="<?php echo implode(",", $wrongTopic["methods_ids"]);?>"
  458. methodDifficulty="<?php echo $wrongTopic["difficulty"];?>" topicId="<?php echo $wrongTopic["id"];?>">错题题号<?php echo $wrongTopic["number"];?>
  459. <span style="color:#FF6600;"><?php if(isset($wrongTopic["kps"])){echo "<span style='color:#000'>知识点:</span>{$wrongTopic["kps_names_str"]}";}?>
  460. <?php if(isset($wrongTopic["specials"])){echo "<span style='color:#000'>考点:</span>{$wrongTopic["methods_names_str"]}";}?>
  461. <span style='color:#000'>题型:</span><?php echo $topicType;?></span></span>
  462. <br/><br/>
  463. <?php if(isset($topicSection["correct_topics"][$wrongTopic["id"]])){foreach($topicSection["correct_topics"][$wrongTopic["id"]] as $correctTopic){?>
  464. <div class="dxtquestion topicContent" topicType="<?php echo $correctTopic["type_id"];?>" methodId="<?php echo implode(",", $correctTopic["methods_ids"]);?>"
  465. methodDifficulty="<?php echo $correctTopic["difficulty"];?>" topicId="<?php echo $correctTopic["id"];?>"
  466. style="position:relative;padding-left:24px">[<?php echo $correctTopic["id"];?>]
  467. <span style="color:#FF6600;"><?php if(isset($correctTopic["kps"])){echo "<span style='color:#000'>知识点:</span>{$correctTopic["kps_names_str"]}";}?>
  468. <?php if(isset($correctTopic["specials"])){echo "<span style='color:#000'>考点:</span>{$correctTopic["methods_names_str"]}";}?>
  469. <span style='color:#000'>题型:</span><?php echo $topicType;?></span>
  470. <br/><br/><?php echo $correctTopic["title"];?></div>
  471. <ul class="dxtanswer">
  472. <?php if($topicType === "选择题"){?>
  473. <?php if(isset($correctTopic["items"][0]["options"])){foreach ($correctTopic["items"][0]["options"] AS $optionKey=>$option){ ?>
  474. <?php if ($option["option_correct"]){ ?>
  475. <li class="listType_"><font style="font-weight: bold; color: red;"><?php echo Char::numToLetter($optionKey); ?></font>、<?php echo strip_tags($option["option_content"], '<img>'); ?></li>
  476. <?php }else{ ?>
  477. <li class="listType_"><?php echo Char::numToLetter($optionKey); ?>、<?php echo strip_tags($option["option_content"], '<img>'); ?></li>
  478. <?php } ?>
  479. <?php }} ?>
  480. <?php }?>
  481. </ul>
  482. <?php }}?>
  483. </div>
  484. </div>
  485. <?php $topicIndex++;}}?>
  486. </div>
  487. <?php $sectionIndex++;}} ?>
  488. </div>
  489. </div>
  490. <div class="center mt30 mb30">
  491. <form id="setchecked" action="<?php echo $this->createUrl("print/setprinttranschecked");?>" method="post">
  492. <input type="hidden" name="planId" value="<?php echo $planId;?>" />
  493. <input type="hidden" name="classId" value="<?php echo $isp["class_id"];?>" />
  494. <input type="hidden" name="examId" value="<?php echo $isp["exam_id"];?>" />
  495. <a href="javascript:void(0)" id="check" class="lblButton3 mr100 printer" style="text-decoration:none;">检查完毕</a>
  496. <a href="javascript:history.go(-1)" class="lblButton3 mr100 printer" style="text-decoration:none;">返回</a>
  497. </form>
  498. </div>
  499. <style type="text/css">
  500. ul.liLetter,
  501. ul.liNumber {
  502. list-style: none;
  503. }
  504. ul.liLetter li {
  505. list-style-type: upper-latin;
  506. list-style-position: inside;
  507. float: left;
  508. }
  509. ul.liLetter li.listType_0 {
  510. width: 99%;
  511. }
  512. ul.liLetter li.listType_1 {
  513. width: 24%;
  514. }
  515. ul.liLetter li.listType_2 {
  516. width: 49%;
  517. }
  518. ul.liNumber li {
  519. list-style-type: decimal;
  520. list-style-position: inside;
  521. }
  522. ul.liLetter p,
  523. ul.liNumber p {
  524. display: inline;
  525. }
  526. </style>
  527. <div class="popstjc">
  528. <div class="pctitle">试题纠错</div>
  529. <div class="pccontent">
  530. <p>题目编号:995998</p>
  531. <p><i class="pcmi">*</i>错题类型:<label class="inlineblock mr10"><input type="checkbox"/>题干有误</label><label class="inlineblock mr10"><input type="checkbox"/>答案有误</label><label class="inlineblock mr10"><input type="checkbox"/>解析有误</label></p>
  532. <div class="clearfix">
  533. <span class="pccwms">错误描述:</span>
  534. <div class="pcmsinput">
  535. <textarea></textarea>
  536. <div class="clearfix">
  537. <span class="fl">字0~500</span>
  538. <span class="fr lblButton5">确定</span>
  539. </div>
  540. </div>
  541. </div>
  542. </div>
  543. </div>
  544. <div class="popti" id="difficultyReplace">
  545. <i class="popClose">×</i>
  546. <div class="ctlist">
  547. <div class="fttitle">
  548. <label class="mr30">题号:<span class="topicId"></span></label>
  549. <label class="mr25">题型:<span class="topicTypeName"></span></label>
  550. <label class="mr25">难度:<span class="topicDifficultyName"></span></label>
  551. <label class="mr50">来源:<span class="topicSource"></span></label>
  552. </div>
  553. <div class="ftmake clearfix">
  554. <div class="topicMethods" style="float: left; width: 880px; min-height: 35px;">
  555. </div>
  556. <!--<a href="javascript:void(0)" class="topicViedo button2 fr ml10" >解析视频</a>-->
  557. </div>
  558. <div class="bgdcontent">
  559. <div class="bgdlist clearfix">
  560. <div class="fl bgdListLeft">题目</div>
  561. <div class="bgdListRight topicTitle"></div>
  562. </div>
  563. <div class="bgdlist clearfix">
  564. <div class="fl bgdListLeft">正确答案</div>
  565. <div class="bgdListRight topicAnswer"></div>
  566. </div>
  567. <div class="bgdlist clearfix">
  568. <div class="fl bgdListLeft">试题解析</div>
  569. <div class="bgdListRight topicParse"></div>
  570. </div>
  571. <div class="bgdlist center">
  572. <a href="javascript:void(0)" class="save lblButton3">确定</a>
  573. <a href="javascript:void(0)" class="changeAgin lblButtonLink inlineblock ml30">再换一道题</a>
  574. </div>
  575. </div>
  576. </div>
  577. </div>
  578. <div class="popti" id="answer">
  579. <i class="popClose">×</i>
  580. <div class="ctlist">
  581. <div class="fttitle">
  582. <label class="mr30">题号:<span class="topicId"></span></label>
  583. <label class="mr25">题型:<span class="topicTypeName"></span></label>
  584. <label class="mr25">难度:<span class="topicDifficultyName"></span></label>
  585. <label class="mr50">来源:<span class="topicSource"></span></label>
  586. </div>
  587. <div class="ftmake clearfix">
  588. <div class="topicMethods" style="float: left; width: 880px; min-height: 35px;">
  589. </div>
  590. <a href="javascript:void(0)" class="topicViedo button2 fr ml10">解析视频</a>
  591. </div>
  592. <div class="bgdcontent">
  593. <div class="bgdlist clearfix">
  594. <div class="fl bgdListLeft">题目</div>
  595. <div class="bgdListRight topicTitle"></div>
  596. </div>
  597. <div class="bgdlist clearfix">
  598. <div class="fl bgdListLeft">正确答案</div>
  599. <div class="bgdListRight topicAnswer"></div>
  600. </div>
  601. <div class="bgdlist clearfix">
  602. <div class="fl bgdListLeft">试题解析</div>
  603. <div class="bgdListRight topicParse"></div>
  604. </div>
  605. </div>
  606. </div>
  607. </div>
  608. <div class="popti" id="params"></div>
  609. <div class="popti" id="findReplace">
  610. <div class="fttitle clearfix">
  611. <a href="javascript:void(0)" class="getAgin button2 mr50 fr">再来 <span class="topicNum">1</span> 题</a>
  612. <!--<div class="fl mt10">
  613. <label class="mr25">题型:<span class="topicTypeName"></span></label>
  614. <label class="mr25">难度:<span class="topicDifficultyName"></span></label>
  615. <input type="hidden" id="topicDifficulty" value=""/>
  616. </div>
  617. <div class="fl zjbarRight">
  618. <span id="zjjian" class="zjjian">-</span>
  619. <span class="zjvalue topicDifficultyValue"></span>
  620. <span class="zjjia">+</span>
  621. </div>-->
  622. </div>
  623. <div class="topicList">
  624. </div>
  625. <div class="bgdlist center">
  626. <a href="javascript:void(0)" class="save lblButton3">替换</a>
  627. </div>
  628. </div>
  629. <style type="text/css">
  630. .dialogVideo{
  631. background-color: #efeff4;
  632. border-radius: 5px;
  633. display: none;
  634. height: 560px;
  635. overflow: hidden;
  636. width: 580px;
  637. }
  638. .dialogVideo .datitle{
  639. background-color: #1b1d25;
  640. color: #fff;
  641. line-height: 60px;
  642. position: relative;
  643. text-indent: 20px;
  644. }
  645. .dialogVideo .datitle .iconDaClose{
  646. background-position: -156px 0;
  647. cursor: pointer;
  648. height: 37px;
  649. position: absolute;
  650. right: 12px;
  651. top: 11px;
  652. width: 36px;
  653. }
  654. .dialogVideo .daVideoContent{
  655. height: 365px;
  656. }
  657. </style>
  658. <div class="dialogVideo bgWhite" id="dialogVideo">
  659. <div class="datitle">解析视频<i class="icon iconDaClose"></i></div>
  660. <div class="daVideoContent">
  661. <video src="" allowFullScreen="true" controls="true" width="100%" height="" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash"></video>
  662. </div>
  663. </div>
  664. </div>
  665. <a href="#" id="btn-scroll-up" class="btn-scroll-up btn btn-sm btn-inverse" style="background: #15ae68 none repeat scroll 0 0;border: 1px solid #15ae68;border-radius: 4px;bottom: 5%;font-size: 20px;height: 40px;line-height: 27px;position: fixed;right:1.5%;width: 40px;">
  666. <i class="ace-icon fa fa-angle-double-up icon-only bigger-110"></i>
  667. </a>