chartjs.blade111.php 49 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082
  1. <canvas id="myChart" width="400" height="400"></canvas>
  2. <canvas id="bar" style="width: 505px; display: block; height: 252px;" width="505" height="252"
  3. class="chartjs-render-monitor"></canvas>
  4. <script>
  5. $(function () {
  6. var ctx = document.getElementById("myChart").getContext('2d');
  7. var myChart = new Chart(ctx, {
  8. type: 'bar',
  9. data: {
  10. labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
  11. datasets: [{
  12. label: '# of Votes',
  13. data: [12, 19, 3, 5, 2, 3],
  14. backgroundColor: [
  15. 'rgba(255, 99, 132, 0.2)',
  16. 'rgba(54, 162, 235, 0.2)',
  17. 'rgba(255, 206, 86, 0.2)',
  18. 'rgba(75, 192, 192, 0.2)',
  19. 'rgba(153, 102, 255, 0.2)',
  20. 'rgba(255, 159, 64, 0.2)'
  21. ],
  22. borderColor: [
  23. 'rgba(255,99,132,1)',
  24. 'rgba(54, 162, 235, 1)',
  25. 'rgba(255, 206, 86, 1)',
  26. 'rgba(75, 192, 192, 1)',
  27. 'rgba(153, 102, 255, 1)',
  28. 'rgba(255, 159, 64, 1)'
  29. ],
  30. borderWidth: 1
  31. }]
  32. },
  33. options: {
  34. scales: {
  35. yAxes: [{
  36. ticks: {
  37. beginAtZero: true
  38. }
  39. }]
  40. }
  41. }
  42. });
  43. });
  44. </script>
  45. <div class="row">
  46. <div class="col-md-12">
  47. <div class="callout callout-info">
  48. <h4>Chartjs</h4>
  49. <a href="https://github.com/laravel-admin-extensions/chartjs" target="_blank">https://github.com/laravel-admin-extensions/chartjs</a>
  50. </div>
  51. </div>
  52. </div>
  53. <div class="row">
  54. <div class="col-md-4">
  55. <div class="box">
  56. <div class="box-header with-border">
  57. <h3 class="box-title">Bar chart</h3>
  58. <div class="box-tools pull-right">
  59. </div><!-- /.box-tools -->
  60. </div><!-- /.box-header -->
  61. <div class="box-body" style="display: block;">
  62. <div class="chartjs-size-monitor"
  63. style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: hidden; pointer-events: none; visibility: hidden; z-index: -1;">
  64. <div class="chartjs-size-monitor-expand"
  65. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  66. <div style="position:absolute;width:1000000px;height:1000000px;left:0;top:0"></div>
  67. </div>
  68. <div class="chartjs-size-monitor-shrink"
  69. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  70. <div style="position:absolute;width:200%;height:200%;left:0; top:0"></div>
  71. </div>
  72. </div>
  73. <canvas id="bar" style="width: 505px; display: block; height: 252px;" width="505" height="252"
  74. class="chartjs-render-monitor"></canvas>
  75. <script>
  76. $(function () {
  77. function randomScalingFactor() {
  78. return Math.floor(Math.random() * 100)
  79. }
  80. window.chartColors = {
  81. red: 'rgb(255, 99, 132)',
  82. orange: 'rgb(255, 159, 64)',
  83. yellow: 'rgb(255, 205, 86)',
  84. green: 'rgb(75, 192, 192)',
  85. blue: 'rgb(54, 162, 235)',
  86. purple: 'rgb(153, 102, 255)',
  87. grey: 'rgb(201, 203, 207)'
  88. };
  89. var barChartData = {
  90. labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
  91. datasets: [{
  92. label: 'Dataset 1',
  93. borderColor: window.chartColors.red,
  94. borderWidth: 1,
  95. data: [
  96. randomScalingFactor(),
  97. randomScalingFactor(),
  98. randomScalingFactor(),
  99. randomScalingFactor(),
  100. randomScalingFactor(),
  101. randomScalingFactor(),
  102. randomScalingFactor()
  103. ]
  104. }, {
  105. label: 'Dataset 2',
  106. borderColor: window.chartColors.blue,
  107. borderWidth: 1,
  108. data: [
  109. randomScalingFactor(),
  110. randomScalingFactor(),
  111. randomScalingFactor(),
  112. randomScalingFactor(),
  113. randomScalingFactor(),
  114. randomScalingFactor(),
  115. randomScalingFactor()
  116. ]
  117. }]
  118. };
  119. var ctx = document.getElementById('bar').getContext('2d');
  120. new Chart(ctx, {
  121. type: 'bar',
  122. data: barChartData,
  123. options: {
  124. responsive: true,
  125. legend: {
  126. position: 'top',
  127. },
  128. title: {
  129. display: true,
  130. text: 'Chart.js Bar Chart'
  131. }
  132. }
  133. });
  134. });
  135. </script>
  136. </div><!-- /.box-body -->
  137. </div>
  138. <script>
  139. </script>
  140. </div>
  141. <div class="col-md-4">
  142. <div class="box">
  143. <div class="box-header with-border">
  144. <h3 class="box-title">Scatter chart</h3>
  145. <div class="box-tools pull-right">
  146. </div><!-- /.box-tools -->
  147. </div><!-- /.box-header -->
  148. <div class="box-body" style="display: block;">
  149. <div class="chartjs-size-monitor"
  150. style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: hidden; pointer-events: none; visibility: hidden; z-index: -1;">
  151. <div class="chartjs-size-monitor-expand"
  152. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  153. <div style="position:absolute;width:1000000px;height:1000000px;left:0;top:0"></div>
  154. </div>
  155. <div class="chartjs-size-monitor-shrink"
  156. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  157. <div style="position:absolute;width:200%;height:200%;left:0; top:0"></div>
  158. </div>
  159. </div>
  160. <canvas id="scatter" style="width: 505px; display: block; height: 252px;" width="505" height="252"
  161. class="chartjs-render-monitor"></canvas>
  162. <script>
  163. $(function () {
  164. function randomScalingFactor() {
  165. return Math.floor(Math.random() * 100)
  166. }
  167. window.chartColors = {
  168. red: 'rgb(255, 99, 132)',
  169. orange: 'rgb(255, 159, 64)',
  170. yellow: 'rgb(255, 205, 86)',
  171. green: 'rgb(75, 192, 192)',
  172. blue: 'rgb(54, 162, 235)',
  173. purple: 'rgb(153, 102, 255)',
  174. grey: 'rgb(201, 203, 207)'
  175. };
  176. var ctx = document.getElementById("scatter").getContext('2d');
  177. var scatterChart = new Chart(ctx, {
  178. type: 'scatter',
  179. data: {
  180. datasets: [{
  181. label: 'My First dataset',
  182. borderColor: window.chartColors.red,
  183. data: [{
  184. x: randomScalingFactor(),
  185. y: randomScalingFactor(),
  186. }, {
  187. x: randomScalingFactor(),
  188. y: randomScalingFactor(),
  189. }, {
  190. x: randomScalingFactor(),
  191. y: randomScalingFactor(),
  192. }, {
  193. x: randomScalingFactor(),
  194. y: randomScalingFactor(),
  195. }, {
  196. x: randomScalingFactor(),
  197. y: randomScalingFactor(),
  198. }, {
  199. x: randomScalingFactor(),
  200. y: randomScalingFactor(),
  201. }, {
  202. x: randomScalingFactor(),
  203. y: randomScalingFactor(),
  204. }]
  205. }, {
  206. label: 'My Second dataset',
  207. borderColor: window.chartColors.blue,
  208. data: [{
  209. x: randomScalingFactor(),
  210. y: randomScalingFactor(),
  211. }, {
  212. x: randomScalingFactor(),
  213. y: randomScalingFactor(),
  214. }, {
  215. x: randomScalingFactor(),
  216. y: randomScalingFactor(),
  217. }, {
  218. x: randomScalingFactor(),
  219. y: randomScalingFactor(),
  220. }, {
  221. x: randomScalingFactor(),
  222. y: randomScalingFactor(),
  223. }, {
  224. x: randomScalingFactor(),
  225. y: randomScalingFactor(),
  226. }, {
  227. x: randomScalingFactor(),
  228. y: randomScalingFactor(),
  229. }]
  230. }]
  231. },
  232. options: {
  233. scales: {
  234. xAxes: [{
  235. type: 'linear',
  236. position: 'bottom'
  237. }]
  238. }
  239. }
  240. });
  241. });
  242. </script>
  243. </div><!-- /.box-body -->
  244. </div>
  245. <script>
  246. </script>
  247. </div>
  248. <div class="col-md-4">
  249. <div class="box">
  250. <div class="box-header with-border">
  251. <h3 class="box-title">Line chart</h3>
  252. <div class="box-tools pull-right">
  253. </div><!-- /.box-tools -->
  254. </div><!-- /.box-header -->
  255. <div class="box-body" style="display: block;">
  256. <div class="chartjs-size-monitor"
  257. style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: hidden; pointer-events: none; visibility: hidden; z-index: -1;">
  258. <div class="chartjs-size-monitor-expand"
  259. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  260. <div style="position:absolute;width:1000000px;height:1000000px;left:0;top:0"></div>
  261. </div>
  262. <div class="chartjs-size-monitor-shrink"
  263. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  264. <div style="position:absolute;width:200%;height:200%;left:0; top:0"></div>
  265. </div>
  266. </div>
  267. <canvas id="line" style="width: 505px; display: block; height: 252px;" width="505" height="252"
  268. class="chartjs-render-monitor"></canvas>
  269. <script>
  270. $(function () {
  271. function randomScalingFactor() {
  272. return Math.floor(Math.random() * 100)
  273. }
  274. window.chartColors = {
  275. red: 'rgb(255, 99, 132)',
  276. orange: 'rgb(255, 159, 64)',
  277. yellow: 'rgb(255, 205, 86)',
  278. green: 'rgb(75, 192, 192)',
  279. blue: 'rgb(54, 162, 235)',
  280. purple: 'rgb(153, 102, 255)',
  281. grey: 'rgb(201, 203, 207)'
  282. };
  283. var config = {
  284. type: 'line',
  285. data: {
  286. labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
  287. datasets: [{
  288. label: 'My First dataset',
  289. backgroundColor: window.chartColors.red,
  290. borderColor: window.chartColors.red,
  291. data: [
  292. randomScalingFactor(),
  293. randomScalingFactor(),
  294. randomScalingFactor(),
  295. randomScalingFactor(),
  296. randomScalingFactor(),
  297. randomScalingFactor(),
  298. randomScalingFactor()
  299. ],
  300. fill: false,
  301. }, {
  302. label: 'My Second dataset',
  303. fill: false,
  304. backgroundColor: window.chartColors.blue,
  305. borderColor: window.chartColors.blue,
  306. data: [
  307. randomScalingFactor(),
  308. randomScalingFactor(),
  309. randomScalingFactor(),
  310. randomScalingFactor(),
  311. randomScalingFactor(),
  312. randomScalingFactor(),
  313. randomScalingFactor()
  314. ],
  315. }]
  316. },
  317. options: {
  318. responsive: true,
  319. title: {
  320. display: true,
  321. text: 'Chart.js Line Chart'
  322. },
  323. tooltips: {
  324. mode: 'index',
  325. intersect: false,
  326. },
  327. hover: {
  328. mode: 'nearest',
  329. intersect: true
  330. },
  331. scales: {
  332. xAxes: [{
  333. display: true,
  334. scaleLabel: {
  335. display: true,
  336. labelString: 'Month'
  337. }
  338. }],
  339. yAxes: [{
  340. display: true,
  341. scaleLabel: {
  342. display: true,
  343. labelString: 'Value'
  344. }
  345. }]
  346. }
  347. }
  348. };
  349. var ctx = document.getElementById('line').getContext('2d');
  350. new Chart(ctx, config);
  351. });
  352. </script>
  353. </div><!-- /.box-body -->
  354. </div>
  355. <script>
  356. </script>
  357. </div>
  358. </div>
  359. <div class="row">
  360. <div class="col-md-4">
  361. <div class="box">
  362. <div class="box-header with-border">
  363. <h3 class="box-title">Doughnut chart</h3>
  364. <div class="box-tools pull-right">
  365. </div><!-- /.box-tools -->
  366. </div><!-- /.box-header -->
  367. <div class="box-body" style="display: block;">
  368. <div class="chartjs-size-monitor"
  369. style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: hidden; pointer-events: none; visibility: hidden; z-index: -1;">
  370. <div class="chartjs-size-monitor-expand"
  371. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  372. <div style="position:absolute;width:1000000px;height:1000000px;left:0;top:0"></div>
  373. </div>
  374. <div class="chartjs-size-monitor-shrink"
  375. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  376. <div style="position:absolute;width:200%;height:200%;left:0; top:0"></div>
  377. </div>
  378. </div>
  379. <canvas id="doughnut" style="width: 505px; display: block; height: 252px;" width="505" height="252"
  380. class="chartjs-render-monitor"></canvas>
  381. <script>
  382. $(function () {
  383. function randomScalingFactor() {
  384. return Math.floor(Math.random() * 100)
  385. }
  386. window.chartColors = {
  387. red: 'rgb(255, 99, 132)',
  388. orange: 'rgb(255, 159, 64)',
  389. yellow: 'rgb(255, 205, 86)',
  390. green: 'rgb(75, 192, 192)',
  391. blue: 'rgb(54, 162, 235)',
  392. purple: 'rgb(153, 102, 255)',
  393. grey: 'rgb(201, 203, 207)'
  394. };
  395. var config = {
  396. type: 'doughnut',
  397. data: {
  398. datasets: [{
  399. data: [
  400. randomScalingFactor(),
  401. randomScalingFactor(),
  402. randomScalingFactor(),
  403. randomScalingFactor(),
  404. randomScalingFactor(),
  405. ],
  406. backgroundColor: [
  407. window.chartColors.red,
  408. window.chartColors.orange,
  409. window.chartColors.yellow,
  410. window.chartColors.green,
  411. window.chartColors.blue,
  412. ],
  413. label: 'Dataset 1'
  414. }],
  415. labels: [
  416. 'Red',
  417. 'Orange',
  418. 'Yellow',
  419. 'Green',
  420. 'Blue'
  421. ]
  422. },
  423. options: {
  424. responsive: true,
  425. legend: {
  426. position: 'top',
  427. },
  428. title: {
  429. display: true,
  430. text: 'Chart.js Doughnut Chart'
  431. },
  432. animation: {
  433. animateScale: true,
  434. animateRotate: true
  435. }
  436. }
  437. };
  438. var ctx = document.getElementById('doughnut').getContext('2d');
  439. new Chart(ctx, config);
  440. });
  441. </script>
  442. </div><!-- /.box-body -->
  443. </div>
  444. <script>
  445. </script>
  446. </div>
  447. <div class="col-md-4">
  448. <div class="box">
  449. <div class="box-header with-border">
  450. <h3 class="box-title">Chart.js Combo Bar Line Chart</h3>
  451. <div class="box-tools pull-right">
  452. </div><!-- /.box-tools -->
  453. </div><!-- /.box-header -->
  454. <div class="box-body" style="display: block;">
  455. <div class="chartjs-size-monitor"
  456. style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: hidden; pointer-events: none; visibility: hidden; z-index: -1;">
  457. <div class="chartjs-size-monitor-expand"
  458. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  459. <div style="position:absolute;width:1000000px;height:1000000px;left:0;top:0"></div>
  460. </div>
  461. <div class="chartjs-size-monitor-shrink"
  462. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  463. <div style="position:absolute;width:200%;height:200%;left:0; top:0"></div>
  464. </div>
  465. </div>
  466. <canvas id="bar-line" style="width: 505px; display: block; height: 252px;" width="505" height="252"
  467. class="chartjs-render-monitor"></canvas>
  468. <script>
  469. $(function () {
  470. function randomScalingFactor() {
  471. return Math.floor(Math.random() * 100)
  472. }
  473. window.chartColors = {
  474. red: 'rgb(255, 99, 132)',
  475. orange: 'rgb(255, 159, 64)',
  476. yellow: 'rgb(255, 205, 86)',
  477. green: 'rgb(75, 192, 192)',
  478. blue: 'rgb(54, 162, 235)',
  479. purple: 'rgb(153, 102, 255)',
  480. grey: 'rgb(201, 203, 207)'
  481. };
  482. var chartData = {
  483. labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
  484. datasets: [{
  485. type: 'line',
  486. label: 'Dataset 1',
  487. borderColor: window.chartColors.blue,
  488. borderWidth: 2,
  489. fill: false,
  490. data: [
  491. randomScalingFactor(),
  492. randomScalingFactor(),
  493. randomScalingFactor(),
  494. randomScalingFactor(),
  495. randomScalingFactor(),
  496. randomScalingFactor(),
  497. randomScalingFactor()
  498. ]
  499. }, {
  500. type: 'bar',
  501. label: 'Dataset 2',
  502. backgroundColor: window.chartColors.red,
  503. data: [
  504. randomScalingFactor(),
  505. randomScalingFactor(),
  506. randomScalingFactor(),
  507. randomScalingFactor(),
  508. randomScalingFactor(),
  509. randomScalingFactor(),
  510. randomScalingFactor()
  511. ],
  512. borderColor: 'white',
  513. borderWidth: 2
  514. }, {
  515. type: 'bar',
  516. label: 'Dataset 3',
  517. backgroundColor: window.chartColors.green,
  518. data: [
  519. randomScalingFactor(),
  520. randomScalingFactor(),
  521. randomScalingFactor(),
  522. randomScalingFactor(),
  523. randomScalingFactor(),
  524. randomScalingFactor(),
  525. randomScalingFactor()
  526. ]
  527. }]
  528. };
  529. var ctx = document.getElementById('bar-line').getContext('2d');
  530. new Chart(ctx, {
  531. type: 'bar',
  532. data: chartData,
  533. options: {
  534. responsive: true,
  535. title: {
  536. display: true,
  537. text: 'Chart.js Combo Bar Line Chart'
  538. },
  539. tooltips: {
  540. mode: 'index',
  541. intersect: true
  542. }
  543. }
  544. });
  545. });
  546. </script>
  547. </div><!-- /.box-body -->
  548. </div>
  549. <script>
  550. </script>
  551. </div>
  552. <div class="col-md-4">
  553. <div class="box">
  554. <div class="box-header with-border">
  555. <h3 class="box-title">Chart.js Line Chart - Stacked Area</h3>
  556. <div class="box-tools pull-right">
  557. </div><!-- /.box-tools -->
  558. </div><!-- /.box-header -->
  559. <div class="box-body" style="display: block;">
  560. <div class="chartjs-size-monitor"
  561. style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: hidden; pointer-events: none; visibility: hidden; z-index: -1;">
  562. <div class="chartjs-size-monitor-expand"
  563. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  564. <div style="position:absolute;width:1000000px;height:1000000px;left:0;top:0"></div>
  565. </div>
  566. <div class="chartjs-size-monitor-shrink"
  567. style="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;">
  568. <div style="position:absolute;width:200%;height:200%;left:0; top:0"></div>
  569. </div>
  570. </div>
  571. <canvas id="line-stacked" style="width: 505px; display: block; height: 252px;" width="505"
  572. height="252" class="chartjs-render-monitor"></canvas>
  573. <script>
  574. $(function () {
  575. function randomScalingFactor() {
  576. return Math.floor(Math.random() * 100)
  577. }
  578. window.chartColors = {
  579. red: 'rgb(255, 99, 132)',
  580. orange: 'rgb(255, 159, 64)',
  581. yellow: 'rgb(255, 205, 86)',
  582. green: 'rgb(75, 192, 192)',
  583. blue: 'rgb(54, 162, 235)',
  584. purple: 'rgb(153, 102, 255)',
  585. grey: 'rgb(201, 203, 207)'
  586. };
  587. var config = {
  588. type: 'line',
  589. data: {
  590. labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
  591. datasets: [{
  592. label: 'My First dataset',
  593. borderColor: window.chartColors.red,
  594. backgroundColor: window.chartColors.red,
  595. data: [
  596. randomScalingFactor(),
  597. randomScalingFactor(),
  598. randomScalingFactor(),
  599. randomScalingFactor(),
  600. randomScalingFactor(),
  601. randomScalingFactor(),
  602. randomScalingFactor()
  603. ],
  604. }, {
  605. label: 'My Second dataset',
  606. borderColor: window.chartColors.blue,
  607. backgroundColor: window.chartColors.blue,
  608. data: [
  609. randomScalingFactor(),
  610. randomScalingFactor(),
  611. randomScalingFactor(),
  612. randomScalingFactor(),
  613. randomScalingFactor(),
  614. randomScalingFactor(),
  615. randomScalingFactor()
  616. ],
  617. }, {
  618. label: 'My Third dataset',
  619. borderColor: window.chartColors.green,
  620. backgroundColor: window.chartColors.green,
  621. data: [
  622. randomScalingFactor(),
  623. randomScalingFactor(),
  624. randomScalingFactor(),
  625. randomScalingFactor(),
  626. randomScalingFactor(),
  627. randomScalingFactor(),
  628. randomScalingFactor()
  629. ],
  630. }, {
  631. label: 'My Third dataset',
  632. borderColor: window.chartColors.yellow,
  633. backgroundColor: window.chartColors.yellow,
  634. data: [
  635. randomScalingFactor(),
  636. randomScalingFactor(),
  637. randomScalingFactor(),
  638. randomScalingFactor(),
  639. randomScalingFactor(),
  640. randomScalingFactor(),
  641. randomScalingFactor()
  642. ],
  643. }]
  644. },
  645. options: {
  646. responsive: true,
  647. title: {
  648. display: true,
  649. text: 'Chart.js Line Chart - Stacked Area'
  650. },
  651. tooltips: {
  652. mode: 'index',
  653. },
  654. hover: {
  655. mode: 'index'
  656. },
  657. scales: {
  658. xAxes: [{
  659. scaleLabel: {
  660. display: true,
  661. labelString: 'Month'
  662. }
  663. }],
  664. yAxes: [{
  665. stacked: true,
  666. scaleLabel: {
  667. display: true,
  668. labelString: 'Value'
  669. }
  670. }]
  671. }
  672. }
  673. };
  674. var ctx = document.getElementById('line-stacked').getContext('2d');
  675. new Chart(ctx, config);
  676. });
  677. </script>
  678. </div><!-- /.box-body -->
  679. </div>
  680. <script>
  681. </script>
  682. </div>
  683. </div>
  684. <script data-exec-on-popstate="">
  685. $(function () {
  686. $('.auto-refresh-trigger').off('click').on('click', function () {
  687. if (typeof $.admin.autoRefresh !== 'undefined') {
  688. window.clearInterval($.admin.autoRefresh);
  689. delete ($.admin.autoRefresh)
  690. $(".auto-refresh .interval-text").html('');
  691. }
  692. $.admin.autoRefresh = window.setInterval(function () {
  693. $.admin.reload();
  694. $.admin.toastr.success('刷新成功 !', '', {positionClass: "toast-bottom-right"});
  695. }, $(this).data('interval') * 1000);
  696. $(".auto-refresh .interval-text").html($(this).html());
  697. $(".auto-refresh i").removeClass("fa-play").addClass("fa-pause refresh-pause");
  698. });
  699. $('.auto-refresh').off('click').on('click', '.refresh-pause', function (e) {
  700. e.preventDefault();
  701. $(".auto-refresh i").addClass("fa-play").removeClass("fa-pause refresh-pause");
  702. if (typeof $.admin.autoRefresh !== 'undefined') {
  703. window.clearInterval($.admin.autoRefresh);
  704. delete ($.admin.autoRefresh)
  705. $(".auto-refresh .interval-text").html('');
  706. }
  707. });
  708. var actionResolver = function (response) {
  709. if (typeof response !== 'object') {
  710. return $.admin.swal({type: 'error', title: 'Oops!'});
  711. }
  712. var then = function (then) {
  713. if (then.action == 'refresh') {
  714. $.admin.reload();
  715. }
  716. if (then.action == 'download') {
  717. window.open(then.value, '_blank');
  718. }
  719. if (then.action == 'redirect') {
  720. $.admin.redirect(then.value);
  721. }
  722. };
  723. if (typeof response.swal === 'object') {
  724. var alert = $.admin.swal(response.swal);
  725. if (response.then) {
  726. then(response.then);
  727. }
  728. }
  729. if (typeof response.toastr === 'object') {
  730. $.admin.toastr[response.toastr.type](response.toastr.content, '', response.toastr.options);
  731. if (response.then) {
  732. then(response.then);
  733. }
  734. }
  735. };
  736. var actionCatcher = function (request) {
  737. if (request && typeof request.responseJSON === 'object') {
  738. $.admin.toastr.error(request.responseJSON.message, '', {
  739. positionClass: "toast-bottom-center",
  740. timeOut: 10000
  741. }).css("width", "500px")
  742. }
  743. };
  744. (function ($) {
  745. $('.clear-cache').off('click').on('click', function () {
  746. var data = $(this).data();
  747. Object.assign(data, []);
  748. var process = $.admin.swal({
  749. "type": "question",
  750. "showCancelButton": true,
  751. "showLoaderOnConfirm": true,
  752. "confirmButtonText": "\u63d0\u4ea4",
  753. "cancelButtonText": "\u53d6\u6d88",
  754. "title": "\u786e\u8ba4\u6e05\u9664\u7f13\u5b58",
  755. "text": "",
  756. preConfirm: function (input) {
  757. return new Promise(function (resolve, reject) {
  758. Object.assign(data, {
  759. _token: $.admin.token,
  760. _action: 'App_Admin_Actions_ClearCache',
  761. _input: input,
  762. });
  763. $.ajax({
  764. method: 'POST',
  765. url: 'https://demo.laravel-admin.org/_handle_action_',
  766. data: data,
  767. success: function (data) {
  768. resolve(data);
  769. },
  770. error: function (request) {
  771. reject(request);
  772. }
  773. });
  774. });
  775. }
  776. }).then(function (result) {
  777. if (typeof result.dismiss !== 'undefined') {
  778. return Promise.reject();
  779. }
  780. if (typeof result.status === "boolean") {
  781. var response = result;
  782. } else {
  783. var response = result.value;
  784. }
  785. return response;
  786. });
  787. process.then(actionResolver).catch(actionCatcher);
  788. });
  789. })(jQuery);
  790. $('.email.action').inputmask({"alias": "email"});
  791. $('.created_at.action').parent().datetimepicker({
  792. "format": "YYYY-MM-DD HH:mm:ss",
  793. "locale": "zh-CN",
  794. "allowInputToggle": true
  795. });
  796. $('.count.action').inputmask({"alias": "integer"});
  797. (function ($) {
  798. $('.feedback').off('click').on('click', function () {
  799. var data = $(this).data();
  800. var modalId = $(this).attr('modal');
  801. Object.assign(data, []);
  802. $('#' + modalId).modal('show');
  803. $('#' + modalId + ' form').off('submit').on('submit', function (e) {
  804. e.preventDefault();
  805. var form = this;
  806. var process = new Promise(function (resolve, reject) {
  807. Object.assign(data, {
  808. _token: $.admin.token,
  809. _action: 'App_Admin_Actions_Feedback',
  810. });
  811. var formData = new FormData(form);
  812. for (var key in data) {
  813. formData.append(key, data[key]);
  814. }
  815. $.ajax({
  816. method: 'POST',
  817. url: 'https://demo.laravel-admin.org/_handle_action_',
  818. data: formData,
  819. cache: false,
  820. contentType: false,
  821. processData: false,
  822. success: function (data) {
  823. resolve(data);
  824. if (data.status === true) {
  825. $('#' + modalId).modal('hide');
  826. }
  827. },
  828. error: function (request) {
  829. reject(request);
  830. }
  831. });
  832. });
  833. process.then(actionResolver).catch(actionCatcher);
  834. });
  835. });
  836. })(jQuery);
  837. (function ($) {
  838. $('.system').off('click').on('click', function () {
  839. var data = $(this).data();
  840. var modalId = $(this).attr('modal');
  841. Object.assign(data, []);
  842. $('#' + modalId).modal('show');
  843. $('#' + modalId + ' form').off('submit').on('submit', function (e) {
  844. e.preventDefault();
  845. var form = this;
  846. var process = new Promise(function (resolve, reject) {
  847. Object.assign(data, {
  848. _token: $.admin.token,
  849. _action: 'App_Admin_Actions_System',
  850. });
  851. var formData = new FormData(form);
  852. for (var key in data) {
  853. formData.append(key, data[key]);
  854. }
  855. $.ajax({
  856. method: 'POST',
  857. url: 'https://demo.laravel-admin.org/_handle_action_',
  858. data: formData,
  859. cache: false,
  860. contentType: false,
  861. processData: false,
  862. success: function (data) {
  863. resolve(data);
  864. if (data.status === true) {
  865. $('#' + modalId).modal('hide');
  866. }
  867. },
  868. error: function (request) {
  869. reject(request);
  870. }
  871. });
  872. });
  873. process.then(actionResolver).catch(actionCatcher);
  874. });
  875. });
  876. })(jQuery);
  877. function launchFullscreen(element) {
  878. if (element.requestFullscreen) {
  879. element.requestFullscreen();
  880. } else if (element.mozRequestFullScreen) {
  881. element.mozRequestFullScreen();
  882. } else if (element.msRequestFullscreen) {
  883. element.msRequestFullscreen();
  884. } else if (element.webkitRequestFullscreen) {
  885. element.webkitRequestFullScreen();
  886. }
  887. }
  888. function exitFullscreen() {
  889. if (document.exitFullscreen) {
  890. document.exitFullscreen();
  891. } else if (document.msExitFullscreen) {
  892. document.msExitFullscreen();
  893. } else if (document.mozCancelFullScreen) {
  894. document.mozCancelFullScreen();
  895. } else if (document.webkitExitFullscreen) {
  896. document.webkitExitFullscreen();
  897. }
  898. }
  899. $('.nav-fullscreen').click(function () {
  900. if (document.fullscreenElement) {
  901. exitFullscreen();
  902. } else {
  903. launchFullscreen(document.body)
  904. }
  905. });
  906. $('.container-refresh').off('click').on('click', function () {
  907. $.admin.reload();
  908. $.admin.toastr.success('刷新成功 !', '', {positionClass: "toast-top-center"});
  909. });
  910. });
  911. </script>
  912. <div class="modal" tabindex="-1" role="dialog" id="app-admin-actions-feedback">
  913. <div class="modal-dialog" role="document">
  914. <div class="modal-content">
  915. <div class="modal-header">
  916. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
  917. aria-hidden="true">×</span></button>
  918. <h4 class="modal-title"></h4>
  919. </div>
  920. <form>
  921. <div class="modal-body">
  922. <div class="form-group">
  923. <label>Title</label>
  924. <input type="text" id="title" name="title" value="" class="form-control title action"
  925. placeholder="输入 Title" required="1">
  926. </div>
  927. <div class="form-group">
  928. <label>Email</label>
  929. <input type="email" id="email" name="email" value="" class="form-control email action"
  930. placeholder="输入 Email">
  931. </div>
  932. <div class="form-group">
  933. <label>Content</label>
  934. <textarea name="content" class="form-control content action" rows="5"
  935. placeholder="输入 Content"></textarea>
  936. </div>
  937. <div class="form-group">
  938. <label>Created at</label>
  939. <input style="width: 100%" type="text" id="created_at" name="created_at" value=""
  940. class="form-control created_at action" placeholder="输入 Created at">
  941. </div>
  942. <div class="form-group">
  943. <label>Count</label>
  944. <input style="width: 200px; text-align: right;" type="text" id="count" name="count" value=""
  945. class="form-control count action" placeholder="输入 Count">
  946. </div>
  947. </div>
  948. <div class="modal-footer">
  949. <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
  950. <button type="submit" class="btn btn-primary">提交</button>
  951. </div>
  952. </form>
  953. </div><!-- /.modal-content -->
  954. </div><!-- /.modal-dialog -->
  955. </div><!-- /.modal -->
  956. <div class="modal" tabindex="-1" role="dialog" id="app-admin-actions-system">
  957. <div class="modal-dialog" role="document">
  958. <div class="modal-content">
  959. <div class="modal-header">
  960. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
  961. aria-hidden="true">×</span></button>
  962. <h4 class="modal-title">系统设置</h4>
  963. </div>
  964. <form>
  965. <div class="modal-body">
  966. <div class="form-group">
  967. <label>网站名称</label>
  968. <input type="text" id="name" name="name" value="" class="form-control name action"
  969. placeholder="输入 网站名称">
  970. </div>
  971. <div class="form-group">
  972. <label>网站介绍</label>
  973. <textarea name="desc" class="form-control desc action" rows="5"
  974. placeholder="输入 网站介绍"></textarea>
  975. </div>
  976. </div>
  977. <div class="modal-footer">
  978. <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
  979. <button type="submit" class="btn btn-primary">提交</button>
  980. </div>
  981. </form>
  982. </div><!-- /.modal-content -->
  983. </div><!-- /.modal-dialog -->
  984. </div><!-- /.modal -->
  985. <button id="totop" title="Go to top" style="display: none;"><i class="fa fa-chevron-up"></i></button>
  986. <script>
  987. function LA() {
  988. }
  989. LA.token = "6DHoeKrQDVBPiXSkkFeTA61Dz9CC3NzRHUjCU6E7";
  990. </script>
  991. <!-- REQUIRED JS SCRIPTS -->
  992. <script
  993. src="https://demo.laravel-admin.org/vendor/laravel-admin/laravel-admin.min.js?id=2facd1d125ca925288045ada8858e5a0"></script>
  994. </body>