UI iteration 1

Quinn Brown

bootstrap b/c lazy

Questionnaire

Quinn Brown

 

What is your concept?

Do modernize the current workflow of cutting something on the laser printer 

 

Find 3 Precedents

https://docs.mcneel.com/rhino/5/help/en-us/information/rhinoscripting.htm - manipulate rhino projects using scripting

https://github.com/LaserQueue/LaserQueue - existing code for laser queue

laser.asa.lan - existing interface that we can learn to improve from

 

What programs and materials will you use:

Text editor

Intellij PyCharm Community

Dreamweaver

Laser cutter

 

Create a Timeline for Design and Build.

Tweaking existing code to run at allsaints

Creating an easy way for students to understand where to place wood in the cutter

Figure out a way to merge dxf files into a single file for smaller cuts to be expedited

Implement ^^^ efficiently

Current demo

Quinn Brown

1.1

Quinn Brown

New Stuff

 - you can now search items in the queue by name, time speed, power, material (literally anything in the table)

 - removed option for engraving temporarily as there is no know sheet for that

- all data is sent to SQL database, time-stamp is also now generated by a PHP method not through the database itself, allowing for easier display 

- the SQL column for cut/eng has been removed, replaced with speed and power

- you can no longer upload an empty field to the database (e.g. no file, no material, no name) it will push you to an error page

- no longer kicks to generic landing page, now dumps you back at the index

Bugs

- when you search the table header disappears 

- still no standardized info file with all connection data

- archive page is useless and displays a message as such. 

- not nuvu colors because god knows what the color pallet is for this site

- still heavily reliant on bootstrap

 

 

Project Statement

Quinn Brown

Our project is to manage the laser cutter system. Currently it is vastly inefficient and could be greatly improved.


I have re-made the web interface to be efficient and good looking. Dominick has worked on a physical aspect with a shelf and a color coded system. Now when students use the laser queue it should be more efficient than ever. You can see the progression of my progress by watching the various demos I have made on my profile.


 

v1

Quinn Brown

https://github.com/real-laser-hours/the-real-queue

XP compatibility status: questionable at best.

 

All the b̶u̶g̶s alternative features known:

  • Error reporting is set to 0, no matter what happens, the FTP server will return no file uploaded, but the file will upload

  • Security flaws out the wazoo -- not gonna sugar coat this -- all the connections are handled in the same file as the script. So…

The ‘it works, but’:

  • To access /old/ it goes straight into the apache file interface, causing the user to need to hit the back button twice

  • You can’t submit the same filename twice, more into that later

  • It’s total spaghetti

Ways and means:

Naming syntax

$name-$filename

SQL & FTP syntax

INSERT INTO current (UUID, NAME, CUT, MATERIAL) VALUES ('$UUID', '$name', '$rad', '$material')

  • Appending will come later

  • It is sanitized, so there should be no way to inject. But they could literally inspect element and get the db password(fixing this later).
  • The FTP server should always be set to: ftp_pasv($conn_id, true);
  • Passive mode (ftp_pasv) fixes the need for forwarding rules in most instances

Renaming syntax

$destination_file = "/ftp". $_FILES["file"]["name"];

Dumps the uploaded file into the /ftp/ folder

$source_file = $_FILES["file"]["tmp_name"];

$fileInfo = pathinfo($_FILES["file"]["name"]);

Nabs the path info of the uploaded file (sorta redundant)

move_uploaded_file($_FILES["file"]["tmp_name"],

           "ftp/" . $_REQUEST['name'] . '-' . $_FILES["file"]["name"]);

Renames the file by moving it to the same location (linux anyone?)

Printing out the speed and power

This is just a long if else statement

if($material==”X or Y”){ etc.

Functioning Upload System

Quinn Brown

While this is not my final, this is what I wish to currently update the laser system to in the interum. The current HFS is sometimes hard to understand for the new-user or the non-tech inclined. I have written a PHP script to interact with a FTP server that can easily be hosted on the current machine like the HFS. The main page simply is an upload box, and a display for users to see if their file is uploaded. Today I will work on an auto-cleaning script to run once a week to clean all files into /old/. As always any progress or future ideas are on https://github.com/real-laser-hours

UML

Quinn Brown