<?php
/* This file is part of Madcollector.
* Madcollector created by Thomas Andrieu,
* Developped by Mickael Jardet and Thomas Andrieu.
* Madcollector is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* Madcollector 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. See the
* GNU General Public License for more details.
*/
require_once LIBS.('classes/issue.class.php');
require_once LIBS.('classes/series.class.php');
require_once LIBS.('classes/artist.class.php');
require_once LIBS.('classes/worker.class.php');
require_once LIBS.('classes/story.class.php');
require_once LIBS.('classes/user.class.php');
$id_series = $_GET['id_series'];
$issue = $_GET['issue'];
$page = $_GET['page'];
function get_issue_data($issue_series,$issue_num,$data_base)
{
$requete_issue = 'SELECT * FROM mc_issues,mc_series WHERE mc_issues.id_series="'.$issue_series.'" AND mc_issues.issue="'.$issue_num.'" AND mc_issues.id_series=mc_series.id_series;';
$envoi_requete = $data_base->send_query($requete_issue);
$nb_occur = $data_base->num_rows();
if(($nb_occur == 0)||($nb_occur == ""))
{
return array();
}
else
{
$table_resultats = $data_base->get_array($envoi_requete, 'NUMERIC');
return $table_resultats;
}
}
//Si aucune serie n'a été sélectionnée, on affiche la liste des series
//No series selected, displaying a list of series
if(($id_series == "")||($issue=="")||(!isset($id_series))||(!isset($issue)))
{
$header_title = $lc_Msg_No_Occu;
require_once DATA.('header.inc.php');
echo "<div id=\"warning1\">".$lc_Msg_No_Occur."</div>\n";
if($id_series=="")
echo "<div id=\"goback1\"><a href=\"index.php?rub=publisher\">".$lc_Msg_Ret_List."</a></div>\n";
else
echo "<div id=\"goback2\"><a href=\"index.php?rub=series&id_series=".$id_series."\">".$lc_Msg_Ret_List."</a></div>\n";
}
else
{
//Updating data from various forms-------------------------------------
//Issue title
if(($_POST["issue_title_submit"]!= "")&&($_SESSION["level"]>1))
{
$requete_update_title = "UPDATE mc_issues SET title='".$_POST["issue_title_text"]."' WHERE id_series='".$id_series."' AND issue='".$issue."'";
$envoi_requete = $myDB->send_query($requete_update_title);
$nb_occur = $myDB->num_rows();
if(($nb_occur == -1)||($nb_occur == ""))
echo "<div class=\"message\">Error ".$myDB->return_error()." while updating title</div>";
}
//main summary
if(($_POST["summary_submit"]!= "")&&($_SESSION["level"]>1))
{
$table_resultats = get_issue_data($id_series,$issue,$myDB);
if(sizeOf($table_resultats)>0)
{
$oldIssue = new Issue(array_slice($table_resultats,0,22));
$old_summary = $oldIssue->summary;
$new_summary = addXML_content($old_summary,"summary","summaries",$_POST["summary_text"]);
$requete_update_summary = "UPDATE mc_issues SET summary='".addslashes($new_summary)."' WHERE id_series='".$id_series."' AND issue='".$issue."'";
$envoi_requete = $myDB->send_query($requete_update_summary);
$nb_occur = $myDB->num_rows();
if(($nb_occur == -1)||($nb_occur == ""))
echo "<div class=\"message\">Error ".$myDB->return_error()." while updating summary</div>";
}
}
//Displaying updates
$table_resultats = get_issue_data($id_series,$issue,$myDB);
if(sizeOf($table_resultats)==0)
{
$header_title = $lc_Msg_No_Occur;
require_once DATA.('header.inc.php');
echo "<div id=\"warning2\">".$lc_Msg_No_Occur."</div>\n";
echo "<div id=\"goback3\"><a href=\"index.php?rub=series&id_series=".$id_series."\">".$lc_Msg_Ret_List."</a></div>\n";
}
else
{
$myIssue = new Issue(array_slice($table_resultats,0,22));
$mySeries = new Series(array_slice($table_resultats,21));
$header_title = $mySeries->name." vol.".$mySeries->volume;
if(($mySeries->year != 0)&&($mySeries->year != ""))
$header_title .= " (".$mySeries->year.")";
$header_title .= " #".$myIssue->number;
require_once DATA.('header.inc.php');
echo "<div id=\"series_title\"><h1><a href=\"index.php?rub=series&id_series=".$mySeries->id_series."&page=".$page."\">".$mySeries->name." vol.".$mySeries->volume."</a></h1></div>\n";
echo "<div id=\"issue_number\"><h2>".$lc_Issue_Number." #".$myIssue->number."</h2></div>\n";
if(($myIssue->year != "")&&($myIssue->year != 0))
echo "<div id=\"publication\">".$lc_Issue_Publication_Date." : ".$myIssue->month." ".$myIssue->year."</div>\n";
if($myIssue->black_n_white == 1)
echo "<div id=\"black_and_white\">".$lc_Issue_Black_White."</div>\n";
if($myIssue->nppages != 0)
echo "<div id=\"nb_pages\">".$myIssue->nppages." pages</div>\n";
if($myIssue->cover_price != 0)
echo "<div id=\"cover_price\">".$lc_Issue_Cover_Price." : ".$myIssue->cover_price." ".$myIssue->cover_currency."</div>\n";
echo "<div id=\"main_story\"><h3>".$lc_Issue_Main_Story."</h3></div>\n";
div_form_input("issue_title","h3",$myIssue->title,"Click to add a title");
div_form_textarea("summary","p",parse_content($myIssue->summary,"summary"),"Click to add a summary");
$requete_issue_workers = 'SELECT mc_works.role,mc_works.pages, mc_works.id_story, mc_artists.id_artist, mc_artists.first_name, mc_artists.middle_name, mc_artists.last_name FROM mc_works,mc_artists WHERE mc_works.id_series="'.$myIssue->id_series.'" AND mc_works.issue="'.$myIssue->number.'" AND mc_works.id_artist=mc_artists.id_artist AND mc_works.id_story="0" ORDER BY mc_artists.last_name ASC, mc_artists.first_name ASC, mc_artists.middle_name ASC;';
$envoi_requete_workers = $myDB->send_query($requete_issue_workers);
$table_workers = array();
while($table_requete_workers = $myDB->get_array($envoi_requete_workers, 'NUMERIC'))
{
$myArtist = new Artist(array_splice($table_requete_workers,3));
$myWorker = new Worker($myArtist,$table_requete_workers[0],$table_requete_workers[1]);
array_push($table_workers,$myWorker);
}
$myIssue->fill_Issue_Workers($table_workers);
$compteur_stories = 0;
display_story_artists($table_workers,$compteur_stories);
$compteur_stories++;
//Reste à afficher les histoires secondaires
$requete_list_stories = 'SELECT * FROM mc_stories WHERE id_series="'.$id_series.'" AND issue="'.$issue.'"';
$envoi_requete = $myDB->send_query($requete_list_stories);
$nb_occur = $myDB->num_rows();
if($nb_occur != 0)
{
while($table_requete_stories = $myDB->get_array($envoi_requete, 'NUMERIC'))
{
$myStory = new Story($table_requete_stories);
echo "<div id=\"story".$compteur_stories."\"><h3>Backup story :</h3></div>\n";
echo "<div id=\"story_title".$compteur_stories."\"><h4>".$myStory->title."</h4></div>\n";
if($myStory->nbpages!=0)
echo "<div id=\"story_pages".$compteur_stories."\">".$myStory->nbpages." pages</div>\n";
if($myStory->black_n_white==1)
echo "<div id=\"story_black_white".$compteur_stories."\">Black and white</div>\n";
if($myStory->genre!="")
echo "<div id=\"story_genre".$compteur_stories."\">Genre : ".$myStory->genre."</div>\n";
if($myStory->comments!="")
echo "<div id=\"story_comments".$compteur_stories."\">".$myStory->comments."</div>\n";
$table_workers_story = array();
$requete_story_workers = 'SELECT mc_works.role, mc_works.pages, mc_works.id_story, mc_artists.id_artist, mc_artists.first_name, mc_artists.middle_name, mc_artists.last_name FROM mc_works,mc_artists WHERE mc_works.id_series="'.$myIssue->id_series.'" AND mc_works.issue="'.$myIssue->number.'" AND mc_works.id_artist=mc_artists.id_artist AND mc_works.id_story="'.$myStory->id_story.'" ORDER BY mc_artists.last_name ASC, mc_artists.first_name ASC, mc_artists.middle_name ASC;';
$envoi_requete_stories = $myDB->send_query($requete_story_workers);
$nb_occur_stories = $myDB->num_rows();
if($nb_occur_stories != 0)
{
while($table_requete_workers_story = $myDB->get_array($envoi_requete_stories, 'NUMERIC'))
{
$myArtist = new Artist(array_splice($table_requete_workers_story,3));
$myWorker = new Worker($myArtist,$table_requete_workers_story[0], $table_requete_workers_story[1]);
array_push($table_workers_story,$myWorker);
}
}
display_story_artists($table_workers_story,$compteur_stories);
$compteur_stories++;
}
}
//arcs/crossovers
if(($myIssue->id_arc!=0)&&($myIssue->id_arc!=""))
{
$requete_issue_arc = 'SELECT * FROM mc_arcs WHERE id_arc="'.$myIssue->id_arc.'";';
$envoi_requete_arc = $myDB->send_query($requete_issue_arc);
$nb_occur = $myDB->num_rows();
if(($nb_occur != 0)&&($nb_occur != ""))
if($lignObj = $myDB->get_object($envoi_requete_arc))
{
if($lignObj->id_series != 0)
echo "<div id=\"crossover\"><h3>Story arc :</h3></div>\n";
else
if($lignObj->id_publisher != 0)
echo "<div id=\"crossover\"><h3>Crossover :</h3></div>\n";
else echo "<div id=\"crossover\"><h3>Company crossover :</h3></div>\n";
echo "<div id=\"crossover_title\">".$lignObj->label."</div>\n";
if(($myIssue->reading_order!=0)&&($myIssue->reading_order!=""))
echo "<div id=\"crossover_order>Reading order : ".$myIssue->reading_order."</div>\n";
}
}
//links
$requete_issue_links = 'SELECT * FROM mc_issue_links WHERE id_series="'.$myIssue->id_series.'" AND issue="'.$myIssue->number.'" ;';
$envoi_requete_links = $myDB->send_query($requete_issue_links);
$nb_occur = $myDB->num_rows();
if(($nb_occur != 0)&&($nb_occur != ""))
{
echo "<div id=\"links\"><h3>Links</h3></div>\n";
$compteur_links = 1;
while($objLigne = $myDB->get_object($envoi_requete_links))
{
echo "<div id=\"links_url".$compteur_links."\"><a href=\"".$objLigne->link_url."\">".$objLigne->link_type."</a></div>\n";
$compteur_links++;
}
}
//selling users
$requete_issue_sellers = 'SELECT * FROM mc_users, mc_forsale WHERE mc_forsale.id_series="'.$myIssue->id_series.'" AND mc_forsale.issue="'.$myIssue->number.'" AND mc_forsale.id_user=mc_users.id_user ORDER BY mc_users.login ASC ;';
$envoi_requete_sellers = $myDB->send_query($requete_issue_sellers);
$nb_occur = $myDB->num_rows();
if(($nb_occur != 0)&&($nb_occur != ""))
{
echo "<div id=\"sellers\"><h3>Sellers :</h3></div>\n ";
$compteur_sellers = 1;
while($table_sellers = $myDB->get_array($envoi_requete_sellers,'NUMERIC'))
{
$myUser = new User($table_sellers);
echo "<div id=\"seller".$compteur_sellers."\"><a href=\"index.php?rub=profile&id_user=".$myUser->id_user."\">".$myUser->login."</a></div>\n";
$compteur_sellers++;
}
}
}
}
?>