The Joomla! Forum ™



Forum rules


Forum Rules
Absolute Beginner's Guide to Joomla! <-- please read before posting.
Forum Post Assistant - If you are serious about wanting help, you should use this tool to help you post.



Post new topic Reply to topic  [ 41 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Tue Aug 07, 2007 8:41 pm 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
Oh I know, this topic has been beaten to death and discussed many many times. The reason I am reposting this is to find new solutions to an old problem. Yes I've also looked at the available extensions. I've noticed they clone installations, no I don't want that.

We have Joomla! 1.5 with a much nicer API than J1.0.* we no longer have the "$mosConfig_live_site" variable trying to lock down a joomla installation to a single domain, and many many great flexibilities as a result of the new J1.5 architecture.

Has anyone thought of a good way to host multiple websites ( 300+ ) within a single joomla installation?

- Looking from 10,000 feet I am thinking perhaps generating the configuration.php file dynamically, and load the right config set of values based on the "SITENAME" in http://www.SITENAME.com and using some mod_rewrite tricks

- I wish media manager would have stored the files in the database

- we could use a separate joomla installation with an installed components for managing the dynamically generated configuration.php file, or replace the current com_config component to manage a list of configurations in jos_configuration table rather than configuration.php file.

Any other input from your side is highly appreciated.

Thank you,

Rastin

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Last edited by Aristocrat on Tue Aug 07, 2007 9:17 pm, edited 1 time in total.

Top
 Profile  
 
PostPosted: Wed Aug 08, 2007 1:48 am 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Mar 02, 2006 9:41 am
Posts: 218
Location: Santo Domingo, Dominican Republic
I guess you are suggesting 300+ 'unique' independent websites but pumping all the same content, right?

As the bold difference among websites are its configuration.php and templates, some component is needed to dance with the webserver for handling the domains request for each Joomla! instance, ie, configuration files, templates and modules position/estatus/CSS for each domain interface.

This component should be a rider of Joomla! API in order to allow transparent Joomla! upgrades, of course storing all its assets on the database.

If you are not going to serve the same content at all, a deep hack on Joomla! core and database will be necessary given the actual lack of advanced Knowledge Management in the application architecture at content-level (in other words, each content item are attached to a sections/categories paradigm). A hack of this scale IMHO sounds to a very different CMS, not Joomla! CMS itself but powered by the Joomla! Framework.

Interesting challenge.

Greetings...

_________________
Nicht mehr!
Los acentos en castellano omitidos intencionalmente. | Les accents et les signes en français omis intentionnellement.
http://bio.moisesjafet.com


Top
 Profile  
 
PostPosted: Wed Aug 08, 2007 3:28 am 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
well looking further into it, perhaps if com_config could manage a list of configurations, instead of a single configuration file, a large list of websites with unique content could be hosted within one code base.

And also in the front-end, system needs to read the URI and decide which configuration to load, there will be some performance price too.

Of course the Media Manager would still store the images within the images folder.
and there will be a limited list of templates to choose from

There are cases that several hundred users need to have individual websites, but all of them belong to the same organization and follow the same identity guidelines, meaning that they can all use the same set of templates and files. This case is quite common in the corporate world.

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Top
 Profile  
 
PostPosted: Wed Aug 08, 2007 4:11 am 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Mar 02, 2006 9:41 am
Posts: 218
Location: Santo Domingo, Dominican Republic
Actually I am in the study phase of a Joomla!-powered portal solution for a real state corporation, in order to provide personalized subdomain websites to their individual partners/sales force (the website owner); over 300+ scenario. This solution has limited amount of pre-configured templates and fixed modules/components so no further personalization are allowed in the website owner side.

As a turn key solution, the owner will commit content by emailing it, not by the classic back end workflow. Some modules' content will be feed up directly from the corporation headquarters, so the owner duty only are to write the content + illustrations + email it.

Obviously, at some point, some webmaster hands will be necessary for websites  house keeping and global infrastructure maintenance. As you can see, cloning is not an option for this project.

So, for my case, it is very important to not alter core files mainly for upgrade issues and security.

At this moment my mindset  is to construct some front end application webserver-Joomla! drone to handle each "virtual website" without hacking Joomla! itself. This drone also will fetch the emailed content, make all the SQL, and so on.

Actually OpenSEF has multisite capability without altering core files, been a good example of the drone type I am thinking on.

Saludos...

_________________
Nicht mehr!
Los acentos en castellano omitidos intencionalmente. | Les accents et les signes en français omis intentionnellement.
http://bio.moisesjafet.com


Top
 Profile  
 
PostPosted: Wed Aug 08, 2007 4:53 am 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
moijafcor wrote:
Actually I am in the study phase of a Joomla!-powered portal solution for a real state corporation, in order to provide personalized subdomain websites to their individual partners/sales force (the website owner); over 300+ scenario. This solution has limited amount of pre-configured templates and fixed modules/components so no further personalization are allowed in the website owner side.


As a turn key solution, the owner will commit content by emailing it, not by the classic back end workflow. Some modules' content will be feed up directly from the corporation headquarters, so the owner duty only are to write the content + illustrations + email it.

Obviously, at some point, some webmaster hands will be necessary for websites  house keeping and global infrastructure maintenance. As you can see, cloning is not an option for this project.


I'm on the same boat too. except that site owners aren't maintaining the site. Every change has to be approved by the marketing department, and then it can be published. In this case the service has been outsourced to my client. I am debating whether to go for having a list of config files, or build a list of custom profiles which resemble virtual websites and build a setup so every user's URL could point to their profile. Fortunately all the profiles ( virtual websites ) have somewhat similar attributes.


Quote:
So, for my case, it is very important to not alter core files mainly for upgrade issues and security.


Yes core files have to stay intact so system could be upgraded or patched in the future.

Quote:
At this moment my mindset  is to construct some front end application webserver-Joomla! drone to handle each "virtual website" without hacking Joomla! itself. This drone also will fetch the emailed content, make all the SQL, and so on.


Interesting! Somewhat similar, except the email part.

Quote:
Actually OpenSEF has multisite capability without altering core files, been a good example of the drone type I am thinking on.


I didn't know that, I'll have a look at it, thank you for pointing that out.


Thank you moijafcor!

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Top
 Profile  
 
PostPosted: Wed Aug 08, 2007 5:32 am 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Mar 02, 2006 9:41 am
Posts: 218
Location: Santo Domingo, Dominican Republic
Quote:
Thank you moijafcor!


By the contrary, thank you and the other guys in the Development Workgroup for giving us such a product like Joomla! is. Never before had said officially thank you to you all, so please convey to your teammates my humble and deep gratitude.

I would be honored to directly pay some to the Joomla! community providing some work hours to the project, but the workgroups I can be more useful in are now closed for new people.

Again, thank you very much...!

Greetings.

_________________
Nicht mehr!
Los acentos en castellano omitidos intencionalmente. | Les accents et les signes en français omis intentionnellement.
http://bio.moisesjafet.com


Top
 Profile  
 
PostPosted: Mon Aug 20, 2007 6:31 pm 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
You're most welcome, I think the real credit should really go to the core developers, I am amazed how much talent and creativity is in that team and still learning from their everyday interactions.

Going back to the topic of hosting multiple sites ( profiles ) within one application I have done some research. There is a good chance that my client agrees to release the generic version of extensions under the GPL if I give him the lower developer's rate. I wonder how many other developers here are willing to collaborate with me to build these extensions within the next 5 month ( 10 - 20 hours a month ) and we could release them under GPL for everybody else to use.

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Top
 Profile  
 
PostPosted: Tue Aug 28, 2007 4:33 am 
Joomla! Champion
Joomla! Champion
Offline

Joined: Wed Nov 22, 2006 3:35 pm
Posts: 6896
Location: Nebraska
Rastin -

You are right - credit should go to the core developers - and since you *are* one of those, I thank *you*, too!

I wanted to direct your attention to the thread Modifying 1.5 for Multiple Sites where StinkBug is looking for people to do this, as well.

All the best!
Amy :)

