Skip to content

Commit

Permalink
Merge pull request #1 from zetagate/gh-pages
Browse files Browse the repository at this point in the history
update forked repo from original
  • Loading branch information
beomkm authored May 6, 2017
2 parents 4d78044 + 7881d3d commit 21117c4
Show file tree
Hide file tree
Showing 15 changed files with 996 additions and 856 deletions.
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
# hanpyo



9 changes: 6 additions & 3 deletions canvas.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ var H_AX = 40; //axis
var MGN = 2.5; //margin

var COLOR_BG1 = "#FFFFFF";
var COLOR_BG2 = "#FBFBFF";
var COLOR_BG2 = "#FFFFFF";
var COLOR_LINE = "#000000";
var COLOR_TEXT = "#000000";
var FONT_TEXT = "13px dotum";
Expand Down Expand Up @@ -83,7 +83,7 @@ function drawSelection(ctx, times, thickness)

ctx.beginPath();
ctx.lineWidth = thickness;
ctx.strokeStyle="#2244BB";
ctx.strokeStyle="#F72244";

if(times.length == 0) return;
for(var i=0; i<times.length; i++) {
Expand Down Expand Up @@ -118,6 +118,7 @@ function drawCartList(ctx, db, list)
var ys;
var height;
var tgt = times[j][0];
var proFlag = true;
xs = MGN + W_AX + Math.floor(tgt/100)*W_C;
if(tgt%100<17) {
ys = MGN + H_AX + (tgt%100)*H_C;
Expand All @@ -126,6 +127,7 @@ function drawCartList(ctx, db, list)
else {
ys = MGN + H_AX + 18*H_C;
height = H_C*2;
//proFlag = false;
}

ctx.fillStyle = COLOR_SET[i%COLOR_SET.length];
Expand All @@ -134,7 +136,8 @@ function drawCartList(ctx, db, list)
ctx.strokeStyle="#000000";
ctx.lineWidth=2;
ctx.strokeRect(xs, ys, W_C, height);
var text = sbj[D_KOR] + "\n" + sbj[D_CLS] + " " + sbj[D_PRO];
var text = sbj[D_KOR] + "\n" + sbj[D_CLS];
if(proFlag) text += " " + sbj[D_PRO];
drawTextBox(ctx, text, xs+2, ys+20, W_C-4);
}
}
Expand Down
784 changes: 784 additions & 0 deletions dbt/dbt170228.jsd

Large diffs are not rendered by default.

790 changes: 0 additions & 790 deletions dbt/dbt5.jsd

This file was deleted.

47 changes: 40 additions & 7 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,49 @@
<head>
<title>한표 :: 한기대 시간표 웹</title>

<meta http-equiv="Expires" content="-1"/>
<meta http-equiv="Pragma" content="no-cache"/>
<meta http-equiv="Cache-Control" content="no-cache"/>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="naver-site-verification" content="2e8ddeb3e4d664fdb52d9cff0a6f768b2e060bfa"/>
<meta name="description" content="한기대 수강신청 시간표를 간편하게 짤 수 있는 서비스입니다.">

<link rel="shortcut icon" type="image/png" href="favi.png">
<link rel="stylesheet" type="text/css" href="libs/dhtmlx/skins/web/dhtmlxgrid.css"/>
<link rel="stylesheet" type="text/css" href="main.css"/>


<script src="iecheck.js"></script>
<script src="libs/jquery-3.1.1.slim.min.js"></script>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="libs/dhtmlx/codebase/dhtmlxgrid.js"></script>
<script src="dbt/dbt5.jsd"></script>
<script src="util.js"></script>
<script src="canvas.js"></script>
<script src="index.js"></script>
<script src="dbt/dbt170228.jsd?v=2"></script>
<script src="util.js?v=3"></script>
<script src="canvas.js?v=1"></script>
<script src="index.js?v=6"></script>

<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-72344028-1', 'auto');
ga('send', 'pageview');
</script>

</head>

<body>
<div id="header">
<img src="orange.png" width="140" height="auto">
<h1>공사중입니다. 아직 시간표 안올라옴</h1>
<b>
<br/>현재 데이터는 2017년 <u>3월 3일</u> 데이터입니다.
<br/>사이트 개편작업이 진행중입니다!
</b>
<br/>문의 : 카카오톡 <a href="http://plus.kakao.com/home/@hanpyo">
@hanpyo</a>, [email protected]

</div>

