getName().'/'.$mod_action.'.php'; break; default: header('HTTP/1.0 404 Not Found'); } } // Implement WT_Module_Config public function getConfigLink() { return 'module.php?mod='.$this->getName().'&mod_action=admin_config'; } // Implement WT_Module_Tab public function defaultTabOrder() { return 60; } // Implement WT_Module_Tab public function hasTabContent() { return WT_USER_CAN_EDIT || $this->get_media_count()>0; } // Implement WT_Module_Tab public function isGrayedOut() { return $this->get_media_count()==0; } // Implement WT_Module_Tab public function getTabContent() { global $controller; ob_start(); require WT_ROOT.WT_MODULES_DIR.'lightbox/functions/lb_head.php'; $media_found = false; if (!$controller->record->canDisplayDetails()) { echo ''; echo ''; echo '
'; print_privacy_error(); echo '
'; } else { require WT_ROOT.WT_MODULES_DIR.'lightbox/album.php'; } return '
'.ob_get_clean().'
'; } // Implement WT_Module_Tab public function canLoadAjax() { global $SEARCH_SPIDER; return !$SEARCH_SPIDER; // Search engines cannot use AJAX } // Implement WT_Module_Tab public function getPreLoadContent() { ob_start(); require_once WT_ROOT.WT_MODULES_DIR.'lightbox/functions/lb_call_js.php'; return ob_get_clean(); } // Implement WT_Module_Tab public function getJSCallback() { return 'CB_Init();'; } protected $mediaCount = null; private function get_media_count() { global $controller; if ($this->mediaCount===null) { $ct = preg_match("/\d OBJE/", $controller->record->getGedcomRecord()); foreach ($controller->record->getSpouseFamilies() as $sfam) $ct += preg_match("/\d OBJE/", $sfam->getGedcomRecord()); $this->mediaCount = $ct; } return $this->mediaCount; } }