require_once("include/pgettext.php");
-define ( 'FRIENDIKA_VERSION', '2.2.1091' );
+define ( 'FRIENDIKA_VERSION', '2.3.1116' );
define ( 'DFRN_PROTOCOL_VERSION', '2.21' );
-define ( 'DB_UPDATE_VERSION', 1085 );
+define ( 'DB_UPDATE_VERSION', 1092 );
define ( 'EOL', "<br />\r\n" );
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
define ( 'ACTIVITY_OBJ_P_PHOTO', NAMESPACE_ACTIVITY_SCHEMA . 'profile-photo' );
define ( 'ACTIVITY_OBJ_ALBUM', NAMESPACE_ACTIVITY_SCHEMA . 'photo-album' );
define ( 'ACTIVITY_OBJ_EVENT', NAMESPACE_ACTIVITY_SCHEMA . 'event' );
+define ( 'ACTIVITY_OBJ_TAGTERM', NAMESPACE_DFRN . '/tagterm' );
/**
* item weight for query ordering
function startup() {
error_reporting(E_ERROR | E_WARNING | E_PARSE);
set_time_limit(0);
- ini_set('pcre.backtrack_limit', 250000);
+
+ // This has to be quite large to deal with embedded private photos
+ ini_set('pcre.backtrack_limit', 350000);
if (get_magic_quotes_gpc()) {
$tpl = get_markup_template('profile_vcard.tpl');
$o .= replace_macros($tpl, array(
- '$fullname' => $fullname,
- '$pdesc' => $pdesc,
+ '$fullname' => template_escape($fullname),
+ '$pdesc' => template_escape($pdesc),
'$tabs' => $tabs,
'$photo' => $photo,
'$connect' => $connect,
- '$location' => $location,
+ '$location' => template_escape($location),
'$gender' => $gender,
'$pubkey' => $pubkey,
- '$marital' => $marital,
- '$homepage' => $homepage,
+ '$marital' => template_escape($marital),
+ '$homepage' => template_escape($homepage),
'$diaspora' => $diaspora_vcard
));
$now = strtotime('now');
$today = (((strtotime($rr['start'] . ' +00:00') < $now) && (strtotime($rr['finish'] . ' +00:00') > $now)) ? true : false);
- $o .= '<div class="birthday-list" id="birthday-' . $rr['eid'] . '"><a class="sparkle" href="'
+ $o .= '<div class="birthday-list" id="birthday-' . $rr['eid'] . '"><a class="sparkle" target="redir" href="'
. $a->get_baseurl() . '/redir/' . $rr['cid'] . '">' . $rr['name'] . '</a> '
. day_translate(datetime_convert('UTC', $a->timezone, $rr['start'], $bd_format)) . (($today) ? ' ' . t('[today]') : '')
. '</div>' ;