. */ if (!defined('LACONICA')) { exit(1); } /** * Table Definition for design */ require_once INSTALLDIR . '/classes/Memcached_DataObject.php'; require_once INSTALLDIR . '/lib/webcolor.php'; class Design extends Memcached_DataObject { ###START_AUTOCODE /* the code below is auto generated do not remove the above tag */ public $__table = 'design'; // table name public $id; // int(4) primary_key not_null public $backgroundcolor; // int(4) public $contentcolor; // int(4) public $sidebarcolor; // int(4) public $textcolor; // int(4) public $linkcolor; // int(4) public $backgroundimage; // varchar(255) /* Static get */ function staticGet($k,$v=NULL) { return Memcached_DataObject::staticGet('Design',$k,$v); } /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE function showCSS($out) { try { $bgcolor = new WebColor($this->backgroundcolor); $ccolor = new WebColor($this->contentcolor); $sbcolor = new WebColor($this->sidebarcolor); $tcolor = new WebColor($this->textcolor); $lcolor = new WebColor($this->linkcolor); } catch (WebColorException $e) { // This shouldn't happen common_log(LOG_ERR, "Unable to create color for design $id.", __FILE__); } $css = 'html, body { background-color: #' . $bgcolor->hexValue() . '} ' . "\n"; $css .= '#content, #site_nav_local_views .current a { background-color: #'; $css .= $ccolor->hexValue() . '} '."\n"; $css .= '#aside_primary { background-color: #'. $sbcolor->hexValue() . '} ' . "\n"; $css .= 'html body { color: #'. $tcolor->hexValue() . '} '. "\n"; $css .= 'a { color: #' . $lcolor->hexValue() . '} ' . "\n"; if (!empty($this->backgroundimage)) { $css .= 'body { background-image:url(' . Design::url($this->backgroundimage) . '); background-repeat:no-repeat; }' . "\n"; } $out->element('style', array('type' => 'text/css'), $css); } static function filename($id, $extension, $extra=null) { return $id . (($extra) ? ('-' . $extra) : '') . $extension; } static function path($filename) { $dir = common_config('background', 'dir'); if ($dir[strlen($dir)-1] != '/') { $dir .= '/'; } return $dir . $filename; } static function url($filename) { $path = common_config('background', 'path'); if ($path[strlen($path)-1] != '/') { $path .= '/'; } if ($path[0] != '/') { $path = '/'.$path; } $server = common_config('background', 'server'); if (empty($server)) { $server = common_config('site', 'server'); } // XXX: protocol return 'http://'.$server.$path.$filename; } }