Squiz Matrix  4.12.2
 All Data Structures Namespaces Functions Variables Pages
db_connector_edit_fns.inc
1 <?php
17 require_once SQ_INCLUDE_PATH.'/asset_edit/asset_edit_fns.inc';
18 require_once SQ_PACKAGES_PATH.'/data/data_source_db/data_source_db_edit_fns.inc';
19 
31 {
32 
33 
38  function __construct()
39  {
40  $this->Asset_Edit_Fns();
41 
42  $this->static_screens['details']['force_unlock'] = FALSE;
43 
44  unset($this->static_screens['dependants']);
45  unset($this->static_screens['metadata']);
46  unset($this->static_screens['preview']);
47  unset($this->static_screens['tagging']);
48 
49  }//end constructor
50 
51 
52 //-- DSN --//
53 
54 
65  function paintDSN(&$asset, &$o, $prefix)
66  {
67  $edit_fns = new Data_Source_DB_Edit_Fns();
68  return $edit_fns->paintDSN($asset, $o, $prefix);
69 
70  }//end paintDSN()
71 
72 
83  function processDSN(&$asset, &$o, $prefix)
84  {
85  $edit_fns = new Data_Source_DB_Edit_Fns();
86  return $edit_fns->processDSN($asset, $o, $prefix);
87 
88  }//end processDSN()
89 
90 
101  function paintDSNAlone(&$asset, &$o, $prefix)
102  {
103  $dsn = $asset->attr('dsn');
104  $wa = $asset->writeAccess('attributes');
105  $user = $asset->attr('user');
106  $database = $asset->attr('database');
107  if ($wa) {
108  text_area('dsn[dsn]', empty($database) ? $dsn : '', 70, 5);
109  return TRUE;
110  } else {
111  if (!empty($dsn)) {
112  $pos = strpos($dsn, ':');
113  $no_database = substr($dsn, $pos + 3, strlen($dsn) - 1);
114  if (($colon_pos = strpos($no_database, ':')) !== FALSE) {
115  // If the password is set, do not display it
116  $at_pos = strpos($no_database, '@');
117  $no_password = substr($no_database, 0, $colon_pos).substr($no_database, $at_pos, strlen($no_database) - 1);
118  echo substr($dsn, 0, $pos).'://'.$no_password;
119  } else {
120  echo $dsn;
121  }
122  }
123  return FALSE;
124  }
125 
126  }//end paintDSNAlone()
127 
128 
139  function processDSNAlone(&$asset, &$o, $prefix)
140  {
141  return TRUE;
142 
143  }//end processDSNAlone()
144 
145 
156  function paintUsageInfo(&$asset, &$o, $prefix)
157  {
158  $links = $GLOBALS['SQ_SYSTEM']->am->getLinks($asset->id, SQ_LINK_NOTICE, '', FALSE, 'minor', 'db_connector');
159 
160  if (empty($links)) {
161  echo '<span class="sq-backend-warning">'.translate('connector_not_used').'</span>';
162  return TRUE;
163  }
164 
165  foreach ($links as $one_link) {
166  echo '<div>'.get_asset_tag_line($one_link['majorid']).'</div>';
167  }
168 
169  return TRUE;
170 
171 
172  }//end paintUsageInfo()
173 
174 
175 }//end class
176 
177 ?>