Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/upload/engine/inc/maharder/utils/composer.lock
2 changes: 1 addition & 1 deletion install_archive.bat
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ cd temp
set PATH=%PATH%;%ProgramFiles%\7-Zip\
7z a -mx0 -r -tzip -aoa dle_faker.zip *
cd ..
copy /Y temp\mhadmin.zip dle_faker_install.zip
copy /Y temp\dle_faker.zip dle_faker_install.zip
rd /s /q temp
exit;
2 changes: 1 addition & 1 deletion manifest.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"version": "173.1.0",
"status": "dev",
"status": "stable",
"dle": [
"17.x"
],
Expand Down
50 changes: 46 additions & 4 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,47 @@
просто шаблон для репозиториев
# DLE Faker

1. Обновить значения в manifest.json
2. Удалить, если нет файлов локализации, файл crowdin.yml
3. Если не нужен скрипт обновления readme.md, то удаляем из .github/workflows/update-readme.yml
DLE Faker - лагин, что позволяет вам генерировать случайные данные для DLE. На данный момент поддерживаются следующие компоненты: новости и пользователи.

## **Установка / Обновление**

**У вас три варианта для установки:**

### 1. **При помощи bat-Скрипта. Для пользователей Windows**

Для этого устанавливаем [7Zip](https://www.7-zip.org/download.html).
После установки запускаем скрипт install_archive.bat.
После завершения установки - загружаем install.zip в менеджер плагинов.

### 2. **При помощи sh-Скрипта. Для пользователей Linux/MacOS**

1. Устанавливаем права
```bash
chmod +x install_archive.sh
```
2. Запускаем скрипт
```bash
./install_archive.sh
```
3. Устанавливаем плагин через менеджер плагинов

### 3. **Упаковать самому**

Любым архиватором запаковать всё содержимое в папке upload (нужен формат zip!), причём так, чтобы в корне архива был
файл install.xml и папка engine.
Затем устанавливаем архив через менеджер плагинов.

### 4. **Просто залить**

Залейте папку engine в корень сайта и установите плагин через менеджер плагинов.

### 5. **Установка зависимостей** (Опционально)

Если в ходе использования выскочит ошибка связанная с `Faker` или / и `Faker\Factory` - установите зависимости через [композер](https://readme.devcraft.club/latest/dev/composer/).

Нужно установить следующую зависимость:

```bash
composer require fakerphp/faker
```

В теории она должна прописаться через файл `init.php`.
19 changes: 17 additions & 2 deletions upload/engine/ajax/maharder/dle_faker/generator_create_post.php
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

if (!$inputData['template']) {
echo (new ErrorResponseAjax())
->setData([__('dle_faker', 'Шаблон не может быть пустым')])->setMeta(['template'])->send();
->setData([__('Шаблон не может быть пустым')])->setMeta(['template'])->send();
exit;
}
if (!$inputData['count']) $inputData['count'] = 1;
Expand All @@ -29,7 +29,7 @@
$templateData = $MHDB->get(FakerTemplate::class, $inputData['template']);

if (!$templateData) {
echo (new ErrorResponseAjax(404))->setData([__('dle_faker', 'Такого шаблона не существует')])->send();
echo (new ErrorResponseAjax(404))->setData([__('Такого шаблона не существует')])->send();
exit;
}

Expand Down Expand Up @@ -177,13 +177,28 @@

} catch (Exception $e) {
echo (new ErrorResponseAjax())->setData([$e->getMessage()])->send();
LogGenerator::generateLog(
'DLE Faker',
'ajax/generator_create_post/create_post',
$e->getMessage()
);
exit;
}


} catch (Exception $e) {
echo (new ErrorResponseAjax())->setData([$e->getMessage()])->send();
LogGenerator::generateLog(
'DLE Faker',
'ajax/generator_create_post/exception',
$e->getMessage()
);
} catch (Throwable $e) {
echo (new ErrorResponseAjax())->setData([$e->getMessage()])->send();
LogGenerator::generateLog(
'DLE Faker',
'ajax/generator_create_post/throwable',
$e->getMessage()
);
}
exit;
21 changes: 13 additions & 8 deletions upload/engine/ajax/maharder/dle_faker/generator_create_user.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,21 +23,21 @@
$inputData = filter_var_array($parsedData, $filter);

