aboutsummaryrefslogtreecommitdiff
path: root/apps/subfield.php
blob: 7a95cce2faa5cdcbb97a716c3a085c07d1a728fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
/**
 * Cinisis - Isis db reading tool.
 */

// Import requisites.
require_once '../index.php';

// Get input data.
$entry = CinisisHttpHelper::getNumericArg('entry');
$fid   = CinisisHttpHelper::getNumericArg('fid');
$sid   = CinisisHttpHelper::getTextualArg('sid');

// Get a db instance.
$isis = new IsisFinder();

if ($isis) {
  // Draw the document.
  $display = new CinisisDisplayHelper('Subfield finder');
  $form    = $display->formInputText('entry', $entry);
  $form   .= $display->radios('fid', $isis->getFieldNames(), $fid);
  $form   .= $display->radios('sid', $isis->getSubFieldNames($fid), $sid);
  $script  = basename(__FILE__);
  $display->openTable();
  $display->form($form, $script);

  // Query database.
  $field                = $isis->getFieldArray($fid);
  $subfield             = $isis->getSubfieldName($fid, $sid, TRUE);
  list($entry, $result) = $isis->nextSubfield($field, $subfield, $entry);

  // Navigation bar.
  $display->navbar($entry, $isis->entries, $script, '&fid='. $fid . '&sid='. $sid);

  // Format output.
  $display->pre("Selected field: $fid: ". $field['name'] .".");
  $display->pre("Selected subfield: $sid: $subfield.");
  $display->pre("Showing entry ". $display->entryLink($entry) ." from ". $isis->entries ." total entries.");
  $display->pre("Repetitions found: ". count($result[$field['name']]) .".");
  $display->dump($result[$field['name']]);
  $display->closeTable();
  $display->footer();
}