Add two new smarty modifiers, get_profile and get_user, performing conversion between...
authorRaphaël Barrois <raphael.barrois@polytechnique.org>
Sun, 8 May 2011 23:23:43 +0000 (01:23 +0200)
committerRaphaël Barrois <raphael.barrois@polytechnique.org>
Sun, 8 May 2011 23:23:43 +0000 (01:23 +0200)
Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
plugins/modifier.get_profile.php [new file with mode: 0644]
plugins/modifier.get_user.php [new file with mode: 0644]

diff --git a/plugins/modifier.get_profile.php b/plugins/modifier.get_profile.php
new file mode 100644 (file)
index 0000000..30c393a
--- /dev/null
@@ -0,0 +1,35 @@
+<?php
+/***************************************************************************
+ *  Copyright (C) 2003-2011 Polytechnique.org                              *
+ *  http://opensource.polytechnique.org/                                   *
+ *                                                                         *
+ *  This program is free software; you can redistribute it and/or modify   *
+ *  it under the terms of the GNU General Public License as published by   *
+ *  the Free Software Foundation; either version 2 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 General Public License for more details.                           *
+ *                                                                         *
+ *  You should have received a copy of the GNU General Public License      *
+ *  along with this program; if not, write to the Free Software            *
+ *  Foundation, Inc.,                                                      *
+ *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
+ ***************************************************************************/
+
+function smarty_modifier_get_profile($obj)
+{
+  if ($obj instanceof Profile) {
+    return $obj;
+  } elseif ($obj instanceof User) {
+    return $obj->profile();
+  } else {
+    return null;
+  }
+}
+
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
+?>
+
diff --git a/plugins/modifier.get_user.php b/plugins/modifier.get_user.php
new file mode 100644 (file)
index 0000000..58b4590
--- /dev/null
@@ -0,0 +1,36 @@
+<?php
+/***************************************************************************
+ *  Copyright (C) 2003-2011 Polytechnique.org                              *
+ *  http://opensource.polytechnique.org/                                   *
+ *                                                                         *
+ *  This program is free software; you can redistribute it and/or modify   *
+ *  it under the terms of the GNU General Public License as published by   *
+ *  the Free Software Foundation; either version 2 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 General Public License for more details.                           *
+ *                                                                         *
+ *  You should have received a copy of the GNU General Public License      *
+ *  along with this program; if not, write to the Free Software            *
+ *  Foundation, Inc.,                                                      *
+ *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
+ ***************************************************************************/
+
+function smarty_modifier_get_user($obj)
+{
+  if ($obj instanceof User) {
+    return $obj;
+  } elseif ($obj instanceof Profile) {
+    return $obj->owner();
+  } else {
+    return null;
+  }
+}
+
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
+?>
+
+