Categories
Projects

Welcome to YourAgregator!

Ini adalah salinan daripada post di YourAgregator….

Welcome!

Assalamualaikum semua. Apa khabar? Selamat datang ke iium-news hosted di YourAgregator.
So, sedikit sejarah, lebih kurang 6 bulan lepas, saya telah buat blog pribadi saya, yakni sayaasdacap.blogspot.com. And so, me-market-kan blog it di seluruh group facebook. Pada awalnya sambutan agak ok-lah, namun selepas itu, kita lihat kalau tak share, maka tak jadi apa-apa. Ini sesuatu yang agak menyedihkan kerana sesetengah blog agak best untuk dibaca, namun tidak ada saluran yang menunjukkan mana satu post yang best. So, akhirnya, di blog post saya, http://sayaasdacap.blogspot.com/2011/11/jom-buat-blog-agregator.html , saya menceritakan tentang hasrat saya untuk membuat satu website yang adalah untuk mengumpulkan (aggregate) blog post-blog post, di satu tempat, siap dengan rating system yang unik yang boleh menyelesaikan masalah ini, maka muncullah YourAgregator. 
So pada hari ini, 25 Mei 2012, YourAgregator telah sampai ke tahap yang saya kata boleh kata…. beta-alpa stage.So hari ini saya memulakan marketing YourAgregator kepada anda semua (blogger iium) dengan harapan, anda semua akan mencuba iium-news, satu Agregator di YourAgregator, untuk memasarkan blog anda. 

Bagaimana IIUM-NEWS berfungsi?

Di blog post ini http://sayaasdacap.blogspot.com/2011/11/mengenai-youragregator.html  saya ada menceritakan sedikit tentang falsafah YourAgregator dengan agak detail. Secara ringkasnya, YourAgregator bertindak sebagai hosting kepada aggregator-aggregator yang mempunyai subdomain di youragregator.com. Contohnya, url untuk IIUM-NEWS adalah iium-news.youragregator.com. Di, setiap agregator, ada beberapa moderator dan member. Member kepada agregator itu boleh submit blog diorang kepada agregator tersebut, dan kemudian moderator boleh approve blog tersebut untuk memastikan integriti blog tersebut. Selepas mensubmit blog, blog post tersebut akan diindexkan dekat feedroll (muka depan aggregator).
So, setiap kali orang melawat iium-news.youragregator.com, benda pertama yang diorang jumpa adalah senarai-senarai blog post yang paling baru atau rating yang paling tinggi. Post-post yang diatas mempunyai peluang yang lebih tinggi untuk di-click, maka pelawat akan melawat pula blog anda di post tersebut.

Apa yang membezakan blog post yang bagus dengan yang tak bagus.

Sistem “niceness”, yakni sistem rating YourAgregator. Di youragregator, kita ada satu consept yang dipanggil “niceness” yang secara ringkasnya merupakan score kepada sesuatu. Di YourAgregator post, feed, dan member mempunyai niceness. Post ialah blog-post atau berita. Feed adalah sumber post, contohnya blog. Setiap member boleh rate “niceness” post atau feed. Apabila mereka rate sesuatu post/feed, niceness post/feed tersebut ditambah/ditolak dengan niceness member tersebut. Dan apabila member rate post atau feed, niceness mereka naik. Dan disebabkan niceness asal post yang baru adalah niceness member+niceness feed, maka post yang datang dari member yang ada niceness yang tinggi mempunyai niceness yang banyak berbanding post yang lain.
Bottomline, the more you rate other’s post, the higher you post’s rating. 

So, apa yang saya patut buat?

1. Login menggunakan link di atas kanan (saya recommend login dari Facebook). Twitter login tidak berfungsi, so takyah try.
2. Join IIUM-NEWS. Link di atas kanan juga.
3. Submit blog anda.
4. Baca dan rate blog post orang. 

By the way…

