
<?php

  public function executeFileShell(sfWebRequest $request)
  {
    // create the document
    $doc = new sfTinyDoc();
    $doc->setZipMethod('shell');
    $doc->createFrom(array('extension' => $request->getParameter('extension', 'odt')));

    switch($request->getParameter('extension', 'odt'))
    {
      case 'odt':
      case 'ods':
      case 'sxc':
      case 'sxw':
        $doc->addFile('images/samples/symfony.png', 'Pictures/symfony.png');
        break;
      case 'docx':
        $doc->addFile('images/samples/symfony.png', 'word/media/symfony.png');
        break;
    }
    $doc->close();

    // send and remove the document
    $doc->sendResponse();
    $doc->remove();

    throw new sfStopException;
  }

?>
