USVN Weird Error

Hari ini jadwal migrasi server repository ke server baru. Setelah test sana, test sini semua sepertinya sudah ok. Sampai akhirnya test untuk interface usvn, ternyata ada beberapa page yang gak bisa dibuka.

Page-page itu adalah group info sama project info. Kedua pages itu gak bisa aku buka, yang satu ngasih error kalo call to undefine function bla…bla…, yang satu silently forward requestku ke halaman sebelumnya.

Error yang direkam oleh httpd adalah PHP Notice:  Trying to get property of non-object in /var/www/html/usvn/controllers/ProjectadminController.php on line 80, referer: http://xxx.xxx.xxx.xxx/usvn/admin/project/ aneh banget (bagi aku), soalnya harusnya framework yang dipakai oleh usvn tidak boleh mengembalikan error ini.

Terlusur punya telurus, dari cek config.ini, .htaccess punya usvn, cek config subversion, review config httpd sampek cek source code dari usvn. Tidak ada yang aneh dari itu semua, sampai akhirnya datang wangsit untuk cek database usvn. Karena database yang aku pake bukan create baru, tapi hasil copy paste dari server lama.

Walhasil pada waktu aku check table muncul pesan Table upgrade required. Please do "REPAIR TABLE `xxx`" to fix it! untuk tabel usvn.usvn_groups dan usvn.usvn_projects.

Setelah menjalankan apa yang diperintahkan, usvn berjalan lagi dengan lancar. Belum tahu dengan detil kenapa unupgraded table bisa menyebabkan error seperti ini. Tapi aku sudah cukup puas dengan berjalannya usvn.

Yahoo and ICQ Presence Image

Pagi ini aku meng-edit widget contact me, kali aja ada image lain yang lebih cocok untuk aku pasang. Tapi sial, aku lupa link untuk menggenerate kode html-nya.

Setelah googling dan yahooing (<– maksa) aku menemukan link itu. Untuk Yahoo! Messenger ada disini dan untuk ICQ ada disini.

Baca entri selengkapnya »

Mengurutkan daftar account Thunderbird

Akhir-akhir ini aku terpaksa merubah dan menata ulang account-account email yang aku gunakan, serta menghapus account-account email yang tidak lagi dibutuhkan. Hal ini menyebabkan urutan account yang tampil menjadi acak, atau tidak enak dipandang mata tidak sesuai dengan yang inginkan.

Untuk mengurutkan account ini ada sebuah add-on yang bisa digunakan, aku lupa namanya, tapi googling akan mengembalikan hasil yang cepat. Add-on ini waktu aku coba dulu tidak berjalan sesuai dengan yang aku inginkan, sehingga memaksa aku untuk mencari jalan lain.

Setelah googling sana, googling sini. Seperti inilah kesimpulannya:

Pertama-tama buka file ~/.mozilla-thunderbird/<random-name>/prefs.js dengan editor kesukaan. <random name> bisa dicek di file ~/.mozilla-thunderbird/profiles.ini seksi [Profile#] bagian Path dengan # adalah index profile thunderbird yang digunakan.

Cek bagian "mail.accountmanager.accounts" didalamnya terdapat isian yang kira-kira seperti ini "account9,account2,account6,account8,account3,account7,account1". Nah urutan inilah yang digunakan sebagai patokan untuk menampilakan list di thunderbird.

Untuk melihat account# itu adalah account apa, bisa cari pada key mail.account.account#.server setelah itu lihat pada key mail.server.server#.name. Pada key ini terdapat nama yang ditampilkan sesuai pada tree di thunderbird.

Setelah diurutkan sesuai dengan keinginan, silahkan lihat hasilnya dengan menjalankan thunderbird.

*Happy sorting*

Extract method untuk fp-json

Class TJSONArray dan TJSONObject tidak (atau belum) ada method extract, method ini, dalam implementasi yang sudah ada di class-class list, digunakan untuk mengeluarkan item tanpa harus mem-free / menghapus object. Sehingga item bisa dikeluarkan dari Array atau Object (element) dan digunakan lagi untuk keperluan lain.

Method yang disediakan dari 2 class tersebut hanyalah delete dan remove, kedua method itu implementasinya menghapus item yang maksud. Hal ini karena container object dicreate dengan opsi OwnsObjects true. Padahal dibutuhkan method untuk mengeluarkan item dari object-object tersebut tanpa harus menghapus karena object yang dikeluarkan masih dibutuhkan untuk keperluan lain.

Googling untuk mencari info tentang fp-json, kalau saja ada yang mempunyai masalah yang sama, menghasilkan kekecewaan karena sedikit banget hasil query tersebut. Sehingga aku diputuskan untuk menambah method tersebut kedalam package yang ada. Meskipun hal ini mengakibatkan ke-ribet-an jika harus mengcompile disystem yang lain. Tapi whateverlah kebutuhan aku sekarang, jadi harus dipatch sekarang. Jadi sukseslah aku mengotori source fpc diharddisk, setelah sebelumnya patch koneksi oracle mengotori source fpc.

Ini patch yang aku buat.
Baca entri selengkapnya »