class sml_data_sources extends mw_data{
- var $status;
+ public $status;
# ----------------------------------------------------------------------------------------
# status de source
#
- function source_status()
- { if(!isset($this->status)) $this->status = $this->init_sources_status();
+ public function source_status(){
+ if(!isset($this->status)) $this->status = $this->init_sources_status();
return $this->status;
}
- function init_sources_status()
- { $sgbd = $this->sgbd();
+ public function init_sources_status(){
+ $sgbd = $this->sgbd();
$env = $this->env();
$status = array();
- if($rst = $sgbd->open_data("sml_classes"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { $status[$v_rst["id"]] = $v_rst;
+ if($rst = $sgbd->open_data("sml_classes")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ $status[$v_rst["id"]] = $v_rst;
}
- else
- { $status = false;
+ else{
+ $status = false;
break;
}
}
# sources
#
- function init_sources_table(){
+ public function init_sources_table(){
return true;
}
- function sources($params)
- { $sgbd = $this->sgbd();
+ public function sources($params){
+ $sgbd = $this->sgbd();
$env = $this->env();
// -------------------------------------------------------------------------------
$id_composition = isset($params["id_composition"]) ? $params["id_composition"] : null;
$id_source_derivation = isset($params["id_source_derivation"]) ? $params["id_source_derivation"] : null;
$id_licence = isset($params["id_licence"]) ? $params["id_licence"] : null;
+ $is_reference = isset($params["is_reference"]) ? $params["is_reference"] : null;
$order_by = isset($params["order_by"]) ? $params["order_by"] : "ordre";
$order = isset($params["order"]) ? $params["order"] : "ASC";
// -------------------------------------------------------------------------------
// infos pour verifier les filtres
- if(isset($id_user) || isset($id_groupe))
- { $in_source_ids = array();
+ if(isset($id_user) || isset($id_groupe)){
+ $in_source_ids = array();
$in_groupe_ids = array();
if(isset($id_groupe)) $in_groupe_ids[$id_groupe] = true;
- else
- { if(($groupes = $this->groupes($id_user)) !== false)
- { foreach($groupes["list"] as $id_groupe => $groupe) $in_groupe_ids[$id_groupe] = true;
+ else{
+ if(($groupes = $this->groupes($id_user)) !== false){
+ foreach($groupes["list"] as $id_groupe => $groupe) $in_groupe_ids[$id_groupe] = true;
}
else return false;
}
$OK = true;
- if($rst = $sgbd->open_data("sml_sources_authors"))
- { while($OK && $v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst) && isset($v_rst["id_source"]) && isset($v_rst["id_author"]))
- { if(isset($in_groupe_ids[$v_rst["id_author"]])) $in_source_ids[$v_rst["id_source"]] = true;
+ if($rst = $sgbd->open_data("sml_sources_authors")){
+ while($OK && $v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst) && isset($v_rst["id_source"]) && isset($v_rst["id_author"])){
+ if(isset($in_groupe_ids[$v_rst["id_author"]])) $in_source_ids[$v_rst["id_source"]] = true;
}
else $OK = false;
}
}
$compositions = array();
- if(isset($id_source))
- { if(($compositions = $this->source_compositions(array("id_source" => $id_source))) === false)
- { return false;
+ if(isset($id_source)){
+ if(($compositions = $this->source_compositions(array("id_source" => $id_source))) === false){
+ return false;
}
}
- elseif(isset($id_composition))
- { if(($compositions = $this->source_compositions(array("id_composition" => $id_composition))) === false)
- { return false;
+ elseif(isset($id_composition)){
+ if(($compositions = $this->source_compositions(array("id_composition" => $id_composition))) === false){
+ return false;
}
}
$derivations = array();
- if(isset($id_source_derivation))
- { if(($derivations = $this->source_derivations($id_source_derivation)) === false)
- { return false;
+ if(isset($id_source_derivation)){
+ if(($derivations = $this->source_derivations($id_source_derivation)) === false){
+ return false;
}
}
$sources = array("list" => array(), "total" => 0);
$res = array();
- if($rst = $sgbd->open_data("sml_sources"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst)) $res[$v_rst["id"]] = $v_rst;
- else
- { $res = false;
+ if($rst = $sgbd->open_data("sml_sources")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ $res[$v_rst["id"]] = $v_rst;
+ if(!isset($res[$v_rst["id"]]["ordre"])) $res[$v_rst["id"]]["ordre"] = 0;
+ }
+ else{
+ $res = false;
break;
}
}
$sgbd->close_data($rst);
- if($res !== false)
- { $res = $this->ordonne($res, $order_by, $order);
+ if($res !== false){
+ $res = $this->ordonne($res, $order_by, $order);
- foreach($res as $id_res => $v_rst)
- { // ------------------------------- par defaut
+ foreach($res as $id_res => $v_rst){
+ // ------------------------------- par defaut
$MATCH = true;
// ------------------------------- filtre sur id_user et id_groupe
- if(isset($in_source_ids))
- { $MATCH = isset($in_source_ids[$v_rst["id"]]) && $in_source_ids[$v_rst["id"]];
+ if(isset($in_source_ids)){
+ $MATCH = isset($in_source_ids[$v_rst["id"]]) && $in_source_ids[$v_rst["id"]];
}
// ------------------------------- filtre sur status
- if($MATCH)
- { $MATCH = !isset($status) || (isset($v_rst["id_class"]) && $v_rst["id_class"] == $status);
+ if($MATCH){
+ $MATCH = !isset($status) || (isset($v_rst["id_class"]) && $v_rst["id_class"] == $status);
}
// -------------------------------- filtre sur id_source
- if($MATCH)
- { if(isset($id_source))
- { $MATCH = false;
- if($compositions && is_array($compositions[$id_source]))
- { foreach($compositions[$id_source] as $id_composition)
- { if(isset($v_rst["id"]) && $v_rst["id"] == $id_composition)
- { $MATCH = true;
+ if($MATCH){
+ if(isset($id_source)){
+ $MATCH = false;
+ if($compositions && is_array($compositions[$id_source])){
+ foreach($compositions[$id_source] as $id_composition){
+ if(isset($v_rst["id"]) && $v_rst["id"] == $id_composition){
+ $MATCH = true;
break;
}
}
}
// -------------------------------- filtre sur id_composition
- if($MATCH)
- { if(isset($id_composition))
- { if($id_composition)
- { $MATCH = false;
- if($compositions && is_array($compositions[$id_composition]))
- { foreach($compositions[$id_composition] as $_id_source)
- { if(isset($v_rst["id"]) && $v_rst["id"] == $_id_source)
- { $MATCH = true;
+ if($MATCH){
+ if(isset($id_composition)){
+ if($id_composition){
+ $MATCH = false;
+ if($compositions && is_array($compositions[$id_composition])){
+ foreach($compositions[$id_composition] as $_id_source){
+ if(isset($v_rst["id"]) && $v_rst["id"] == $_id_source){
+ $MATCH = true;
break;
}
}
}
}
- else
- { if($compositions)
- { if(isset($compositions[$v_rst["id"]])) $MATCH = false;
+ else{
+ if($compositions){
+ if(isset($compositions[$v_rst["id"]])) $MATCH = false;
}
}
}
}
// -------------------------------- filtre sur id_source_derivation
- if($MATCH)
- { if(isset($id_source_derivation))
- { $MATCH = false;
- if($derivations && is_array($derivations[$id_source_derivation]))
- { foreach($derivations[$id_source_derivation] as $_id_derivation)
- { if(isset($v_rst["id"]) && $v_rst["id"] == $_id_derivation)
- { $MATCH = true;
+ if($MATCH){
+ if(isset($id_source_derivation)){
+ $MATCH = false;
+ if($derivations && is_array($derivations[$id_source_derivation])){
+ foreach($derivations[$id_source_derivation] as $_id_derivation){
+ if(isset($v_rst["id"]) && $v_rst["id"] == $_id_derivation){
+ $MATCH = true;
break;
}
}
}
// -------------------------------- filtre sur la licence
- if($MATCH)
- { if(isset($id_licence))
- { $MATCH = false;
+ if($MATCH){
+ if(isset($id_licence)){
+ $MATCH = false;
if(isset($v_rst["licence"]) && $v_rst["licence"] == $id_licence) $MATCH = true;
}
}
+ // -------------------------------- filtre sur is_reference
+ if($MATCH){
+ if(isset($is_reference)){
+ if($is_reference){
+ $MATCH = isset($v_rst["reference"]) && $v_rst["reference"];
+ }
+ else{
+ $MATCH = !isset($v_rst["reference"]) || !$v_rst["reference"];
+ }
+ }
+ }
+
// -------------------------------- filtre sur quantite de resultats
- if($MATCH)
- { $sources["total"]++;
+ if($MATCH){
+ $sources["total"]++;
$MATCH = !isset($start) || !$env->config("max_list") || ($sources["total"] > $start && $sources["total"] <= ($start + $env->config("max_list")));
}
return $sources;
}
- function source($id, $load = false)
- { $sgbd = $this->sgbd();
+ public function source($id, $load = false){
+ $sgbd = $this->sgbd();
if(($source = $sgbd->get_data("sml_sources", $id)) !== false){
$source["status"] = $source["id_class"];
$source = $load ? $this->load_source($source) : $this->get_source_from_v_rst($source);
return false;
}
- function get_source_from_v_rst($v_rst)
- { $sgbd = $this->sgbd();
+ public function get_source_from_v_rst($v_rst){
+ $sgbd = $this->sgbd();
$source = $this->empty_source();
foreach($v_rst as $rst_key => $rst_value) $source[$rst_key] = $rst_value;
$source["status"] = $source["id_class"];
- if($source["reference"])
- { if(!is_array($source["reference"]))
- { $reference_url = $source["reference"];
+ if($source["reference"]){
+ if(!is_array($source["reference"])){
+ $reference_url = $source["reference"];
$source["reference"] = $this->empty_source();
$source["reference"]["xml"]["url"] = $reference_url;
}
}
- else
- { if(!is_array($source["licence"]))
- { $source["licence"] = array
- ( "id" => $source["licence"]
+ else{
+ if(!is_array($source["licence"])){
+ $source["licence"] = array(
+ "id" => $source["licence"]
);
}
}
return $source;
}
- function load_source($source){
+ public function load_source($source){
$env = $this->env();
if(!isset($source["id"])) return false;
$source = $this->get_source_from_v_rst($source);
- $source["xml"] = array
- ( "url" => $this->source_xml_url($source["id"]),
+ $source["xml"] = array(
+ "url" => $this->source_xml_url($source["id"]),
"content" => $this->get_source_xml($source["id"])
);
$source["documents"] = array();
if(($source["groupes"] = $this->source_groupes($source["id"])) === false) return false;
- $source["image_uri"] =
- ( isset($source["image"]) && $source["image"] ?
+ $source["image_uri"] = (
+ isset($source["image"]) && $source["image"] ?
$env->path("content")."uploads/".$source["image"]
: ""
);
if($user = $env->user()){
if(($source["permissions"] = $this->source_permissions($source, $user["id"])) === false) return false;
}
- if(!$source["reference"])
- { if(($source["documents"] = $this->source_documents($source["id"])) === false) return false;
+ if(!$source["reference"]){
+ if(($source["documents"] = $this->source_documents($source["id"])) === false) return false;
}
return $source;
}
- function add_source
- ( $groupes,
+ public function add_source(
+ $groupes,
$titre,
$status,
$licence,
$reference = array(),
$derivations = array(),
$infos = array()
- )
- { $sgbd = $this->sgbd();
- $source = array
- ( "id_class" => $status,
+ ){
+ $sgbd = $this->sgbd();
+ $source = array(
+ "id_class" => $status,
"reference" => $reference ? $reference["xml"]["url"] : null,
"titre" => $reference ? null : $titre,
"licence" => $reference ? null : $licence,
foreach($infos as $key => $value) if(!isset($source[$key])) $source[$key] = $value;
$id = $sgbd->add_data("sml_sources", $source);
if(!isset($id)) return false;
- foreach($groupes as $id_groupe => $groupe)
- { if($groupe["id"] && $groupe["id_groupe_status"])
- { if(!$this->add_source_groupe($id, $groupe["id"], $groupe["id_groupe_status"])) return false;
+ foreach($groupes as $id_groupe => $groupe){
+ if($groupe["id"] && $groupe["id_groupe_status"]){
+ if(!$this->add_source_groupe($id, $groupe["id"], $groupe["id_groupe_status"])) return false;
}
else return false;
}
- foreach($derivations as $source_derivation)
- { if
- ( ( $id_source_derivation = $this->add_source_derivation
- ( $id,
+ foreach($derivations as $source_derivation){
+ if(
+ (
+ $id_source_derivation = $this->add_source_derivation(
+ $id,
$source_derivation["xml"]["url"],
$source_derivation["xml"]["use_edit_content"] ? $source_derivation["xml"]["content"] : ""
)
) === false
- )
- { return false;
+ ){
+ return false;
}
}
- if($reference)
- { if($reference["xml"]["use_edit_content"])
- { if(!$this->set_edit_reference_content($id, $reference["xml"]["content"]))
- { return false;
+ if($reference){
+ if($reference["xml"]["use_edit_content"]){
+ if(!$this->set_edit_reference_content($id, $reference["xml"]["content"])){
+ return false;
}
}
}
- else
- { foreach($documents as $document)
- { if(!$this->add_source_document($id, $document)) return false;
+ else{
+ foreach($documents as $document){
+ if(!$this->add_source_document($id, $document)) return false;
}
}
if(!$this->set_source_xml($id)) return false;
return $id;
}
- function set_source
- ( $id,
+ public function set_source(
+ $id,
$groupes,
$titre,
$status,
$reference = array(),
$derivations = array(),
$infos = array()
- )
- { if($source = $this->source($id))
- { $sgbd = $this->sgbd();
+ ){
+ if($source = $this->source($id)){
+ $sgbd = $this->sgbd();
$source["reference"] = $reference ? $reference["xml"]["url"] : null;
$source["titre"] = $reference ? null : $titre;
$source["licence"] = $reference ? null : $licence;
foreach($infos as $key => $value) $source[$key] = $value;
if(!$sgbd->set_data("sml_sources", $id, $source)) return false;
if(!$this->del_source_groupes($id)) return false;
- foreach($groupes as $id_groupe => $groupe)
- { if($groupe["id"] && $groupe["id_groupe_status"])
- { if(!$this->add_source_groupe($id, $groupe["id"], $groupe["id_groupe_status"])) return false;
+ foreach($groupes as $id_groupe => $groupe){
+ if($groupe["id"] && $groupe["id_groupe_status"]){
+ if(!$this->add_source_groupe($id, $groupe["id"], $groupe["id_groupe_status"])) return false;
}
else return false;
}
if(!$this->del_source_derivations($id)) return false;
if(!$this->del_edit_reference_content($id)) return false;
if(!$this->del_source_documents($id)) return false;
- foreach($derivations as $source_derivation)
- { if
- ( ( $id_source_derivation = $this->add_source_derivation
- ( $id,
+ foreach($derivations as $source_derivation){
+ if(
+ (
+ $id_source_derivation = $this->add_source_derivation(
+ $id,
$source_derivation["xml"]["url"],
$source_derivation["xml"]["use_edit_content"] ? $source_derivation["xml"]["content"] : ""
)
) === false
- )
- { return false;
+ ){
+ return false;
}
}
- if($reference)
- { if($reference["xml"]["use_edit_content"])
- { if(!$this->set_edit_reference_content($id, $reference["xml"]["content"]))
- { return false;
+ if($reference){
+ if($reference["xml"]["use_edit_content"]){
+ if(!$this->set_edit_reference_content($id, $reference["xml"]["content"])){
+ return false;
}
}
}
- else
- { foreach($documents as $document)
- { if(!$this->add_source_document($id, $document)) return false;
+ else{
+ foreach($documents as $document){
+ if(!$this->add_source_document($id, $document)) return false;
}
}
if(!$this->set_source_xml($id)) return false;
return false;
}
- function set_source_info($id_source, $key, $value)
- { $sgbd = $this->sgbd();
- if($source = $sgbd->get_data("sml_sources", $id_source))
- { $source[$key] = $value;
+ public function set_source_info($id_source, $key, $value){
+ $sgbd = $this->sgbd();
+ if($source = $sgbd->get_data("sml_sources", $id_source)){
+ $source[$key] = $value;
if($sgbd->set_data("sml_sources", $id_source, $source)) return true;
}
return false;
}
- function del_source($id)
- { $sgbd = $this->sgbd();
+ public function del_source($id){
+ $sgbd = $this->sgbd();
if(!$this->del_source_compositions(array("id_source" => $id, "id_composition" => $id))) return false;
if(!$this->del_edit_reference_content($id)) return false;
if(!$this->del_source_derivations($id)) return false;
# derivations de sources
#
- function init_source_derivations(){
+ public function init_source_derivations(){
return true;
}
- function source_derivations($params)
- { $sgbd = $this->sgbd();
+ public function source_derivations($params){
+ $sgbd = $this->sgbd();
$env = $this->env();
$derivations = array();
// sources dont "id_source" est une derivation
- if(isset($params["id_source"]))
- { if($rst = $sgbd->open_data("sml_source_derivations"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id"]) && isset($v_rst["id_source"]) && $v_rst["id_source"] == $params["id_source"])
- { $derivations[$v_rst["id"]] = array();
+ if(isset($params["id_source"])){
+ if($rst = $sgbd->open_data("sml_source_derivations")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id"]) && isset($v_rst["id_source"]) && $v_rst["id_source"] == $params["id_source"]){
+ $derivations[$v_rst["id"]] = array();
$derivation_edit_file = $this->derivation_edit_xml_path($v_rst["id_source"], $v_rst["id"]);
- if(file_exists($derivation_edit_file))
- { if(($derivation_edit_content = $this->get_edit_derivation_content($v_rst["id_source"], $v_rst["id"])) !== false)
- { if(($derivations[$v_rst["id"]] = $this->source_xml_read($v_rst["derivation"], $derivation_edit_content)) !==false)
- { $derivations[$v_rst["id"]]["xml"] = array
- ( "url" => $v_rst["derivation"],
+ if(file_exists($derivation_edit_file)){
+ if(($derivation_edit_content = $this->get_edit_derivation_content($v_rst["id_source"], $v_rst["id"])) !== false){
+ if(($derivations[$v_rst["id"]] = $this->source_xml_read($v_rst["derivation"], $derivation_edit_content)) !==false){
+ $derivations[$v_rst["id"]]["xml"] = array(
+ "url" => $v_rst["derivation"],
"content" => $derivation_edit_content,
"use_edit_content" => true
);
}
- else
- { $derivations = null;
+ else{
+ $derivations = null;
break;
}
}
- else
- { $derivations = null;
+ else{
+ $derivations = null;
break;
}
}
- else
- { if(($derivations[$v_rst["id"]] = $this->source_xml_read($v_rst["derivation"])) !==false)
- { $derivations[$v_rst["id"]]["id_source"] = $v_rst["id_source"];
+ else{
+ if(($derivations[$v_rst["id"]] = $this->source_xml_read($v_rst["derivation"])) !==false){
+ $derivations[$v_rst["id"]]["id_source"] = $v_rst["id_source"];
}
else $derivations[$v_rst["id"]] = $this->empty_source();
}
$derivations[$v_rst["id"]]["id_source"] = $v_rst["id_source"];
}
}
- else
- { $derivations = null;
+ else{
+ $derivations = null;
break;
}
}
return $derivations;
}
// sources qui derivent de "derivation"
- elseif(isset($params["derivation"]))
- { $source_xml_url = $params["derivation"];
+ elseif(isset($params["derivation"])){
+ $source_xml_url = $params["derivation"];
if(preg_match("/^[0-9]+$/", $source_xml_url)) $source_xml_url = $this->source_xml_url($source_xml_url);
$id_sources = array();
- if($rst = $sgbd->open_data("sml_source_derivations"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id_source"]) && isset($v_rst["derivation"]) && $v_rst["derivation"] == $source_xml_url)
- { $id_sources[$v_rst["id_source"]] = true;
+ if($rst = $sgbd->open_data("sml_source_derivations")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id_source"]) && isset($v_rst["derivation"]) && $v_rst["derivation"] == $source_xml_url){
+ $id_sources[$v_rst["id_source"]] = true;
}
}
- else { $id_sources = false; break; }
+ else{
+ $id_sources = false;
+ break;
+ }
}
$sgbd->close_data($rst);
}
else $id_sources = false;
if($id_sources === false) return false;
- if($id_sources)
- { if($rst = $sgbd->open_data("sml_sources"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id"]) && isset($id_sources[$v_rst["id"]]))
- { $derivations[$v_rst["id"]] = $v_rst;
+ if($id_sources){
+ if($rst = $sgbd->open_data("sml_sources")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id"]) && isset($id_sources[$v_rst["id"]])){
+ $derivations[$v_rst["id"]] = $v_rst;
}
}
- else { $derivations = false; break; }
+ else{
+ $derivations = false;
+ break;
+ }
}
$sgbd->close_data($rst);
}
return false;
}
- function source_derivation($id)
- { $sgbd = $this->sgbd();
+ public function source_derivation($id){
+ $sgbd = $this->sgbd();
return $sgbd->get_data("sml_source_derivations", $id);
}
- function add_source_derivation($id_source, $derivation, $edit_content = "")
- { $sgbd = $this->sgbd();
- $id_source_derivation = $sgbd->add_data
- ( "sml_source_derivations",
- array
- ( "id_source" => $id_source,
+ public function add_source_derivation($id_source, $derivation, $edit_content = ""){
+ $sgbd = $this->sgbd();
+ $id_source_derivation = $sgbd->add_data(
+ "sml_source_derivations",
+ array(
+ "id_source" => $id_source,
"derivation" => $derivation
)
);
- if(isset($id_source_derivation))
- { if($edit_content)
- { if(!$this->set_edit_derivation_content($id_source, $id_source_derivation, $edit_content))
- { $id_source_derivation = false;
+ if(isset($id_source_derivation)){
+ if($edit_content){
+ if(!$this->set_edit_derivation_content($id_source, $id_source_derivation, $edit_content)){
+ $id_source_derivation = false;
}
}
}
return $id_source_derivation;
}
- function set_source_derivation($id_source_derivation, $id_source, $derivation, $edit_content = "")
- { $sgbd = $this->sgbd();
- if
- ( ( $sgbd->set_data
- ( "sml_source_derivations",
+ public function set_source_derivation($id_source_derivation, $id_source, $derivation, $edit_content = ""){
+ $sgbd = $this->sgbd();
+ if(
+ (
+ $sgbd->set_data(
+ "sml_source_derivations",
$id_source_derivation,
- array
- ( "id_source" => $id_source,
+ array(
+ "id_source" => $id_source,
"derivation" => $derivation
)
)
)
- )
- { if($edit_content)
- { if(!$this->set_edit_derivation_content($id_source, $id_source_derivation, $edit_content))
- { return false;
+ ){
+ if($edit_content){
+ if(!$this->set_edit_derivation_content($id_source, $id_source_derivation, $edit_content)){
+ return false;
}
}
return true;
return false;
}
- function del_source_derivation($id_source_derivation)
- { if(($derivation = $this->source_derivation($id_source_derivation)) !== false)
- { if(($derivations = $this->source_derivations(array("id_source" => $derivation["id_source"]))) !== false)
- { $sgbd = $this->sgbd();
+ public function del_source_derivation($id_source_derivation){
+ if(($derivation = $this->source_derivation($id_source_derivation)) !== false){
+ if(($derivations = $this->source_derivations(array("id_source" => $derivation["id_source"]))) !== false){
+ $sgbd = $this->sgbd();
if(!$sgbd->del_data("sml_source_derivations", $id_source_derivation)) return false;
- if(count($derivations) > 1)
- { return $this->del_edit_derivation_content($derivation["id_source"], $id_source_derivation);
+ if(count($derivations) > 1){
+ return $this->del_edit_derivation_content($derivation["id_source"], $id_source_derivation);
}
else return $this->del_edit_derivations($derivation["id_source"]);
}
return false;
}
- function del_source_derivations($id_source)
- { $sgbd = $this->sgbd();
+ public function del_source_derivations($id_source){
+ $sgbd = $this->sgbd();
$id_source_derivations = array();
- if($rst = $sgbd->open_data("sml_source_derivations"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id"]) && isset($v_rst["id_source"]) && $v_rst["id_source"] == $id_source)
- { $id_source_derivations[] = $v_rst["id"];
+ if($rst = $sgbd->open_data("sml_source_derivations")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id"]) && isset($v_rst["id_source"]) && $v_rst["id_source"] == $id_source){
+ $id_source_derivations[] = $v_rst["id"];
}
}
- else { $id_source_derivations = false; break; }
+ else{
+ $id_source_derivations = false;
+ break;
+ }
}
$sgbd->close_data($rst);
}
else $id_source_derivations = false;
if($id_source_derivations === false) return false;
- if($id_source_derivations)
- { foreach($id_source_derivations as $id_source_derivation)
- { if(!$sgbd->del_data("sml_source_derivations", $id_source_derivation)) return false;
+ if($id_source_derivations){
+ foreach($id_source_derivations as $id_source_derivation){
+ if(!$sgbd->del_data("sml_source_derivations", $id_source_derivation)) return false;
}
}
return $this->del_edit_derivations($id_source);
# references
#
- function source_reference($source)
- { $reference = array();
- if($source["reference"])
- { if(!is_array($source["reference"]))
- { $source["reference"] = array
- ( "url" => $source["reference"],
+ public function source_reference($source){
+ $reference = array();
+ if($source["reference"]){
+ if(!is_array($source["reference"])){
+ $source["reference"] = array(
+ "url" => $source["reference"],
"content" => "",
"use_edit_content" => false
);
}
$reference_edit_file = $this->reference_edit_xml_path($source["id"]);
- if(file_exists($reference_edit_file))
- { if(($reference_edit_content = $this->get_edit_reference_content($source["id"])) !== false)
- { if(($reference = $this->source_xml_read($source["reference"], $reference_edit_content)) !==false)
- { $reference["xml"] = array
- ( "url" => $source["reference"]["xml"]["url"],
+ if(file_exists($reference_edit_file)){
+ if(($reference_edit_content = $this->get_edit_reference_content($source["id"])) !== false){
+ if(($reference = $this->source_xml_read($source["reference"], $reference_edit_content)) !==false){
+ $reference["xml"] = array(
+ "url" => $source["reference"]["xml"]["url"],
"content" => $reference_edit_content,
"use_edit_content" => true
);
}
else return false;
}
- else
- { if(($reference = $this->source_xml_read($source["reference"]["xml"]["url"])) ===false)
- { $reference = $this->empty_source();
+ else{
+ if(($reference = $this->source_xml_read($source["reference"]["xml"]["url"])) ===false){
+ $reference = $this->empty_source();
}
}
}
# documents
#
- function source_documents($id_source)
- { $sgbd = $this->sgbd();
+ public function source_documents($id_source){
+ $sgbd = $this->sgbd();
$documents = array();
- if($sgbd->data_exists("sml_sources/".$id_source))
- { if($rst = $sgbd->open_data("sml_sources/".$id_source))
- { $OK = true;
- while($OK && ($document = $sgbd->fetch_data($rst)))
- { if(isset($document)) $documents[$document["id"]] = $document;
+ if($sgbd->data_exists("sml_sources/".$id_source)){
+ if($rst = $sgbd->open_data("sml_sources/".$id_source)){
+ $OK = true;
+ while($OK && ($document = $sgbd->fetch_data($rst))){
+ if(isset($document)) $documents[$document["id"]] = $document;
else $OK = false;
}
$sgbd->close_data($rst);
return $documents;
}
- function add_source_document($id_source, $document)
- { $sgbd = $this->sgbd();
- if(!$sgbd->data_exists("sml_sources/".$id_source))
- { if(!$sgbd->create_data("sml_sources/".$id_source)) return false;
- }
- if
- ( !( $id_document = $sgbd->add_data
- ( "sml_sources/".$id_source,
- array
- ( "nom" => $document["nom"],
+ public function add_source_document($id_source, $document){
+ $sgbd = $this->sgbd();
+ if(!$sgbd->data_exists("sml_sources/".$id_source)){
+ if(!$sgbd->create_data("sml_sources/".$id_source)) return false;
+ }
+ if(
+ !(
+ $id_document = $sgbd->add_data(
+ "sml_sources/".$id_source,
+ array(
+ "nom" => $document["nom"],
"url" => $document["url"]
)
)
)
- ) return false;
+ ){
+ return false;
+ }
return $id_document;
}
- function del_source_documents($id_source)
- { $sgbd = $this->sgbd();
- if($sgbd->data_exists("sml_sources/".$id_source))
- { if(!$sgbd->remove_data("sml_sources/".$id_source)) return false;
+ public function del_source_documents($id_source){
+ $sgbd = $this->sgbd();
+ if($sgbd->data_exists("sml_sources/".$id_source)){
+ if(!$sgbd->remove_data("sml_sources/".$id_source)) return false;
}
return true;
}
# compositions de sources
#
- function source_compositions($params)
- { $id_source = isset($params["id_source"]) ? $params["id_source"] : null;
+ public function source_compositions($params){
+ $id_source = isset($params["id_source"]) ? $params["id_source"] : null;
$id_composition = isset($params["id_composition"]) ? $params["id_composition"] : null;
$sgbd = $this->sgbd();
$env = $this->env();
$compositions = array();
- if(isset($id_source))
- { if($rst = $sgbd->open_data("sml_source_compositions"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id_source"]) && isset($v_rst["id_composition"]) && $v_rst["id_source"] == $id_source)
- { if(!isset($compositions[$v_rst["id_source"]])) $compositions[$v_rst["id_source"]] = array();
+ if(isset($id_source)){
+ if($rst = $sgbd->open_data("sml_source_compositions")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id_source"]) && isset($v_rst["id_composition"]) && $v_rst["id_source"] == $id_source){
+ if(!isset($compositions[$v_rst["id_source"]])) $compositions[$v_rst["id_source"]] = array();
$compositions[$v_rst["id_source"]][] = $v_rst["id_composition"];
}
}
- else { $compositions = false; break; }
+ else{
+ $compositions = false;
+ break;
+ }
}
$sgbd->close_data($rst);
}
else $compositions = false;
}
- elseif(isset($id_composition))
- { if($id_composition)
- { if($rst = $sgbd->open_data("sml_source_compositions"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id_source"]) && isset($v_rst["id_composition"]) && $v_rst["id_composition"] == $id_composition)
- { if(!isset($compositions[$v_rst["id_composition"]])) $compositions[$v_rst["id_composition"]] = array();
+ elseif(isset($id_composition)){
+ if($id_composition){
+ if($rst = $sgbd->open_data("sml_source_compositions")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id_source"]) && isset($v_rst["id_composition"]) && $v_rst["id_composition"] == $id_composition){
+ if(!isset($compositions[$v_rst["id_composition"]])) $compositions[$v_rst["id_composition"]] = array();
$compositions[$v_rst["id_composition"]][] = $v_rst["id_source"];
}
}
- else { $compositions = false; break; }
+ else{
+ $compositions = false;
+ break;
+ }
}
$sgbd->close_data($rst);
}
else $compositions = false;
}
- else
- { if($rst = $sgbd->open_data("sml_source_compositions"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id_source"])) $compositions[$v_rst["id_source"]] = true;
+ else{
+ if($rst = $sgbd->open_data("sml_source_compositions")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id_source"])) $compositions[$v_rst["id_source"]] = true;
+ }
+ else{
+ $compositions = false;
+ break;
}
- else { $compositions = false; break; }
}
$sgbd->close_data($rst);
}
return $compositions;
}
- function set_source_composition($id_source, $id_composition)
- { $sgbd = $this->sgbd();
- if
- ( $sgbd->add_data
- ( "sml_source_compositions",
- array
- ( "id_source" => $id_source,
+ public function set_source_composition($id_source, $id_composition){
+ $sgbd = $this->sgbd();
+ if(
+ $sgbd->add_data(
+ "sml_source_compositions",
+ array(
+ "id_source" => $id_source,
"id_composition" => $id_composition
)
)
- ) return $this->set_source_xml($id_composition);
+ ){
+ return $this->set_source_xml($id_composition);
+ }
return false;
}
- function del_source_compositions($params)
- { $OK = true;
+ public function del_source_compositions($params){
+ $OK = true;
$id_source = isset($params["id_source"]) ? $params["id_source"] : null;
$id_composition = isset($params["id_composition"]) ? $params["id_composition"] : null;
$to_delete = array();
$to_update = array();
if(isset($id_composition)) $to_update[$id_composition] = true;
$sgbd = $this->sgbd();
- if($rst = $sgbd->open_data("sml_source_compositions"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id"]) && isset($v_rst["id_source"]) && isset($v_rst["id_composition"]))
- { if
- ( (isset($id_source) && $v_rst["id_source"] == $id_source)
+ if($rst = $sgbd->open_data("sml_source_compositions")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id"]) && isset($v_rst["id_source"]) && isset($v_rst["id_composition"])){
+ if(
+ (isset($id_source) && $v_rst["id_source"] == $id_source)
|| (isset($id_composition) && $v_rst["id_composition"] == $id_composition)
- ) $to_delete[] = $v_rst["id"];
+ ){
+ $to_delete[] = $v_rst["id"];
+ }
if(isset($id_source) && $v_rst["id_source"] == $id_source) $to_update[$v_rst["id_composition"]] = true;
}
}
- else { $OK = false; break; }
+ else{
+ $OK = false;
+ break;
+ }
}
$sgbd->close_data($rst);
}
else $OK = false;
if(!$OK) return false;
- foreach($to_delete as $id_source_composition)
- { if(!$sgbd->del_data("sml_source_compositions", $id_source_composition)) return false;
+ foreach($to_delete as $id_source_composition){
+ if(!$sgbd->del_data("sml_source_compositions", $id_source_composition)) return false;
}
- foreach($to_update as $id_source_xml => $delete)
- { if(!$this->set_source_xml($id_source_xml)) return false;
+ foreach($to_update as $id_source_xml => $delete){
+ if(!$this->set_source_xml($id_source_xml)) return false;
}
return true;
}
- function has_sources($id_composition)
- { $sgbd = $this->sgbd();
+ public function has_sources($id_composition){
+ $sgbd = $this->sgbd();
$env = $this->env();
$has_sources = 0;
- if($rst = $sgbd->open_data("sml_source_compositions"))
- { while($v_rst = $sgbd->fetch_data($rst))
- { if(isset($v_rst))
- { if(isset($v_rst["id_source"]) && isset($v_rst["id_composition"]))
- { if($v_rst["id_composition"] == $id_composition)
- { $has_sources = 1;
+ if($rst = $sgbd->open_data("sml_source_compositions")){
+ while($v_rst = $sgbd->fetch_data($rst)){
+ if(isset($v_rst)){
+ if(isset($v_rst["id_source"]) && isset($v_rst["id_composition"])){
+ if($v_rst["id_composition"] == $id_composition){
+ $has_sources = 1;
break;
}
}
}
- else
- { $has_sources = false;
+ else{
+ $has_sources = false;
break;
}
}
return $has_sources;
}
- function source_ariane($id_source, $ariane = array())
- { if(($compositions = $this->source_compositions(array("id_source" => $id_source))) !== false)
- { if(isset($compositions[$id_source]) && $compositions[$id_source])
- { foreach($compositions[$id_source] as $id_composition)
- { if(($ariane = $this->source_ariane($id_composition, $ariane)) !== false)
- { if(($ariane[$id_composition] = $this->source($id_composition)) !== false)
- {
+ public function source_ariane($id_source, $ariane = array()){
+ if(($compositions = $this->source_compositions(array("id_source" => $id_source))) !== false){
+ if(isset($compositions[$id_source]) && $compositions[$id_source]){
+ foreach($compositions[$id_source] as $id_composition){
+ if(($ariane = $this->source_ariane($id_composition, $ariane)) !== false){
+ if(($ariane[$id_composition] = $this->source($id_composition)) !== false){
}
else $ariane = false;
}
}
}
-
-?>
\ No newline at end of file