diff options
Diffstat (limited to 'demos/quickstart/protected/pages')
| -rw-r--r-- | demos/quickstart/protected/pages/Comments.page | 46 | ||||
| -rw-r--r-- | demos/quickstart/protected/pages/Comments.php | 76 | 
2 files changed, 122 insertions, 0 deletions
| diff --git a/demos/quickstart/protected/pages/Comments.page b/demos/quickstart/protected/pages/Comments.page new file mode 100644 index 00000000..32c7bcae --- /dev/null +++ b/demos/quickstart/protected/pages/Comments.page @@ -0,0 +1,46 @@ +<com:TContent ID="body"> +	<com:TDataList +	     ID="comments" +	     DataKeyField="id" +	     OnEditCommand="editComment" +	     OnCancelCommand="cancelEdit" +	     OnUpdateCommand="updateComment" +	     OnDeleteCommand="deleteComment" +		 OnSelectedIndexChanged="approveComment" +	     ItemStyle.BackColor="#BFCFFF" +	     AlternatingItemStyle.BackColor="#E6ECFF" +	     EditItemStyle.BackColor="lightgreen"> + +	<prop:HeaderTemplate> +	Comments awaiting approval +	</prop:HeaderTemplate> + +	<prop:ItemTemplate> +	  <span class="page"><%# $this->DataItem['page'] %></span> +	  <span class="date"> +		<com:TDateFormat Value=<%# intval($this->DataItem['date_added']) %> /> +	  </span> +	  <span class="email"> +	  <%# $this->DataItem['email'] %> +	  </span> +	<div class="comment"> +		<com:TSafeHtml> +		<%# $this->DataItem['comment']%> +		</com:TSafeHtml> +	 </div> +	  <com:TLinkButton Text="Edit" CommandName="edit" /> +	  <com:TLinkButton Text="Delete" CommandName="delete" +	       Attributes.onclick="if(!confirm('Are you sure?')) return false;" /> +	  <com:TLinkButton Text="Approve" CommandName="select" /> +	</prop:ItemTemplate> + +	<prop:EditItemTemplate> +		<com:TTextBox ID="email" Text=<%# $this->DataItem['email'] %> /> +		<com:TTextBox ID="page" Text=<%# $this->DataItem['page'] %> /> +		<com:TTextBox ID="content" Text=<%# $this->DataItem['comment'] %> TextMode="MultiLine"/> +	    <com:TLinkButton Text="Save" CommandName="update" /> +	    <com:TLinkButton Text="Cancel" CommandName="cancel" /> +	</prop:EditItemTemplate> + +	</com:TDataList> +</com:TContent>
\ No newline at end of file diff --git a/demos/quickstart/protected/pages/Comments.php b/demos/quickstart/protected/pages/Comments.php new file mode 100644 index 00000000..7af70ece --- /dev/null +++ b/demos/quickstart/protected/pages/Comments.php @@ -0,0 +1,76 @@ +<?php + +Prado::using('System.I18N.*'); + +/** + * Comments class. + * + * @author Wei Zhuo <weizhuo[at]gmail[dot]com> + * @version : $  Sat May 27 20:23:00 AZOST 2006 $ + * @package Demo.Quickstart + * @since 3.0 + */ +class Comments extends TPage +{ +	private $_quickstart; +	 +	public function onLoad($param) +	{ +		parent::onLoad($param); +		$this->_quickstart = new QuickStartComments; +		if(!$this->getIsPostBack()) +			$this->refreshData(); +	} +	 +	protected function refreshData() +	{ +		$this->comments->setDataSource($this->_quickstart->getQuequedComments()); +		$this->comments->dataBind();		 +	} +	 +	public function approveComment($sender, $param) +	{ +		$ID = $this->comments->DataKeys[$this->comments->SelectedItemIndex]; +		$this->_quickstart->approveComment($ID); +		$this->refreshData(); +		$this->comments->SelectedItemIndex=-1; +	} +	 +	public function editComment($sender, $param) +	{ +		$this->comments->SelectedItemIndex=-1; +		$this->comments->EditItemIndex=$param->Item->ItemIndex; +		$this->refreshData();	 +	} +	 +	public function cancelEdit($sender, $param) +	{ +		$this->comments->SelectedItemIndex=-1; +		$this->comments->EditItemIndex=-1; +		$this->refreshData(); +	} +	 +	public function deleteComment($sender, $param) +	{ +		$ID = $this->comments->DataKeys[$param->Item->ItemIndex]; +		$this->_quickstart->deleteComment($ID); +		$this->comments->SelectedItemIndex=-1; +		$this->comments->EditItemIndex=-1; +		$this->refreshData(); +	} +	 +	public function updateComment($sender, $param) +	{ +		$item=$param->Item; +		$this->_quickstart->updateComment( +			$this->comments->DataKeys[$item->ItemIndex], +			$item->page->Text, +			$item->email->Text, +			$item->content->Text); +			 +		$this->comments->EditItemIndex=-1; +		$this->refreshData(); +	} +} + +?>
\ No newline at end of file | 