<div id="gridBox">
Expand Down Expand Up @@ -56,12 +78,23 @@ <h1>공사중입니다. 아직 시간표 안올라옴</h1>
<a id="btnSave" download="table.png">
<button type="button">이미지 저장</button></a>
<button type="button" id="btnShare">Facebook 공유</button>
<button type="button" id="btnLinkShare">링크공유</button>
<br>
<canvas id="canvas" width=484 height=645></canvas>
</div>

<div id="footer">
<h1>하단</h1>
<a href="https://github.com/zetagate/hanpyo" target="_blank">
View source code (GNU GPL v3)
</a>
<br/>Powered by Github
<br/><a href="license.html" target="_blank">
About open source license...
</a>
</div>
<div id="svimg">
</div>
<div id="svtxt">
</div>
</body>
</html>
81 changes: 61 additions & 20 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ $(window).on("load", function()
drawFrame(ctx);

$("#btnShare").on("click", onClickBtnShare);
$("#btnLinkShare").on("click", onClickBtnLinkShare);
$("#btnCart").on("click", onClickBtnCart);
$("#btnUncart").on("click", onClickBtnUncart);
$("#btnUncartAll").on("click", onClickBtnUncartAll);
Expand All @@ -60,11 +61,24 @@ $(window).on("load", function()
$("#canvas").on("click", onActCanvas);
$("#canvas").on("contextmenu", onActCanvas);


$("#comboDep").change(onSelectDep);
$("#filter").change(onChangeFilter);

loadCookie();

var variables = window.location.search;
if(variables.indexOf("c=0") == -1)
loadCookie();
else {
var vArr = window.location.search.split(/[&?]/);
for(var i in vArr) {
if(vArr[i].substr(0, 2) == "d=") {
loadCart(vArr[i].substr(2));
break;
}
}

}

});


Expand All @@ -85,7 +99,7 @@ function setSizes()
function initGrid(grid)
{
//grid.setImagePath("dhtmlx/skins/web/imgs/dhxgrid_terrace/");
grid.setHeader("코드,과목명,분반,교수,대상,학점,설계,비고,정원,개설학부");
grid.setHeader("코드,과목명,분반,교수님,대상,학점,비고,정원,신청,개설학부");
grid.setInitWidths("55,150,40,60,70,40,40,40,40,100");
grid.setColAlign("left,left,left,left,left,left,left,left,left");
grid.setColTypes("txt,txt,txt,txt,txt,txt,txt,txt,txt,txt");
Expand Down Expand Up @@ -143,24 +157,32 @@ function addRow(grid, idx, row)
var prf = SUBJECT_DATA[idx][D_PRO]; //professor
var tar = SUBJECT_DATA[idx][D_TAR]; //target
var crd = SUBJECT_DATA[idx][D_CRD]; //credits
var dsg = SUBJECT_DATA[idx][D_DCR]; //design credits
var spe = "";
var cap = SUBJECT_DATA[idx][D_CAP]; //capacity
var dsg = SUBJECT_DATA[idx][D_DCR]; //design credits
var dep = SUBJECT_DATA[idx][D_DEP]; //depeartment


if(SUBJECT_DATA[idx][D_ENG] == "Y" && SUBJECT_DATA[idx][D_ELR] == "Y")
spe += "영+e";
else if(SUBJECT_DATA[idx][D_ENG] == "Y")
spe += "영강";
else if(SUBJECT_DATA[idx][D_ELR] == "Y")
spe += "이러닝";
spe += "e러닝";


grid.addRow(row, [cod, ttk, cls, prf, tar, crd, dsg, spe, cap, dep]);

grid.addRow(row, [cod, ttk, cls, prf, tar, crd, spe, cap, dsg, dep]);
}


function cartItem(pk, grid)
{
var idx = pkToIdx(pk);
if(idx == -1) {
alert("폐강되었거나, 데이터가 잘못된 과목입니다.");
return;
}

for(var i in cartedList) {
if(cartedList[i] == pk) {
Expand Down Expand Up @@ -188,10 +210,8 @@ function cartItem(pk, grid)
}

cartedList.push(pk);
var idx = pkToIdx(pk);
addRow(grid, idx, idx+1);

document.cookie = COOKIE_NAME+"="+serializeCart(cartedList)+";";
addRow(grid, idx, idx+1);
}


Expand All @@ -203,7 +223,7 @@ function uncartItem(pk, grid)
break;
}
}
grid.devareSelectedRows();
grid.deleteSelectedRows();

document.cookie = COOKIE_NAME+"="+serializeCart(cartedList)+";";
}
Expand All @@ -226,6 +246,16 @@ function redrawCanvas(ctx)
}