_________________
http://Twitter.com/AmyStephen
http://www.alltogetherasawhole.org/


Top
 Profile  
 
PostPosted: Tue Aug 28, 2007 4:37 am 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
Thank you Amy! you are a Gem!

:)

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Last edited by Aristocrat on Tue Aug 28, 2007 4:47 am, edited 1 time in total.

Top
 Profile  
 
PostPosted: Tue Aug 28, 2007 8:03 pm 
User avatar
Joomla! Apprentice
Joomla! Apprentice
Offline

Joined: Wed Jun 20, 2007 8:29 pm
Posts: 20
Quote:
- we could use a separate joomla installation with an installed components for managing the dynamically generated configuration.php file, or replace the current com_config component to manage a list of configurations in jos_configuration table rather than configuration.php file.


I don't know if you have reviewed my code that I attached on the post that Amy mentioned, but here it is again, just in case anyone is interested.  Keep in mind though that it isn't fully working correctly.  In these modificaitons I have attempted to make the configuration.php dynamic.  Not sure if you guys are still interested in heading that direction, but either way, I'm willing to help with this however I can.

I think this is something that many corporations would find really useful and it would be great for Joomla to have.


You do not have the required permissions to view the files attached to this post.


Top
 Profile  
 
PostPosted: Tue Aug 28, 2007 8:57 pm 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
I looked at your code and I like your approach Stinkbug, although I'm still not sure how we're going to get joomla to operate on a list of configuration records.

1. I guess we could install the component
2. at the moment of installation a copy of the configuration file is saved as a row in the configuration table. Configuration table should not be a part of Joomla's list of tables with #__tablename, it should be a constant mj_configuration ( mu for multiple joomla)
3. we also need a system plugin that overwrites the joomla's default configuration file with the one loaded from the database, assuming it is possible.
4. then we sign out and each time that we access the installation of Joomla using a new URL ( http://www.johnsmith.com, http://www.cathrinemayer.com ) we need to reinstall joomla on tables with a different #_ prefix. ( it would be a mess to maintain too )

That will give us N number of completely separate websites which share the same code base and extensions.



The other scenario that I am getting a lot of request for is maintaining a list of cookie cutter web profiles that each could be accessed using a unique ULR assigned to them. Those list of profiles could be generated using a joomla component and some mod_rewrite, and .htaccess tricks.

This way we could use joomla's default features to maintain content that are similar among all the sites, and use the cookie cutter profiles for custom content unique to each profile. This solution is ideal for many organizations who have one main office and many offices, and also many employees working for one or many offices. ( i.e. financial advisors, real estate agents, marketing groups, ... )

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Last edited by Aristocrat on Tue Aug 28, 2007 9:32 pm, edited 1 time in total.

Top
 Profile  
 
PostPosted: Tue Aug 28, 2007 9:23 pm 
Joomla! Champion
Joomla! Champion
Offline

Joined: Wed Nov 22, 2006 3:35 pm
Posts: 6896
Location: Nebraska
Aristocrat wrote:
This way we could use joomla's default features to maintain content that are similar among all the sites, and use the cookie cutter profiles for custom content unique to each profile. This solution is ideal for many organizations who have one main office and many offices with many employees working for one or many offices. ( i.e. financial advisors, real estate agents, marketing groups, ... )


... universities and many colleges, school districts and individual schools, state agencies with many departments, small communities with small businesses, churches, community groups...

_________________
http://Twitter.com/AmyStephen
http://www.alltogetherasawhole.org/


Top
 Profile  
 
PostPosted: Tue Aug 28, 2007 9:38 pm 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
That's right Amy!

:)

