Thread: [pLog-General] The last two features
Brought to you by:
jondaley
From: Oscar R. <os...@re...> - 2003-09-22 18:15:59
|
Hi! I'd like to know your opinion about how to implement the last two features missing from a 0.2 release: uploading and adding new locales and uploading and adding new template sets. We always come up with nice ideas so let's see what can we do with this... About uploading new locales, looks like an easy one. IMHO it should only be performed by the site administrator and it should be a simple form allowing the user to upload a locale file. The pros: it's very easy :D. The cons: We will have yet another world-writable directory... Not quite sure if I like that but on the other hand, it's the only way this can be achieved (lemme know if you can think of another!) Regarding uploading new templates, we should give the possibility for users to upload new templates, as well as the site administrator. Templates uploaded by the site administrator should be available to everybody but templates uploaded by a blog user should be available only to that blog (this was mentioned by somebody some time ago here) The structure of the templates/ folder should be something like: templates/ default/ grey/ lemons/ ... blog_1/ template_only_for_blog_1/ template_2 ... blog_555/ ... Shouldn't be too difficult to implement. The problem is, a template set is made up of more than just one file, and we can't really ask the user to upload 15 files... right? :) How should we tackle that? Upload the template as a .zip/.tar.gz/.tar.bz2 file and unpack it once it has been uploaded, maybe? (I think Warren suggested this approach) Oh and again, we would have yet another world writable directory available there... Let me know what you think, please :) Oscar. |
From: Warren L. <wa...@is...> - 2003-09-23 01:35:44
|
Here's my 2 cents, Locale files should get uploaded to the pLog project site and site admins can grab it from there. This way we could sort of "force" people who use pLog to contribute to the community so all the admin has to do is add an entry in the super admin backend, upload the file to his site while the project itself gains another locale file. This is the best way IMO to ensure we get lots of locale files as pLog matures. As for the uploading of templates, yes I think giving the option of uploading as a tarball or archive file and then having the system unpack it is the way to go. However we should also allow uploading of file by file, this is working on the assumption that not all people may know how to create an archive, and not all servers provide utils to unpack a .zip file (I know I'm walking a really thin line here cuz anyone who enough expertise to use the template system to make a new template should have enough knowledge to do all that.) Rgds Warren -- Right in the middle of a relocation |
From: Darren G. <pl...@so...> - 2003-09-23 01:46:11
|
> Locale files should get uploaded to the pLog project site and site > admins can grab it from there. This way we could sort of "force" people I like this idea. > As for the uploading of templates, yes I think giving the option of > uploading as a tarball or archive file and then having the system unpack > it is the way to go. However we should also allow uploading of file by > file, this is working on the assumption that not all people may know how > to create an archive, and not all servers provide utils to unpack a .zip That, and if they package it correctly. If they pack it up with an incorrect directory tree, it could screw it up. > file (I know I'm walking a really thin line here cuz anyone who enough > expertise to use the template system to make a new template should have > enough knowledge to do all that.) I would think that they upload each file seperately, and upon generation, if a specific file is missing, it pulls it from a default location. That way, users could just create a custom header. This probably wouldn't happen often, but would probably be something you would need to check for. Darren |
From: Warren L. <wa...@is...> - 2003-09-23 01:56:41
|
> That, and if they package it correctly. If they pack it up > with an incorrect directory tree, it could screw it up. I hadn't consider that, but when I proposed this method, I was thinking more in lines of no directory structure, all the files are unzipped to a tmp dir and the system will move all the files to the correct location in the template directory. But you are right, there will be mistakes and I doubt the code can account for all sorts of mistakes here. > > file (I know I'm walking a really thin line here cuz anyone > who enough > > expertise to use the template system to make a new template should > > have enough knowledge to do all that.) > I would think that they upload each file seperately, and upon > generation, if a specific file is missing, it pulls it from a > default location. That way, users could just create a custom > header. This probably wouldn't happen often, but would > probably be something you would need to check for. I like the idea of pulling a missing file from a default location but that would more or less break the new template, unless we can create a "template neutral" template that should fit into any type of template. I don't think grey can do this at the moment. |
From: Darren G. <pl...@so...> - 2003-09-23 02:04:01
|
> in the template directory. But you are right, there will be mistakes and > I doubt the code can account for all sorts of mistakes here. You could just check for the files in the root of the archive...if they are not there, throw an error. > I like the idea of pulling a missing file from a default location but > that would more or less break the new template, unless we can create a > "template neutral" template that should fit into any type of template. I > don't think grey can do this at the moment. Or, make them clone an already existing template first. Say click on "copy grey to newname". Then allow them to go in and modify from there. Not sure if that would be useful or not. Darren |
From: Oscar R. <os...@re...> - 2003-09-23 14:40:46
|
Hi! > > Locale files should get uploaded to the pLog project site and site > > admins can grab it from there. This way we could sort of "force" people > > I like this idea. You might like it but I don't even understand it :D What do you Warren mean? Say I write the locale for my own language, so then? Where do you say that I should upload it? How should it work? Sorry I'm so dumb sometimes O:) > > As for the uploading of templates, yes I think giving the option of > > uploading as a tarball or archive file and then having the system unpack > > it is the way to go. However we should also allow uploading of file by > > file, this is working on the assumption that not all people may know how > > to create an archive, and not all servers provide utils to unpack a .zip > > That, and if they package it correctly. If they pack it up with an > incorrect directory tree, it could screw it up. I like Warren's suggestion in his other message: once the file has been unzipped, if it doesn't follow the standard directory structure, then we simply spit out an error and prompt the user to do it again but this time, the right way. I think it should work and it's not as risky as simply hoping that the user will have packaged the file right, because then we could really screw up... Also note that the unzipping approach is quite dangerous... What if somebody uploads a file that has absolute paths and overwrites some system files? > > file (I know I'm walking a really thin line here cuz anyone who enough > > expertise to use the template system to make a new template should have > > enough knowledge to do all that.) > > I would think that they upload each file seperately, and upon generation, Uploading one by one can be a big p.i.t.a but it's a possibility. > if a specific file is missing, it pulls it from a default location. That > way, users could just create a custom header. This probably wouldn't > happen often, but would probably be something you would need to check for. Fetching a file from a different location from where it should be, can be done at pLog's level, but it can't be done at Smarty's level. Let me explain this. When we ask for the template that renders say, the main page, we look for it in a folder that is defined by our current template set. It would be quite easy to tweak our TemplateService class to try to fetch the template first from the place where it should be or otherwise, fetch it from a default folder. However, we can't do that when files are "included" in the template, using Smarty's syntax: ... {include file="my_template_set/footer.template"} ... Smarty will try to look for that file and quit if it can't be found. It will simply not let us try to find in another place and the solution you mention above is then only possible if we hack Smarty. I'd say it's quite unlikely. Oscar. |
From: Darren G. <pl...@so...> - 2003-09-23 16:45:19
|
> You might like it but I don't even understand it :D What do you Warren > mean? > Say I write the locale for my own language, so then? Where do you say that > I > should upload it? How should it work? I think what Warren was going at, is this. Let's say I belong to Blog A, and I create a foo_BAR locale. I then upload it to BLOG A, and I am happy. Now, that locale has not been included in the general pLog distribution. I think Warren wants to force the local to go back to pLog somehow, so that we can ensure new locales get added to the main distribution. Warren, correct me if I am wrong. Darren |
From: Oscar R. <os...@re...> - 2003-09-24 18:13:19
|
Hi! > I think Warren wants to force the local to go back to pLog somehow, so > that we can ensure new locales get added to the main distribution. Hmmm... Sounds like a good idea to me, but I don't quite see how we want to force the user to do that. I'm not so keen on forcing people, unless we find a natural way to do this. I guess Warren should speak up now... At least now I understand the motivation for the idea (which is indeed an improvement for me :D) Cheers, Oscar. |
From: Warren L. <wa...@is...> - 2003-09-25 03:07:26
|
> I'm not so keen on forcing people, unless we find a natural > way to do this. I > guess Warren should speak up now... At least now I understand > the motivation > for the idea (which is indeed an improvement for me :D) > Darren is right on the money on my line of thought. "Forcing" can be done in a variety of ways. I think we should structure pLog in such a way that it makes people want to contribute in this case their locale files. I think we can implement more ways of adding locale files to individual pLog installs after we have achieved a critical mass of locale files. Way I look at OSS is that if you use it, you create something useful for it, you should contribute it back. This is the very core that makes OSS what it is today. I just prefer to think of the you SHOULD portion as you MUST. =P We don't have to openly insist on it, we can just steer people that way subtlely. And yes I've been in the corporate world way too long... Brainedwashed =) Rgds Warren |