aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Weiske <cweiske@cweiske.de>2012-10-24 22:19:34 +0200
committerChristian Weiske <cweiske@cweiske.de>2012-10-24 22:19:34 +0200
commit14786d88c624bb00e19f2451e964bffb2e7bd8ea (patch)
tree82892685f838695ca9edb5b5350a5916f530d3ae
parent6019e188e9772aff7d17ff993901c8697bcd9fec (diff)
downloadphorkie-14786d88c624bb00e19f2451e964bffb2e7bd8ea.tar.gz
phorkie-14786d88c624bb00e19f2451e964bffb2e7bd8ea.zip
Part of #35: show paste owner
-rw-r--r--data/templates/display-sidebar-owner.htm9
-rw-r--r--data/templates/display.htm1
-rw-r--r--src/phorkie/HtmlHelper.php16
-rw-r--r--src/phorkie/Repository.php21
-rw-r--r--src/phorkie/Repository/Commit.php14
-rw-r--r--www/display.php1
6 files changed, 50 insertions, 12 deletions
diff --git a/data/templates/display-sidebar-owner.htm b/data/templates/display-sidebar-owner.htm
new file mode 100644
index 0000000..f84a5fa
--- /dev/null
+++ b/data/templates/display-sidebar-owner.htm
@@ -0,0 +1,9 @@
+{% set owner = repo.getOwner %}
+<div class="well well-small vcard">
+ <img src="{{htmlhelper.getIconUrl(owner.email, 48)}}" alt="{{owner.name}}"
+ width="48" height="48" class="photo"
+ style="float: left; padding-right: 1ex;"/>
+ <span class="fn">{{owner.name}}</span>
+ <br/><span class="muted">owner</span>
+ <span class="clearfix"/>
+</div> \ No newline at end of file
diff --git a/data/templates/display.htm b/data/templates/display.htm
index 799f94d..6c75eaa 100644
--- a/data/templates/display.htm
+++ b/data/templates/display.htm
@@ -24,5 +24,6 @@
{% endblock %}
{% block sidebar %}
+ {% include 'display-sidebar-owner.htm' %}
{% include 'display-sidebar-history.htm' %}
{% endblock %}
diff --git a/src/phorkie/HtmlHelper.php b/src/phorkie/HtmlHelper.php
index ea21ab5..fd04d83 100644
--- a/src/phorkie/HtmlHelper.php
+++ b/src/phorkie/HtmlHelper.php
@@ -3,6 +3,22 @@ namespace phorkie;
class HtmlHelper
{
+ public function getIconUrl($email, $size = 32)
+ {
+ if ($email == 'anonymous@phorkie') {
+ return '/phorkie/anonymous.png';
+ }
+
+ $s = new \Services_Libravatar();
+ return $s->url(
+ $email,
+ array(
+ 'size' => $size,
+ 'default' => Tools::fullUrl('/phorkie/anonymous.png')
+ )
+ );
+ }
+
public function getLanguageOptions(File $file = null)
{
$html = '<option value="_auto_">* automatic *</option>';
diff --git a/src/phorkie/Repository.php b/src/phorkie/Repository.php
index 0cc279b..ba3079a 100644
--- a/src/phorkie/Repository.php
+++ b/src/phorkie/Repository.php
@@ -236,6 +236,27 @@ class Repository
}
/**
+ * @return array Array with keys "email" and "name"
+ */
+ public function getOwner()
+ {
+ try {
+ $name = $this->getVc()->getCommand('config')
+ ->addArgument('owner.name')->execute();
+ } catch (\VersionControl_Git_Exception $e) {
+ $name = $GLOBALS['phorkie']['auth']['anonymousName'];
+ }
+ try {
+ $email = $this->getVc()->getCommand('config')
+ ->addArgument('owner.email')->execute();
+ } catch (\VersionControl_Git_Exception $e) {
+ $email = $GLOBALS['phorkie']['auth']['anonymousEmail'];
+ }
+
+ return array('name' => trim($name), 'email' => trim($email));
+ }
+
+ /**
* Get a link to the repository
*
* @param string $type Link type. Supported are:
diff --git a/src/phorkie/Repository/Commit.php b/src/phorkie/Repository/Commit.php
index 1ac8cc5..1afc151 100644
--- a/src/phorkie/Repository/Commit.php
+++ b/src/phorkie/Repository/Commit.php
@@ -16,18 +16,8 @@ class Repository_Commit
public function getIconUrl()
{
- if ($this->committerEmail == 'anonymous@phorkie') {
- return '/phorkie/anonymous.png';
- }
-
- $s = new \Services_Libravatar();
- return $s->url(
- $this->committerEmail,
- array(
- 'size' => 32,
- 'default' => Tools::fullUrl('/phorkie/anonymous.png')
- )
- );
+ $hh = new HtmlHelper();
+ return $hh->getIconUrl($this->committerEmail);
}
/**
diff --git a/www/display.php b/www/display.php
index ffc9786..ae29b87 100644
--- a/www/display.php
+++ b/www/display.php
@@ -14,6 +14,7 @@ render(
array(
'repo' => $repo,
'dh' => new \Date_HumanDiff(),
+ 'htmlhelper' => new HtmlHelper(),
)
);
?>