aboutsummaryrefslogtreecommitdiff
path: root/mod/messageboard/views/default/widgets/messageboard/view.php
blob: 9a0d8e2513842a7c5360b1ffbdd967a9f003b70a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php

     /**
	 * Elgg messageboard plugin view page
	 *
	 * @todo let users choose how many messages they want displayed
	 *
	 * @package ElggMessageBoard
	 * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
	 * @author Curverider Ltd <info@elgg.com>
	 * @copyright Curverider Ltd 2008-2010
	 * @link http://elgg.com/
	 */
	 
	 // a couple of required variables
	 
	 //get the full page owner entity
     $entity = get_entity(page_owner());
     
     //the number of message to display
     $num_display = $vars['entity']->num_display;
     
     //if no num set, set to one
     if(!$num_display)
        $num_display = 5;

//Just the loggedin user can send messages        
if(isloggedin()){        
?>
	<script type="text/JavaScript">
	$(document).ready(function(){
	     
	    $("#postit").click(function(){
	        
	        //display the ajax loading gif at the start of the function call
	        //$('#loader').html('<img src="<?php echo $vars['url']; ?>_graphics/ajax_loader.gif" />');
	        $('#loader').html('<?php echo elgg_view('ajax/loader',array('slashes' => true)); ?>');
	        
	        //load the results back into the message board contents and remove the loading gif
	        //remember that the actual div being populated is determined on views/default/messageboard/messageboard.php     
	        $("#messageboard_wrapper").load("<?php echo $vars['url']; ?>mod/messageboard/ajax_endpoint/load.php", {messageboard_content:$("[name=message_content]").val(), pageOwner:$("[name=pageOwner]").val(), numToDisplay:<?php echo $num_display; ?>}, function(){
	                    $('#loader').empty(); // remove the loading gif
	                    $('[name=message_content]').val(''); // clear the input textarea
	                }); //end 
	                 
	    }); // end of the main click function
	        
	}); //end of the document .ready function   
	</script>
	
	<div id="mb_input_wrapper"><!-- start of mb_input_wrapper div -->
	
	    <!-- message textarea -->
	    <textarea name="message_content" id="testing" value="" class="input_textarea"></textarea>
	   
	    <!-- the person posting an item on the message board -->
	    <input type="hidden" name="guid" value="<?php echo $_SESSION['guid']; ?>" class="guid"  />
	   
	    <!-- the page owner, this will be the profile owner -->
	    <input type="hidden" name="pageOwner" value="<?php echo page_owner(); ?>" class="pageOwner"  />
	   
	    <!-- submit button -->
	    <input type="submit" id="postit" value="<?php echo elgg_echo('messageboard:postit'); ?>">
	    
	    <!-- menu options -->
	    <div id="messageboard_widget_menu">
	        <a href="<?php echo $vars['url']; ?>pg/messageboard/<?php echo get_entity(page_owner())->username; ?>"><?php echo elgg_echo("messageboard:viewall"); ?></a>
	    </div>
	    
	    <!-- loading graphic -->
	    <div id="loader" class="loading">  </div>
	
	</div><!-- end of mb_input_wrapper div -->

<?php
} //	if(isloggedin())
    
        //this for the first time the page loads, grab the latest 5 messages.
		$contents = $entity->getAnnotations('messageboard', $num_display, 0, 'desc');
		
		//as long as there is some content to display, display it
		if (!empty($contents)) {
    		
    		echo elgg_view('messageboard/messageboard',array('annotation' => $contents));
		
		} else {
    		
    		//put the required div on the page for the first message
    		echo "<div id=\"messageboard_wrapper\"></div>";
	
    	}
	
?>