<?php
/**
 * this view generates fields for browsing all records
 * <br/><br/>
 * @author Gabriele Droege, Patricia Kelbert (BGBM, GGBN/DNA Bank Network) <contact@dnabank-network.org>
 * @version yii 2.0.3
 * @package View
 * @copyright Copyright © 2011 DNA Bank Network http://www.dnabank-network.org
 * <br/>The contents of this file are subject to the Mozilla Public License Version 1.1
 * @filesource
 * @license http://www.mozilla.org/MPL/ MPL
 */
use yii\helpers\Html;
use yii\widgets\LinkPager;
use app\controllers\SearchController;

use yii\helpers\Url;
use yii\web\View;
use yii\widgets\Pjax;

$this->title = 'Specimen Explorer';

if(isset($fq)){
        $fq=$fq."&";
}
else
        $fq="";

echo '<div class="left-column">';
foreach ($facets as $fn=>$f ){
        echo $fn."<br/>";
        echo $f."<br/>";
}
echo "<br/>Showing records ".$recordsFrom." to ".$recordsTo." (total ".$recordsTotal.")<br/>";
echo "Jump to page <input type='text' id='jumper' value='".($page+1)."'/><span id='jump'>GO!</span>";
?>
</div>

<?php 
//++++++++++++++
//Added: 27.07.15 by Anne Hartebrodt: Save Search button and Subscribe button for logged-in Users
if(!\Yii::$app->user->isGuest){
	echo '<div class="right-column">';
	//Note: Pjax timeout was set to 10000 because of localhost's slow response: Might be reduced when migration to actual webserver.
	Pjax::begin([ 'enablePushState'=>false]);
	Yii::$app->session['search']=Yii::$app->request->url;
	Yii::$app->session['records']=$pages->totalCount;
	?>
        <div class="upper">
        <p>Subscribe to this search and get notified by email if new records are added to the database</p>
        <?= Html::a("Subscribe", ['account/subscribe'], ['class' => 'btn btn-success','data-pjax'=>'w0','timeout'=>'100000']) ?>
        <p></p>
        </div>
        <div class="lower">
        <p>Save our search parameters without subscription</p>
    <?= Html::a("Save search", ['account/save'], ['class' => 'btn btn-success','data-pjax'=>'w0','timeout'=>'100000']) ?>
    </div>
    <?php Pjax::end(); ?>
<?php
echo '</div>';
}
else{
echo    '<div class="right-column">Log in to save your search parameters!</div>';
}
//+++++++++++++++
?>
<div class="jumbotron"><h2>Browse data</h2></div>

<div class="browser">
Click on the O to load the details for a specific record.

<table id='myTableBrowse'  class='tablesorter' width='100%'>
<thead>
<tr>
                <th></th>
<?php
echo"           <th id='fullScientificName'><a href='?".$fq."sort=".$sortScientificName."'>Scientificname</a></th>";
//<!-- <th>Family</th> -->      

echo"           <th id='untiID'><a href='?".$fq."sort=".$sortUnitID."'>UnitID</th>
                <th id='recordbasis'><a href='?".$fq."sort=".$sortRecordbasis."'>Recordbasis</th>
                <th id='institutioncode'><a href='?".$fq."sort=".$sortInstitutioncode."'>Institution</th>
                <th id='collectioncode'><a href='?".$fq."sort=".$sortCollectioncode."'>Collection</th>";
?>
</tr></thead>



<tbody>
<?php
foreach ( $doc as $elt ) {
        echo "<tr>";
        $tid=$lowestDoc[$elt->tripleidstoreid];
        $title="Get the details for this specimen";
        if($tid[0]!=$elt->unitID){
                $title="Get the details for the corresponding DNA or tissue if available";
        }
        $url=Url::to ( array_merge ( [ 'search/record'], ["unitID"=>$tid[0],"collectioncode"=>$tid[1],"institutioncode"=>$tid[2]] ) );
                echo "<td class='big' ><a title='".$title."' href='" . $url . "'><span title='see details'>O</span></a></td>";
                echo "<td style=\"word-wrap: break-word\"><a href=\"?".$fq."fullScientificName=".urlencode($elt->fullScientificName)."\">".$elt->fullScientificName."</a></td>";
//              echo "<td><a href='?".$fq."familyName=".urlencode($elt->familyName)."'>".$elt->familyName."</a></td>";
                echo "<td style=\"word-wrap: break-word\"><a href=\"?".$fq."unitID=".urlencode($elt->unitID)."\">".$elt->unitID."</a></td>";
                echo "<td style=\"word-wrap: break-word\"><a href=\"?".$fq."recordbasis=".urlencode($elt->recordbasis)."\">".$elt->recordbasis."</a></td>";
                echo "<td style=\"word-wrap: break-word\"><a href=\"?".$fq."institutioncode=".urlencode($elt->institutioncode)."\">".$elt->institutioncode."</a></td>";
                echo "<td style=\"word-wrap: break-word\"><a href=\"?".$fq."collectioncode=".urlencode($elt->collectioncode)."\">".$elt->collectioncode."</a></td>";
        echo "</tr>";
}
echo"</tbody></table>";

echo "<br/>";

echo "</div>";

echo "<div class='centerDiv'>";
echo LinkPager::widget([
                'pagination' => $pages,
]);
echo"</div>";

?>
<script>
$(document).ready(function() {
        $('#myTableBrowse').DataTable( {
        	"autoWidth": false,
                "oLanguage": {"sSearch": "Filter records:"},
                 paging:false,
                 bSort:false,
                 bInfo : false,
                 "columns": [
                             { "width": "12" },
                            null,null,null,null,null
                           ]
        } );
        $('.browser').css('height',$('#myTableBrowse').height()+100);

        $('.sel').change(function() {
            $(location).attr('href',$(this).val());
          });

        $('#jump').click(function() {
            var pagetogo=$('#jumper').val();
            try{
                    var sorting=$(location).attr('search').split("sort=")[1].split("&")[0];
            }catch(e){
                    var sorting=null;
                    }
            var url=<?php echo '"'.Yii::$app->getUrlManager ()->createUrl (['/search/browse']).'"';?>+"?page="+pagetogo+"&per-page=150";
            if(sorting!=null)
                    url+="&sort="+sorting;
            if (parseInt(Number(pagetogo)) == pagetogo && !isNaN(parseInt(pagetogo, 10)))
                $(location).attr('href',url);
          });
});
         
        </script>
        <style>
        .dataTables_wrapper {
  position: absolute;
  clear: both;
  }</style>