packages feed

git-annex-3.20121112: templates/dashboard/transfers.hamlet

<div .span9 ##{ident}>
  $maybe reldir <- relDir webapp
    <div .alert .alert-info>
      <p>
        git-annex is watching over your files in #
        <small><tt>#{reldir}</tt></small>, #
        and keeping them in sync with #
        <a href="@{RepositoriesR}">
          other repositories.
  $if null transfers
  $else
    <h2>Transfers
    $forall (transfer, info) <- transfers
      $with percent <- maybe "unknown" (showPercentage 0) $ percentComplete transfer info
        <div .row-fluid>
          <div .span10>
            <div .row-fluid>
              <h3>
                $maybe file <- associatedFile info
                  #{file}
                $nothing
                  #{key2file $ transferKey transfer}
                $case transferDirection transfer
                  $of Upload
                    &rarr;
                  $of Download
                    &larr;
                <small>
                  <a href="@{EditRepositoryR $ transferUUID transfer}">
                    #{maybe "unknown" Remote.name $ transferRemote info}
                  $with size <- maybe "unknown" (roughSize dataUnits True) $ keySize $ transferKey transfer
                    $if isJust $ startedTime info
                      $if isrunning info
                        <small .pull-right><b>#{percent} of #{size}</b></small>
                      $else
                        <small .pull-right>paused at #{percent} of #{size}</small>
                    $else
                        <small .pull-right>queued (#{size})</small>
            <div .row-fluid>
              <div .progress .progress-striped>
                <div .bar style="width: #{percent};">
          <div .btn-group .span2>
            $if isrunning info
              ^{actionButton (PauseTransferR transfer) Nothing (Just "pause") "btn" "icon-pause"}
            $else
              ^{actionButton (StartTransferR transfer) Nothing (Just "continue") "btn" "icon-play"}
            ^{actionButton (CancelTransferR transfer) Nothing (Just "cancel") "btn" "icon-remove"}