if (empty($inputData['name'])) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Шаблон для псевдонима не может быть пустым')])
echo (new ErrorResponseAjax())->setData([__('Шаблон для псевдонима не может быть пустым')])
->setMeta(['name'])
->send();
exit;
}

if (empty($inputData['email'])) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Шаблон для электронной почты не может быть пустым')])
echo (new ErrorResponseAjax())->setData([__('Шаблон для электронной почты не может быть пустым')])
->setMeta(['email'])
->send();
exit;
}

if (empty($inputData['password'])) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Шаблон для пароля не может быть пустым')])
echo (new ErrorResponseAjax())->setData([__('Шаблон для пароля не может быть пустым')])
->setMeta(['password'])
->send();
exit;
Expand Down Expand Up @@ -79,19 +79,24 @@
]
)->send();
} else {
echo (new ErrorResponseAjax(404))->setData([__('dle_faker', 'Пользователь не был найден!')])->send();
echo (new ErrorResponseAjax(404))->setData([__('Пользователь не был найден!')])->send();
}
} elseif ($create_user === -1) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Псевдоним пользователя (:uname) уже занят!', [':uname' => $username])])->send();
echo (new ErrorResponseAjax())->setData([__('Псевдоним пользователя (:uname) уже занят!', [':uname' => $username])])->send();
} elseif ($create_user === -2) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Электронная почта (:email) пользователя уже занята!', [':email' => $email])])->send();
echo (new ErrorResponseAjax())->setData([__('Электронная почта (:email) пользователя уже занята!', [':email' => $email])])->send();
} elseif ($create_user === -3) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Электронная почта (:email) не подлежит нужному формату!', [':email' => $email])])->send();
echo (new ErrorResponseAjax())->setData([__('Электронная почта (:email) не подлежит нужному формату!', [':email' => $email])])->send();
} elseif ($create_user === -4) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Установленной группы (:group) не существует!', [':group' => $usergroup])])->send();
echo (new ErrorResponseAjax())->setData([__('Установленной группы (:group) не существует!', [':group' => $usergroup])])->send();
}

} catch (Exception $e) {
echo (new ErrorResponseAjax())->setData([$e->getMessage()])->send();
LogGenerator::generateLog(
'DLE Faker',
'ajax/generator_create_users',
$e->getMessage()
);
}
exit;
13 changes: 9 additions & 4 deletions upload/engine/ajax/maharder/dle_faker/settings.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,14 @@
if (empty($filteredData['language']) || $filteredData['language'] === 'site') $filteredData['language'] = MhTranslation::getLocale();

if(empty($filteredData['users'])) {
echo (new ErrorResponseAjax())->setData([__('mhadmin', 'Нужно указать хотя бы одного пользователя!')])
echo (new ErrorResponseAjax())->setData([__('Нужно указать хотя бы одного пользователя!')])
->setMeta(['users'])
->send();
exit;
}

if(empty($filteredData['categories'])) {
echo (new ErrorResponseAjax())->setData([__('mhadmin', 'Нужно указать хотя бы одну категорию!')])
echo (new ErrorResponseAjax())->setData([__('Нужно указать хотя бы одну категорию!')])
->setMeta(['categories'])
->send();
exit;
Expand All @@ -41,9 +41,14 @@
file_put_contents($configFile, json_encode($filteredData, JSON_UNESCAPED_UNICODE));
clear_cache();

echo (new SuccessResponseAjax())->setData([__('mhadmin', 'Настройки сохранены')])->send();
echo (new SuccessResponseAjax())->setData([__('Настройки сохранены')])->send();
} catch (Exception $e) {
echo (new ErrorResponseAjax())->setData([__('mhadmin', 'Ошибка в сохранении настроек'), $e->getMessage()])->send();
echo (new ErrorResponseAjax())->setData([__('Ошибка в сохранении настроек'), $e->getMessage()])->send();
LogGenerator::generateLog(
'DLE Faker',
'ajax/settings',
$e->getMessage()
);
}

