summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/common.php13
-rw-r--r--lib/settingsaction.php38
-rw-r--r--lib/stream.php18
3 files changed, 64 insertions, 5 deletions
diff --git a/lib/common.php b/lib/common.php
index 53cd66cbe..f30096796 100644
--- a/lib/common.php
+++ b/lib/common.php
@@ -19,6 +19,10 @@
if (!defined('LACONICA')) { exit(1) }
+define('AVATAR_PROFILE_SIZE', 96);
+define('AVATAR_STREAM_SIZE', 48);
+define('AVATAR_MINI_SIZE', 24);
+
# global configuration object
// default configuration, overwritten in config.php
@@ -108,7 +112,7 @@ function common_head_menu() {
common_menu_item(common_local_url('showstream', array('nickname' =>
$user->nickname)),
_t('Profile'), $user->fullname || $user->nickname);
- common_menu_item(common_local_url('settings'),
+ common_menu_item(common_local_url('profilesettings'),
_t('Settings'));
common_menu_item(common_local_url('logout'),
_t('Logout'));
@@ -141,6 +145,13 @@ function common_menu_item($url, $text, $title=NULL) {
common_element_end('li');
}
+function common_input($id, $label) {
+ common_element('label', array('for' => $id), $label);
+ common_element('input', array('name' => $id,
+ 'type' => 'text',
+ 'id' => $id));
+}
+
# salted, hashed passwords are stored in the DB
function common_munge_password($id, $password) {
diff --git a/lib/settingsaction.php b/lib/settingsaction.php
new file mode 100644
index 000000000..db07bdef9
--- /dev/null
+++ b/lib/settingsaction.php
@@ -0,0 +1,38 @@
+<?php
+/*
+ * Laconica - a distributed open-source microblogging tool
+ * Copyright (C) 2008, Controlez-Vous, 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('LACONICA')) { exit(1) }
+
+class SettingsAction extends Action {
+
+ function handle($args) {
+ parent::handle($args);
+ }
+
+ function settings_menu() {
+ common_element_start('ul', 'headmenu');
+ common_menu_item(common_local_url('editprofile'),
+ _t('Profile'));
+ common_menu_item(common_local_url('avatar'),
+ _t('Avatar'));
+ common_menu_item(common_local_url('password'),
+ _t('Password'));
+ common_element_end('ul');
+ }
+}
diff --git a/lib/stream.php b/lib/stream.php
index b659eb8b5..912969380 100644
--- a/lib/stream.php
+++ b/lib/stream.php
@@ -27,14 +27,24 @@ class StreamAction extends Action {
parent::handle($args);
}
+ # XXX: for 'showstream' repeats same avatar over and over
function show_notice($notice) {
$profile = $notice->getProfile();
# XXX: RDFa
common_start_element('div', array('class' => 'notice'));
- # FIXME: add the avatar
- common_start_element('a', array('href' => $profile->profileurl,
- 'class' => 'nickname'),
- $profile->nickname);
+ $avatar = $profile->getAvatar(AVATAR_STREAM_SIZE);
+ common_start_element('a', array('href' => $profile->profileurl));
+ common_element('img', array('src' => ($avatar) ? $avatar->url : DEFAULT_STREAM_AVATAR,
+ 'class' => 'avatar stream',
+ 'width' => AVATAR_STREAM_SIZE,
+ 'height' => AVATAR_STREAM_SIZE,
+ 'alt' =>
+ ($profile->fullname) ? $profile->fullname :
+ $profile->nickname));
+ common_end_element('a');
+ common_element('a', array('href' => $profile->profileurl,
+ 'class' => 'nickname'),
+ $profile->nickname);
# FIXME: URL, image, video, audio
common_element('span', array('class' => 'content'), $notice->content);
common_element('span', array('class' => 'date'),