Squiz Matrix  4.12.2
 All Data Structures Namespaces Functions Variables Pages
web_folder.inc
1 <?php
17 require_once SQ_CORE_PACKAGE_PATH.'/site/site.inc';
18 
28 class Web_Folder extends Site
29 {
30 
31 
38  function __construct($assetid=0)
39  {
40  parent::__construct($assetid);
41 
42  }//end constructor
43 
44 
56  public function create(Array &$link)
57  {
58  require_once SQ_CORE_PACKAGE_PATH.'/system/system_asset_fns.inc';
59  if (!system_asset_fns_create_pre_check($this)) {
60  return FALSE;
61  }
62  $GLOBALS['SQ_SYSTEM']->changeDatabaseConnection('db2');
63  $GLOBALS['SQ_SYSTEM']->doTransaction('BEGIN');
64 
65  if ($linkid = parent::create($link)) {
66  if (!system_asset_fns_create_cleanup($this)) {
67  $linkid = FALSE;
68  }
69  }
70 
71  if ($linkid) {
72  $GLOBALS['SQ_SYSTEM']->doTransaction('COMMIT');
73  } else {
74  $GLOBALS['SQ_SYSTEM']->doTransaction('ROLLBACK');
75  }
76 
77  $GLOBALS['SQ_SYSTEM']->restoreDatabaseConnection();
78  return $linkid;
79 
80  }//end create()
81 
82 
102  protected function _createAdditional(Array &$link)
103  {
104  $root_urls = explode("\n", SQ_CONF_SYSTEM_ROOT_URLS);
105  $url_suffix = '_'.substr($this->type(), 11);
106 
107  $urls = Array();
108  $urls[] = Array(
109  'url' => $root_urls[0].'/'.$url_suffix,
110  'http' => 1,
111  'https' => 0,
112  'base_contextid' => 0,
113  );
114 
115  if (!$this->saveWebUrls($urls)) return FALSE;
116  return $this->updateLookups();
117 
118  }//end _createAdditional()
119 
120 
129  protected function _getName($short_name=FALSE)
130  {
131  return $GLOBALS['SQ_SYSTEM']->am->getTypeInfo($this->type(), 'name');
132 
133  }//end _getName()
134 
135 
142  public function canDelete()
143  {
144  return FALSE;
145 
146  }//end canDelete()
147 
148 
155  public function canClone()
156  {
157  return FALSE;
158 
159  }//end canClone()
160 
161 
169  public function _getAllowedLinks()
170  {
171 
172  return Array(
173  SQ_LINK_TYPE_1 => Array(
174  'folder' => Array(
175  'card' => 'M',
176  'exclusive' => FALSE,
177  ),
178  ),
179  SQ_LINK_TYPE_2 => Array(
180  'folder' => Array(
181  'card' => 'M',
182  'exclusive' => FALSE,
183  ),
184  ),
185  SQ_LINK_NOTICE => Array(
186  'design' => Array(
187  'card' => 'M',
188  'exclusive' => FALSE,
189  ),
190  ),
191  );
192 
193  }//end _getAllowedLinks()
194 
195 
196 }//end class
197 
198 ?>