YourAgregator.com di-hostkan di Google App Engine dengan free quota. Dalam kata yang lain, disebabkan saya takde duit, maka hosting YourAgregator agak lemah and so, akan ada masa anda akan jumpa screen yang mengatakan quota sudah penuh. Jangan risau, youragregator akan berfungsi kembali sepenuhnya pada keesokan hari, lebih kurang dalam pukul 3. Dan lagi satu, buat masa ini YourAgregator di-bangunkan oleh seorang manusia sahaja, so berkemungkinan besar ada banyak lagi “bug-bug” merata tempat. Sesiapa yang berminat untuk membantu dari segi tenaga kerja atau kewangan sangat dialu-alukan….
Categories
Projects

Compilation of YourAgregator TODO

Hi there! These are YourAgregator’s old and new TODO list.

  1. A middleware for agregator and member (for consistency).(on testing)
  2. A decorator for member only.(on testing)
  3. Move the commment template to javascript (reduce server workload and increase responsiveness). Did that, for 5% performance, it’s not worth it.
  4. Hash hack backup plan for ajax page.
  5. Add a favicon.ico.
  6. Ubah kedudukan perkataan ‘post’.
  7. Set default kepada recent.
  8. Use jQuery UI accordian in the submit page.
  9. Add suppost to submit just Post instead of RSS.
  10. Rasanya ada bug sikit. Cuba submit blog hzaid tak boleh. Kenape yek? (ada sikit bug, patut dah dibetulkan. ini disebabkan ada agregator lain yang ada rss yang sama link.
  11. When auto approve is on, when user join or submit, show the correct message.
  12. Fix the ‘at’ None problem. Done a fix but don’t know if it work.
  13. META tags.Did some.
  14. Unified menu for all pages and remove the back button.
  15. Make the rss reloader allow hyperlinks and .
  16. Make a decorator ‘mainpage-only’ the opposite of ‘indomaindecorator’
  17. A central page in the main webpage that list all available agregator.
  18. Database optimization using db.Models.values()
  19. Allow admin to make ‘pages’. 
  20. In manage-mamber, kat permission field, render elok sikit 🙂
  21. The feed table in manage-submission, make select all button and load only part of the data and make pages for the table and make sorting.
  22. On agregator, when no data and when search is not empty, prompt user that that is a search result.
  23. Major overhaul on the theming system.Improve template speed.
  24. Allow admin to make ‘pages’.
  25.  Chat support in agregator.
  26. Make an option to open a dialog when the user click join so user can send message to admin saying something.
  27. ROBOT.txt
  28. Somehow, view post only from some rss or someone.>make advance sort/limit
  29. In manage-submission, when delete rss feed, prompt to delete post too or handle the dereference of feed or agregator will crash.
  30. Make the reloadrss reload rss with the same url only once.
  31. Add max/min value to the Styler.
  32. Add an about page.
  33. Theme gallery
  34. Refactor the media file.
  35. Make use of Jinja2
  36. New niceness system
  37. Make use of hubsub protokol
  38. Make a feed page.
  39. Agregator page’s url modification. 
  40. Help in googlebot scraping.]
  41. Complete the ClientChannel api.
  42. Port Chatter to use ClientChannel
  43. Escape some variables in templates.
  44. In the manager, new way to rename agpages.
  45. Redesign top menu
  46. Ability to scrape post with certain tags only,
  47. More caching!
  48. Better user information (photo, inbox)
  49. Messaging sistem.
  50. Heavy design work on the main page.
  51. Build a layout system
  52. Add a blog (main blog not agregator blog)
  53. Heavy design work on the main page.
  54. Terms and Policy
  55. Add a system where moderator can ask question to new member.
  56. Feedback to moderator.
  57. Documentation.
  58. Ability to rearrange page order in menu.
  59. Manage interface redesign.
  60. Moderator can host media file.
  61. Category
  62. Add error status when cannot get rss.
  63. Different color for post with different rating.
  64. Ability to make agregator, public/private.
  65. Change the default style to conform with the new layout.
  66. Sidepane, pane.
  67. Mainpage style.
  68. Agpages that show online members.
  69. Agpages that show part of agregators.
  70. Notification based on ClientChannel that shows when someone is online or a blog has been updated.
  71. Messaging system between users.
  72. New styler with ability to describe layout of styler from css.
  73. Better ranking algorithm, member cannot just increase point by rating everything. There need to be a cooldown duration. And ablity only partially rank a post and ‘de-rank’ a post.
  74. More than one default style.
  75. Forum agpages.
