diff --git a/MEMBER.md b/MEMBER.md new file mode 100644 index 00000000..6a10c5da --- /dev/null +++ b/MEMBER.md @@ -0,0 +1,3 @@ +13510015 Wilson_Fonda wilsonfonda@gmail.com wilsonfonda +13510039 Felix_Terahadi 13510039@std.stei.itb.ac.id 13510039 +13510065 Edward_Samuel_Pasaribu edward_samuel_esp@yahoo.com edwardsamuel \ No newline at end of file diff --git a/TodolistHTML/createtugas.html b/TodolistHTML/createtugas.html new file mode 100644 index 00000000..89a54238 --- /dev/null +++ b/TodolistHTML/createtugas.html @@ -0,0 +1,88 @@ + + + + + + Todolist: Create Tugas + + + + + +
+
+ +
+
+

Buat Tugas Baru

+
+
+
    +
  • + +
    + +
    +
  • + +
  • + +
    + +
    +
  • + +
  • + +
    + +
    +
  • + +
  • + +
    + + + +
    +
  • + +
  • + +
    + +
    +
  • + +
  • + +
  • +
+
+
+
+ +
+ + \ No newline at end of file diff --git a/TodolistHTML/dashboard.html b/TodolistHTML/dashboard.html new file mode 100644 index 00000000..aef77527 --- /dev/null +++ b/TodolistHTML/dashboard.html @@ -0,0 +1,127 @@ + + + + + + Todolist + + + + + + + +
+
+

Create new category

+
:
+
+
+
+ Priviledge users:
+ +
+
+
+
+
+
+
+ +
+
+ +
+

Dashboard

+
+

IF3054 - Intelegensia Buatan

+
+ +
Deadline: 22 Februari 2013
+
+ Tags: +
    +
  • AI
  • +
  • Genetics
  • +
  • Algorithm
  • +
+
+
+
+ +
Deadline: 22 Februari 2013
+
+ Tags: +
    +
  • AI
  • +
  • CSP
  • +
+
+
+
+
+

IF3094 - Komunikasi Antar Personal

+
+ +
Deadline: 27 Februari 2013
+
+ Tags: +
    +
  • KAP
  • +
  • Cerita
  • +
+
+
+
+
+

IF3038 - Pemrograman Internet

+
+ +
Deadline: 22 Februari 2013
+
+ Tags: +
    +
  • Internet
  • +
  • HTML
  • +
  • CSS
  • +
  • JS
  • +
