propertySummary.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. use yii\apidoc\helpers\ApiMarkdown;
  3. use yii\apidoc\models\ClassDoc;
  4. use yii\apidoc\models\TraitDoc;
  5. use yii\helpers\ArrayHelper;
  6. /* @var $type ClassDoc|TraitDoc */
  7. /* @var $protected boolean */
  8. /* @var $this yii\web\View */
  9. /* @var $renderer \yii\apidoc\templates\html\ApiRenderer */
  10. $renderer = $this->context;
  11. if ($protected && count($type->getProtectedProperties()) == 0 || !$protected && count($type->getPublicProperties()) == 0) {
  12. return;
  13. } ?>
  14. <div class="summary doc-property">
  15. <h2><?= $protected ? 'Protected Properties' : 'Public Properties' ?></h2>
  16. <p><a href="#" class="toggle">Hide inherited properties</a></p>
  17. <table class="summary-table table table-striped table-bordered table-hover">
  18. <colgroup>
  19. <col class="col-property" />
  20. <col class="col-type" />
  21. <col class="col-description" />
  22. <col class="col-defined" />
  23. </colgroup>
  24. <tr>
  25. <th>Property</th><th>Type</th><th>Description</th><th>Defined By</th>
  26. </tr>
  27. <?php
  28. $properties = $type->properties;
  29. ArrayHelper::multisort($properties, 'name');
  30. foreach ($properties as $property): ?>
  31. <?php if ($protected && $property->visibility == 'protected' || !$protected && $property->visibility != 'protected'): ?>
  32. <tr<?= $property->definedBy != $type->name ? ' class="inherited"' : '' ?> id="<?= $property->name ?>">
  33. <td><?= $renderer->createSubjectLink($property) ?></td>
  34. <td><?= $renderer->createTypeLink($property->types) ?></td>
  35. <td><?= ApiMarkdown::process($property->shortDescription, $property->definedBy, true) ?></td>
  36. <td><?= $renderer->createTypeLink($property->definedBy) ?></td>
  37. </tr>
  38. <?php endif; ?>
  39. <?php endforeach; ?>
  40. </table>
  41. </div>