APLIKASI E-COMMERCE...
Transcript of APLIKASI E-COMMERCE...
i
APLIKASI E-COMMERCE AROMATHERAPY
BERBASIS CONTENT MANAGEMENT SYSTEM
(Studi Kasus: CV. Viko Collection)
Yunizar
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI
SYARIF HIDAYATULLAH
JAKARTA
2011 M / 1432 H
ii
APLIKASI E-COMMERCE AROMATHERAPY
BERBASIS CONTENT MANAGEMENT SYSTEM
(Studi Kasus: CV. Viko Collection)
Skripsi
Diajukan untuk Memenuhi Persyaratan Memperoleh
Gelar Sarjana Komputer (S.Kom.)
Oleh :
Yunizar
204093002674
PROGRAM STUDI SISTEM INFORMASI
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M / 1432 H
PENGESAHAN UJIAN
Skripsi berjudul "Aplikasi E-commerce Aromatherapy Berbasis Conten:t
Management System (Studi Kasus: CV. Viko Collection)" yang ditulis oleh
Yunizaq NIM 204093002674 telah diuji dan dinyatakan lulus dalam sidang
Munaqosyah Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif
Hidayatullah Jakarta pada tanggal29 Juli 2011. Skripsi ini telah diterima sebagai
salah satu syarat untuk memperoleh gelar Sarjana Strata Satu (S1) Program Studi
Sistem Informasi.
Menyetujui:
Zainul Arham. M. SiNIP.19740730 200710 1 002
Pembimbing I Pembirnbing II
NIP. 197308t0 200604 2 00t
Mengetahui:
Ketua Program Studi Sistem Informasi
)
IV
Penguji II
---ZNIP. 19730325 20090t 2 001
?ffiffiiffiil2roor NrP. 19750818 200501 2 008
v
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-
BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN
SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI
ATAU LEMBAGA MANAPUN.
Jakarta, Juli 2011
Yunizar
204093002674
vi
ABSTRAKSI
YUNIZAR (204093002674). Aplikasi E-commerce Aromatherapy Berbasis
Content Management System. Studi kasus CV. Viko Collection (Di bawah
bimbingan VIVA ARIFIN dan QURROTUL AINI).
Viko Collection merupakan salah satu perusahaan pembuat dan penjual
aromatherapy, omset perhari CV. Viko Collection rata-rata Rp. 1.000.000,00/hari.
Dengan demikian data barang yang terjual kurang terakomodir perharinya.Untuk
mengatasi permasalahan tersebut, maka peneliti membuat aplikasi e-commerce
aromatherapy berbasis content management system pada CV. Viko Collection
untuk memasarkan produk lebih luas lagi dengan informasi produk yang lebih
uptodate. Jenis transaksi penjualan adalah Business to Customer (B2C) dan
pengguna aplikasi adalah staff marketing dan customer. Dalam pengembangan
sistem ini, peneliti menggunakan pendekatan terstruktur dengan tahapan yang ada
dalam System Development Life Cycle (SDLC) sebagai alur dari pengembangan
sistem yang terdiri dari 3 tahap yaitu: analisis, perancangan dan implementasi.
Tools yang digunakan dalam pembuatan aplikasi tersebut adalah PHP sebagai
bahasa scripting, Apache Web Server, dan MySQL sebagai pengolah database
dengan menggunakan paket Xampp. Hasil dari aplikasi ini menurut customer
cukup menarik untuk tampilan fasilitas yang ada.
Kata Kunci: E-commerce, Online, Aromatherapy, Joomla.
V Bab + xx Halaman + 76 Halaman + 9 Tabel + 31 Gambar + 3 Simbol + 15
Daftar Pustaka + Lampiran
vii
KATA PENGANTAR
Assalama‘alaikum Wr. Wb.
Alhamdulillah, segala puji dan syukur peneliti sampaikan kepada Allah
SWT yang telah memberikan limpahan rahmat dan hidayah-Nya sehingga peneliti
dapat menyelesaikan skripsi yang berjudul “Aplikasi E-commerce
Aromatherapy Berbasis Content Management System (Studi Kasus: CV. Viko
Collection)”. Shalawat dan salam peneliti haturkan kepada Nabi Muhammad
SAW, keluarganya, sahabatnya dan pengikutnya yang setia hingga akhir zaman.
Peneliti juga ingin mengucapkan banyak terima kasih kepada seluruh
pihak yang telah membantu baik itu berupa motivasi, bimbingan, moril maupun
materiil, yang ditujukan kepada:
1. Bapak DR. Syopiansyah Jaya Putra, M.SIS, selaku Dekan Fakultas Sains dan
Teknologi, UIN Syarif Hidayatullah Jakarta.
2. Ibu Nur Aeni Hidayah, MMSI, selaku Ketua Program Studi Sistem Informasi,
Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah Jakarta.
3. Ibu Viva Arifin, MMSI, sebagai Pembimbing I peneliti yang juga telah
memberikan banyak bantuan bagi peneliti dalam menyelesaikan skripsi ini.
4. Ibu Qurrotul Aini, MT, sebagai Pembimbing II peneliti yang juga telah
memberikan banyak masukan bagi peneliti dalam menyelesaikan skripsi ini.
5. Seluruh Dosen dan staf karyawan Fakultas Sains dan Teknologi, khususnya
Program Studi Sistem Informasi, yang telah membimbing peneliti selama
menuntut ilmu di UIN Syarif Hidayatullah Jakarta.
6. Orang tua tersayang yang telah memberikan doa dan dukungan baik moril
maupun materiil, adik-adikku (Reza dan Ricky), iparku (Ayu), keponakanku
(Rakha) yang telah memberikan segala perhatiannya dan keluarga besar
peneliti yang juga telah memberikan doa untuk peneliti.
7. Untuk Ibu Novi, Bpk Eko, Mb Fita, Mb Ian, Rini, Fahmi, Mb aik, (teman
kerja) yang selalu memberikan semangat dan memberikan doa untuk peneliti.
8. Untuk Andi yang selalu memberi semangat dan doa nya agar peneliti dapat
menyelesaikan skripsi ini.
viii
9. Teman-teman angkatan 2004 nonreguler : Ulisna, Widya, Qoyyimah, Pipit,
yang tidak pernah bosan menemani, memberikan inspirasi, dan membantu
memberikan semangat. Semoga teman-teman diberikan kemudahan dalam
segala kesulitan oleh Allah SWT dan tentunya niat untuk bekerja keras. Insya
Allah can help u all...
10. Untuk Hendro Wibowo yang membantu peneliti untuk membuat hosting.
11. Untuk Sigit, Edoy, Maksus dan Umi yang selalu membantu dan menemani
peneliti dalam setiap mengurus skripsi sampai selesai.
12. Teman-teman SI angkatan 2004 nonreguler maupun reguler dan TI angkatan
2004 nonreguler maupun reguler yang memberi semangat untuk selalu
berusaha pantang menyerah.
Peneliti sadar bahwa penyusunan skripsi ini masih jauh dari sempurna, oleh
karena itu peneliti mengharapkan kritik dan saran yang bersifat membangun.
Akhir kata, semoga skripsi ini bermanfaat bagi yang membacanya, khususnya
bagi peneliti sendiri.
Jakarta, Juli 2011
Yunizar
20409300267
ix
DAFTAR ISI
HALAMAN JUDUL ........................................................................................ ii
LEMBAR PENGESAHAN PEMBIMBING ................................................. iii
LEMBAR PENGESAHAN PENGUJI ........................................................... iv
PERNYATAAN ................................................................................................ v
ABSTRAKSI ..................................................................................................... vi
KATA PENGANTAR ...................................................................................... vii
DAFTAR ISI ..................................................................................................... ix
DAFTAR SIMBOL .......................................................................................... xvi
BAB I PENDAHULUAN
1.1 Latar Belakang ..................................................................................... 1
1.2 Rumusan Masalah ................................................................................. 5
1.3 Batasan Masalah ................................................................................... 5
1.4 Tujuan Penelitian ....................................................................................6
1.5 Manfaat Penelitian ................................................................................ 6
1.5.1 Bagi Pengguna ............................................................................ 6
1.5.2 Bagi Peneliti ................................................................................ 6
1.5.3 Bagi Universitas ........ .................................................................. 7
1.6 Metode Penelitian ................................................................................. 7
1.6.1 Metode Pegumpulan Data .......................................................... 7
1.6.2 Metode Pengembangan Sistem ................................................... 7
1.7 Sistematika Penulisan ........................................................................... 8
BAB II LANDASAN TEORI
2.1 Pengertian Aplikasi ............................................................................... 10
2.2 E-Commerce ......................................................................................... 10
2.2.1 Jenis Transaksi E-commerce ....................................................... 10
2.2.2 Ruang Lingkup E-commerce ...................................................... 12
2.2.3 Lingkup Pemasaran Elektronik .................................................. 12
x
2.3 Internet .................................................................................................. 15
2.3.1 Definisi Internet .......................................................................... 16
2.3.2 WWW ......................................................................................... 16
2.4 Website .................................................................................................. 17
2.4.1 Home Page ................................................................................. 18
2.5 Basis Data ............................................................................................. 18
2.5.1 Konsep DBMS ........................................................................... 19
2.6 Perangkat Analisis dan Perancangan Sistem ........................................ 20
2.7.1 Data Flow Diagram .................................................................... 20
2.7.2 Entity Relationship Diagram ...................................................... 23
2.7.3 Normalisasi ................................................................................. 24
2.7.4 Flowchart .................................................................................... 25
2.7.5 Kamus Data ................................................................................. 26
2.7 Content Management System ................................................................ 26
2.8.1 Joomla ......................................................................................... 27
2.8 Macromedia Dreamweaver 8.0 ............................................................. 28
2.9 Adobe Photoshop 7.0 ............................................................................ 28
2.10 Xampp .................................................................................................. 29
2.11 Perbandingan Studi Literatur Sejenis ................................................... 30
2.12 Siklus Hidup Pengembangan Sistem ................................................... 31
BAB III METODELOGI PENELITIAN
3.1 Metode Pengumpulan Data .................................................................. 34
3.1.1 Studi Pustaka ............................................................................... 34
3.1.2 Studi Lapangan ........................................................................... 34
a. Observasi ................................................................................. 34
b. Wawancara .............................................................................. 35
3.1.3 Studi Literatur Peneliti ................................................................ 35
3.2 Metode Pengembangan Sistem ............................................................. 35
3.2.1 Analisis ....................................................................................... 36
3.2.2 Perancangan ................................................................................ 37
xi
3.2.3 Implementasi ............................................................................... 38
3.3 Kerangka Penelitian .............................................................................. 39
BAB IV HASIL DAN PEMBAHASAN
4.1 Analisis ................................................................................................. 40
4.1.1 Gambaran Umum Perusahaan ..................................................... 40
4.1.1.1 Profil ................................................................................ 40
4.1.1.2 Visi dan Misi Perusahaan ................................................ 41
4.1.1.3 Struktur Organisasi .......................................................... 41
4.1.1.4 Tugas dan Wewenang ....................................................... 41
4.1.2 Analisis Sistem Berjalan ............................................................. 43
4.1.2.1 Uraian Sistem yang Berjalan ............................................ 43
4.1.2.2 Kelemahan dan Kelebihan Sistem Berjalan ...................... 46
4.1.2.3 Identifikasi Permasalahan ................................................. 46
4.1.2.4 Solusi Permasalahan ......................................................... 47
4.1.3 Literatur Sejenis .......................................................................... 48
4.1.4 Usulan Rancangan Aplikasi E-commerce ................................... 49
4.2 Perancangan .......................................................................................... 50
4.2.1 Perancangan Logika Proses ........................................................ 50
4.2.2 Perancangan Basis Data .............................................................. 57
4.2.3 Perancangan Interface ................................................................ 63
4.3 Implementasi ......................................................................................... 69
4.3.1 Perangkat Keras (Hardware) ...................................................... 69
4.3.2 Perangkat Lunak (Software) ....................................................... 69
4.4 Langkah-langkah Hosting dan alamat ................................................... 69
BAB V PENUTUP
5.1 Kesimpulan ............................................................................................ 74
5.2 Saran ...................................................................................................... 74
DAFTAR PUSTAKA ...................................................................................... 75
xii
LAMPIRAN 1 WAWANCARA
LAMPIRAN 2 TAMPILAN APLIKASI
LAMPIRAN LISTING PROGRAM
xiii
DAFTAR TABEL
Tabel 2.1 : Elemen Dasar DFD ......................................................................... xvi
Tabel 2.2 : Elemen Dasar ERD ...........................................................................xvii
Tabel 2.3 : Elemen Dasar Flowchart ..................................................................xvii
Tabel 2.4 : Perbandingan Studi Literatur Sejenis .............................................. 30
Tabel 4.1 : Solusi Permasalahan Sistem Berjalan .............................................. 47
Tabel 4.2 : Perbandingan Literatur Sejenis ........................................................ 48
Tabel 4.3 : Tabel Customer ................................................................................ 61
Tabel 4.4 : Tabel Pemesanan ............................................................................. 62
Tabel 4.5 : Tabel Produk .................................................................................... 62
xiv
DAFTAR GAMBAR
Gambar 2.1 : Contoh Contex Diagram ............................................................ 21
Gambar 2.2 : Contoh Diagram Zero ................................................................ 22
Gambar 2.3 : Contoh Diagram Rinci ............................................................... 22
Gambar 2.4 : Tampilan Joomla ........................................................................ 27
Gambar 2.5 : Lingkungan Kerja Macromedia Dreamweaver 8.0 .................... 28
Gambar 2.6 : Lingkungan Kerja Adobe Photoshop 7 ...................................... 29
Gambar 4.1 : Struktur Organisasi CV. Viko Collection .................................. 41
Gambar 4.2 : Flowchart Sistem Berjalan ........................................................ 45
Gambar 4.3 : Flowchart Sistem Usulan ........................................................... 49
Gambar 4.4 : Context Diagram ........................................................................ 50
Gambar 4.5 : DFD Diagram Nol (Overview Diagram) ................................... 51
Gambar 4.6 : Diagram Rinci Proses 2.0 level 1 ............................................... 52
Gambar 4.7 : Diagram Rinci Proses 3.0 level 2 ............................................... 52
Gambar 4.8 : Entity Relationship Diagram (ERD) .......................................... 57
Gambar 4.9 : UNF .............................................................................................. 58
Gambar 4.10 : 1NF ............................................................................................ 59
Gambar 4.11 : 2NF ............................................................................................ 60
Gambar 4.12 : 3NF ............................................................................................ 61
Gambar 4.13 : Perancangan Layout Halaman Home ......................................... 63
Gambar 4.14 : Perancangan Layout Halaman Store Online .............................. 64
Gambar 4.15 : Perancangan Layout Halaman Produk ....................................... 65
Gambar 4.16 : Perancangan Layout Halaman Shooping Cart ........................... 66
Gambar 4.17 : Perancangan Layout Halaman Registrasi ................................... 67
Gambar 4.18 : Perancangan Layout Halaman Guestbook ................................. 68
Gambar 4.19 : Tampilan Freetzi Hosting ........................................................... 70
Gambar 4.20 : Tampilan Input Nama Domain .................................................. 70
Gambar 4.21 : Tampilan Member Area ............................................................. 71
Gambar 4.22 : Tampilan C-panel ....................................................................... 71
Gambar 4.23 : Tampilan Proses Upload ............................................................ 72
xv
Gambar 4.24 : Hasil Akhir Setelah Upload ....................................................... 73
xvi
DAFTAR SIMBOL
Tabel 2.1. Elemen Dasar Data Flow Diagram (DFD) Versi Yourdon, De Marco
Simbol Keterangan
Entitas Luar menggambarkan sesuatu yang
ada di luar sistem, tetapi ia memberikan data ke
dalam sistem atau mendapat data dari sistem.
Arus Data menggambarkan arus data yang
berupa masukan untuk sistem atau hasil dari
sistem.
Proses menggambarkan apa yang dikerjakan
oleh sistem.
Penyimpanan Data menggambarkan tempat
penyimpanan data yang ada dalam sistem.
(Sumber : Ladjamudin, 2005)
Dalam hal ini yang diterapkan oleh peneliti dalam membuat Data Flow Diagram
(DFD) adalah no 1 sampai dengan 3.
xvii
Tabel 2.2. Elemen Dasar Entity Relational Diagram (ERD)
No Notasi Keterangan
1
Entitas, adalah suatu objek yang
dapat diidentifikasi dalam
lingkungan pemakai.
2
Relasi, adalah menunjukkan
adanya hubungan di antara
sejumlah entitas yang berbeda.
3
Atribut, berfungsi
mendeskripsikan karakter entitas
(atribut yang berfungsi sebagai key
diberi garis bawah).
4
Garis, sebagai penghubung antara
relasi dengan entitas, relasi dan
entitas dengan atribut.
(Sumber: Ladjamudin, 2005)
Dalam hal ini yang diterapkan oleh peneliti dalam membuat Entity Relationship
Diagram (ERD) adalah no 1 sampai dengan 4.
Entitas
Relasi
Atribut
xviii
Tabel 2.3 Elemen Dasar Flowchart
No Simbol Keterangan
1
Arus/flow
Menyatakan jalannya arus suatu
proses
2
Connector
Menyatakan sambungan dari satu
proses ke proses lainnya dalam
halaman/ lembar yang sama
3 Offline Connector,
Menyatakan sambungan dari satu
proses ke proses
lainnya dalam halaman/ lembar yang
berbeda
4
Process
Menyatakan sambungan dari satu
proses ke proses
lainnya dalam halaman/ lembar yang
berbeda
5
Manual
Menyatakan suatu tindakan (proses)
yang tidak dilakukan oleh komputer
6
Decision/Logika
Untuk menunjukkan suatu kondisi
tertentu yang akan menghasilkan dua
kemungkinan jawaban, ya/tidak
xix
7
Predifined Proses
Untuk menyatakan penyediaan tempat
penyimpanan suatu pengolahan untuk
memberi harga awal
8 Terminal
Untuk menyatakan permulaan atau
akhir program
9
Keying Operation
Untuk menyatakan segala jenis operasi
yang diproses dengan menggunakan
suatu mesin yang mempunyai
keyboard
Off-Line Storage
Untuk menujukkan bahwa data dalam
simbol ini akan disimpan ke suatu
media tertentu.
Manual input
Untuk memasukkan data secara
manual dengan menggunakan online
keyboard.
Input-Output
Untuk menyatakan proses input dan
outputnya tanpa
tergantung dengan jenis peralatannya.
Punched Card
Untuk menyatakan input berasal dari
kartu atau
xx
(Sumber: Ladjamudin, 2005)
output ditulis ke kartu.
Magnetic-tape unit
Untuk menyatakan input berasal dari
pita magnetic
atau output disimpan ke pita magnetic
Disk Storage
Untuk menyatakan input berasal dari
disk atau output disimpan ke disk
Document Untuk mencetak laporan ke printer
Display
Untuk menyatakan peralatan output
yang digunakan
berupa layar ( video, komputer)
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Seiring dengan cepatnya perputaran informasi dan tingkat keakuratan yang
tinggi, dewasa ini perubahan-perubahan dalam berbagai bidang pun terus terjadi
baik di bidang bisnis, perdagangan, pendidikan, sosial, budaya dan bidang-bidang
lainnya. Perubahan tersebut dimudahkan dengan perkembangan teknologi yang
terus menerus khususnya internet yang telah semakin memperlancar arus
pertukaran informasi. Salah satu teknologi yang berkembang pesat saat ini adalah
aplikasi yang menggunakan jasa internet. Internet telah menjadi salah satu
peranan yang sangat penting dalam berbagai aspek kehidupan.
Dalam penelitian ini peneliti juga telah mengkaji pembahasan skripsi dari
lima literatur yang terdapat pada Perpustakaan Utama UIN Syarif Hidayatullah
Jakarta dengan judul Rancang Bangun Sistem E-commerce Rotan dan Furniture
pada CV. Buana Wijaya dengan menggunakan materi e-commerce, Pembangunan
Sistem E-commerce pada Hotel Resort Pangrango Sukabumi dengan
menggunakan materi dan penjelasan DFD, Rancang Bangun Sistem E-commerce
pada CV. Hasta Karya Mandiri dengan menggunakan materi e-commerce ,
Aplikasi Web E-commerce Perusahaan Furniture Nina Galery dengan
menggunakan materi aplikasi, internet dan Perancangan Sistem Informasi
Pemesanan Berbasis Web dengan metode SDLC sampai implementasi. Dimana
didalam skripsi tersebut juga ditampilkan interface dari sistem yang telah dibuat.
2
Di samping itu menurut hasil penelitian dalam statistical bulletin yang
berjudul E-commerce and Information and Communication Technology (ICT)
Activity, tahun 2008 menyatakan bahwa proporsi bisnis menggunakan internet
untuk penjualan meningkat dari 14,4 % di tahun 2007 meningkat menjadi 15,2 %
di tahun 2008. (National Statistics United Kingdom, 2009). Data dari Internet
World Stats juga menyatakan bahwa Asia merupakan pengguna internet nomor 1
di dunia yang dinilai berdasarkan letak regionalnya 738,3 juta pengguna, tak lepas
dari hal tersebut Indonesia ternyata menempati urutan ke-5 besar dalam hal
penggunaan internet-nya dengan angka pengguna internet 25 juta pengguna.
(Wahono, 2009)
Dari grafik di atas omset pada CV. Viko Collection meningkat dan sedikit
menurun tahun 2007, keuntungan yang di dapat juga terdapat penurunan pada
tahun 2004 dan tahun 2007, kerugian yang di dapat di tahun 2004 dan 2007.
0
1
2
3
4
5
6
7
8
Tahun 2002
Tahun 2003
Tahun 2004
Tahun 2005
Tahun 2006
Tahun 2007
Tahun 2008
Tahun 2009
Tahun 2010
Omset
Keuntungan
Kerugian
3
Viko Collection merupakan salah satu perusahaan pembuat dan penjual
aromatherapy, omset yang didapat kurang lebih Rp. 1.000.000,00/hari. Dengan
demikian kurangnya untuk penyimpanan data penjualan, hingga saat ini proses
penjualan aromatherapy masih dilakukan secara manual dimana pembeli
berhubungan secara langsung dengan datang ke stand yang berada di beberapa
tempat seperti saat adanya event dan toko tetap. Dengan demikian pembeli
kehilangan waktu yang cukup lama untuk mendapatkan informasi tentang barang-
barang yang ada pada Viko Collection.
Dengan bertambahnya customer dan pendapatan pada CV. Viko Collection,
maka peneliti memutuskan untuk membuat Aplikasi ini sebagai parameter untuk
penunjang sarana promosi dan penjualan. Dari tahun 2002 sampai tahun 2011 ini
peningkatan customer semakin banyak, dengan bertambahnya customer maka
bertambah pula tingkat produksi barang yang akan dipasarkan.
Berdasarkan penelitian sebelumnya saat mengamati penjualan di stand Viko
Collection, pelanggan kesulitan mencari produk yang akan dibeli pada Viko
Collection karena masa event telah berakhir. Transaksi penjualan yang dilakukan
masih manual, laporan penjualan masih manual. Dari permasalahan tersebut
customer/pelanggan dan Direktur CV. Viko Collection setuju akan adanya
penjualan online, karena dapat mengetahui produk-produk terbaru apa saja yang
ada pada CV. Viko Collection dan dapat meningkatkan penjualan maupun berapa
banyak produk yang terjual.
Dari tinjauan sebelumnya, pertumbuhan internet ini tak lepas dari
keikutsertaan dan dukungan dunia bisnis. Dunia bisnis melihat internet sebagai
4
pasar global yang sangat besar dengan akses non-stop 24 jam sehari, sehingga
dapat dimanfaatkan sebagai media untuk melakukan promosi, menyediakan
informasi untuk pelanggan, bahkan melakukan transaksi bisnis tanpa dibatasi
kondisi geografis maupun perbedaan waktu, hal ini yang menjadi solusi dari
permasalahan yang ada pada CV. Viko Collection saat ini.
Dengan adanya kemudahan dalam tukar menukar informasi maka internet
bisa dipertimbangkan untuk membantu perusahaan sebagai salah satu alat untuk
bersaing dalam pasar bebas. Perkembangan internet dan komputer merupakan
salah satu alternatif bagi perusahaan untuk mempercepat dan mempermudah
bisnis mereka. Dengan internet, diharapkan pelanggan dapat mencari informasi
terlebih dahulu mengenai produk yang akan dibeli.
Dalam penggunaan fasilitas internet, suatu perusahaan dapat saling
berinteraksi langsung dengan perusahaan lainnya ataupun dengan pelanggan.
Perusahaan juga dapat memanfaatkan fasilitas internet untuk memasarkan dan
menjual produk mereka langsung ke pelanggan, yang dinamakan dengan e-
commerce.
Sistem promosi penjualan yang digunakan untuk menunjang kegiatan
operasional pada CV. Viko Collection saat ini sangat terbatas, mengingat promosi
yang dilakukan hanya saat event. Permasalahan inilah yang menjadi alasan
peneliti untuk memilih judul penelitian “Aplikasi E-Commerce AromaTherapy
Berbasis Content Management System (Studi Kasus: CV Viko Collection)” yang
membuat sistem e-commerce business to customer (B2C) yang digunakan oleh
5
CV. Viko Collection dapat menyebarkan informasi secara lebih luas dengan biaya
operasional yang lebih murah.
1.2. Rumusan Masalah
Berdasarkan latar belakang yang telah diuraikan, maka rumusan
permasalahannya akan dibahas adalah bagaimana merancang dan membangun
aplikasi yang dibuat untuk membantu CV. Viko Collection dalam memasarkan
produk aromatherapy dengan menerapkan conten yang berisi teks, gambar, dan
animasi.
1.3. Batasan Masalah
Ruang lingkup yang akan peneliti bahas dalam skripsi ini adalah:
a. Peneliti akomodir pada divisi staf marketing.
b. Proses bisnis yang dilakukan dengan melakukan registrasi terlebih
dahulu, login memilih produk, mengisi kwantitas, kemudian melakukan
pembayaran.
c. Metode yang digunakan adalah SDLC sampai tahap implementasi.
d. Software yang digunakan adalah Sistem Operasi Microsoft Windows XP
SP2, Mozilla FireFoX, Macromedia Dreamweaver 8.0, Adobe Photoshop
7.0, XamPP (X Apache, MySQL, PhP), Joomla Versi 5.0.
6
1.4. Tujuan Penelitian
Tujuan dari penelitian sistem e-commerce pada CV Viko Collection ini
adalah:
a. Dapat meningkatkan penjualan dan jangkauan penjualan melalui aplikasi
e-commerce ini.
b. Merancang sistem penjualan pada CV Viko Collection dengan membuat
sistem e-commerce yang berbasis content management system.
c. Menyediakan guestbook untuk komentar yang akan diberikan oleh
pelanggan/customer.
1.5. Manfaat Penelitian
Adapun manfaat-manfaat yang dapat diperoleh dalam melakukan penelitian
ini adalah:
1.5.1. Bagi Pengguna
a. Efektif bagi customer untuk memperoleh informasi tentang produk
yang dibutuhkan dan dapat melakukan transaksi dari berbagai lokasi,
baik dari rumah, kantor, warnet atau tempat-tempat lainnya..
b. Bagi CV. Viko Collection aplikasi ini dapat digunakan untuk
memasarkan produk secara luas.
1.5.2. Bagi Peneliti
a. Dapat membantu CV. Viko Collection untuk memasarkan produk.
b. Dapat membuat inovasi untuk penjualan aromatherapy berbasis web.
7
1.5.3. Bagi Universitas
a. Mengetahui kemampuan mahasiswa dalam menguasai materi ilmu
yang telah diperoleh selama di bangku kuliah.
b. Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan
sebagai bahan evaluasi.
c. Memberikan gambaran tentang kesiapan mahasiswa dalam
menghadapi dunia kerja yang sebenarnya.
1.6. Metode Penelitian
Metode yang digunakan dalam penelitian ini adalah:
1.6.1. Metode Pengumpulan Data
Adapun metode yang digunakan dalam mengumpulkan data adalah
sebagai berikut:
1. Studi Pustaka
2. Studi Lapangan
a. Pengamatan (Observasi)
b. Wawancara (Interview)
3. Studi Literatur Sejenis
1.6.2. Metode Pengembangan Sistem
Pembangunan sistem sesuai dengan metode system development life
cycle (SDLC) yang dilakukan dalam beberapa tahap, yaitu analisis, perancangan
8
dan diakhiri dengan implementasi aplikasi e-commerce aromatherapy
(Ladjamudin, 2005).
1.7. Sistematika Penulisan
Dalam penulisan penelitian ini terbagi menjadi 5 (lima) bab dengan beberapa
sub pokok bahasan. Adapun secara singkat sistematika diuraikan sebagai berikut:
BAB I : PENDAHULUAN
Bab ini berisi: latar belakang, perumusan masalah,
pembatasan masalah, tujuan penelitian, manfaat penelitian,
metode penelitian, dan sistematika penulisan.
BAB II : LANDASAN TEORI
Bab ini berisi: pengertian aplikasi, e-commerce, internet,
website, basis data, perangkat analisis dan perancangan
sistem seperti (DFD, ERD, Normalisasi, Flowchart,
Kamus data,), content management system (CMS),
Macromedia Dreamweaver 8.0, Adobe Photoshop 7.0,
xampp, perbandingan studi literatur sejenis, siklus hidup
pengembangan sistem (SDLC).
BAB III : METODE PENELITIAN
Bab ini berisi: uraian metode penelitian yang digunakan
dalam menganalisis, merancang aplikasi yang akan
dijalankan.
9
BAB IV : HASIL DAN PEMBAHASAN
Bab ini berisi: Gambaran umum perusahaan, analisis
sistem berjalan, litertur sejenis, usulan rancangan aplikasi
e-commerce, perancangan sistem, perancangan database,
coding dan testing.
BAB V : PENUTUP
Bab ini berisi tentang kesimpulan dan saran untuk
pengembangan penelitian lebih lanjut.
10
BAB II
LANDASAN TEORI
2.1. Pengertian Aplikasi
Pengertian Aplikasi/Application adalah Suatu program yang dirancang
untuk membantu performa dari tugas tertentu, seperti pengolah kata, akuntansi
atau manajemen inventory (Simarmata, 2007).
2.2. E-Commerce
Perdagangan elektronik (EC atau e-commerce) menggambarkan proses
pembelian, penjualan pengiriman, atau pertukaran produk, jasa, dan /atau
informasi melalui jaringan internet (Turban dkk, 2004).
E-commerce merupakan konsep beraneka segi yang transaksi pembelian dan
penjualan, pemasaran dan pelayanan, serta pengiriman dan pembayaran produk,
jasa atau informasi di internet, intranet, ekstranet dan jaringan lainnya antara
perusahaan berjaringan dengan prospek, pelanggan, pemasok, dan mitra bisnis
lainnya. (Indrayani, 2009).
2.2.1. Jenis Transaksi E-Commerce
Transaksi e-commerce dapat dilakukan dengan beberapa jenis (Turban
dkk, 2004), yaitu sebagai berikut:
1. Business-to-business (B2B): dalam transaksi B2B, antara penjual dan
pembeli adalah organisasi bisnis. Jenis dari e-commerce ini adalah yang
paling banyak digunakan.
11
2. Collaboration commerce (e-commerce): dalam e-commerce, mitra bisnis
berkolaborasi secara elektronik. Seperti kolaborasi yang sering terjadi antara
dan antara mitra bisnis sepanjang rantai persediaan (supply chain).
3. Business-to-consumers (B2C): dalam B2C, penjualnya adalah organisasi
atau perusahaan dan pembelinya adalah individu. Perusahaan menawarkan
produk/jasa kepada customer.
4. Consumer-to-business (C2B): dalam C2B, individu memperkenalkan
produk atau jasa tertentu yang dibutuhkan, dan supplier bersaing untuk
menyediakan produk atau jasa yang dibutuhkan customer dengan membeli
produk yang ditawarkan individu tersebut. Contohnya Priceline.com,
dimana individu memberitahu nama produk dan harga yang diinginkan, dan
Preceline berusaha untuk menemukan supplier untuk memenuhi kebutuhan
yang ditawarkan.
5. Consumer-to-consumer (C2C): dalam C2C, individu menjual produk atau
jasa ke individu lainnya. Biasanya individu mengiklankan produk, jasa,
pengetahuan, maupun keahliannya disalah satu situs lelang atau classified
ads. Contohnya meliputi www.bekas.com dan www.classified2000.com.
6. Intrabusiness (intraorganizational) commerce: dalam kasus ini, organisasi
menggunakan e-commerce secara internal untuk meningkatkan kinerja
operasinya. Dalam kasus ini dikenal sebagai B2E (Business-to-employee) e-
commerce, biasanya dilakukan melalui internet meliputi pertukaran barang,
jasa atau informasi. Aktifitas internal bisa bermacam-macam, mulai dari
12
menjual produk korporat kepada para karyawan hingga aktivitas pelatihan
online.
7. Government-to-citizen (G2C): dalam kasus ini, pemerintah menyediakan
layanan ke masyarakatnya melalui teknologi e-commerce. Pemerintah dapat
melakukan bisnis dengan pemerintah lainnya seperti halnya dengan bisnis
(G2B).
8. Mobile commerce (m-commerce): E-commerce dilakukan di lingkungan
wireless, seperti menggunakan telepon selular untuk akses internet, hal itu
disebut m-commerce.
Dalam hal ini yang diterapkan peneliti adalah B2C.
2.2.2. Ruang Lingkup E-Commerce
Bidang e-commerce sangat luas, untuk mengeksekusi atau melakukan
aplikasi e-commerce ini, perusahaan membutuhkan informasi, infrastruktur, dan
layanan pendukung yang tepat. Aplikasi e-commerce didukung oleh infrastruktur
dan lima area pendukung (Turban dkk, 2004), yaitu:
1. people/individu: Penjual, pembeli, perantara, spesialis sistem informasi dan
pegawai, dan partisipan lainnya.
2. Public policy/kebijakan publik: menurut undang-undang dan kebijakan
lainnya, dan isu-isu peraturan, seperti keamanan privasi dan perpajakan yang
dijelaskan oleh pemerintah.
3. Marketing and advertising/pemasaran dan periklanan: Seperti bisnis lainnya,
e-commerce biasanya membutuhkan dukungan dari pemasaran dan
13
periklanan. Hal ini sangat penting dalam transaksi online B2C dimana
pembeli dan penjual biasanya tidak saling mengenal satu sama lain.
4. Support service/layanan pendukung: Banyak layanan yang dibutuhkan untuk
mendukung e-commerce. Dimulai dari pembayaran sampai pengiriman
pesanan dan isi.
5. Business mitraship/mitra bisnis: Kolaborasi bisnis, e-marketplace, dan
berbagai mitra bisnis dalam e-commerce.
Infrastruktur pendukung meliputi hardware, software, dan jaringan, mulai
dari browser dan multimedia.
2.2.3. Lingkup Pemasaran Elektronik
Pemasaran secara elektronik terasa lebih menguntungkan. Menurut
American Marketing Association (dikutip dari buku Electronic Commerce
tulisan Marilyn Greenstein dan Miklos Vasehelyi), pemasaran dapat
didefinisikan sebagai proses analisis, perencanaan, dan implementasi konsep-
konsep penetapan harga (pricing), promosi (promotion), serta penyebaran
(distribution) ide-ide, barang-barang, dan layanan-layanan, untuk menciptakan
pertukaran-pertukaran yang memuaskan, baik untuk sasaran-sasaran organisasi
maupun untuk sasaran-sasaran pribadi (Nugroho, 2006). Ada istilah lima “P”
yang diterapkan pada pemasaran di internet, yaitu:
1. Product (Produk)
Product adalah barang atau jasa yang ditawarkan perusahaan kepada para
customer. Layanan yang diberikan kepada customer setelah terjdi penjualan
14
merupakan komponen yang penting dari nilai produk secara keseluruhan
dan mungkin dapat dikemas bersama dengan produk saat produk tersebut
ditawarkan ke customer, misalnya produk tersebut memiliki garansi dimana
terdapat layanan 24 jam untuk pertanyaan seputar barang yang dibeli.
2. Pricing (Harga)
Pricing merujuk pada proses yang terlibat dalam penentuan jumlah uang
yang harus ditagihkan kepada customer untuk suatu barang atau jasa yang
diperolehnya. Pemasar-pemasar berbasis web saat ini telah menghaasilkan
strategi-strategi penentuan harga yang menarik beberapa situs menyediakan
layanan gratis untuk pengunjung dengan tujuan untuk menciptakan
komunitas dimana mereka dapat menjual ruang periklanan, misalnya
Priceline.com yang telah disebutkan sebelumnya dimana customer dapat
menetapkan harga sendiri terhadap barang atau jasa yang dibutuhkan.
3. Place (Distribusi)
Place seringkali dirujuk penyebaran atau distribusi, dimana distribusi dapat
didefinisikan sebagai tugas atau pekerjaan untuk memindahkan produk dari
lokasi produsen ke customer. Menurut jenis media serta sifatnya, internet itu
sendiri dapat digolongkan dan digunakan sebagai saluran pengiriman untuk
produk-produk digital. Produk-produk digital adalah barang-barang seperti
perangkat lunak, data, lagu, film, atau berkas multimedia yang didigitalisasi.
4. Promotion (Promosi)
Fungsi penjualan dan pemasaran merupakan entitas yang terpisah dalam
rantai berorientasi customer. Promotion (promosi), dalam ilmu pemasaran
15
tradisional, merupakan suatu upaya perusahaan agar semua fungsi
pemasaran suatu saat nanti akan berakhir dengan tahapan penjualan.
5. “P” yang kelima: Personalization
Teknologi-teknologi seperti basis data, cookie, serta telekomunikasi,
membuat pemasaran yang bersifat pribadi dimungkinkan dengan cara yang
relatif sangat mudah serta efisien. Personalization di internet merujuk pada
kemampuan para customer untuk menerima informasi yang bersifat pribadi
atau tindakan para customer dalam hal mengunjungi situs-situs web dengan
halaman-halaman yang dikustomisasi khusus untuk customer.
Personalization mencerminkan tantangan dan kesempatan baru dalam
bentuk media internet.
2.3. Internet
Interconnected Network atau lebih dikenal dengan Internet lahir sebagai
hasil langsung dari keperluan-keperluan penelitian dan pengembangan oleh
pemerintah, universitas dan perusahaan besar. Dengan semakin bertambahnya
waktu, internet semakin berkembang sehingga para pemakai non- peneliti dapat
menikmati keuntungan dari internet. Tujuan utama merealisasikan internet
tersebut adalah untuk dapat bekerja bersama-sama secara efisien, sehingga
memungkinkan untuk berbagi data dan informasi secara bersama-sama (Sutanta,
2005).
16
2.3.1. Definisi Internet
Ada berbagai pendapat mengenai definisi internet. Bagi beberapa orang,
internet adalah layanan online yang menawarkan unsure hiburan, sedangkan bagi
yang lainnya internet bisa berarti layanan online untuk masalah pendidikan, atau
bagi yang lainnya. Internet merupakan suatu jaringan komputer yang
menyediakan fungsi ekonomi bagi perusahaan baik sebagai alat pemasaran atau
publikasi perusahaan bahkan komunikasi (Sutanta, 2005)
2.3.2. WWW (World Wide Web)
WWW atau sering disebut sebagai web saja merupakan salah satu aplikasi
internet yang paling populer. Demikian populernya hingga banyak orang yang
keliru menidentikkan web sebagai internet. Secara teknis, web adalah sebuah
sistem dimana informasi dalam bentuk teks, gambar, suara dan lainnya yang
tersimpan dalam sebuah internet web server ditampilkan dalam bentuk hypertext.
Informasi dalam bentuk teks di web umumnya ditulis dalam format HTML
(Hypertext Markup Language). Informasi lainnya disajikan dalam bentuk grafis
(dalam format GIF, JPG, PNG), suara (dalam format AU, WAV), dan obyek
multimedia lainnya seperti MIDI, Shockwave, Quicktime Movie, 3D World
(Sutanta, 2005).
17
2.4. Website
Website merupakan fasilitas hiperteks untuk menampilkan data berupa teks,
gambar, suara, animasi, dan data multimedia lainnya. Penggolongan website
berdasarkan isinya (website contents) terdiri atas dua jenis yaitu ( Wahana, 2006) :
1. Web Statis
Web statis adalah web yang berisi/menampilkan informasi-informasi yang
sifatnya statis (tetap). Disebut statis karena pengguna tidak dapat berinteraksi
dengan web tersebut. Singkatnya, untuk mengetahui suatu web lain dan berisi
suatu informasi yang tetap maka web tersebut disebut statis. Pada web statis,
pengguna hanya dapat melihat isi dokumen pada halaman web dan apabila
diklik akan berpindah ke halaman web yang lain. Interaksi pengguna hanya
terbatas dapat melihat informasi yang ditampilkan, tetapi tidak dapat
mengolah informasi yang dihasilkan. Web statis biasanya berupa HyperText
Markup Language (HTML) yang ditulis pada editor teks dan disimpan dalam
bentuk .html atau .htm. Pengertian HTML adalah bahasa yang menggunakan
perintah sederhana dalam standar dokumen untuk menyediakan suatu
tampilan visual yang terintegrasi. HTML terdiri atas perintah-perintah
sederhana yang menjelaskan bagaimana struktur dokumen, tetapi tidak
memformatnya. Browser yang menampilkan HTML akan memformat dan
menyesuaikan tampilan HTML sehingga sesuai dengan layar computer
pengunjung (Wahana, 2006).
18
2. Web Dinamis
Web dinamis adalah web yang menampilkan informasi serta dapat
berinteraksi dengan pengguna. Web yang dinamis memungkinkan pengguna
untuk berinteraksi menggunakan form sehingga dapat mengolah informasi
yang ditampilkan. Web dinamis bersifat interaktif, tidak kaku, dan terlihat
lebih indah. Web dinamis biasanya berupa Page Hypertext Preprocessor
(PHP) yang membuat halaman web HTML menjadi dinamis. HTML yang
digabung dengan script PHP akan menghasilkan tampilan web yang dinamis,
indah, dan interaktif (Wahana, 2006).
Dalam hal ini yang diterapkan oleh peneliti adalah web dinamis.
2.4.1. Home Page
Home page adalah halaman utama pada sebuah website. Halaman inilah
yang akan ditampillkan ketika Anda memanggil sebuah website walaupun Anda
tidak menyebutkan halaman tersebut. (Kadir, 2005). Dari definisi home page
diatas, dapat disimpulkan bahwa home page merupakan halaman awal atau
halaman muka saat pengguna mengunjungi website tersebut.
2.5. Basis Data
Basis data (database) adalah koleksi terpadu dari data-data yang saling
berkaitan dari suatu enterprise (perusahaan, instansi pemerintah atau swasta)
(Ladjamudin, 2005).
19
Basis data (database) terdiri atas data yang akan digunakan atau
diperuntukkan terhadap banyak ”user”, dimana masing-masing “user” akan
menggunakan data tersebut sesuai dengan tugas dan fungsinya, dan “user” lain
dapat juga menggunakan data tersebut dalam waktu yang bersamaan
(Ladjamudin, 2005). Berikut adalah beberapa keuntungan dari basis data terhadap
sistem pemrosesan berkas (Ladjamudin, 2005) :
1. Kemubaziran data terkurangi
2. Penggunaan data lebih mudah
3. Sekuriti data lebih mudah dilakukan
4. Berbagi data dapat selalu dilakukan oleh setiap “user”
2.5.1. Konsep DBMS (Database Management System)
Kumpulan atau gabungan database dengan perangkat lunak dinamakan
Database Management System atau disingkat menjadi DBMS. DBMS
merupakan koleksi terpadu dari database dan program-program komputer yang
digunakan untuk mengakses dan memelihara database. Program-program
tersebut menyediakan berbagai fasiltas operasi untuk memasukkan, melacak,
dan memodifikasi data kedalam database, mendefinisikan data baru, serta
mengolah data menjadi informasi yang dibutuhkan (Ladjamudin, 2005).
Tujuan utama dari DBMS adalah untuk menyediakan suatu lingkungan
yang mudah dan efisien untuk penggunaan, penarik dan penyimpanan data dan
informasi (Ladjamudin, 2005).
20
Dibandingkan dengan sistem tradisional yang berbasis kertas, DBMS
memiliki empat keunggulan sebagai berikut (Lajamudin, 2005) :
1. Kepraktisan, sistem yang berbasis kertas akan menggunakan kertas yang
sangat banyak untuk menyimpan informasi, sedangkan DBMS
menggunakan media penyimpanan sekunder yang berukuran kecil tetapi
pada informasi.
2. Kecepatan, mesin dapat mengambil atau mengubah data jauh lebih cepat
dari pada manusia.
3. Mengurangi kejemuan, orang cenderung menjadi bosan kalau melakukan
tindakan-tindakan yang berulang yang menggunakan tangan (misalnya
harus mengganti suatu informasi).
4. Kekinian, informasi yang tersedia pada DBMS akan bersifat mutakhir dan
akurat setiap saat.
2.6. Perangkat Analisis dan Perancangan Sistem
2.6.1. Data Flow Diagram (DFD)
Data Flow Diagram merupakan model dari sistem untuk menggambarkan
pembagian sistem ke modul yang lebih kecil. Salah satu keuntungan
menggunakan DFD adalah memudahkan pemakai atau user yang kurang
menguasai komputer untuk mengerti sistem yang akan dikerjakan. DFD terdiri
dari 3 bagian yaitu (Ladjamudin, 2005) :
1. Diagram Konteks, adalah diagram yang terdiri dari suatu proses yang
menggambarkan ruang lingkup suatu sistem.
21
Customer Aplikasi E-commerce
AromatherapyAdmin
Wakil Direktur
Username&password
Info_login
Data_registrasi
Info_registrasi
Input_order
Konfirmasi_status
Cek_registrasi
Konfirmasi _pembayaran
Input_produk
Konfirmasi_pembayaran
Konfirmasi _pembayaran
Informasi_pemesanan
Cek_pemesanan
Input_produk
Gambar 2.1. Contoh Diagram Context
2. Diagram Nol/Zero, adalah diagram yang menggambarkan proses dari diagram
konteks. Diagram nol memberikan pandangan secara menyeluruh mengenai
sistem yang ditangani, menunjukkan tentang fungsi-fungsi utama, aliran data
dan eksternal entity.
22
Gambar 2.2. Contoh Diagram Zero
3. Diagram Rinci, adalah diagram yang menguraikan proses apa yang ada dalam
diagram zero atau diagram level di atasnya.
Gambar 2.3. Contoh Diagram Rinci
Customer
1.0
Registrasi
Admin
Wakil
Direktur
Data_registrasi
Info_registrasi Data_registrasi
2.0
Login
Admin
Username&password Username&password
Info_login
3.0
Pemesanan
Admin
Input_order
Konfirmasi_status
Data_pemesana
n
Konfirmasi_status
4.0
Konfirmasi
Admin
Konfirmasi_pembayaran Invoice
Customer
Pemesanan
Data_pemesanan
Data_registrasi
Username&password
Data_pemesanan
2.1
Input Data
Registrasi
Customer Data_Registrasi
Customer
Data_Registrasi
2.2
Cek Data
Registrasi
2.3
Informasi
Registrasi
Info_Registrasi Info_Registrasi
Data_registrasi
Info_registrasi
23
Simbol-simbol yang digunakan dalam DFD dapat dilihat pada daftar
simbol tabel 2.1.
2.6.2. Entity Relationship Diagram (ERD)
Entity Relationship Diagram (ERD) adalah suatu model jaringan yang
menggunakan susunan data yang disimpan dalam sistem secara abstrak. ERD juga
merupakan model jaringan data yang menekankan pada struktur-struktur dan
relationship data (Ladjamudin, 2005). ERD terdiri atas beberapa elemen, yaitu :
1. Entity
Entity adalah sesuatu apa saja yang ada di dalam sistem, nyata maupun
abstrak dimana data tersimpan. Entity diberi nama dengan kata benda dan
dapat berupa orang, benda, lokasi, kejadian (terdapat unsur waktu di
dalamnya).
2. Relationship
Relationship adalah hubungan alamiah yang terjadi antar entity. Pada
umumnya relationship diberi nama dengan kata kerja dasar, sehingga
memudahkan untuk melakukan pembacaan relasinya (kalimat aktif atau
pasif).
3. Relationship Degree
Relationship degree atau derajat relationship adalah jumlah entity yang
berpartisipasi dalam satu relationship.
24
4. Atribut
Atribut adalah sifat atau karakteristik dari tiap entity maupun relationship.
Atribut merupakan elemen dari tiap entity dan relationship.
5. Cardinality
Cardinality atau kardinalitas merujuk kepada jumlah hubungan maksimum
yang terjadi dari entitas yang satu ke entitas yang lain dan begitu juga
sebaliknya. Terdapat tiga macam kardinalitas relasi, yaitu : one to one, one to
many atau many to one dan many to many.
Notasi yang biasa digunakan dalam ERD dapat dilihat pada daftar simbol
tabel 2.2
2.6.3. Normalisasi
Normalisasi adalah proses pengelompokan data kedalam bentuk tabel atau
relasi atau file untuk menyatakan entitas dan hubungan mereka sehingga terwujud
satu bentuk database yang mudah untuk dimodifikasi, Ada beberapa bentuk
normal yaitu (Ladjamudin, 2005 ) :
1. Bentuk Tidak Normal (Unnormal)
Pada bentuk ini tidak ada keharusan mengikuti bentuk format tertentu, data
dapat saja tidak lengkap atau terduplikasi. Data dikumpulkan apaadanya
sesuai dengan kedatangannya.
2. Bentuk Normal I (First Normal Form/1NF)
Pada tahap ini dilakukan penghilangan beberapa group elemen yang berulang
agar menjadi satu harga tunggal yang berinteraksi diantara setiap baris pada
25
suatu tabel, dan setiap atribut harus mempunyai nilai data yang atomic
(bersifat atomic value). Syarat normal kesatu :
a. Setiap data dibentuk dalam flat file, data dibentuk dalam satu record demi
satu record nilai dari field berupa “atomic value”.
b. Tidak ada set atribute yang berulang atau bernilai ganda.
c. Telah dibentuknya primary key untuk tabel/relasi tersebut.
d. Tiap atribute hanya memiliki satu pengertian.
3. Bentuk Normal II (Second Normal Form/2NF )
Suatu relasi memenuhi 2-NF jika dan hanya jika :
a. Bentuk data telah memenuhi kriteria bentuk normal kesatu.
b. Atribut bukan kunci haruslah memiliki ketergantungan fungsional
sepenuhnya pada kunci utama.
4. Bentuk Normal III (Third Normal Form/3-NF).
Suatu relasi memenuhi bentuk III (3-NF) jika dan hanya jika :
a. Bentuk data telah memenuhi kriteria bentuk normal kedua.
b. Atribut bukan kunci haruslah tidak memiliki ketergantungan transitif,
seluruh atribut bukan kunci pada suatu relasi hanya memiliki
ketergantungan fungsional terhadap primary key di relasi itu saja.
2.6.4. Flowchart
Flowchart adalah bagan-bagan yang mempunyai arus yang
menggambarkan langkah-langkah penyelesaian suatu masalah. Ada dua macam
26
flowchart yang menggambarkan proses dengan komputer (Ladjamudin, 2005),
yaitu :
1. Sistem Flowchart, yaitu bagan yang memperlihatkan urutan proses dalam
sistem dengan menunjukan alat media input, output serta jenis media
penyimpanan dan pengolahan data
2. Program Flowchart, yaitu bagan yang memperlihatkan urutan instruksi yang
digambarkan dengan simbol tertentu untuk memecahkan masalah dalam
program.
Daftar tabel Flowchart dapat di lihat pada daftar simbol tabel 2.3
2.6.5. Kamus Data
Kamus data berfungsi membantu pelaku sistem untuk mengartikan aplikasi
secara detail dan mengorganisasi semua elemen data yang digunakan dalam
sistem secara persis sehingga pemakai dan penganalisa sistem mempunyai dasar
pengertian yang sama tentang masukan, keluaran, penyimpanan dan proses
(Ladjamudin, 2005).
2.7. Content Management System (CMS)
CMS atau Content Management System adalah suatu metoda mengelola
sebuah content/isi. Content bisa berupa teks, suara, gambar video, animasi dan
aplikasi lainnya yang disimpan dalam sebuah database sehingga mudah dalam
pengelolaannya (Yuhefizar, 2009).
27
Content managemen system (CMS) adalah sistem perangkat lunak yang
memungkinkan seseorang untuk mengatur proses berjalannya suatu situs web
(Simarmata, 2010).
Dalam hal ini content yang diterapkan oleh peneliti berupa teks, gambar,
dan animasi.
2.7.1. Joomla
Joomla merupakan software untuk membangun website secara dinamik.
Sebagai aplikasi Content Management System (CMS) yang powerfull dan
bersifat Opensource (Hakim, 2009).
Keunggulan yang dimiliki joomla:
1. Joomla merupakan CMS yang popular dengan dukungan komunitas yang
luas.
2. Joomla didukung oleh pengembang yang kompeten dengan dukungan luas.
3. Joomla merupakan aplikasi yang sangat mudah digunakan dengan antarmuka
(interface) yang intuitif.
4. Desain situs Joomla dapat diubah secara mudah (Hakim, 2009).
Gambar 2.4. Tampilan Joomla
28
2.8. Macromedia Dreamweaver 8.0
Macromedia Dreamweaver adalah sebuah software web design yang
menawarkan cara mendesain website dengan dua langkah sekaligus dalam satu
waktu, yaitu mendesain dan memprogram (Suyanto, 2003).
Macromedia Dreamweaver 8.0 didukung dengan penggunaan CSS, XML,
RSS, dan kemudahan-kemudahan lain yang diperlukan (Lenawati, 2007) :
Berikut ini lingkungan kerja Macromedia Dreamweaver 8.0
Insert Bar
Panel Groups
Document tool Bar Document Window
Property Inspector
Gambar 2.5. Lingkungan Kerja Macromedia Dreamweaver 8.0
(Sumber: Lenawati, 2007)
2.9. Adobe Photoshop 7.0
Adobe Photoshop CS adalah program yang diorientasikan untuk mengedit,
memodifikasi, maupun memanipulasi bitmap atau foto. Aplikasi Adobe
Photoshop 7 selain tangguh dalam mengedit, memodifikasi, maupun
memanipulasi bitmap atau foto, juga banyak lagi menyediakan fasilitasfasilitas
lain yang menarik. Untuk memenuhi setiap kebutuhan yang menarik, seperti:
29
pengaturan warna yang semakin akurat, penggunaan fasilitas efek dan filter yang
semakin canggih, dan fasilitas pemodifikasian tipografi teks yang semakin unik
dan fantastik (Khaeruddin : 2005). Berikut ini lingkungan kerja Adobe Photoshop
7 :
Toolbar
Document Window
Panel Groups
Gambar 2.6. Lingkungan Kerja Adobe Photoshop 7
(Sumber: Khaeruddin, 2005)
2.10. XAMPP
Xampp merupakan suatu paket yang terdiri dari Apache, MySQL, PHP,
dan Perl yang dapat digunakan untuk membantu proses instalasi produk tersebut
(Sukarno, 2006).
Xampp dikembangkan oleh Apache Friends yang merupakan sebuah
website non-komersial yang bertujuan untuk mempromosikan web server Apache.
XAMPP ditemukan pada musim semi tahun 2002 oleh Kai ’Oswald’ Seidler dan
Kay Vogelgesang. Ada beberapa keuntungan XAMPP, yaitu:
30
1. Xampp dapat berjalan pada operating system Linux dan Windows. Dan
kemungkinan juga akan berjalan di Macintosh.
2. Mudah bagi programmer apabila ingin berganti versi PHP, cukup dengan
melakukan switch versi.
3. Mudah dan cepat dalam proses instalasi.
2.11. Perbandingan Studi Literatur Sejenis
Dalam penelitian Aplikasi E-commerce Aromatherapy Berbasis Content
Management System, peneliti mengambil 3 hasil penelitian untuk dijadikan
referensi sebagai bahan perbandingan skripsi yang dilakukan peneliti, yaitu:
Tabel 2.4. Perbandingan Studi Literatur Sejenis
No Judul – Penulis Metode Tool Kelebihan Kelemahan
1.
2.
Rancang
Bangun Sistem
E-commerce
Rotan dan
Furniture pada
CV. Buana
Wijaya–Mita
Ristanti.
(Skripsi, tahun
2010)
Pembangunan
Sistem E-
commerce pada
Hotel Resort
Pangrango
Sukabumi–Ari
Muhammad
Rahman.
(Skripsi, tahun
2010)
System
Development
Life Cycle
(SDLC)
Unified
Modelling
Language
(UML).
Flowchart,
DFD, ERD,
STD, PHP,
MySQL,
Apache.
State Machine
Diagram,
Class
Diagram, Use
Case Diagram,
Sequence
Diagram,
Activity
Diagram
HTML, PHP,
CSS, MySQL,
Apache,
Proses
pembayaran
yang
dilakukan
dengan 3
metode Cash
On Delivery
(COD),
Transfer,
kartu kredit.
Proses
pembayaran
yang
dilakukan
dengan 3
metode Cash
On Delivery
(COD),
Transfer,
kartu kredit.
Tidak
membahas
mengenai
keamanan.
Tidak
adanya
rancangan
laporan
pemasukan
untuk
bagian
keuangan,
tidak
adanya
rancangan
laporan
31
3.
Rancang
Bangun Sistem
E-commerce
pada CV. Hasta
Karya
Mandiri–Rizaz.
(Skripsi, tahun
2009)
System
Development
Life Cycle
(SDLC)
Macromedia
Dreamweaver,
Adobe
Photoshop.
DFD, ERD,
Flowchart,
STD,
normalisasi,
PHP, MySQL,
Dalam
aplikasi ada
untuk
pencarian
produk,
adanya nilai
transaksi
keuangan
dengan
menggunaka
n digit
double,
Proses
pembayaran
yang
dilakukan
dengan 3
metode Cash
On Delivery
(COD),
Transfer,
kartu kredit.
untuk
atasan.
-
2.12. Siklus Hidup Pengembangan Sistem atau System Development Life
Cycle (SDLC)
Daur hidup pengembangan sistem/SDLC berfungsi untuk menggambarkan
tahapan-tahapan utama dan langkah-langkah dari setiap tahapan yang secara garis
besar terbagi dalam tiga kegiatan utama, yaitu (Ladjamudin, 2005) :
1. Analisis
Tahapan analisis digunakan oleh analis sistem untuk membuat keputusan.
Apabila sistem saat ini mempunyai masalah atau sudah tidak berfungsi
32
secara baik, dan hasil analisisnya digunakan sebagai dasar untuk
memperbaiki sistem. Seorang analisis perlu mengetahui ruang lingkup
pekerjaan yang akan ditanganinya, perlu memahami sistem yang sedang
berjalan saat ini, dan dapat dilakukan identifikasi terhadap masalah yang
muncul dan mencari solusinya dengan professional. Kegiatan yang
dilakukan dalam tahap analisis ini adalah sebagai berikut :
1) Gambaran umum perusahaan
2) Analisis sistem berjalan
3) Literatur sejenis
4) Usulan rancangan aplikasi e-commerce
2. Perancangan
Tahapan perancangan memiliki tujuan untuk merancang sistem baru yang
dapat menyelesaikan masalah - masalah yang dihadapi perusahaan yang
diperoleh dari pemilihan alternatif sistem yang terbaik. Kegiatan yang
dilakukan dalam tahap perancangan ini meliputi perancangan logika
proses, basis data dan interface.
1) Perancangan Logika Proses
2) Perancangan Basis Data
3) Perancangan Interface
3. Implementasi
Memiliki beberapa tujuan, yaitu untuk melakukan kegiatan spasifikasi
rancangan logikal kedalam kegiatan yang sebenarnya dari sistem informasi
yang akan dibangunnya atau dikembangkannya, lalu
33
mengimplementasikan sistem yang baru tersebut ke dalam salah satu
bahasa pemrograman yang paling sesuai. Pada tahap ini juga harus dijamin
bahwa sistem yang baru dapat berjalan secara optimal. Kegiatan yang
dilakukan dalam tahap implementasi ini adalah pembuatan program dan
tes data.
34
BAB III
METODE PENELITIAN
3.1. Metode Pengumpulan Data
3.1.1. Studi Pustaka
Studi Pustaka dilakukan dengan cara membaca dan mempelajari buku-
buku yang berhubungan dengan masalah yang dibahas dalam pembuatan sistem
e-commerce dan selain itu peneliti mengunjungi perpustakaan kampus untuk
mempelajari buku yang berkaitan dengan penelitian. Dari hasil membaca 15
buku peneliti dapatkan bagaimana membangun suatu sistem pemesanan yang
efekif dan efisien. Daftar buku terlampir pada Daftar Pustaka.
3.1.2. Studi Lapangan
a. Observasi
Pengamatan dilakukan dengan melakukan peninjauan langsung di gudang
CV. Viko Collection, hal–hal yang diamati adalah proses penjualan yang
sedang berjalan dan juga kegiatan–kegiatan yang berhubungan dengan
perkembangan CV. Viko Collection. Observasi dilaksanakan di gudang
CV. Viko Collection, beralamat di Perum PP4 blok C/12 Mekarsari-
cimanggis, dan membutuhkan waktu 3 bulan, dari bulan Februari sampai
dengan Juni 2011. Dari hasil observasi didapat data-data dan informasi yang
digunakan dalam membangun aplikasi e-commerce.
35
b. Wawancara
Wawancara dilakukan dengan wakil direktur, asisten manager dan staf
marketing yaitu ibu Novi, ibu Dhewi dan staf marketing . Pertanyaan yang
diajukan sebanyak 20 pertanyaan dan setiap pertanyaan dijawab langsung
oleh ibu Novi, ibu Dhewi dan staf marketing. Berdasarkan hasil
wawancara yang peneliti lakukan, didapat profile perusahaan Viko
Collection dan juga pihak perusahaan menginginkan adanya suatu sistem
yang baru yang dapat mengoptimakan penjualan Aromatherapy pada Viko
Collection karena sistem yang sekarang ini dirasa masih banyak
kelemahanya. Wawancara dapat selengkapnya dilihat pada lampiran 1.
3.1.3. Studi Literatur Peneliti
Studi literatur yang peneliti lakukan adalah dengan membandingkan
penelitian sejenis dengan aplikasi e-commerce yang dibuat oleh peneliti.
Literatur sejenis selengkapnya dapat dilihat pada sub bab 2.14.
3.2. Metode Pengembangan Sistem
Dalam penyusunan skripsi ini menggunakan proses System Development
Life Cycle ( SDLC ). Seperti yang sudah dijelaskan pada bab sebelumnya strategi
ini mensyaratkan penyelesaian tiap proses secara satu persatu sehingga lebih
mudah dimengerti dalam menganalisa permasalahan. Tahapan pada metodologi
pengembangan sistem dengan system development life cycle (SDLC) yang
dilakukan adalah sebagai berikut :
36
3.2.1. Analisis
Tahapan analisis ini dilakukan dengan melakukan analisa terhadap sistem
yang sedang berjalan, kemudian diidentifikasi permasalahan yang terjadi pada
sistem berjalan berdasarkan data-data terkumpul dari metode pengumpulan data
dan didefinisikan kebutuhan yang harus dipenuhi untuk pembuatan sistem ini
sehingga menghasilkan usulan rancangan aplikasi penjualan. Peneliti melakukan
beberapa hal yang diperlukan dalam menganalisa pada sistem ini, berikut ini
rincian tahapannya:
1. Gambaran umum perusahaan diuraikan secara singkat tentang profil
perusahaan, visi misi, struktur organisasi perusahaan. Dapat dilihat pada sub
bab 4.1.1.
2. Analisis sistem berjalan, diuraikan mengenai prosedur dari sistem informasi
yang sedang berjalan dengan menggunakan flowchart, kelebihan dan
kekurangan yang ada pada sistem yang sedang berjalan. Identifikasi masalah
dari flowchart sistem berjalan dan solusi permasalahan menguraikan tentang
beberapa usulan alternatif yang dapat membantu menyelesaikan permasalahan
yang ada dalam sistem perusahaan. Dapat dilihat pada sub bab 4.1.2.
3. Literatur sejenis yang membandingkan kelebihan dari penelitian yang
peneliti lakukan dengan kekurangan dari penelitian sejenis sebelumnya.
Dapat dilihat pada sub bab 4.1.3.
4. Usulan rancangan aplikasi penjualan, tahapan ini menguraikan tahapan dari
membuka website, registrasi, login, tampilan produk, keranjang belanja.
Hasil dari sistem usulan ini digambarkan dalam bentuk flowchart. Dapat
dilihat pada sub bab 4.1.4.
37
3.2.2. Perancangan (Design)
Perancangan sistem dilakukan dengan melakukan pengambaran
pemodelan sistem yang akan dibangun berdasarkan solusi permasalahan dari
tahap analisis. Pengambaran dilakukan dengan melihat fungsi-fungsi sistem,
aliran data pada sistem. Hasil dari perancangan ini berupa perancangan logika
proses dalam bentuk DFD, perancangan basis data dan perancangan interface.
Untuk lebih jelas peneliti menjabarkannya sebagai berikut :
1. Perancangan Logika Proses
Tahapan ini merancang bagaimana aplikasi beroperasi dan mengilustrasikan
aktivitas-aktivitas yang dilakukan dan hasil dari rancangan ini digambarkan
dalam bentuk :
a. Data flow diagram (DFD) dari sistem yang baru dengan 5 DFD (sub
bab 4.2.1 bagian a.).
b. Kamus Data, keterangan proses dari DFD dengan 4 tabel (sub bab 4.2.1
bagian b).
2. Perancangan Basis Data
Tahapan ini dilakukan perancangan database aplikasi penjualan online yang
terdiri dari :
a. Entity Relationship Diagram (ERD) dengan 1 ERD (sub bab 4.2.2
bagian a).
b. Normalisasi, dari bentuk Unnormalized Form sampai 2NF dengan 3
bentuk (sub bab 4.2.2 bagian b).
38
c. Spesifikasi tabel data yang digunakan untuk melihat struktur tabel yang
dibuat (sub bab 4.2.2 bagian c).
3. Perancangan Interface
Tahapan hasil rancangan ini digambarkan dalam bentuk Perancangan Screen
Layout untuk membuat rancangan tampilan layer (sub bab 4.2.3).
3.2.3. Implementasi
Dalam tahap ini akan dilakukan implementasi sistem yang dilakukan
untuk membangun aplikasi e-commerce aromatherapy berbasis CMS, dalam
tahap ini sistem dibangun dengan menggunakan PHP sebagai bahasa scripting,
Apache Web Server, dan MySQL sebagai pengolah database dengan
menggunakan paket Xampp.
39
3.3. Kerangka Penelitian
Gambar 3.1 Kerangka Berfikir Peneliti
Mulai
Metode
Penelitian
Metode
Pengumpulan Data
Metode
Pengembangan
Sistem
Studi Pustaka
Studi
Lapangan
Studi Literatur
Sejenis
Observasi
Wawancara
Analisis
Gambaran
Umum
Perusahaan
Analisis
Sistem
Berjalan
Literatur
Sejenis
Usulan
Rancangan
Aplikasi
Perancangan
Perancangan
Logika
Proses
Perancangan
Basis Data
Perancangan
Interface
Implementas
i
Tampilan
Selesai
40
BAB IV
HASIL DAN PEMBAHASAN
4.1. Analisis
Analisis dilakukan dengan memaparkan gambaran umum perusahaan,
analisis sistem berjalan, literatur sejenis dan usulan rancangan sistem pemesanan.
Secara rinci dijelaskan dibawah ini:
4.1.1. Gambaran Umum Perusahaan
Berdasarkan data yang ada di Viko Collection memiliki profil, visi misi,
dan struktur organisasi. Secara rinci dapat dijelaskan dibawah ini:
4.1.1.1. Profil
Viko Collection adalah sebuah CV pembuat bermacam produk
aromatherapy yang berdiri pada 31 Oktober tahun 2002 dengan memulai usaha
pada bidang kerajinan. Produk yang ada pada kami amat beragam meliputi
scented oils, scented massage oils, scented soap, incense stick dan lain-lain.
Semuanya diperuntukkan bagi anda yang menginginkan relaksasi di tempat
sendiri. Nama Viko berasal dari Novi dan Eko, yaitu pemilik dari CV Viko
Collection. Dimana Direktur Utama (Eko Mardi Basuki), Wakil Direktur (Novi
Gunarsanti), Manager (Yuni Marfita Sari), Asisten Manager (Dhewie Andriyani)
(Sumber: CV Viko Collection).
41
4.1.1.2. Visi Misi
CV Viko Collection memiliki visi misi yang akan mereka jalankan
dalam sistem kerja mereka yaitu ”Meningkatkan kepercayaan akan kualitas
produk yang telah lama dikenal”.
4.1.1.3. Struktur Organisasi
Gambar 4.1 Struktur Organisasi CV Viko Collection
(Sumber: CV Viko Collection )
Dalam hal ini peneliti menerapkan aplikasi pada divisi staf marketing.
4.1.1.4. Tugas dan Wewenang
Berdasarkan dari gambar struktur organisasi CV Viko Collection
akan diuraikan tentang tugas masing-masing fungsi yaitu:
Direktur Utama
Wakil Direktur
Pengacara Manager
Asisten Manager
Staf Marketing
Produksi
42
1. Direktur Utama
a. Membuat kebijakan yang berhubungan dengan arah dan tujuan
perusahaan yang akan dicapai pada masa yang akan datang.
b. Mengusahakan tercapainya tujuan perusahaan secara maksimal dan
mengawasi seluruh kegiatan tiap-tiap bidang agar tidak terjadi
penyimpangan-penyimpangan dalam melaksanakan tugas masing-
masing.
c. Mengkoordinasi seluruh aktifitas perusahaan.
2. Wakil Direktur
a. Merangkap sebagai bagian keuangan.
b. Mengelola laporan harian staf marketing
c. Mengurus penggajian staf
d. Mengurus pemesanan barang
3. Pengacara
Sebagai badan hukum CV Viko Collection
4. Manager
a. Mengurus barang untuk event yang berada di Jakarta dan Bogor
b. Mengawasi staf marketing
c. Mengikuti rapat dengan EO yang mengadakan event.
5. Asisten Manager
a. Membantu tugas manager mengurus barang
b. Mendampingi manager saat mengikuti rapat
43
6. Produksi
a. Memproduksi barang
b. Menyiapkan barang untuk dikirim ke gudang maupun pesanan
konsumen
7. Staf Marketing
a. Melakukan promosi produk yang ada
b. Mengecek stok barang
c. Merapihkan pembukuan yang dimiliki setiap staf marketing
Adapun informasi terkait profil, visi misi, didapatkan dari wakil
direktur. Stuktur organisasi, tugas dan wewenang didapat dari asisten
manager.
4.1.2. Analisis Sistem Berjalan
Proses penjualan aromaterapi yang ada pada CV Viko Collection yang
berjalan saat ini digambarkan dalam bagan flowchart sistem yang sedang
berjalan yang bertujuan untuk mengetahui alur sistem prosedur kerja yang
berlangsung selama ini.
4.1.2.1. Uraian Sistem yang Berjalan
Kegiatan Penjualan Aromatherapy Cara Datang Langsung
a) Pelanggan datang langsung ke stand yang berada pada saat event atau
stand tetap CV Viko Collection. Konsumen melakukan pembelian dengan
memilih produk dan bertanya langsung dengan staf marketing tentang
produk yang ada.
44
b) Staf marketing mengecek ketersediaan barang yang ada di stand jika ada
barang yang kurang meminta barang kepada asisten manager. Barang yang
diminta staf marketing di catat dan dilakukan persedian barang oleh asisten
manager untuk dikirim.
c) Selanjutnya jika barang yang diinginkan konsumen tersedia, kemudian
melakukan perhitungan pembayaran, kemudian pelanggan melakukan
pembayaran.
d) Pada saat sebelum tutup stand kemudian staf marketing melakukan
laporan penjualan melalui sms kepada wakil direktur.
45
Staf MarketingCustomer Wakil Direktur
Daftar Produk
Usulan
Mulai
Daftar Produk
Penge
cekan
Produk
Daftar Produk
Daftar Produk
Usulan
Produk dipilih Produk dipilih
Memilih
Valida
si
Produk
TersediaProduk
Tersedia
Pemb
ayara
n
NotaNota
Penc
atatan
Penju
alan
Laporan
Laporan
Selesai
Produk
Penjualan
Gambar 4.2. Flowchart Sistem Berjalan
46
4.1.2.2. Kelemahan dan Kelebihan Sistem Berjalan
Berdasarkan analisis sistem berjalan diatas didapat kelemahan dan
kelebihan dari sistem berjalan sebagai berikut :
1. Kelemahan sistem yang berjalan
a. Layanan wilayah pemasaran yang terbatas karena sistem perusahaan
belum berjalan secara online.
b. Layanan penjualan dengan cara konsumen datang langsung ke stand
untuk membeli produk dan bertanya tentang produk aromatherapy.
2. Kelebihan sistem yang berjalan
a. Karena proses sistem masih berjalan secara offline sehingga tidak
memerlukan biaya untuk membeli hosting dan domain.
b. Tidak memerlukan biaya untuk membangun ataupun membeli
program aplikasi berbasis web yang dapat dipesan atau didesign
sesuai kebutuhan.
c. Tidak memerlukan biaya untuk membayar seorang programmer untuk
membangun dan mengembangkan suatu aplikasi berbasis web untuk
penjualan online.
4.1.2.3. Identifikasi Permasalahan
Berdasarkan pada sistem yang berjalan, diuraikan beberapa
permasalah yang ada pada sistem yang sedang berjalan sebagai berikut :
1. Layanan penjualan terbatas. Konsumen hanya dapat dan memperoleh
detail informasi mengenai produk dengan cara datang langsung.
47
2. Wilayah pemasaran yang terbatas karena sistem penjualan belum berjalan
secara online.
4.1.2.4. Solusi Permasalahan
Dari hasil analisa permasalahan, peneliti mencoba untuk
memberikan solusi terhadap masalah yang terjadi pada tabel berikut ini:
Tabel 4.1 Solusi Permasalahan Sistem Berjalan
No Gejala Permasalahan Akibat Solusi
1. Pendapatan
tidak
menentu
Layanan penjualan
terbatas. Konsumen
hanya dapat dan
memperoleh detail
informasi mengenai
produk dengan cara
datang langsung.
Banyak konsumen
yang kurang tau
dimana event yang
sedang berlangsung.
Dan stand tetap yang
lumayan jauh dari
konsumen yang
tinggalnya di wilayah
lain.
Dengan
membangun
sebuah aplikasi
penjualan
berbasis web
yang digunakan
secara online
dimana sistem
menampilkan
semua jenis
produk secara
detail dari cara
memesan
produk hingga
melakukan
pembayaran
dengan
konfirmasi
pembayaran
melalui email.
2. Kurang
maksimalnya
pendapatan
pemesanan
Cakupan wilayah
pemasaran yang
terbatas
Tidak berkembangnya
tingkat pendapatan
perusahaan karena
dibatasi oleh wilayah.
Konsumen yang
berjarak jauh msh
sedikit.
Pembuatan
aplikasi e-
commerce
aromatherpyber
basis content
management
system
yang digunakan
secara
online sehingga
semua
orang yang ada
diseluruh
Indonesia dan
48
luar negeri bisa
mengakses
sistem ini dan
bisa
melakukan
pemesanan
dengan melalui
beberapa
prosedur yang
ada pada
sistem.
4.1.3. Literatur Sejenis
Dari analisa literatur sejenis maka peneliti mencoba membandingkan
kelebihan sistem yang dibuat penulis dengan kekurangan sistem yang lama dari
literatur sejenis. Berikut tabel perbandingannya :
Tabel 4.2 Perbandingan Literatur Sejenis
No Kelebihan Kekurangan Kelemahan 1.
2.
3.
Terdapat konten
berita yang update
setiap saat, yang
berhubungan dengan
produk aromatherapy
dan kemudahan dalam
mengupdate berita.
Tampilan sistem
dibuat dengan
semenarik mungkin
dengan memasukan
teks, gambar dan
animasi.
Pada sistem terdapat
fasilitas kontak untuk
pelanggan jika
mempunyai keluhan
atau bertanya dan
pihak Viko dapat
membalas pesan
langsung pada sistem.
Konten yang ada pada sistem
hanya berisi proses transaksi
dan profile perusahaan saja,
sehinnga bersifat monoton.
Tampilan sistem kurang
memikat dan
menghidupkan suasana.
Jika pelanggan mempunyai
keluhan atau bertanya harus
menelphone ke wakil
direktur terlebih dahulu.
Sistem dibangun dengan
mengunakan perangkat
lunak terdahulu.
Tidak adanya proses
pembayaran seperti
pembayaran melalui
kartu kredit, dll.
Tetapi hanya ada
pembayaran dengan
transfer ke rekening
pemilik.
49
4.
5.
Sistem dibangun
dengan mengunakan
perangkat lunak
terbaru sehingga lebih
terupdate.
Adanya Guestbook
dalam aplikasi
Tidak adanya guestbook.
4.1.4. Usulan Rancangan Aplikasi E-commerce
Berikut ini adalah hasil analisis sistem usulan dengan menggunakan
diagram alur program :
Customer Admin Wakil Direktur
Mulai
Login Mengubah Status
Memilih Produk
Melakukan
pembayaran
Mengirim Email
Konfirmasi
pembayaran
melalui email
Selesai
Melihat produk
Mengisi kwantitas
Menambah
pesanan
Y
T
Shooping Cart
Pemesanan
Detail Pemesanan
Customer
Data pembayaran
Gambar 4.3. Flowchart Sistem Usulan
50
4.2. Perancangan (Design)
Tahap setelah melakukan analisis, maka yang dilakukan berikutnya adalah
melakukan rancangan aplikasi e-commerce aromatherapy berbasis content
management system. Proses perancangan ini meliputi beberapa hal, yaitu :
4.2.1. Perancangan Logika Proses
a. DFD (Data Flow Diagram)
Beberapa tahapan yang dilakukan penulis dalam merancang proses
sistem adalah:
1. Context Diagram Aplikasi penjualan yang diusulkan.
2. DFD Level 0/Diagram Zero.
3. DFD Level 1 Proses 2 Registrasi.
4. DFD Level 2 Proses 3 Pemesanan.
1. Context Diagram Aplikasi e-commerce Aromatherapy
Gambar 4.4. Context Diagram
Customer Aplikasi
E-commerce
Aromatherapy
Wakil
Direktur
Username&password
Info_login
Data_registrasi
Info_registrasi
Input_order
Konfirmasi_status
Konfirmasi_pembayaran
Data_pemesanan
51
2. DFD Level 0/Diagram Zero
Gambar 4.5. Diagram Level 0/Diagram Zero
3. DFD Level 1 Proses 2 Registrasi
Gambar 4.6. Diagram Rinci Proses 2.0 level 1
Customer
1.0
Registrasi
Admin
Wakil
Direktur
Data_registrasi
Info_registrasi Data_registrasi
2.0
Login
Admin
Username&password Username&password
Info_login
3.0
Pemesanan
Admin
Input_order
Konfirmasi_status
Data_pemesana
n
Konfirmasi_status
4.0
Konfirmasi
Admin
Konfirmasi_pembayaran Invoice
Customer
Pemesanan
Data_pemesanan
Data_registrasi
Username&password
Data_pemesanan
2.1
Input Data
Registrasi
Customer Data_Registrasi
Customer
Data_Registrasi
2.2
Cek Data
Registrasi
2.3
Informasi
Registrasi
Info_Registrasi Info_Registrasi
Data_registrasi
Info_registrasi
52
4. DFD Level 2 Proses Pemesanan
Gambar 4.7. Diagram rinci proses 3.0 level 2
b. Kamus Data
1. Penjelasan Proses
a. Proses : 1.0
Nama Proses : Registrasi
Masukan : Data registrasi dan cek registrasi
Keluaran : Info registrasi
Ringkasan Proses : Customer memasukan data registrasi agar
bisa melakukan pemesanan, admin
mengecek data registrasi dan customer
mendapat info registrasi.
b. Proses : 2.0
Nama Proses : Login
Data_pemesanan
Status_pesan
3.1
Input
Order
Wakil
Direktur Customer Data_Pemesanan
Pemesanan
Data_Pemesanan
a
Data_Pemesanan
3.2
Cek
Pemesanan
3.3
Status
Pemesanan
Status_Pesan
Status_Pesan
53
Masukan : Username dan password
Keluaran : Info Login
Ringkasan Proses : Customer memasukan
username dan password.
c. Proses : 3.0
Nama proses : Pemesanan
Masukan : Input Order, cek pemesanan dan
konfirmasi status
Keluaran : Konfirmasi status
Ringkasan Proses : Customer melakukan input order dan
admin melakukan cek pemesanan dan
customer mendapat konfirmasi pemesanan.
d. Proses : 4.0
Nama Proses : Konfirmasi
Masukan : Informasi pemesanan dan konfirmasi
status
Keluaran : Konfirmasi status.
Ringkasan Proses : Admin memberi informasi pemesanan,
customer melakukan konfirmasi
status dan wakil direktur menerima
konfirmasi status.
e. Proses : 2.1
Nama Proses : Input data registrasi
54
Masukan : Data registrasi
Keluaran : -
Rincian Proses : Customer mengisi data registrasi.
f. Proses : 2.2
Nama Proses : Cek data registrasi
Masukan : Cek registrasi
Keluaran : -
Rincian Proses : Dari registrasi mengecek data registrasi
g. Proses : 2.3
Nama Proses : Informasi registrasi
Masukan : -
Keluaran : Informasi registrasi
Rincian Proses : Customer mendapat informasi registrasi
h. Proses : 3.1
Nama Proses : Input order
Masukan : Data pemesanan
Keluaran : -
Rincian Proses : Customer melakukan pemesanan
i. Proses : 3.2
Nama Proses : Cek pemesanan
Masukan : -
Keluaran : Data pemesanan
Rincian Proses : Setelah input cek data pemesanan
55
j. Proses : 3.3
Nama Proses : Status pemesanan
Masukan : -
Keluaran : Status pesan
Rincian Proses : Customer mendapat perubahan status
pemesanan
2. Penjelasan Data Flow
a. Nama Data Flow : Data Registrasi
Dari Proses : -
Ke proses : 1.0
Deskripsi : Memasukan data registrasi ke dalam
sistem sebagai proses pendaftaran
Struktur Data : nama+username+email+password
+verify_password
b. Nama Data Flow : Username dan password
Dari proses : -
Ke proses : 2.0
Deskripsi : Melakukan login dengan memasukan
username dan password
Struktur data : Userid+passid
c. Nama data flow : Input order
Dari proses : -
Ke proses : 3.0
56
Deskripsi : Memasukan data pemesanan ke dalam
sistem
Struktur data : nama+sku+quantity
d. Nama data flow : Konfirmasi
Dari proses : -
Ke proses : 4.0
Deskripsi : Customer melakukan konfirmasi
status
Struktur data : pending+confirmed+cancelled+
refunded+shipped
3. Penjelasan Data Store
a. Nama data store : Customer
Stuktur data : id_customer+name+username+email
Deskripsi : Berisi data-data diri customer yang
melakukan pemesanan
b. Nama data store : Pemesanan
Struktur data : id_pemesanan+idcustomerid_produk+
prod_quantity+prod_item_price
+prod_final_price
+date_order
Deskripsi : Berisi data-data aromatherapy yang di
pesan
57
c. Nama data store : Produk
Struktur data : id_produk+kategori+nm_produk
+gambar+harga+detail
Deskripsi : Berisi data-data produk
4.2.2. Perancangan Basis Data
a. Entity Relationship Diagram (ERD)
Customer Memilih Produk
Melakukan Pemesanan Keranjang
Belanja
Pencatatan Konfirmasi
Id_customer Nama Email Alamat
M
Id_produk Kategori Nm_produk Gambar Harga Detail
M
Id_kerranjang
Id_produk
Id_customer
Total
M
M
1
M
Id_pemesanan Id_produk Prod_quantity
Prod_item_price Prod_final_price
Date_order
M
1
Id_konfirmasi Bank_tujuan Bank_pengirim Jam_transfer Jmlh_transfer
Keterangan
Idcustomer
Id_pemesanan
Gambar 4.8. Entity Relationship Diagram (ERD)
58
b. Normalisasi
1. Bentuk Tidak Normal (UNF)
Keterangan : Bentuk ini merupakan kumpulan data yang akan
direkam, tidak ada keharusan mengikuti format tertentu, dapat
saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa
adanya sesuai saat menginput.
Gambar 4.9. UNF
2. Bentuk Normal Pertama (1NF)
Keterangan : Pada tahap ini dilakukan penghilangan beberapa
grup elemen yang berulang agar menjadi satu harga tunggal
yang berinteraksi diantara setiap baris pada suatu tabel, dan
setiap atribut harus mempunyai nilai data yang atomic (bersifat
Idcustomer
Nama
Alamat
Id_pemesan
Prod_quantity
Prod_item_price
Prod_final_price
Date_order
Id_produk
Kategori
Nm_produk
Gambar
Harga
Detail
Id_keranjang
Total
Id_konfirmasi
Bank_tujuan
Bank_pengirim
Jam_transfer
Jmlh_transfer
Keterangan
59
atomic value). Atom adalah zat terkecil yang masih memiliki
sifat induknya, bila ia dipecah lagi maka ia tidak memiliki sifat
induknya.
Idcustomer Nama Email Alamat Id_pemesanan
001 Rini [email protected] Tangerang 01
002 Farida [email protected] Surabaya 02
003 Yuni [email protected] Jakarta 03
Prod_quantity Prod_item_price Prod_final_price Date_order Id_produk
3 10000 30000 19-07-2011 018
1 25000 25000 22-07-2011 025
5 10000 50000 13-08-2011 04
Kategori Nm_produk Gambar Harga Detail
SPA Lulur 20042011006.jpg 10000 Lulur badan jasmine
Massage oil Massage oil 20042011009.jpg 25000 Massage oil greentea
SPA Garam 20042011005 10000 Garam mandi lavender
Id_keranjang Total Id_konfirmasi Bank_tujuan Bank_pengirim Jam_transfer
01 30000 001 BCA Mandiri 10.00
02 25000 002 BCA BRI 08.00
03 50000 003 BCA BCA 11.00
60
Jmlh_transfer Keterangan
30000 Dikirim secepatnya
25000 Diharapkan secepatnya dikirim
50000 Secepatnya dikirim dengan kondisi yang baik
Gambar 4.10. 1NF
3. Bentuk Normal kedua (2NF)
Keterangan : Bentuk normal kedua didasari konsep full
functional dependency (ketergantungan fungsional sepenuhnya)
yang dapat didefinisikan sebagi berikut:
Jika A dan B adalah atribut-atribut dari suatu relasi, B dikatakan
full functional dependency (memiliki ketergantungan fungsional
sepenuhnya) terhadap A, tetapi tidak secara tepat memiliki
ketergantungan fungsional dari subset (himpunan bagian) dari
A.
Ket: * Primary Key
** Foreign Key
Gambar 4.11. 2NF
Customer
Idcustomer*
Nama
Alamat
Pemesanan
Id_pemesanan*
Idcustomer**
Produk_quantity
Produk_item_price
Produk_final_price
Date_order
Produk
Id_produk*
Kategori
Nm_produk
Gambar
Harga
Detail
Keranjang
Id_keranjang*
Id_produk**
Idcustomer**
Total
Konfirmasi
Id_konfirmasi*
Id_pemesanan**
Bank_tujuan
Bank_pengirim
Jam_transfer
Jmlh_transfer
Keterangan
61
4. Bentuk Normal Ketiga (3NF)
Keterangan : Ketentuan bentuk normal ketiga (3NF) adalah
bentuk data telah memenuhi criteria bentuk normal kedua,
atribut bukan kunci (non-key) haruslah tidak memiliki
ketergantungan transitif, dengan kata lain suatu atribut bukan
kunci tidak boleh memiliki ketergantungan fungsional terhadap
atribut bukan kunci lainnya. Harus bergantung penuh pada kunci
utama (primary key).
Gambar 4.12. 3NF
c. Struktur Data
Dari hasil normalisasi diatas telah didapat hasil basis data yang
benar, berikut adalah perincian hasil normalisasi diatas.
1. Nama File : Customer
Primary Key : Idcustomer
Foreign Key : -
Tabel 4.3. Tabel Customer
Field Type Colletion Attributes Null Default Extra
Idcustomer Tinyint?(4) No Auto_increment
Nama Varchart(15) Latin1_swedish_ci No
Email Varchart(20) Latin1_swedish_ci No
Customer
Idcustomer*
Nama
Alamat
Keranjang
Id_keranjang*
Total
Pemesanan
Id_pemesanan*
Prod_quantity
Prod_item_price
Prod_final_price
Date_order
Produk
Id_produk*
Kategori
Nm_produk
Gambar
Harga
Detail
Konfirmasi
Id_konfirmasi*
Bank_tujuan
Bank_pengirim
Jam_transfer
Jmlh_transfer
Keterangan
62
Alamat Varchart(55) Latin1_swedish_ci No
2. Nama File : Pemesanan
Primary Key : Id_pemesanan
Foreign Key : Idcustomer, Id_produk
Tabel 4.4. Tabel Pemesanan
Field Type Colletion Attributes Null Default Extra
Id_pemesanan Int(5) No Auto_increment
Idcustomer Int(4) No
Id_produk Int(4) No
Prod_quantity Int(55) No
Prod_item_price Varchar(30) Latin1_swedish_ci No
Prod_final_price Varchar(55) Latin1_swedish_ci No
Date_order Varchar(30) Latin1_swedish_ci No
3. Nama File : Produk
Primary Key : Id_produk
Foreign key : -
Tabel 4.5. Tabel Produk
Field Type Colletion Attributes Null Default Extra
Id_produk Int(5) No Auto_increment
Kategori Varchar(30) Latin1_swedish_ci No
Nm_produk Varchar(15) Latin1_swedish_ci No
Gambar Binary(10) No
Harga Varchar(30) Latin1_swedish_ci No
Detail Varchar(60) Latin1_swedish_ci No
63
4.2.3. Perancangan Interface
a. Design Screen Layout
Pada tahap ini dirancang tampilan layout sehingga didapat tampilan yang
user friendly. Berikut ini merupakan rancangan tampilan layout:
1) Perancangan Layout halaman Home
Gambar 4.13. Perancangan Layout halaman Home
Halaman ini merupakan halaman depan dari semua halaman yang ada
pada website ini. Halaman ini juga dapat disebut sebagai halaman
pembuka, karena pada saat pertama website dibuka maka halaman inilah
:: BANNER:
Home | Store Online | GuestBook | Contact Us
Pengunjung
Main Menu
Link1
Link2
Link3
Link4
Time
Pools
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Text Index Text Index Text Index Text Index
Login Form
UserName
Password
LOGIN
LOGIN
Who’s Online
64
yang akan tampil sebelum halaman yang lainnya. Tampilan menu utama
terdiri dari beberapa menu yang dapat membuka halaman lain seperti
tampilan Home, Store Online , Guestbook, Contact Us. Rancangan
halaman selanjutnya sama rancangan tampilan Home hanya yang
membedakannya adalah isinya. Rancangan tampilan menu utama dapat
dilihat pada gambar 4.13.
2) Perancangan Layout Store Online
Gambar 4.14. Perancangan Layout Halaman Store Online
:: BANNER:
Home | Store Online | GuestBook | Contact Us
Time
Main Menu
Link1
Link2
Link3
Link4
Categories
Pengunjung
65
Pada rancangan halaman store online ini akan menjelaskan mengenai
produk-produk yang akan diperjual belikan secara online, dengan
terlebih dahulu memilih kategori produk yang akan dipesan kemudian
pilih produk yang akan dipesan, tetapi sebelumnya pengunjung website
haruslah melakukan registrasi terlebih dahulu apabila ingin melakukan
pemesanan produk. Untuk rancangan halaman produk adalah seperti
pada gambar 4.14 Rancangan Halaman produk.
Gambar 4.15. Perancangan Layout Halaman Produk
:: BANNER:
Home | Store Online | GuestBook | Contact Us
Time
Main Menu
Link1
Link2
Link3
Link4
Pengunjung
Browse
Order by: Display:
Nama Produk
Product Details
Rp. xxx Quantity Average customer rating
Add to Cart
66
3) Perancangan Layout Tampilan Shooping Cart
linkl
Gambar 4.16. Perancangan Layout Halaman Shooping Cart
Dalam rancangan halaman shooping cart ini yang merupakan halaman
yang akan mengkalkumulasikan harga pemesanan setiap produk yang
telah dipesan oleh pengunjung website ataupun customer. Dijelaskan
dalam halaman ini mengenai penambahan produk dan penambahan item
per produk. Setelah selesai pemesanan maka klik checkout, maka akan
masuk pada tampilan pengisian biodata pemesanan. Untuk rancangannya
dapat dilihat pada gambar 4.16 Rancangan halaman shooping cart.
:: BANNER:
Home | Store Online | GuestBook
Time Cart
Name Sku Price Quantity Subtotal Update
xxxx xxx Rp. xxx Rp.xxx Hapus
Sub-Total: Rp. xxx
Total : Rp. xxx
<< CONTINUE SHOPPING CHECKOUT >>
Pengunjung
Main Menu
Link1
Link2
Link3
Link4
67
4) Perancangan Layout Registrasi
Gambar 4.17. Perancangan Layout Halaman Registrasi
Halaman registrasi ini dibuat untuk mengisi data–data pengunjung,
seperti nama, nama pengguna, email dan password. Pada halaman
registrasi ini nantinya akan menjadi acuan untuk biodata pengunjung
yang dapat dijadikan subjek apabila pengunjung itu melakukan
pemesanan produk ataupun mengisi forum tanya jawab yang ada pada
website tersebut. Untuk rancangan halaman registrasi ini adalah seperti
gambar 4.17 Rancangan Halaman Registrasi.
:: BANNER:
Home | Store Online | GuestBook | Contact Us
Time
Main Menu
Link1
Link2
Link3
Link4
Registration
Name* :
Username* :
Email* :
Passsword* :
Verify Password :
Send Registration
Akun anda telah dibuat dan link untuk aktivasi telah dikirim ke alamat
e-mail yang anda daftarkan. Anda harus melakukan aktivasi sebelum
anda dapat melakukan login. Aktivasi dilakukan dengan mengunjungi
link aktivasi yang terdapat di dalam e-mail.
Pengunjung
68
5) Perancangan Layout GuestBook
Gambar 4.18. Perancangan Layout Halaman GuestBook
Dalam halaman forum atau guestbook ini dimaksudkan untuk setiap
pengunjung dapat mengisi forum tersebut. Untuk forum itu bisa berisi
komentar maupun saran ataupun pertanyaan–pertanyan yang
berhubungan dengan website ini. Untuk rancangannya dapat dilihat
pada gambar 4.18.
Save new entry
:: BANNER:
Home | Store Online | GuestBook | Contact Us
View Guestbook
Add new guestbook entry
Name :
email :
location :
homepage :
Rating :
Content :
Anti-spam : Im1sGe3x
question
Your answer :
Pengunjung
Time
Main Menu
Link1
Link2
Link3
Link4
Save new entry
69
4.3. Implementasi
4.3.1. Perangkat Keras (Hardware)
Dalam implementasi Aplikasi E-commerce Aromatherapy Berbasis
Content Management System, perangkat keras yang peneliti gunakan adalah
komputer dengan spesifikasi antara lain:
1. Processor : Intel(R) Atom(TM) CPU N450 @ 1.66GHz 1.67GHz
2. Memory : 1.00 GB RAM
3. Hardisk : 150 GB
4. Monitor : 10 Inc
5. Printer : Hp Deskjet D2666
4.3.2. Perangkat Lunak (Software)
Pada pembuatan Aplikasi E-commerce Aromatherapy Berbasis Content
Management System ini, peneliti menggunakan PHP sebagai bahasa sdripting,
Apache Web Server, dan MySQL sebagai pengolah database dengan paket
Xampp.
4.4. Langkah-langkah Hosting dan Alamat
Agar website yang buat dapat dikunjungi oleh masyarakat luas maka perlu
dipublikasi melalui jaringan internet, dimana hal ini perlu dilakukan proses
upload. Penulis mendapatkan nama domain dan ruang space hosting dengan cara
mencari alamat hosting yang gratis yaitu freetzi.com di internet dan nama
servernya. Langkah-langkah proses upload akan dijelaskan sebagai berikut :
70
1. Siapkan folder yang akan di upload yaitu folder yang akan di upload.
2. Gunakan komputer yang telah terkoneksi dengan internet, buka browser
Mozilla Firefox, pada address bar ketikkan http://www.freetzi.com/
Gambar 4.19. Tampilan Freetzi Hosting
3. Register terlebih dahulu pada free hosting freetzi.com
4. Isi nama domain yang akan dipakai misalkan
http://vikoaromatherapy.freetzi.com
Gambar 4.20. Tampilan Input Nama Domain
71
5. Setelah sesesai masuk ke member area Selanjutanya akan muncul form
untuk meminta input username dan password,
Gambar 4.21. Tampilan Member Area
6. Jika username dan password yang masukkan benar, maka akan dibawa
pada halaman Cpanel
Gambar 4.22. Tampilan C-Panel
7. Klik ikon File Manager, maka browser akan membuka jendela baru yang
menampilkan halaman File Manager.
72
8. Pada direktori public_html klik icon upload, browse file yang akan
diupload, yaitu commerce.zip. Selanjutnya progress proses upload akan
ditampilkan. Tunggu sampai proses upload complete (100%).
Gambar 4.23. Tampilan Proses Upload
9. Selanjutnya akan membuat database dan user yang menggunakan
database tersebut.
10. Selanjutnya akan mengimport file yang berisi peintah query sql. Kembali
ke halaman home Cpanel, klik ikon phpmyadmin, maka akan dibawa pada
jendela baru phpmyadmin pada server.
11. Pilih database yang telah buat sebelumnya pada kolom kiri, kemudian klik
menu import. Tekan tombol browse, cari file. Kemudian klik tombol Go.
Tunggu beberapa saat sampai proses import berhasil dilakukan.
12. Selanjutnya akan mengatur file configuration.php pada folder
public_html/home untuk mengkonfigurasi path dan koneksi database pada
server.
73
13. Langkah terakhir yaitu melakukan ridirect (pengalihan) agar jika
memanggil URL http://sier.co.id/smk/commerce, maka akan langsung
menuju direktori public_html/home.
14. Kembali kehalaman home CPanel, klik icon Redirect, maka halaman
redirect akan ditampilkan. Pada combobox http://www klik tanda panah
kebawah, pilih sier.co.id/smk/commerce.
15. Telah selesai.
16. Untuk mencoba hasilnya ketikkan url
http://www.sier.co.id/smk/commerce maka halaman akan menampilakan
website tersebut.
Hasil Akhir setelah di upload.
Gambar 2.24. Hasil Akhir Setelah Upload
74
BAB V
PENUTUP
5.1. Kesimpulan
Dari perancangan aplikasi e-commerce pada Viko Collection, maka dapat
ditarik beberapa kesimpulan sebagai berikut:
1. Aplikasi E-commerce dilengkapi dengan guestbook untuk komentar yang
akan diberikan customer/pelanggan.
2. Peneliti terapkan berbasis content management system.
3. Pengguna aplikasi adalah staf marketing dan customer.
5.2. Saran
Saran yang dapat peneliti berikan guna pengembangan aplikasi e-commerce
ini adalah:
1. Dimasa mendatang skripsi ini dapat di kembangkan menjadi lebih baik
lagi, karena keterbatasan peneliti dalam pembuatan aplikasi ini.
2. Hendaknya melakukan evaluasi secara berkala untuk mengantisipasi
penambahan kebutuhan sistem baru lagi, melakukan update file secara
berkala sesuai waktu yang ditentukan untuk mencegah kejenuhan dari
user.
75
DAFTAR PUSTAKA
Hakim S, Nanang Indra P. 2009. Professional Website Dengan Joomla! 1.5. PT.
Elex Media Komputindo, Jakarta.
.
Indrayani, Evi, Humdiana. 2009. Sistem Informasi Manajemen Mempersiapkan
Pekerja Berbasis Pengetahuan Dalam Mengelola Sistem Informasi. Mitra
Wacana Media.
Kadir, Abdul. 2005. Dasar Pemrograman Web dengan ASP. Yogyakarta : Andi
Offset.
Khaeruddin. 2005. Belajar Otodidak Adobe Photoshop CS Menguasai Tanpa
Guru. Yogyakarta : Andi Offset.
Ladjamudin, Al-Bahra Bin. 2005. Analisis dan Desain Sistem Informasi, Graha
Ilmu, Yogyakarta.
Lenawati, Mei. 2007. Macromedia Dreamweaver 8.0 dengan PHP. Yogyakarta :
Andi Offset.
National Statistic United Kingdom, 2009. E-commerce and Information and
Communication Technology (ICT), Statistical Bulletin.
Nugroho, Adi ST. 2006. E-commerce Memahami Perdagangan Modern Di Dunia
Maya. Bandung: Informatika.
HASIL WAWANCARA
Narasumber : Novi Gunarsanti
Jabatan : Wakil Direktur
Tempat Wawancara : CV.Viko Collection
Hari/Tanggal Wawancara : Kamis, 12 Mei 2011
1. Selamat siang ibu ? bisa minta waktunya sebentar untuk wawancara?
Jawaban : siang, boleh
2. Nama lengakap ibu ?
Jawaban : Novi Gunarsanti
3. Posisi ibu di kantor ini ?
Jawaban : Wakil Direktur
4. Bagaimana sejarah berdirinya CV.Viko Collection ?
Jawaban : CV. Viko Collection berdiri pada 31 Oktober tahun 2002, untuk
sejarah lengkapnya nanti saya akan berikan dokumennya.
5. Apakah CV. Viko Collection melakukan penjualan dengan melalui event
atau mempunyai toko ?
Jawaban : CV. Viko Collection melakukan penjualan melalui event-event
di beberapa tempat dan mempunyai 3 toko yaitu di Jakarta terletak di
Poins Square Lebak Bulus, di Bogor terletak di Botani Square dan
Bellanova .
6. Bagaimana proses penjualan aromatherapy ini bu ?
Jawaban : calon customer datang dan memilih produk yang akan dibeli,
kemudian calon customer melakukan pembayaran langsung kepada SPG
yang ada.
7. Ketentuan apa untuk mendapat diskon dalam pembelia aromatherapy ?
Jawaban : Ketentuan nya dalam pembelian aromatherapy yaitu untuk
pembelanjaan 1 jt baru mendapat diskon.
8. Apa pendapat Ibu tentang e-commerce ?
Jawab : e-commerce adalah penjualan elektronik
9. Pendapat Ibu perlu atau tidak adanya misalkan di aplikasi terbit info
diskon?
Jawab : perlu sekali, karna itu adalah ketentuan yang berlaku.
10. Terima kasih atas waktunya bu ?
Jawab : Sama-sama
Narasumber : Dhewi Andriyani
Jabatan : Asisten Manager
Tempat Wawancara : CV.Viko Collection
Hari/Tanggal Wawancara : Kamis, 12 Mei 2011
1. Selamat siang ibu, boleh minta waktunya sebentar ?
Jawab : Boleh
2. Nama lengkap Ibu ?
Jawab : Dhewi Andriyani
3. Posisi Ibu di kantor ini ?
Jawab : Asissten Manager
4. Boleh saya meminta struktur organisasi di kantor ini bu ?
Jawaban : Boleh, nanti saya berikan arsipnya.
5. Apa tugas dari setiap divisi yang ada ?
Jawab : Akan saya berikan beserta struktur organisasi.
6. Terima kasih atas waktunya bu ?
Jawab : Sama-sama
HASIL WAWANCARA DENGAN STAFF MARKETING
Daftar pertanyaan yang diajukan :
1. Apakah menurut anda dari tampilan aplikasi yang peneliti buat, teks yang
di tampilkan menarik atau tidak ?
a. Menarik b. Tidak c. Biasa Saja
2. Apakah menurut anda gambar yang di tampilkan dalam aplikasi ini
menarik ?
a. Menarik b. Tidak c. Biasa Saja
3. Apakah menurut anda animasi yang terdapat dalam aplikasi ini menarik ?
a. Menarik b. Tidak c. Biasa Saja
4. Apakah menurut anda perlu adanya aplikasi ini dalam memasarkan produk
pada CV. Viko Collection ?
a. Perlu b. Tidak Perlu
Dari 10 staf marketing yang menjawab pertanyaan no 1.
Menarik 7 orang
Tidak ~
Biasa Saja 3 orang
Jadi persentase yang menjawab teks dalam aplikasi ini meanarik 70%,
yang menjawab biasa saja 30%.
Dari 10 staff marketing yang menjawab pertanyaan no 2
Menarik 8 orang
Tidak ~
Biasa Saja 2 orang
Jadi persentase yang menjawab gambar dalam aplikasi ini meanarik
80%, yang menjawab biasa saja 20%.
Dari 10 staff marketing yang menjawab pertanyaan no 3
Menarik 10 orang
Tidak ~
Biasa Saja ~
Jadi persentase yang menjawab animasi dalam aplikasi ini meanarik
100%
Dari 10 staff marketing yang menjawab pertanyaan no 4
Perlu 10 orang
Tidak Perlu ~
Jadi persentase yang menjawab perlu adanya aplikasi ini untuk
memasarkan produk pada CV. Viko Collection 100%.
1. Tampilan Halaman Home
2. Tampilan Halaman Store Online
3. Tampilan Halaman Shooping Cart
4. Tampilan Halaman Register
5. Tampilan Halaman Guestbook
6. Tampilan Invoice
7. Tampilan Halaman Reporting
8. Rating
9. Space Produk
Lampiran Listing Program
Configuration
<?php
if(!defined('RG_EMULATION')) { define( 'RG_EMULATION', 0 ); }
$mosConfig_MetaAuthor = '1'; $mosConfig_MetaDesc = 'Joomla - the dynamic portal engine and content management system';
$mosConfig_MetaKeys = 'Joomla, joomla';
$mosConfig_MetaTitle = '1'; $mosConfig_absolute_path = 'C:/xampp/htdocs/commerce';
$mosConfig_admin_expired = '1';
$mosConfig_allowUserRegistration = '1';
$mosConfig_back_button = '1';
$mosConfig_cachepath = 'C:/xampp/htdocs/commerce/cache';
$mosConfig_cachetime = '900'; $mosConfig_caching = '0';
$mosConfig_db = 'commercedb';
$mosConfig_dbprefix = 'jos_'; $mosConfig_debug = '0';
$mosConfig_dirperms = '';
$mosConfig_editor = 'tinymce'; $mosConfig_enable_log_items = '0';
$mosConfig_enable_log_searches = '0';
$mosConfig_enable_stats = '0'; $mosConfig_error_message = 'This site is temporarily unavailable.<br /> Please notify the System Administrator';
$mosConfig_error_reporting = '-1'; $mosConfig_favicon = 'favicon.ico';
$mosConfig_fileperms = '';
$mosConfig_frontend_login = '1';
$mosConfig_frontend_userparams = '1';
$mosConfig_gzip = '0';
$mosConfig_hideAuthor = '0'; $mosConfig_hideCreateDate = '0';
$mosConfig_hideEmail = '0';
$mosConfig_hideModifyDate = '0'; $mosConfig_hidePdf = '0';
$mosConfig_hidePrint = '0';
$mosConfig_hits = '1'; $mosConfig_host = 'localhost';
$mosConfig_icons = '1';
$mosConfig_item_navigation = '1'; $mosConfig_itemid_compat = '0';
$mosConfig_lang = 'english';
$mosConfig_lifetime = '900'; $mosConfig_link_titles = '0';
$mosConfig_list_limit = '30';
$mosConfig_live_site = 'http://localhost/commerce';
$mosConfig_locale = 'en_GB';
$mosConfig_mailer = 'mail';
$mosConfig_mailfrom = '[email protected]'; $mosConfig_multilingual_support = '0';
$mosConfig_multipage_toc = '1';
$mosConfig_offline = '0'; $mosConfig_offline_message = 'This site is down for maintenance.<br /> Please check back again soon.';
$mosConfig_offset = '-7';
$mosConfig_offset_user = '0'; $mosConfig_pagetitles = '1';
$mosConfig_password = '';
$mosConfig_readmore = '1'; $mosConfig_secret = '4UnmQvqx9P8XvyNT';
$mosConfig_sef = '0';
$mosConfig_sendmail = '/usr/sbin/sendmail'; $mosConfig_session_life_admin = '1800';
$mosConfig_session_type = '0';
$mosConfig_shownoauth = '0';
$mosConfig_smtpauth = '0';
$mosConfig_smtphost = 'localhost';
$mosConfig_smtppass = '';
$mosConfig_smtpuser = ''; $mosConfig_uniquemail = '1';
$mosConfig_user = 'root';
$mosConfig_useractivation = '1'; $mosConfig_vote = '0';
setlocale (LC_TIME, $mosConfig_locale);
?>
Index
<?php
/**
* @version $Id: index.php 10041 2008-02-15 21:48:13Z eddieajau $
* @package Joomla
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* Joomla! is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details. */
// Set flag that this is a parent file define( '_VALID_MOS', 1 );
// checks for configuration file, if none found loads installation page
if (!file_exists( 'configuration.php' ) || filesize( 'configuration.php' ) < 10) {
$self = rtrim( dirname( $_SERVER['PHP_SELF'] ), '/\\' ) . '/';
header("Location: http://" . $_SERVER['HTTP_HOST'] . $self . "installation/index.php" );
exit();
}
require( 'globals.php' );
require( 'configuration.php' );
// SSL check - $http_host returns <live site url>:<port number if it is 443>
$http_host = explode(':', $_SERVER['HTTP_HOST'] ); if( (!empty( $_SERVER['HTTPS'] ) && strtolower( $_SERVER['HTTPS'] ) != 'off' || isset( $http_host[1] ) &&
$http_host[1] == 443) && substr( $mosConfig_live_site, 0, 8 ) != 'https://' ) {
$mosConfig_live_site = 'https://'.substr( $mosConfig_live_site, 7 ); }
require_once( 'includes/joomla.php' );
//Installation sub folder check, removed for work with SVN
if (file_exists( 'installation/index.php' ) && $_VERSION->SVN == 0) {
define( '_INSTALL_CHECK', 1 );
include ( $mosConfig_absolute_path .'/offline.php');
exit(); }
// displays offline/maintanance page or bar if ($mosConfig_offline == 1) {
require( $mosConfig_absolute_path .'/offline.php' );
}
// load system bot group
$_MAMBOTS->loadBotGroup( 'system' );
// trigger the onStart events
$_MAMBOTS->trigger( 'onStart' );
if (file_exists( $mosConfig_absolute_path .'/components/com_sef/sef.php' )) {
require_once( $mosConfig_absolute_path .'/components/com_sef/sef.php' );
} else {
require_once( $mosConfig_absolute_path .'/includes/sef.php' );
}
require_once( $mosConfig_absolute_path .'/includes/frontend.php' );
// retrieve some expected url (or form) arguments
$option = strval( strtolower( mosGetParam( $_REQUEST, 'option' ) ) ); $Itemid = intval( mosGetParam( $_REQUEST, 'Itemid', null ) );
if ($option == '') { if ($Itemid) {
$query = "SELECT id, link"
. "\n FROM #__menu" . "\n WHERE menutype = 'mainmenu'"
. "\n AND id = " . (int) $Itemid
. "\n AND published = 1"
;
$database->setQuery( $query );
} else { $query = "SELECT id, link"
. "\n FROM #__menu"
. "\n WHERE menutype = 'mainmenu'" . "\n AND published = 1"
. "\n ORDER BY parent, ordering"
; $database->setQuery( $query, 0, 1 );
}
$menu = new mosMenu( $database ); if ($database->loadObject( $menu )) {
$Itemid = $menu->id; }
$link = $menu->link;
if (($pos = strpos( $link, '?' )) !== false) {
$link = substr( $link, $pos+1 ). '&Itemid='.$Itemid;
}
parse_str( $link, $temp ); /** this is a patch, need to rework when globals are handled better */
foreach ($temp as $k=>$v) {
$GLOBALS[$k] = $v; $_REQUEST[$k] = $v;
if ($k == 'option') {
$option = $v; }
}
} if ( !$Itemid ) {
// when no Itemid give a default value
$Itemid = 99999999; }
// mainframe is an API workhorse, lots of 'core' interaction routines
$mainframe = new mosMainFrame( $database, $option, '.' );
$mainframe->initSession();
// trigger the onAfterStart events
$_MAMBOTS->trigger( 'onAfterStart' );
// checking if we can find the Itemid thru the content
if ( $option == 'com_content' && $Itemid === 0 ) {
$id = intval( mosGetParam( $_REQUEST, 'id', 0 ) ); $Itemid = $mainframe->getItemid( $id );
}
/** do we have a valid Itemid yet?? */
if ( $Itemid === 0 ) {
/** Nope, just use the homepage then. */ $query = "SELECT id"
. "\n FROM #__menu"
. "\n WHERE menutype = 'mainmenu'"
. "\n AND published = 1"
. "\n ORDER BY parent, ordering"
;
$database->setQuery( $query, 0, 1 ); $Itemid = $database->loadResult();
}
// patch to lessen the impact on templates
if ($option == 'search') {
$option = 'com_search'; }
// loads english language file by default if ($mosConfig_lang=='') {
$mosConfig_lang = 'english';
}
include_once( $mosConfig_absolute_path .'/language/' . $mosConfig_lang . '.php' );
// frontend login & logout controls $return = strval( mosGetParam( $_REQUEST, 'return', NULL ) );
$message = intval( mosGetParam( $_POST, 'message', 0 ) );
// Get the information about the current user from the sessions table
$my = $mainframe->getUser();
if ($option == 'login') {
$mainframe->login();
// JS Popup message
if ( $message ) { ?>
<script language="javascript" type="text/javascript">
<!--//
alert( "<?php echo addslashes( _LOGIN_SUCCESS ); ?>" );
//-->
</script> <?php
}
if ( $return && !( strpos( $return, 'com_registration' ) || strpos( $return, 'com_login' ) ) ) {
// checks for the presence of a return url
// and ensures that this url is not the registration or login pages // If a sessioncookie exists, redirect to the given page. Otherwise, take an extra round for a
cookiecheck
if (isset( $_COOKIE[mosMainFrame::sessionCookieName()] )) { mosRedirect( $return );
} else {
mosRedirect( $mosConfig_live_site .'/index.php?option=cookiecheck&return=' . urlencode( $return ) );
}
} else {
// If a sessioncookie exists, redirect to the start page. Otherwise, take an extra round for a
cookiecheck
if (isset( $_COOKIE[mosMainFrame::sessionCookieName()] )) { mosRedirect( $mosConfig_live_site .'/index.php' );
} else {
mosRedirect( $mosConfig_live_site .'/index.php?option=cookiecheck&return=' . urlencode( $mosConfig_live_site .'/index.php' ) );
}
}
} else if ($option == 'logout') {
$mainframe->logout();
// JS Popup message
if ( $message ) { ?>
<script language="javascript" type="text/javascript">
<!--//
alert( "<?php echo addslashes( _LOGOUT_SUCCESS ); ?>" );
//-->
</script>
<?php }
if ( $return && !( strpos( $return, 'com_registration' ) || strpos( $return, 'com_login' ) ) ) { // checks for the presence of a return url
// and ensures that this url is not the registration or logout pages
mosRedirect( $return ); } else {
mosRedirect( $mosConfig_live_site.'/index.php' );
} } else if ($option == 'cookiecheck') {
// No cookie was set upon login. If it is set now, redirect to the given page. Otherwise, show error message.
if (isset( $_COOKIE[mosMainFrame::sessionCookieName()] )) {
mosRedirect( $return );
} else {
mosErrorAlert( _ALERT_ENABLED ); }
}
// detect first visit
$mainframe->detect();
// set for overlib check
$mainframe->set( 'loadOverlib', false );
$gid = intval( $my->gid );
// gets template for page
$cur_template = $mainframe->getTemplate();
/** temp fix - this feature is currently disabled */
/** @global A places to store information from processing of the component */
$_MOS_OPTION = array();
// precapture the output of the component
require_once( $mosConfig_absolute_path . '/editor/editor.php' );
ob_start();
if ($path = $mainframe->getPath( 'front' )) {
$task = strval( mosGetParam( $_REQUEST, 'task', '' ) );
$ret = mosMenuCheck( $Itemid, $option, $task, $gid );
if ($ret) {
require_once( $path ); } else {
mosNotAuth();
}
} else {
header( 'HTTP/1.0 404 Not Found' );
echo _NOT_EXIST; }
$_MOS_OPTION['buffer'] = ob_get_contents();
ob_end_clean();
initGzip();
header( 'Expires: Mon, 26 Jul 1997 05:00:00 GMT' ); header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' );
header( 'Cache-Control: no-store, no-cache, must-revalidate' );
header( 'Cache-Control: post-check=0, pre-check=0', false ); header( 'Pragma: no-cache' );
// display the offline alert if an admin is logged in
if (defined( '_ADMIN_OFFLINE' )) {
include( $mosConfig_absolute_path .'/offlinebar.php' );
}
// loads template file
if ( !file_exists( $mosConfig_absolute_path .'/templates/'. $cur_template .'/index.php' ) ) {
echo _TEMPLATE_WARN . $cur_template; } else {
require_once( $mosConfig_absolute_path .'/templates/'. $cur_template .'/index.php' );
echo '<!-- '. time() .' -->'; }
// displays queries performed for page if ($mosConfig_debug) {
echo $database->_ticker . ' queries executed';
echo '<pre>';
foreach ($database->_log as $k=>$sql) {
echo $k+1 . "\n" . $sql . '<hr />';
} echo '</pre>';
}
doGzip();
?>
CSS
body {
overflow-x : hidden; overflow: -moz-scrollbars-vertical;
}
.body {
color: #ffffff;
margin: 0 0 0 0;
padding: 0px; font-size: 11px;
font-family: Verdana, sans-serif;
background: #46134c; }
.all { width:808px;
margin:0 auto;
padding:0; background: transparent url(../images/allbg.jpg) repeat-y top left;
}
#logo {
background: transparent url(../images/bg.jpg) no-repeat top center;
margin:0 auto;
width: 100%;
padding:0px; height:200px;
}
#logo div a { margin:50px 0 0 80px;
line-height:150px;
font-family:"Trebuchet MS"; font-size:30px;
}
.divpath { margin:0 auto;
width: 800px;
height:30px; padding:0;
background: #fff url(../images/topbg.jpg) repeat-x top center;
}
.topmaincol {
width:100%;
height:30px;
} /* --- nav --- */
.div {
} #menu{
position:relative;
height:53px; color:#E0E0E0;
background: url(../images/table_bg.jpg) repeat-x;
width:800px; font-size:12px;
}
#menu .menuc {
margin: 0px auto;
width: 800px; font-family: Tahoma;
}
#topnavi{
position:relative; height:43px;
font-size:12px;
font-weight: normal; font-family: Tahoma;
background: url(../images/topmenu_bg.jpg) repeat-x top left; padding:0 0 0 10px;
}
#topnavi ul{
margin:0;
padding:0; list-style-type:none;
width:auto;
float:left; }
#topnavi ul li{ display:block;
float:left;
margin:0 1px; }
#topnavi ul li a{
display:block;
float:left;
color:#E0E0E0;
text-decoration:none;
padding:0 0 0 10px; height:43px;
}
#topnavi ul li a span{
font-size:11px;
padding:17px 10px 0 0; height:41px;
float:left;
}
#topnavi ul li a:hover{
font-size:11px; color: #333333;
background: #FFFFFF;
}
#topnavi ul li a:hover span{
font-size:11px;
display:block; width:auto;
cursor:pointer;
}
#topnavi ul li a.current,#topnavi ul li a.current:hover{
color: #333333; background: url(../images/topmenu_left.jpg) no-repeat top left;
line-height:350%;
}
#topnavi ul li a.current span{
display:block;
padding:0 10px 0 0;
width:auto;
background: url(../images/topmenu_right.jpg) no-repeat top right; height:43px;
}
/* --- end nav --- */
/* /////////////////////////////////////////////////////////////////////////// */
form { margin : 0;
padding : 0;
} hr {
color : #999999; height : 1px;
width : 100%;
}
.back_button {
color : #999999;
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif; font-size : 11px;
font-weight : normal;
padding-bottom : 3px; margin-right : 4px;
float : right;
line-height : 20px; }
.button {
font-size : 11px; color : #333333;
border : 1px solid #999999;
margin : 3px; background-color : #EDEDED;
padding : 1px;
cursor : pointer;
}
.inputbox { color : #000000;
background : #ffffff;
border : 1px solid #cccccc; margin : 3px;
}
table,td,div {
color : #666666; font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif;
font-size : 11px;
margin:0; }
p {
color : #666666;
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif;
font-size : 11px;
line-height : 16px; padding:4px 0px 4px 0px;
margin:0;
} strong {
color : #666666;
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif; font-size : 11px;
line-height : 16px;
padding:4px 0px 4px 0px; margin:0;
}
i {
color : #666666;
font-family : Verdana, Helvetica, sans-serif;
font-size : 10px; line-height : 16px;
padding:4px 0px 4px 0px;
margin:0; font-style: normal;
}
em { color : #666666;
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif;
font-size : 11px; line-height : 16px;
padding:4px 0px 4px 0px; margin:0;
font-style: normal;
}
/* /////////////////////////////////////////////////////////////////////////// */
.leftcol {width:150px;padding:10px 5px 10px 10px;}
.maincol {width:560px;padding:10px 5px 10px 5px;}
.rightcol {width:170px;padding:10px 10px 10px 10px;}
#container {
width:800px;
height:100%; margin: 0px auto;
padding:0;
text-align: left; background: #fae5e5t;
}
/* line divider */
table.moduletable { margin : 0 0 20px 0;
width : 100%;
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif; font-size : 10px;
}
table.moduletable th {
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif; font-size : 11px;
font-weight : bold;
text-align : left; width : 138px;
height : 34px;
color : #000000;
padding : 8px 0 0 30px;
text-indent : 10px;
line-height : 15px;
background : #fff url(../images/moduletable_th_bg.jpg) repeat-x left top; }
table.moduletable td { padding-top: 2px;
}
.sectiontableheader {
font-size : 10px; font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif;
font-weight : normal;
text-transform : uppercase;
letter-spacing : 1px;
color : #333333;
background : #ffffff; padding : 1px;
}
.sectiontableentry1 {
vertical-align : top; padding : 3px;
background : #f1f1f1;
border-bottom : 1px solid #ffffff; line-height : 25px;
}
.sectiontableentry2 {
vertical-align : top;
padding : 3px;
border-bottom : 1px solid #ffffff;
background : #FFFFFF; line-height : 25px;
}
a.mainlevel { display : block;
width : auto;
margin : 1px 0; padding : 0;
font-size : 12px;
background : none; text-indent : 10px;
width : 160px;
}
a.mainlevel:link, a.mainlevel:visited {
display : block;
font-size : 11px;
background : transparent url(../images/mainlevel.gif) repeat-x right bottom;
font-weight : normal; padding : 4px 0 4px 0;
color : #000000;
text-indent : 11px; }
a.mainlevel:hover {
background : transparent url(../images/mainlevel_h.gif) repeat-x right bottom; font-size : 11px;
font-weight : normal;
color : #A30E16; text-decoration : none;
text-indent : 11px;
} #active_menu {
color : #A30E16;
background : transparent url(../images/mainlevel_h.gif) repeat-x right bottom;
}
a#active_menu:hover {
color : #333333;
}
a:link, a:visited {
font-size : 11px; color : #333333;
text-decoration : none;
font-weight : bold; }
a:hover {
font-size : 11px; color : #A30E16;
text-decoration : none;
font-weight : bold;
}
a.category:link, a.category:visited {
font-size : 11px; font-weight : bold;
}
a.readon:link, a.readon:visited { color : #999999;
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif;
font-size : 11px; background : url(../images/readon.gif) no-repeat;
white-space : normal;
font-weight : bold; padding : 1px 0 3px 18px;
float : right; line-height : 10px;
text-decoration : underline;
}
a.readon:hover {
color : #A30E16;
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif; font-size : 11px;
background : url(../images/readon.gif) no-repeat;
white-space : normal; font-weight : bold;
padding : 1px 0 3px 18px;
line-height : 10px; text-decoration : underline;
}
ul { margin : 2px;
padding-left : 10px;
list-style : none; }
li {
line-height : 15px;
padding-left : 10px;
padding-top : 0; background-image : url(../images/strelka.gif) ;
background-repeat: no-repeat;
background-position: 0 5px; }
table.contenttoc {
border : 1px solid #dcdcdc; background : #F1F1F1;
padding : 5px;
margin-left : 2px; margin-bottom : 2px;
}
.pagenavcounter { font-size : 10px;
color : #4da338;
}
.pagenavbar {
border-top : 1px solid #999999;
padding : 2px;
} .pagenav {
font-weight : bold;
} a.pagenav:link, a.pagenav:visited {
font-size : 11px;
color : #999999; text-decoration : none;
}
a.pagenav:hover { font-size : 11px;
color : #3333ff;
text-decoration : none;
}
.date {
font-size : 10px; font-weight : bold;
color : #707070;
padding-right : 12px; }
.small {
font-size : 10px; color : #333333;
}
.smalldark { font-size : 10px;
color : #333333; }
.createdate, .modifydate {
float : right;
font-size : 10px;
color : #666666;
font-weight : bold;
} .content_vote {
font-size : 10px;
height : 22px; padding-top : 2px;
padding-bottom : 2px;
} .content_rating {
font-size : 10px;
color : #999999; }
.pway {
margin:0 auto;
text-align:left;
background:#614736; width:800px;
height:18px;
padding:2px 0 0 0 ; filter:alpha(opacity=40);
-moz-opacity:.40;
opacity:.40; }
.pathway {
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif; font-size : 11px;
color : #fefefe;
padding-left : 12px; }
a.pathway:link, a.pathway:visited {
font-family : Tahoma, Arial, Verdana, Helvetica, sans-serif;
color : #fefefe;
font-size : 10px;
padding-left : 0;
} a.pathway:hover {
color:#efefef;
font-size : 10px; padding-left : 0;
}
table.content{ width : 100%;
padding : 0;
border-collapse : collapse; border-spacing : 0;
margin-bottom : 10px;
}
table.contentpane {
width : 100%;
border-spacing : 0; padding-left : 5px;
padding-right : 5px;
margin-bottom : 5px; }
table.contentpaneopen {
width : 100%; border-spacing : 0;
padding-left : 5px;
padding-right : 5px; margin-bottom : 5px;
} .poll {
color : #333333;
line-height : 12px;
font-weight: normal;
}
.pollstableborder{
border-color : #999999; }
.contentheading,.componentheading {
width : 90%; font-size : 12px;
font-weight : bold;
line-height : 16px; text-transform : uppercase;
text-align : left;
text-indent : 0; color : #A30E16;
padding : 1px;
margin : 3px 0px;
}
.ontab {
border-left : 1px solid #666666;
text-align : center; font-weight : bold;
color : #333333;
padding : 5px; cursor : pointer;
line-height : 30px;
} .offtab {
border-left : 1px solid #666666;
text-align : center; color : #999999;
font-weight : normal;
padding : 5px;
cursor : pointer;
line-height : 30px;
}
.tabpadding { border-left : 1px solid #666666;
}
.col { vertical-align : top;
background : #ffffff;
padding-top: 5px;
}
.contentdescription {
width : auto !important;
margin : 0;
padding : 0;
padding-top : 5px; text-align : left;
}
td.top1{
margin: 0;
padding: 0; height: 28px !important;
height: 28px;
padding-top: 2px !important; padding-top: 3px;
background : url(../images/shadow.jpg) #f1f1f1 repeat-x top; }
table.top2{
background : #ffffff;
}
.searchbox { margin : 0;
padding : 0;
margin-top : 13px; margin-left : 10px;
width : 130px;
font-size : 11px; color : #707070;
border : 1px solid #cccccc;
padding : 2px !important; padding : 1px;
background : none;
}
.sublevel {
font-family : Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size : 10px;
font-weight : normal;
color : #999999; margin-top : 10px;
}
a.sublevel:link, a.sublevel:visited { font-family : Tahoma, Verdana, Arial, Helvetica, sans-serif;
font-size : 10px;
font-weight : normal; color : #999999;
padding : 5px 1px 3px 5px;
text-decoration : none; }
a.sublevel:hover {
color : #A30E16; text-decoration : none;
}
a.sublevel#active_menu {
background : transparent;
color : #ff6600;
border : 0;
}
a.toclink:link, a.toclink:visited {
font-family : Tahoma, Verdana, Arial, Helvetica, sans-serif; font-size : 10px;
font-weight : normal;
color : #999999; padding : 5px 1px 3px 5px;
text-decoration : none;
} a.toclink:hover {
color : #A30E16;
text-decoration : none;
}
td.logoheader { margin: 0;
padding: 0;
background : url(../images/header.jpg) no-repeat bottom; height : 65px;
width : 770px;
} td.topnav {
margin : 0px;
padding: 0px; background : url(../images/bg_top.jpg) repeat-x top left;
height : 42px; width : 770px;
}
td.bgline {
margin : 0; padding: 0;
background : url(../images/s.gif) repeat-y;
width : 7px; }
#mainlevel-nav {
font-size : 11px;
list-style : none; padding : 0;
margin : 0;
margin-left : 1px;
}
#mainlevel-nav li {
float : right;
display : block; list-style : none;
background-image : none;
padding-left : 2px; padding-right : 2px;
margin : 0;
width : auto !important; font-size : 11px;
line-height : 28px;
white-space : nowrap; border-left : 1px solid #cccccc;
} #mainlevel-nav li a {
padding-left : 10px;
padding-right : 10px;
font-size : 11px;
color : #000033;
text-decoration : none;
}
#mainlevel-nav li a:hover {
font-size : 11px;
color : #999999;
}
.blog_more {
margin : 10px 0 7px 7px;
}
.buttonheading {
padding : 0 2px;
}
.mosimage {
border : 1px solid #dedede; margin : 5px;
padding-top: 3px;
}
.mosimage_caption { margin-top: 3px;
padding : 2px; color : #000066;
font-size : 10px;
background: #f1f1f1;
}
/* -------------------------- */ .footer_bg {
width:800px;
margin: 0px auto; padding:0;
height:35px;
text-align: right; background:transparent url(../images/footer_bg.jpg) no-repeat left top;
}
.footer_bg { width:800px;
padding:6px 0px 0 0;
height:29px; text-align: center;
margin:0px;
}
.footer {
color:#fff;
padding:0; margin:0;
}
Language
<?php
/**
* @version $Id: english.php 6087 2006-12-24 18:59:57Z robs $ * @package Joomla
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php * Joomla! is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
// no direct access
defined( '_VALID_MOS' ) or die( 'Restricted access' );
// Site page note found
define( '_404', 'We\'re sorry but the page you requested could not be found.' );
define( '_404_RTS', 'Return to site' );
define( '_SYSERR1', 'The database adapter is not available' );
define( '_SYSERR2', 'Could not connect to the database server' ); define( '_SYSERR3', 'Could not connect to the database' );
// common
DEFINE('_LANGUAGE','en');
DEFINE('_NOT_AUTH','You are not authorised to view this resource.');
DEFINE('_DO_LOGIN','You need to login.'); DEFINE('_VALID_AZ09',"Please enter a valid %s. No spaces, more than %d characters and contain 0-9,a-z,A-Z");
DEFINE('_VALID_AZ09_USER',"Please enter a valid %s. More than %d characters and contain 0-9,a-z,A-Z");
DEFINE('_CMN_YES','Yes'); DEFINE('_CMN_NO','No');
DEFINE('_CMN_SHOW','Show');
DEFINE('_CMN_HIDE','Hide');
DEFINE('_CMN_NAME','Name');
DEFINE('_CMN_DESCRIPTION','Description'); DEFINE('_CMN_SAVE','Save');
DEFINE('_CMN_APPLY','Apply'); DEFINE('_CMN_CANCEL','Cancel');
DEFINE('_CMN_PRINT','Print');
DEFINE('_CMN_PDF','PDF');
DEFINE('_CMN_EMAIL','E-mail');
DEFINE('_ICON_SEP','|');
DEFINE('_CMN_PARENT','Parent'); DEFINE('_CMN_ORDERING','Ordering');
DEFINE('_CMN_ACCESS','Access Level');
DEFINE('_CMN_SELECT','Select');
DEFINE('_CMN_NEXT','Next');
DEFINE('_CMN_NEXT_ARROW'," >>"); DEFINE('_CMN_PREV','Prev');
DEFINE('_CMN_PREV_ARROW',"<< ");
DEFINE('_CMN_SORT_NONE','No Sorting');
DEFINE('_CMN_SORT_ASC','Sort Ascending');
DEFINE('_CMN_SORT_DESC','Sort Descending');
DEFINE('_CMN_NEW','New');
DEFINE('_CMN_NONE','None');
DEFINE('_CMN_LEFT','Left');
DEFINE('_CMN_RIGHT','Right');
DEFINE('_CMN_CENTER','Center'); DEFINE('_CMN_ARCHIVE','Archive');
DEFINE('_CMN_UNARCHIVE','Unarchive');
DEFINE('_CMN_TOP','Top'); DEFINE('_CMN_BOTTOM','Bottom');
DEFINE('_CMN_PUBLISHED','Published'); DEFINE('_CMN_UNPUBLISHED','Unpublished');
DEFINE('_CMN_EDIT_HTML','Edit HTML'); DEFINE('_CMN_EDIT_CSS','Edit CSS');
DEFINE('_CMN_DELETE','Delete');
DEFINE('_CMN_FOLDER','Folder');
DEFINE('_CMN_SUBFOLDER','Sub-folder');
DEFINE('_CMN_OPTIONAL','Optional');
DEFINE('_CMN_REQUIRED','Required');
DEFINE('_CMN_CONTINUE','Continue');
DEFINE('_STATIC_CONTENT','Static Content');
DEFINE('_CMN_NEW_ITEM_LAST','New Items default to the last place. Ordering can be changed after this Item is
saved.');
DEFINE('_CMN_NEW_ITEM_FIRST','New Items default to the first place. Ordering can be changed after this Item is saved.');
DEFINE('_LOGIN_INCOMPLETE','Please complete the username and password fields.');
DEFINE('_LOGIN_BLOCKED','Your login has been blocked. Please contact the administrator.'); DEFINE('_LOGIN_INCORRECT','Incorrect username or password. Please try again.');
DEFINE('_LOGIN_NOADMINS','You cannot login. There are no administrators set up.');
DEFINE('_CMN_JAVASCRIPT','!Warning! JavaScript must be enabled for proper operation.');
DEFINE('_NEW_MESSAGE','A new private message has arrived');
DEFINE('_MESSAGE_FAILED','The User has locked their mailbox. Message failed.');
DEFINE('_CMN_IFRAMES', 'This option will not work correctly. Unfortunately, your browser does not support Inline
Frames');
DEFINE('_INSTALL_3PD_WARN','Warning: Installing 3rd party extensions may compromise your server\'s security.
Upgrading your Joomla! installation will not update your 3rd party extensions.<br />For more information on keeping your site secure, please see the <a href="http://forum.joomla.org/index.php/board,267.0.html" target="_blank" style="color:
blue; text-decoration: underline;">Joomla! Security Forum</a>.');
DEFINE('_INSTALL_WARN','For your security please completely remove the installation directory including all files and sub-folders - then refresh this page.');
DEFINE('_TEMPLATE_WARN','<font color=\"red\"><b>Template File Not Found! Looking for template:</b></font>'); DEFINE('_NO_PARAMS','There are no Parameters for this item');
DEFINE('_HANDLER','Handler not defined for type');
/** mambots */
DEFINE('_TOC_JUMPTO','Article Index');
/** content */
DEFINE('_READ_MORE','Read more...');
DEFINE('_READ_MORE_REGISTER','Register to read more...'); DEFINE('_MORE','More...');
DEFINE('_ON_NEW_CONTENT', "A new Content Item has been submitted by [ %s ] titled [ %s ] from Section [ %s ]
and Category [ %s ]" ); DEFINE('_SEL_CATEGORY','- Select Category -');
DEFINE('_SEL_SECTION','- Select Section -');
DEFINE('_SEL_AUTHOR','- Select Author -'); DEFINE('_SEL_POSITION','- Select Position -');
DEFINE('_SEL_TYPE','- Select Type -');
DEFINE('_EMPTY_CATEGORY','This Category is currently empty'); DEFINE('_EMPTY_BLOG','There are no Items to display');
DEFINE('_NOT_EXIST','The page you are trying to access does not exist.<br />Please select a page from the main
menu.');
DEFINE('_SUBMIT_BUTTON','Submit');
/** classes/html/modules.php */ DEFINE('_BUTTON_VOTE','Vote');
DEFINE('_BUTTON_RESULTS','Results');
DEFINE('_USERNAME','Username'); DEFINE('_LOST_PASSWORD','Lost Password?');
DEFINE('_PASSWORD','Password');
DEFINE('_BUTTON_LOGIN','Login'); DEFINE('_BUTTON_LOGOUT','Logout');
DEFINE('_NO_ACCOUNT','No account yet?');
DEFINE('_CREATE_ACCOUNT','Register'); DEFINE('_VOTE_POOR','Poor');
DEFINE('_VOTE_BEST','Best');
DEFINE('_USER_RATING','User Rating'); DEFINE('_RATE_BUTTON','Rate');
DEFINE('_REMEMBER_ME','Remember me');
/** contact.php */
DEFINE('_ENQUIRY','Enquiry');
DEFINE('_ENQUIRY_TEXT','This is an enquiry e-mail via %s from:');
DEFINE('_COPY_TEXT','This is a copy of the following message you sent to %s via %s '); DEFINE('_COPY_SUBJECT','Copy of: ');
DEFINE('_THANK_MESSAGE','Thank you for your e-mail');
DEFINE('_CLOAKING','This e-mail address is being protected from spam bots, you need JavaScript enabled to view it'); DEFINE('_CONTACT_HEADER_NAME','Name');
DEFINE('_CONTACT_HEADER_POS','Position');
DEFINE('_CONTACT_HEADER_EMAIL','Email'); DEFINE('_CONTACT_HEADER_PHONE','Phone');
DEFINE('_CONTACT_HEADER_FAX','Fax');
DEFINE('_CONTACTS_DESC','The Contact list for this Web site.'); DEFINE('_CONTACT_MORE_THAN','You cannot enter more than one e-mail address.');
/** classes/html/contact.php */
DEFINE('_CONTACT_TITLE','Contact');
DEFINE('_EMAIL_DESCRIPTION','Send an e-mail to this Contact:');
DEFINE('_NAME_PROMPT',' Enter your name:'); DEFINE('_EMAIL_PROMPT',' E-mail address:');
DEFINE('_MESSAGE_PROMPT',' Enter your message:');
DEFINE('_SEND_BUTTON','Send'); DEFINE('_CONTACT_FORM_NC','Please make sure the form is complete and valid.');
DEFINE('_CONTACT_TELEPHONE','Telephone: ');
DEFINE('_CONTACT_MOBILE','Mobile: '); DEFINE('_CONTACT_FAX','Fax: ');
DEFINE('_CONTACT_EMAIL','E-mail: ');
DEFINE('_CONTACT_NAME','Name: '); DEFINE('_CONTACT_POSITION','Position: ');
DEFINE('_CONTACT_ADDRESS','Address: '); DEFINE('_CONTACT_MISC','Information: ');
DEFINE('_CONTACT_SEL','Select Contact:');
DEFINE('_CONTACT_NONE','There are no Contact Details listed.');
DEFINE('_CONTACT_ONE_EMAIL','You cannot enter more than one e-mail address.');
DEFINE('_EMAIL_A_COPY','E-mail a copy of this message to your own address');
DEFINE('_CONTACT_DOWNLOAD_AS','Download information as a'); DEFINE('_VCARD','VCard');
/** pageNavigation */ DEFINE('_PN_LT','<');
DEFINE('_PN_RT','>');
DEFINE('_PN_PAGE','Page'); DEFINE('_PN_OF','of');
DEFINE('_PN_START','Start');
DEFINE('_PN_PREVIOUS','Prev'); DEFINE('_PN_NEXT','Next');
DEFINE('_PN_END','End');
DEFINE('_PN_DISPLAY_NR','Display #'); DEFINE('_PN_RESULTS','Results');
/** emailfriend */
DEFINE('_EMAIL_TITLE','E-mail a friend');
DEFINE('_EMAIL_FRIEND','E-mail this to a friend.');
DEFINE('_EMAIL_FRIEND_ADDR',"Your friend's e-mail:"); DEFINE('_EMAIL_YOUR_NAME','Your Name:');
DEFINE('_EMAIL_YOUR_MAIL','Your e-mail:');
DEFINE('_SUBJECT_PROMPT',' Message subject:'); DEFINE('_BUTTON_SUBMIT_MAIL','Send e-mail');
DEFINE('_BUTTON_CANCEL','Cancel');
DEFINE('_EMAIL_ERR_NOINFO','You must enter your valid e-mail and the valid e-mail to send to.'); DEFINE('_EMAIL_MSG','The following page from the "%s" web site has been sent to you by %s ( %s ).
You can access it at the following URL: %s');
DEFINE('_EMAIL_INFO','Item sent by');
DEFINE('_EMAIL_SENT','This item has been sent to'); DEFINE('_PROMPT_CLOSE','Close Window');
/** classes/html/content.php */
DEFINE('_AUTHOR_BY', ' Contributed by');
DEFINE('_WRITTEN_BY', ' Written by');
DEFINE('_LAST_UPDATED', 'Last Updated');
DEFINE('_BACK','[ Back ]'); DEFINE('_LEGEND','Legend');
DEFINE('_DATE','Date');
DEFINE('_ORDER_DROPDOWN','Order'); DEFINE('_HEADER_TITLE','Item Title');
DEFINE('_HEADER_AUTHOR','Author');
DEFINE('_HEADER_SUBMITTED','Submitted'); DEFINE('_HEADER_HITS','Hits');
DEFINE('_E_EDIT','Edit');
DEFINE('_E_ADD','Add'); DEFINE('_E_WARNUSER','Please either Cancel or Save the current change');
DEFINE('_E_WARNTITLE','Content Item must have a title');
DEFINE('_E_WARNTEXT','Content Item must have intro text');
DEFINE('_E_WARNCAT','Please select a Category');
DEFINE('_E_CONTENT','Content');
DEFINE('_E_TITLE','Title:'); DEFINE('_E_CATEGORY','Category:');
DEFINE('_E_INTRO','Intro Text');
DEFINE('_E_MAIN','Main Text'); DEFINE('_E_MOSIMAGE','INSERT {mosimage}');
DEFINE('_E_IMAGES','Images');
DEFINE('_E_GALLERY_IMAGES','Gallery Images'); DEFINE('_E_CONTENT_IMAGES','Content Images');
DEFINE('_E_EDIT_IMAGE','Edit Image');
DEFINE('_E_NO_IMAGE','No Image'); DEFINE('_E_INSERT','Insert');
DEFINE('_E_UP','Up'); DEFINE('_E_DOWN','Down');
DEFINE('_E_REMOVE','Remove');
DEFINE('_E_SOURCE','Source:');
DEFINE('_E_ALIGN','Align:');
DEFINE('_E_ALT','Alt Text:');
DEFINE('_E_BORDER','Border:'); DEFINE('_E_CAPTION','Caption');
DEFINE('_E_CAPTION_POSITION','Caption Position');
DEFINE('_E_CAPTION_ALIGN','Caption Align'); DEFINE('_E_CAPTION_WIDTH','Caption Width');
DEFINE('_E_APPLY','Apply');
DEFINE('_E_PUBLISHING','Publishing'); DEFINE('_E_STATE','State:');
DEFINE('_E_AUTHOR_ALIAS','Author Alias:');
DEFINE('_E_ACCESS_LEVEL','Access Level:'); DEFINE('_E_ORDERING','Ordering:');
DEFINE('_E_START_PUB','Start Publishing:');
DEFINE('_E_FINISH_PUB','Finish Publishing:'); DEFINE('_E_SHOW_FP','Show on Front Page:');
DEFINE('_E_HIDE_TITLE','Hide Item Title:');
DEFINE('_E_METADATA','Metadata');
DEFINE('_E_M_DESC','Description:');
DEFINE('_E_M_KEY','Keywords:');
DEFINE('_E_SUBJECT','Subject:'); DEFINE('_E_EXPIRES','Expiry Date:');
DEFINE('_E_VERSION','Version:');
DEFINE('_E_ABOUT','About'); DEFINE('_E_CREATED','Created:');
DEFINE('_E_LAST_MOD','Last Modified:');
DEFINE('_E_HITS','Hits:'); DEFINE('_E_SAVE','Save');
DEFINE('_E_CANCEL','Cancel');
DEFINE('_E_REGISTERED','Registered Users Only'); DEFINE('_E_ITEM_INFO','Item Information');
DEFINE('_E_ITEM_SAVED','Item successfully saved.');
DEFINE('_ITEM_PREVIOUS','< Prev'); DEFINE('_ITEM_NEXT','Next >');
DEFINE('_KEY_NOT_FOUND','Key not found');
/** content.php */
DEFINE('_SECTION_ARCHIVE_EMPTY','There are currently no Archived Entries for this Section, please come back
later'); DEFINE('_CATEGORY_ARCHIVE_EMPTY','There are currently no Archived Entries for this Category, please come
back later');
DEFINE('_HEADER_SECTION_ARCHIVE','Section Archives'); DEFINE('_HEADER_CATEGORY_ARCHIVE','Category Archives');
DEFINE('_ARCHIVE_SEARCH_FAILURE','There are no Archived entries for %s %s'); // values are month then year
DEFINE('_ARCHIVE_SEARCH_SUCCESS','Here are the Archived entries for %s %s'); // values are month then year DEFINE('_FILTER','Filter');
DEFINE('_ORDER_DROPDOWN_DA','Date asc');
DEFINE('_ORDER_DROPDOWN_DD','Date desc'); DEFINE('_ORDER_DROPDOWN_TA','Title asc');
DEFINE('_ORDER_DROPDOWN_TD','Title desc');
DEFINE('_ORDER_DROPDOWN_HA','Hits asc');
DEFINE('_ORDER_DROPDOWN_HD','Hits desc');
DEFINE('_ORDER_DROPDOWN_AUA','Author asc');
DEFINE('_ORDER_DROPDOWN_AUD','Author desc'); DEFINE('_ORDER_DROPDOWN_O','Ordering');
/** poll.php */ DEFINE('_ALERT_ENABLED','Cookies must be enabled!');
DEFINE('_ALREADY_VOTE','You already voted for this item today.');
DEFINE('_NO_SELECTION','No selection has been made, please try again'); DEFINE('_THANKS','Thanks for your vote!');
DEFINE('_SELECT_POLL','Select Poll from the list');
/** classes/html/poll.php */
DEFINE('_JAN','January'); DEFINE('_FEB','February');
DEFINE('_MAR','March');
DEFINE('_APR','April');
DEFINE('_MAY','May');
DEFINE('_JUN','June');
DEFINE('_JUL','July'); DEFINE('_AUG','August');
DEFINE('_SEP','September');
DEFINE('_OCT','October'); DEFINE('_NOV','November');
DEFINE('_DEC','December');
DEFINE('_POLL_TITLE','Poll - Results'); DEFINE('_SURVEY_TITLE','Poll Title:');
DEFINE('_NUM_VOTERS','Number of Voters');
DEFINE('_FIRST_VOTE','First Vote'); DEFINE('_LAST_VOTE','Last Vote');
DEFINE('_SEL_POLL','Select Poll:');
DEFINE('_NO_RESULTS','There are no results for this poll.');
/** registration.php */
DEFINE('_ERROR_PASS','Sorry, no corresponding User was found');
DEFINE('_NEWPASS_MSG','The User account $checkusername has this e-mail associated with it.\n'
.'A web user from $mosConfig_live_site has just requested that a new password be sent.\n\n'
.' Your New Password is: $newpass\n\nIf you didn\'t ask for this, don\'t worry.'
.' You are seeing this message, not them. If this was an error just login with your'
.' new password and then change your password to what you would like it to be.');
DEFINE('_NEWPASS_SUB','$_sitename :: New password for - $checkusername'); DEFINE('_NEWPASS_SENT','New User Password created and sent!');
DEFINE('_REGWARN_NAME','Please enter your name.');
DEFINE('_REGWARN_UNAME','Please enter a User name.'); DEFINE('_REGWARN_MAIL','Please enter a valid e-mail address.');
DEFINE('_REGWARN_PASS','Please enter a valid password. No spaces, more than 6 characters and contain 0-9,a-z,A-
Z'); DEFINE('_REGWARN_VPASS1','Please verify the password.');
DEFINE('_REGWARN_VPASS2','Password and verification do not match, please try again.');
DEFINE('_REGWARN_INUSE','This username/password already in use. Please try another.'); DEFINE('_REGWARN_EMAIL_INUSE', 'This e-mail is already registered. If you forgot the password click on "Lost your
Password" and a new password will be sent to you.');
DEFINE('_SEND_SUB','Account details for %s at %s');
DEFINE('_USEND_MSG_ACTIVATE', 'Hello %s,
Thank you for registering at %s. Your account is created and must be activated before you can use it.
To activate the account click on the following link or copy-paste it in your browser: %s
After activation you may login to %s using the following username and password:
Username - %s
Password - %s'); DEFINE('_USEND_MSG', "Hello %s,
Thank you for registering at %s.
You may now login to %s using the username and password you registered with.");
DEFINE('_USEND_MSG_NOPASS','Hello $name,\n\nYou have been added as a user to $mosConfig_live_site.\n'
.'You may login to $mosConfig_live_site with the username and password you registered with.\n\n'
.'Please do not respond to this message as it is automatically generated and is for information purposes only\n');
DEFINE('_ASEND_MSG','Hello %s,
A new User has registered at %s.
This e-mail contains their details:
Name - %s
E-mail - %s Username - %s
Please do not respond to this message as it is automatically generated and is for information purposes only'); DEFINE('_REG_COMPLETE_NOPASS','<div class="componentheading">Registration Complete!</div><br
/> ' .'You may now login.<br /> ');
DEFINE('_REG_COMPLETE', '<div class="componentheading">Registration Complete!</div><br />You may now
login.');
DEFINE('_REG_COMPLETE_ACTIVATE', '<div class="componentheading">Registration Complete!</div><br />Your
account has been created and activation link has been sent to the e-mail address you entered. Note that you must activate
the account by clicking on the activation link when you get the e-mail before you can login.'); DEFINE('_REG_ACTIVATE_COMPLETE', '<div class="componentheading">Activation Complete!</div><br />Your
account has been successfully activated. You can now login using the username and password you chose during the
registration.'); DEFINE('_REG_ACTIVATE_NOT_FOUND', '<div class="componentheading">Invalid Activation Link!</div><br
/>There is no such account in our database or the account has already been activated.');
DEFINE('_REG_ACTIVATE_FAILURE', '<div class="componentheading">Activation Failed!</div><br />The system was unable to activate your account, please contact the site administrator.');
/** classes/html/registration.php */ DEFINE('_PROMPT_PASSWORD','Lost your Password?');
DEFINE('_NEW_PASS_DESC','Please enter your Username and e-mail address then click on the Send Password
button.<br />' .'You will receive a new password shortly. Use this new password to access the site.');
DEFINE('_PROMPT_UNAME','Username:');
DEFINE('_PROMPT_EMAIL','E-mail Address:');
DEFINE('_BUTTON_SEND_PASS','Send Password');
DEFINE('_REGISTER_TITLE','Registration');
DEFINE('_REGISTER_NAME','Nami:'); DEFINE('_REGISTER_UNAME','Username:');
DEFINE('_REGISTER_EMAIL','E-mail:');
DEFINE('_REGISTER_PASS','Password:'); DEFINE('_REGISTER_VPASS','Verify Password:');
DEFINE('_REGISTER_REQUIRED','Fields marked with an asterisk (*) are required.');
DEFINE('_BUTTON_SEND_REG','Send Registration'); DEFINE('_SENDING_PASSWORD','Your password will be sent to the above e-mail address.<br />Once you have
received your'
.' new password you can login in and change it.');
/** classes/html/search.php */
DEFINE('_SEARCH_TITLE','Search'); DEFINE('_PROMPT_KEYWORD','Search Keyword');
DEFINE('_SEARCH_MATCHES','returned %d matches');
DEFINE('_CONCLUSION','Total $totalRows results found. Search for [ <b>$searchword</b> ] with');
DEFINE('_NOKEYWORD','No results were found');
DEFINE('_IGNOREKEYWORD','One or more common words were ignored in the search');
DEFINE('_SEARCH_ANYWORDS','Any words');
DEFINE('_SEARCH_ALLWORDS','All words'); DEFINE('_SEARCH_PHRASE','Exact phrase');
DEFINE('_SEARCH_NEWEST','Newest first');
DEFINE('_SEARCH_OLDEST','Oldest first'); DEFINE('_SEARCH_POPULAR','Most popular');
DEFINE('_SEARCH_ALPHABETICAL','Alphabetical');
DEFINE('_SEARCH_CATEGORY','Section/Category'); DEFINE('_SEARCH_MESSAGE','Search term must be a minimum of 3 characters and a maximum of 20 characters');
DEFINE('_SEARCH_ARCHIVED','Archived');
DEFINE('_SEARCH_CATBLOG','Category Blog'); DEFINE('_SEARCH_CATLIST','Category List');
DEFINE('_SEARCH_NEWSFEEDS','News Feeds ');
DEFINE('_SEARCH_SECLIST','Section List');
DEFINE('_SEARCH_SECBLOG','Section Blog');
/** templates/*.php */
DEFINE('_ISO','charset=iso-8859-1');
DEFINE('_DATE_FORMAT','l, F d Y'); //Uses PHP's DATE Command Format - Depreciated /**
* Modify this line to reflect how you want the date to appear in your site
* *e.g. DEFINE("_DATE_FORMAT_LC","%A, %d %B %Y %H:%M"); //Uses PHP's strftime Command Format
*/
DEFINE('_DATE_FORMAT_LC',"%A, %d %B %Y"); //Uses PHP's strftime Command Format DEFINE('_DATE_FORMAT_LC2',"%A, %d %B %Y %H:%M");
DEFINE('_SEARCH_BOX','search...'); DEFINE('_NEWSFLASH_BOX','Newsflash!');
DEFINE('_MAINMENU_BOX','Main Menu');
/** classes/html/usermenu.php */
DEFINE('_UMENU_TITLE','User Menu');
DEFINE('_HI','Hi, ');
/** user.php */
DEFINE('_SAVE_ERR','Please complete all the fields.'); DEFINE('_THANK_SUB','Thanks for your submission. Your submission will now be reviewed before being posted to the
site.');
DEFINE('_THANK_SUB_PUB','Thanks for your submission.'); DEFINE('_UP_SIZE','You cannot upload files greater than 15kb in size.');
DEFINE('_UP_EXISTS','Image $userfile_name already exists. Please rename the file and try again.');
DEFINE('_UP_COPY_FAIL','Failed to copy'); DEFINE('_UP_TYPE_WARN','You may only upload a gif, or jpg image.');
DEFINE('_MAIL_SUB','User Submitted');
DEFINE('_MAIL_MSG','Hello $adminName,\n\n\nA User submitted $type:\n [ $title ]\n has been just been submitted by User:\n [ $author ]\n'
.' for $mosConfig_live_site.\n\n\n\n'
.'Please go to $mosConfig_live_site/administrator to view and approve this $type.\n\n'
.'Please do not respond to this message as it is automatically generated and is for information purposes only\n');
DEFINE('_PASS_VERR1','If changing your password please enter the password again to verify.');
DEFINE('_PASS_VERR2','If changing your password please make sure the password and verification match.'); DEFINE('_UNAME_INUSE','This username already in use.');
DEFINE('_UPDATE','Update');
DEFINE('_USER_DETAILS_SAVE','Your settings have been saved.'); DEFINE('_USER_LOGIN','User Login');
/** components/com_user */ DEFINE('_EDIT_TITLE','Edit Your Details');
DEFINE('_YOUR_NAME','Your Name:');
DEFINE('_EMAIL','e-mail:'); DEFINE('_UNAME','User Name:');
DEFINE('_PASS','Password:');
DEFINE('_VPASS','Verify Password:'); DEFINE('_SUBMIT_SUCCESS','Submission Success!');
DEFINE('_SUBMIT_SUCCESS_DESC','Your item has been successfully submitted to our administrators. It will be
reviewed before being published on this site.');
DEFINE('_WELCOME','Welcome!');
DEFINE('_WELCOME_DESC','Welcome to the User section of our site');
DEFINE('_CONF_CHECKED_IN','Checked out items have now been all checked in');
DEFINE('_CHECK_TABLE','Checking table'); DEFINE('_CHECKED_IN','Checked in ');
DEFINE('_CHECKED_IN_ITEMS',' items');
DEFINE('_PASS_MATCH','Passwords do not match');
/** components/com_banners */
DEFINE('_BNR_CLIENT_NAME','You must select a name for the Client.'); DEFINE('_BNR_CONTACT','You must select a contact for the Client.');
DEFINE('_BNR_VALID_EMAIL','You must select a valid e-mail for the Client.');
DEFINE('_BNR_CLIENT','You must select a Client,'); DEFINE('_BNR_NAME','You must select a name for the Banner.');
DEFINE('_BNR_IMAGE','You must select an image for the Banner.');
DEFINE('_BNR_URL','You must select a URL/Custom banner code for the Banner.');
/** components/com_login */
DEFINE('_ALREADY_LOGIN','You are already logged in!'); DEFINE('_LOGOUT','Click here to logout');
DEFINE('_LOGIN_TEXT','Use the login and password fields opposite to gain full access');
DEFINE('_LOGIN_SUCCESS','You have successfully Logged In'); DEFINE('_LOGOUT_SUCCESS','You have successfully Logged Out');
DEFINE('_LOGIN_DESCRIPTION','To access the Private area of this site please Login');
DEFINE('_LOGOUT_DESCRIPTION','You are currently Logged In to the private area of this site');
/** components/com_weblinks */ DEFINE('_WEBLINKS_TITLE','Web Links');
DEFINE('_WEBLINKS_DESC','We are regularly out on the web. When we find a great site we list' .' it here for you to enjoy. <br />From the list below choose one of our weblink topics, then select a URL to visit.');
DEFINE('_HEADER_TITLE_WEBLINKS','Web Link');
DEFINE('_SECTION','Section:');
DEFINE('_SUBMIT_LINK','Submit A Web Link');
DEFINE('_URL','URL:');
DEFINE('_URL_DESC','Description:'); DEFINE('_NAME','Name:');
DEFINE('_WEBLINK_EXIST','There is a Web Link already with that name, please try again.');
DEFINE('_WEBLINK_TITLE','Your Weblink must contain a title.');
/** components/com_newfeeds */
DEFINE('_FEED_NAME','Feed Name'); DEFINE('_FEED_ARTICLES','# Articles');
DEFINE('_FEED_LINK','Feed Link');
/** whos_online.php */
DEFINE('_WE_HAVE', 'We have ');
DEFINE('_AND', ' and '); DEFINE('_GUEST_COUNT','%s guest');
DEFINE('_GUESTS_COUNT','%s guests');
DEFINE('_MEMBER_COUNT','%s member');
DEFINE('_MEMBERS_COUNT','%s members');
DEFINE('_ONLINE',' online');
DEFINE('_NONE','No Users Online');
/** modules/mod_banners */
DEFINE('_BANNER_ALT','Advertisement');
/** modules/mod_random_image */
DEFINE('_NO_IMAGES','No Images');
/** modules/mod_stats.php */
DEFINE('_TIME_STAT','Time'); DEFINE('_MEMBERS_STAT','Members');
DEFINE('_HITS_STAT','Hits');
DEFINE('_NEWS_STAT','News'); DEFINE('_LINKS_STAT','Web Links');
DEFINE('_VISITORS','Visitors');
/** /adminstrator/components/com_menus/admin.menus.html.php */
DEFINE('_MAINMENU_HOME','* The 1st Published item in this Menu [mainmenu] is the default `Home page` for the
site *'); DEFINE('_MAINMENU_DEL','* You cannot `delete` this Menu as it is required for the proper operation of Joomla! *');
DEFINE('_MENU_GROUP','* Some `Menu Types` appear in more than one group *');
/** administrators/components/com_users */
DEFINE('_NEW_USER_MESSAGE_SUBJECT', 'New User Details' ); DEFINE('_NEW_USER_MESSAGE', 'Hello %s,
You have been added as a User to %s by an Administrator.
This e-mail contains your username and password to log into the %s
Username - %s
Password - %s
Please do not respond to this message as it is automatically generated and is for information purposes only');
/** administrators/components/com_massmail */
DEFINE('_MASSMAIL_MESSAGE', "This is an e-mail from '%s'
Message:
" );
/** includes/pdf.php */
DEFINE('_PDF_GENERATED','Generated:');
DEFINE('_PDF_POWERED','Powered by Joomla!');
?>
CONTACT
<?php
/**
* @version $Id: contact.php 10002 2008-02-08 10:56:57Z willebil $ * @package Joomla
* @subpackage Contact
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved. * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL, see LICENSE.php
* Joomla! is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
// no direct access defined( '_VALID_MOS' ) or die( 'Restricted access' );
// load the html drawing class require_once( $mainframe->getPath( 'front_html' ) );
require_once( $mainframe->getPath( 'class' ) );
$mainframe->setPageTitle( _CONTACT_TITLE );
//Load Vars $op = strval( mosGetParam( $_REQUEST, 'op', '' ) );
$con_id = intval( mosGetParam( $_REQUEST ,'con_id', 0 ) );
$contact_id = intval( mosGetParam( $_REQUEST ,'contact_id', 0 ) ); $catid = intval( mosGetParam( $_REQUEST ,'catid', 0 ) );
switch( $op ) {
case 'sendmail':
sendmail( $con_id, $option );
break;
}
switch( $task ) {
case 'view': contactpage( $contact_id );
break;
case 'vcard':
vCard( $contact_id );
break;
default:
listContacts( $option, $catid );
break;
}
function listContacts( $option, $catid ) {
global $mainframe, $database, $my; global $mosConfig_live_site;
global $Itemid;
/* Query to retrieve all categories that belong under the contacts section and that are published. */
$query = "SELECT *, COUNT( a.id ) AS numlinks"
. "\n FROM #__categories AS cc" . "\n LEFT JOIN #__contact_details AS a ON a.catid = cc.id"
. "\n WHERE a.published = 1" . "\n AND cc.section = 'com_contact_details'"
. "\n AND cc.published = 1"
. "\n AND a.access <= " . (int) $my->gid
. "\n AND cc.access <= " . (int) $my->gid
. "\n GROUP BY cc.id"
. "\n ORDER BY cc.ordering" ;
$database->setQuery( $query );
$categories = $database->loadObjectList();
$count = count( $categories );
if ( ( $count < 2 ) && ( @$categories[0]->numlinks == 1 ) ) {
// if only one record exists loads that record, instead of displying category list
contactpage( $option, 0 ); } else {
$rows = array();
$currentcat = NULL;
// Parameters
$menu = $mainframe->get( 'menu' );
$params = new mosParameters( $menu->params );
$params->def( 'page_title', 1 ); $params->def( 'header', $menu->name );
$params->def( 'pageclass_sfx', '' );
$params->def( 'headings', 1 ); $params->def( 'back_button', $mainframe->getCfg( 'back_button' ) );
$params->def( 'description_text', _CONTACTS_DESC );
$params->def( 'image', -1 ); $params->def( 'image_align', 'right' );
$params->def( 'other_cat_section', 1 );
// Category List Display control $params->def( 'other_cat', 1 );
$params->def( 'cat_description', 1 );
$params->def( 'cat_items', 1 ); // Table Display control
$params->def( 'headings', 1 );
$params->def( 'position', 1 );
$params->def( 'email', 0 );
$params->def( 'phone', 1 );
$params->def( 'fax', 1 );
$params->def( 'telephone', 1 );
if( $catid == 0 ) {
$catid = $params->get( 'catid', 0 ); }
if ( $catid ) { $params->set( 'type', 'category' );
} else {
$params->set( 'type', 'section' ); }
if ( $catid ) {
// url links info for category
$query = "SELECT *"
. "\n FROM #__contact_details" . "\n WHERE catid = " . (int) $catid
. "\n AND published =1"
. "\n AND access <= " . (int) $my->gid . "\n ORDER BY ordering"
;
$database->setQuery( $query ); $rows = $database->loadObjectList();
// current category info $query = "SELECT id, name, description, image, image_position"
. "\n FROM #__categories" . "\n WHERE id = " . (int) $catid
. "\n AND published = 1"
. "\n AND access <= " . (int) $my->gid
;
$database->setQuery( $query );
$database->loadObject( $currentcat );
/*
Check if the category is published or if access level allows access */
if (!$currentcat->name) {
mosNotAuth(); return;
}
}
// page description
$currentcat->descrip = ''; if( isset($currentcat->description) && ($currentcat->description != '') ) {
$currentcat->descrip = $currentcat->description;
} else if ( !$catid ) {
// show description
if ( $params->get( 'description' ) ) {
$currentcat->descrip = $params->get( 'description_text' ); }
}
// page image
$currentcat->img = '';
$path = $mosConfig_live_site .'/images/stories/'; if ( isset($currentcat->image) && ($currentcat->image != '') ) {
$currentcat->img = $path . $currentcat->image;
$currentcat->align = $currentcat->image_position; } else if ( !$catid ) {
if ( $params->get( 'image' ) != -1 ) {
$currentcat->img = $path . $params->get( 'image' ); $currentcat->align = $params->get( 'image_align' );
}
}
// page header
$currentcat->header = '';
if ( isset($currentcat->name) && ($currentcat->name != '') ) { $currentcat->header = $params->get( 'header' ) .' - '. $currentcat->name;
} else {
$currentcat->header = $params->get( 'header' ); }
// used to show table rows in alternating colours $tabclass = array( 'sectiontableentry1', 'sectiontableentry2' );
HTML_contact::displaylist( $categories, $rows, $catid, $currentcat, $params, $tabclass ); }
}
function contactpage( $contact_id ) {
global $mainframe, $database, $my, $Itemid;
$query = "SELECT a.id AS value, CONCAT_WS( ' - ', a.name, a.con_position ) AS text, a.catid, cc.access AS
cat_access" . "\n FROM #__contact_details AS a"
. "\n LEFT JOIN #__categories AS cc ON cc.id = a.catid"
. "\n WHERE a.published = 1" . "\n AND cc.published = 1"
. "\n AND a.access <= " . (int) $my->gid
. "\n ORDER BY a.default_con DESC, a.ordering ASC" ;
$database->setQuery( $query ); $checks = $database->loadObjectList();
$count = count( $checks );
if ($count) {
if ($contact_id < 1) {
$contact_id = $checks[0]->value; }
$query = "SELECT a.*, cc.access AS cat_access" . "\n FROM #__contact_details AS a"
. "\n LEFT JOIN #__categories AS cc ON cc.id = a.catid"
. "\n WHERE a.published = 1" . "\n AND a.id = " . (int) $contact_id
. "\n AND a.access <= " . (int) $my->gid
; $database->SetQuery($query);
$contacts = $database->LoadObjectList();
if (!$contacts){
echo _NOT_AUTH;
return;
}
$contact = $contacts[0];
/*
* check whether category access level allows access
*/ if ( $contact->cat_access > $my->gid ) {
mosNotAuth();
return; }
$list = array(); foreach ( $checks as $check ) {
if ( $check->catid == $contact->catid ) {
$list[] = $check; }
}
// creates dropdown select list
$contact->select = mosHTML::selectList( $list, 'contact_id', 'class="inputbox"
onchange="ViewCrossReference(this);"', 'value', 'text', $contact_id );
// Adds parameter handling $params = new mosParameters( $contact->params );
$params->set( 'page_title', 0 ); $params->def( 'pageclass_sfx', '' );
$params->def( 'back_button', $mainframe->getCfg( 'back_button' ) );
$params->def( 'print', !$mainframe->getCfg( 'hidePrint' ) );
$params->def( 'name', 1 );
$params->def( 'email', 0 ); $params->def( 'street_address', 1 );
$params->def( 'suburb', 1 );
$params->def( 'state', 1 );
$params->def( 'country', 1 );
$params->def( 'postcode', 1 );
$params->def( 'telephone', 1 ); $params->def( 'fax', 1 );
$params->def( 'misc', 1 );
$params->def( 'image', 1 ); $params->def( 'email_description', 1 );
$params->def( 'email_description_text', _EMAIL_DESCRIPTION );
$params->def( 'email_form', 1 ); $params->def( 'email_copy', 0 );
// global pront|pdf|email
$params->def( 'icons', $mainframe->getCfg( 'icons' ) );
// contact only icons $params->def( 'contact_icons', 0 );
$params->def( 'icon_address', '' );
$params->def( 'icon_email', '' );
$params->def( 'icon_telephone', '' );
$params->def( 'icon_fax', '' );
$params->def( 'icon_misc', '' ); $params->def( 'drop_down', 0 );
$params->def( 'vcard', 0 );
if ( $contact->email_to && $params->get( 'email' )) {
// email cloacking $contact->email = mosHTML::emailCloaking( $contact->email_to );
}
// loads current template for the pop-up window
$pop = intval( mosGetParam( $_REQUEST, 'pop', 0 ) );
if ( $pop ) { $params->set( 'popup', 1 );
$params->set( 'back_button', 0 );
}
if ( $params->get( 'email_description' ) ) {
$params->set( 'email_description', $params->get( 'email_description_text' ) ); } else {
$params->set( 'email_description', '' );
}
// needed to control the display of the Address marker
$temp = $params->get( 'street_address' ) . $params->get( 'suburb' )
. $params->get( 'state' )
. $params->get( 'country' ) . $params->get( 'postcode' )
;
$params->set( 'address_check', $temp );
// determines whether to use Text, Images or nothing to highlight the different info groups
switch ( $params->get( 'contact_icons' ) ) {
case 1:
// text
$params->set( 'marker_address', _CONTACT_ADDRESS );
$params->set( 'marker_email', _CONTACT_EMAIL ); $params->set( 'marker_telephone', _CONTACT_TELEPHONE );
$params->set( 'marker_fax', _CONTACT_FAX );
$params->set( 'marker_misc', _CONTACT_MISC ); $params->set( 'column_width', '100' );
break;
case 2: // none
$params->set( 'marker_address', '' );
$params->set( 'marker_email', '' ); $params->set( 'marker_telephone', '' );
$params->set( 'marker_fax', '' );
$params->set( 'marker_misc', '' );
$params->set( 'column_width', '0' );
break;
default: // icons
$image1 = mosAdminMenus::ImageCheck( 'con_address.png',
'/images/M_images/', $params->get( 'icon_address' ), '/images/M_images/', _CONTACT_ADDRESS, _CONTACT_ADDRESS );
$image2 = mosAdminMenus::ImageCheck( 'emailButton.png',
'/images/M_images/', $params->get( 'icon_email' ), '/images/M_images/', _CONTACT_EMAIL, _CONTACT_EMAIL ); $image3 = mosAdminMenus::ImageCheck( 'con_tel.png',
'/images/M_images/', $params->get( 'icon_telephone' ), '/images/M_images/', _CONTACT_TELEPHONE,
_CONTACT_TELEPHONE ); $image4 = mosAdminMenus::ImageCheck( 'con_fax.png',
'/images/M_images/', $params->get( 'icon_fax' ), '/images/M_images/', _CONTACT_FAX, _CONTACT_FAX ); $image5 = mosAdminMenus::ImageCheck( 'con_info.png',
'/images/M_images/', $params->get( 'icon_misc' ), '/images/M_images/', _CONTACT_MISC, _CONTACT_MISC );
$params->set( 'marker_address', $image1 );
$params->set( 'marker_email', $image2 );
$params->set( 'marker_telephone', $image3 );
$params->set( 'marker_fax', $image4 ); $params->set( 'marker_misc', $image5 );
$params->set( 'column_width', '40' );
break; }
// params from menu item $menu = $mainframe->get( 'menu' );
$menu_params = new mosParameters( $menu->params );
$menu_params->def( 'page_title', 1 );
$menu_params->def( 'header', $menu->name );
$menu_params->def( 'pageclass_sfx', '' );
HTML_contact::viewcontact( $contact, $params, $count, $list, $menu_params );
} else {
$params = new mosParameters( '' );
$params->def( 'back_button', $mainframe->getCfg( 'back_button' ) );
HTML_contact::nocontact( $params ); }
}
function sendmail( $con_id, $option ) {
global $mainframe, $database, $Itemid; global $mosConfig_sitename, $mosConfig_live_site, $mosConfig_mailfrom, $mosConfig_fromname,
$mosConfig_db;
// simple spoof check security
josSpoofCheck(1);
$query = "SELECT *"
. "\n FROM #__contact_details"
. "\n WHERE id = " . (int) $con_id
;
$database->setQuery( $query );
$contact = $database->loadObjectList();
if (count( $contact ) > 0) {
$default = $mosConfig_sitename.' '. _ENQUIRY;
$email = strval( mosGetParam( $_POST, 'email', '' ) ); $text = strval( mosGetParam( $_POST, 'text', '' ) );
$name = strval( mosGetParam( $_POST, 'name', '' ) );
$subject = strval( mosGetParam( $_POST, 'subject', $default ) ); $email_copy = strval( mosGetParam( $_POST, 'email_copy', 0 ) );
$menu = $mainframe->get( 'menu' ); $mparams = new mosParameters( $menu->params );
$bannedEmail = $mparams->get( 'bannedEmail', '' );
$bannedSubject = $mparams->get( 'bannedSubject', '' );
$bannedText = $mparams->get( 'bannedText', '' );
$sessionCheck = $mparams->get( 'sessionCheck', 1 );
// check for session cookie
if ( $sessionCheck ) {
// Session Cookie `name` $sessionCookieName = mosMainFrame::sessionCookieName();
// Get Session Cookie `value`
$sessioncookie = mosGetParam( $_COOKIE, $sessionCookieName, null );
if ( !(strlen($sessioncookie) == 32 || $sessioncookie == '-') ) { mosErrorAlert( _NOT_AUTH );
} }
// Prevent form submission if one of the banned text is discovered in the email field
if ( $bannedEmail ) {
$bannedEmail = explode( ';', $bannedEmail );
foreach ($bannedEmail as $value) { if ( stristr($email, $value) ) {
mosErrorAlert( _NOT_AUTH );
} }
}
// Prevent form submission if one of the banned text is discovered in the subject field if ( $bannedSubject ) {
$bannedSubject = explode( ';', $bannedSubject );
foreach ($bannedSubject as $value) { if ( stristr($subject, $value) ) {
mosErrorAlert( _NOT_AUTH );
} }
}
// Prevent form submission if one of the banned text is discovered in the text field
if ( $bannedText ) {
$bannedText = explode( ';', $bannedText );
foreach ($bannedText as $value) { if ( stristr($text, $value) ) {
mosErrorAlert( _NOT_AUTH );
} }
}
// test to ensure that only one email address is entered
$check = explode( '@', $email );
if ( strpos( $email, ';' ) || strpos( $email, ',' ) || strpos( $email, ' ' ) || count( $check ) > 2 ) { mosErrorAlert( _CONTACT_MORE_THAN );
}
if ( !$email || !$text || ( JosIsValidEmail( $email ) == false ) ) {
mosErrorAlert( _CONTACT_FORM_NC );
}
$prefix = sprintf( _ENQUIRY_TEXT, $mosConfig_live_site );
$text = $prefix ."\n". $name. ' <'. $email .'>' ."\n\n". stripslashes( $text );
$success = mosMail( $email, $name , $contact[0]->email_to, $mosConfig_fromname .': '. $subject, $text );
if (!$success) {
mosErrorAlert( _CONTACT_FORM_NC ); }
// parameter check $params = new mosParameters( $contact[0]->params );
$emailcopyCheck = $params->get( 'email_copy', 0 );
// check whether email copy function activated
if ( $email_copy && $emailcopyCheck ) {
$copy_text = sprintf( _COPY_TEXT, $contact[0]->name, $mosConfig_sitename );
$copy_text = $copy_text ."\n\n". $text .'';
$copy_subject = _COPY_SUBJECT . $subject;
$success = mosMail( $mosConfig_mailfrom, $mosConfig_fromname, $email,
$copy_subject, $copy_text );
if (!$success) { mosErrorAlert( _CONTACT_FORM_NC );
}
}
$link = sefRelToAbs( 'index.php?option=com_contact&task=view&contact_id='. $contact[0]->id
.'&Itemid='. $Itemid );
mosRedirect( $link, _THANK_MESSAGE ); }
}
function vCard( $id ) {
global $database;
global $mosConfig_sitename, $mosConfig_live_site;
$contact = new mosContact( $database );
$contact->load( (int)$id ); $params = new mosParameters( $contact->params );
$show = $params->get( 'vcard', 0 ); if ( $show ) {
// check to see if VCard option hsa been activated
$name = explode( ' ', $contact->name ); $count = count( $name );
// handles conversion of name entry into firstname, surname, middlename distinction $surname = '';
$middlename = '';
switch( $count ) {
case 1:
$firstname = $name[0]; break;
case 2: $firstname = $name[0];
$surname = $name[1];
break;
default:
$firstname = $name[0]; $surname = $name[$count-1];
for ( $i = 1; $i < $count - 1 ; $i++ ) {
$middlename .= $name[$i] .' '; }
break;
}
$middlename = trim( $middlename );
$v = new MambovCard();
$v->setPhoneNumber( $contact->telephone, 'PREF;WORK;VOICE' );
$v->setPhoneNumber( $contact->fax, 'WORK;FAX' );
$v->setName( $surname, $firstname, $middlename, '' ); $v->setAddress( '', '', $contact->address, $contact->suburb, $contact->state, $contact->postcode,
$contact->country, 'WORK;POSTAL' );
$v->setEmail( $contact->email_to ); $v->setNote( $contact->misc );
$v->setURL( $mosConfig_live_site, 'WORK' );
$v->setTitle( $contact->con_position ); $v->setOrg( $mosConfig_sitename );
$filename = str_replace( ' ', '_', $contact->name );
$v->setFilename( $filename );
$output = $v->getVCard( $mosConfig_sitename ); $filename = $v->getFileName();
// header info for page header( 'Content-Disposition: attachment; filename='. $filename );
header( 'Content-Length: '. strlen( $output ) );
header( 'Connection: close' ); header( 'Content-Type: text/x-vCard; name='. $filename );
header( 'Cache-Control: store, cache' );
header( 'Pragma: cache' );
print $output; } else {
mosNotAuth();
return;
}
}
?>
GUEST BOOK
<?php
/** * @package EasyGuestbook
* @copyright 2009 Joomla-addons.org
* @author Adam van Dongen * @version $Id:$
*
* -------------------------------------------------------------------------------- * All rights reserved. Easy Guestbook Component for Joomla!
*
* This program is copyrighted software; you can redistribute it and/or
* modify it under the terms of the Joomla-addons Free Software License
* See LICENSE.php for more information.
* * This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. */
$base = realpath(dirname(__FILE__) . '/../../'); if(file_exists($base.'/mambots')){
require($base . '/mambots/system/jalib20/jalib.php');
} else { require($base . '/plugins/system/jalib20/jalib.php');
}
?>
VIRETURMART
<?php
defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );
/** *
* @version $Id: virtuemart.php 617 2007-01-04 19:43:08Z soeren_nb $
* @package VirtueMart * @subpackage core
* @copyright Copyright (C) 2004-2005 Soeren Eberhardt. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php * VirtueMart is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or * other free or open source software licenses.
* See /administrator/components/com_virtuemart/COPYRIGHT.php for copyright notices and details.
*
* http://virtuemart.net
*/
global $mosConfig_absolute_path, $product_id, $vmInputFilter;
/* Load the virtuemart main parse code */ require_once( $mosConfig_absolute_path.'/components/'.$option.'/virtuemart_parser.php' );
include( $mosConfig_absolute_path.'/administrator/components/'.$option.'/compat.joomla1.5.php');
$my_page= explode ( '.', $page );
$modulename = $my_page[0]; $pagename = $my_page[1];
/* Page Navigation Parameters */
$mainframe->_userstate =& $_SESSION['session_userstate'];
$limit = intval( $mainframe->getUserStateFromRequest( "viewlistlimit", 'limit', $mosConfig_list_limit ) );
$limitstart = intval( $mainframe->getUserStateFromRequest( "view{$keyword}{$category_id}limitstart", 'limitstart', 0 )) ;
/* Get all the other paramters */ $manufacturer_id = intval( mosGetParam( $_REQUEST, 'manufacturer_id', null ) );
$search_category= intval( mosGetParam( $_REQUEST, 'search_category', null ) );
$product_type_id = intval( mosgetparam($_REQUEST, 'product_type_id', null) );
if( PSHOP_IS_OFFLINE == "1" ) {
echo PSHOP_OFFLINE_MESSAGE; }
else {
// The Vendor ID is important
$ps_vendor_id = $_SESSION['ps_vendor_id'];
// The authentication array
$auth = $_SESSION['auth'];
$no_menu = mosGetParam( $_REQUEST, 'no_menu', 0 );
// Timer Start if ( DEBUG == "1" ) {
$start = utime();
$GLOBALS["mosConfig_debug"] = 1; }
// update the cart because something could have // changed while running a function
$cart = $_SESSION["cart"];
if (( !$pagePermissionsOK || !$funcParams ) && $_REQUEST['page'] != 'checkout.index') {
if( !$pagePermissionsOK && defined('_VM_PAGE_NOT_AUTH') ) {
$page = 'checkout.login_form';
echo '<br/><br/>'._DO_LOGIN.'<br/><br/>';
}
elseif( !$pagePermissionsOK && defined('_VM_PAGE_NOT_FOUND') ) {
$page = HOMEPAGE;
} else {
$page = $_SESSION['last_page'];
} }
$my_page= explode ( '.', $page ); $modulename = $my_page[0];
$pagename = $my_page[1];
// For there's no errorpage to display the error,
// we must echo it before the page is loaded
if (!empty($error) && $page != ERRORPAGE) {
echo "<span class=\"shop_error\">".$error."</span>";
}
/*****************************
** FRONTEND ADMIN - MOD
**/ $pshop_mode = mosgetparam($_REQUEST, 'pshop_mode', "");
if (($pshop_mode == "admin"
|| stristr($page,"form") || stristr($page, "list")
|| stristr($page, "cfg")
|| stristr($page, "print") || stristr($page, "display"))
&& ($perm->check("admin,storeadmin") && ((!stristr($my->usertype, "admin") ^
PSHOP_ALLOW_FRONTENDADMIN_FOR_NOBACKENDERS == '' )
|| stristr($my->usertype, "admin")
)
&& !stristr($page, "shop.")
) && $no_menu != "1"
) {
define( '_FRONTEND_ADMIN_LOADED', '1' ); $mainframe->loadEditor = 1;
if( file_exists( $mosConfig_absolute_path."/editor/editor.php" )) {
require_once( $mosConfig_absolute_path."/editor/editor.php" ); initEditor();
}
$editor1_array = Array('product.product_form' => 'product_desc',
'product.product_category_form' => 'category_description', 'store.store_form' => 'vendor_store_desc',
'vendor.vendor_form' => 'vendor_store_desc');
$editor2_array = Array('store.store_form' => 'vendor_terms_of_service',
'vendor.vendor_form' => 'vendor_terms_of_service');
editorScript(isset($editor1_array[$page]) ? $editor1_array[$page] : '', isset($editor2_array[$page]) ?
$editor2_array[$page] : ''); ?>
<link type="text/css" rel="stylesheet" media="screen, projection" href="components/<?php echo
$option ?>/css/admin.css" /> <script type="text/javascript" src="<?php echo $mosConfig_live_site ?>/components/<?php echo
$option ?>/js/functions.js"></script>
<?php
// The admin header with dropdown menu
include( ADMINPATH."header.php" );
include( ADMINPATH."toolbar.virtuemart.php" );
echo '<br style="clear:both;" />';
}
/**
** END: FRONTEND ADMIN - MOD
*****************************/
/***************************** ** BEGIN affiliate additions
** by nhyde <[email protected]> for virtuemart v0.6.1
*/ if (AFFILIATE_ENABLE == '1') {
$unset_affiliate = false;
if (!isset($ps_affiliate)) { include_class ( 'affiliate' );
$unset_affiliate = true;
}
//keep tracking the affiliate
if(isset($_SESSION['afid'])){
$ps_affiliate->visit_update();
}
//register the affiliated visit but only if the
// aid is in our database and it is active.
else{ //set the affiliate_id = 0 to log any visitors that are not affiliate visitors
$aff_details = $ps_affiliate->get_affiliate_details($auth['user_id']);
$affiliate_id = $aff_details['id'];
//the logout function may have wiped out the session so search the database //and re-register it.
$q = "SELECT visit_id FROM #__{vm}_visit WHERE visit_id = '".session_id()."'"; $db->query($q);
if($db->next_record()){
$ps_affiliate->visit_update();
}
else {
$ps_affiliate->visit_register(); }
}
if (isset($affiliate_id)) { $_SESSION['afid'] = $affiliate_id;
$GLOBALS['afid'] = $affiliate_id;
} }
/**
* END added for affiliate module ****************************/
// Here is the most important part of the whole Shop:
// LOADING the requested page for displaying it to the customer.
// I have wrapped it with a function, because it becomes
// cacheable that way. // It's just an "include" statement which loads the page
$vmDoCaching = ($page=="shop.browse" || $page=="shop.product_details")
&& class_exists("mosCache") && (empty($keyword) && empty($keyword1) && empty($keyword2));
if( !function_exists( "load_that_shop_page" )) { function load_that_shop_page( $modulename, $pagename) {
global $my, $db, $perm, $ps_function, $ps_module, $ps_html, $ps_vendor_id, $page,
$database,$mosConfig_absolute_path, $cart, $start, $option, $vmLogger, $vmDoCaching, $product_id,$VM_LANG, $PHPSHOP_LANG, $sess,$vendor_image,$vendor_country_2_code,
$vendor_country_3_code , $vendor_image_url, $PSHOP_SHIPPING_MODULES,
$_VERSION, $vendor_name, $vendor_address, $vendor_city,$vendor_country,$vendor_mail, $category_id, $mainframe, $mosConfig_list_limit, $limitstart, $limit,
$vendor_store_name, $vendor_state, $vendor_zip, $vendor_phone, $vendor_currency, $vendor_store_desc,
$vendor_freeshipping, $ps_shipping, $ps_order_status,
$module_description, $vendor_currency_display_style, $vendor_full_image, $mosConfig_live_site, $vendor_id,
$CURRENCY_DISPLAY, $keyword, $mm_action_url,
$ps_payment_method,$ps_zone,$ps_product, $ps_product_category, $ps_order, $sess, $page, $func, $pagename,
$modulename, $vars, $cmd, $ok, $mosConfig_lang, $mosConfig_useractivation, $auth, $ps_checkout,$error, $error_type, $func_perms, $func_list, $func_class, $func_method, $func_list, $dir_list,
$mosConfig_allowUserRegistration, $mosConfig_caching;
if( !stristr( $_SERVER['PHP_SELF'], "index2.php") ) {
$mainframe->addCustomHeadTag( "<script type=\"text/javascript\"
src=\"$mosConfig_live_site/components/$option/js/sleight.js\"></script> <link type=\"text/css\" rel=\"stylesheet\" media=\"screen, projection\"
href=\"$mosConfig_live_site/components/$option/css/shop.css\" />" );
} else { ?>
<script type="text/javascript" src="<?php echo "$mosConfig_live_site/components/$option" ?>/js/sleight.js"></script>
<link type="text/css" rel="stylesheet" media="screen, projection" href="components/<?php echo $option ?>/css/shop.css"
/>
<?php
}
// Show the PDF Button?
if( PSHOP_PDF_BUTTON_ENABLE=='1' && !isset($_REQUEST['output']) && ($page=="shop.browse" || $page=="shop.product_details")) {
echo "<table align=\"right\"><tr><td><a title=\"PDF\" target=\"_blank\"
href=\"index2.php?option=$option&page=shop.pdf_output&showpage=$page&pop=1&output=pdf&product_id=$product_id&category_id=$category_id&Itemid=".$sess->getShopItemid()."\">
<img src=\"".IMAGEURL."ps_image/acroread.png\" alt=\"PDF\" height=\"32\" width=\"32\" border=\"0\"
/></a></td></tr></table>"; }
// Load requested PAGE if( file_exists( PAGEPATH.$modulename.".".$pagename.".php" )) {
include( PAGEPATH.$modulename.".".$pagename.".php" );
}
elseif( file_exists( PAGEPATH . HOMEPAGE.'.php' )) {
include( PAGEPATH . HOMEPAGE.'.php' );
} else {
include( PAGEPATH.'shop.index.php');
} if ( !empty($mosConfig_caching) && $vmDoCaching) {
echo '<span class="small">'._LAST_UPDATED.': '.strftime( $VM_LANG->_DATE_FORMAT_LC2
).'</span>'; }
if (SHOWVERSION) {
include(PAGEPATH ."footer.php"); }
// Set debug option on/off if (DEBUG) {
$end = utime();
$runtime = $end - $start;
include( PAGEPATH . "shop.debug.php" );
} return $mainframe;
}
} // Caching is a sensible thing. We may cache only those pages
// that look the same again and again
// Currently this are two pages: shop.browse, shop.product_details // when no keyword is submitted!
if ( !empty($mosConfig_caching) && $vmDoCaching) {
// Get the Cache_Lite_Function object
$cache =& mosCache::getCache( 'com_content' );
// The function we let call remotely here has only two arguments: the Modulename(shop) and the
Pagename(browse or product_details),
// But Cache_Lite takes the arguments for identifying common calls to cacheable functions.
// The Page will change with every different parameter / argument, so provide this for identification
// "call" will call the function load_that_shop_page when it is not yet cached with exactly THESE parameters
// or the caching time range has expired
$return = $cache->call('load_that_shop_page', $modulename, $pagename, $product_id, $category_id, $manufacturer_id, $auth["shopper_group_id"], $limitstart, $limit, @$_REQUEST['orderby'],
@$_REQUEST['DescOrderBy'] );
if( get_class( $return ) == "mosMainFrame" ) { $mainframe = $return;
}
} else {
load_that_shop_page( $modulename, $pagename);
} }
if( defined( 'vmToolTipCalled')) {
echo '<script language="Javascript" type="text/javascript" src="'.
$mosConfig_live_site.'/components/'.$option.'/js/wz_tooltip.js"></script>';
}
?>
Store Online
<?php defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );
/**
* * @version $Id: virtuemart.php 617 2007-01-04 19:43:08Z soeren_nb $
* @package VirtueMart
* @subpackage core * @copyright Copyright (C) 2004-2005 Soeren Eberhardt. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* VirtueMart is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses. * See /administrator/components/com_virtuemart/COPYRIGHT.php for copyright notices and details.
*
* http://virtuemart.net
*/
global $mosConfig_absolute_path, $product_id, $vmInputFilter;
/* Load the virtuemart main parse code */
require_once( $mosConfig_absolute_path.'/components/'.$option.'/virtuemart_parser.php' );
include( $mosConfig_absolute_path.'/administrator/components/'.$option.'/compat.joomla1.5.php');
$my_page= explode ( '.', $page );
$modulename = $my_page[0];
$pagename = $my_page[1];
/* Page Navigation Parameters */
$mainframe->_userstate =& $_SESSION['session_userstate']; $limit = intval( $mainframe->getUserStateFromRequest( "viewlistlimit", 'limit', $mosConfig_list_limit ) );
$limitstart = intval( $mainframe->getUserStateFromRequest( "view{$keyword}{$category_id}limitstart", 'limitstart', 0 )) ;
/* Get all the other paramters */
$manufacturer_id = intval( mosGetParam( $_REQUEST, 'manufacturer_id', null ) );
$search_category= intval( mosGetParam( $_REQUEST, 'search_category', null ) );
$product_type_id = intval( mosgetparam($_REQUEST, 'product_type_id', null) );
if( PSHOP_IS_OFFLINE == "1" ) {
echo PSHOP_OFFLINE_MESSAGE; }
else {
// The Vendor ID is important
$ps_vendor_id = $_SESSION['ps_vendor_id'];
// The authentication array
$auth = $_SESSION['auth'];
$no_menu = mosGetParam( $_REQUEST, 'no_menu', 0 );
// Timer Start if ( DEBUG == "1" ) {
$start = utime();
$GLOBALS["mosConfig_debug"] = 1; }
// update the cart because something could have // changed while running a function
$cart = $_SESSION["cart"];
if (( !$pagePermissionsOK || !$funcParams ) && $_REQUEST['page'] != 'checkout.index') {
if( !$pagePermissionsOK && defined('_VM_PAGE_NOT_AUTH') ) {
$page = 'checkout.login_form';
echo '<br/><br/>'._DO_LOGIN.'<br/><br/>';
}
elseif( !$pagePermissionsOK && defined('_VM_PAGE_NOT_FOUND') ) { $page = HOMEPAGE;
}
else { $page = $_SESSION['last_page'];
}
}
$my_page= explode ( '.', $page );
$modulename = $my_page[0]; $pagename = $my_page[1];
// For there's no errorpage to display the error, // we must echo it before the page is loaded
if (!empty($error) && $page != ERRORPAGE) {
echo "<span class=\"shop_error\">".$error."</span>";
}
/***************************** ** FRONTEND ADMIN - MOD
**/
$pshop_mode = mosgetparam($_REQUEST, 'pshop_mode', ""); if (($pshop_mode == "admin"
|| stristr($page,"form")
|| stristr($page, "list") || stristr($page, "cfg")
|| stristr($page, "print")
|| stristr($page, "display")) && ($perm->check("admin,storeadmin")
&& ((!stristr($my->usertype, "admin") ^
PSHOP_ALLOW_FRONTENDADMIN_FOR_NOBACKENDERS == '' ) || stristr($my->usertype, "admin")
)
&& !stristr($page, "shop.")
)
&& $no_menu != "1"
) {
define( '_FRONTEND_ADMIN_LOADED', '1' ); $mainframe->loadEditor = 1;
if( file_exists( $mosConfig_absolute_path."/editor/editor.php" )) {
require_once( $mosConfig_absolute_path."/editor/editor.php" ); initEditor();
}
$editor1_array = Array('product.product_form' => 'product_desc',
'product.product_category_form' => 'category_description', 'store.store_form' => 'vendor_store_desc',
'vendor.vendor_form' => 'vendor_store_desc');
$editor2_array = Array('store.store_form' => 'vendor_terms_of_service',
'vendor.vendor_form' => 'vendor_terms_of_service');
editorScript(isset($editor1_array[$page]) ? $editor1_array[$page] : '', isset($editor2_array[$page]) ?
$editor2_array[$page] : ''); ?>
<link type="text/css" rel="stylesheet" media="screen, projection" href="components/<?php echo
$option ?>/css/admin.css" /> <script type="text/javascript" src="<?php echo $mosConfig_live_site ?>/components/<?php echo
$option ?>/js/functions.js"></script>
<?php
// The admin header with dropdown menu
include( ADMINPATH."header.php" );
include( ADMINPATH."toolbar.virtuemart.php" ); echo '<br style="clear:both;" />';
}
/**
** END: FRONTEND ADMIN - MOD
*****************************/
/*****************************
** BEGIN affiliate additions ** by nhyde <[email protected]> for virtuemart v0.6.1
*/
if (AFFILIATE_ENABLE == '1') { $unset_affiliate = false;
if (!isset($ps_affiliate)) {
include_class ( 'affiliate' ); $unset_affiliate = true;
}
//keep tracking the affiliate
if(isset($_SESSION['afid'])){
$ps_affiliate->visit_update();
}
//register the affiliated visit but only if the // aid is in our database and it is active.
else{
//set the affiliate_id = 0 to log any visitors that are not affiliate visitors $aff_details = $ps_affiliate->get_affiliate_details($auth['user_id']);
$affiliate_id = $aff_details['id'];
//the logout function may have wiped out the session so search the database
//and re-register it. $q = "SELECT visit_id FROM #__{vm}_visit WHERE visit_id = '".session_id()."'";
$db->query($q);
if($db->next_record()){
$ps_affiliate->visit_update();
}
else {
$ps_affiliate->visit_register(); }
}
if (isset($affiliate_id)) { $_SESSION['afid'] = $affiliate_id;
$GLOBALS['afid'] = $affiliate_id;
} }
/**
* END added for affiliate module ****************************/
// Here is the most important part of the whole Shop:
// LOADING the requested page for displaying it to the customer.
// I have wrapped it with a function, because it becomes
// cacheable that way. // It's just an "include" statement which loads the page
$vmDoCaching = ($page=="shop.browse" || $page=="shop.product_details")
&& class_exists("mosCache") && (empty($keyword) && empty($keyword1) && empty($keyword2));
if( !function_exists( "load_that_shop_page" )) { function load_that_shop_page( $modulename, $pagename) {
global $my, $db, $perm, $ps_function, $ps_module, $ps_html, $ps_vendor_id, $page,
$database,$mosConfig_absolute_path, $cart, $start, $option, $vmLogger, $vmDoCaching, $product_id,$VM_LANG, $PHPSHOP_LANG, $sess,$vendor_image,$vendor_country_2_code,
$vendor_country_3_code , $vendor_image_url, $PSHOP_SHIPPING_MODULES, $_VERSION, $vendor_name, $vendor_address, $vendor_city,$vendor_country,$vendor_mail, $category_id,
$mainframe, $mosConfig_list_limit, $limitstart, $limit,
$vendor_store_name, $vendor_state, $vendor_zip, $vendor_phone, $vendor_currency, $vendor_store_desc,
$vendor_freeshipping, $ps_shipping, $ps_order_status,
$module_description, $vendor_currency_display_style, $vendor_full_image, $mosConfig_live_site, $vendor_id,
$CURRENCY_DISPLAY, $keyword, $mm_action_url, $ps_payment_method,$ps_zone,$ps_product, $ps_product_category, $ps_order, $sess, $page, $func, $pagename,
$modulename, $vars, $cmd, $ok, $mosConfig_lang, $mosConfig_useractivation,
$auth, $ps_checkout,$error, $error_type, $func_perms, $func_list, $func_class, $func_method, $func_list, $dir_list, $mosConfig_allowUserRegistration, $mosConfig_caching;
if( !stristr( $_SERVER['PHP_SELF'], "index2.php") ) { $mainframe->addCustomHeadTag( "<script type=\"text/javascript\"
src=\"$mosConfig_live_site/components/$option/js/sleight.js\"></script>
<link type=\"text/css\" rel=\"stylesheet\" media=\"screen, projection\" href=\"$mosConfig_live_site/components/$option/css/shop.css\" />" );
} else {
?> <script type="text/javascript" src="<?php echo "$mosConfig_live_site/components/$option" ?>/js/sleight.js"></script>
<link type="text/css" rel="stylesheet" media="screen, projection" href="components/<?php echo $option ?>/css/shop.css"
/>
<?php
}
// Show the PDF Button?
if( PSHOP_PDF_BUTTON_ENABLE=='1' && !isset($_REQUEST['output']) &&
($page=="shop.browse" || $page=="shop.product_details")) { echo "<table align=\"right\"><tr><td><a title=\"PDF\" target=\"_blank\"
href=\"index2.php?option=$option&page=shop.pdf_output&showpage=$page&pop=1&output=pdf&p
roduct_id=$product_id&category_id=$category_id&Itemid=".$sess->getShopItemid()."\"> <img src=\"".IMAGEURL."ps_image/acroread.png\" alt=\"PDF\" height=\"32\" width=\"32\" border=\"0\"
/></a></td></tr></table>";
} // Load requested PAGE
if( file_exists( PAGEPATH.$modulename.".".$pagename.".php" )) {
include( PAGEPATH.$modulename.".".$pagename.".php" ); }
elseif( file_exists( PAGEPATH . HOMEPAGE.'.php' )) {
include( PAGEPATH . HOMEPAGE.'.php' );
}
else {
include( PAGEPATH.'shop.index.php');
} if ( !empty($mosConfig_caching) && $vmDoCaching) {
echo '<span class="small">'._LAST_UPDATED.': '.strftime( $VM_LANG->_DATE_FORMAT_LC2
).'</span>'; }
if (SHOWVERSION) {
include(PAGEPATH ."footer.php"); }
// Set debug option on/off if (DEBUG) {
$end = utime();
$runtime = $end - $start;
include( PAGEPATH . "shop.debug.php" );
} return $mainframe;
}
} // Caching is a sensible thing. We may cache only those pages
// that look the same again and again
// Currently this are two pages: shop.browse, shop.product_details // when no keyword is submitted!
if ( !empty($mosConfig_caching) && $vmDoCaching) {
// Get the Cache_Lite_Function object
$cache =& mosCache::getCache( 'com_content' );
// The function we let call remotely here has only two arguments: the Modulename(shop) and the
Pagename(browse or product_details),
// But Cache_Lite takes the arguments for identifying common calls to cacheable functions.
// The Page will change with every different parameter / argument, so provide this for identification
// "call" will call the function load_that_shop_page when it is not yet cached with exactly THESE parameters // or the caching time range has expired
$return = $cache->call('load_that_shop_page', $modulename, $pagename, $product_id, $category_id,
$manufacturer_id, $auth["shopper_group_id"], $limitstart, $limit, @$_REQUEST['orderby'], @$_REQUEST['DescOrderBy'] );
if( get_class( $return ) == "mosMainFrame" ) {
$mainframe = $return; }
}
else { load_that_shop_page( $modulename, $pagename);
}
} if( defined( 'vmToolTipCalled')) {
echo '<script language="Javascript" type="text/javascript" src="'.
$mosConfig_live_site.'/components/'.$option.'/js/wz_tooltip.js"></script>';
}
?>