and the other question is who has the authority to manage the content. In some organizations all content need to be approved by the upper management, and be managed by webmaster(s). In that case web profiles don't have to relate to the user table.

Otherwise, each web profile can have a one-to-one relation to user table records. I believe in that case we will be falling into a community builder application category, which is btw the other new project I am working on  :D as set of extensions based on the new framework for building online social networking sites. It will be released under GPL too.  :pop

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Top
 Profile  
 
PostPosted: Tue Aug 28, 2007 9:50 pm 
Joomla! Champion
Joomla! Champion
Offline

Joined: Wed Nov 22, 2006 3:35 pm
Posts: 6896
Location: Nebraska
SWEET! Please let me know will the social networking application will be newsworthy.  8)

Andrew has the ACL piece started, maybe it can snap in to this permissions/workflow situation you are speaking about.

There are a group of us, Rasten, who want to learn how to develop Joomla! extensions and are working towards that goal in the Joomla! 101 Coding forum. If this elephant can be broken down into beginner bite-sized pieces, there will be people, like me, who would try to help. I'm going to mention it to some others. There are also some who are more experienced, too.

This is very exciting. With your leadership, this will happen!

Carry on...good dialog and ideas!
Amy :)

_________________
http://Twitter.com/AmyStephen
http://www.alltogetherasawhole.org/


Top
 Profile  
 
PostPosted: Wed Aug 29, 2007 8:54 am 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Mar 02, 2006 9:41 am
Posts: 218
Location: Santo Domingo, Dominican Republic
I guess the multiple templates issue can be handled by some class who reads each template combo files and put its data on the database as its cache resource. This way you have a single Joomla! index file calling this class constructor, coupled with Joomla!' modules|components output to be parsed by the user agent.

[Please note I wrote 'user agent' because at corporate level you may expect to have a website inside the website's hive for devices other than a standard computer browser, so you should have data parsing capability for specific user agents maybe domain-oriented and/or CSS media type selectable].

In this same way some other class can handle the multiple Joomla! configuration files, taking its variables from a database table updated by a 'website configuration component' on the "original" Joomla! backend, so the configuration.php file just feature the 'configuration constructor' to dance with mod_rewrite/HTTP headers on the server layer.

Please note mod_rewrite based solutions will only apply to Apache powered webservers, so IMHO an universal solution can be more friendly-looking for some corporate IT bureaucrats.

@Amy...

It is really beautiful to see the truly amazing enthusiasm Joomla! Project is able to produce on so much wonderful people, e.g. like you (my singularization based on your forum post readings for so long time) up to the point to drive a lot of busy-productive people to start an endeavor like Joomla! 101 Coding. Congratulations and kudos for you all on the Joomla! Project team.

Saludos afectuosos para todos...

Moises.

_________________
Nicht mehr!
Los acentos en castellano omitidos intencionalmente. | Les accents et les signes en français omis intentionnellement.
http://bio.moisesjafet.com


Top
 Profile  
 
PostPosted: Wed Aug 29, 2007 3:04 pm 
User avatar
Joomla! Guru
Joomla! Guru
Offline

Joined: Thu Aug 18, 2005 6:14 pm
Posts: 751
Location: Ohio-USA
@amy
long time no see!

back on topic...
very interested to see the results of this.

_________________
remember pillage...then burn.


Top
 Profile  
 
PostPosted: Wed Aug 29, 2007 3:25 pm 
User avatar
Joomla! Apprentice
Joomla! Apprentice
Offline

Joined: Wed Jun 20, 2007 8:29 pm
Posts: 20
On the topic of permissions and who has authority to manage the content...

For every company there is probably an administrator who has control over all content.  However, in a large company like the one I work for managing all that content is hardly doable with our small team.  That's why we're looking for something that we can grant permissions to different groups within the company and they can add/update/edit content for whatever they are given permission to update.  Nothing more.  For example, if the Human Resources department needs to post new insurance docs on an intranet for all the employees, Anyone in that department who has permission to do that, can.  However, they couldn't edit anything else on the site. 

The workflow management system could kick off an email to that persons manager notifying them that something needs to be approved.  That persons manager would then approve the changes and at that point it would be made public.  We would also want something in place to allow multiple levels of approvement.  So if we wanted we could also add the administrator to that workflow management and after that persons manger has approved it, the administrator would get notified and he would have to approve it before it would be made public.

I don't how all this would work from a design and usability stand point just yet or the best way to accomplish this on the back end.  I do know that this is something that many larger companies would find useful.

Honestly, I really don't think that this kind of permissions in Joomla would be to difficult to add.  From looking at the system so far, I think all that would have to be done is to add Categories and Sections into the permissions checking.  Because things like a Human Resources Department would be a section, right?  Other common things on websites is and About page and Contact page.  Those are things that would be sections too, I think.  So if permissions was granted to a user to only edit a certain section or category, I believe that would handle the scenario that I mentioned above.  Workflow management would be a different story.


Top
 Profile  
 
PostPosted: Wed Aug 29, 2007 9:57 pm 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
AmyStephen wrote:
SWEET! Please let me know will the social networking application will be newsworthy.  8)


