How does one go about setting priority for widgets placed onto the profile page? For instance, right now if I turn on my Mp3 component it shows up at the top and drops my new component's widget down one slot. Need it to come back up. How so?
As for getting a little more in depth understanding about hooks prioritization you should start at line 124 of ossn.lib.system.php
function ossn_add_hook($hook, $type, $callback, $priority = 200) {
That is, if you omit the 4th parameter when adding hooks like
ossn_add_hook('profile', 'modules', 'function_of_component_ABC');
ossn_add_hook('profile', 'modules', 'function_of_component_DEF');
both hooks will get the same default priority of 200, and the order of appearance solely depends on the order the components have been installed (see your components list at the admin back end).
Thus, if component ABC was installed prior to component DEF you'll get a widget sequence like
Friends
Photo Albums
ABC
DEF
Checking the com files of OssnProfile and OssnPhotos gives, that their hooks have no explicit priority, too - so up to this point all four are running with priority = 200 with the earlier installed Ossn's core components on top.
Okay, so what to do if you want your ABC component's widget to appear before the Friends widget and DEF to be first one?
You would simply need to add explicit priority values smaller than 200 like
ossn_add_hook('profile', 'modules', 'function_of_component_ABC', 199);
ossn_add_hook('profile', 'modules', 'function_of_component_DEF', 198);
This will change the widget's sequence to
DEF
ABC
Friends
Photo Albums
If widget is created using component php (not javascript) then it is easy as example for profile photos widget
in your component init
<?php
ossn_register_callback('ossn', 'init', function(){
ossn_unset_hook('profile', 'modules', 'profile_modules_albums');
ossn_add_hook('profile', 'modules', 'profile_modules_albums', 1);
});
I've had the same question. How can we do this?
Due to the many requests in the past for additonal features and components we have decided to develope a premium version. Features like Hashtags, Videos, Polls, Events, Stories, Link Preview, etc included in it.