Skip to content

Commit

Permalink
Version 2.4
Browse files Browse the repository at this point in the history
  • Loading branch information
Ronef committed Jan 15, 2021
2 parents b82c96e + 98b81c7 commit cc066a6
Show file tree
Hide file tree
Showing 5 changed files with 168 additions and 96 deletions.
63 changes: 8 additions & 55 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
# (MODX)EvolutionCMS.snippets.ddGetFileInfo changelog


## Version 2.4 (2021-01-15)
* \+ The ability to return the MIME content type for a file (see the `tpl` parameter).
* \* Parameters → `tpl`: Wrong `[+file+]` placeholder was fixed.
* \+ README, CHANGELOG: Style improvements.
* \+ README → Documentation → Parameters description → `tpl_placeholders`: Text improved.


## Version 2.3 (2019-12-12)
* \+ If `file` doesn't contain base path, the snippet will add it.
* \* `fopen` is not used anymore because `@` operator doesn't always work.
Expand Down Expand Up @@ -29,63 +36,9 @@
* \* Is equal to `EnShort` by default.


## Version 2.1 (2015-12-28)
* \+ Добавлен вывод типа файла (плэйсхолдер `[+type+]` при выводе через `tpl` и `type` в `output` соответственно). Удобно использовать с [Font Awesome](http://fontawesome.io/).
* \* Нулевой размер файла выводится (не считается ошибкой filesize).
* \* Сниппет `ddGetDocumentField` больше не используется, значение поля документа получается при помощи метода `ddTools::getTemplateVarOutput`.
* \* Вместо прямого обращения к полю `$modx->config` используется метод `$modx->getConfig`.
* \* Внимание! Сниппет использует библиотеку `modx.ddTools` версии 0.15.


## Version 2.0 (2014-03-25)
* \* Сниппет переименован в `ddGetFileInfo`.
* \* Следующие параметры были переименованы:
* \* `getField` → `docField`.
* \* `getId` → `docId`.
* \* `type` → `sizeType`.
* \* `prec` → `sizePrec`.
* \* При выводе через шаблон следующие плэйсхолдеры были переименованы:
* \* `[+filesize+]` → `[+size+]`.
* \* `[+fileext+]` → `[+extension+]`.
* \* `[+filename+]` → `[+name+]`.
* \* `[+filepath+]` → `[+path+]`.
* \+ Добавлен параметр `$output`, позволяющий задать, что именно будет выводиться, если не задан шаблон.


## Version 1.6.1 (2013-10-23)
* \+ Существование файла теперь проверяется через `fopen`, что позволяет работать с удалёнными файлами.
* \* Если имя файла начинается с сивола `/`, он всегда вырезается.
* \* Если размер файла получить не удалось (например, файл где-то в интернетах), плэйсхолдер `filesize` в чанке `tpl` будет содержать пустую строку.
* \* Рефакторинг.


## Version 1.6 (2013-08-14)
* \* Внимание! Нарушена обратная совместимость.
* \+ При выводе через шаблон добавлен плэйсхолдер `[+file+]` (полный адрес файла).
* \* При выводе через шаблон плэйсхолдер `[+ext+]` переименован в `[+fileext+]` (для однообразности).
* \- Удалён параметр `getPublished` за ненадобностью.


## Version 1.5 (2013-01-17)
* \+ Добавлена возможность передавать дополнительные (параметр `placeholders`) в чанк `tpl`.
* \* Внимание! Сниппет теперь использует библиотеку ddTools 0.4 (при использовании параметра `placeholders`).


## Version 1.4 (2012-08-13)
* \+ При выводе через шаблон добавлены плэйсхолдеры: `[+filename+]` (имя файла), `[+filepath+]` (путь к файлу).


## Version 1.3 (2011-06-07)
* \+ Добавлена возможность получения адреса файла из поля заданного документа (добавлены параметры `getId`, `getField`, `getPublished`).


## Version 1.2 (2011-04-20)
* \+ Если файл получить не удалось, пробуем отрезать '/' от начала имени.
* \+ Добавлен плейсхолдер `[+ext+]`, в который записывается расширение файла при выводе через шаблон.


## Version 1.0 (2010)
* \+ The first release.


<link rel="stylesheet" type="text/css" href="https://DivanDesign.ru/assets/files/ddMarkdown.css" />
<style>ul{list-style:none;}</style>
71 changes: 71 additions & 0 deletions CHANGELOG_ru.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# (MODX)EvolutionCMS.snippets.ddGetFileInfo changelog


## Версия 2.4 (2021-01-15)
* \+ Возможность возвращать MIME тип файла (см. параметр `tpl`).
* \* Параметры → `tpl`: Некорректный плейсходлер `[+file+]` исправлен.
* \+ README, CHANGELOG: Улучшения стиля.
* \+ README → Документация → Описание параметров → `tpl_placeholders`: Текст улучшен.


## Версия 2.1 (2015-12-28)
* \+ Добавлен вывод типа файла (плэйсхолдер `[+type+]` при выводе через `tpl` и `type` в `output` соответственно). Удобно использовать с [Font Awesome](http://fontawesome.io/).
* \* Нулевой размер файла выводится (не считается ошибкой filesize).
* \* Сниппет `ddGetDocumentField` больше не используется, значение поля документа получается при помощи метода `ddTools::getTemplateVarOutput`.
* \* Вместо прямого обращения к полю `$modx->config` используется метод `$modx->getConfig`.
* \* Внимание! Сниппет использует библиотеку `modx.ddTools` версии 0.15.


## Версия 2.0 (2014-03-25)
* \* Сниппет переименован в `ddGetFileInfo`.
* \* Следующие параметры были переименованы:
* \* `getField` → `docField`.
* \* `getId` → `docId`.
* \* `type` → `sizeType`.
* \* `prec` → `sizePrec`.
* \* При выводе через шаблон следующие плэйсхолдеры были переименованы:
* \* `[+filesize+]` → `[+size+]`.
* \* `[+fileext+]` → `[+extension+]`.
* \* `[+filename+]` → `[+name+]`.
* \* `[+filepath+]` → `[+path+]`.
* \+ Добавлен параметр `$output`, позволяющий задать, что именно будет выводиться, если не задан шаблон.


## Версия 1.6.1 (2013-10-23)
* \+ Существование файла теперь проверяется через `fopen`, что позволяет работать с удалёнными файлами.
* \* Если имя файла начинается с сивола `/`, он всегда вырезается.
* \* Если размер файла получить не удалось (например, файл где-то в интернетах), плэйсхолдер `filesize` в чанке `tpl` будет содержать пустую строку.
* \* Рефакторинг.


## Версия 1.6 (2013-08-14)
* \* Внимание! Нарушена обратная совместимость.
* \+ При выводе через шаблон добавлен плэйсхолдер `[+file+]` (полный адрес файла).
* \* При выводе через шаблон плэйсхолдер `[+ext+]` переименован в `[+fileext+]` (для однообразности).
* \- Удалён параметр `getPublished` за ненадобностью.


## Версия 1.5 (2013-01-17)
* \+ Добавлена возможность передавать дополнительные (параметр `placeholders`) в чанк `tpl`.
* \* Внимание! Сниппет теперь использует библиотеку ddTools 0.4 (при использовании параметра `placeholders`).


## Версия 1.4 (2012-08-13)
* \+ При выводе через шаблон добавлены плэйсхолдеры: `[+filename+]` (имя файла), `[+filepath+]` (путь к файлу).


## Версия 1.3 (2011-06-07)
* \+ Добавлена возможность получения адреса файла из поля заданного документа (добавлены параметры `getId`, `getField`, `getPublished`).


## Версия 1.2 (2011-04-20)
* \+ Если файл получить не удалось, пробуем отрезать '/' от начала имени.
* \+ Добавлен плейсхолдер `[+ext+]`, в который записывается расширение файла при выводе через шаблон.


## Версия 1.0 (2010)
* \+ Первый релиз.


<link rel="stylesheet" type="text/css" href="https://DivanDesign.ru/assets/files/ddMarkdown.css" />
<style>ul{list-style:none;}</style>
40 changes: 26 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,32 +3,32 @@
Выводит информацию о фале: размер, имя, расширение и пр.


## # Requires
## Requires
* PHP >= 5.4
* [(MODX)EvolutionCMS](https://github.com/evolution-cms/evolution) >= 1.1
* [(MODX)EvolutionCMS.libraries.ddTools](https://code.divandesign.biz/modx/ddtools) >= 0.18


## # Documentation
## Documentation


### ## Installation
### Installation

Elements → Snippets: Create a new snippet with the following data:
1. Snippet name: `ddGetFileInfo`.
2. Description: `<b>2.3</b> Выводит информацию о фале: размер, имя, расширение и пр.`.
2. Description: `<b>2.4</b> Выводит информацию о фале: размер, имя, расширение и пр.`.
3. Category: `Core`.
4. Parse DocBlock: `no`.
5. Snippet code (php): Insert content of the `ddGetFileInfo_snippet.php` file from the archive.


### ## Parameters description
### Parameters description

* `file`
* Desctription: Имя файла (путь).
* Valid values:
* `string_filePath` — путь к файлу можно указать относительно корня сайта (`/` в начале не играет роли, поддерживаются оба варианта), а можно и полный (включая `$modx->config['base_path']`)
* `string_url` — можно указать не только локальный файл, но и адрес в интернете, но в этом случае по объективным причинам поддерживаются не все функции
* `stringFilePath` — путь к файлу можно указать относительно корня сайта (`/` в начале не играет роли, поддерживаются оба варианта), а можно и полный (включая `$modx->config['base_path']`)
* `stringUrl` — можно указать не только локальный файл, но и адрес в интернете, но в этом случае по объективным причинам поддерживаются не все функции
* **Required**

* `file_docField`
Expand All @@ -38,7 +38,7 @@ Elements → Snippets: Create a new snippet with the following data:

* `file_docId`
* Desctription: ID документа, из поля которого нужно получить адрес файла.
* Valid values: `integer_docId`
* Valid values: `integerDocId`
* Default value: —

* `sizeNameFormat`
Expand All @@ -62,6 +62,7 @@ Elements → Snippets: Create a new snippet with the following data:
* `'size'`
* `'extension'`
* `'type'`
* `'typeMime'`
* `'name'`
* `'path'`
* Default value: `'size'`
Expand All @@ -85,16 +86,27 @@ Elements → Snippets: Create a new snippet with the following data:
* `'word'`
* `'excel'`
* `'powerpoint'`
* `''`
* `[+typeMime+]` — content type in MIME format (only for local files, not for URLs)
* Valid values:
* `string_chunkName`
* `stringChunkName`
* `string` — use inline templates starting with `@CODE:`
* Default value: —

* `tpl_placeholders`
* Desctription: Additional data has to be passed into the `tpl`. Arrays are supported too: `some[a]=one&some[b]=two` => `[+some.a+]`, `[+some.b+]`; `some[]=one&some[]=two` => `[+some.0+]`, `[some.1]`.
* Desctription:
Additional data has to be passed into the `tpl`.
Nested objects and arrays are supported too:
* `{"someOne": "1", "someTwo": "test" }` => `[+someOne+], [+someTwo+]`.
* `{"some": {"a": "one", "b": "two"} }` => `[+some.a+]`, `[+some.b+]`.
* `{"some": ["one", "two"] }` => `[+some.0+]`, `[+some.1+]`.
* Valid values:
* `stirng_json` — as [JSON](https://en.wikipedia.org/wiki/JSON)
* `string_queryFormated` — as [Query string](https://en.wikipedia.org/wiki/Query_string)
* Default value: —
* `stringJsonObject` — as [JSON](https://en.wikipedia.org/wiki/JSON)
* `stringQueryFormated` — as [Query string](https://en.wikipedia.org/wiki/Query_string)
* It can also be set as native PHP object or array (e. g. for calls through `$modx->runSnippet`):
* `arrayAssociative`
* `object`
* Default value: —


<link rel="stylesheet" type="text/css" href="https://DivanDesign.ru/assets/files/ddMarkdown.css" />
12 changes: 9 additions & 3 deletions composer.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "dd/evolutioncms-snippets-ddgetfileinfo",
"type": "modxevo-snippet",
"version": "2.3",
"version": "2.4",
"description": "Выводит информацию о фале: размер, имя, расширение и пр.",
"keywords": [
"modx",
Expand All @@ -10,10 +10,16 @@
"evo",
"evo cms",
"evolution cms",
"ddgetfileinfo"
"ddgetfileinfo",
"get file info",
"file info",
"file size",
"file extension",
"file type",
"file mime"
],
"require": {
"php": ">=5.4",
"dd/modxevo-library-ddtools": ">=0.18"
"dd/evolutioncms-libraries-ddtools": ">=0.18"
}
}
Loading

0 comments on commit cc066a6

Please sign in to comment.