Elxis CMS Forum
Extensions => Components => Topic started by: jimmyz on February 18, 2009, 14:28:52
-
Gentelmen,
I 'd need some help, if possible.
I would like to have a blog in my site, which has only a few members, that it would be accessible only for them.
What I mean is that public visitors, should not even know that this blog exists.
For the time, as a solution, I have made a link in the mainmenu, that is visible only for registered members. But what about the rss feeds? They provide the (hidden) link for the (hidden) blog. Is there any way that I can lock it?
Furthermore, is it possible that a group of members is able to write to (this) same blog? For the time I have made a user who owns this blog and I have given its credentials to the members, which is not very convenient.
In the site, exists one more blog (owned by the administrator), which is public (news).
-
disable rssfeed for eblog from components>>syndicate to hide them
Furthermore, is it possible that a group of members is able to write to (this) same blog? For the time I have made a user who owns this blog and I have given its credentials to the members, which is not very convenient.
only comments from other users is possible, this is the way that all blog-softwares works,
even wordpress that is one of the most powerfull blogs working the same way(default) ... if you want multi-user blog then you don't need an cms not even standard blog-software , look for wordpress MU like wordpress.com(but it is not cms)!
-
ks-net, thank you for the quick reply.
I think rss feeds are usefull and I don't want to disable them... Isn't there any other way locking the blog?
About the multi-user blogging... the temporary solution (creating a user just for this blog and giving username and password to the registered users) works exactly as I want, but it's a bit confusing for the average (or below) user to keep in mind all this info (log in with the real username to add content - log in with another username to add a record for the teams archive). It would be very nice for the future of elxis, to be able to make user groups, acting as a single user.
-
(log in with the real username to add content - log in with another username to add a record for the teams archive). It would be very nice for the future of elxis, to be able to make user groups, acting as a single user.
i don't get it.. is not need for different pass-username to post in blog and add content ,
do you mean cross-blog-content access through several users?
-
Exactly!
One blog - many users.
Plus I want to hide it from public eyes!
-
As for the blog's RSS feeds do what ks-net told you. You did n't understood his answer. You can disable just the eblog's RSS not the whole elxis RSS. Go to components -> Syndication and you will see the relevant option.
As for locking the blog to single users that will be also able to post articles on the same blog continue reading:
First, a blog is like a personal calendar. There is no blog on the planet which has more than 1 user able to post articles on the same blog as this is opposite to the blog's reason of existence.
Besides the above, if you want to do it here are some thoughts:
You can do it by moving these members to a special user group and give access to that blog only to users belonging to this special group. Alternatively you can hack eblog and create an array of user IDs (i.e. $allowed_users = array('23', '7', '15', '9'); ) only which are allowed to see this blog. You can afterwards check access to this blog like this:
if (!in_array($my->id, $allowed_users)) {
mosRedirect('index.php', 'You are not allowed to access this blog');
}
As you have more than one blog, and the other one is public, you should perform this check only if someone tries to see the hidden blog.
Now for posting:
You can create a new module and assign it to the hidden blog's page with username/password information for the common user (the one that is able to post on the blog). So, users will logout and re-login using that info.
Alternately you can hack eblog's owner check to acceot not just one user (the owner) but the user IDs inside the $allowed_users array.
For instance:
if ($my->id && ($my->id == $this->getCV('ownerid'))) { $fullAccess = 1; }
convert to:
if ($my->id && (in_array($my->id, $allowed_users))) { $fullAccess = 1; }
This way your users wont have to login with the special user account! You will have a single blog owner but more users will be allowed to post in it.
You should also perform more similar hacks on eblog to achieve the functionality you need.
Example of hacking specific eblog configuration:
function : _getConfig
if ($blogid == 'XXX') { // if we are on your special blog - XXX is your special blog ID
$this->_config->allowed_users = array(comma separated user ids);
}
Afterwards you can get this configuration parameter like this:
$this->getCV('allowed_users');
-
Go to components -> Syndication and you will see the relevant option.
But, this way would exclude the other, visible blog too, isn't it?
As for the others, I'll give a try tonight. I'll start asking questions tomorrow.
I hope two things:
1. I do not tire you up.
2. Others will find this usefull.
Thank you!