Facebook Theme v1.3

Release Notes

Thanks to @imoni for his many contributions and willingness to have them incorporated into the original version.

Following changes:

  • Incorporates many of imoni's changes 
  • Adds support for tidypics 
  • Updates manifest (might help with messageboard problem?)
  • Updates topbar (now floats, single color, etc.)
  • Fixes header login problem in 1.8.1 (may no longer work in 1.8.0)
  • Adds icons to several menu items

Just as an update, I haven't been able to fix the messageboard problem, but I also think it may be a server config issue/messageboard issue. I haven't personally been able to reproduce it, for instance, so I'm not sure the fault lies with this theme.

  • When you unlike an item you get the error: "There was a problem removing your like" 

    to fix it change: (1.8.3)

    'href' => "action/likes/delete?annotation_id={$likes[0]->id}",

    change to

    'href' => "action/likes/delete?guid={$object->getGUID()}",

  • When you unlike an item you get the error: "There was a problem removing your like" 

    to fix it change: (1.8.3)

    'href' => "action/likes/delete?annotation_id={$likes[0]->id}",

    change to

    'href' => "action/likes/delete?guid={$object->getGUID()}",

    Elgg 1.8.3

    I tried to change annotation_id={$likes[0]->id}" with guid={$object->getGUID()}" in mod\facebook_theme\views\default\likes\river_footer.php but did not work...any idea on how to solve this issue?

    thanks


  • @fasenderos Change annotation_id={$likes[0]->id}" with guid={$object->getGUID()}" in mod\facebook_theme\start.php too

  • Hi

    When I write on group wall I get bellow error:

    Fatal Error.

    Redirect could not be issued due to headers already being sent. Halting execution for security. Search http://docs.elgg.org/ for more information.

    Please Help Me


  • @Ahmed Al Dhanhani How did you find that one.. Good fix... I was looking and could not locate the issue...

  • @Hooman Can you post how you were able to produce this error. I am not able to create it... I would like to try to fix it.

  • @RVR thanks

    Hi

    When I write on group wall I get bellow error:

    Fatal Error.

    Redirect could not be issued due to headers already being sent. Halting execution for security. Search http://docs.elgg.org/ for more information.

    Please Help Me

    same error...

    @sequan to produce this error, create a group and then post something in the group wall...thanks in advance

  • @fasenderos, Hooman

    Find return; in mod\facebook_theme\start.php and change with return true;

  • Cash says

    find the function facebook_theme_profile_page_handler() in start.php and change all the "return;" statements to "return true;"

  • @RVR thanks for reply and for your patience... :)

    in mod\facebook_theme\start.php i have change this:

    function facebook_theme_profile_page_handler($page) {

    global $CONFIG;

     

    if (isset($page[0])) {

    $username = $page[0];

    $user = get_user_by_username($username);

    elgg_set_page_owner_guid($user->guid);

    }

     

    // short circuit if invalid or banned username

    if (!$user || ($user->isBanned() && !elgg_is_admin_logged_in())) {

    register_error(elgg_echo('profile:notfound'));

    forward();

    }

     

    $action = NULL;

    if (isset($page[1])) {

    $action = $page[1];

    }

     

    switch ($action) {

    case 'edit':

    // use for the core profile edit page

    require $CONFIG->path . 'pages/profile/edit.php';

    return;

    break;

     

    case 'info':

    require dirname(__FILE__) . '/pages/profile/info.php';

    return;

     

    case 'wall':

    require dirname(__FILE__) . '/pages/profile/wall.php';

    return;

     

    default:

    if (elgg_is_logged_in()) {

    require dirname(__FILE__) . '/pages/profile/wall.php';

    } else {

    require dirname(__FILE__) . '/pages/profile/info.php';

    }

     

    return;

    }

    with this:
    function facebook_theme_profile_page_handler($page) {
    global $CONFIG;
    if (isset($page[0])) {
    $username = $page[0];
    $user = get_user_by_username($username);
    elgg_set_page_owner_guid($user->guid);
    }
    // short circuit if invalid or banned username
    if (!$user || ($user->isBanned() && !elgg_is_admin_logged_in())) {
    register_error(elgg_echo('profile:notfound'));
    forward();
    }
    $action = NULL;
    if (isset($page[1])) {
    $action = $page[1];
    }
    switch ($action) {
    case 'edit':
    // use for the core profile edit page
    require $CONFIG->path . 'pages/profile/edit.php';
    return true;
    break;
    case 'info':
    require dirname(__FILE__) . '/pages/profile/info.php';
    return true;
    case 'wall':
    require dirname(__FILE__) . '/pages/profile/wall.php';
    return true;
    default:
    if (elgg_is_logged_in()) {
    require dirname(__FILE__) . '/pages/profile/wall.php';
    } else {
    require dirname(__FILE__) . '/pages/profile/info.php';
    }
    return true;
    }
    the problem remains the same...
  • Add

    elgg_register_ajax_view('thewire/composer');
    elgg_register_ajax_view('messageboard/composer');
    elgg_register_ajax_view('blog/composer');
    elgg_register_ajax_view('file/composer');
    elgg_register_ajax_view('bookmarks/composer');

    in function facebook_theme_init()  in start.php

  • @RVR i had already added that code to solve another issue

     

  • Whats that?

     

    Fatal Error.

    Redirect could not be issued due to headers already being sent. Halting execution for security. Search http://docs.elgg.org/ for more information

  • I GOT WIDGETS ON THE USERS PROFILE FOR THIS THEME! AND IT LOOKS GREAT!!!

    open /mod/facebook_theme/views/default/page/elements/owner_block.php

    when the php file ends at: (this is the last item in the file)

    elgg_pop_context();

    ADD THIS UNDER IT!

    ?></a>
    <?php
    /**
     * Elgg widgets layout
     *
     * @uses $vars['content']          Optional display box at the top of layout
     * @uses $vars['num_columns']      Number of widget columns for this layout (3)
     * @uses $vars['show_add_widgets'] Display the add widgets button and panel (true)
     * @uses $vars['exact_match']      Widgets must match the current context (false)
     * @uses $vars['show_access']      Show the access control (true)
     */

    $num_columns = elgg_extract('num_columns', $vars, 1);
    $show_add_widgets = elgg_extract('show_add_widgets', $vars, true);
    $exact_match = elgg_extract('exact_match', $vars, false);
    $show_access = elgg_extract('show_access', $vars, true);

    $owner = elgg_get_page_owner_entity();

    $widget_types = elgg_get_widget_types();

    $context = elgg_get_context();
    elgg_push_context('widgets');

    $widgets = elgg_get_widgets($owner->guid, $context);

     

     

    $widget_class = "elgg-col-1of{$num_columns}";
    for ($column_index = 1; $column_index <= $num_columns; $column_index++) {
     if (isset($widgets[$column_index])) {
      $column_widgets = $widgets[$column_index];
     } else {
      $column_widgets = array();
     }

     echo "<div class=\"$widget_class elgg-widgets\" id=\"elgg-widget-col-$column_index\">";
     if (sizeof($column_widgets) > 0) {
      foreach ($column_widgets as $widget) {
       if (array_key_exists($widget->handler, $widget_types)) {
        echo elgg_view_entity($widget, array('show_access' => $show_access));
       }
      }
     }
     echo '</div>';
    }

    elgg_pop_context();

    echo elgg_view('graphics/ajax_loader', array('id' => 'elgg-widget-loader'));

    my widgets are all default widgets so there is no option for the user to add widgets, i dropped the facebook theme and used the normal theme and added widgets to every profile with my admin account then made default widgets for when a new user joins and reactivated facebook theme again....done! :)

  • In /mod/facebook_theme/views/default/messageboard/composer.php

    The last line

    echo elgg_view_form('messageboard/add', array(), $vars);

    I changed it to  

    elgg_view_form('messageboard/add'array('name' => 'elgg-messageboard'));


    I am trying to exactly figure out why REFERER was being set to -1. That is why the error appeared. But for now this appears to fix the 

    Fatal Error.

    Redirect could not be issued due to headers already being sent. Halting execution for security. Search http://docs.elgg.org/ for more information

    If someone has a detailed explanation please provide. I am still learning the details of Elgg but I was able to xdebug till I got there. I would like to learn more....

  • If you use the developer plugin and would like to see the messages (if there are any). You need to change the following:

    mod/facebook/default/page/default.php change

    </body>

    to 

    <?php echo elgg_view('page/elements/foot'); ?>

    </body>

    Enjoy.....

  • newbie question...i have set elgg as a private site.. so if i'm not a logged in user, the home page is a blank page with only the login form...what file i have to edit to modify that home page? thanks in advance

  • use the custom index plugin and go to \Public HTML\mod\custom_index\views\default\page\layouts/custom_index.php and edit it,

    and btw personally i like to set my site fully public, then give the user the option to make it public, private or for friends, this way u will always have users that set stuff to private but u will also have alot of users that wont care and they will set it public, thus your custom index will have members, files, photos bla bla bla, info filling it in a nut-shell, if u need help let me know, u can do alot with that custom index!

  • much respect for admitting being a noob! takes alot, but unlike xbox live, people help noobs around here lol

  • hi jpardee, thanks for reply  :)

    use the custom index plugin and go to \Public HTML\mod\custom_index\views\default\page\layouts/custom_index.php and edit it,

    and btw personally i like to set my site fully public, then give the user the option to make it public, private or for friends, this way u will always have users that set stuff to private but u will also have alot of users that wont care and they will set it public, thus your custom index will have members, files, photos bla bla bla, info filling it in a nut-shell, if u need help let me know, u can do alot with that custom index!

    probably I didnt explain well...in elgg advanced setting i have enable the option "Restrict pages to logged-in users".... if you enable that option, the custom_index.php work only if you login, but if logout from the site you will be redirect to a blank page with only a login/register form....i need to edit that blank page

    p.s. sorry for my english, i'm using google translate :)

  • I got it...if there is anyone interested, here are the files to edit:

    /views/default/page/walled_garden.php

    /views/default/css/walled_garden.php

    But Pay Attention...these files are part of the elgg's core...so edit at your own risk :)

  • First of all I LOVE THIS THEME!! But I am having a few problems I can't seem to fix, my knowledge is quite limited but am eager to learn. Here are my first 2 problems. Since this is mainly a site for family and close friends there is no big hurry to get this fixed.

     

     

  • Ok. I guess I can't just paste a screenshot? I will have to upload to the server or something first :~(

  • Users can not post on each other profile, site gives Fatal Error

    Which plugin do I need or where is the problem, I have no idea as I am new to elgg. Please help me here is the screen shot

    image

Evan Winslow

Software Engineer at Google. Elgg enthusiast. I wrote the Javascript and CSS frameworks for 1.8.

Stats

  • Category: Themes
  • License: GNU General Public License (GPL) version 2
  • Updated: 2014-11-17
  • Downloads: 64688
  • Recommendations: 113

Other Projects

View Evan Winslow's plugins