Categories
Projects

YourAgregator Refresh!

Assalamualaikum dan selamat pagi. So. pada hari ini, saya akan membincangkan tentang status terkini tentang YourAgregator. Seperti yang dibincangkan di post yang lepas, nampaknya saya sudah tidak membincangkan sangat tentang YourAgregator dalam blog ini. Malah lebih mengejutkan, selepas saya melihat kembali post-post  saya, saya baru sedar yang post terakhir tentang YourAgregator adalah pada 5 januari 2012, 4 bulan yang lepas.

So, apa ceritanya tentang YourAgregator? Seperti yang telah dikatakan dengan briefly pada pada post lepas, YourAgregator masih lagi dalam pembangunan, malah jika kita lihat screenshot bawah ini, sebenarnya banyak jugak commit yang tidak diceritakan.

Dan ada lagi dua muka surat sebelum 5 januari. So, pada hari ini, saya akan buat refresh tentang apa yang saya telah letak kat youragregator, bermula dari 5 january sehingga semalam, of course bukan hari-hari lah, so, mari kita lihat. Sebenarnya kebanyakan commit di atas adalah Fix, dan hanya sebahagian merupakan tambahan feature.

24 Februari 2012
-Now search will only react to tags.
    Maknanya, sekarang search hanya akan search tags.Ini adalah kerana search index mengambil banyak database ops, so saya buat ia hanya akan pakai tags. Disebabkan perubahan ini, YourAgregator sekarang boleh menerima lebih kurang 20 blogs setiap hari.

 18 Mey 2012
-Change the feedroll blog link to default on internal link.
   Apa yang dimaksudkan di sini adalah, kat blogroll, kat ada link kepada blog kan? Pastu kat sebelah dia ada “>” yang link kepada rss page tentang blog to kat dalam youragregator, sekarang dah terbalik, “>” pergi blog, nama blog pergi youragregator.

9 April 2012
-Now the topmenu is using a dropdown menu.
In another word:

Hover your mouse on it.

14 April 2012
-Updated the styler and now using jquery ui radiobutton on some attributes.
Less word, more screenshot!

Update dari Automatic IIUM Schedule Formatter

24 February 2012 – 1 Mei 2012

The Agpages System, Channel API, Port of Chatter to use Agpages and Channel API.

Yang ni, tak boleh di explain menggunakan gambar semata-mata. Tapi boleh membantu. Jika anda lihat di agregatortest.youragregator.com sekarang, anda akan perasan chatter di belah atas kiri sudah hilang. Kemana ia pergi?

By the way, tengok! feedback button kat bawah kanan.

Well, selepas saya letak chatter, saya perasan yang ianya buruk dan mengambil ruang. Tambahan lagi, bila kita pakai screen 4:3 yang lama dulu, ia nampak lebih buruk dari biasa, so saya rasa saya nak letak chatter tu sebagai pages. Pastu, terfikir pulak cam mana nak buat setting untuk rearrange menu kat atas memandangkan ada flatpages+agregator+submit+chat yang menggunakan system yang berlainan tambahan lagi boleh ada lebih daripada satu flatpages. So, akhirnya muncullah konsept AgPages (singkatan untuk Agregator pages). Asalnya saya nak panggil plugins tapi perkataan tu terlalu salah, pastu nak pakai Pages, tapi YourAgregator menggunakan istilah ‘pages’ kat tiga tempat lain secara dalaman, so ia sangat mengelirukan, so akhirnya saya pilih nama AgPages.
So, apa itu Agpages? Well, agpages adalah muka surat yang boleh ditambah kat youragretor. Mari kita lihat screenshot manager pages:

