]> git.mxchange.org Git - friendica.git/blobdiff - boot.php
works on login form
[friendica.git] / boot.php
index 13e1eff11737465a6bfd102ffb98ea180e15698a..e7cd065044590037799033360844b844822b6a52 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -7,10 +7,10 @@ require_once('include/text.php');
 require_once("include/pgettext.php");
 require_once('include/nav.php');
 
-
-define ( 'FRIENDIKA_VERSION',      '2.2.1093' );
+define ( 'FRIENDIKA_PLATFORM',     'Free Friendika');
+define ( 'FRIENDIKA_VERSION',      '2.3.1134' );
 define ( 'DFRN_PROTOCOL_VERSION',  '2.21'    );
-define ( 'DB_UPDATE_VERSION',      1087      );
+define ( 'DB_UPDATE_VERSION',      1097      );
 
 define ( 'EOL',                    "<br />\r\n"     );
 define ( 'ATOM_TIME',              'Y-m-d\TH:i:s\Z' );
@@ -152,6 +152,8 @@ define ( 'ACTIVITY_DISLIKE',     NAMESPACE_DFRN            . '/dislike' );
 define ( 'ACTIVITY_OBJ_HEART',   NAMESPACE_DFRN            . '/heart' );
 
 define ( 'ACTIVITY_FRIEND',      NAMESPACE_ACTIVITY_SCHEMA . 'make-friend' );
+define ( 'ACTIVITY_REQ_FRIEND',  NAMESPACE_ACTIVITY_SCHEMA . 'request-friend' );
+define ( 'ACTIVITY_UNFRIEND',    NAMESPACE_ACTIVITY_SCHEMA . 'remove-friend' );
 define ( 'ACTIVITY_FOLLOW',      NAMESPACE_ACTIVITY_SCHEMA . 'follow' );
 define ( 'ACTIVITY_UNFOLLOW',    NAMESPACE_ACTIVITY_SCHEMA . 'stop-following' );
 define ( 'ACTIVITY_POST',        NAMESPACE_ACTIVITY_SCHEMA . 'post' );
@@ -165,6 +167,7 @@ define ( 'ACTIVITY_OBJ_PHOTO',   NAMESPACE_ACTIVITY_SCHEMA . 'photo' );
 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
