Jump to content

Nathan
 Share

Recommended Posts

  • Administrators

I'm looking for a clone to BaseCamp. It can really be on any platform, whether it's Wordpress or some free standing setup. I want to host it on my own, so no online services and also looking for opensource (free).

 

I have yet to find anything that is as simple. Most other off too many features, I really need something simple so users that are less computer literate can understand.

 

Any suggestions?

Link to comment
Share on other sites

  • Administrators

Nothing eh?

 

Well after spending half the day searching, installing, and messing with probably 10-15 different PM software I've decided only a custom solution will work.

 

I need something self hosted and simple like BaseCamp. The users that will use it may not be as tech savy and not have patients or know how to work with a super robust PM software.

 

Going to get started tomorrow and I'll track the progress here, maybe even release it opensource or something when finished.

Link to comment
Share on other sites

  • Administrators

It would be quite an undertaking!

 

Have you looked at any current open source projects on say GitHub?

I spent most of the day yesterday testing out software, most all were junk or too complicated. Just finished up the database design and the user login system.

 

I've never head of basecamp. ;) So is this just a basic project tool? So a company makes a project and assigns members to certain tasks?

Yes that is correct.

Link to comment
Share on other sites

  • Administrators

Eh, ran into a road block.

 

I have the basic design up and going and now coding for the "new project" part.

 

1. So the user clicks new project, takes them to a web form to enter their title, description, ect...

2. They hit submit and the data is then inserted into the database.

3. Now I need a way to create dynamic pages, like if they create project and the id in the database is 1 then I would want the url to be domain.com/1.php for an easy example. Obviously I wouldn't want to have to create these 1.php, 2.php ect... pages for all projects. I assume it would need to use some template.php file or something when the user clicks the domain.com/1.php URL. How can I accomplish this? Not even sure where to search on Google as I can't explain it well.

Link to comment
Share on other sites

Hello Nathan,

 

Ok there are a number of ways to do this.

 

I'm going to describe the "MVC" way, as this is the hottest thing at the moment (think cakePHP, django, etc).

 

First, if you are not familiar with MVC, I suggest you Google it and read up, its a big topic and I don't think I could do it justice in a small post.

 

So one aspect of MVC is routing.

 

Routing:

 

In essence you use .htaccess, or IIS rewrite rules to pass all URLS to one file or script (example index.php). All other file requests such as images and css, are not passed to this file (or routed)

 

This routing file then uses some logic that you create to load the correct php files and execute those scripts.

 

A good convention is as follows:

 


www.example.com/projects/remove/42

 

In the above the routing script, will remove the domain:

 


/projects/remove/42

 

It will then split on "/" and end up with an array of elements:

 


[0] = projects
[1] = remove
[2] = 42

 

as you can see, the first element is the "page" so you could have a page called "projects.php", this is dynamic, and does not have to be a page, in fact it could also refer to a table called "projects".

 

The second part can refer to an action (which will probably be an action associated with projects).

 

Finally the last elements are the parameters to the action, in this case "42".

 

 

In your use case, you can check to see if the requested php file exists, if it does then re-route to it. If yo detect something that has "/project/" then you can re-route to the script that loads the projects, you can also split out the id such that:

 


www.example.com/projects/5

or even

www.example.com/projects/5.php


 

would actually re-route to:

 


www.example.com/projects.php?projectId=5

 

 

This way you do not need to have hundreds of physical files

Edited by __Darknite
Link to comment
Share on other sites

  • Administrators

Thanks for the info, reading up on it now.

 

This seems like it maybe a huge part to create unless the tutorials I'm reading are not correct.

 

Do you have a link to a simplified setup of this?

Link to comment
Share on other sites

  • Administrators

I got it completed now, ended up creating a template.php that is basically the template for all projects. I used a .htaccess rewrite to forward on those project to the template. Works great!

Link to comment
Share on other sites

  • Administrators

Completed project creation and project completion. Projects are only viewable by the person that created it currently. May have to add in logic for groups to be able to view projects.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...