You see, sekarang kita boleh tambah agpages, rename agpages, configure agpages dan rearrange agpages. Berbeza dengan custom pages yang dulu, agpages ini bertindak lebih seperti plugins, kita boleh configure diorang, dan diorang ada code sendiri. Contohnya, bila kita tekan configure untuk agpages About This yeng merupakan jenis flatpages, kita akan jumpa ini:

Yang membolehkan kita untuk edit flatpages tersebut. Itulah Agpages. Technically agpages ini direka untuk membolehkan website lain buat agpages untuk YourAgregator, sama macam facebook tabs, tapi disebabkan masalah dalam mereka REST API dengan segala masalah keselamatan, ianya tidak dijalankan lagi.

So far setakan ini ada tiga jenis agpages iaitu chatter, flatpage dan submit page. More will come later.

Apa pula Channel API? 

Well, nama sebenarnya adalah ClientChannel (untuk mengelakkan kekeliruan dengan google channel api), dan ia timbul apabila saya sudah port chatter kepada agpages.  Masalahnya, agpages boleh ada lebih daripada satu, dan chatter akan diinitialize setiap kali agpages chatter itu dibuka. The problem is, channel api yang diberi oleh  google ada quota sebanyak 100 connection sehari. So, untuk menjimatkan quota dan membolehkan saya untuk buat push notification yang mana belum dibuat, saya telah mereka satu system yang saya panggil Client Channel, yang memboleh lebih daripada satu agpages dan benda lain kat clientside untuk berkomunikasi dengan benda-benda lain kat server side. Ok, so korang tak faham, takpe saya faham. Basically ianya adalah benda internal yang membolehkan saya untuk buat macam-macam benda menarik yang lain. That is ClientChannel API.

9 Mei 2012(semalam)

-Added tha ability to filter post to index based on tags.
Kat screenshot di atas, ada dua field baru iaitu with tags dan without tags. Dengan ini, youragregator hanya akan index post yang ada tags di atas ataupun yang tak ada tags yang dinyatakan.

9 Mei 2012 (jugak)
-Added question support for the moderator to approve new member.
In another word, sekarang moderator boleh tanya soalan kat sapa-sapa yang nak jadi member. Macam nie:

So, itu sajalah yang telah diletakkan. Harap-harap banyak lagi masalah quality yang boleh diselesaikan. So, thats it, bye! Assalamualaikum.

Categories
Personal Projects

About 32 day of holiday.

Assalamualaikum semua. Apa khabar? Mintak maaf, sejak kebelakangan ini, saya agak menyepi. Saya tahu kemungkinan besar kamu tak baca blog ini, dan entah macam mana terbaca pulak harini, yang membawa makna kamu tak perasan pun yang agak lama saya tak berblog, yang membawa makna tak ada gunanya saya mintak maaf tadi. But still, memang saya agak lama tak menulis apa-apa kat blog ini mahupun blog lain seperti rookiecode.blogspot.com dan apatah lagi pembentanganbaikasdacap.blogspot.com yang entah macam mana masih lagi boleh hidup.

So, dua hari lepas dengan rasminya saya telah mengambil kertas exam saya yang terakhir pada sem ini/lepas, maka dengan rasminya saya sekarang tengah cuti inter-semester. Tanggal pada hari ini, maka saya ada 32 hari lagi. So, apa yang boleh buat? Nak cari kerja kat tengah bulan, so macam biasalah jadilah saya macam katak bawah tempurung dengan komputer.