exit;
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,27 @@
$id = filter_var($parsedData['id'], FILTER_VALIDATE_INT);

if (!$id) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Некорректные данные: :data.', [':data' => 'id'])])->send();
echo (new ErrorResponseAjax())->setData([__('Некорректные данные: :data.', [':data' => 'id'])])->send();
exit;
}

$template = $MHDB->get(FakerTemplate::class, $id);

if (!$template) {
echo (new ErrorResponseAjax(404))->setData([__('dle_faker', 'Такого шаблона не существует!')])->send();
echo (new ErrorResponseAjax(404))->setData([__('Такого шаблона не существует!')])->send();
exit;
}

try {
$template->active = $method == 'activate_template';
$MHDB->update($template);
echo (new SuccessResponseAjax(201))->setData([$method == 'activate_template' ? __('dle_faker', 'Шаблон был включён') : __('dle_faker', 'Шаблон был выключён')])->send();
echo (new SuccessResponseAjax(201))->setData([$method == 'activate_template' ? __('Шаблон был включён') : __('Шаблон был выключён')])->send();
} catch (Exception $e) {
echo (new ErrorResponseAjax())->setData([$e->getMessage()])->send();
LogGenerator::generateLog(
'DLE Faker',
'ajax/templates_change_status',
$e->getMessage()
);
}
exit;
19 changes: 12 additions & 7 deletions upload/engine/ajax/maharder/dle_faker/templates_create.php
Original file line number Diff line number Diff line change
Expand Up @@ -38,27 +38,27 @@

