summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZach Copley <zach@status.net>2010-01-13 18:20:03 +0000
committerZach Copley <zach@status.net>2010-01-24 16:36:05 -0800
commit7b3c099f953c1569c18d81fdb8d4230e927d429e (patch)
treefbeaf0b0a14a8c1a9c1a432ec3d8a135f389ee63
parentba68e042a8acb9dd1054e0bc1c5cd4dfd415642e (diff)
Ensure only the application's owner can edit it
-rw-r--r--actions/editapplication.php15
1 files changed, 11 insertions, 4 deletions
diff --git a/actions/editapplication.php b/actions/editapplication.php
index a6db87c61..9cc3e3cea 100644
--- a/actions/editapplication.php
+++ b/actions/editapplication.php
@@ -45,9 +45,9 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
class EditApplicationAction extends OwnerDesignAction
{
- var $msg = null;
-
- var $app = null;
+ var $msg = null;
+ var $owner = null;
+ var $app = null;
function title()
{
@@ -68,7 +68,14 @@ class EditApplicationAction extends OwnerDesignAction
}
$id = (int)$this->arg('id');
- $this->app = Oauth_application::staticGet($id);
+
+ $this->app = Oauth_application::staticGet($id);
+ $this->owner = User::staticGet($this->app->owner);
+ $cur = common_current_user();
+
+ if ($cur->id != $this->owner->id) {
+ $this->clientError(_('You are not the owner of this application.'), 401);
+ }
if (!$this->app) {
$this->clientError(_('No such application.'));