Seharian ini saya dihadapkan kepada sebuah tantangan untuk menghasilkan Search Panel atau Panel Pencarian yang fleksibel di Aplikasi Web yang dihasilkan oleh PHPMaker versi 11. Seperti yang kita ketahui, Panel Pencarian di versi 11 ini sudah mulai menggunakan style Twitter Bootstrap versi 3. Tentu saja hal ini cocok dilakukan dengan membuat Extensions PHPMaker.
Jadi yang saya maksud fleksibel itu seperti ini. Saya menginginkan Panel Pencarian yang ketika ditampilkan pertama kali di sebuah halaman, akan menggunakan pengaturan yang disimpan pada level Table di salah Extension saya yang bernama MasinoFixedWidthSite11. Jadi, pasti akan ada dua kemungkinan, apakah saat pertama ditampilkan dalam keadaan tertutup (Collapsed) atau terbuka (Expanded).
Selanjutnya, jika Pengguna nantinya mengklik tombol Panel Pencarian, maka sistem akan menyimpan status Panel Pencarian tersebut. Sehingga, ketika Pengguna mem-browse ke halaman lain, maka status terakhir dari Panel Pencarian itulah yang selalu diingat oleh sistem; tak perduli apakah Pengguna sudah pernah memasukkan kriteria pencarian atau tidak. Untuk urusan ini, maka saya sudah memisahkannya ke Extension yang bernama MasinoSearchPanelStatus11.
Kondisi yang terakhir tadi sekaligus akan menimpa perilaku standar bawaan PHPMaker, di mana Panel Pencarian akan selalu dalam keadaan terbuka (Expanded) jika Pengguna sudah pernah memasukkan kriteria pencarian sebelumnya.
Luar biasa ternyata mengasyikkannya mewujudkan hal ini melalui Extensions PHPMaker. Apalagi dengan tantangan bagaimana mensinkronkan antara kedua Extension di atas, sehingga antara yang satu dengan yang lainnya bisa saling melengkapi, dan tidak menimbulkan bentrokan.
Tinggalkan Balasan