forked from GNUsocial/gnu-social
		
	
		
			
	
	
		
			106 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			106 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
|   | <?php | ||
|  | /* | ||
|  |  * StatusNet - the distributed open-source microblogging tool | ||
|  |  * Copyright (C) 2010, StatusNet, Inc. | ||
|  |  * | ||
|  |  * This program is free software: you can redistribute it and/or modify | ||
|  |  * it under the terms of the GNU Affero General Public License as published by | ||
|  |  * the Free Software Foundation, either version 3 of the License, or | ||
|  |  * (at your option) any later version. | ||
|  |  * | ||
|  |  * This program is distributed in the hope that it will be useful, | ||
|  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
|  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||
|  |  * GNU Affero General Public License for more details. | ||
|  |  * | ||
|  |  * You should have received a copy of the GNU Affero General Public License | ||
|  |  * along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||
|  |  */ | ||
|  | 
 | ||
|  | if (!defined('STATUSNET') && !defined('LACONICA')) { | ||
|  |     exit(1); | ||
|  | } | ||
|  | 
 | ||
|  | class User_urlshortener_prefs extends Memcached_DataObject | ||
|  | { | ||
|  |     ###START_AUTOCODE
 | ||
|  |     /* the code below is auto generated do not remove the above tag */ | ||
|  | 
 | ||
|  |     public $__table = 'user_urlshortener_prefs';         // table name
 | ||
|  |     public $user_id;                         // int(4)  primary_key not_null
 | ||
|  |     public $urlshorteningservice;            // varchar(50)   default_ur1.ca
 | ||
|  |     public $maxurllength;                    // int(4)   not_null
 | ||
|  |     public $maxnoticelength;                 // int(4)   not_null
 | ||
|  |     public $created;                         // datetime   not_null default_0000-00-00%2000%3A00%3A00
 | ||
|  |     public $modified;                        // timestamp   not_null default_CURRENT_TIMESTAMP
 | ||
|  | 
 | ||
|  |     /* Static get */ | ||
|  |     function staticGet($k,$v=NULL) { return Memcached_DataObject::staticGet('User_urlshortener_prefs',$k,$v); } | ||
|  | 
 | ||
|  |     /* the code above is auto generated do not remove the tag below */ | ||
|  |     ###END_AUTOCODE
 | ||
|  | 
 | ||
|  |     function sequenceKey() | ||
|  |     { | ||
|  |         return array(false, false, false); | ||
|  |     } | ||
|  | 
 | ||
|  |     static function maxUrlLength($user) | ||
|  |     { | ||
|  |         $def = common_config('url', 'maxlength'); | ||
|  | 
 | ||
|  |         $prefs = self::getPrefs($user); | ||
|  | 
 | ||
|  |         if (empty($prefs)) { | ||
|  |             return $def; | ||
|  |         } else { | ||
|  |             return $prefs->maxurllength; | ||
|  |         } | ||
|  |     } | ||
|  | 
 | ||
|  |     static function maxNoticeLength($user) | ||
|  |     { | ||
|  |         $def = common_config('url', 'maxnoticelength'); | ||
|  | 
 | ||
|  |         if ($def == -1) { | ||
|  |             $def = Notice::maxContent(); | ||
|  |         } | ||
|  | 
 | ||
|  |         $prefs = self::getPrefs($user); | ||
|  | 
 | ||
|  |         if (empty($prefs)) { | ||
|  |             return $def; | ||
|  |         } else { | ||
|  |             return $prefs->maxnoticelength; | ||
|  |         } | ||
|  |     } | ||
|  | 
 | ||
|  |     static function urlShorteningService($user) | ||
|  |     { | ||
|  |         $def = common_config('url', 'shortener'); | ||
|  | 
 | ||
|  |         $prefs = self::getPrefs($user); | ||
|  | 
 | ||
|  |         if (empty($prefs)) { | ||
|  |             if (!empty($user)) { | ||
|  |                 return $user->urlshorteningservice; | ||
|  |             } else { | ||
|  |                 return $def; | ||
|  |             } | ||
|  |         } else { | ||
|  |             return $prefs->urlshorteningservice; | ||
|  |         } | ||
|  |     } | ||
|  | 
 | ||
|  |     static function getPrefs($user) | ||
|  |     { | ||
|  |         if (empty($user)) { | ||
|  |             return null; | ||
|  |         } | ||
|  | 
 | ||
|  |         $prefs = User_urlshortener_prefs::staticGet('user_id', $user->id); | ||
|  | 
 | ||
|  |         return $prefs; | ||
|  |     } | ||
|  | } |