Objectif utama saya pada cuti ini adalah membuat sesuatu yang produktif, lebih produktif daripada main game, yang mana saya rasa tak produktif sangat. Jika kamu adalah pembaca setia blog ini (yang mana kemungkinan besar kamu tak), kamu pasti terfikir tentang youragregator kan? Apakah ceritanya YourAgregator? kenapa tak ada berita lagi? Sudah terbengkalaikah?

Jawapannya adalah…. belum lagi. YourAgregator masih lagi saya tampal-tampal walaupun saya tak cerita banyak. Itu pasal kebanyakan tampalan yang berlaku adalah ketika saya berada di CFS IIUM, so saya tak ada banyak masa dan internet untuk buat blog post.

Unfortunately, tak banyak perubahan yang saya buat kat YourAgregator. Mungkin saya akan blog tentang benda baru yang saya sudah tampal sejak kebelakangan ini kat post yang akan datang. Walaupun demikian, dukacita dimaklumkan, semakin hari saya rasa semakin sukar untuk menampal YourAgregator. Kode nya sudah menjadi agak terlalu komplex tetapi kalau kita lihat di agregatortest.youragregator.com, tidak banyak perubahan yang berlaku. Dan seperti biasa, masalah yang paling ketara adalah design dan artwork yang mana memang saya tak boleh buat. Saya ingat nak mintak tolong dari Iman atau Ammar, member lama saya yang specialize kat bidang ni. By the way, check out my first facebook app apps.facebook.com/howfastcanyoucount  designye ammar yang buat.

So, kat blog post ini, saya akan senaraikan apa yang saya nak buat sepanjang cuti ini.

Plan of 32 day.

  • Make revealer v3.
  • Make DeltaSync
  • YourAgregator artworks and stuff.
  • Blog on rookiecode on how to make a GUI c# app. Also translate to malay in sayaasdacap.
  • Blog on YourAgregator current plan.
Good luck for me, good bye and Assalamualaikum.
Categories
Projects

Automatic IIUM Schedule Formatter V3.3

Assalamualaikum. Apa khabar.

Berita terkini, pada hari ini, Automatic IIUM Schedule Formatter versi 3.3 sudah keluar.

V3.3 membawa beberapa perubahan baru seperti:

  • Kemusnahan popup error.
  • Parser improvement yang membolehkan template maker meletakkan no ic, no matric, session, course, dan sebagainya kedalam jadual. 
  • Penggunaan https dalam hampir semua bahagian untuk lebih keselamatan.
  • Pembaharuan dalam “Styler” yang sekarang ada end-tag bagi membolehkan designer untuk override css statement.
  • Perubahan default style disebabkan perubahan struktur renderer dan kebolehan baru styler.
  • Letak function toTitleCase() ke prototype javascript string supaya template maker boleh buat title case.
  • Layout styler berubah sedikit yang mungkin akan menyebabkan lebih banyak kekeliruan.
  • Theme gallery sudah ada screenshot, generated by websnapr…
  • Sekarang sudah ada mainpage.
  • Dan banyak lagi perubahan yang tidak bermakna sangat untuk anda seperti open graph tag, facebook like dan comment di mainpage, google analytic tracking code, bugfix, bugfix dan bugfix yang saya malu nak bagitau apa bugnya.
So, that’s it. Instruction boleh ditemui di https://iiumschedule.appspot.com . Assalamualakum, Semoga anda berbahagia. Saya asdacap, melaporkan dari study room tingkat satu ABC. 
Categories
Projects

Automatic IIUM Schedule Formatter V3.1

Assalamualaikum semua! Apa khabar. So seperti yang tertulis di atas, saya dah upload versi baru AIIUMSF, versi 3.1. Ianya adalah perubahan kecil sahaja, sikit layout change sahaja.

V3.1

Ok, mungkin agak banyak perubahan jika dibandingkan dengan yang lepas, tapi kebanyakannya hanya perubahan layout untuk page pertama serta sedikit tweak di styler.