@@ -185,7 +188,9 @@ define ( 'GRAVITY_COMMENT',      6);
 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()) {
@@ -631,29 +636,16 @@ function get_guid($size=16) {
 if(! function_exists('login')) {
 function login($register = false) {
        $o = "";
-       $register_tpl = (($register) ? get_markup_template("register-link.tpl") : "");
-       
-       $register_html = replace_macros($register_tpl,array(
-               '$title' => t('Create a New Account'),
-               '$desc' => t('Register')
-       ));
-
-       $noid = get_config('system','no_openid');
-       if($noid) {
-               $classname = 'no-openid';
-               $namelabel = t('Nickname or Email address: ');
-               $passlabel = t('Password: ');
-               $login     = t('Login');
-       }
-       else {
-               $classname = 'openid';
-               $namelabel = t('Nickname/Email/OpenID: ');
-               $passlabel = t("Password \x28if not OpenID\x29: ");
-               $login     = t('Login');
+       $reg = false;
+       if ($register) {
+               $reg = array(
+                       'title' => t('Create a New Account'),
+                       'desc' => t('Register')
+               );
        }
-       $lostpass = t('Forgot your password?');
-       $lostlink = t('Password Reset');
 
+       $noid = get_config('system','no_openid');
+       
        if(local_user()) {
                $tpl = get_markup_template("logout.tpl");
        }
@@ -662,17 +654,22 @@ function login($register = false) {
 
        }
 
-       $o = '<script type="text/javascript"> $(document).ready(function() { $("#login-name").focus();} );</script>';   
 
        $o .= replace_macros($tpl,array(
                '$logout'        => t('Logout'),
-               '$register_html' => $register_html, 
-               '$classname'     => $classname,
-               '$namelabel'     => $namelabel,
-               '$passlabel'     => $passlabel,
-               '$login'         => $login,
-               '$lostpass'      => $lostpass,
-               '$lostlink'      => $lostlink 
+               '$login'                 => t('Login'),
+               
+               '$lname'                => array('username', t('Nickname or Email address: ') , '', ''),
+               '$lpassword'    => array('password', t('Password: '), '', ''),
+               
+               '$openid'               => !$noid,
+               '$lopenid'      => array('openid_url', t('OpenID: '),'',''),
+               
+               
+               '$register'             => $reg,
+               
+               '$lostpass'      => t('Forgot your password?'),
+               '$lostlink'      => t('Password Reset'),
        ));
 
        call_hooks('login_hook',$o);
@@ -721,14 +718,16 @@ function remote_user() {
 if(! function_exists('notice')) {
 function notice($s) {
        $a = get_app();
+       if(! x($_SESSION,'sysmsg'))     $_SESSION['sysmsg'] = array();
        if($a->interactive)
-               $_SESSION['sysmsg'] .= $s;
+               $_SESSION['sysmsg'][] = $s;
 }}
 if(! function_exists('info')) {
 function info($s) {
        $a = get_app();
+       if(! x($_SESSION,'sysmsg_info')) $_SESSION['sysmsg_info'] = array();
        if($a->interactive)
-               $_SESSION['sysmsg_info'] .= $s;
+               $_SESSION['sysmsg_info'][] = $s;
 }}
 
 
@@ -858,9 +857,38 @@ function profile_sidebar($profile, $block = 0) {
                $connect = False; 
 
 
-       // show edit to yourself
+       // show edit profile to yourself
        if ($profile['uid'] == local_user()) {
                $profile['edit'] = array($a->get_baseurl(). '/profiles', t('Profiles'),"", t('Manage/edit profiles'));
+               
+               $r = q("SELECT * FROM `profile` WHERE `uid` = %d",
+                               local_user());
+               
+               $profile['menu'] = array(
+                       'chg_photo' => t('Change profile photo'),
+                       'cr_new' => t('Create New Profile'),
+                       'entries' => array(),
+               );
+                               
+               if(count($r)) {
+
+                       foreach($r as $rr) {
+                               $profile['menu']['entries'][] = array(
+                                       'photo' => $rr['thumb'],
+                                       'id' => $rr['id'],
+                                       'alt' => t('Profile Image'),
+                                       'profile_name' => $rr['profile-name'],
+                                       'isdefault' => $rr['is-default'],
+                                       'visibile_to_everybody' =>  t('visible to everybody'),
+                                       'edit_visibility' => t('Edit visibility'),
+                                       
+                               );
+                       }
+
+
+               }
+               
+               
        }
 
 
@@ -884,11 +912,17 @@ function profile_sidebar($profile, $block = 0) {
                $location = $pdesc = $connect = $gender = $marital = $homepage = False;
        }
 
+       $firstname = ((strpos($profile['name'],' ')) 
+               ? trim(substr($profile['name'],0,strpos($profile['name'],' '))) : $profile['name']);
+       $lastname = (($firstname === $profile['name']) ? '' : trim(substr($profile['name'],strlen($firstname))));
+
        $diaspora = array(
                'podloc' => $a->get_baseurl(),
                'searchable' => (($profile['publish'] && $profile['net-publish']) ? 'true' : 'false' ),
                'nickname ' => $profile['nickname'],
                'fullname' => $profile['name'],
+               'firstname' => $firstname,
+               'lastname' => $lastname,
                'photo300' => $a->get_baseurl() . '/photo/custom/300/' . $profile['uid'] . '.jpg',
                'photo100' => $a->get_baseurl() . '/photo/custom/100/' . $profile['uid'] . '.jpg',
                'photo50' => $a->get_baseurl() . '/photo/custom/50/'  . $profile['uid'] . '.jpg',
@@ -904,7 +938,7 @@ function profile_sidebar($profile, $block = 0) {
        $o .= replace_macros($tpl, array(
                '$profile' => $profile,
                '$connect'  => $connect,                
-               '$location' => $location,
+               '$location' => template_escape($location),
                '$gender'   => $gender,
                '$pdesc'        => $pdesc,
                '$marital'  => $marital,
@@ -932,6 +966,7 @@ function get_birthdays() {
                return $o;
 
        $bd_format = t('g A l F d') ; // 8 AM Friday January 18
+       $bd_short = t('F d');
 
        $r = q("SELECT `event`.*, `event`.`id` AS `eid`, `contact`.* FROM `event` 
                LEFT JOIN `contact` ON `contact`.`id` = `event`.`cid` 
@@ -951,7 +986,7 @@ function get_birthdays() {
                if($total) {
                        $o .= '<div id="birthday-notice" class="birthday-notice fakelink" onclick=openClose(\'birthday-wrapper\'); >' . t('Birthday Reminders') . ' ' . '(' . $total . ')' . '</div>'; 
                        $o .= '<div id="birthday-wrapper" style="display: none;" ><div id="birthday-title">' . t('Birthdays this week:') . '</div>'; 
-                       $o .= '<div id="birthday-adjust">' . t("\x28Adjusted for local time\x29") . '</div>';
+//                     $o .= '<div id="birthday-adjust">' . t("\x28Adjusted for local time\x29") . '</div>';
                        $o .= '<div id="birthday-title-end"></div>';
 
                        foreach($r as $rr) {
@@ -959,10 +994,16 @@ function get_birthdays() {
                                        continue;
                                $now = strtotime('now');
                                $today = (((strtotime($rr['start'] . ' +00:00') < $now) && (strtotime($rr['finish'] . ' +00:00') > $now)) ? true : false); 
+                               $sparkle = '';
+                               $url = $rr['url'];
+                               if($rr['network'] === NETWORK_DFRN) {
+                                       $sparkle = " sparkle";
+                                       $url = $a->get_baseurl() . '/redir/'  . $rr['cid'];
+                               }
        
-                               $o .= '<div class="birthday-list" id="birthday-' . $rr['eid'] . '"><a class="sparkle" href="' 
-                               . $a->get_baseurl() . '/redir/'  . $rr['cid'] . '">' . $rr['name'] . '</a> ' 
-                               . day_translate(datetime_convert('UTC', $a->timezone, $rr['start'], $bd_format)) . (($today) ?  ' ' . t('[today]') : '')
+                               $o .= '<div class="birthday-list" id="birthday-' . $rr['eid'] . '"><a class="birthday-link$sparkle" target="redir" href="' 
+                               . $url . '">' . $rr['name'] . '</a> ' 
+                               . day_translate(datetime_convert('UTC', $a->timezone, $rr['start'], $rr['adjust'] ? $bd_format : $bd_short)) . (($today) ?  ' ' . t('[today]') : '')
                                . '</div>' ;
                        }
                        $o .= '</div></div>';
@@ -1119,3 +1160,49 @@ function load_contact_links($uid) {
        return;         
 }}
 
+if(! function_exists('profile_tabs')){
+function profile_tabs($a, $is_owner=False, $nickname=Null){
+       //echo "<pre>"; var_dump($a->user); killme();
+       
+       if (is_null($nickname))
+               $nickname  = $a->user['nickname'];
+               
+       if(x($_GET,'tab'))
+               $tab = notags(trim($_GET['tab']));
+       
+       $url = $a->get_baseurl() . '/profile/' . $nickname;
+
+       $tabs = array(
+               array(
+                       'label'=>t('Status'),
+                       'url' => $url,
+                       'sel' => ((!isset($tab)&&$a->argv[0]=='profile')?'active':''),
+               ),
+               array(
+                       'label' => t('Profile'),
+                       'url'   => $url.'/?tab=profile',
+                       'sel'   => (($tab=='profile')?'active':''),
+               ),
+               array(
+                       'label' => t('Photos'),
+                       'url'   => $a->get_baseurl() . '/photos/' . $nickname,
+                       'sel'   => ((!isset($tab)&&$a->argv[0]=='photos')?'active':''),
+               ),
+       );
+       
+       if ($is_owner){
+                $tabs[] = array(
+                       'label' => t('Events'),
+                       'url'   => $a->get_baseurl() . '/events',
+                       'sel'   =>((!isset($tab)&&$a->argv[0]=='events')?'active':''),
+               );
+               $tabs[] = array(
+                       'label' => t('Personal Notes'),
+                       'url'   => $a->get_baseurl() . '/notes',
+                       'sel'   =>((!isset($tab)&&$a->argv[0]=='notes')?'active':''),
+               );
+       }
+
+       $tpl = get_markup_template('common_tabs.tpl');
+       return replace_macros($tpl,array('$tabs'=>$tabs));
+}}