NOT ELEGANT and definitely NOT THE BEST solution is assigning specific master page for each function within a plugin.
I am 100% sure that there is another good way of replacing just header image, but this requires more code digging or an experienced programmer. Special plugin to re-assign header image would have been perfect.
But here are steps you can follow if you are ready to perform some modifications to achieve desired result.
---------------------------------------------------------------------------------------------------
0. Get some coffee.
1. within /master_pages/ of your template create set of .html files for each desired page. Keep file names to 1 word. Ex: generalphoto.html , generalgroups.html and etc.
Content of those files should be same as in default general.html with exception of img src URLs for <div class="ow_header_pic">. Upload desired header images into Grapics section via admin panel and then use URLs of those images for img src in custom html files.
Ex: <img class="ow_header_img" src="
http://sitename.com/foo/foo/foo.png" />
2. within ow_core/master_page.php you will need to declare your new master pages.
Ex: const TEMPLATE_GENERALPHOTO = 'generalphoto'; .
When you open the file you will see where to add those lines. Add lines for each .html file you have created.
3. within the controller of desired plugin you will need to assign custom master page for desired pages using:
OW::getDocument()->getMasterPage()->setTemplate(OW::getThemeManager()->getMasterPageTemplate(OW_MasterPage::TEMPLATE_CUTOMPFILENAMEHERE));
Ex: OW::getDocument()->getMasterPage()->setTemplate(OW::getThemeManager()->getMasterPageTemplate(OW_MasterPage::TEMPLATE_GENERALPHOTO));
Let's say if I am to use my custom master page for sitename.com/photo/viewlist/latest URL.
I will be editing:
File: ow_plugins/photo/controllers/photo.php
Function: public function viewList( array $params ){
Right after opening { of this function I will paste:
OW::getDocument()->getMasterPage()->setTemplate(OW::getThemeManager()->getMasterPageTemplate(OW_MasterPage::TEMPLATE_GENERALPHOTO));
4. Enable DEV mode in config.php file to re-generate site cache.
Go to sitename.com/photo/viewlist/latest URL . You will see that now this URL is using a custom master page with a custom header image.
5. Disable DEV mode.
---------------------------------------------------------------------------------------------------
You will need to set custom master page for each function within controller where custom header should appear. So in addition to what I did above, I will also have to add same master page for public function userPhotos( array $params ){ to show my custom html design for My Photos page.
And you need to do this with each plugin: Groups, Blogs and etc.
Once again this is not the best solution, I more then sure that if you research more you will find something easier then this.
And note: mod will be erased with platform + your template + photo plugin updates.
There are too many files involved. I would not perform this modification unless I was sure what I was doing and that I would be able to re-apply my changes after updates.
Good luck =)