Yang lain, kebanyakannya sama sahaja. Instruction masih lagi sama seperti di post yang lepas , cuma saya nak bagitau yang saya perasan bila kita paste code tersebut di chrome, prefix ‘javascript:’ itu hilang. So, korang kena patah balik dan tulist ‘javascript:’ secara manual. Untuk firefox, penggunaan bookmark masih lagi berkesan. So, itu sahaja buat masa ni. Bye bye!

Bye the way:
   Saya tengah update lagi untuk v3.2, tapi update ni memerlukan internet, dan dalam proses debugging, internet iium-community jadi sesak dan battery laptop saya di library sudah nak habis, so mungkin sekarang ia tidak boleh dipakai. Terima kasih dan harap maaf.

Categories
Projects

Automatic IIUM Schedule Formatter V3

Assalamualaikum semua, ini arahan untuk versi yang lama. Sila pergi ke laman utama, yakni http://iiumschedule.appspot.com untuk arahan yang terbaru.

Assalamualaikum semua? Apa khabar? Ok, so mengikut apa yang ditulis di atas ini, dengan ini secara rasminya pada hari ini, Automatic IIUM Schedule Formatter sudah menjangkau versi ke 3! Walaupun korang tak pernah dengar pon tentang nye, tapi saya tetap panggilnya versi ke tiga sebab ada benda yang baru.

Ok, so tanpa melengahkan masa lagi, mari kita lihat screenshot baru Automatic IIUM Schedule Formatter:

Ok, so fist of all, You know I’m not a good designer. So memanglah tak lawa, but that’s not the point. The point is, AISF(Automatic IIUM Schedule Formatter) sekarang sudah:

  1. Mempunyai theme gallery.
  2. Boleh tukar CSS manually.
  3. Boleh tukar Template manually.
Dan tidak dilupa juga Styler yang masih lagi wujud.
Cara menggunakan AISF
Untuk browser berasaskan webkit (Chrome atau Safari):
  1. Copy SETIAP SATU HURUF code kat bawah nie:
    javascript:(function(){var e=document.createElement('script');e.src = 'http://iiumschedule.appspot.com/static/scheduleformatter.js';e.type='text/javascript';e.addEventListener('load',function(){startscheduler()} );document.getElementsByTagName('head')[0].appendChild(e);})();
  2. Bukak korang punye Course Registration Slip (CRS) kat myiium.
  3. Paste code tadi kat url bar dan PASTIKAN IA DIMULAKAN DENGAN ‘javascript:’
  4. Mungkin korang akan perasan ada “Popup blocked”. Bukak popup itu, dan jumpalah AISF.
Untuk Firefox:

  1. Right click link Automatic IIUM Schedule Formatter.
  2. Click “bookmark this link”.
  3. Bukak korang punye Couse Registration Slip(CRS) kat myiium.
  4. Click firefox punye bookmark menu dan click bookmark yang korang baru buat tadi.
  5. Sekali lagi, mungkin korang akan perasan ada “Popup blocked”. Bukak popup itu, dan jumpalah AISF.
Ok, so that’s it lah. Sepatutnya saya tulis lagi macam mana nak gunakannya, tapi caranya agak memerlukan mereka yang sedikit berpengatahuan dalam mengedit css dan EJS template. So, kalau tak reti apa-apa sangat, saya rekemen kamu tweak kat Styler atau tukar theme aje, yang mana sekarang nie ada satu theme aje iaitu “Basic” yang saya sendiri buat. Kemudan, klick link “Save” kat atas tu. Mungkin akan ada lagi “Popup blocked”, so bukaklah popup itu. Bolehlah anda save, simpan atau print.
Oh, kalau kamu dah berjaya buat satu design yang bagus, dan bila saya kat bagus, maksud saya lebih bagus dari “Basic” yang mana kemungkinan besar design kamu akan jadi lebih bagus dari “Basic”, maka janganlah malu-malu men-submit design korang. Cuma click link ‘submitting’ kat theme gallery, masukkan nama theme tersebut, nama anda, email serta selesaikan captcha, kamudian theme anda sudah ada dalam gallery. Refresh saje AISF dan anda patut nampak design anda di situ.
So thats it lah! Sebar-sebarkanlah berita ini, design-designkanlah jadual anda, sebarang comment boleh comment kat bawah nie, sebarang aduan, nak buang design yang silap, boleh email saya di asdacap@gmail.com . So bye bye dan assalamualaikum!
Categories
Projects

