X-Git-Url: http://git.dj3c1t.com/?a=blobdiff_plain;f=app%2Fdata%2Fmodules%2Fxml%2Fsml_data_licences.php;fp=app%2Fdata%2Fmodules%2Fxml%2Fsml_data_licences.php;h=09536529540b0252fc19aa6b84fa2d748bb675a4;hb=7d287d32ecd625ad3c21e9aa2aa122c86f9ec671;hp=0000000000000000000000000000000000000000;hpb=dfb63819f6edd72089b4d3a4c8cce3d7cba7c015;p=mw_sourceml diff --git a/app/data/modules/xml/sml_data_licences.php b/app/data/modules/xml/sml_data_licences.php new file mode 100644 index 0000000..0953652 --- /dev/null +++ b/app/data/modules/xml/sml_data_licences.php @@ -0,0 +1,96 @@ +sgbd(); + $env = $this->env(); + $licences = array("list" => array(), "total" => 0); + if($rst = $sgbd->open_data("sml_licences")) + { while($v_rst = $sgbd->fetch_data($rst)) + { if(isset($v_rst)) + { $licences["total"]++; + if(!isset($start) || !$env->config("max_list") || ($licences["total"] > $start && $licences["total"] < ($start + $env->config("max_list")))) + { $licences["list"][$v_rst["id"]] = $v_rst; + } + } + else + { $licences = false; + break; + } + } + $sgbd->close_data($rst); + } + else $licences = false; + return $licences; + } + + function licence($id) + { if($id == 0) return $id; + $sgbd = $this->sgbd(); + return $sgbd->get_data("sml_licences", $id); + } + + function add_licence($nom, $url) + { $sgbd = $this->sgbd(); + return $sgbd->add_data + ( "sml_licences", + array + ( "nom" => $nom, + "url" => $url + ) + ); + } + + function set_licence($id, $nom, $url) + { if(($licence = $this->licence($id)) !== false) + { $sgbd = $this->sgbd(); + if($nom != $licence["nom"] || $url != $licence["url"]) + { $licence["nom"] = $nom; + $licence["url"] = $url; + if(!$this->maj_source_xml_licence($licence)) return false; + } + return $sgbd->set_data + ( "sml_licences", + $id, + array + ( "nom" => $nom, + "url" => $url + ) + ); + } + return false; + } + + function del_licence($id) + { $OK = true; + $USED = false; + $sgbd = $this->sgbd(); + $env = $this->env(); + if($rst = $sgbd->open_data("sml_sources")) + { while($source = $sgbd->fetch_data($rst)) + { if(isset($source)) + { if($source["licence"] == $id) + { $USED = true; + break; + } + } + else + { $OK = false; + break; + } + } + $sgbd->close_data($rst); + } + else $OK = false; + if($OK) + { if($USED) return 1; + return $sgbd->del_data("sml_licences", $id) ? true : false; + } + return false; + } + + } + +?> \ No newline at end of file