Is there a way to download a FULL album?

BeatRelease
BeatRelease
@beatrelease
10 years ago
43 posts
I looked around the forums and didn't come across this, but can uploaded albums be downloaded instead of downloading individual songs?

I want to allow my users to download the latest uploaded albums/mixtapes like LiveMixtapes .com and Datpiff .com for free.

Thanks
updated by @beatrelease: 03/16/14 01:18:23AM
SteveX
SteveX
@ultrajam
10 years ago
2,584 posts
You could try making the album a bundle. (not sure if that will handle free downloads)


--
¯\_(ツ)_/¯ Education, learning resources, TEL, AR/VR/MR, CC licensed content, panoramas, interactive narrative, sectional modules (like jrDocs), lunch at Uni of Bristol. Get in touch if you share my current interests or can suggest better :)
michael
@michael
10 years ago
7,714 posts
I added it as a feature request:
https://www.jamroom.net/the-jamroom-network/tracker/350/a-way-to-download-a-full-album

How would you want that full album of songs delivered? as a packaged zip file? would users know how to unzip it? (also thinking about smartphones here. can you un-zip on a smartphone?)
MAD
MAD
@madc
10 years ago
600 posts
+1


--
~ https://punkbandpromotions.com ~
Check us out for all your Punk/Alternative Music!
Check us out on Facebook:- https://facebook.com/PunkBandPromotion
BeatRelease
BeatRelease
@beatrelease
10 years ago
43 posts
michael:
I added it as a feature request:
https://www.jamroom.net/the-jamroom-network/tracker/350/a-way-to-download-a-full-album

How would you want that full album of songs delivered? as a packaged zip file? would users know how to unzip it? (also thinking about smartphones here. can you un-zip on a smartphone?)

A package zipped file would be perfect. As far as the smart phone, on both of the sites I posted it will download a .zip or .rar of the album, I'm not sure about the smart phone since I've never downloaded to a phone. I rather have my users download from the website and then just transfer to their phone if they like.
brian
@brian
10 years ago
10,148 posts
This is something I actually created for our FoxyCart module, but pulled it due to it being problematic. Zipping takes up a lot of memory, and if you have several large files, it is easy to "bomb" the PHP process.

I can revisit it and see if there's a way to make it work within a set amount of memory, but it may require we use the command line "zip" utility (which is not standard on linux installs).


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
brian
@brian
10 years ago
10,148 posts
BeatRelease:
(also thinking about smartphones here. can you un-zip on a smartphone?)

mobile phones cannot handle zip files, this would not be supported on phones.


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
BeatRelease
BeatRelease
@beatrelease
10 years ago
43 posts
brian:
This is something I actually created for our FoxyCart module, but pulled it due to it being problematic. Zipping takes up a lot of memory, and if you have several large files, it is easy to "bomb" the PHP process.

I can revisit it and see if there's a way to make it work within a set amount of memory, but it may require we use the command line "zip" utility (which is not standard on linux installs).

Didn't realize there would be issues like that.
alt=
Codelizard
@codelizard
10 years ago
9 posts
Think a little outside the box. Nothing says that the zip process needs to happen as part of the php session. Just write a record into a JOB table, with information on what needs to be done. Then, write a cron that runs every minute or so and looks for jobs to be done. It sees the zip job, runs the commands as a shell process, and updates the job table that the job is done. you can even have it email the user and tell them that thier album is ready to be downloaded. User comes, downloads their waiting album, job well done with no resource issues. you can even write a cron to clean up zipped files after being around for x amount of time...

As far as ZIP goes, its a simple install of zip on any linux system. From my experience, all shared hosts I have ever used have had either zip or gzip installed, among others...
BeatRelease
BeatRelease
@beatrelease
10 years ago
43 posts
Codelizard:
Think a little outside the box. Nothing says that the zip process needs to happen as part of the php session. Just write a record into a JOB table, with information on what needs to be done. Then, write a cron that runs every minute or so and looks for jobs to be done. It sees the zip job, runs the commands as a shell process, and updates the job table that the job is done. you can even have it email the user and tell them that thier album is ready to be downloaded. User comes, downloads their waiting album, job well done with no resource issues. you can even write a cron to clean up zipped files after being around for x amount of time...

As far as ZIP goes, its a simple install of zip on any linux system. From my experience, all shared hosts I have ever used have had either zip or gzip installed, among others...

Aw man I have no idea on how to create all that lol. I'm only familiar with basic html and whatnot. Is there any way you can create this for the Jamroom community or can I pay for your service to get this on my site? Thanks.
alt=
Codelizard
@codelizard
10 years ago
9 posts
I'm not even using Jamroom as of yet, evaluating it at the moment. Was just making a suggestion to the developer on how to do it without sacrificing memory or performance.

If I end up using Jamroom, this may be something I tackle, since I'll be learning the system anyways.
paul
@paul
10 years ago
4,326 posts
Actually, Jamroom5 does support a 'queue' system where jobs can be assigned as background tasks, so that can, no doubt, be utilised for things like this.


--
Paul Asher - JR Developer and System Import Specialist
michael
@michael
10 years ago
7,714 posts
Codelizard:...Just write a record into a JOB table, with information on what needs to be done. Then, write a cron that runs every minute or so and looks for jobs to be done...

yeah, technically no problem doing it. Great to see it done as a module with someone to support it and setup the docs for it. It would be cool for you to try it out as a test module @codelizard.