if (empty($inputData['name'])) {
echo (new ErrorResponseAjax())
->setData([__('dle_faker', 'Название шаблона не может быть пустым')])->setMeta(['name'])->send();
->setData([__('Название шаблона не может быть пустым')])->setMeta(['name'])->send();
exit;
}
if (empty($inputData['autor'])) {
echo (new ErrorResponseAjax())
->setData([__('dle_faker', 'Автор не может быть пустым')])->setMeta(['autor'])->send();
->setData([__('Автор не может быть пустым')])->setMeta(['autor'])->send();
exit;
}
if (empty($inputData['title'])) {
echo (new ErrorResponseAjax())
->setData([__('dle_faker', 'Заголовок не может быть пустым')])->setMeta(['title'])->send();
->setData([__('Заголовок не может быть пустым')])->setMeta(['title'])->send();
exit;
}
if (empty($inputData['category'])) {
echo (new ErrorResponseAjax())
->setData([__('dle_faker', 'Категория не может быть пустой')])->setMeta(['category'])->send();
->setData([__('Категория не может быть пустой')])->setMeta(['category'])->send();
exit;
}
if (empty($inputData['short_story'])) {
echo (new ErrorResponseAjax())
->setData([__('dle_faker', 'Короткое описание не может быть пустой')])->setMeta(['short_story'])->send();
->setData([__('Короткое описание не может быть пустой')])->setMeta(['short_story'])->send();
exit;
}
if (empty($inputData['allow_main'])) $inputData['allow_main'] = 'random';
Expand Down Expand Up @@ -89,18 +89,23 @@
if ($id) {
$MHDB->update($template);
echo (new SuccessResponseAjax(201))
->setData([__('dle_faker', 'Шаблон успешно изменен')])->setRedirect(
->setData([__('Шаблон успешно изменен')])->setRedirect(
$mh_admin->getDleUrl() . '?mod=dle_faker&sites=template'
)->send();
} else {
$MHDB->create($template);
echo (new SuccessResponseAjax())
->setData([__('dle_faker', 'Шаблон успешно создан')])->setRedirect(
->setData([__('Шаблон успешно создан')])->setRedirect(
$mh_admin->getDleUrl() . '?mod=dle_faker&sites=template'
)->send();
}

} catch (Exception $e) {
echo (new ErrorResponseAjax())->setData([$e->getMessage()])->send();
LogGenerator::generateLog(
'DLE Faker',
'ajax/templates_create',
$e->getMessage()
);
}
exit;
9 changes: 7 additions & 2 deletions upload/engine/ajax/maharder/dle_faker/templates_delete.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,19 @@
$id = filter_var($parsedData['id'], FILTER_VALIDATE_INT);

if (!$id) {
echo (new ErrorResponseAjax())->setData([__('dle_faker', 'Некорректные данные: :data.', [':data' => 'id'])])->send();
echo (new ErrorResponseAjax())->setData([__('Некорректные данные: :data.', [':data' => 'id'])])->send();
exit;
}

try {
$template = $MHDB->delete(FakerTemplate::class, $id);
echo (new SuccessResponseAjax(201))->setData([$method == 'activate_template' ? __('dle_faker', 'Шаблон был включён') : __('dle_faker', 'Шаблон был выключён')])->send();
echo (new SuccessResponseAjax(201))->setData([__('Шаблон удалён')])->send();
} catch (Exception $e) {
echo (new ErrorResponseAjax())->setData([$e->getMessage()])->send();
LogGenerator::generateLog(
'DLE Faker',
'ajax/templates_delete',
$e->getMessage()
);
}
exit;
16 changes: 8 additions & 8 deletions upload/engine/inc/dle_faker.php
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@
$modInfo = [
'module_name' => 'DLE Faker',
'module_version' => '173.1.0',
'module_description' => __('dle_faker', 'Генерирует случайные данные для наполнения сайта'),
'module_description' => __('Генерирует случайные данные для наполнения сайта'),
'module_code' => 'dle_faker',
'module_id' => 4,
'module_id' => 29,
'module_icon' => 'engine/inc/maharder/_modules/dle_faker/assets/icon.png',
'site_link' => 'https://devcraft.club',
'docs_link' => 'https://readme.devcraft.club',
'site_link' => 'https://devcraft.club/downloads/dle-faker.29/',
'docs_link' => 'https://readme.devcraft.club/latest/dev/dle_faker/install/',
'dle_config' => $config,
'crowdin_name' => 'dle_faker',
'crowdin_stat_id' => '16830581-755469'
Expand All @@ -38,19 +38,19 @@

$mh->setLink(
new AdminLink(
'template', __('dle_faker', 'Шаблоны'), '?mod=' . $modInfo['module_code'] . '&sites=template'
'template', __('Шаблоны'), '?mod=' . $modInfo['module_code'] . '&sites=template'
),
'template'
);
$mh->setLink(
new AdminLink(
'generator', __('dle_faker', 'Генератор'), '?mod=' . $modInfo['module_code'] . '&sites=generator'
'generator', __('Генератор'), '?mod=' . $modInfo['module_code'] . '&sites=generator'
),
'generator'
);
$mh->setLink(
new AdminLink(
'tags', __('dle_faker', 'Теги'), '?mod=' . $modInfo['module_code'] . '&sites=tags'
'tags', __('Теги'), '?mod=' . $modInfo['module_code'] . '&sites=tags'
),
'tags'
);
Expand Down Expand Up @@ -90,7 +90,7 @@
$mh->setVars($xtraVariable);
$mh->setVars($modVars);

$mh_template->addExtension(new TranslationExtension(MhTranslation::getTranslator('dle_faker')));
$mh_template->addExtension(new TranslationExtension(MhTranslation::getTranslator()));

// Загружаем шаблон
$template = $mh_template->load($htmlTemplate);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@

$logs = [
'173.1.0' => [
__('mhadmin', 'Основной релиз'),
__('Основной релиз'),
],
];

$modVars = [
'title' => __('mhadmin', 'История изменений'),
'title' => __('История изменений'),
'module_icon' => 'fad fa-robot',
'logs' => $logs,
];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

$GET_DATA = filter_input_array(INPUT_GET);

$mh->setBreadcrumb(new BreadCrumb(__('dle_faker', 'Доступные генераторы'), $mh->getLinkUrl('generator')));
$mh->setBreadcrumb(new BreadCrumb(__('Доступные генераторы'), $mh->getLinkUrl('generator')));

switch ($GET_DATA['action']) {

Expand Down
Loading
Loading