Oh totally, I am so excited about it myself that have pinned the UML diagrams to my bedroom wall so I can see them every morning.

I know there are at least 2 other projects happening for Joomla http://www.Joomlapolis.com and http://www.Blobble.net I think it is great that more focus on building online communities is coming together with the Joomla project.

I think I should start a whole new topic about this project and not clutter this one. As soon as my first component is ready to be released ( an extended user profile manager ) I will make a post and see if there are more developers interested to hop in, so we could start building the rest of the extensions.


AmyStephen wrote:
Andrew has the ACL piece started, maybe it can snap in to this permissions/workflow situation you are speaking about.


Perhaps we could, I would like to see the code. I know Andrew is a brilliant system designer.




AmyStephen wrote:
There are a group of us, Rasten, who want to learn how to develop Joomla! extensions and are working towards that goal in the Joomla! 101 Coding forum. If this elephant can be broken down into beginner bite-sized pieces, there will be people, like me, who would try to help. I'm going to mention it to some others. There are also some who are more experienced, too.

This is very exciting. With your leadership, this will happen!

Carry on...good dialog and ideas!
Amy :)


I think that is a brilliant idea. Joomla! 1.5 MVC framework is indeed a flexible platform. In fact right now I like to develop web apps either in Joomla1.5 or Ruby on Rails because both have the benefits of good Architecture, and APIs.

Although because J1.5 is a new framework I think community members still need some time to play with it and apply their creative juice to find new and innovative ways of solving software projects in Joomla 1.5, which is why I think the "Joomla Coding 101" is a great way to share what we learn as a result of our experiments with the frameowrk. I have done 4 commercial projects in J1.5 so far, and still look back and think that I could have taken a better approach in some cases.

Thank you very much Amy, you are a great asset to Joomla and Open Source community, we love to have you here with us :)

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Top
 Profile  
 
PostPosted: Wed Aug 29, 2007 10:11 pm 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
moijafcor wrote:
I guess the multiple templates issue can be handled by some class who reads each template combo files and put its data on the database as its cache resource. This way you have a single Joomla! index file calling this class constructor, coupled with Joomla!' modules|components output to be parsed by the user agent.


Pretty much! :)


