[Web] SmartDownloads

Discussion in 'Bukkit Tools' started by lol768, Dec 16, 2012.

Thread Status:
Not open for further replies.
  1. Offline

    lol768 Retired Staff

    After the recent removal of the GitHub downloads, I've created a customizable downloads tracking system that supports multiple projects, download labels (e.g. development, beta build) and changelogs. Useful for hosting development builds where DBO would not be appropriate due to stability/frequency concerns. Links with BukkitDev to display the featured image (if any) and provides links to BukkitDev and GitHub (if you supply a repository).

    Screenshots (almost all elements on the build page are customizable, including lead text, warning, footer etc):
    1.png 2.png

    Uses an SQLite database (no separate database server required) and automatically creates tables etc when you first use it. It includes an administration panel for editing projects and adding files. Uses Bootstrap for styling and PHP for backend stuff.

    [​IMG]
     
    Goblom, jtjj222, redmineworld and 7 others like this.
  2. Offline

    hawkfalcon

    Yaaaay!!!'<3
     
    lol768 likes this.
  3. Offline

    lol768 Retired Staff

    Screenshot2.png
    Bootstrap!?!?! (open)
    Don't complain about Bootstrap, the stock default style you see above is only for the admin panel.
    Bootstrap!?!?! (open)
     
  4. Offline

    LaxWasHere

    Brilliant!
     
    lol768 likes this.
  5. Offline

    Sushi

    ...use bitbucket to host downloads? Why is this needed?
     
  6. Offline

    lol768 Retired Staff

    Some of us don't use BitBucket or feel it is too bloated for our needs when we already have GitHub.

    Another screenshot:
    Screenshot3.png
     
  7. Offline

    Sushi

    swag

    I'll host this for you if you make it so that it can only be used for bukkit projects (in order to conserve bandwith).
     
    hawkfalcon and lol768 like this.
  8. Offline

    lol768 Retired Staff

    Guess which language it's written in :D? Yeah, your favorite :p..

    Hmm. It will need some changing in order to do so but this does sound interesting. I'll take you up on your offer once I've completed the host-yourself version. And yeah, it is restricted to Bukkit projects
     
  9. Offline

    Sushi

    php
     
  10. Offline

    Sushi

    any status on this? want to irc?
     
  11. Offline

    lol768 Retired Staff

    I've been working on the host-yourself version today. I've had to convert it from my old version (where files were manually added to an array) to a dynamic and configurable system with an admin interface. Today I've:
    • Allowed projects to be edited
    • Allowed multiple projects and setting projects as default
    • Added downloading of DBO featured images so my servers don't collapse (also serves as a way of verifying the slug)
    • Modified database structure to allow default projects
    • Adding vulnerability testing in the admin panel to advise admin of security issues:
    • [​IMG]
    • Started work on file storage system
    • Fixed some formatting issues on the builds page
     
    hawkfalcon and LaxWasHere like this.
  12. Offline

    Sirstaven46

    Interesting... Cool!
     
  13. Offline

    lol768 Retired Staff

    Thanks :)

    Another screenshot:
    [​IMG]
     
  14. Offline

    LaxWasHere

    Sexy
     
    lol768 likes this.
  15. Offline

    lol768 Retired Staff

    That's because I didn't design it myself :D

    If I'd designed it all it would look more like this:
    [​IMG]
     
    KeybordPiano459 and -_Husky_- like this.
  16. Offline

    LaxWasHere

    Let's just put it this way, anything bootstrap is sexy.
     
    lol768 likes this.
  17. Offline

    lol768 Retired Staff

    File uploads are done, just need to allow files to be edited.
    [​IMG]
    Yes, I have too many windows/tabs open :)
     
    MrBluebear3 and np98765 like this.
  18. Offline

    Sushi

    ...but foundation is sexier
     
    steaks4uce likes this.
  19. Offline

    lol768 Retired Staff

    Good for grids. No UI components though from what I can see. You'd need to use jQuery UI or something.
     
  20. Offline

    Sushi

  21. Offline

    lol768 Retired Staff

  22. Offline

    Sushi

    Yeah, the typography and grid stand out more than the buttons etc.

    However, if you're going for your own design rather than a cookie-cutter one, foundation is far better than bootstrap, even just for the superior grid and responsiveness features.
     
  23. Offline

    lol768 Retired Staff

    Agreed. I'd consider it for a 'proper' project, whereas this is just something quick (and users won't see the admin panel anyway). Something to take a look at in the future
     
  24. Offline

    Sushi

    I might make my own fork of this instead of using your vanilla one for my hosted version, since I have some money-saving ideas like hosting files on S3 instead of locally to save money on storage and bandwith, LOL
     
  25. Offline

    chaseoes Retired Staff

    I mostly just want the Bootstrap.. I'm fine with manually adding files vs a fancy admin panel. :eek:
     
  26. Offline

    xGhOsTkiLLeRx

    fap
    (serious answer: look very nice, tell me when it's ready :D)
     
  27. Offline

    lol768 Retired Staff

    Since you asked :D
    [​IMG]

    Please note, the code works and it should be pretty secure (against SQL injection, compromised database and other issues) but the formatting of the code's formatting mess and needs sorting out (that's not an invitation to look at the code :p). Regardless, it will still work but just looks a bit ugly at the moment. It can also probably be optimized a lot.

    How to install
    Extract files and visit index.php. Database and files will be made. A username and password will be generated.

    It can be seen in action here.
     
    xGhOsTkiLLeRx and LaxWasHere like this.
  28. Offline

    chaseoes Retired Staff

    Any way to make a PHP script that only shows the version of the latest file in a channel (stable, beta, dev)? Would be great to make a plain text page with for update checkers.
     
  29. Offline

    lol768 Retired Staff

    Grab the latest version (just do a redownload), then use:
    latestVersion.php?pid=1&label=dev
    where pid = project ID and label = dev/stable/beta/broken

    This also fixes a security issue.
     
    hawkfalcon likes this.
  30. Offline

    xGhOsTkiLLeRx

    Strange, my generated PW is never shown...
    If I install it, it switches to settings.php and shows me the login mask, but no generated details...
     
Thread Status:
Not open for further replies.

Share This Page