Add "The Wire" to River Dashboard

Hello,

I want to be able to place the same box that you use to update your wire on an elgg install on the river dashboard.

 

So bascially, on the Rivwer Dashboard, where it says "Hello %Username%!", I would like to put just under that the box to update The Wire feature. Just above the activity stream.

 

Thanks!

  • I just installed the first one. It did not work as planned and somethings are messed up. Where can I redownload the original river dashboard? Thanks :)

  • It will be available with full elgg pack download @ http://elgg.org/download.php

  • Hi Hcted,

    We are trying to do the same thing. Please let us know if you could manage to do so!

     

    thanks!

     

     

  • as i believe in being a good community member, in return for all others hard work here's a little contribution of my own


    create copies of thewire/actions/add.php - thewire/views/default/thewire/forms/add.php -

    rename the form and action to whatever you wish - I chose pushtodash.php and riverdashadd.php respectively to differentiate between them while I figured out how it was done.

    in your theme edit views/default/thewire/css.php to add:

        .dashboard_wire-container {
            background: white;
            -webkit-border-radius: 8px;
            -moz-border-radius: 8px;
            margin:0 10px 10px 10px;
            padding:10px;  
            width:500px;
            }

        textarea#thewire_dashboard-textarea {
            width: 545px;<?/*size text area here*/?>
            height: 40px;
            padding: 6px;
            font-family: Arial, 'Trebuchet MS','Lucida Grande', sans-serif;
            font-size: 100%;
            color:#000000;

        }

        textarea#thewire_dashboard-textarea:focus {
        <?/*add text area focus styles here*/?>
        }

    in riverdashadd.php

    find the first <div class

    change the class to dashboard_wire-container

        <div class="dashboard_wire-container">

    which you defined in the css earlier :)


    next you will find :

        <form action="<?php echo $vars['url']; ?>action/thewire/add" method="post" name="noteForm">

    change the action to :

        <form action="<?php echo $vars['url']; ?>action/thewire/pushtodash" method="post" name="noteForm">

    next you will need to find where there are 2 display variables defined ($display),

    the first one contains the line:

        id=\"thewire_large-textarea\

    change this to:

        id=\"thewire_dashboard-textarea\

    now we're done with that file.


    open up pushtodash.php

    find the line :

        forward("mod/thewire/add.php");

    and change to :

        forward("mod/thewire/pushtodash.php");

    there will be another line that is the same a few lines down, repeat the process there. this is necessary, do not skip this step


    at the bottom there will be

        forward("mod/thewire/everyone.php");

    change this to

        forward("pg/dashboard/");

       
       
       
       
       
    next up is /mod/thewire/start.php


    at the VERY bottom of this you'll find a global configuration variable
            global $CONFIG;

    copy :
            register_action("thewire/add",false,$CONFIG->pluginspath . "thewire/actions/add.php");

    and change it to:
           
            register_action("thewire/pushtodash",false,$CONFIG->pluginspath . "thewire/actions/pushtodash.php");


           
    Next we'll need to actually put the wire text area into the dashboard

    in mod/thewire/index.php you'll find

        //add form
            $area2 .= elgg_view("thewire/forms/add");
           
    what we do with this is copy it into a new file and give it a quick little change to

        //add thewire dashboard form
            $area2 .= elgg_view("thewire/forms/riverdashadd");
           
    lastly we can head over to /mod/riverdashboard/index.php and add that sucker in there:


            $body = '';
            if (empty($callback)) {

                //set a view for the menu
                $area = elgg_view("riverdashboard/usermenu");

                //set a view for the wire to extend
                $area1 = elgg_view("activity/thewire");
       
                //set a view to display newest members
                $area1 .= elgg_view("riverdashboard/newestmembers");   
               
                //set a view to display a welcome message
                $body .= elgg_view("riverdashboard/welcome");
       
                //set a view to display a site wide message
                $body .= elgg_view("riverdashboard/sitemessage");
               
                //add thewire dashboard form HERE!!!!
                $body .= elgg_view("thewire/forms/riverdashadd");
            }
           
           
           
           
           
    and there you have it :) the wire on your dashboard. every post you make will push you back to the dashboard to update.

  • of course this should be made into a plugin, but this was mostly to give an explanation of where one would start, when looking to add functionality from two plugins into one.

  • I don't know if this is exactly what the original post is talking about, but I have placed a add to
    wire form at the top of the river (I call the activity Stream on our site) so you add wire posts to
    the stream without leaving the page.

    Here is a link to a page where I posted a screen shot of the our "Stream" (dashboard). Screenshot

    Site is Viewcaster.net