summaryrefslogtreecommitdiff
path: root/src/web/_views/people
diff options
context:
space:
mode:
Diffstat (limited to 'src/web/_views/people')
-rw-r--r--src/web/_views/people/card.php15
-rw-r--r--src/web/_views/people/footer.php3
-rw-r--r--src/web/_views/people/header.php6
-rw-r--r--src/web/_views/people/main.php76
-rw-r--r--src/web/_views/people/people.php5
5 files changed, 105 insertions, 0 deletions
diff --git a/src/web/_views/people/card.php b/src/web/_views/people/card.php
new file mode 100644
index 0000000..7e040ba
--- /dev/null
+++ b/src/web/_views/people/card.php
@@ -0,0 +1,15 @@
+<?php /* Copyright (c) 2024 Freya Murphy */ ?>
+<?php /* vi: syntax=php */ ?>
+<a
+ class="card profile"
+ href="/profile?id=<?=$user['id']?>"
+>
+ <div class="col">
+ <?=pfp($user, FALSE)?>
+ <div class="col ml">
+ <span class="name"><?=$this->format_name($user)?></span>
+ <span class="subtext"><?=$user['username']?></span>
+ </div>
+ </div>
+</a>
+<?
diff --git a/src/web/_views/people/footer.php b/src/web/_views/people/footer.php
new file mode 100644
index 0000000..f18e031
--- /dev/null
+++ b/src/web/_views/people/footer.php
@@ -0,0 +1,3 @@
+<?php /* Copyright (c) 2024 Freya Murphy */ ?>
+<?php /* vi: syntax=php */ ?>
+</main>
diff --git a/src/web/_views/people/header.php b/src/web/_views/people/header.php
new file mode 100644
index 0000000..b1099ec
--- /dev/null
+++ b/src/web/_views/people/header.php
@@ -0,0 +1,6 @@
+<?php /* Copyright (c) 2024 Freya Murphy */ ?>
+<?php /* vi: syntax=php */ ?>
+<main id="main">
+ <h1 class="title"><?=ucfirst(lang('title'))?></h1>
+ <h3 class="desc"><?=ucfirst(lang('desc'))?></h3>
+ <hr>
diff --git a/src/web/_views/people/main.php b/src/web/_views/people/main.php
new file mode 100644
index 0000000..c602b2c
--- /dev/null
+++ b/src/web/_views/people/main.php
@@ -0,0 +1,76 @@
+<?php /* Copyright (c) 2024 Freya Murphy */ ?>
+<div id="people-container" class="col">
+ <?php $pdata = $this->people(); ?>
+</div>
+<?php
+
+ $loaded = count($pdata['users']);
+ $page_size = $pdata['page_size'];
+ $total = $pdata['count'];
+ $max = $pdata['max_id'];
+ $filter_uid = $pdata['filter_uid'];
+ $filer_type = $pdata['filter_type'];
+
+?>
+<?php if ($loaded == 0): ?>
+ <div id="no-people" class="card">
+ <?=lang('no_people_found')?>
+ </div>
+<?php endif; ?>
+<?php if ($loaded >= $page_size && $page_size < $total): ?>
+ <?=ilang('action_load_users',
+ id: 'action-load-users',
+ class: 'btn btn-blend grow mb',
+ attrs: array(
+ 'loaded' => $loaded,
+ 'pageSize' => $page_size,
+ 'userCount' => $total,
+ 'userMax' => $max,
+ 'filterUid' => $filter_uid,
+ 'filterType' => $filer_type
+ )
+ )?>
+ <script>
+
+ $('#action-load-users').on('click', function() {
+ let me = $(this);
+ let page = me.attr('page');
+ if (!page) {
+ page = '1';
+ }
+ let newPage = Number(page) + 1;
+ me.attr('page', newPage + '');
+
+ let loaded = Number(me.attr('loaded'));
+ let pageSize = Number(me.attr('pageSize'));
+ let userCount = Number(me.attr('userCount'));
+ let userMax = Number(me.attr('userMax'));
+
+ let filterType = me.attr('filterType');
+ let filterUid = me.attr('filterUid');
+
+ let url = '/people/people?page=' + page + '&max=' + userMax;
+
+ if (filterType && filterUid) {
+ url += '&filter=' + filterType + '&uid=' + filterUid;
+ }
+
+ $.get(url, function (data) {
+ if (data === '') {
+ me.remove();
+ return;
+ }
+
+ let container = $('#people-container');
+ container.append(data);
+
+ loaded += pageSize;
+ if (loaded >= userCount) {
+ me.remove();
+ } else {
+ me.attr('loaded', loaded + '');
+ }
+ });
+ });
+ </script>
+<?php endif ?>
diff --git a/src/web/_views/people/people.php b/src/web/_views/people/people.php
new file mode 100644
index 0000000..8726f1d
--- /dev/null
+++ b/src/web/_views/people/people.php
@@ -0,0 +1,5 @@
+<?php /* Copyright (c) 2024 Freya Murphy */
+foreach($users as $user) {
+ $this->view('people/card', array('user' => $user));
+}
+?>