[drupal:dries] /misc progress.gif progress.js upload.js /includes common.inc /misc autocomplete.js drupal.css drupal.js /modules upload.module
User: dries Branch: HEAD Date: Wed, 31 Aug 2005 18:37:30 +0000 Added files: /misc progress.gif progress.js upload.js Modified files: /includes common.inc /misc autocomplete.js drupal.css drupal.js /modules upload.module Log message: - Patch #28483 by Steven: JavaScript enabled uploading. Comment from Steven: It does this by redirecting the submission of the form to a hidden <iframe> when you click "Attach" (we cannot submit data through Ajax directly because you cannot read file contents from JS for security reasons). Once the file is submitted, the upload-section of the form is updated. Things to note: * The feature degrades back to the current behaviour without JS. * If there are errors with the uploaded file (disallowed type, too big, ...), they are displayed at the top of the file attachments fieldset. * Though the hidden-iframe method sounds dirty, it's quite compact and is 100% implemented in .js files. The drupal.js api makes it a snap to use. * I included some minor improvements to the Drupal JS API and code. * I added an API drupal_call_js() to bridge the PHP/JS gap: it takes a function name and arguments, and outputs a <script> tag. The kicker is that it preserves the structure and type of arguments, so e.g. PHP associative arrays end up as objects in JS. * I also included a progressbar widget that I wrote for drumm's ongoing update.php work. It includes Ajax status updating/monitoring, but it is only used as a pure throbber in this patch. But as the code was already written and is going to be used in the near future, I left that part in. It's pretty small ;). If PHP supports ad-hoc upload info in the future like Ruby on Rails, we can implement that in 5 minutes. Links: http://cvs.drupal.org/diff.php?path=drupal/misc/progress.gif&old=NONE&new=1.... http://cvs.drupal.org/diff.php?path=drupal/misc/progress.js&old=NONE&new=1.1 http://cvs.drupal.org/diff.php?path=drupal/misc/upload.js&old=NONE&new=1.1 http://cvs.drupal.org/diff.php?path=drupal/includes/common.inc&old=1.475&new... http://cvs.drupal.org/diff.php?path=drupal/misc/autocomplete.js&old=1.4&new=... http://cvs.drupal.org/diff.php?path=drupal/misc/drupal.css&old=1.114&new=1.1... http://cvs.drupal.org/diff.php?path=drupal/misc/drupal.js&old=1.6&new=1.7 http://cvs.drupal.org/diff.php?path=drupal/modules/upload.module&old=1.49&ne...
participants (1)
-
drupal-devel@drupal.org