Forums
| Mahara Community

in order to create external pages, that would describe the whole background of a given Mahara-site (like homepage (not being logged in), help pages, a.s.o.,) , I would like to use a common Content Management System like Typo3 (www.typo3.org) or Wordpress (www.wordpress.org). Cause these CMS are a bit more comfortable and supports a lot of already developed extensions/plug-ins.

From a non-developer's point of view, a "simple" way might be that the (root-)index.php file would be handled by the CMS, e.g. Typo3, and the underlying Typo3-template would integrate/reference the login/authentication plugin of Mahara. So, in case a user logs into the system by filling out the login fields and pressing the send button the Logged-in-page of Mahara would be loaded and all consequent user action is managed by Mahara. However, in case the user is not logged in Typo3 would handle all user requests.

Has anyone already solved this kind of problem? Any other creative ideas? :)

Hi - that sounds like it would work ok, Mahara's index.php is not particularly important right now.

You'd have to make sure that when you made the login form, you included the hidden element that Pieforms looks for to see if the form has been submitted. You can look at the existing login form for that.

In future, if the index page does become more important, you might have to think about some other solution, but for now it should probably work.

It didn't work. Maybe due to the fact that I don't know which php-files to reference in the above mentioned php script. Which php files do I have to take for the above placeholders "dont_know1.php" and "dont_know2.php"?

You could do something like that I suppose. Mahara has an inbuilt function for doing http requests, it's called mahara_http_request and it's in lib/web.php somewhere around like 2565.

You would need to post to any page, with the parameters login_username, login_password (their values are obvious), and also pieform_login=''. You can examine the resulting page to see if it worked - e.g. if the login form is still present then the attempt failed.