+
+
+
+
+
+ +
+ + diff --git a/TodolistHTML/default.css b/TodolistHTML/default.css new file mode 100644 index 00000000..bc8a2eba --- /dev/null +++ b/TodolistHTML/default.css @@ -0,0 +1,323 @@ +*:not(ul) { + padding-top: 0px; + padding-bottom: 0px; + padding-left: 0px; + padding-right: 0px; + margin: 0px; +} + +body { + font-family: "Trebuchet MS", Arial, Helvetica, sans-serif; +} + +img { + border: 0px; +} + +.page { + width: 100%; + min-width: 1017px; +} + +.page .content { + width: 960px; + margin: 0px auto; +} + +nav { + clear: both; + width: 960px; + display: block; + background-color: #5fae53; +} +nav .logo { + width: 190px; + display: inline-block; + padding: 20px 10px 5px 40px; +} +nav .logo img { + margin-bottom: -10px; +} +nav ul { + padding-top: 0px; + padding-bottom: 0px; + padding-left: 0px; + padding-right: 0px; + margin: 0px; + list-style-type:none; + display: inline; +} +nav ul li { + display: inline-block; + border-right: 1px solid #336c2b; + border-left: 1px solid #78c368; +} +nav ul li a:link, nav ul li a:visited { + display: inline-block; + font-weight:bold; + width: 100px; + padding: 30px 10px 30px 10px; + color:#FFFFFF; + text-align: center; + text-decoration: none; + font: Arial; +} +.search { + display: inline-block; + float: right; + padding-top: 21px; + padding-right: 25px; + border: 0px; +} +#searchwrapper { + width:300px; + height:40px; + background-color: white; + padding:0px; + margin:0px; + position:relative; +} +#searchwrapper form { + display: inline; + padding-left: 15px; +} +#searchwrapper input.searchbox { + border:0px; + background-color:transparent; + position:absolute; + top:4px; + left:9px; + width:250px; + height:32px; +} +#searchwrapper input.searchbox:active { + border:0px; +} +.searchbox_submit { + border:0px; + background-color:transparent; + position:absolute; + top:4px; + left:265px; + width:32px; + height:32px; +} + +.sidebar { + width: 180px; + float: left; + margin: 0; + padding: 0; +} +.sidebar ul.nav { + list-style-type: none; + margin: 0; + padding: 0; +} +.sidebar ul.nav li { + list-style: none; + border: 0px; + text-align: left; + margin: 0; +} +.sidebar ul.nav li a { + display: block; + text-decoration: none; + border-right: solid 3px #5fae53; + padding: 5px 12px 5px 3px; + color: #000; +} +.sidebar ul.nav li a:link, .sidebar ul.nav li a:visited { + color: #000; +} +.sidebar ul.nav li a:hover, .sidebar ul.nav li a:active { + border-right: solid 12px #5fae53; + color: #5fae53; +} +.sidebar ul.nav li a:hover { + background-color: #fff; +} +.main { + width: 780px; + float: left; + margin: 0; +} +.inlineblock { + display: inline-block; +} +h1 { + color: #5fae53; + padding: 5px 12px 12px 12px; + margin: 0; +} +h2 { + background-color: #5fae53; + color: #fff; + padding: 8px 12px 4px 12px; + margin: 3px 0 3px 0; +} + +button, .button { + display: inline-block; + background-color: #78c368; + padding: 3px 6px; + font: 80%; + margin: 0; + color: #fff; + border: #499b3d 2px solid; +} + +button:active, button:hover, .button:active, .button:hover { + color: #499b3d; + cursor: pointer; +} + +.tugas { + padding: 12px; + margin: 12px; + border: #5fae53 dashed 2px; + font-size: 80%; + background-color: #e8f3df; +} +.tugas a { + color: #5fae53; + font-size: 120%; + font-weight: bold; + text-decoration: none; +} +.tugas a:hover, .tugas a:active { + color: #499b3d; +} +ul.tag { + display: inline; + list-style-type: none; + margin: 0; + padding: 0; +} +ul.tag li { + list-style: none; + border: 0px; + text-align: left; + margin: 0; + padding: 3px; + background-color: #78c368; + color: #336c2b; + font-weight: bold; + display: inline-block; + font-size: 70%; +} +ul.tag li a { + display: block; + text-decoration: none; + border-right: solid 3px #5fae53; + padding: 5px 12px 5px 3px; + color: #000; +} +#blanket { + background-color: #111; + opacity: 0.65; + position: absolute; + z-index: 9001; + top: 0px; + left: 0px; + width: 100%; + display: none; +} +#popUpDiv { + position: absolute; + width: 600px; + height: 300px; + z-index: 9002; + border: 5px #5fae53 solid; + background-color: #fff; + box-shadow: 0px 0px 20px #000; + display: none; + overflow-x: scroll; +} +.rightalign { + text-align: right; +} +.padding12px { + padding: 0 12px; + margin: 0px; +} +footer.content { + clear: both; + background-color: #5fae53; + width: 960px; + height: 40px; + text-align: center; + color: #FFFFFF; + font-size: 70%; + padding-top: 30px; + top: 15px; +} + +.profile { + background-color: #e8f3df; + border: #5fae53 dashed 2px; + padding: 12px; + margin: 12px; +} +.profiledetail { + position: absolute; + top:165px; + width:500px; + display: inline-block; +} + +.profiledetail a { + color: #5fae53; + font-size: 120%; + font-weight: bold; + text-decoration: none; +} +.profilepict { + position: relative; + width: 200px; + height: 200px; + left: 700px; + border: #5fae53 solid; +} + +.edit_button { + position: relative; + top: 75px; +} + +.page .content .formtugas { + background-color: #e8f3df; + border: #5fae53 dashed 2px; + padding: 12px; + margin: 12px; +} +.rincianLabel { + width: 15%; + display: inline-block; + vertical-align: text-top; +} +.rincianDetail { + width: 85%; + display: inline-block; + vertical-align: text-top; +} + +/* CSS untuk halaman create tugas */ +.main .formtugas { + background-color: #e8f3df; + border: #5fae53 dashed 2px; + padding: 12px; + margin: 12px; +} + + +.formtugas ul.item { + display: inline; + list-style-type: none; + margin:0; +} + +.formtugas ul.item li { + list-style: none; + padding: 3px; +} \ No newline at end of file diff --git a/TodolistHTML/images/a.png b/TodolistHTML/images/a.png new file mode 100644 index 00000000..b08e4bdb Binary files /dev/null and b/TodolistHTML/images/a.png differ diff --git a/TodolistHTML/images/avatar.png b/TodolistHTML/images/avatar.png new file mode 100644 index 00000000..46b85c50 Binary files /dev/null and b/TodolistHTML/images/avatar.png differ diff --git a/TodolistHTML/images/cal.gif b/TodolistHTML/images/cal.gif new file mode 100644 index 00000000..8526cf5d Binary files /dev/null and b/TodolistHTML/images/cal.gif differ diff --git a/TodolistHTML/images/image-1.jpg b/TodolistHTML/images/image-1.jpg new file mode 100644 index 00000000..6bbc9294 Binary files /dev/null and b/TodolistHTML/images/image-1.jpg differ diff --git a/TodolistHTML/images/image-2.jpg b/TodolistHTML/images/image-2.jpg new file mode 100644 index 00000000..ae23ff13 Binary files /dev/null and b/TodolistHTML/images/image-2.jpg differ diff --git a/TodolistHTML/images/image-3.jpg b/TodolistHTML/images/image-3.jpg new file mode 100644 index 00000000..08d64aa6 Binary files /dev/null and b/TodolistHTML/images/image-3.jpg differ diff --git a/TodolistHTML/images/loginbutton.png b/TodolistHTML/images/loginbutton.png new file mode 100644 index 00000000..ee1f13e1 Binary files /dev/null and b/TodolistHTML/images/loginbutton.png differ diff --git a/TodolistHTML/images/logo.png b/TodolistHTML/images/logo.png new file mode 100644 index 00000000..81a1bde8 Binary files /dev/null and b/TodolistHTML/images/logo.png differ diff --git a/TodolistHTML/images/search.png b/TodolistHTML/images/search.png new file mode 100644 index 00000000..776895e0 Binary files /dev/null and b/TodolistHTML/images/search.png differ diff --git a/TodolistHTML/images/signupbutton.png b/TodolistHTML/images/signupbutton.png new file mode 100644 index 00000000..93feaef3 Binary files /dev/null and b/TodolistHTML/images/signupbutton.png differ diff --git a/TodolistHTML/index.css b/TodolistHTML/index.css new file mode 100644 index 00000000..ca3fea9e --- /dev/null +++ b/TodolistHTML/index.css @@ -0,0 +1,130 @@ +* { + padding-top: 0px; + padding-bottom: 0px; + padding-left: 0px; + padding-right: 0px; + margin: 0px; +} +body { + font-family: "Trebuchet MS", Arial, Helvetica, sans-serif; +} +img { + border: 0px; +} +.page { + float: left; + width: 100%; + min-width: 1017px; +} +.page .content { + width: 960px; + margin: 0px auto; +} +nav { + clear: both; + width: 960px; + display: block; + background-color: #5fae53; +} +nav div.logo, #slogan, #loginwrapper { + display: inline-block; +} +nav div.logo { + width: 190px; + padding-top: 30px; + padding-bottom: 30px; + padding-left: 30px; + padding-right: 10px; +} +nav .logo img { + margin-bottom: -5px; +} +#slogan { + width: 300px; + padding-top: 20px; + padding-left: 10px; + color: #ffffff; +} +#loginwrapper { + width: 400px; + padding-left: 5px; +} +#loginwrapper form #login_username, #loginwrapper form #login_password { + display: inline-block; + color: #FFFFFF; + font-size: 70%; +} +#loginwrapper form #login_button { + display: inline-block; + margin-bottom: 0px; + border: none; +} +#login_submit{ + margin-bottom: 0px; +} +.textbox { + height: 20px; + width: 145px; +} +#leftcolumn { + display: inline-block; + width: 600px; + padding-top: 10px; + padding-bottom: 10px; + text-align: center; +} +#rightcolumn { + display: inline-block; + width: 300px; + margin-bottom: -100px; +} +h1, h2 { + color: #5fae53; +} +#slide { + border: 2px solid black; +} +#terms { + font-size: 70%; + color: gray; + padding-top: 5px; + padding-bottom: 5px; +} +.r_button { + background-color: #5fae53; + color: #ffffff; + border: 0px; + width: 100px; +} +.regbox { + width: 340px; + height: 40px; + font-size: 110%; + padding-left: 8px; + padding-right: 8px; +} +#registerwrapper form .wrapper { + padding-top: 5px; + padding-bottom: 5px; +} +#registerwrapper form p.regtext { + color: gray; +} +footer { + clear: both; + background-color: #5fae53; + width: 960px; + height: 40px; + text-align: center; + color: #FFFFFF; + font-size: 70%; +} +button, .button { + display: inline-block; + background-color: #78c368; + padding: 3px 6px; + font: 80%; + margin: 0; + color: #fff; + border: #499b3d 2px solid; +} \ No newline at end of file diff --git a/TodolistHTML/index.html b/TodolistHTML/index.html new file mode 100644 index 00000000..0dc586ad --- /dev/null +++ b/TodolistHTML/index.html @@ -0,0 +1,86 @@ + + + + + + Welcome to Todolist! + + + + + + +
+
+ +
+
+
+

So How Does Our System Work?

+ Let's see the brief explanation from these video below.. +
+
+ + +
+

It's easy, beautiful, important to have, and
the best part is.. it's FREE to use!

+ What are you waiting for?
Join our system and start sharing your to do list right now!
+ If you find any trouble registering, please contact us asap! +
+
+
+

Register Now!

+ It only takes you a few more steps! +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ Pick a date +
+
+

Profile Image:

+
+

By clicking Sign Up, you agree to our Terms and that you have read our Data Use Policy, including our Cookie Use.

+ +
+
+
+
+ +
+ + diff --git a/TodolistHTML/mediaqueries.css b/TodolistHTML/mediaqueries.css new file mode 100644 index 00000000..3000159e --- /dev/null +++ b/TodolistHTML/mediaqueries.css @@ -0,0 +1,243 @@ +/* + Document : mediaqueries + Created on : Feb 21, 2013, 2:01:50 PM + Author : Abraham Krisnanda S + Description: + Purpose of the stylesheet follows. +*/ + +/* tampilan untuk portrait ipad */ +@media screen and (max-width: 768px) { + .page { + min-width: 524px; + } + + .page div.content { + width : 524px; + margin: auto; + } + + .page .content { + margin: 0px auto; + width: 524px; + } + + nav { + width: 100%; + min-width:524px; + } + + nav .logo { + width: 192px; + display: inline-block; + padding: 20px 10px 5px 10px; + } + + nav ul li a:link, nav ul li a:visited { + padding: 30px 0px; + } + + .search { + padding : 21px 0px 21px 0px; + background-color: #5fae53; + width: 524px; + float:none; + } + + #searchwrapper { + width: 500px; + margin-left: 12px; + margin-right: 12px; + } + + #searchwrapper input.searchbox { + width: 435px; + } + + .searchbox_submit { + left:465px; + } + + .sidebar { + width: 524px; + } + + .main { + width: 524px; + } + + footer.content { + width : 524px; + padding-top: 30px; + } + + .profile { + height: 400px; + } + + .profiledetail { + top: 480px; + } + + .profilepict { + left: 0px; + top: 0px; + } + + .edit_button { + top: 12px; + } + + /*index.html*/ + #slogan { + width: 280px; + padding-left: 0px; + } + + #loginwrapper form #login_username, #loginwrapper form #login_password { + display: inline-block; + color: #FFFFFF; + font-size: 70%; + padding-bottom: 7px; + } + + #leftcolumn { + width: 524px; + } + + #rightcolumn { + display: inline-block; + width: 524px; + margin: 0px auto; + } + + #registerwrapper { + text-align: center; + width: 524px; + margin: 0px auto; + } + + #slider img { + width: 524px; + } +} + +@media screen and (max-width:320px) { + .page { + min-width: 240px; + } + + .page div.content { + width : 240px; + margin: auto; + } + + .page .content { + margin: 0px auto; + width: 240px; + } + + nav { + width: 100%; + min-width:240px; + } + + nav .logo { + width: 240px; + display: inline-block; + padding: 20px 0px 10px; + } + + nav ul li a:link, nav ul li a:visited { + padding: 0px; + width: 238px; + margin: 0px; + } + + .search { + padding : 10px 0px; + background-color: #5fae53; + width: 240px; + float:none; + } + + #searchwrapper { + width: 216px; + margin-left: 12px; + margin-right: 12px; + } + + #searchwrapper input.searchbox { + width: 150px; + } + + .searchbox_submit { + left:180px; + } + + .sidebar { + width: 240px; + } + + .main { + width: 240px; + } + + footer.content { + width : 240px; + padding-top: 30px; + padding-bottom: 10px; + } + + .profile { + height: 400px; + } + + .profiledetail { + top: 480px; + font-size: 80%; + width: 200px; + } + + .profilepict { + left: -10px; + top: -10px; + } + + .edit_button { + top: 12px; + } + + /*index.html*/ + #slogan { + width: 280px; + padding-left: 0px; + } + + #loginwrapper form #login_username, #loginwrapper form #login_password { + display: inline-block; + color: #FFFFFF; + font-size: 70%; + padding-bottom: 7px; + } + + #leftcolumn { + width: 524px; + } + + #rightcolumn { + display: inline-block; + width: 524px; + margin: 0px auto; + } + + #registerwrapper { + text-align: center; + width: 524px; + margin: 0px auto; + } + + #slider img { + width: 524px; + } +} \ No newline at end of file diff --git a/TodolistHTML/nbproject/private/private.properties b/TodolistHTML/nbproject/private/private.properties new file mode 100644 index 00000000..00854ab5 --- /dev/null +++ b/TodolistHTML/nbproject/private/private.properties @@ -0,0 +1,5 @@ +copy.src.files=false +copy.src.target= +index.file=index.php +run.as=LOCAL +url=http://localhost/Progin-1/ diff --git a/TodolistHTML/nbproject/private/private.xml b/TodolistHTML/nbproject/private/private.xml new file mode 100644 index 00000000..47509625 --- /dev/null +++ b/TodolistHTML/nbproject/private/private.xml @@ -0,0 +1,4 @@ + + + + diff --git a/TodolistHTML/nbproject/project.properties b/TodolistHTML/nbproject/project.properties new file mode 100644 index 00000000..67f3fcd0 --- /dev/null +++ b/TodolistHTML/nbproject/project.properties @@ -0,0 +1,7 @@ +include.path=${php.global.include.path} +php.version=PHP_54 +source.encoding=UTF-8 +src.dir=. +tags.asp=false +tags.short=true +web.root=. diff --git a/TodolistHTML/nbproject/project.xml b/TodolistHTML/nbproject/project.xml new file mode 100644 index 00000000..5c58ae78 --- /dev/null +++ b/TodolistHTML/nbproject/project.xml @@ -0,0 +1,9 @@ + + + org.netbeans.modules.php.project + + + Progin-1 + + + diff --git a/TodolistHTML/profile.html b/TodolistHTML/profile.html new file mode 100644 index 00000000..e356c19b --- /dev/null +++ b/TodolistHTML/profile.html @@ -0,0 +1,104 @@ + + + + + + + + Todolist: User Profile + + +
+
+ +
+
+

User Profile

+
+
+
Edward Wilson Terahadi @edwt
+
E-mail: 13510xxx@std.stei.itb.ac.id
+
Born date: 16 Februari 2013
+
Major: Teknik Informatika
+
Last login: Sabtu, 16 Februari 2013, 17:01 WIT
+
+
+
Edo Thobi Bram
+
+

Activity

+

Kategori 1

+
+
Tugas Pertama
+
Submission: 22 April 2012 17:00 WIT
+
+ Tags: +
    +
  • Tag
  • +
  • Tag
  • +
  • Tag
  • +
  • Tag
  • +
+
+
+
+
Tugas Pertama
+
Submission: 22 April 2012 17:00 WIT
+
+ Tags: +
    +
  • Tag
  • +
  • Tag
  • +
  • Tag
  • +
  • Tag
  • +
+
+
+ +

Kategori 4

+
+
Tugas Pertama
+
Submission: 22 April 2012 17:00 WIT
+
+ Tags: +
    +
  • Tag
  • +
  • Tag
  • +
  • Tag
  • +
  • Tag
  • +
+
+
+
+
Tugas Pertama
+
Submission: 22 April 2012 17:00 WIT
+
+ Tags: +
    +
  • Tag
  • +
  • Tag
  • +
  • Tag
  • +
  • Tag
  • +
+
+
+
+ +
+ + diff --git a/TodolistHTML/scripts/dashboard.js b/TodolistHTML/scripts/dashboard.js new file mode 100644 index 00000000..ebbe0a86 --- /dev/null +++ b/TodolistHTML/scripts/dashboard.js @@ -0,0 +1,75 @@ +var nKategori = 3; +var selectedIndex = -1; + +function updateAddButtonVisibility() { + var elmt = document.getElementById('addTask'); + if (selectedIndex < 0) { + elmt.style.display = 'none'; + } else { + elmt.style.display = 'inline-block'; + } +} + +function NewKategori() { + var element = document.getElementById('txtNewKategori'); + + var newitemK = '
  • ' + element.value + '
  • ' + var currentK = document.getElementById('Kategori'); + currentK.innerHTML += newitemK; + + + if (selectedIndex < 0) { + var newitemC = '

    ' + element.value + '

    ' + var currentC = document.getElementById('listTugas'); + currentC.innerHTML += newitemC; + } else { + var newitemC1 = '' + var currentC1 = document.getElementById('listTugas'); + currentC1.innerHTML += newitemC1; + } + + nKategori++; + return false; +} + +function NewTask() { + if (selectedIndex == -1) { + alert("Please select the categori first, by click on left sidebar.", "Todolist"); + } else { + window.location = "createtugas.html"; + } +} + +function RemoveKategoriFilter(elmt) { + selectedIndex = -1; + for (var i=0; i=0) && (parseInt(intMonth,10)<12)) + Cal.Month=intMonth; + //end parse month + //parse Date + if ((parseInt(strDate,10)<=Cal.GetMonDays()) && (parseInt(strDate,10)>=1)) + Cal.Date=strDate; + //end parse Date + //parse year + strYear=exDateTime.substring(Sp2+1,Sp2+5); + YearPattern=/^\d{4}$/; + if (YearPattern.test(strYear)) + Cal.Year=parseInt(strYear,10); + //end parse year + //parse time + if (Cal.ShowTime==true) + { + tSp1=exDateTime.indexOf(":",0) + tSp2=exDateTime.indexOf(":",(parseInt(tSp1)+1)); + strHour=exDateTime.substring(tSp1,(tSp1)-2); + Cal.SetHour(strHour); + strMinute=exDateTime.substring(tSp1+1,tSp2); + Cal.SetMinute(strMinute); + strSecond=exDateTime.substring(tSp2+1,tSp2+3); + Cal.SetSecond(strSecond); + } + } + winCal=window.open("","DateTimePicker","toolbar=0,status=0,menubar=0,fullscreen=no,width=195,height=245,resizable=0,top="+cnTop+",left="+cnLeft); + docCal=winCal.document; + RenderCal(); +} + +function RenderCal() +{ + var vCalHeader; + var vCalData; + var vCalTime; + var i; + var j; + var SelectStr; + var vDayCount=0; + var vFirstDay; + + docCal.open(); + docCal.writeln(""+WindowTitle+""); + docCal.writeln(""); + docCal.writeln("
    "); + + vCalHeader="\n"; + //Month Selector + vCalHeader+="\n\n"; + vCalHeader+=""; + //Calendar header shows Month and Year + if (ShowMonthYear) + vCalHeader+="\n"; + //Week day header + vCalHeader+=""; + for (i=0;i<7;i++) + { + vCalHeader+=""; + } + vCalHeader+=""; + docCal.write(vCalHeader); + + //Calendar detail + CalDate=new Date(Cal.Year,Cal.Month); + CalDate.setDate(1); + vFirstDay=CalDate.getDay(); + vCalData=""; + for (i=0;i\n"; + } + } + docCal.writeln(vCalData); + //Time picker + if (Cal.ShowTime) + { + var showHour; + showHour=Cal.getShowHour(); + vCalTime="\n\n"; + docCal.write(vCalTime); + } + //end time picker + docCal.writeln("\n
    "; + //Year selector + vCalHeader+="\n
    \n"; + vCalHeader+="< "+Cal.Year+" >
    "+Cal.GetMonthName(ShowLongMonth)+" "+Cal.Year+"
    "+WeekDayName[i].substr(0,WeekChar)+"
    "; + vCalTime+=""; + vCalTime+=" : "; + vCalTime+=""; + vCalTime+=" : "; + vCalTime+=""; + if (TimeMode==12) + { + var SelectAm =(parseInt(Cal.Hours,10)<12)? "Selected":""; + var SelectPm =(parseInt(Cal.Hours,10)>=12)? "Selected":""; + + vCalTime+=""; + } + vCalTime+="\n
    "); + docCal.writeln("
    "); + docCal.close(); +} + +function GenCell(pValue,pHighLight,pColor)//Generate table cell with value +{ + var PValue; + var PCellStr; + var vColor; + var vHLstr1;//HighLight string + var vHlstr2; + var vTimeStr; + + if (pValue==null) + PValue=""; + else + PValue=pValue; + + if (pColor!=null) + vColor="bgcolor=\""+pColor+"\""; + else + vColor=""; + if ((pHighLight!=null)&&(pHighLight)) + {vHLstr1="color='red'>";vHLstr2="";} + else + {vHLstr1=">";vHLstr2="";} + + if (Cal.ShowTime) + { + vTimeStr="winMain.document.getElementById('"+Cal.Ctrl+"').value+=' '+"+"winMain.Cal.getShowHour()"+"+':'+"+"winMain.Cal.Minutes"+"+':'+"+"winMain.Cal.Seconds"; + if (TimeMode==12) + vTimeStr+="+' '+winMain.Cal.AMorPM"; + } + else + vTimeStr=""; + PCellStr=""+PValue+""+vHLstr2+""; + return PCellStr; +} + +function Calendar(pDate,pCtrl) +{ + //Properties + this.Date=pDate.getDate();//selected date + this.Month=pDate.getMonth();//selected month number + this.Year=pDate.getFullYear();//selected year in 4 digits + this.Hours=pDate.getHours(); + + if (pDate.getMinutes()<10) + this.Minutes="0"+pDate.getMinutes(); + else + this.Minutes=pDate.getMinutes(); + + if (pDate.getSeconds()<10) + this.Seconds="0"+pDate.getSeconds(); + else + this.Seconds=pDate.getSeconds(); + + this.MyWindow=winCal; + this.Ctrl=pCtrl; + this.Format="ddMMyyyy"; + this.Separator=DateSeparator; + this.ShowTime=false; + if (pDate.getHours()<12) + this.AMorPM="AM"; + else + this.AMorPM="PM"; +} + +function GetMonthIndex(shortMonthName) +{ + for (i=0;i<12;i++) + { + if (MonthName[i].substring(0,3).toUpperCase()==shortMonthName.toUpperCase()) + { return i;} + } +} +Calendar.prototype.GetMonthIndex=GetMonthIndex; + +function IncYear() +{ Cal.Year++;} +Calendar.prototype.IncYear=IncYear; + +function DecYear() +{ Cal.Year--;} +Calendar.prototype.DecYear=DecYear; + +function SwitchMth(intMth) +{ Cal.Month=intMth;} +Calendar.prototype.SwitchMth=SwitchMth; + +function SetHour(intHour) +{ + var MaxHour; + var MinHour; + if (TimeMode==24) + { MaxHour=23;MinHour=0} + else if (TimeMode==12) + { MaxHour=12;MinHour=1} + else + alert("TimeMode can only be 12 or 24"); + var HourExp=new RegExp("^\\d\\d$"); + if (HourExp.test(intHour) && (parseInt(intHour,10)<=MaxHour) && (parseInt(intHour,10)>=MinHour)) + { + if ((TimeMode==12) && (Cal.AMorPM=="PM")) + { + if (parseInt(intHour,10)==12) + Cal.Hours=12; + else + Cal.Hours=parseInt(intHour,10)+12; + } + else if ((TimeMode==12) && (Cal.AMorPM=="AM")) + { + if (intHour==12) + intHour-=12; + Cal.Hours=parseInt(intHour,10); + } + else if (TimeMode==24) + Cal.Hours=parseInt(intHour,10); + } +} +Calendar.prototype.SetHour=SetHour; + +function SetMinute(intMin) +{ + var MinExp=new RegExp("^\\d\\d$"); + if (MinExp.test(intMin) && (intMin<60)) + Cal.Minutes=intMin; +} +Calendar.prototype.SetMinute=SetMinute; + +function SetSecond(intSec) +{ + var SecExp=new RegExp("^\\d\\d$"); + if (SecExp.test(intSec) && (intSec<60)) + Cal.Seconds=intSec; +} +Calendar.prototype.SetSecond=SetSecond; + +function SetAmPm(pvalue) +{ + this.AMorPM=pvalue; + if (pvalue=="PM") + { + this.Hours=(parseInt(this.Hours,10))+12; + if (this.Hours==24) + this.Hours=12; + } + else if (pvalue=="AM") + this.Hours-=12; +} +Calendar.prototype.SetAmPm=SetAmPm; + +function getShowHour() +{ + var finalHour; + if (TimeMode==12) + { + if (parseInt(this.Hours,10)==0) + { + this.AMorPM="AM"; + finalHour=parseInt(this.Hours,10)+12; + } + else if (parseInt(this.Hours,10)==12) + { + this.AMorPM="PM"; + finalHour=12; + } + else if (this.Hours>12) + { + this.AMorPM="PM"; + if ((this.Hours-12)<10) + finalHour="0"+((parseInt(this.Hours,10))-12); + else + finalHour=parseInt(this.Hours,10)-12; + } + else + { + this.AMorPM="AM"; + if (this.Hours<10) + finalHour="0"+parseInt(this.Hours,10); + else + finalHour=this.Hours; + } + } + else if (TimeMode==24) + { + if (this.Hours<10) + finalHour="0"+parseInt(this.Hours,10); + else + finalHour=this.Hours; + } + return finalHour; +} +Calendar.prototype.getShowHour=getShowHour; + +function GetMonthName(IsLong) +{ + var Month=MonthName[this.Month]; + if (IsLong) + return Month; + else + return Month.substr(0,3); +} +Calendar.prototype.GetMonthName=GetMonthName; + +function GetMonDays()//Get number of days in a month +{ + var DaysInMonth=[31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; + if (this.IsLeapYear()) + { + DaysInMonth[1]=29; + } + return DaysInMonth[this.Month]; +} +Calendar.prototype.GetMonDays=GetMonDays; + +function IsLeapYear() +{ + if ((this.Year%4)==0) + { + if ((this.Year%100==0) && (this.Year%400)!=0) + { + return false; + } + else + { + return true; + } + } + else + { + return false; + } +} +Calendar.prototype.IsLeapYear=IsLeapYear; + +function FormatDate(pDate) +{ + if (this.Format.toUpperCase()=="DDMMYYYY") + return (pDate+DateSeparator+(this.Month+1)+DateSeparator+this.Year); + else if (this.Format.toUpperCase()=="DDMMMYYYY") + return (pDate+DateSeparator+this.GetMonthName(false)+DateSeparator+this.Year); + else if (this.Format.toUpperCase()=="MMDDYYYY") + return ((this.Month+1)+DateSeparator+pDate+DateSeparator+this.Year); + else if (this.Format.toUpperCase()=="MMMDDYYYY") + return (this.GetMonthName(false)+DateSeparator+pDate+DateSeparator+this.Year); +} +Calendar.prototype.FormatDate=FormatDate; \ No newline at end of file diff --git a/TodolistHTML/scripts/formtugas.js b/TodolistHTML/scripts/formtugas.js new file mode 100644 index 00000000..62c90dff --- /dev/null +++ b/TodolistHTML/scripts/formtugas.js @@ -0,0 +1,45 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +var ck_taskname = /[a-zA-Z0-9 ]{1,25}$/; +function validate(form) { + var taskname = form.namatask.value; + var attachment = form.attachment.value; + var deadline = form.deadline.value; + var assignee = form.assignee.value; + var tag = form.tag.value; + var errors = []; + + if(!ck_taskname.test(taskname)) { + errors[errors.length] = "Nama tugas tidak valid."; + } + + if (assignee=="") { + errors[errors.length] = "Assignee tidak valid."; + } + + if (tag=="") { + errors[errors.length] = "Tag tidak valid."; + } + + if (deadline=="") { + errors[errors.length] = "Deadline belum diisi."; + } + if (errors.length > 0) { + reportErrors(errors); + return false; + } + + return true; +} + +function reportErrors(errors){ + var msg = "Please Enter Valide Data...\n"; + for (var i = 0; i()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; + + isValidEmail = true; + if (!regex.test(email.value)) { + isValidEmail = false; + } + + var pwd = document.getElementById("pwd"); + if (email.value == pwd.value) { + isValidEmail = false; + } + + if (isValidEmail) { + email.style.border = '2px #5fae53 solid'; + } else { + email.style.border = '2px red solid'; + } + + changeRegister(); +} + + +function validateBday() { + var bday = document.getElementById("bday"); + var regex = /^[0-9]{1,2}-[0-9]{1,2}-[0-9]{4,4}$/g; + + isValidBday = true; + if (!regex.test(bday.value)) { + isValidBday = false; + } + + if (isValidBday) { + if (bday.value.substr(bday.value.length - 4) < 1955) { + isValidBday = false; + } + } + + if (isValidBday) { + bday.style.border = '2px #5fae53 solid'; + } else { + bday.style.border = '2px red solid'; + } + + changeRegister(); +} + +function validateAvatar() { + var xAvatar = document.getElementById("ava"); + var str1=/\.jpg/g; + var str2=/\.jpeg/g; + + isValidPhoto = true; + + if (!str1.test(xAvatar.value) && !str2.test(xAvatar.value)) { + isValidPhoto = false; + } + + if (isValidPhoto) { + xAvatar.style.border = '2px #5fae53 solid'; + } else { + xAvatar.style.border = '2px red solid'; + } + + changeRegister(); +} + +function bdayPicker() { + NewCal('bday', 'ddmmyyyy'); + return false; +} + +function validateLogin() +{ + var xUsername=document.forms["login"]["uname"].value; + var xPassword=document.forms["login"]["pwd"].value; + if (xUsername == "admin" && xPassword == "adminpwd") { + return true; + } else { + alert("Username and password combination doesn't match or couldn't be found"); + return false; + } +} + +function validateForm() +{ + var xUsername=document.forms["registration"]["uname"].value; + if (xUsername.length < 5) + { + alert("User name must be filled out with at least 5 characters."); + return false; + } + var xPassword=document.forms["registration"]["pwd"].value; + if ((xPassword.length < 8) || (xPassword == xUsername)) + { + alert("Password must be filled out with at least 8 characters and must be different with username."); + return false; + } + var xPasswordConfirm=document.forms["registration"]["pwd_confirm"].value; + if (xPasswordConfirm != xPassword) + { + alert("Your password confirmation doesn't match."); + return false; + } + var xName=document.forms["registration"]["name"].value; + var flag = 0; + var i=0; + while (i=xEmail.length) + { + alert("Not a valid e-mail address."); + return false; + } + //var xDate=document.forms["registration"]["bday"].value.; + //var n = xDate.split("-"); + //var date = parseInt(n[0]); + //if (date < 1955) { + // alert(date); + // return false; + //} + var xAvatar=document.forms["registration"]["ava"].value; + var str1=/\.jpg/g; + var str2=/\.jpeg/g; + + var result=str1.test(xAvatar); + if (result==1) + { + alert("Registration success!"); + return true; + } else { + result=str2.test(xAvatar); + if (result==1) { + alert("Registration success!"); + return true; + } else { + alert("Use jpg or jpeg file only!"); + return false; + } + } +} + +function register() { + window.location.replace("dashboard.html"); +} \ No newline at end of file diff --git a/TodolistHTML/scripts/popup.js b/TodolistHTML/scripts/popup.js new file mode 100644 index 00000000..1a8bf6d4 --- /dev/null +++ b/TodolistHTML/scripts/popup.js @@ -0,0 +1,66 @@ +/** + * Display an HTML Pop-Up + * Original Soruce: http://www.pat-burt.com/web-development/how-to-do-a-css-popup-without-opening-a-new-window/ + * Modified for College Task (IF3094 - Pemrograman Internet) + * IF-ITB 2013 + */ + +function toggle_display(elmt_id) { + var element = document.getElementById(elmt_id); + if (element.style.display == 'none' || element.style.display == '') { + element.style.display = 'block'; + } else { + element.style.display = 'none'; + } +} + +function blanket_size(content, blanket, height) { + if (typeof window.innerWidth != 'undefined') { + viewportheight = window.innerHeight; + } else { + viewportheight = document.documentElement.clientHeight; + } + if ((viewportheight > document.body.parentNode.scrollHeight) && (viewportheight > document.body.parentNode.clientHeight)) { + blanket_height = viewportheight; + } else { + if (document.body.parentNode.clientHeight > document.body.parentNode.scrollHeight) { + blanket_height = document.body.parentNode.clientHeight; + } else { + blanket_height = document.body.parentNode.scrollHeight; + } + } + var blanket_elmnt = document.getElementById(blanket); + blanket_elmnt.style.height = blanket_height + 'px'; + var popUpDiv = document.getElementById(content); + popUpDiv_height=(blanket_height-height)/2; + popUpDiv.style.top = popUpDiv_height + 'px'; +} + +function popup_pos(content, width) { + if (typeof window.innerWidth != 'undefined') { + viewportwidth = window.innerHeight; + } else { + viewportwidth = document.documentElement.clientHeight; + } + if ((viewportwidth > document.body.parentNode.scrollWidth) && (viewportwidth > document.body.parentNode.clientWidth)) { + window_width = viewportwidth; + } else { + if (document.body.parentNode.clientWidth > document.body.parentNode.scrollWidth) { + window_width = document.body.parentNode.clientWidth; + } else { + window_width = document.body.parentNode.scrollWidth; + } + } + var popUpDiv = document.getElementById(content); + window_width=(window_width-width)/2; + popUpDiv.style.left = window_width + 'px'; +} + +function popup(content, blanket, height, width) { + blanket_size(content, blanket, height); + popup_pos(content, width); + toggle_display(blanket); + toggle_display(content); + + return false; +} \ No newline at end of file diff --git a/TodolistHTML/scripts/tugas.js b/TodolistHTML/scripts/tugas.js new file mode 100644 index 00000000..24ee6236 --- /dev/null +++ b/TodolistHTML/scripts/tugas.js @@ -0,0 +1,121 @@ +/* + * + */ +var tagsTugas = new Array(); +var assigneesTugas = new Array(); + +function onload() { + var name = getQueryParameter('name'); + if (name == null) { + name = 'Tugas 1'; + } + document.getElementById('namaTugas').innerHTML = '' + decodeURIComponent(name) + ''; + + var deadline = getQueryParameter('deadline'); + if (deadline == null) { + deadline = '2013-02-22'; + } + document.getElementById('deadlineDisplayDiv').innerHTML = decodeURIComponent(deadline); + + var tags = getQueryParameter('tags'); + var temp = tags.split(","); + tagsTugas.length = 0; + temp.forEach(function(obj) { + tagsTugas.push(obj.trim()); + }); + writeTags(); + + assigneesTugas.push("Benny Wijaya"); + assigneesTugas.push("Florentina"); + writeAssignees(); +} + +function addKomentar() { + var now = new Date(); + var komentar_div = document.getElementById("komentar"); + komentar_div.innerHTML += "WhoAmI - " + now.toString("dd MMMM yyyy hh:mm") + "
    " + document.getElementById('txtKomentar').value + "

    "; + + return false; +} + +function writeTags() { + var tagsList = document.getElementById("tagsList"); + var tags = document.getElementById("tags"); + tags.value = ''; + + tagsList.innerHTML = ''; + for (var i=0; i "; + + if (i > 0) { + tags.value += ', '; + } + tags.value += tagsTugas[i]; + } +} + +function saveTags() { + var tags = document.getElementById("tags"); + var temp = tags.value.split(","); + tagsTugas.length = 0; + temp.forEach(function(obj) { + tagsTugas.push(obj.trim()); + }); + writeTags(); + + return false; +} + +function writeAssignees() { + var assigneesList = document.getElementById("assigneesList"); + + assigneesList.innerHTML = ''; + for (var i=0; i "; + } +} + +function addAssignees() { + var newAssignee = document.getElementById("assignee"); + var assigneesList = document.getElementById("assigneesList"); + + if (newAssignee.value == "") { + alert("Nama harus dimasukkan"); + return false; + } + + assigneesList.innerHTML += "
  • " + newAssignee.value + "
  • "; + newAssignee.value = ""; + + return false; +} + +function saveTugas() { + document.getElementById("tagsEditDiv").style.display = "none"; + document.getElementById("assigneeEditDiv").style.display = "none"; + document.getElementById("deadlineEditDiv").style.display = "none"; + document.getElementById("doneButton").style.display = "none"; + document.getElementById("deadlineDisplayDiv").style.display = "block"; + document.getElementById("tagsDisplayDiv").style.display = "block"; + document.getElementById("editButton").style.display = "block"; + + var deadlineDisplay = document.getElementById("deadlineDisplayDiv"); + var deadlineTextBox = document.getElementById("deadline"); + deadlineDisplay.innerHTML = deadlineTextBox.value; + + saveTags(); + + return false; +} + +function editTugas() { + document.getElementById("tagsEditDiv").style.display = "block"; + document.getElementById("assigneeEditDiv").style.display = "block"; + document.getElementById("deadlineEditDiv").style.display = "block"; + document.getElementById("doneButton").style.display = "block"; + document.getElementById("deadlineDisplayDiv").style.display = "none"; + document.getElementById("tagsDisplayDiv").style.display = "none"; + document.getElementById("editButton").style.display = "none"; + + return false; +} diff --git a/TodolistHTML/styles/tugas.css b/TodolistHTML/styles/tugas.css new file mode 100644 index 00000000..013f9685 --- /dev/null +++ b/TodolistHTML/styles/tugas.css @@ -0,0 +1,6 @@ +#tagsEditDiv, #assigneeEditDiv, #deadlineEditDiv, #doneButton { + display: none; +} +#deadlineDisplayDiv, #tagsDisplayDiv, #editButton { + display: block; +} diff --git a/TodolistHTML/tugas.html b/TodolistHTML/tugas.html new file mode 100644 index 00000000..46ec1a5d --- /dev/null +++ b/TodolistHTML/tugas.html @@ -0,0 +1,80 @@ + + + + + + Todolist + + + + + + + +
    +
    + +
    +
    +

    Rincian Tugas

    +
    +
    +
    Nama:
    Tugas 1
    +
    Attachment:
    +
    Deadline:
    +
    02/22/2013
    +
    + +
    +
    +
    Assignee:
    +
      +
      + + + + +
      +
      +
      Tags:
      +
      +
        +
      +
      +
      + +
      +
      +

      + +


      +
      Komentar:
      +
      Abraham Krisnanda Santoso - 20 Februari 2013 23:06
      Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer tortor nunc, posuere sit amet facilisis quis, ullamcorper nec sapien. Donec placerat nisi in dui auctor posuere. Etiam quis urna tortor. Mauris aliquet porta tellus, a tristique arcu congue vel. Ut scelerisque, lacus vel sodales tristique, neque leo facilisis metus, quis posuere dui eros vel sem. Aliquam turpis quam, vehicula quis malesuada vel, tincidunt sit amet nunc. Vivamus orci augue, volutpat sed egestas eget, luctus eget lacus. Curabitur ut quam non dolor pellentesque dapibus. Quisque ut semper ante. Donec lobortis rutrum elit, eget consequat leo ultrices non. Nam mauris magna, fermentum vel pulvinar ac, varius condimentum nulla. Maecenas ac odio non ligula vestibulum congue. Ut nunc risus, vestibulum sit amet consectetur molestie, porttitor nec.

      Stefanus Thobi Sinaga - 20 Februari 2013 23:06
      Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer tortor nunc, posuere sit amet facilisis quis, ullamcorper nec sapien. Donec placerat nisi in dui auctor posuere. Etiam quis urna tortor. Mauris aliquet porta tellus, a tristique arcu congue vel. Ut scelerisque, lacus vel sodales tristique, neque leo facilisis metus, quis posuere dui eros vel sem. Aliquam turpis quam, vehicula quis malesuada vel, tincidunt sit amet nunc. Vivamus orci augue, volutpat sed egestas eget, luctus eget lacus. Curabitur ut quam non dolor pellentesque dapibus. Quisque ut semper ante. Donec lobortis rutrum elit, eget consequat leo ultrices non. Nam mauris magna, fermentum vel pulvinar ac, varius condimentum nulla. Maecenas ac odio non ligula vestibulum congue. Ut nunc risus, vestibulum sit amet consectetur molestie, porttitor nec.

      Edward Samuel Pasaribu - 20 Februari 2013 23:06
      Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer tortor nunc, posuere sit amet facilisis quis, ullamcorper nec sapien. Donec placerat nisi in dui auctor posuere. Etiam quis urna tortor. Mauris aliquet porta tellus, a tristique arcu congue vel. Ut scelerisque, lacus vel sodales tristique, neque leo facilisis metus, quis posuere dui eros vel sem. Aliquam turpis quam, vehicula quis malesuada vel, tincidunt sit amet nunc. Vivamus orci augue, volutpat sed egestas eget, luctus eget lacus. Curabitur ut quam non dolor pellentesque dapibus. Quisque ut semper ante. Donec lobortis rutrum elit, eget consequat leo ultrices non. Nam mauris magna, fermentum vel pulvinar ac, varius condimentum nulla. Maecenas ac odio non ligula vestibulum congue. Ut nunc risus, vestibulum sit amet consectetur molestie, porttitor nec.


      +
      +
      +
      +
      +
      +
      + This website is created solely for the purpose of fulfilling our college task.
      + IF3094 - Pemrograman Internet. +
      +
      + + diff --git a/TodolistJava/.gitignore b/TodolistJava/.gitignore new file mode 100644 index 00000000..c9176da0 --- /dev/null +++ b/TodolistJava/.gitignore @@ -0,0 +1,8 @@ +# Netbeans Files # +nbproject/private/ +build/ +nbbuild/ +dist/ +nbdist/ +nbactions.xml +nb-configuration.xml \ No newline at end of file diff --git a/TodolistJava/build.xml b/TodolistJava/build.xml new file mode 100644 index 00000000..5d309a27 --- /dev/null +++ b/TodolistJava/build.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + Builds, tests, and runs the project TodolistJava. + + + diff --git a/TodolistJava/nbproject/ant-deploy.xml b/TodolistJava/nbproject/ant-deploy.xml new file mode 100644 index 00000000..2d5f8778 --- /dev/null +++ b/TodolistJava/nbproject/ant-deploy.xml @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TodolistJava/nbproject/build-impl.xml b/TodolistJava/nbproject/build-impl.xml new file mode 100644 index 00000000..55b7de22 --- /dev/null +++ b/TodolistJava/nbproject/build-impl.xml @@ -0,0 +1,1413 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set src.dir + Must set test.src.dir + Must set build.dir + Must set build.web.dir + Must set build.generated.dir + Must set dist.dir + Must set build.classes.dir + Must set dist.javadoc.dir + Must set build.test.classes.dir + Must set build.test.results.dir + Must set build.classes.excludes + Must set dist.war + + + + + + + + + +The Java EE server classpath is not correctly set up - server home directory is missing. +Either open the project in the IDE and assign the server or setup the server classpath manually. +For example like this: + ant -Dj2ee.server.home=<app_server_installation_directory> + + +The Java EE server classpath is not correctly set up. Your active server type is ${j2ee.server.type}. +Either open the project in the IDE and assign the server or setup the server classpath manually. +For example like this: + ant -Duser.properties.file=<path_to_property_file> (where you put the property "j2ee.platform.classpath" in a .properties file) +or ant -Dj2ee.platform.classpath=<server_classpath> (where no properties file is used) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + No tests executed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The libs.CopyLibs.classpath property is not set up. +This property must point to +org-netbeans-modules-java-j2seproject-copylibstask.jar file which is part +of NetBeans IDE installation and is usually located at +<netbeans_installation>/java<version>/ant/extra folder. +Either open the project in the IDE and make sure CopyLibs library +exists or setup the property manually. For example like this: + ant -Dlibs.CopyLibs.classpath=a/path/to/org-netbeans-modules-java-j2seproject-copylibstask.jar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set JVM to use for profiling in profiler.info.jvm + Must set profiler agent JVM arguments in profiler.info.jvmargs.agent + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.jsp.includes + + + + + + + + + + + + + + + + + + + + + + + + + + Must select a file in the IDE or set jsp.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Browser not found, cannot launch the deployed application. Try to set the BROWSER environment variable. + + + Launching ${browse.url} + + + + + + Must select one file in the IDE or set run.class + + + + Must select one file in the IDE or set run.class + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set debug.class + + + + + + + + + + + + Must select one file in the IDE or set debug.class + + + + + Must set fix.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + Some tests failed; see details above. + + + + + + + + + Must select some files in the IDE or set test.includes + + + + Some tests failed; see details above. + + + + Must select some files in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + Some tests failed; see details above. + + + + + Must select one file in the IDE or set test.class + + + + Must select one file in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TodolistJava/nbproject/build-impl.xml~ b/TodolistJava/nbproject/build-impl.xml~ new file mode 100644 index 00000000..55b7de22 --- /dev/null +++ b/TodolistJava/nbproject/build-impl.xml~ @@ -0,0 +1,1413 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set src.dir + Must set test.src.dir + Must set build.dir + Must set build.web.dir + Must set build.generated.dir + Must set dist.dir + Must set build.classes.dir + Must set dist.javadoc.dir + Must set build.test.classes.dir + Must set build.test.results.dir + Must set build.classes.excludes + Must set dist.war + + + + + + + + + +The Java EE server classpath is not correctly set up - server home directory is missing. +Either open the project in the IDE and assign the server or setup the server classpath manually. +For example like this: + ant -Dj2ee.server.home=<app_server_installation_directory> + + +The Java EE server classpath is not correctly set up. Your active server type is ${j2ee.server.type}. +Either open the project in the IDE and assign the server or setup the server classpath manually. +For example like this: + ant -Duser.properties.file=<path_to_property_file> (where you put the property "j2ee.platform.classpath" in a .properties file) +or ant -Dj2ee.platform.classpath=<server_classpath> (where no properties file is used) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + No tests executed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +The libs.CopyLibs.classpath property is not set up. +This property must point to +org-netbeans-modules-java-j2seproject-copylibstask.jar file which is part +of NetBeans IDE installation and is usually located at +<netbeans_installation>/java<version>/ant/extra folder. +Either open the project in the IDE and make sure CopyLibs library +exists or setup the property manually. For example like this: + ant -Dlibs.CopyLibs.classpath=a/path/to/org-netbeans-modules-java-j2seproject-copylibstask.jar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set JVM to use for profiling in profiler.info.jvm + Must set profiler agent JVM arguments in profiler.info.jvmargs.agent + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.jsp.includes + + + + + + + + + + + + + + + + + + + + + + + + + + Must select a file in the IDE or set jsp.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Browser not found, cannot launch the deployed application. Try to set the BROWSER environment variable. + + + Launching ${browse.url} + + + + + + Must select one file in the IDE or set run.class + + + + Must select one file in the IDE or set run.class + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set debug.class + + + + + + + + + + + + Must select one file in the IDE or set debug.class + + + + + Must set fix.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + Some tests failed; see details above. + + + + + + + + + Must select some files in the IDE or set test.includes + + + + Some tests failed; see details above. + + + + Must select some files in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + Some tests failed; see details above. + + + + + Must select one file in the IDE or set test.class + + + + Must select one file in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/TodolistJava/nbproject/genfiles.properties b/TodolistJava/nbproject/genfiles.properties new file mode 100644 index 00000000..bb0b7a10 --- /dev/null +++ b/TodolistJava/nbproject/genfiles.properties @@ -0,0 +1,8 @@ +build.xml.data.CRC32=8bdb3667 +build.xml.script.CRC32=63aaa211 +build.xml.stylesheet.CRC32=651128d4@1.41.1.1 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. +nbproject/build-impl.xml.data.CRC32=8bdb3667 +nbproject/build-impl.xml.script.CRC32=d26af671 +nbproject/build-impl.xml.stylesheet.CRC32=5459df51@1.41.1.1 diff --git a/TodolistJava/nbproject/project.properties b/TodolistJava/nbproject/project.properties new file mode 100644 index 00000000..67528b01 --- /dev/null +++ b/TodolistJava/nbproject/project.properties @@ -0,0 +1,107 @@ +annotation.processing.enabled=true +annotation.processing.enabled.in.editor=true +annotation.processing.processor.options=-Aeclipselink.canonicalmodel.use_static_factory=false +annotation.processing.processors.list= +annotation.processing.run.all.processors=true +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output +auxiliary.org-netbeans-modules-projectapi.jsf_2e_language=Facelets +build.classes.dir=${build.web.dir}/WEB-INF/classes +build.classes.excludes=**/*.java,**/*.form +build.dir=build +build.generated.dir=${build.dir}/generated +build.generated.sources.dir=${build.dir}/generated-sources +build.test.classes.dir=${build.dir}/test/classes +build.test.results.dir=${build.dir}/test/results +build.web.dir=${build.dir}/web +build.web.excludes=${build.classes.excludes} +client.urlPart= +compile.jsps=false +conf.dir=${source.root}/conf +debug.classpath=${build.classes.dir}:${javac.classpath} +debug.test.classpath=\ + ${run.test.classpath} +display.browser=true +dist.dir=dist +dist.ear.war=${dist.dir}/${war.ear.name} +dist.javadoc.dir=${dist.dir}/javadoc +dist.war=${dist.dir}/${war.name} +endorsed.classpath=\ + ${libs.javaee-endorsed-api-6.0.classpath} +excludes= +<<<<<<< HEAD +file.reference.commons-fileupload-1.3.jar=web/WEB-INF/lib/commons-fileupload-1.3/lib/commons-fileupload-1.3.jar +file.reference.commons-io-2.4.jar=web/WEB-INF/lib/commons-io-2.4/commons-io-2.4.jar +file.reference.gson-2.2.2.jar=C:\\Project\\Netbeans Lib\\GSON 2.2.2\\gson-2.2.2.jar +======= +>>>>>>> 9f588f4376570467a0937c28c2673f8e4830b8e2 +file.reference.mysql-connector-java-5.1.24-bin.jar=web\\WEB-INF\\lib\\mysql-connector-java-5.1.24-bin.jar +file.reference.mysql-connector-java-5.1.24-bin.jar-1=web\\WEB-INF\\lib\\mysql-connector-java-5.1.24\\mysql-connector-java-5.1.24-bin.jar +includes=** +j2ee.compile.on.save=true +j2ee.copy.static.files.on.save=true +j2ee.deploy.on.save=true +j2ee.platform=1.6-web +j2ee.platform.classpath=${j2ee.server.home}/modules/javax.servlet.jsp.jstl.jar:${j2ee.server.home}/modules/javax.ejb.jar:${j2ee.server.home}/modules/javax.security.auth.message.jar:${j2ee.server.home}/modules/javax.enterprise.deploy.jar:${j2ee.server.home}/modules/bean-validator.jar:${j2ee.server.home}/modules/javax.servlet.jsp-api.jar:${j2ee.server.home}/modules/javax.jms.jar:${j2ee.server.home}/modules/weld-osgi-bundle.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/javax.transaction.jar:${j2ee.server.home}/modules/javax.servlet.jsp.jstl-api.jar:${j2ee.server.home}/modules/endorsed/javax.annotation.jar:${j2ee.server.home}/modules/javax.el-api.jar:${j2ee.server.home}/modules/javax.management.j2ee.jar:${j2ee.server.home}/modules/javax.persistence.jar:${j2ee.server.home}/modules/javax.resource.jar:${j2ee.server.home}/modules/javax.mail.jar:${j2ee.server.home}/modules/javax.servlet-api.jar:${j2ee.server.middleware}/mq/lib/jaxm-api.jar:${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/javax.security.jacc.jar:${j2ee.server.home}/modules/javax.faces.jar:${j2ee.server.home}/modules/endorsed/jaxb-api-osgi.jar:${j2ee.server.home}/modules/jersey-core.jar +j2ee.platform.embeddableejb.classpath=${j2ee.server.home}/lib/embedded/glassfish-embedded-static-shell.jar +j2ee.platform.wscompile.classpath=${j2ee.server.home}/modules/webservices-osgi.jar +j2ee.platform.wsgen.classpath=${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api-osgi.jar:${j2ee.server.home}/modules/javax.ejb.jar +j2ee.platform.wsimport.classpath=${j2ee.server.home}/modules/webservices-osgi.jar:${j2ee.server.home}/modules/endorsed/webservices-api-osgi.jar:${j2ee.server.home}/modules/jaxb-osgi.jar:${j2ee.server.home}/modules/endorsed/jaxb-api-osgi.jar:${j2ee.server.home}/modules/javax.ejb.jar +j2ee.platform.wsit.classpath= +j2ee.server.type=gfv3ee6 +jar.compress=false +javac.classpath=\ + <<<<<<< HEAD:\ + ${file.reference.mysql-connector-java-5.1.24-bin.jar-1} + ${file.reference.commons-io-2.4.jar}:\ + ${file.reference.commons-fileupload-1.3.jar}:\ + ${file.reference.mysql-connector-java-5.1.24-bin.jar}:\ + ${file.reference.gson-2.2.2.jar} +======= + ${file.reference.mysql-connector-java-5.1.24-bin.jar} +>>>>>>> 9f588f4376570467a0937c28c2673f8e4830b8e2 +# Space-separated list of extra javac options +javac.compilerargs= +javac.debug=true +javac.deprecation=false +javac.processorpath=\ + ${javac.classpath}:\ + ${libs.eclipselink.classpath}:\ + ${libs.eclipselinkmodelgen.classpath} +javac.source=1.6 +javac.target=1.6 +javac.test.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +javac.test.processorpath=\ + ${javac.test.classpath} +javadoc.additionalparam= +javadoc.author=false +javadoc.encoding=${source.encoding} +javadoc.noindex=false +javadoc.nonavbar=false +javadoc.notree=false +javadoc.preview=true +javadoc.private=false +javadoc.splitindex=true +javadoc.use=true +javadoc.version=false +javadoc.windowtitle= +lib.dir=${web.docbase.dir}/WEB-INF/lib +persistence.xml.dir=${conf.dir} +platform.active=default_platform +resource.dir=setup +run.test.classpath=\ + ${javac.test.classpath}:\ + ${build.test.classes.dir} +# Space-separated list of JVM arguments used when running a class with a main method or a unit test +# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value): +runmain.jvmargs= +source.encoding=UTF-8 +source.root=src +src.dir=${source.root}/java +test.src.dir=test +war.content.additional= +war.ear.name=${war.name} +war.name=TodolistJava.war +web.docbase.dir=web +webinf.dir=web/WEB-INF diff --git a/TodolistJava/nbproject/project.xml b/TodolistJava/nbproject/project.xml new file mode 100644 index 00000000..030b8bb7 --- /dev/null +++ b/TodolistJava/nbproject/project.xml @@ -0,0 +1,26 @@ + + + org.netbeans.modules.web.project + + + TodolistJava + 1.6.5 + + + ${<<<<<<< HEAD} + + + ${file.reference.mysql-connector-java-5.1.24-bin.jar-1} + WEB-INF/lib + + + + + + + + + + + + diff --git a/TodolistJava/progin_471_13510039.sql b/TodolistJava/progin_471_13510039.sql new file mode 100644 index 00000000..b71b32d1 --- /dev/null +++ b/TodolistJava/progin_471_13510039.sql @@ -0,0 +1,291 @@ +-- phpMyAdmin SQL Dump +-- version 3.5.2.2 +-- http://www.phpmyadmin.net +-- +-- Host: 127.0.0.1 +-- Generation Time: Apr 13, 2013 at 07:49 AM +-- Server version: 5.5.27 +-- PHP Version: 5.4.7 + +SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; +SET time_zone = "+00:00"; + + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8 */; + +-- +-- Database: `progin_471_13510039` +-- + +-- -------------------------------------------------------- + +-- +-- Table structure for table `assignees` +-- + +CREATE TABLE IF NOT EXISTS `assignees` ( + `id_tugas` int(11) NOT NULL, + `username` varchar(25) NOT NULL, + PRIMARY KEY (`id_tugas`,`username`), + KEY `asignee_ibfk_2` (`username`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Dumping data for table `assignees` +-- + +INSERT INTO `assignees` (`id_tugas`, `username`) VALUES +(23, 'edwardsp'), +(14, 'felixt'), +(18, 'felixt'), +(23, 'felixt'), +(19, 'wIlson'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `attachments` +-- + +CREATE TABLE IF NOT EXISTS `attachments` ( + `id_attachment` int(11) NOT NULL AUTO_INCREMENT, + `id_tugas` int(11) NOT NULL, + `name` varchar(100) NOT NULL, + `filename` varchar(100) NOT NULL, + `type` varchar(10) NOT NULL, + PRIMARY KEY (`id_attachment`), + KEY `attachments_ibfk_1` (`id_tugas`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=22 ; + +-- +-- Dumping data for table `attachments` +-- + +INSERT INTO `attachments` (`id_attachment`, `id_tugas`, `name`, `filename`, `type`) VALUES +(13, 14, 'PROGIN.jpg', 'd05aebfecc37280437b02591573d6e03514d59b9208c98.93112038', 'image'), +(14, 14, 'PROGIN.ogg', '624567140fecc40163fed3c45a959a7c514d59b92b2232.25700064', 'video'), +(15, 14, 'PROGIN.swf', '8f9091ab452b3613a295459b9ce0738b514d59b9369312.77473039', 'file'), +(16, 15, 'math.swf', 'da08a1d5b8f673d4ceaad3b9ef9a17de514d5b43318729.48617551', 'file'), +(17, 15, 'moreless.swf', 'ea9416ea03a73c0167c0e4a0063d9c14514d5b433b4565.80162445', 'file'), +(18, 18, 'jpg', 'jpg-1163974538', 'image'), +(19, 19, 'jpg', 'jpg-1517830044', 'image'), +(21, 21, 'jpg', 'jpg-918132700', 'image'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `categories` +-- + +CREATE TABLE IF NOT EXISTS `categories` ( + `id` int(50) NOT NULL AUTO_INCREMENT, + `nama` varchar(50) NOT NULL, + `last_mod` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=13 ; + +-- +-- Dumping data for table `categories` +-- + +INSERT INTO `categories` (`id`, `nama`, `last_mod`) VALUES +(1, 'Elektro', '2013-04-10 14:27:04'), +(2, 'Telekomunikasi', '2013-04-10 14:27:04'), +(3, 'Power', '2013-04-10 14:27:23'), +(4, 'Sistem dan Teknologi informasi', '2013-04-10 14:27:23'), +(5, 'Matematika', '2013-04-10 14:27:43'), +(6, 'Fisika', '2013-04-10 14:27:43'), +(10, 'Progin', '2013-03-23 07:28:18'), +(11, 'Intelegensi Buatan', '2013-03-23 07:31:26'), +(12, 'Kuliah Labdas 3', '2013-04-11 10:39:34'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `comments` +-- + +CREATE TABLE IF NOT EXISTS `comments` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `id_tugas` int(11) NOT NULL, + `user` varchar(32) NOT NULL, + `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `content` text NOT NULL, + PRIMARY KEY (`id`), + KEY `comments_ibfk_1` (`id_tugas`), + KEY `comments_ibfk_2` (`user`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=69 ; + +-- +-- Dumping data for table `comments` +-- + +INSERT INTO `comments` (`id`, `id_tugas`, `user`, `time`, `content`) VALUES +(58, 14, 'edwardsp', '2013-03-23 07:29:23', 'ini terlalu gampang'), +(60, 15, 'wIlson', '2013-03-23 07:36:37', 'iya ni, gmn dong
      '), +(61, 15, 'edwardsp', '2013-03-23 07:46:22', 'kok gw ga assignee?'), +(63, 14, 'edwardsp', '2013-04-11 03:45:33', 'saya, Edward Samuel, merasa terhina dapat tugas macem ginian'), +(68, 18, 'proginner', '2013-04-13 04:02:47', 'Selamat pagi'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `coordinator` +-- + +CREATE TABLE IF NOT EXISTS `coordinator` ( + `id_kategori` int(50) NOT NULL, + `user` varchar(32) NOT NULL, + PRIMARY KEY (`id_kategori`,`user`), + KEY `user` (`user`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Dumping data for table `coordinator` +-- + +INSERT INTO `coordinator` (`id_kategori`, `user`) VALUES +(10, 'edwardsp'), +(11, 'edwardsp'), +(12, 'felixt'), +(11, 'wIlson'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `tags` +-- + +CREATE TABLE IF NOT EXISTS `tags` ( + `id_tugas` int(11) NOT NULL AUTO_INCREMENT, + `tag` varchar(30) NOT NULL, + PRIMARY KEY (`id_tugas`,`tag`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=25 ; + +-- +-- Dumping data for table `tags` +-- + +INSERT INTO `tags` (`id_tugas`, `tag`) VALUES +(14, 'asal'), +(14, 'tubes'), +(15, 'Peer'), +(15, 'Tracker'), +(18, 'gampang'), +(18, 'tubes1'), +(19, 'gampang'), +(19, 'tubes4'), +(21, 'deadliner'), +(21, 'gampang'), +(21, 'smt6'), +(21, 'weka'), +(23, 'algo'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `tugas` +-- + +CREATE TABLE IF NOT EXISTS `tugas` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `nama` varchar(50) NOT NULL, + `tgl_deadline` date NOT NULL, + `status` tinyint(1) NOT NULL DEFAULT '0', + `last_mod` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `pemilik` varchar(32) NOT NULL, + `id_kategori` int(11) NOT NULL, + PRIMARY KEY (`id`), + KEY `tugas_ibfk_1` (`pemilik`), + KEY `tugas_ibfk_2` (`id_kategori`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=25 ; + +-- +-- Dumping data for table `tugas` +-- + +INSERT INTO `tugas` (`id`, `nama`, `tgl_deadline`, `status`, `last_mod`, `pemilik`, `id_kategori`) VALUES +(14, 'PHP AJAX', '2013-03-24', 0, '2013-04-13 04:44:28', 'edwardsp', 10), +(15, 'GunBond', '2013-03-24', 1, '2013-04-10 16:38:51', 'wIlson', 11), +(18, 'HTML', '2013-04-13', 0, '2013-04-13 04:44:19', 'edwardsp', 10), +(19, 'Google App Engine', '2013-04-01', 0, '2013-04-11 10:36:15', 'edwardsp', 10), +(21, 'Data Mining', '2013-04-01', 1, '2013-04-11 10:27:05', 'edwardsp', 11), +(23, 'Naive Bayes', '2013-04-22', 0, '2013-04-13 04:44:29', 'edwardsp', 11); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `users` +-- + +CREATE TABLE IF NOT EXISTS `users` ( + `username` varchar(32) NOT NULL, + `email` varchar(100) NOT NULL, + `password` char(32) NOT NULL, + `full_name` varchar(100) NOT NULL, + `tgl_lahir` date NOT NULL, + `avatar` varchar(50) NOT NULL, + PRIMARY KEY (`username`), + UNIQUE KEY `email` (`email`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Dumping data for table `users` +-- + +INSERT INTO `users` (`username`, `email`, `password`, `full_name`, `tgl_lahir`, `avatar`) VALUES +('edwardsp', 'edward_samuel_esp@yahoo.com', '9f2788a951100afe63326ea54ce835ce', 'Edward Samuel Pasaribu', '1992-03-12', 'edwardsp.jpg'), +('felixt', 'felixterahadi@yahoo.com', '9f2788a951100afe63326ea54ce835ce', 'Felix Terahadi', '1990-03-12', 'felixt.jpg'), +('proginner', 'proginer@progin.com', 'a2d10a3211b415832791a6bc6031f9ab', 'progin beginner', '2013-03-21', 'proginner.jpg'), +('wIlson', 'wilsonfonda@yahoo.com', 'a2d10a3211b415832791a6bc6031f9ab', 'Wilson Fonda', '2013-03-12', 'wIlson.jpg'); + +-- +-- Constraints for dumped tables +-- + +-- +-- Constraints for table `assignees` +-- +ALTER TABLE `assignees` + ADD CONSTRAINT `assignees_ibfk_3` FOREIGN KEY (`id_tugas`) REFERENCES `tugas` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + ADD CONSTRAINT `assignees_ibfk_4` FOREIGN KEY (`username`) REFERENCES `users` (`username`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- +-- Constraints for table `attachments` +-- +ALTER TABLE `attachments` + ADD CONSTRAINT `attachments_ibfk_2` FOREIGN KEY (`id_tugas`) REFERENCES `tugas` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- +-- Constraints for table `comments` +-- +ALTER TABLE `comments` + ADD CONSTRAINT `comments_ibfk_3` FOREIGN KEY (`id_tugas`) REFERENCES `tugas` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + ADD CONSTRAINT `comments_ibfk_4` FOREIGN KEY (`user`) REFERENCES `users` (`username`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- +-- Constraints for table `coordinator` +-- +ALTER TABLE `coordinator` + ADD CONSTRAINT `coordinator_ibfk_1` FOREIGN KEY (`id_kategori`) REFERENCES `categories` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + ADD CONSTRAINT `coordinator_ibfk_2` FOREIGN KEY (`user`) REFERENCES `users` (`username`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- +-- Constraints for table `tags` +-- +ALTER TABLE `tags` + ADD CONSTRAINT `tags_ibfk_2` FOREIGN KEY (`id_tugas`) REFERENCES `tugas` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- +-- Constraints for table `tugas` +-- +ALTER TABLE `tugas` + ADD CONSTRAINT `tugas_ibfk_3` FOREIGN KEY (`pemilik`) REFERENCES `users` (`username`) ON DELETE CASCADE ON UPDATE CASCADE, + ADD CONSTRAINT `tugas_ibfk_4` FOREIGN KEY (`id_kategori`) REFERENCES `categories` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; diff --git a/TodolistJava/setup/glassfish-resources.xml b/TodolistJava/setup/glassfish-resources.xml new file mode 100644 index 00000000..2a224482 --- /dev/null +++ b/TodolistJava/setup/glassfish-resources.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/TodolistJava/src/conf/MANIFEST.MF b/TodolistJava/src/conf/MANIFEST.MF new file mode 100644 index 00000000..59499bce --- /dev/null +++ b/TodolistJava/src/conf/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/TodolistJava/src/conf/persistence.xml b/TodolistJava/src/conf/persistence.xml new file mode 100644 index 00000000..b46ae488 --- /dev/null +++ b/TodolistJava/src/conf/persistence.xml @@ -0,0 +1,8 @@ + + + + progin_500 + false + + + diff --git a/TodolistJava/src/java/db.properties b/TodolistJava/src/java/db.properties new file mode 100644 index 00000000..7312e680 --- /dev/null +++ b/TodolistJava/src/java/db.properties @@ -0,0 +1,4 @@ +driver=com.mysql.jdbc.Driver +url=jdbc:mysql://localhost:3306/progin_471_13510039 +user=progin +password=progin \ No newline at end of file diff --git a/TodolistJava/src/java/id/ac/itb/todolist/ajax/AssigneeList.java b/TodolistJava/src/java/id/ac/itb/todolist/ajax/AssigneeList.java new file mode 100644 index 00000000..5619778c --- /dev/null +++ b/TodolistJava/src/java/id/ac/itb/todolist/ajax/AssigneeList.java @@ -0,0 +1,82 @@ +package id.ac.itb.todolist.ajax; + +import java.io.IOException; +import java.io.PrintWriter; +import java.util.ArrayList; +import id.ac.itb.todolist.dao.UserDao; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@WebServlet(name = "AssigneeList", urlPatterns = {"/ajax/AssigneeList"}) +public class AssigneeList extends HttpServlet { + + /** + * Processes requests for both HTTP + * GET and + * POST methods. + * + * @param request servlet request + * @param response servlet response + * @throws ServletException if a servlet-specific error occurs + * @throws IOException if an I/O error occurs + */ + protected void processRequest(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + response.setContentType("text/html;charset=UTF-8"); + PrintWriter out = response.getWriter(); + UserDao user = new UserDao(); + try { + ArrayList result=user.getUsers(); + for (int i = 0; i < result.size(); i++) + { + out.println("