moijafcor wrote:
[Please note I wrote 'user agent' because at corporate level you may expect to have a website inside the website's hive for devices other than a standard computer browser, so you should have data parsing capability for specific user agents maybe domain-oriented and/or CSS media type selectable].


True I like the user agent idea myself too
moijafcor wrote:
In this same way some other class can handle the multiple Joomla! configuration files, taking its variables from a database table updated by a 'website configuration component' on the "original" Joomla! backend, so the configuration.php file just feature the 'configuration constructor' to dance with mod_rewrite/HTTP headers on the server layer.


Getting a list of configuration files work for an installation is still the main challenge, it would be neat if we prototype one on a spare time.

moijafcor wrote:
Please note mod_rewrite based solutions will only apply to Apache powered webservers, so IMHO an universal solution can be more friendly-looking for some corporate IT bureaucrats.


My evil twin says this would be a great opportunity for them to upgrade from Windows to to Apache and a LAMP server. We did one project for a company few month ago, they got their first ever Open Source product in house ( joomla of course ) and they've learned that paying for a mighty 10 $ per month LAMP hosting they could accomplish far more than what their windows servers could do. They quietly went for it.

But you are right, there are always those who want to stay with Windows IIS ( sigh! )

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Top
 Profile  
 
PostPosted: Wed Aug 29, 2007 10:16 pm 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Aug 18, 2005 5:50 am
Posts: 207
Location: Vancouver, BC, Canada
Stinkbug wrote:
On the topic of permissions and who has authority to manage the content...

For every company there is probably an administrator who has control over all content.  However, in a large company like the one I work for managing all that content is hardly doable with our small team.  That's why we're looking for something that we can grant permissions to different groups within the company and they can add/update/edit content for whatever they are given permission to update.  Nothing more.  For example, if the Human Resources department needs to post new insurance docs on an intranet for all the employees, Anyone in that department who has permission to do that, can.  However, they couldn't edit anything else on the site.


It is interesting that you've mentioned that. I know many corporations are still fixated on the "Web Master" idea, but have piles and piles of content that need to be maintained, and it would be more efficient if the job is done in a more distributed fashion. I implemented that idea in a company with 500 employees and managed to start a war!

apparently marketing department who had dominant power over the company website didn't like the fact that now any department could go and maintain their own content. For them it was like loosing power in the organization, and those who could maintain content gained more authority and power within the company, specially when the marketing people were not as technical savy as employees of other departments ( technology, visual design and product development ) so they tried so hard to make things difficult, and they partially succeeded. Who could imagine introducing a technology such as CMS could create so much political headaches within a corporation!!!

In some companies employees are allowed to have web profiles and unique domain names, but they have no authority what so ever to edit and maintain their own content. Everything has to be approved by the upper management and marketing. A good example are financial companies who deal with stocks and funds, and want to make sure that their financial advisers don't publish anything illegal or problematic online or offline.

So bottom line we could have 3 types of design for hosting multiple sites within joomla. One that just creates a list of cookie cutter "websites"  that each could be accessed using a unique URL, and the entire installation is managed by generic Joomla back-end users.

Create extended user profiles that each resemble a website and have users take care of their own little space, that seems more like a community builder environment

use dynamically generated list of configurations so, one joomla code base could behave as N number of completely separate websites depending on what URL is used to access each website.

_________________
Rastin Mehr - Founder/Web Application Architect
http://www.rmdstudio.com - Social People Building Social Web Solutions ™
http://www.Anahitapolis.com - The Anahita Social Engine ™ project


Last edited by Aristocrat on Wed Aug 29, 2007 10:31 pm, edited 1 time in total.

Top
 Profile  
 
PostPosted: Thu Aug 30, 2007 2:41 pm 
User avatar
Joomla! Apprentice
Joomla! Apprentice
Offline

Joined: Wed Jun 20, 2007 8:29 pm
Posts: 20
Aristocrat wrote:
It is interesting that you've mentioned that. I know many corporations are still fixated on the "Web Master" idea, but have piles and piles of content that need to be maintained, and it would be more efficient if the job is done in a more distributed fashion. I implemented that idea in a company with 500 employees and managed to start a war!

apparently marketing department who had dominant power over the company website didn't like the fact that now any department could go and maintain their own content. For them it was like loosing power in the organization, and those who could maintain content gained more authority and power within the company, specially when the marketing people were not as technical savy as employees of other departments ( technology, visual design and product development ) so they tried so hard to make things difficult, and they partially succeeded. Who could imagine introducing a technology such as CMS could create so much political headaches within a corporation!!!


HA!  I know exactly what you mean.  We have a creative department that was in charge of our website here.  The problem was they are print designers and hardly know anything about web technologies and they were in complete charge of our corporate websites.  We approached upper management and basically built a case as to why they didn't need to be in charge of it and that we need a web group to take over.  Luckily upper management agreed and formed a web group.  The problem we're facing now (and the reason we're looking for a CMS solution) is that we have hundreds of single pages and some of them are completely out of date (a result of it not being maintained by the creative department...  it's to much to maintain for anyone), but we don't have a way to know that unless we come across it.  The reason we're looking to distribute the work among departments is because that's the way it worked under the creative department anyway.  Departments like HR would send the creative department stuff to post and they'd post it.  So why not just let them do it themselves?  I think the creative department just didn't realize that could be done.

Yea, there's always a lot of corporate politics and bureaucracy in decisions like these, but they have to made and I believe for our company it will be a huge improvement.  We will be able to monitor content... the creative department will still be in charge of writing a lot of content and other departments can still post stuff they need to the web.  The workflow management should be able to control unnecessary content.  I could be wrong, but upper management seems to like the idea.

Quote:
Create extended user profiles that each resemble a website and have users take care of their own little space, that seems more like a community builder environment


I'm not exactly sure what you mean by this, but would this be able to handle the permissions that I was describing in my previous post?


Top
 Profile  
 
PostPosted: Fri Aug 31, 2007 7:18 pm 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Mar 02, 2006 9:41 am
Posts: 218
Location: Santo Domingo, Dominican Republic
Aristocrat wrote:
Getting a list of configuration files work for an installation is still the main challenge, it would be neat if we prototype one on a spare time.


Sure! I will PM you access credentials to my SVN server after a working first draft.

Stinkbug wrote:
Honestly, I really don't think that this kind of permissions in Joomla would be to difficult to add.  From looking at the system so far, I think all that would have to be done is to add Categories and Sections into the permissions checking.  Because things like a Human Resources Department would be a section, right?  Other common things on websites is and About page and Contact page.  Those are things that would be sections too, I think.  So if permissions was granted to a user to only edit a certain section or category, I believe that would handle the scenario that I mentioned above.  Workflow management would be a different story.
.

IMHO the problem here is a quite complex one given the fact that Joomla! lack adequate Knowledge Management capabilities at this evolutionary point (no offense) for advanced contents deployments, because -among others reasons- the articles are tied down to a section/category paradigm. For non KK.MM people what I mean is something similar to the difference between GMail email's tagging system and the conventional inbox's folder paradigm. In the GMail case you can have different ways (tags) to sort out info, but in the inbox-folder side you have to duplicate content items in order to prevent SQL ambiguities and fatal crashes at file system  level.

A way to side-stepping this is to create a section for each website profile, flanked with global sections featuring common content to all independent website profiles. A sure bet is a system like this will be a real Alice's nightmare and quixotesque challenge for any flesh-and-bones webmaster|webmistress on the Earth surface.

In my opinion a reasonable solution is to fetch common contents trough components and modules surfaced on the profiles interfaces; this way the content type (not the content itself) is profile' selectable.

Saludos a todos...

_________________
Nicht mehr!
Los acentos en castellano omitidos intencionalmente. | Les accents et les signes en français omis intentionnellement.
http://bio.moisesjafet.com


Top
 Profile  
 
PostPosted: Fri Sep 07, 2007 5:23 am 
User avatar
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Mar 02, 2006 9:41 am
Posts: 218
Location: Santo Domingo, Dominican Republic
This is really good news: http://forum.joomla.org/index.php/topic,189840.msg899337.html#msg899337, in the context of:

moijafcor wrote:
IMHO the problem here is a quite complex one given the fact that Joomla! lack adequate Knowledge Management capabilities at this evolutionary point (no offense) for advanced contents deployments, because -among others reasons- the articles are tied down to a section/category paradigm.

_________________
Nicht mehr!
Los acentos en castellano omitidos intencionalmente. | Les accents et les signes en français omis intentionnellement.
http://bio.moisesjafet.com


Top
 Profile  
 
PostPosted: Mon Dec 10, 2007 12:35 pm 
Joomla! Fledgling
Joomla! Fledgling
Offline

Joined: Sun Dec 02, 2007 10:51 am
Posts: 3
This is a very interesting topic. I'm wondering when someone will develop an extension like http://codex.wordpress.org/WordPressMU. This is what joomla needs to deploy communities. Moreover, i think that implementing multiple sites deployment under joomla environment, 3 things should bear in mind:

1 - Easy deployment / configuration;
2 - SQL option from 1 database / multiple databases;
3 - Users permissions;

Hope to get news about your research soon. I believe that joomla will give a big step as soon this option will be available to all.

Brgds,
Carlos Pinho


Top
 Profile  
 
PostPosted: Mon Dec 10, 2007 4:26 pm 
Joomla! Enthusiast
Joomla! Enthusiast
Offline

Joined: Thu Mar 02, 2006 8:38 pm
Posts: 200
Location: Baltimore, MD
Aristocrat wrote:
1. I guess we could install the component
2. at the moment of installation a copy of the configuration file is saved as a row in the configuration table. Configuration table should not be a part of Joomla's list of tables with #__tablename, it should be a constant mj_configuration ( mu for multiple joomla)
3. we also need a system plugin that overwrites the joomla's default configuration file with the one loaded from the database, assuming it is possible.
4. then we sign out and each time that we access the installation of Joomla using a new URL ( http://www.johnsmith.com, http://www.cathrinemayer.com ) we need to reinstall joomla on tables with a different #_ prefix. ( it would be a mess to maintain too )

That will give us N number of completely separate websites which share the same code base and extensions.


This is basically the model my company used with 1.0.x and would probably be the model we use when we migrate to 1.5.


Top
 Profile  
 
PostPosted: Mon Dec 31, 2007 3:41 am 
Joomla! Apprentice
Joomla! Apprentice
Offline

Joined: Sun Jul 08, 2007 11:44 pm
Posts: 18
Greetings and congrats to an outstanding development effort with Joomla 1.5. 

Having much experience with multi-site framework we hope some of our  lessons learned over the past 5 years working with DNN can inspire and save the pitfalls of trials and tribulation.

The multisite concept is called many things and comes in many flavors and takes time for people to fully comprehend and absorb what appears simple on the surface but is highly complex under the hood.  Establishing some core syntax for these concepts helped us with our efforts because there are a distinct variations that made for confusing communications.  We use the following syntax:

Host:   Core codebase and single DB installed on a server and managed autonomously by a superadmin.  Host controls all portals, modules and overall security of the system. Multiple hosts can run on a server... every Joomla installation is a Host.

Portal: A web site instance accessible by URL and managed by a Portal Admin.  A portal belongs to a host installation and is limited to the rules established by the superadmin.  Parent Portals are accessible by domain or sub domain (ie.  mydomain.com or subdomainof.mydomain.com).  Child portals are accessible as a subdirectory of a parent domain (parentdomain.com/childportal). 

SubPortal: An instance of a web portal accessible by URL and managed by a subportal admin.  Subportals share the same Portal ID but may render different content and themes for specific URL's  limited to the rules established by the portal admin.  (Typically a tightly controlled affiliated site sharing some content and allowing for personalization)

Now we've lost much hair and consumed many bottles of scotch dealing with these three simple concepts which have exponential combinations as you mix and match modules, components, themes and features.

Ultimately each portal was assigned an id which required each table to be extended with a portal id field. This allowed for seperate sites, users, themes, content etc. (This is at the core of DNN)

All Subportals share a common Portal ID and render distinct content per instance by insertion of their subportal ID.  (This is our own mod and not part of the DNN core framework)

ie. Simple portals table:
Portal ID: SubPortal ID URL/Alias
1 1 Mysite.com
1 2 Mysite.com/child
1 3 beta.Mysite.com
2 1 NewSite.com
3 1 Mysite.com/autonomous

The addition of a simple portals table provided the necessary hooks opening up many possibilities including the ability to affiliate across Hosts and portals.  All configuration settings are now in a DB tied to these id's and dynamically generated. 

Subportals are key and missing in most open source CMS systems and is what most organizations desire.  ie. Cafepress, salesforce.com, [spam] etc.

Portal Affiliation provides for decentralized site to site sign on without the need for single sign-on.  A Straight through tunnel established at the portal admin level. ie. Communityzero and a new level of social networking on a site to site basis.  Instead of users making the connections the admin can force and steer the affinity.

Joomla Affiliation Module Concept modeled after communityzero.com
--------------------------------------------------------------------------------
Concept Introduction
Individual Joomla sites can be linked together to create a network of communities. Links between these "affiliated" portals can be one way or bi-directional and allow custom access rights and permissions to be assigned to the members arriving through these links.

This would allow seperate Joomla installations to utilize existing organizational structures across any Joomla system. You could, for example, setup one community for an executive branch of a company, and one for each department. An individual need only join their respective department to gain access to the entire "virtual network". 

Once setup, members can travel to other affiliated communities with the ease of one mouse click. No need to sign up or join the other portals.  Decentralized collaboration


Basic Affiliate Setup

If you would like your members to access another Joomla site, The Joomla admin uses a form to setup such a relationship. You may edit the relationship after it is created to modify access restrictions based on roles.

For each of the affiliate links to be setup, a screen with two columns will be presented. On the left-hand side will be membership roles from the portal that is originating the affiliation.

Select which groups should be permitted to use this affiliate link (more links from the same portal for different groups can be setup later). For example, you could select just administrator to only allow the "management" of the other community to enter the destination community.

The right-hand column will list the membership groups for the destination portal. Select which groups the affiliate members will join if they choose the community. To have a high-level of control on permissions for the affiliate members, it is recommended you create a custom group just for those members.

Press the "Establish Relationship" button to create the affiliate relationship(s).


Edit Settings

To edit an existing relationship, click on a portal name in the Affiliate Portals page.

You will be presented with two columns if you have a reciprocal relationship. You can only edit the permissions for the relationship where their members access your community.

However, either type of link can be canceled at any time.


Canceling an Affiliate Link

To cancel one direction of a reciprocal relationship, first select the portal name on the Affiliate community page. The second screen will present you with two columns. Select "End Link" at the bottom of the column that represents the link you would like canceled.

To end an entire affiliate portal relationship, select the trash can icon next the appropriate row on the Affiliate community page.

Canceling an affiliate relationship does not cancel current affiliate memberships. You may remove these members manually by selecting the trash icon next to their entry in the member list.


Affiliate Members

Once you establish an affiliate community relationship where you accept another portal's members, you will begin to see "Affiliate Members" added to your user list. These are members who have actually entered your community thanks to your affiliate relationships.

Note that canceling an affiliate relationship does not cancel these memberships. You may remove these members manually by selecting the trash icon next to their entry in the member list.

Affiliate Relationship Setup
If you would like your members to access another portal, you must establish an affiliate relationship with the other portal's administrator.

To initiate the process, click on the "New Affiliate" link from the Affiliate community page.

Complete the form to request a relationship with the other portal. The request will be sent by e-mail to the Portal's Administrator. You will need to enter the portal's Web address (i.e. http://www.cooljoomla.com.)

The administrator of the community will receive an e-mail containing your message and instructions on how to approve or decline your request. If accepted, a reciprocal link may be requested from you. Either way, you will be notified by e-mail as to the outcome of his/her decision.


Processing a Request for Affiliation

You may create affiliate relationship between portals you host and administer allowing your users to register in any portal and instantly jump over to your affiliated portals.

If you received an e-mail with a request for an affiliate relationship, it means the administrator of the indicated portal would like to give his/her members access to your portal.

If you approve this request, members of the requesting portal will be granted "affiliate memberships" if they choose to visit your community. During the approval process, you will be able set restrictions for these members if you do not wish to provide full access (for example, "view only" or whatever default role you set).

You may in turn choose to request a reciprocal link. If accepted, this will allow a flow of members between both your portals.

A master portal directory might need to be centralized allowing for public/private listing and possibly allowing for banner advertising throughout all registered sites. This linking concept could also be used to link sites optimizing search engine popularity.

Affiliated portals would be a Module loaded on a Joomla host updating the central directory periodically. Granular control to the portal level allowing relationships to be modified or terminated at any time. It could be a powerful concept... Call it Joomla-Borg... You will be assimilated into the Joomla collective...

To see a really nice model of this portal affiliation concept in action take a visit to http://www.communityzero.com.

Aristocrat wrote:
That's right Amy!

:)

and the other question is who has the authority to manage the content. In some organizations all content need to be approved by the upper management, and be managed by webmaster(s). In that case web profiles don't have to relate to the user table.

Otherwise, each web profile can have a one-to-one relation to user table records. I believe in that case we will be falling into a community builder application category, which is btw the other new project I am working on  :D as set of extensions based on the new framework for building online social networking sites. It will be released under GPL too.  :pop


Last edited by SmartSource-IT on Mon Dec 31, 2007 4:03 am, edited 1 time in total.

Top
 Profile  
 
PostPosted: Mon Dec 31, 2007 4:26 am 
Joomla! Apprentice
Joomla! Apprentice
Offline

Joined: Sun Jul 08, 2007 11:44 pm
Posts: 18
Here is a model used by communityzero.com:

Founder
Administrator
Moderator
Members
Affiliate
Owner
Preview

1. Founder
The founder is originally the member that created the community. There can only be one founder at any time. The founder has complete control over all content, community administration, and has the ability to delete the entire community. The founder status can be passed to another member of the community.

2. Administrator
To help manage the community, you can either appoint administrators or moderators. Permissions granted to administrators can be modified, but they will always continue to have access to the community's administration area. The only administration tools they cannot access in the administration are those listed under "Basic Settings". See the main administration area for more information. Communities can have any number of administrators.

3. Moderator
Content Moderators only have access to the Content Moderation tool in the community administration area. Moderators tend to be assigned "edit all" and "delete all" permissions on select tools such that they can properly manage content. Content can be set to hide until it has been approved. If this is the case, reviewing content in a timely manner is required to maintain vibrancy in the community. For this reason, appointing multiple content moderators is common practice when content approval is required. Find out more about content moderation.


4. Member
All new members of a group and placed into the "Member Group" by default. Note that each end user can be part of multiple membership groups. They simply gain the maximum level of access allocated across the combined groups.

5. Affiliate
When affiliating with other communities you can select which membership groups the visiting members will join. A pre-defined affiliate group is provided to encourage administrators to keep 'full members' and 'affiliate members' separate for future manageability. It is good practice to create a new group for each community with which you affiliate to provide maximum control and visibility.

6. Owner
This special group refers to members' control over the content they submit. Settings for this group are in no way related to content created by others. For example, providing the right for the OWNER group to EDIT ALL means they can edit their own content but not others'.

Caution: Be sure to only grant the Owner group the "Edit All" and "Delete All" rights for each active tool unless it is a group that should have administrator-like privileges.

7. Preview
The preview group is used by non-members previewing the community before they join. Controlling when people are permitted to preview is controlled under Security Settings.


They've done a great job with their security and workflow...  http://www.communityzero.com/clubs/help ... groupadmin




Stinkbug wrote:
On the topic of permissions and who has authority to manage the content...

For every company there is probably an administrator who has control over all content.  However, in a large company like the one I work for managing all that content is hardly doable with our small team.  That's why we're looking for something that we can grant permissions to different groups within the company and they can add/update/edit content for whatever they are given permission to update.  Nothing more.  For example, if the Human Resources department needs to post new insurance docs on an intranet for all the employees, Anyone in that department who has permission to do that, can.  However, they couldn't edit anything else on the site. 

The workflow management system could kick off an email to that persons manager notifying them that something needs to be approved.  That persons manager would then approve the changes and at that point it would be made public.  We would also want something in place to allow multiple levels of approvement.  So if we wanted we could also add the administrator to that workflow management and after that persons manger has approved it, the administrator would get notified and he would have to approve it before it would be made public.

I don't how all this would work from a design and usability stand point just yet or the best way to accomplish this on the back end.  I do know that this is something that many larger companies would find useful.

Honestly, I really don't think that this kind of permissions in Joomla would be to difficult to add.  From looking at the system so far, I think all that would have to be done is to add Categories and Sections into the permissions checking.  Because things like a Human Resources Department would be a section, right?  Other common things on websites is and About page and Contact page.  Those are things that would be sections too, I think.  So if permissions was granted to a user to only edit a certain section or category, I believe that would handle the scenario that I mentioned above.  Workflow management would be a different story.


Top
 Profile  
 
PostPosted: Sun Jan 27, 2008 12:43 pm 
User avatar
Joomla! Intern
Joomla! Intern
Offline

Joined: Wed Nov 02, 2005 8:22 pm
Posts: 67
Location: Santa Cruz, CA.
Hi all :-)

where do we stand on this project?

has anyone created anything that allows multi-sites under a single install?

following this thread i would like to see unlimited domain names with individual content under one master site.
the only way coms/plugins, etc. can be updated is via the master site admin. but each domain can edit their individual joomla site as normal.

i would contribute money towards this - this would help many people and keep server costs down.

Stinkbug I looked over your code ---have you developed it further?

thanks!!!

_________________
-------------------------------------------
Community Site Building
http://www.medialabpro.com


Top
 Profile  
 
PostPosted: Thu Jan 31, 2008 2:52 am 
User avatar
Joomla! Intern
Joomla! Intern
Offline

Joined: Wed Nov 02, 2005 8:22 pm
Posts: 67
Location: Santa Cruz, CA.
Hey all :-)

Anyone have any info on how to create a solution?

This seems like an extremely useful solution that would vastly improve server performance.

Seems like the config with multiple DB's is key. Each site should have a directory OUTSIDE the master site.

One major issue is that Linux will only allow 2gig files so backing up a master site is an issue if all the sub-sites are within the master site.
Opening a port such as  domain.com:81/files/.... is one method but this vastly opens the server for security risks.

Indeed this is a tricky project.

_________________
-------------------------------------------
Community Site Building
http://www.medialabpro.com


Top
 Profile  
 
PostPosted: Thu Jan 31, 2008 3:22 am 
Joomla! Apprentice
Joomla! Apprentice
Offline

Joined: Fri Aug 17, 2007 6:25 pm
Posts: 12
Are y'awl still interested in a solution? What kind of money are we talking about? I was pondering a similar concept. Then I came up with a hair brained idea.  I have to work it out but I have no reason right now. Guess I'm lookin for a reason.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 41 posts ]  Go to page 1, 2  Next



Who is online

Users browsing this forum: isdlcre, Yahoo [Bot] and 31 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB® Forum Software © phpBB Group