changed git call from https to git readonly
[atutor.git] / mods / wiki / plugins / meta / builtincategories.php
1 <?php
2
3 /*
4    This plugin provides WikiFeatures:BuiltinCategories using the default
5    meta data entry.
6 */
7
8
9
10 $ewiki_categories = array(
11    "book" => "Book",
12    "discussion" => "Discussion/Talk", 
13    "building" => "Building",
14    "person" => "Person",
15 );
16
17 define("EWIKI_BULTINCAT_METAID", "category");
18 define("EWIKI_UP_SET_CATEGORY", "set_category");
19
20 $ewiki_t["de"]["category"] = "Kategorie";
21
22
23 $ewiki_plugins["edit_form_append"][] = "ewiki_builtin_categories";
24 $ewiki_plugins["edit_save"][] = "ewiki_edit_save_category";
25
26
27 /*
28    store selected category
29 */
30 function ewiki_edit_save_category(&$save, &$old_data) {
31    #-- anything to do?
32    if (($set_to=$_REQUEST[EWIKI_UP_SET_CATEGORY]) || isset($set_to)) {
33       #-- test if user supplied a more concrete setting
34       $old_cat = @$old_data["meta"]["meta"][EWIKI_BULTINCAT_METAID];
35       $cur_cat = @$save["meta"]["meta"][EWIKI_BULTINCAT_METAID];
36       if ($cur_cat == $old_cat) {
37          $save["meta"]["meta"][EWIKI_BULTINCAT_METAID] = trim(strtolower($set_to));
38       }
39    }
40 }
41
42
43 /*
44    show category selection dropdown
45 */
46 function ewiki_builtin_categories($id, &$data, $action) {
47
48    global $ewiki_categories;
49    $cat = array_merge(
50       array("" => "-"),
51       $ewiki_categories
52    );
53    $current = @$data["meta"]["meta"][EWIKI_BULTINCAT_METAID];
54
55    $o = "<br /> \n " . ewiki_t("category") . ": ";
56    $o .= ewiki_htm_select(EWIKI_UP_SET_CATEGORY, $cat, $current);
57
58    return($o);
59 }
60
61
62 /*
63    returns a html <select>(<option>)+ form chunk
64 */
65 function ewiki_htm_select($input_id, $args, $default, $use_vals=0) {
66    $default = strtolower($default);
67    $o = "<select name=\"$input_id\">";
68    foreach ($args as $val=>$str) {
69       if (!$use_vals && is_int($val)) {
70          $val = $str;
71       }
72       $o .= "<option value=\"$val\""
73          . (strtolower($val) == $default ? " selected" : "")
74          . ">$str</option>";
75    }
76    $o .= "</select>";
77    return($o);
78 }
79
80
81 ?>