aboutsummaryrefslogtreecommitdiff
path: root/mod/thewire/views
diff options
context:
space:
mode:
Diffstat (limited to 'mod/thewire/views')
-rw-r--r--mod/thewire/views/default/object/thewire.php102
-rw-r--r--mod/thewire/views/default/river/object/thewire/create.php17
-rw-r--r--mod/thewire/views/default/thewire/activity_view.php48
-rw-r--r--mod/thewire/views/default/thewire/css.php136
-rw-r--r--mod/thewire/views/default/thewire/forms/add.php44
-rw-r--r--mod/thewire/views/default/thewire/notfound.php21
-rw-r--r--mod/thewire/views/default/thewire/profile_status.php28
-rw-r--r--mod/thewire/views/default/thewire/scripts/counter.js19
-rw-r--r--mod/thewire/views/default/thewire/view.php27
-rw-r--r--mod/thewire/views/default/widgets/thewire/edit.php14
-rw-r--r--mod/thewire/views/default/widgets/thewire/view.php29
11 files changed, 485 insertions, 0 deletions
diff --git a/mod/thewire/views/default/object/thewire.php b/mod/thewire/views/default/object/thewire.php
new file mode 100644
index 000000000..3e8e53124
--- /dev/null
+++ b/mod/thewire/views/default/object/thewire.php
@@ -0,0 +1,102 @@
+<?php
+
+ /**
+ * Elgg thewire note view
+ *
+ * @package ElggTheWire
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ *
+ * @question - do we want users to be able to edit thewire?
+ *
+ * @uses $vars['entity'] Optionally, the note to view
+ */
+
+ if (isset($vars['entity'])) {
+
+ $user_name = $vars['entity']->getOwnerEntity()->name;
+
+ //if the note is a reply, we need some more info
+
+ $note_url = '';
+ $note_owner = elgg_echo("thewire:notedeleted");
+
+?>
+<div class="thewire-singlepage">
+ <div class="thewire-post">
+
+ <!-- the actual shout -->
+ <div class="note_body">
+
+ <div class="thewire_icon">
+ <?php
+ echo elgg_view("profile/icon",array('entity' => $vars['entity']->getOwnerEntity(), 'size' => 'small'));
+ ?>
+ </div>
+
+ <div class="thewire_options">
+
+ <a href="<?php echo $vars['url']; ?>mod/thewire/add.php?wire_username=<?php echo $vars['entity']->getOwnerEntity()->username; ?>" class="reply"><?php echo elgg_echo('thewire:reply'); ?></a>
+ <?php
+/* //only have a reply option for main notes, not other replies
+ if($vars['entity']->parent == 0){
+ ?>
+ <a href="<?php echo $vars['url']; ?>mod/thewire/reply.php?note_id=<?php echo $vars['entity']->guid; ?>" class="reply">reply</a>
+ <?php
+ }
+*/
+ ?>
+ <div class="clearfloat"></div>
+ <?php
+
+ // if the user looking at thewire post can edit, show the delete link
+ if ($vars['entity']->canEdit()) {
+
+
+ echo "<div class='delete_note'>" . elgg_view("output/confirmlink",array(
+ 'href' => $vars['url'] . "action/thewire/delete?thewirepost=" . $vars['entity']->getGUID(),
+ 'text' => elgg_echo('delete'),
+ 'confirm' => elgg_echo('deleteconfirm'),
+ )) . "</div>";
+
+ } //end of can edit if statement
+ ?>
+ </div>
+
+
+ <?php
+ echo "<b>{$user_name}: </b>";
+
+
+ $desc = $vars['entity']->description;
+
+ $desc = preg_replace('/\@([A-Za-z0-9\_\.\-]*)/i','@<a href="' . $vars['url'] . 'pg/thewire/$1">$1</a>',$desc);
+ echo parse_urls($desc);
+ ?>
+
+
+ <div class="clearfloat"></div>
+ </div>
+ <div class="note_date">
+
+ <?php
+
+ echo elgg_echo("thewire:wired") . " " . sprintf(elgg_echo("thewire:strapline"),
+ friendly_time($vars['entity']->time_created)
+ );
+
+ echo " via " . elgg_echo($vars['entity']->method) . ".";
+
+ ?>
+ </div>
+
+
+ </div>
+</div>
+<?php
+
+ }
+
+?> \ No newline at end of file
diff --git a/mod/thewire/views/default/river/object/thewire/create.php b/mod/thewire/views/default/river/object/thewire/create.php
new file mode 100644
index 000000000..9984e99e7
--- /dev/null
+++ b/mod/thewire/views/default/river/object/thewire/create.php
@@ -0,0 +1,17 @@
+<?php
+
+ $performed_by = get_entity($vars['item']->subject_guid); // $statement->getSubject();
+ $object = get_entity($vars['item']->object_guid);
+ $url = $object->getURL();
+
+ $string = "<a href=\"{$performed_by->getURL()}\">{$performed_by->name}:</a> ";
+ $desc .= $object->description;
+ $desc = preg_replace('/\@([A-Za-z0-9\_\.\-]*)/i','@<a href="' . $vars['url'] . 'pg/thewire/$1">$1</a>',$desc);
+ $string .= parse_urls($desc);
+
+ $string .= " <span class=\"river_item_time\"><a href=\"{$vars['url']}mod/thewire/add.php?wire_username={$object->getOwnerEntity()->username}\" class=\"reply\">" . elgg_echo('thewire:reply') . "</a></span>";
+?>
+
+<?php
+ echo $string;
+?> \ No newline at end of file
diff --git a/mod/thewire/views/default/thewire/activity_view.php b/mod/thewire/views/default/thewire/activity_view.php
new file mode 100644
index 000000000..7edd64680
--- /dev/null
+++ b/mod/thewire/views/default/thewire/activity_view.php
@@ -0,0 +1,48 @@
+<?php
+
+ /**
+ * New wire post view for the activity stream
+ */
+
+ //grab the users latest from the wire
+ $latest_wire = elgg_list_entities(array('types' => 'object', 'subtypes' => 'thewire', 'owner_guid' => $_SESSION['user']->getGUID(), 'limit' => 1, 'full_view' => TRUE, 'view_type_toggle' => FALSE, 'pagination' => FALSE));
+
+?>
+
+<script>
+function textCounter(field,cntfield,maxlimit) {
+ // if too long...trim it!
+ if (field.value.length > maxlimit) {
+ field.value = field.value.substring(0, maxlimit);
+ } else {
+ // otherwise, update 'characters left' counter
+ cntfield.value = maxlimit - field.value.length;
+ }
+}
+</script>
+
+<div class="sidebarBox">
+
+ <form action="<?php echo $vars['url']; ?>action/thewire/add" method="post" name="noteForm">
+
+ <?php
+ $display .= "<h3>" . elgg_echo('thewire:newpost') . "</h3><textarea name='note' value='' onKeyDown=\"textCounter(document.noteForm.note,document.noteForm.remLen1,140)\" onKeyUp=\"textCounter(document.noteForm.note,document.noteForm.remLen1,140)\" id=\"thewire_sidebarInputBox\">{$msg}</textarea><br />";
+ $display .= "<div class='thewire_characters_remaining'><input readonly type=\"text\" name=\"remLen1\" size=\"3\" maxlength=\"3\" value=\"140\" class=\"thewire_characters_remaining_field\">";
+ echo $display;
+ echo elgg_echo("thewire:charleft") . "</div>";
+ ?>
+ <input type="hidden" name="method" value="site" />
+ <input type="hidden" name="location" value="activity" />
+ <input type="hidden" name="access_id" value="2" />
+ <input type="submit" value="<?php echo elgg_echo('save'); ?>" id="thewire_submit_button" />
+ </form>
+
+ <div class="last_wirepost">
+ <?php
+ echo $latest_wire;
+ ?>
+ </div>
+
+ <img src="<?php echo $vars['url']; ?>mod/thewire/graphics/river_icon_thewire.gif" alt="the wire" align="left" style="margin-right:5px;"/><a href="<?php echo $vars['url']; ?>mod/thewire/everyone.php" />Read the wire</a>
+
+</div> \ No newline at end of file
diff --git a/mod/thewire/views/default/thewire/css.php b/mod/thewire/views/default/thewire/css.php
new file mode 100644
index 000000000..6491af2ed
--- /dev/null
+++ b/mod/thewire/views/default/thewire/css.php
@@ -0,0 +1,136 @@
+<?php
+
+ /**
+ * Elgg thewire CSS extender
+ *
+ * @package ElggTheWire
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+?>
+/* widget */
+.thewire-singlepage {
+ margin:0 10px 0 10px;
+}
+.thewire-singlepage .note_body {
+ background: white;
+ -webkit-border-radius: 8px;
+ -moz-border-radius: 8px;
+}
+.collapsable_box_content .note_body {
+ line-height:1.2em;
+}
+.thewire-singlepage .thewire-post {
+ margin-bottom:5px;
+ background:transparent url(<?php echo $vars['url']; ?>mod/thewire/graphics/thewire_speech_bubble.gif) no-repeat right bottom;
+}
+.thewire-post {
+ background:#cccccc;
+ margin-bottom:10px;
+}
+.thewire-post .note_date {
+ font-size:90%;
+ color:#666666;
+ padding:0;
+}
+.thewire_icon {
+ float:left;
+ margin:0 8px 4px 2px;
+}
+.note_body {
+ margin:0;
+ padding:6px 4px 4px 4px;
+ min-height: 40px;
+ line-height: 1.4em;
+}
+.thewire_options {
+ float:right;
+ width:65px;
+}
+.thewire-post .reply {
+ font: 11px/100% Arial, Helvetica, sans-serif;
+ font-weight: bold;
+ color: #ffffff;
+ background:#999999;
+ border: 2px solid #999999;
+ -webkit-border-radius: 4px;
+ -moz-border-radius: 4px;
+ width: auto;
+ padding: 0 3px 2px 3px;
+ margin:0 0 5px 5px;
+ cursor: pointer;
+ float:right;
+}
+.thewire-post .reply:hover {
+ background: #4690d6;
+ border: 2px solid #4690d6;
+ color:white;
+ text-decoration: none;
+}
+.thewire-post .delete_note {
+ width:14px;
+ height:14px;
+ margin:3px 0 0 0;
+ float:right;
+}
+.thewire-post .delete_note a {
+ display:block;
+ cursor: pointer;
+ width:14px;
+ height:14px;
+ background: url("<?php echo $vars['url']; ?>_graphics/icon_customise_remove.png") no-repeat 0 0;
+ text-indent: -9000px;
+}
+.thewire-post .delete_note a:hover {
+ background-position: 0 -16px;
+}
+/* IE 6 fix */
+* html .thewire-post .delete_note a { background-position-y: 2px; }
+* html .thewire-post .delete_note a:hover { background-position-y: -14px; }
+
+.post_to_wire {
+ background: white;
+ -webkit-border-radius: 8px;
+ -moz-border-radius: 8px;
+ margin:0 10px 10px 10px;
+ padding:10px;
+}
+.post_to_wire input[type="submit"] {
+ margin:0;
+}
+
+/* reply form */
+textarea#thewire_large-textarea {
+ width: 664px;
+ height: 40px;
+ padding: 6px;
+ font-family: Arial, 'Trebuchet MS','Lucida Grande', sans-serif;
+ font-size: 100%;
+ color:#666666;
+}
+/* IE 6 fix */
+* html textarea#thewire_large-textarea {
+ width: 642px;
+}
+
+input.thewire_characters_remaining_field {
+ color:#333333;
+ border:none;
+ font-size: 100%;
+ font-weight: bold;
+ padding:0 2px 0 0;
+ margin:0;
+ text-align: right;
+ background: white;
+}
+input.thewire_characters_remaining_field:focus {
+ border:none;
+ background:white;
+}
+.thewire_characters_remaining {
+ text-align: right;
+}
+
diff --git a/mod/thewire/views/default/thewire/forms/add.php b/mod/thewire/views/default/thewire/forms/add.php
new file mode 100644
index 000000000..cf9ff15e6
--- /dev/null
+++ b/mod/thewire/views/default/thewire/forms/add.php
@@ -0,0 +1,44 @@
+<?php
+
+ /**
+ * Elgg thewire edit/add page
+ *
+ * @package ElggTheWire
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ *
+ */
+
+ $wire_user = get_input('wire_username');
+ if (!empty($wire_user)) { $msg = '@' . $wire_user . ' '; } else { $msg = ''; }
+
+?>
+<div class="post_to_wire">
+<h3><?php echo elgg_echo("thewire:doing"); ?></h3>
+<script>
+function textCounter(field,cntfield,maxlimit) {
+ // if too long...trim it!
+ if (field.value.length > maxlimit) {
+ field.value = field.value.substring(0, maxlimit);
+ } else {
+ // otherwise, update 'characters left' counter
+ cntfield.value = maxlimit - field.value.length;
+ }
+}
+</script>
+
+ <form action="<?php echo $vars['url']; ?>action/thewire/add" method="post" name="noteForm">
+ <?php
+ $display .= "<textarea name='note' value='' onKeyDown=\"textCounter(document.noteForm.note,document.noteForm.remLen1,140)\" onKeyUp=\"textCounter(document.noteForm.note,document.noteForm.remLen1,140)\" id=\"thewire_large-textarea\">{$msg}</textarea>";
+ $display .= "<div class='thewire_characters_remaining'><input readonly type=\"text\" name=\"remLen1\" size=\"3\" maxlength=\"3\" value=\"140\" class=\"thewire_characters_remaining_field\">";
+ echo $display;
+ echo elgg_echo("thewire:charleft") . "</div>";
+ echo elgg_view('input/securitytoken');
+ ?>
+ <input type="hidden" name="method" value="site" />
+ <input type="submit" value="<?php echo elgg_echo('save'); ?>" />
+ </form>
+</div>
+<?php echo elgg_view('input/urlshortener'); ?> \ No newline at end of file
diff --git a/mod/thewire/views/default/thewire/notfound.php b/mod/thewire/views/default/thewire/notfound.php
new file mode 100644
index 000000000..bc53815fb
--- /dev/null
+++ b/mod/thewire/views/default/thewire/notfound.php
@@ -0,0 +1,21 @@
+<?php
+
+ /**
+ * Elgg shout not found page
+ *
+ * @package ElggShouts
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+?>
+
+ <p>
+ <?php
+
+ echo elgg_echo("thewire:notfound");
+
+ ?>
+ </p> \ No newline at end of file
diff --git a/mod/thewire/views/default/thewire/profile_status.php b/mod/thewire/views/default/thewire/profile_status.php
new file mode 100644
index 000000000..890b8b9c3
--- /dev/null
+++ b/mod/thewire/views/default/thewire/profile_status.php
@@ -0,0 +1,28 @@
+<?php
+
+ /**
+ * New wire post view for the activity stream
+ */
+
+ $owner = $vars['entity']->guid;
+ $url_to_wire = $vars['url'] . "pg/thewire/" . $vars['entity']->username;
+
+ //grab the users latest from the wire
+ $latest_wire = elgg_get_entities(array('types' => 'object', 'subtypes' => 'thewire', 'owner_guid' => $owner, 'limit' => 1));
+
+ if($latest_wire){
+ foreach($latest_wire as $lw){
+ $content = $lw->description;
+ $time = "<span> (" . friendly_time($lw->time_created) . ")</span>";
+ }
+ }
+
+ if($latest_wire){
+ echo "<div class=\"profile_status\">";
+ echo $content;
+ if($owner == $_SESSION['user']->guid)
+ echo " <a class=\"status_update\" href=\"{$url_to_wire}\">update</a>";
+ echo $time;
+ echo "</div>";
+ }
+?> \ No newline at end of file
diff --git a/mod/thewire/views/default/thewire/scripts/counter.js b/mod/thewire/views/default/thewire/scripts/counter.js
new file mode 100644
index 000000000..3a1ebdbc5
--- /dev/null
+++ b/mod/thewire/views/default/thewire/scripts/counter.js
@@ -0,0 +1,19 @@
+// I need to move this into a JS folder for the plugin
+
+/*
+<!-- Dynamic Version by: Nannette Thacker -->
+<!-- http://www.shiningstar.net -->
+<!-- Original by : Ronnie T. Moore -->
+<!-- Web Site: The JavaScript Source -->
+<!-- Limit the number of characters per textarea -->
+*/
+
+function textCounter(field,cntfield,maxlimit) {
+ // if too long...trim it!
+ if (field.value.length > maxlimit) {
+ field.value = field.value.substring(0, maxlimit);
+ } else {
+ // otherwise, update 'characters left' counter
+ cntfield.value = maxlimit - field.value.length;
+ }
+}
diff --git a/mod/thewire/views/default/thewire/view.php b/mod/thewire/views/default/thewire/view.php
new file mode 100644
index 000000000..e63f88fc6
--- /dev/null
+++ b/mod/thewire/views/default/thewire/view.php
@@ -0,0 +1,27 @@
+<?php
+
+ /**
+ * Elgg thewire view page
+ *
+ * @package ElggTheWire
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider <info@elgg.com>
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ *
+ * @uses $vars['entity'] An array of wire notes to view
+ *
+ */
+
+ // If there are any wire notes to view, view them
+ if (is_array($vars['entity']) && sizeof($vars['entity']) > 0) {
+
+ foreach($vars['entity'] as $shout) {
+
+ echo elgg_view_entity($shout);
+
+ }
+
+ }
+
+?> \ No newline at end of file
diff --git a/mod/thewire/views/default/widgets/thewire/edit.php b/mod/thewire/views/default/widgets/thewire/edit.php
new file mode 100644
index 000000000..32a5c8bf7
--- /dev/null
+++ b/mod/thewire/views/default/widgets/thewire/edit.php
@@ -0,0 +1,14 @@
+<?php
+
+?>
+ <p>
+ <?php echo elgg_echo("thewire:num"); ?>
+ <select name="params[num_display]">
+ <option value="1" <?php if($vars['entity']->num_display == 1) echo "SELECTED"; ?>>1</option>
+ <option value="2" <?php if($vars['entity']->num_display == 2) echo "SELECTED"; ?>>2</option>
+ <option value="3" <?php if($vars['entity']->num_display == 3) echo "SELECTED"; ?>>3</option>
+ <option value="4" <?php if($vars['entity']->num_display == 4) echo "SELECTED"; ?>>4</option>
+ <option value="5" <?php if($vars['entity']->num_display == 5) echo "SELECTED"; ?>>5</option>
+ <option value="6" <?php if($vars['entity']->num_display == 6) echo "SELECTED"; ?>>6</option>
+ </select>
+ </p> \ No newline at end of file
diff --git a/mod/thewire/views/default/widgets/thewire/view.php b/mod/thewire/views/default/widgets/thewire/view.php
new file mode 100644
index 000000000..4821b854b
--- /dev/null
+++ b/mod/thewire/views/default/widgets/thewire/view.php
@@ -0,0 +1,29 @@
+
+ <?php
+
+ // Get any wire notes to display
+ // Get the current page's owner
+ $page_owner = page_owner_entity();
+ if ($page_owner === false || is_null($page_owner)) {
+ $page_owner = $_SESSION['user'];
+ set_page_owner($page_owner->getGUID());
+ }
+
+ $num = $vars['entity']->num_display;
+ if(!$num)
+ $num = 4;
+
+ $thewire = $page_owner->getObjects('thewire', $num);
+
+ // If there are any thewire to view, view them
+ if (is_array($thewire) && sizeof($thewire) > 0) {
+
+ foreach($thewire as $shout) {
+
+ echo elgg_view_entity($shout);
+
+ }
+
+ }
+
+ ?>