2 require_once("view/CiteView.php");
3 require_once("profiller.php");
4 Profiller
::speed("Zaèínáme");
5 require_once("CiteConfig.php");
6 require_once("CiteOutput.php");
8 require_once("CiteFields.php");
9 require_once("CiteData.php");
10 require_once("database.php");
11 require_once("model/Models.php");
12 require_once("model/DataCache.php");
13 require_once("model/CiteModel.php");
14 require_once("view/Template.php");
15 require_once("view/HtmlTemplate.php");
16 require_once("view/LatexTemplate.php");
17 Profiller
::speed("Naètení vkládaných souborù");
21 var $directory=array();
23 var $convertTable=array(
36 "470"=>"kody_ministerstva",
41 function isoRecord($recordString){
42 $this->records
=explode('#',$recordString);
43 $metadata=$this->cleanNumbers($this->records
[0]);
44 $this->header
=substr($metadata,0,24);
45 $this->directory
=str_split(substr($metadata,25),12);
47 foreach($this->directory
as $s){
48 $tag=strlen($s)>3 ?
substr($s,0,3) : $s;
49 $tag=$this->convertField($tag);
50 if(array_key_exists($tag,$this->data
))$this->data
[$tag][]=$this->cleanNumbers($this->records
[$i]);
51 else $this->data
[$tag]=array($this->cleanNumbers($this->records
[$i]));
55 function convertField($s){
56 $s=strlen($s)>3 ?
substr($s,0,3) : $s;
57 if(array_key_exists($s,$this->convertTable
)) return $this->convertTable
[$s];
61 function getField($tag){
62 return $this->data
[$tag];
64 function pretyPrint(){
65 echo "<tr><td>Tisknu</td><td>{$this->header}</td></tr>\n";
66 //echo "<tr><td>".count($this->directory)."</td><td>".count($this->records)."</td></tr>\n";
67 for($i=0;$i<count($this->directory
);$i++
){
68 $field=$this->convertField($this->directory
[$i]);
69 echo "<tr><td>".$field."</td><td>".$this->cleanNumbers($this->records
[$i+
1])."</td></tr>\n";
73 function cleanNumbers($s){
74 return iconv("CP852","UTF-8",str_replace(array("\n","\r",'
80 private $iso_file_name="";
81 private $record_delimiter="##";
82 private $records=array();
83 public function __construct($file_name){
84 $this->iso_file_name
=$file_name;
86 public function recordDelimiter($delimiter){
87 $this->record_delimiter
=$delimiter;
90 function loadRecords($count,$start=0){
91 $iso=file_get_contents($this->iso_file_name
);
92 $records=explode($this->record_delimiter
,$iso);
94 for($i=$start;$i<$count;$i++
){
95 $r=new isoRecord($records[$i]);
96 $this->records
[]=$r->data
;
102 public function printBibliography(){
103 foreach($this->records
as $record){
104 echo implode("; ",$record["title"])."<br />";
105 //print_r($record->data);
107 echo count($this->records
);
111 $bib=new Bibliography("../EKO07.ISO");
112 $bib->recordDelimiter("##")
114 ->printBibliography()