Guest User

Latihan module Drupal

a guest
Oct 27th, 2012
363
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.83 KB | None | 0 0
  1. <?php
  2. /**
  3.  * Module Latihan
  4.  * Copyright Arie Nugraha <[email protected]> 2012
  5.  * Licensed under GPL v3
  6.  *
  7.  */
  8.  
  9. /**
  10.  * Permission apa saja yang disediakan oleh module Latihan?
  11.  * tentukan pada fungsi ini
  12.  * @return array Array yang mendefinisikan permission
  13.  */
  14. function latihan_perm() {
  15.   $_perms = array(
  16.       'membuat konten latihan',
  17.       'mengubah konten latihan',
  18.       'melihat konten latihan',
  19.       'menghapus konten latihan',
  20.       'ubah konfigurasi module latihan'
  21.     );
  22.   return $_perms;
  23. }
  24.  
  25.  
  26. /**
  27.  * Block adalah konten yang posisi-nya bisa dipindah-pindahkan pada Drupal
  28.  * fungsi ini mendefinisikan konten blok untuk module Latihan
  29.  * @param string $op isi dari variabel argumen ini bisa "list", "view", "save" atau "configure"
  30.  * @param integer $delta kode untuk meng-identifikasi block
  31.  * @param array $edit hanya muncukl apabila argumen $op berisi "save"
  32.  * @return array data semua blok yang disediakan oleh module Latihan
  33.  */
  34. function latihan_block($op = 'list', $delta = 0, $edit = array()) {
  35.   // array kosong yang akan menyimpan semua data block
  36.   $block = array();
  37.  
  38.   switch ($op) {
  39.     case "list":
  40.       // operasi list adalah ketika daftar block ditampilkan pada halaman admin/block
  41.       $block[0]["info"] = t('Block module Latihan');
  42.       break;
  43.    
  44.     case "view":
  45.       // operasi view adalah ketika block ditampilkan sebenarnya
  46.       // subject/judul heading dari block
  47.       $block["subject"] = t("Judul Block Latihan");
  48.       // content/isi dari block
  49.       $block["content"] = '<p>Ini adalah konten/isi dari block module Latihan</p>';
  50.       break;
  51.  
  52.     case "save":
  53.       break;
  54.  
  55.     case "configure":
  56.       break;
  57.   }
  58.  
  59.   return $block;
  60. }
  61.  
  62.  
  63. /**
  64.  * Fungsi ini menampilkan konten/isi utama dari Module Latihan
  65.  */
  66. function latihan_main() {
  67.   // definisikan variabel konten kosong untuk inisialisasi
  68.   $content = '';
  69.  
  70.   // lakukan berbagai macam manipulasi konten pada bagian ini
  71.   // seperti melakukan query dsb.
  72.   $content .= '<p>Ini adalah konten sederhana dari module Latihan</p>';
  73.  
  74.   return $content;
  75. }
  76.  
  77.  
  78. /**
  79.  * Fungsi ini memungkinkan kita membuat halaman konfigurasi dalam Drupal
  80.  * khusus untuk module Latihan
  81.  * Pada contoh ini kita mendefinisikan 2 item konfigurasi untuk module Latihan
  82.  * @return array Array yang elemen form konfigurasi modul latihan
  83.  */
  84. function latihan_admin() {
  85.   $form = array();
  86.  
  87.   // setting 1
  88.   $form['latihan_setting1'] = array(
  89.     '#type' => 'textfield',
  90.     '#title' => t('Setting 1 module Latihan'),
  91.     '#default_value' => variable_get('latihan_setting1', null),
  92.     '#size' => 60,
  93.     '#maxlength' => 250,
  94.     '#description' => t("Contoh setting pertama untuk module Latihan"),
  95.     '#required' => TRUE,
  96.   );
  97.  
  98.   // setting 2
  99.   $form['latihan_setting2'] = array(
  100.     '#type' => 'textfield',
  101.     '#title' => t('Setting 2 module Latihan'),
  102.     '#default_value' => variable_get('latihan_setting2', null),
  103.     '#size' => 60,
  104.     '#maxlength' => 250,
  105.     '#description' => t("Contoh setting kedua untuk module Latihan"),
  106.     '#required' => TRUE,
  107.   );
  108.  
  109.   return system_settings_form($form);
  110. }
  111.  
  112.  
  113. /**
  114.  * Fungsi menu mendefinisikan menu atau path page untuk module Latihan
  115.  *
  116.  */
  117. function latihan_menu() {
  118.   $items = array();
  119.  
  120.   $items['admin/settings/latihan'] = array(
  121.     'title' => 'Konfigurasi Latihan',
  122.     'description' => 'Halaman untuk menampilkan konfigurasi module Latihan',
  123.     'page callback' => 'drupal_get_form',
  124.     'page arguments' => array('latihan_admin'),
  125.     'access arguments' => array('ubah konfigurasi module latihan'),
  126.     'type' => MENU_NORMAL_ITEM
  127.    );
  128.  
  129.   $items['latihan'] = array(
  130.     'title' => 'Halaman utama module Latihan',
  131.     'page callback' => 'latihan_main',
  132.     'access arguments' => array('melihat konten latihan'),
  133.     'type' => MENU_NORMAL_ITEM
  134.   );
  135.  
  136.   return $items;
  137. }
Advertisement
Add Comment
Please, Sign In to add comment