File indexing completed on 2025-05-04 05:29:20

0001 <?php
0002 /**
0003  *  ocs-webserver
0004  *
0005  *  Copyright 2016 by pling GmbH.
0006  *
0007  *    This file is part of ocs-webserver.
0008  *
0009  *    This program is free software: you can redistribute it and/or modify
0010  *    it under the terms of the GNU Affero General Public License as
0011  *    published by the Free Software Foundation, either version 3 of the
0012  *    License, or (at your option) any later version.
0013  *
0014  *    This program is distributed in the hope that it will be useful,
0015  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
0016  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0017  *    GNU Affero General Public License for more details.
0018  *
0019  *    You should have received a copy of the GNU Affero General Public License
0020  *    along with this program.  If not, see <http://www.gnu.org/licenses/>.
0021  **/
0022 
0023 $helperPrintDate = new Default_View_Helper_PrintDate();
0024 $createTime = $helperPrintDate->printDate($this->created_at);
0025 $updateTime = $helperPrintDate->printDate($this->changed_at);
0026 
0027 $helperBuildProductUrl = new Default_View_Helper_BuildProductUrl();
0028 $helperFetchSubcategoriesForProduct = new Default_View_Helper_FetchCategoriesForProductAsString();
0029 $helpImage = new Default_View_Helper_Image();
0030 ?>
0031 <div class="product-item grid-item">
0032     <a href="<?= $helperBuildProductUrl->buildProductUrl($this->project_id, ''); ?>">
0033         <figure>
0034             <img src="<?php echo $helpImage->Image($this->image_small, array('width' => 167, 'height' => 167)); ?>" class="explore-product-image"/>
0035         </figure>
0036         <div class="details">
0037             <h3>
0038                 <a href="<?= $helperBuildProductUrl->buildProductUrl($this->project_id, ''); ?>">
0039                     <?= Default_Model_HtmlPurify::purify($this->title) ?> <?=Default_Model_HtmlPurify::purify($this->version) ?>
0040                 </a>
0041             </h3>
0042             <?php if (empty($this->claimable)) { ?>
0043                 <span>By <b><?php echo $this->username; ?></b></span>
0044             <?php } ?>
0045             <span>In <b><?php echo $helperFetchSubcategoriesForProduct->fetchCategoriesForProductAsString($this->project_id) ?></b>
0046             </span>
0047             <!-- RATING -->
0048             <?php
0049             $this->widgetRating = new stdClass();
0050             $this->widgetRating->project_id = $this->project_id;
0051             $this->widgetRating->laplace_score = $this->laplace_score;
0052             $this->widgetRating->count_likes = $this->count_likes;
0053             $this->widgetRating->count_dislikes = $this->count_dislikes;
0054             echo $this->render('partials/widgetRating.phtml'); ?>
0055             <!-- /RATING -->
0056             <div class="progress">
0057                 <div class="bar no-goal">
0058                 </div>
0059             </div>
0060             <span><?= $updateTime == null ? '' : 'updated: ' . $updateTime ?> </span>
0061             <span><?= $createTime == null ? '' : 'added: ' . $createTime ?> </span>
0062         </div>
0063     </a>
0064 </div