<?php
/***************************************************************************
- * Copyright (C) 2003-2010 Polytechnique.org *
+ * Copyright (C) 2003-2011 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
'plan' => $this->make_hook('plan', AUTH_PUBLIC),
'photo' => $this->make_hook('photo', AUTH_MDP),
'autologin' => $this->make_hook('autologin', AUTH_MDP),
+
+ 'Xnet' => $this->make_wiki_hook(),
);
}
function handler_photo(&$page, $x = null)
{
- if (is_null($x)) {
+ if (!$x || !($profile = Profile::get($x))) {
return PL_NOT_FOUND;
}
- $res = XDB::query("SELECT pp.attachmime, pp.attach
- FROM aliases AS a
- INNER JOIN account_profiles AS ap ON (ap.uid = a.uid AND FIND_IN_SET('owner', ap.flags))
- INNER JOIN profile_photos AS pp ON (ap.pid = pp.pid)
- WHERE a.alias = {?}", $x);
-
- if ((list($type, $data) = $res->fetchOneRow())) {
- pl_cached_dynamic_content_headers("image/$type");
- echo $data;
- } else {
- pl_cached_dynamic_content_headers("image/png");
- echo file_get_contents(dirname(__FILE__).'/../htdocs/images/none.png');
- }
- exit;
+ // Retrieve the photo and its mime type.
+ $photo = $profile->getPhoto(true, true);
+
+ // Display the photo, or a default one when not available.
+ $photo->send();
}
function handler_index(&$page)
XDB::execute('INSERT INTO groups (id, diminutif)
VALUES (NULL, {?})',
Post::v('diminutif'));
- pl_redirect('../' . Post::v('diminutif') . '/edit');
+ pl_redirect(Post::v('diminutif') . '/edit');
} else {
$page->trigError('Le diminutif demandé est déjà pris.');
}
$page->assign('cat', $cat);
$page->assign('dom', $dom);
- $res = XDB::query("SELECT id,nom
+ $res = XDB::query("SELECT id,nom
FROM group_dom
WHERE FIND_IN_SET({?}, cat)
ORDER BY nom", $cat);