diff --git a/.github/workflows/test-unit.yml b/.github/workflows/test-unit.yml
index 878202633..9b9bfc543 100644
--- a/.github/workflows/test-unit.yml
+++ b/.github/workflows/test-unit.yml
@@ -90,7 +90,7 @@ jobs:
run: |
if [ $(php -r 'printf(version_compare(PHP_VERSION, "8.2.99", ">=") ? 1 : 0);') = '1' ]
then
- pecl install https://xdebug.org/files/xdebug-3.3.0alpha2.tgz
+ pecl install https://xdebug.org/files/xdebug-3.4.1.tgz
elif [ $(php -r 'printf(version_compare(PHP_VERSION, "8.0.0", ">=") ? 1 : 0);') = '1' ]
then
pecl install xdebug
diff --git a/e107_admin/cpage.php b/e107_admin/cpage.php
index eaa5a2635..4e882211e 100644
--- a/e107_admin/cpage.php
+++ b/e107_admin/cpage.php
@@ -143,7 +143,7 @@ class page_admin_form_ui extends e_admin_form_ui
$query['id'] = $id;
$query = http_build_query($query, '', '&');
- $text = "
+ $text = "
".defset('ADMIN_EDIT_ICON')."";
if($this->getController()->getMode() === 'overview' && getperms('J1')) // Page/Menu Delete Perms.
diff --git a/e107_admin/mailout.php b/e107_admin/mailout.php
index 0aea0505c..e6365c175 100644
--- a/e107_admin/mailout.php
+++ b/e107_admin/mailout.php
@@ -1465,8 +1465,10 @@ class mailout_main_ui extends e_admin_ui
$bounceOpts = array('none' => LAN_MAILOUT_232, 'auto' => LAN_MAILOUT_233, 'mail' => LAN_MAILOUT_234);
unset($temp);
- if (!in_array($_POST['mailer'], array('smtp', 'sendmail', 'php'))) $_POST['mailer'] = 'php';
- $temp['mailer'] = $_POST['mailer'];
+
+ //if (!in_array($_POST['mailer'], array('smtp', 'sendmail', 'php'))) $_POST['mailer'] = 'php';
+ //$temp['mailer'] = $_POST['mailer'];
+
// Allow qmail as an option as well - works much as sendmail
if ((strpos($_POST['sendmail'],'sendmail') !== FALSE) || (strpos($_POST['sendmail'],'qmail') !== FALSE))
{
diff --git a/e107_admin/search.php b/e107_admin/search.php
index 4cd25c285..423ed0c69 100644
--- a/e107_admin/search.php
+++ b/e107_admin/search.php
@@ -404,7 +404,7 @@ else
- ".ADMIN_EDIT_ICON."
+ ".ADMIN_EDIT_ICON."
|
";
@@ -458,7 +458,7 @@ else
- ".ADMIN_EDIT_ICON."
+ ".ADMIN_EDIT_ICON."
|
";
diff --git a/e107_admin/users_extended.php b/e107_admin/users_extended.php
index 65ac57851..a7e415408 100755
--- a/e107_admin/users_extended.php
+++ b/e107_admin/users_extended.php
@@ -16,6 +16,8 @@ if (!getperms('4'))
exit;
}
+e107::css('inline', '#admin-users-extended-main-list td.options .btn-group { justify-content: left } ');
+
e107::coreLan('users_extended', true);
if(varset($_GET['mode']) == "ajax")
diff --git a/e107_handlers/form_handler.php b/e107_handlers/form_handler.php
index f7a178d81..353dc3cb4 100644
--- a/e107_handlers/form_handler.php
+++ b/e107_handlers/form_handler.php
@@ -3817,12 +3817,12 @@ var_dump($select_options);*/
{
case 'edit':
$icon = deftrue('e_ADMIN_AREA') ? defset('ADMIN_EDIT_ICON') : $tp->toIcon('e-edit-32');
- $options['class'] = $options['class'] === 'action' ? 'btn btn-default btn-secondary action edit' : $options['class'];
+ $options['class'] = $options['class'] === 'action' ? 'btn btn-success action edit' : $options['class'];
break;
case 'delete':
$icon = deftrue('e_ADMIN_AREA') ? defset('ADMIN_DELETE_ICON') : $tp->toIcon('fa-trash.glyph');
- $options['class'] = $options['class'] === 'action' ? 'btn btn-default btn-secondary action delete' : $options['class'];
+ $options['class'] = $options['class'] === 'action' ? 'btn btn-danger action delete' : $options['class'];
$options['data-confirm'] = LAN_JSCONFIRM;
break;
@@ -5301,7 +5301,7 @@ var_dump($select_options);*/
$att = [
'href' => e_SELF . "?$query",
- 'class' => "btn btn-default btn-primary$eModal",
+ 'class' => "btn btn-default btn-success$eModal",
'data-modal-caption' => $eModalCap,
'title' => LAN_EDIT,
// 'data-toggle' => 'tooltip',
diff --git a/e107_plugins/faqs/templates/faqs_template.php b/e107_plugins/faqs/templates/faqs_template.php
index 0dcb7be7d..145ba8115 100644
--- a/e107_plugins/faqs/templates/faqs_template.php
+++ b/e107_plugins/faqs/templates/faqs_template.php
@@ -34,7 +34,6 @@ $FAQS_TEMPLATE['all']['end'] = "
$FAQS_TEMPLATE['caption'] = "{FAQ_CAPTION} {FAQ_COUNT}";
-/** @experimental */
$FAQS_TEMPLATE['schema'] = '
{
"@context": "https://schema.org",
diff --git a/e107_plugins/forum/forum.php b/e107_plugins/forum/forum.php
index f6a930bb4..7446dac9c 100644
--- a/e107_plugins/forum/forum.php
+++ b/e107_plugins/forum/forum.php
@@ -434,6 +434,10 @@ class forum_front
$data['LASTPOSTUSER'] = !empty($row['user_name']) ? " $row['user_name'], 'id' => $row['thread_lastuser'])) . "'>" . $row['user_name'] . "" : LAN_ANONYMOUS;
$data['LASTPOSTDATE'] = $tp->toDate($row['thread_lastpost'], 'relative');
+ $data['LASTPOSTUSERAVATAR'] = $tp->toAvatar(e107::user($row['thread_lastuser']));
+ $data['VIEWS'] = $tp->toNumber($row['thread_views']);
+ $data['REPLIES'] = $tp->toNumber($row['thread_total_replies']);
+
$buttonId = "forum-track-button-" . intval($row['thread_id']);
$forumUrl = e107::url('forum', 'forum', $row);
diff --git a/e107_tests/tests/unit/e_parseTest.php b/e107_tests/tests/unit/e_parseTest.php
index 7c7243840..e51e6bbcc 100644
--- a/e107_tests/tests/unit/e_parseTest.php
+++ b/e107_tests/tests/unit/e_parseTest.php
@@ -625,8 +625,8 @@ EXPECTED;
"url": "https://localhost/e107/e107_images/button.png"
}
},
- "datePublished": "2025-01-01T12:00:00+00:00",
- "dateModified": "2025-01-01T09:00:00+00:00",
+ "datePublished": "2025-01-01T",
+ "dateModified": "2025-01-01T",
"articleBody": "Body of the news item"
}';
@@ -635,8 +635,8 @@ EXPECTED;
self::assertSame($expectedDecoded['headline'],$resultDecoded['headline']);
self::assertSame($expectedDecoded['description'],$resultDecoded['description']);
- self::assertSame($expectedDecoded['datePublished'],$resultDecoded['datePublished']);
- self::assertSame($expectedDecoded['dateModified'],$resultDecoded['dateModified']);
+ self::assertStringContainsString($expectedDecoded['datePublished'],$resultDecoded['datePublished']);
+ self::assertStringContainsString($expectedDecoded['dateModified'],$resultDecoded['dateModified']);
self::assertSame($expectedDecoded['articleBody'],$resultDecoded['articleBody']);
self::assertSame($expectedDecoded['author']['name'],$resultDecoded['author']['name']);
self::assertSame($expectedDecoded['publisher']['name'],$resultDecoded['publisher']['name']);
@@ -2027,6 +2027,7 @@ EXPECTED;
self::assertStringContainsString('https://static2.mydomain.com', $map['e107-themes/bootstrap3/images/myimage2.jpg'] );
$this->tp->setStaticUrl(null);
+ e107::getParser()->setStaticUrl(null);
}
/*