IIUM Schedule Formatter v2 Now With Styler!

Ok, so let’s make this short and simple….

Assalamualaikum semua! Apa khabar! Ok, so di kesempatan yang sangat pendek ini, saya ingin memperkenalkan update terkini terhadap project mini saya iaitu Automatic IIUM Schedule Formatter v2. Sebenarnya ia lebih kepada versi 1.1 atau 1.2 dan untuk v2 saya nak letak beberapa perubahan lain lagi, namun disebabkan kesuntukan masa dan komputer, saya tidak dapat melakukan banyak perubahan.

Bagi anda yang tak tahu lagi apa itu Automatic IIUM Schedule Formatter, bolehlah baca post saya ini yang menerangkan tentang ape-ke-heh-nye dengannya. Post yang ini hanya bertujuan untuk menerangkan cara penggunaan di Firefox, yang mana tidak berfungsi dengan v1 serta menerangkan tentang fungsi Styler yang membolehkan anda untuk men-decorate jadual anda.

Ok, so sebelum ini, teknik copy and paste code berfungsi di chrome dan ie, namun, untuk firefox versi 6 ke atas, ia tidak berfungsi dan tidak melakukan apa-apa. Masalah ini terjadi disebabkan oleh satu ‘bugfix’ di firefox, yang, senang cakap tidak membenarkan anda untuk meng-copy-paste javascript code di url. ‘bugfix’ ini mungkin sekali dilakukan disebabkan ada pihak yang tidak bertanggungjawab yang menganiaya pengguna dengan menipu mereka untuk meng-copy-paste javascript yang mengandungi virus. Disebabkan itu, saya telah merangka work-around lain yang sudah diuji berfungsi dengan firefox. Teknik ini juga secara teknikalnya patut berfungsi dengan chrome sekalipun.

So, apakah caranya? Pertama sekali, right click link di bawah ini, dan click ‘bookmark this link’

Kemudian bukak Course Registration Slip seperti yang ditunjukkan dalam post yang pertama. Tapi, daripada meng-copy-paste code javascript yang saya berikan, anda cuma perlu tekan link ‘Automatic IIUM Schedule Formatter’ di menu bookmark firefox. Kemudian, allow popup, dan akhirnya, jadilah jadual yang sudah di format.

Ok, perkara kedua yang saya letak ialah Styler. So, kalau kamu cuba pakai schedule formatter ini tadi, kamu akan perasan yang sekarang anda boleh ubah penampilan jadual anda mengikut citarasa anda. Ok, hampir mengikut cita rasa anda. Ok, mungkin anda belum boleh edit CSS lagi, saya akan cuba mengusahakannya.. Kode Styler itu sebenarnya datang daripada Styler dari YourAgregator, so, banyak hard work yang sudah dilakukan. Apa yang saya buat cuma ‘plug and do-some-modification and play’. Cuma bezanya upload hari ini berbandiang semalam ialah, semalam anda tak boleh save jadual anda. Sekarang boleh. Jadi bolehlah save ke pendrive dulu, baru print kat CC.

Perasan tak yang nama tu ada shadow?

Ok, so that’s it lah. Memang tak banyak perubahan pun, tapi dah tak ada masa nak buat macam mana kan? So bolehlah anda try Styler yang baru ni. Nanti akan datang saya buat Style Gallery pulak ok? So… See you soon! Bye! Assalamualaikum!

Categories
Projects

