HTML_Progress
[ class tree: HTML_Progress ] [ index: HTML_Progress ] [ all elements ]

Source for file vbar.php

Documentation is available at vbar.php

  1. <?php
  2. @include '../include_path.php';
  3. /**
  4.  * Progress meter is running in indeterminate mode while a file upload operation.
  5.  * This example may work with HTML_Progress 1.1
  6.  * but version 1.2.0 or better allows more easy facilities.
  7.  *
  8.  * @version    $Id: vbar.php,v 1.1 2004/06/26 12:22:52 farell Exp $
  9.  * @author     Laurent Laville <pear@laurent-laville.org>
  10.  * @package    HTML_Progress
  11.  */
  12.  
  13. require_once 'HTML/Progress.php';
  14.  
  15. function _methodExists($name)
  16. {
  17.     if (substr(PHP_VERSION,0,1'5'{
  18.         $n strtolower($name);
  19.     else {
  20.         $n $name;
  21.     }
  22.     if (in_array($nget_class_methods('HTML_Progress'))) {
  23.         return true;
  24.     }
  25.     return false;
  26. }
  27.  
  28. /*
  29.     User callback called pending progress meter is running, comes with version 1.2.0RC3
  30.  */
  31. function myFunctionHandler($progressValue&$obj)
  32. {
  33.     global $version;
  34.     global $stop;
  35.     $semaphore './uploads/'.$_GET['ID'];
  36.     
  37.     if (file_exists($semaphore)) {
  38.         $stop file_get_contents($semaphore);
  39.         $obj->setValue(100);
  40.         $obj->setIndeterminate(false);
  41.         $obj->display();
  42.         unlink($semaphore);
  43.     }
  44.  
  45.     // sleep a bit ...
  46.     if ($version > 1.1{
  47.         $obj->sleep();
  48.     else {
  49.         for ($i=0; $i<($obj->_anim_speed*1000)$i++}
  50.     }
  51. }
  52.  
  53. /*
  54.     Which version of html_progress: (stable)1.1 or (beta)1.2.0 RC1, RC2 or RC3
  55.  */
  56. $version _methodExists('run'? 1.2 : 1.1;
  57.  
  58. $progress = new HTML_Progress(HTML_PROGRESS_BAR_VERTICAL);
  59. $progress->setIncrement(5);
  60. $progress->setAnimSpeed(100);
  61. $progress->setIndeterminate(true);     // progress bar run in indeterminate mode
  62. $progress->setStringPainted(true);     // get space for the string
  63. $progress->setString("");              // but don't paint it
  64. if ($version > 1.1{
  65.     // set a progress handler required at least version 1.2.0RC3
  66.     $progress->setProgressHandler('myFunctionHandler');
  67. }
  68. $ui $progress->getUI();
  69. $ui->setCellCount(20);
  70. $ui->setBorderAttributes('width=1 color=#000000');
  71. $ui->setCellAttributes(array(
  72.         'active-color' => '#970038',
  73.         'inactive-color' => '#FFDDAA',
  74.         'width' => 20,
  75.         'height' => 20
  76. ));
  77. ?>
  78. <!DOCTYPE html
  79.     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  80.     "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  81.  
  82. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
  83. <head>
  84. <style type="text/css">
  85. <!--
  86. body {
  87.     background-color: White;
  88.     color: red;
  89.     font-family: Verdana, Arial;
  90.     font-size: 10px;
  91. }
  92. <?php echo $progress->getStyle()?>
  93. // -->
  94. </style>
  95. <script type="text/javascript">
  96. <!--
  97. <?php echo $progress->getScript()?>
  98. //-->
  99. </script>
  100. </head>
  101. <body>
  102.  
  103. <?php 
  104. echo $progress->toHtml()
  105.  
  106. if (isset($_GET['ID'])) {
  107.  
  108.     if ($version > 1.1{
  109.         $progress->run();    // run method is born on version 1.2.0RC3
  110.     else {
  111.         // do the same as run() method
  112.         do {
  113.             $progress->display();
  114.             myFunctionHandler($progress->getValue()$progress);
  115.             if ($progress->getPercentComplete(== 1{
  116.                 if ($progress->isIndeterminate()) {
  117.                     $progress->setValue(0);
  118.                 else {
  119.                     break;
  120.                 }
  121.             }
  122.             $progress->incValue();
  123.         while(1);
  124.     }
  125.     if ($stop == 'error'{
  126.         echo '<b>File was not uploaded !</b>';
  127.     else {
  128.         echo '<b>Upload Complete...</b>';
  129.     }
  130. }    
  131. ?>
  132.  
  133. </body>
  134. </html>

Documentation generated on Mon, 11 Mar 2019 13:52:39 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.