source: types/PointerOneToOne.php@ 9

Last change on this file since 9 was 9, checked in by george, 17 years ago
  • Přidáno: Částečná podpora pro historii všech záznamů. Editace vytváří nový záznam. Zobrazení historie dané položky.
File size: 2.1 KB
Line 
1<?php
2
3function GetTablePointerName($Type, $Item)
4{
5 global $Database, $Lists;
6
7 $Columns = '';
8 $ItemType = explode(':', $Item['Type']);
9 $TargetTable = $ItemType[1];
10
11 foreach($Lists[$TargetTable]['Items'] as $ListItem)
12 if($ListItem['VisibleInPointer'] == 1) $Columns .= '`'.$ListItem['Name'].'`," ",';
13 $Columns = 'CONCAT('.substr($Columns, 0, -1).') AS Name, Id';
14 $DbResult = $Database->select($TargetTable, $Columns, 'Id='.$Item['Value']);
15 //echo($Database->LastQuery);
16 if($DbResult->num_rows > 0)
17 {
18 return($DbResult->fetch_assoc());
19 } else return('');
20}
21
22function GetTablePointerNameList($Type, $Item)
23{
24 global $Database, $Lists;
25
26 $Columns = '';
27 $ItemType = explode(':', $Item['Type']);
28 $TargetTable = $ItemType[1];
29
30 foreach($Lists[$TargetTable]['Items'] as $ListItem)
31 if($ListItem['VisibleInPointer'] == 1) $Columns .= '`'.$ListItem['Name'].'`," ",';
32 $Columns = 'CONCAT('.substr($Columns, 0, -1).') AS Name, Id';
33 $DbResult = $Database->select($TargetTable, $Columns);
34 //echo($Database->LastQuery);
35 if($DbResult->num_rows > 0)
36 {
37 $Result = array();
38 while($DbRow = $DbResult->fetch_assoc())
39 $Result[] = $DbRow;
40 return($Result);
41 } else return(array());
42}
43
44function TypePointerOneToOneViewHtml($Type, $Item)
45{
46 global $Database, $Lists;
47
48 $ItemType = explode(':', $Item['Type']);
49 $TargetTable = $ItemType[1];
50 $TargetName = GetTablePointerName($Type, $Item);
51 $Output = '<a href="?Action=ViewItem&amp;Table='.$TargetTable.'&amp;Item='.$TargetName['Id'].'">'.$TargetName['Name'].'</a>';
52 return($Output);
53}
54
55function TypePointerOneToOneEditHtml($Type, $Item)
56{
57 global $Database, $Lists;
58
59 $Output = '<select name="'.$Item['Name'].'">';
60 $TargetNameList = GetTablePointerNameList($Type, $Item);
61 //echo($Database->LastQuery);
62 foreach($TargetNameList as $TargetName)
63 {
64 if($Item['Value'] == $TargetName['Id']) $Selected = ' selected="1"'; else $Selected = '';
65 $Output .= '<option value="'.$TargetName['Id'].'"'.$Selected.'>'.$TargetName['Name'].'</option>';
66 }
67 $Output .= '</select>';
68 return($Output);
69}
70
71
72?>
Note: See TracBrowser for help on using the repository browser.