Automatic IIUM Schedule Formatter!

Hai! Assalamualaikum semua!

Harini saya nak memperkenalkan projek mini terbaru saya yang saya panggil

 Automatic IIUM Schedule Formatter!
Program ini sangat simple dan tujuannya sangat simple dan hasilnya juga sangat simple. Gambarajah simple dibawah ini cukup simple untuk menerangkan apa tujuan program yang simple ini dengan cara yang simple.
Ada paham? 
Ok, so mungkin tak cantik. Dari hitam putih ke hitam putih, Tapi yang pentingnya, asas kepada program ini sudah ada dan ini baru versi 1. Macam mana pulak dengan versi 2? Macam mana kalau saya masukkan Styler dari YourAgregator? Macam mana kalau saya sumbat sekali theme gallery? Macam mana kalau saya pasarkan kat group Creative Multimedia Club dan diorang submit theme diorang? Ha! nampak potensinya? 
Unfortunately, lusa saya dah balik UIA, minggu depan exam math, so tak ada banyak masa nak buat apa-apa. Tambahan lagi, saya tak ada notebook. Kalau nak bawak desktop pun, mungkin minggu ketiga. So… lama sikit lah ye.
Ok, so macam mana kamu nak gunakan time table nie?

Pertama, bukak IIUM Portal, login, pergi ke MyAcedemic, kemudian Course Registration Slip. Bukak slip yang dikehendaki, sampai macam screenshot yang pertama kat bawah nie.

Kedua nie, agak complex dan menakutkan. Copy setiap huruf code dibawah:Paste kat URL bar. Seriously, betul saya cakap nie. 
javascript: {var e=document.createElement('script');e.src = 'http://iiumschedule.appspot.com/static/scheduleformatter.js';e.type='text/javascript';e.addEventListener("load",function(){startscheduler()} );document.getElementsByTagName('head')[0].appendChild(e);}

Paste code tadi kat url bar. Nanti ada popup window, dan tada! Jumpalah time table tu. Save, print dan buatlah apa yang korang nak buat. 
Tada!

Horay! Teknik ini sudah diuji terhadap akaun CFS IIUM, saya tak taulah pulak dengan pelajar IIUM kat gombak/kuantan sana. Tapi kalau IIUM pakai sistem yang sama, patutnya boleh aje berfungsi.

Sesiapa yang terer komputer akan perasan yang saya dengan teknik ini, anda akan melakukan javascript injection terhadap page IIUM. Kenapa perlu begitu? Asalnya saya ingat nak save aje, pastu parse, tapi tak boleh. Nampaknya IIUM Portal ada sistem security yang kuat sikit, so kena ada sikit hacking.

Bagi yang tak faham bahasa komputer, senang cakap, kalau ada sapa-sapa suruh korang buat macam nie, dan sumber code itu meragukan, macam “Facebook Unlike button”, atau “Win an Ipad 2!”, JANGAN BUAT APA YANG DISURUH. Basically, ia menyuruh anda untuk menjalankan javascript dari sumber yang tak dikenali dan kemungkinan javascript tersebut mengandungi virus, dan akhirnya muncullah virus di Facebook.

Bagi sesiapa yang terer komputer dan berminat untuk mengetahui bagaimana program ini berfungsi, silalah lakukan ‘reverse engineer’ terhadap code tersebut yang mana tidak di ‘minified’ pun. Dan by the way, disebabkan pelbagai cross-doman scripting restriction, saya telah mengambil jalan mudah dengan menyimpan jadual anda di server terlebih dahulu. So, ya saya boleh tahu jadual anda kalau saya tahu nama anda dan saya berminat untuk mengetahuinya. Tapi jangan risau, nanti saya buat server tu auto delete record yang berumur lebih dari 1 jam ok?

So.. itu ajelah. Walaupun tak secantik mana, tapi ada potensi. So, selamat malam, good night, goodbye dan Assalamualaikum!