Just like @paul said the queueing system will skip any need for an elaborate cron setup.

"The Queueing System"
https://www.jamroom.net/the-jamroom-network/documentation/development/1543/the-queueing-system

If your interested in learning JR development, aside from the docs, these locations might also proove useful:

"Start your own online community"
https://www.udemy.com/start-your-own-online-community

"Developers guide to customizing Jamroom"
https://www.udemy.com/developers-guide-to-customizing-jamroom

That second one is $29 at udemy, but free for all subscribers here:
https://www.jamroom.net/backstage/forum/resources/3112/100-off-coupon-for-developers-guide-to-customizing-jamroom-udemycom-course
alt=
Codelizard
@codelizard
10 years ago
9 posts
Thanks for the input and the links. This software is definitely the best thing I found in regards to the functionality we need, but will need additions/changes to meet our precise needs. The ZIP thing is one thing that could/would help on our end as well so it could be something I might tackle.
michael
@michael
10 years ago
7,714 posts
Im away from my dev setup right now and for a while but when im back, helping developers extend jamroom is one of the top things I want to do.

Happy to help get you up to speed with the different concepts and things.
alt=
Codelizard
@codelizard
10 years ago
9 posts
Then I hope you dont mind a quick question. I didnt see this spelled out anywhere, so I'll just go ahead and ask here. Is the code for Jamroom and any purchased extension 100% readable? Meaning no compiled code?
michael
@michael
10 years ago
7,714 posts
oh yeah, there is no obfuscation at all. Download the core, its well documented with docblocks.

It all integrates really well with phpstorms ctrl+q function to get code hints on hovering on functions.

The core is opensource under the MPL license which is a bridge license that allows for both open source licenses and commercial licenses.

So if you use an MPL module as a base you can change it and release it but it must be released under MPL too.

If you start with one of the freeware skins then you can release it under either MPL or JCL(jamroom commercial license) if its for sale.

Developers who release software for jamroom are also integrated into the marketplace system and effectively operate on equal footing with the core jamroom network as it relates to module/skin sales.

You will see that you are currently on /the-jamroom-network/'s profile. Developers get their own profile eg https://jamroom.net/n8flex where they have all the same tools as we do as a team.

So we want more developers building stuff for jamroom either free stuff under the MPL or commercial stuff for sale.

--edit--
in case it isnt obvious, this site is powered by JR5. (jamroom.net)
updated by @michael: 02/13/14 01:27:06AM
paul
@paul
10 years ago
4,326 posts
Quick answer - Yes :-)


--
Paul Asher - JR Developer and System Import Specialist
michael
@michael
10 years ago
7,714 posts
paul:
Quick answer - Yes :-)

lazy.... ;) ( and snap! same time awake today. I'm off shortly. late here. )
paul
@paul
10 years ago
4,326 posts
michael:
paul:
Quick answer - Yes :-)

lazy.... ;) ( and snap! same time awake today. I'm off shortly. late here. )

Sorry ;-)
In NZ and still have time for succinct responses!! Take a break :-)


--
Paul Asher - JR Developer and System Import Specialist
alt=
Codelizard
@codelizard
10 years ago
9 posts
Its 4:32am here, as well. I should be sleeping. Thanks for all of the info :)
michael
@michael
10 years ago
7,714 posts
paul:
Sorry ;-)
In NZ and still have time for succinct responses!! Take a break :-)

cheers. Still feel like im in work mode even though im in another country.

Went for a ride today. going tomorrow too, and the next day, then a riding course on Sunday. Got to ride the big 'Vulcan 900 custom' that I sent out here to sell. Its bigger than I expected it to be. Good fun. :)
alt=
Codelizard
@codelizard
10 years ago
9 posts
Not a bad bike. I've got a Harley Road King Classic. Thats a big bike :)
paul
@paul
10 years ago
4,326 posts
Suzuki Intruder VS800 - a tiddler by comparison ;-)


--
Paul Asher - JR Developer and System Import Specialist
brian
@brian
10 years ago
10,148 posts
Just to add to the "zip" talk here, the Core actually already has some functions designed to do this, but the only place they had been exposed was in the Foxycart module, but there were some issues so it was removed before release.

Core functions include:

jrCore_create_zip_file($file, $_files)

creates ZIP file $file from the array of $_files

jrCore_stream_zip($name, $_files)

"streams" a ZIP file to a browser (this attempts to use less memory but needs some attention) as $name with $_files as content.

Definitely could be done via the queue system with completion notification. I'll poke around with the stream ZIP function and see if I can see why it was behaving sketchy before.

Thanks!


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
BeatRelease
BeatRelease
@beatrelease
10 years ago
43 posts
Thanks fellas for looking into this. It's an option I really need for my site and I'm pretty sure a lot of other users can use this.
MAD
MAD
@madc
10 years ago
600 posts
+1 Again


--
~ https://punkbandpromotions.com ~
Check us out for all your Punk/Alternative Music!
Check us out on Facebook:- https://facebook.com/PunkBandPromotion
michael
@michael
10 years ago
7,714 posts
brian:Just to add to the "zip" talk here, the Core actually already has some functions designed to do this, but the only place they had been exposed was ....

That is real useful info. Started some docs on it to keep it from getting lost.


"Using core functions: (zip some files)"
https://www.jamroom.net/the-jamroom-network/documentation/development/1678/using-core-functions-zip-some-files

Tags