Add subtitle to PhamePost
Summary: No view engine yet (adding header image next), but adds subtitle to display like PhameBlog Test Plan: Add a subtitle, remove a subtitle. Reviewers: epriestley Reviewed By: epriestley Subscribers: Korvin Differential Revision: https://secure.phabricator.com/D16871
This commit is contained in:
@@ -0,0 +1,2 @@
|
|||||||
|
ALTER TABLE {$NAMESPACE}_phame.phame_post
|
||||||
|
ADD subtitle VARCHAR(64) NOT NULL COLLATE {$COLLATE_TEXT};
|
||||||
@@ -99,6 +99,14 @@ final class PhamePostEditEngine
|
|||||||
->setConduitTypeDescription(pht('New post title.'))
|
->setConduitTypeDescription(pht('New post title.'))
|
||||||
->setTransactionType(PhamePostTransaction::TYPE_TITLE)
|
->setTransactionType(PhamePostTransaction::TYPE_TITLE)
|
||||||
->setValue($object->getTitle()),
|
->setValue($object->getTitle()),
|
||||||
|
id(new PhabricatorTextEditField())
|
||||||
|
->setKey('subtitle')
|
||||||
|
->setLabel(pht('Subtitle'))
|
||||||
|
->setDescription(pht('Post subtitle.'))
|
||||||
|
->setConduitDescription(pht('Change the post subtitle.'))
|
||||||
|
->setConduitTypeDescription(pht('New post subtitle.'))
|
||||||
|
->setTransactionType(PhamePostTransaction::TYPE_SUBTITLE)
|
||||||
|
->setValue($object->getSubtitle()),
|
||||||
id(new PhabricatorSelectEditField())
|
id(new PhabricatorSelectEditField())
|
||||||
->setKey('visibility')
|
->setKey('visibility')
|
||||||
->setLabel(pht('Visibility'))
|
->setLabel(pht('Visibility'))
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ final class PhamePostEditor
|
|||||||
|
|
||||||
$types[] = PhamePostTransaction::TYPE_BLOG;
|
$types[] = PhamePostTransaction::TYPE_BLOG;
|
||||||
$types[] = PhamePostTransaction::TYPE_TITLE;
|
$types[] = PhamePostTransaction::TYPE_TITLE;
|
||||||
|
$types[] = PhamePostTransaction::TYPE_SUBTITLE;
|
||||||
$types[] = PhamePostTransaction::TYPE_BODY;
|
$types[] = PhamePostTransaction::TYPE_BODY;
|
||||||
$types[] = PhamePostTransaction::TYPE_VISIBILITY;
|
$types[] = PhamePostTransaction::TYPE_VISIBILITY;
|
||||||
$types[] = PhabricatorTransactions::TYPE_COMMENT;
|
$types[] = PhabricatorTransactions::TYPE_COMMENT;
|
||||||
@@ -32,6 +33,8 @@ final class PhamePostEditor
|
|||||||
return $object->getBlogPHID();
|
return $object->getBlogPHID();
|
||||||
case PhamePostTransaction::TYPE_TITLE:
|
case PhamePostTransaction::TYPE_TITLE:
|
||||||
return $object->getTitle();
|
return $object->getTitle();
|
||||||
|
case PhamePostTransaction::TYPE_SUBTITLE:
|
||||||
|
return $object->getSubtitle();
|
||||||
case PhamePostTransaction::TYPE_BODY:
|
case PhamePostTransaction::TYPE_BODY:
|
||||||
return $object->getBody();
|
return $object->getBody();
|
||||||
case PhamePostTransaction::TYPE_VISIBILITY:
|
case PhamePostTransaction::TYPE_VISIBILITY:
|
||||||
@@ -45,6 +48,7 @@ final class PhamePostEditor
|
|||||||
|
|
||||||
switch ($xaction->getTransactionType()) {
|
switch ($xaction->getTransactionType()) {
|
||||||
case PhamePostTransaction::TYPE_TITLE:
|
case PhamePostTransaction::TYPE_TITLE:
|
||||||
|
case PhamePostTransaction::TYPE_SUBTITLE:
|
||||||
case PhamePostTransaction::TYPE_BODY:
|
case PhamePostTransaction::TYPE_BODY:
|
||||||
case PhamePostTransaction::TYPE_VISIBILITY:
|
case PhamePostTransaction::TYPE_VISIBILITY:
|
||||||
case PhamePostTransaction::TYPE_BLOG:
|
case PhamePostTransaction::TYPE_BLOG:
|
||||||
@@ -59,6 +63,8 @@ final class PhamePostEditor
|
|||||||
switch ($xaction->getTransactionType()) {
|
switch ($xaction->getTransactionType()) {
|
||||||
case PhamePostTransaction::TYPE_TITLE:
|
case PhamePostTransaction::TYPE_TITLE:
|
||||||
return $object->setTitle($xaction->getNewValue());
|
return $object->setTitle($xaction->getNewValue());
|
||||||
|
case PhamePostTransaction::TYPE_SUBTITLE:
|
||||||
|
return $object->setSubtitle($xaction->getNewValue());
|
||||||
case PhamePostTransaction::TYPE_BODY:
|
case PhamePostTransaction::TYPE_BODY:
|
||||||
return $object->setBody($xaction->getNewValue());
|
return $object->setBody($xaction->getNewValue());
|
||||||
case PhamePostTransaction::TYPE_BLOG:
|
case PhamePostTransaction::TYPE_BLOG:
|
||||||
@@ -84,6 +90,7 @@ final class PhamePostEditor
|
|||||||
|
|
||||||
switch ($xaction->getTransactionType()) {
|
switch ($xaction->getTransactionType()) {
|
||||||
case PhamePostTransaction::TYPE_TITLE:
|
case PhamePostTransaction::TYPE_TITLE:
|
||||||
|
case PhamePostTransaction::TYPE_SUBTITLE:
|
||||||
case PhamePostTransaction::TYPE_BODY:
|
case PhamePostTransaction::TYPE_BODY:
|
||||||
case PhamePostTransaction::TYPE_VISIBILITY:
|
case PhamePostTransaction::TYPE_VISIBILITY:
|
||||||
case PhamePostTransaction::TYPE_BLOG:
|
case PhamePostTransaction::TYPE_BLOG:
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ final class PhamePost extends PhameDAO
|
|||||||
|
|
||||||
protected $bloggerPHID;
|
protected $bloggerPHID;
|
||||||
protected $title;
|
protected $title;
|
||||||
|
protected $subtitle;
|
||||||
protected $phameTitle;
|
protected $phameTitle;
|
||||||
protected $body;
|
protected $body;
|
||||||
protected $visibility;
|
protected $visibility;
|
||||||
@@ -122,6 +123,7 @@ final class PhamePost extends PhameDAO
|
|||||||
),
|
),
|
||||||
self::CONFIG_COLUMN_SCHEMA => array(
|
self::CONFIG_COLUMN_SCHEMA => array(
|
||||||
'title' => 'text255',
|
'title' => 'text255',
|
||||||
|
'subtitle' => 'text64',
|
||||||
'phameTitle' => 'sort64?',
|
'phameTitle' => 'sort64?',
|
||||||
'visibility' => 'uint32',
|
'visibility' => 'uint32',
|
||||||
'mailKey' => 'bytes20',
|
'mailKey' => 'bytes20',
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ final class PhamePostTransaction
|
|||||||
extends PhabricatorApplicationTransaction {
|
extends PhabricatorApplicationTransaction {
|
||||||
|
|
||||||
const TYPE_TITLE = 'phame.post.title';
|
const TYPE_TITLE = 'phame.post.title';
|
||||||
|
const TYPE_SUBTITLE = 'phame.post.subtitle';
|
||||||
const TYPE_BODY = 'phame.post.body';
|
const TYPE_BODY = 'phame.post.body';
|
||||||
const TYPE_VISIBILITY = 'phame.post.visibility';
|
const TYPE_VISIBILITY = 'phame.post.visibility';
|
||||||
const TYPE_BLOG = 'phame.post.blog';
|
const TYPE_BLOG = 'phame.post.blog';
|
||||||
@@ -94,6 +95,7 @@ final class PhamePostTransaction
|
|||||||
$tags[] = self::MAILTAG_SUBSCRIBERS;
|
$tags[] = self::MAILTAG_SUBSCRIBERS;
|
||||||
break;
|
break;
|
||||||
case self::TYPE_TITLE:
|
case self::TYPE_TITLE:
|
||||||
|
case self::TYPE_SUBTITLE:
|
||||||
case self::TYPE_BODY:
|
case self::TYPE_BODY:
|
||||||
$tags[] = self::MAILTAG_CONTENT;
|
$tags[] = self::MAILTAG_CONTENT;
|
||||||
break;
|
break;
|
||||||
@@ -136,6 +138,19 @@ final class PhamePostTransaction
|
|||||||
$new);
|
$new);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case self::TYPE_SUBTITLE:
|
||||||
|
if ($old === null) {
|
||||||
|
return pht(
|
||||||
|
'%s set the post\'s subtitle to "%s".',
|
||||||
|
$this->renderHandleLink($author_phid),
|
||||||
|
$new);
|
||||||
|
} else {
|
||||||
|
return pht(
|
||||||
|
'%s updated the post\'s subtitle to "%s".',
|
||||||
|
$this->renderHandleLink($author_phid),
|
||||||
|
$new);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case self::TYPE_BODY:
|
case self::TYPE_BODY:
|
||||||
return pht(
|
return pht(
|
||||||
'%s updated the blog post.',
|
'%s updated the blog post.',
|
||||||
@@ -195,6 +210,12 @@ final class PhamePostTransaction
|
|||||||
$this->renderHandleLink($object_phid));
|
$this->renderHandleLink($object_phid));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case self::TYPE_SUBTITLE:
|
||||||
|
return pht(
|
||||||
|
'%s updated the subtitle for %s.',
|
||||||
|
$this->renderHandleLink($author_phid),
|
||||||
|
$this->renderHandleLink($object_phid));
|
||||||
|
break;
|
||||||
case self::TYPE_BODY:
|
case self::TYPE_BODY:
|
||||||
return pht(
|
return pht(
|
||||||
'%s updated the blog post %s.',
|
'%s updated the blog post %s.',
|
||||||
|
|||||||
Reference in New Issue
Block a user