query($sql1) or die('Erreur SQL !
'.$sql1.'
'.$mysqli->error); $c = $req1->fetch_assoc(); if(!$c) { die('Wrong id'); } if($c['duplicateof'] > 0) { header('HTTP/1.1 301 Moved Permanently'); header('Location: '.$_SERVER['PHP_SELF'].'?id='.$c['duplicateof']); header('Connection: close'); } elseif($c['duplicateof']) { header('HTTP/1.1 301 Moved Permanently'); header('Location: ./scores.php'); header('Connection: close'); } $title = $c['incipit']?$c['incipit']:'░░'.$c['id'].'░░'; $custom_header = <<
HEADER; include('include/header.php'); if(isset($_POST['proofread']) && $_POST['proofread'] == 'Me') { $mysqli->query('INSERT into '.db('proofreading').' VALUES ('.$id.','.$current_user->ID.','.time().')') or die('Erreur SQL !
'.$sql1.'
'.$mysqli->error); } if(isset($_POST['pleasefix']) && $_POST['pleasefix'] > '') { $mysqli->query('INSERT into '.db('pleasefix').' (chant_id,pleasefix,time,'.($logged_in ? 'user_id' : 'ip').') VALUES ('.$id.',"'.$mysqli->real_escape_string($_POST['pleasefix']).'",'.time().',"'.($logged_in ? $current_user->ID : $_SERVER['REMOTE_ADDR']).'")') or die('Erreur SQL !
'.$sql1.'
'.$mysqli->error); } $c_p = array(); $sql1 = 'SELECT * FROM '.db('chant_sources').' WHERE chant_id = '.$id.' ORDER BY source'; $req1 = $mysqli->query($sql1) or die('Erreur SQL !
'.$sql1.'
'.$mysqli->error); while ($s = $req1->fetch_assoc()) { $c_s = array($s['source'], $s['page']); if(is_dir('./sources/'.$s['source'])) { if(is_array($sources[$s['source']]['pages'])) { $p = array_search($s['page'],$sources[$s['source']]['pages']); } else { $p = $s['page']; } if($p !== false) { $c_p[] = array($s['source'], $s['page'], $p, intval($s['extent']), intval($s['sequence'])); } else { $c_p[] = $c_s; } } else { $c_p[] = $c_s; } } usort($c_p, function($a, $b) { global $sources; if($sources[$a[0]]['year'] == $sources[$b[0]]['year']) { // Date if($a[0] == $b[0]) { // Source if(count($a) > 2) { if($a[2] == $b[2]) { // Page return $a[4] <=> $b[4]; // Sequence } else { return $a[2] <=> $b[2]; } } else { return strnatcasecmp($a[1], $b[1]); } } else { return $a[0] <=> $b[0]; } } else { return $sources[$b[0]]['year'] <=> $sources[$a[0]]['year']; } }); echo '

'; if($c['copyrighted']) { echo 'This tune is still under copyright.'; } elseif($c['gabc'] > '') { echo ''; } else { echo 'Yet to be transcribed. '; if($logged_in) { echo 'Please do it !'; } else { echo 'Please log-in or register if you would like to do it.'; } } echo '
 
'."\n"; echo '
'; $sql = 'SELECT * FROM '.db('pleasefix').' WHERE chant_id = '.$id.' AND fixed = 0'; $req = $mysqli->query($sql) or die('Erreur SQL !
'.$sql.'
'.$mysqli->error); echo '

'.format_incipit($title); if($req->num_rows > 0) { echo ' Warning!'; } if($logged_in) { echo ' Edit'; } echo '

'; if($req->num_rows > 0) { echo '
'; $count = 0; while($fix = $req->fetch_assoc()) { if($count > 0) echo "
"; echo '

Warning! '.nl2br(htmlspecialchars($fix['pleasefix']))."

\n"; $count++; } echo '
'; } if($c['cantusid'] > '') echo '

Cantus ID

\n"; if($c['version'] > '') echo '

Version

\n"; if($c['office-part'] > '') echo '

Usage

\n"; $tags = array(); $sql = 'SELECT * FROM '.db('chant_tags').' WHERE chant_id = '.$id; $req = $mysqli->query($sql) or die('Erreur SQL !
'.$sql.'
'.$mysqli->error); while ($t = $req->fetch_assoc()) { $sql1 = 'SELECT * FROM '.db('tags').' WHERE id = '.$t['tag_id']; $req1 = $mysqli->query($sql1) or die('Erreur SQL !
'.$sql1.'
'.$mysqli->error); $tt = $req1->fetch_assoc(); $tags[$tt['id']] = $tt['tag']; } natcasesort($tags); if(count($tags) > 0) { echo "

Tags

\n"; } $sources_img = ""; if(count($c_p) > 0) { echo "

Sources

\n\n"; } $sql1 = 'SELECT * FROM '.db('proofreading').' WHERE chant_id = '.$c['id'].' ORDER BY time DESC'; $req1 = $mysqli->query($sql1) or die('Erreur SQL !
'.$sql1.'
'.$mysqli->error); $proof = array(); $proof_done = False; while ($r = $req1->fetch_assoc()) { $proof[] = $r; if($logged_in && $r['user_id'] == $current_user->ID) $proof_done = True; } if(count($proof) > 0 || $logged_in) { echo "

Proofread by:

\n\n"; } if($logged_in) { echo '

Report a problem

'; $report_form = '

'; echo << Please describe the problem:
$report_form
POPUP1; } if(!$c['copyrighted']) { echo "

Download

\n\n"; if($c['gabc_verses'] || $c['tex_verses']){ echo "\n"; } echo "

Open with external tool

\n\n"; } if($c['remarks'] > '') { echo "

Remarks

\n

".nl2br($c['remarks'])."

\n"; } $sql1 = 'SELECT * FROM '.db('changesets').' WHERE chant_id = '.$c['id'].' ORDER BY time DESC'; $req1 = $mysqli->query($sql1) or die('Erreur SQL !
'.$sql1.'
'.$mysqli->error); if($req1->num_rows > 0 || $c['transcriber'] > '') { echo "

History

\n\n"; } echo "
\n"; echo $sources_img; echo ''; echo << SCRIPT; include('include/footer.php'); ?>