function loadCart(str)
{
var temp = unserializeCart(str);
for(var j in temp) {
cartItem(temp[j], grid2);
}
redrawCanvas(ctx);
}


function loadCookie()
{
var cookieArr = document.cookie.split(";");
Expand All @@ -237,11 +267,7 @@ function loadCookie()
var cookieStr = cookieArr[i].substr(cookieArr[i].indexOf(COOKIE_NAME)
+ COOKIE_NAME.length+1);
if(cookieStr.length > 0) {
var temp = unserializeCart(cookieStr);
for(var j in temp) {
cartItem(temp[j], grid2);
}
redrawCanvas(ctx);
loadCart(cookieStr);
}
break;
}
Expand All @@ -250,6 +276,7 @@ function loadCookie()




//*********************
// Events
//********************
Expand Down Expand Up @@ -278,8 +305,11 @@ function onSelectCatalog(row, col)

function onDblClickCatalog(row, col)
{
cartItem(idxToPk(row-1), grid2);
var pk = idxToPk(row-1);
cartItem(pk, grid2);
document.cookie = COOKIE_NAME+"="+serializeCart(cartedList)+";";
redrawCanvas(ctx);
send(pk);
}


Expand All @@ -299,17 +329,28 @@ function onDblClickCart(row, col)
function onClickBtnShare()
{
var popup = window.open(
"https://www.facebook.com/sharer/sharer.php?u=v2.hanpyo.com/s?test=3",
"https://www.facebook.com/sharer/sharer.php?u=hanpyo.com/s?d="
+ serializeCart(cartedList),
"pop", "width=600, height=400, scrollbars=no");
}


function onClickBtnLinkShare()
{
$("#svtxt").html("http://hanpyo.com/s?d="+serializeCart(cartedList));
alert("페이지 맨 하단의 주소를 복사하여 공유하세요.");
}


function onClickBtnCart()
{
var sel = Number(grid1.getSelectedId());
if(sel > 0) {
cartItem(idxToPk(sel-1), grid2);
var pk = idxToPk(sel-1);
cartItem(pk, grid2);
document.cookie = COOKIE_NAME+"="+serializeCart(cartedList)+";";
redrawCanvas(ctx);
send(pk);
}
}

Expand Down Expand Up @@ -359,15 +400,15 @@ function onClickBtnEnter()

function onClickBtnInfo()
{
openPopup("info.html", 400, 600);
openPopup("info.html?v=1", 400, 600);
}


function onClickBtnSave()
{
var dt = canvas.toDataURL("image/png");

if ("download" in $("#btnSave").get(0) && !isEdge()) {
if (("download" in $("#btnSave").get(0)) && !isEdge()) {
this.href = dt;
}
else {
Expand Down
7 changes: 6 additions & 1 deletion info.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
</head>
<body>
정보창이다.
설계학점과 영강/이러닝 여부는 학교게시판에 공개되는대로 추가하겠습니다.
<br/>
<br/><b>Contributors</b>
<br/> - B. Y. Kim
<br/> - J. C. Shin
<br/> - Y. G. Kim
</body>
</html>
17 changes: 17 additions & 0 deletions license.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<!DOCTYPE html>
<html>
<head>
<title>Open source license</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
</head>
<body>
<b>Hanpyo</b>
<br/>GPL license
<br/><b>jQuery</b>
<br/>MIT license
<br/><b>DHTMLX</b>
<br/>GPL license
<br/>작성중...
</body>
</html>
4 changes: 4 additions & 0 deletions main.css
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,14 @@ canvas {

#header {
font-family: "맑은 고딕", "Malgun Gothic", "돋움", "Dotum";
font-size: 1.0em;
padding-bottom: 5px;
}

#footer {
clear: left;
padding-top: 8px;
padding-bottom: 8px;
font-family: "맑은 고딕", "Malgun Gothic", "돋움", "Dotum";
}

Expand Down
15 changes: 15 additions & 0 deletions refresh.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
var date = new Date();
var timestamp = Math.floor(date.getTime()/60000);

var pureIndex = window.location.search.indexOf("u=");
var pureQuery;
if(pureIndex == -1)
pureQuery = window.location.search.substr(0, pureIndex-1);


if(window.location.search.indexOf("u="+timestamp) == -1) {
window.location.replace("http://hanpyo.com/?u="+timestamp);
}
else {
history.pushState("","한표 :: 한기대 시간표 웹","http://hanpyo.com");
}
Loading

0 comments on commit 21117c4

Please sign in to comment.