├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── administrator ├── components │ ├── com_joomfish │ │ └── contentelements │ │ │ ├── k2_attachments.xml │ │ │ ├── k2_categories.xml │ │ │ ├── k2_extra_fields.xml │ │ │ ├── k2_items.xml │ │ │ ├── k2_tags.xml │ │ │ ├── k2_users.xml │ │ │ └── translationK2_categoryFilter.php │ └── com_k2 │ │ ├── access.xml │ │ ├── config.xml │ │ ├── controllers │ │ ├── categories.php │ │ ├── category.php │ │ ├── comments.php │ │ ├── controller.php │ │ ├── extrafield.php │ │ ├── extrafields.php │ │ ├── extrafieldsgroup.php │ │ ├── extrafieldsgroups.php │ │ ├── info.php │ │ ├── item.php │ │ ├── items.php │ │ ├── media.php │ │ ├── settings.php │ │ ├── tag.php │ │ ├── tags.php │ │ ├── user.php │ │ ├── usergroup.php │ │ ├── usergroups.php │ │ └── users.php │ │ ├── elements │ │ ├── base.php │ │ ├── categories.php │ │ ├── categoriesmultiple.php │ │ ├── category.php │ │ ├── header.php │ │ ├── itemform.php │ │ ├── k2category.php │ │ ├── k2modalselector.php │ │ ├── k2tags.php │ │ ├── k2textarea.php │ │ ├── k2users.php │ │ ├── menuitem.php │ │ ├── menus.php │ │ ├── moduletemplate.php │ │ └── template.php │ │ ├── helpers │ │ ├── html.php │ │ ├── permissions.php │ │ └── stats.php │ │ ├── install.mysql.sql │ │ ├── jupgrade │ │ ├── j16upgrade.php │ │ ├── j16upgrade.xml │ │ ├── j25upgrade.php │ │ └── j25upgrade.xml │ │ ├── k2.php │ │ ├── lib │ │ ├── k2parameter.php │ │ └── k2plugin.php │ │ ├── models │ │ ├── categories.php │ │ ├── category.php │ │ ├── category.xml │ │ ├── comments.php │ │ ├── extrafield.php │ │ ├── extrafields.php │ │ ├── item.php │ │ ├── item.xml │ │ ├── items.php │ │ ├── model.php │ │ ├── settings.php │ │ ├── tag.php │ │ ├── tags.php │ │ ├── user.php │ │ ├── usergroup.php │ │ ├── usergroup.xml │ │ ├── usergroups.php │ │ └── users.php │ │ ├── tables │ │ ├── k2attachment.php │ │ ├── k2category.php │ │ ├── k2comment.php │ │ ├── k2extrafield.php │ │ ├── k2extrafieldsgroup.php │ │ ├── k2item.php │ │ ├── k2tag.php │ │ ├── k2user.php │ │ ├── k2usergroup.php │ │ └── table.php │ │ ├── uninstall.mysql.sql │ │ └── views │ │ ├── categories │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── category │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── comments │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── extrafield │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── extrafields │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── extrafieldsgroup │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── extrafieldsgroups │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── info │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── item │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── items │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── media │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── settings │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── tag │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── tags │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── user │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── usergroup │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── usergroups │ │ ├── tmpl │ │ │ └── default.php │ │ └── view.html.php │ │ ├── users │ │ ├── tmpl │ │ │ ├── default.php │ │ │ └── move.php │ │ └── view.html.php │ │ └── view.php ├── language │ └── en-GB │ │ ├── en-GB.com_k2.dates.ini │ │ ├── en-GB.com_k2.ini │ │ ├── en-GB.com_k2.menu.ini │ │ ├── en-GB.com_k2.sys.ini │ │ ├── en-GB.mod_k2_quickicons.ini │ │ ├── en-GB.mod_k2_quickicons.sys.ini │ │ ├── en-GB.mod_k2_stats.ini │ │ ├── en-GB.mod_k2_stats.sys.ini │ │ ├── en-GB.plg_finder_k2.ini │ │ ├── en-GB.plg_finder_k2.sys.ini │ │ ├── en-GB.plg_search_k2.ini │ │ ├── en-GB.plg_search_k2.sys.ini │ │ ├── en-GB.plg_system_k2.ini │ │ ├── en-GB.plg_system_k2.sys.ini │ │ ├── en-GB.plg_user_k2.ini │ │ └── en-GB.plg_user_k2.sys.ini └── modules │ ├── mod_k2_quickicons │ ├── mod_k2_quickicons.j25.xml │ ├── mod_k2_quickicons.php │ ├── mod_k2_quickicons.xml │ └── tmpl │ │ ├── css │ │ └── style.css │ │ ├── default.php │ │ └── images │ │ └── bg.jpg │ └── mod_k2_stats │ ├── helper.php │ ├── mod_k2_stats.j25.xml │ ├── mod_k2_stats.php │ ├── mod_k2_stats.xml │ └── tmpl │ └── default.php ├── components └── com_k2 │ ├── controllers │ ├── comments.php │ ├── controller.php │ ├── item.php │ ├── itemlist.php │ └── latest.php │ ├── css │ ├── k2.css │ └── k2.print.css │ ├── helpers │ ├── permissions.php │ ├── route.php │ └── utilities.php │ ├── images │ ├── loaders │ │ ├── calendar.gif │ │ ├── generic.gif │ │ └── search.gif │ ├── placeholder │ │ ├── category.png │ │ └── user.png │ ├── ratingstars.gif │ ├── search.png │ └── videobg.gif │ ├── k2.php │ ├── models │ ├── item.php │ └── itemlist.php │ ├── router.php │ ├── templates │ ├── default │ │ ├── category.php │ │ ├── category_item.php │ │ ├── item.php │ │ ├── item_comments_form.php │ │ ├── itemform.php │ │ ├── latest.php │ │ ├── latest_item.php │ │ ├── tag.php │ │ └── user.php │ ├── generic.php │ ├── generic_search.php │ ├── profile.php │ └── register.php │ └── views │ ├── comments │ ├── metadata.xml │ ├── tmpl │ │ └── report.php │ └── view.html.php │ ├── item │ ├── metadata.xml │ ├── tmpl │ │ ├── item.php │ │ ├── item.xml │ │ ├── item_comments_form.php │ │ ├── itemform.php │ │ └── itemform.xml │ ├── view.html.php │ ├── view.json.php │ └── view.raw.php │ ├── itemlist │ ├── metadata.xml │ ├── tmpl │ │ ├── category.php │ │ ├── category.xml │ │ ├── category_item.php │ │ ├── generic.xml │ │ ├── generic_item.php │ │ ├── tag.php │ │ ├── tag.xml │ │ ├── user.php │ │ ├── user.xml │ │ └── user_item.php │ ├── view.feed.php │ ├── view.html.php │ ├── view.json.php │ └── view.raw.php │ └── latest │ ├── metadata.xml │ ├── tmpl │ ├── latest.php │ ├── latest.xml │ └── latest_item.php │ └── view.html.php ├── docs ├── CNAME ├── collection.xml ├── images │ ├── k2_logo.png │ └── k2_logo.webp ├── update.js └── update.xml ├── install.k2.php ├── k2.xml ├── language └── en-GB │ ├── en-GB.com_k2.ini │ ├── en-GB.mod_k2_comments.ini │ ├── en-GB.mod_k2_comments.sys.ini │ ├── en-GB.mod_k2_content.ini │ ├── en-GB.mod_k2_content.sys.ini │ ├── en-GB.mod_k2_tools.ini │ ├── en-GB.mod_k2_tools.sys.ini │ ├── en-GB.mod_k2_user.ini │ ├── en-GB.mod_k2_user.sys.ini │ ├── en-GB.mod_k2_users.ini │ └── en-GB.mod_k2_users.sys.ini ├── manifest.xml ├── media └── k2 │ ├── assets │ ├── css │ │ ├── k2.backend.css │ │ └── k2.global.css │ ├── images │ │ └── backend │ │ │ ├── cross.png │ │ │ ├── dashboard.png │ │ │ ├── k2_logo_126x48.png │ │ │ ├── k2_logo_16x16.png │ │ │ ├── loader.gif │ │ │ ├── sprite.png │ │ │ └── tick.png │ ├── js │ │ ├── k2.backend.js │ │ ├── k2.frontend.js │ │ └── k2.rc.patch.js │ └── vendors │ │ ├── achingbrain │ │ └── php5-akismet │ │ │ └── akismet.class.php │ │ ├── bkirchoff │ │ └── nicedit │ │ │ ├── nicEdit.js │ │ │ └── nicEditorIcons.gif │ │ ├── cascade │ │ └── calendar │ │ │ └── calendar.php │ │ ├── studio-42 │ │ └── elfinder │ │ │ ├── .gitignore │ │ │ ├── Changelog │ │ │ ├── LICENSE.md │ │ │ ├── README.md │ │ │ ├── bower.json │ │ │ ├── composer.json │ │ │ ├── css │ │ │ ├── elfinder.full.css │ │ │ ├── elfinder.min.css │ │ │ └── theme.css │ │ │ ├── elfinder.html │ │ │ ├── elfinder.legacy.html │ │ │ ├── files │ │ │ ├── .gitkeep │ │ │ └── .trash │ │ │ │ └── .gitkeep │ │ │ ├── img │ │ │ ├── arrows-active.png │ │ │ ├── arrows-normal.png │ │ │ ├── crop.gif │ │ │ ├── dialogs.png │ │ │ ├── edit_aceeditor.png │ │ │ ├── edit_ckeditor.png │ │ │ ├── edit_ckeditor5.png │ │ │ ├── edit_codemirror.png │ │ │ ├── edit_creativecloud.png │ │ │ ├── edit_onlineconvert.png │ │ │ ├── edit_pixlreditor.png │ │ │ ├── edit_pixlrexpress.png │ │ │ ├── edit_simplemde.png │ │ │ ├── edit_tinymce.png │ │ │ ├── edit_tuiimgedit.png │ │ │ ├── edit_zohooffice.png │ │ │ ├── editor-icons.png │ │ │ ├── icons-big.png │ │ │ ├── icons-big.svg │ │ │ ├── icons-small.png │ │ │ ├── logo.png │ │ │ ├── progress.gif │ │ │ ├── quicklook-bg.png │ │ │ ├── quicklook-icons.png │ │ │ ├── resize.png │ │ │ ├── spinner-mini.gif │ │ │ ├── toolbar.png │ │ │ ├── trashmesh.png │ │ │ ├── tui-icon-a.svg │ │ │ ├── tui-icon-b.svg │ │ │ ├── tui-icon-c.svg │ │ │ ├── tui-icon-d.svg │ │ │ ├── ui-icons_ffffff_256x240.png │ │ │ ├── volume_icon_box.png │ │ │ ├── volume_icon_box.svg │ │ │ ├── volume_icon_dropbox.png │ │ │ ├── volume_icon_dropbox.svg │ │ │ ├── volume_icon_ftp.png │ │ │ ├── volume_icon_ftp.svg │ │ │ ├── volume_icon_googledrive.png │ │ │ ├── volume_icon_googledrive.svg │ │ │ ├── volume_icon_local.png │ │ │ ├── volume_icon_local.svg │ │ │ ├── volume_icon_network.png │ │ │ ├── volume_icon_network.svg │ │ │ ├── volume_icon_onedrive.png │ │ │ ├── volume_icon_onedrive.svg │ │ │ ├── volume_icon_sql.png │ │ │ ├── volume_icon_sql.svg │ │ │ ├── volume_icon_trash.png │ │ │ ├── volume_icon_trash.svg │ │ │ ├── volume_icon_zip.png │ │ │ └── volume_icon_zip.svg │ │ │ ├── js │ │ │ ├── elfinder.full.js │ │ │ ├── elfinder.min.js │ │ │ ├── extras │ │ │ │ ├── editors.default.js │ │ │ │ ├── editors.default.min.js │ │ │ │ ├── quicklook.googledocs.js │ │ │ │ └── quicklook.googledocs.min.js │ │ │ ├── i18n │ │ │ │ ├── elfinder.LANG.js │ │ │ │ ├── elfinder.ar.js │ │ │ │ ├── elfinder.bg.js │ │ │ │ ├── elfinder.ca.js │ │ │ │ ├── elfinder.cs.js │ │ │ │ ├── elfinder.da.js │ │ │ │ ├── elfinder.de.js │ │ │ │ ├── elfinder.el.js │ │ │ │ ├── elfinder.es.js │ │ │ │ ├── elfinder.fa.js │ │ │ │ ├── elfinder.fallback.js │ │ │ │ ├── elfinder.fo.js │ │ │ │ ├── elfinder.fr.js │ │ │ │ ├── elfinder.fr_CA.js │ │ │ │ ├── elfinder.he.js │ │ │ │ ├── elfinder.hr.js │ │ │ │ ├── elfinder.hu.js │ │ │ │ ├── elfinder.id.js │ │ │ │ ├── elfinder.it.js │ │ │ │ ├── elfinder.ja.js │ │ │ │ ├── elfinder.ko.js │ │ │ │ ├── elfinder.nl.js │ │ │ │ ├── elfinder.no.js │ │ │ │ ├── elfinder.pl.js │ │ │ │ ├── elfinder.pt_BR.js │ │ │ │ ├── elfinder.ro.js │ │ │ │ ├── elfinder.ru.js │ │ │ │ ├── elfinder.si.js │ │ │ │ ├── elfinder.sk.js │ │ │ │ ├── elfinder.sl.js │ │ │ │ ├── elfinder.sr.js │ │ │ │ ├── elfinder.sv.js │ │ │ │ ├── elfinder.tr.js │ │ │ │ ├── elfinder.ug_CN.js │ │ │ │ ├── elfinder.uk.js │ │ │ │ ├── elfinder.vi.js │ │ │ │ ├── elfinder.zh_CN.js │ │ │ │ ├── elfinder.zh_TW.js │ │ │ │ └── help │ │ │ │ │ ├── cs.html.js │ │ │ │ │ ├── de.html.js │ │ │ │ │ ├── en.html.js │ │ │ │ │ ├── es.html.js │ │ │ │ │ ├── ja.html.js │ │ │ │ │ ├── ko.html.js │ │ │ │ │ ├── pl.html.js │ │ │ │ │ ├── ru.html.js │ │ │ │ │ ├── sk.html.js │ │ │ │ │ └── tr.html.js │ │ │ ├── proxy │ │ │ │ └── elFinderSupportVer1.js │ │ │ └── worker │ │ │ │ ├── calcfilehash.js │ │ │ │ ├── quicklook.tiff.js │ │ │ │ └── quicklook.unzip.js │ │ │ ├── main.default.js │ │ │ ├── package.json │ │ │ ├── php │ │ │ ├── .tmp │ │ │ │ └── .htaccess │ │ │ ├── MySQLStorage.sql │ │ │ ├── autoload.php │ │ │ ├── connector.maximal.php-dist │ │ │ ├── connector.minimal.php-dist │ │ │ ├── editors │ │ │ │ ├── OnlineConvert │ │ │ │ │ └── editor.php │ │ │ │ ├── ZipArchive │ │ │ │ │ └── editor.php │ │ │ │ ├── ZohoOffice │ │ │ │ │ └── editor.php │ │ │ │ └── editor.php │ │ │ ├── elFinder.class.php │ │ │ ├── elFinderConnector.class.php │ │ │ ├── elFinderFlysystemGoogleDriveNetmount.php │ │ │ ├── elFinderPlugin.php │ │ │ ├── elFinderSession.php │ │ │ ├── elFinderSessionInterface.php │ │ │ ├── elFinderVolumeBox.class.php │ │ │ ├── elFinderVolumeDriver.class.php │ │ │ ├── elFinderVolumeDropbox.class.php │ │ │ ├── elFinderVolumeDropbox2.class.php │ │ │ ├── elFinderVolumeFTP.class.php │ │ │ ├── elFinderVolumeGoogleDrive.class.php │ │ │ ├── elFinderVolumeGroup.class.php │ │ │ ├── elFinderVolumeLocalFileSystem.class.php │ │ │ ├── elFinderVolumeMySQL.class.php │ │ │ ├── elFinderVolumeOneDrive.class.php │ │ │ ├── elFinderVolumeSFTPphpseclib.class.php │ │ │ ├── elFinderVolumeTrash.class.php │ │ │ ├── elFinderVolumeTrashMySQL.class.php │ │ │ ├── libs │ │ │ │ └── GdBmp.php │ │ │ ├── mime.types │ │ │ ├── plugins │ │ │ │ ├── AutoResize │ │ │ │ │ └── plugin.php │ │ │ │ ├── AutoRotate │ │ │ │ │ └── plugin.php │ │ │ │ ├── Normalizer │ │ │ │ │ └── plugin.php │ │ │ │ ├── Sanitizer │ │ │ │ │ └── plugin.php │ │ │ │ ├── Watermark │ │ │ │ │ ├── logo.png │ │ │ │ │ └── plugin.php │ │ │ │ └── WinRemoveTailDots │ │ │ │ │ └── plugin.php │ │ │ └── resources │ │ │ │ ├── image.png │ │ │ │ └── video.png │ │ │ └── sounds │ │ │ └── rm.wav │ │ └── verot │ │ └── class.upload.php │ │ ├── LICENSE.txt │ │ ├── README.md │ │ └── src │ │ └── class.upload.php │ ├── attachments │ └── index.html │ ├── categories │ └── index.html │ ├── galleries │ └── index.html │ ├── items │ ├── cache │ │ └── index.html │ └── src │ │ └── index.html │ ├── users │ └── index.html │ └── videos │ └── index.html ├── modules ├── mod_k2_comments │ ├── helper.php │ ├── mod_k2_comments.j25.xml │ ├── mod_k2_comments.php │ ├── mod_k2_comments.xml │ └── tmpl │ │ ├── commenters.php │ │ └── comments.php ├── mod_k2_content │ ├── helper.php │ ├── mod_k2_content.j25.xml │ ├── mod_k2_content.php │ ├── mod_k2_content.xml │ └── tmpl │ │ └── Default │ │ └── default.php ├── mod_k2_tools │ ├── helper.php │ ├── mod_k2_tools.j25.xml │ ├── mod_k2_tools.php │ ├── mod_k2_tools.xml │ └── tmpl │ │ ├── archive.php │ │ ├── authors.php │ │ ├── breadcrumbs.php │ │ ├── calendar.php │ │ ├── categories.php │ │ ├── customcode.php │ │ ├── search.php │ │ ├── selected_tags.php │ │ └── tags.php ├── mod_k2_user │ ├── helper.php │ ├── mod_k2_user.j25.xml │ ├── mod_k2_user.php │ ├── mod_k2_user.xml │ └── tmpl │ │ ├── login.php │ │ └── userblock.php └── mod_k2_users │ ├── helper.php │ ├── mod_k2_users.j25.xml │ ├── mod_k2_users.php │ ├── mod_k2_users.xml │ └── tmpl │ └── Default │ └── default.php ├── plugins ├── finder │ ├── k2.php │ └── k2.xml ├── search │ ├── k2.j25.xml │ ├── k2.php │ └── k2.xml ├── system │ ├── k2.j25.xml │ ├── k2.php │ └── k2.xml └── user │ ├── k2.j25.xml │ ├── k2.php │ └── k2.xml ├── script.k2.php └── uninstall.k2.php /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | /.project 3 | .ftpconfig 4 | .DS_Store 5 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ![K2](https://updates.getk2.org/images/k2_logo.png) 2 | *** 3 | 4 | # Changelog 5 | 6 | ### v2.11.20250512 - May 12th, 2025 7 | - Better handling for K2 items that would normally return a 404 when the alias does not match an actual K2 item (with K2 Advanced SEF enabled). 8 | - Fix PHP warnings that relate to class.upload.php & the "related items" block in the item view. 9 | - Extra white space trimming in HTML attributes 10 | - K2 Categories: Allow overriding inherited template (theme) on a per category basis. This change in K2 allows you to bypass template inheritance ONLY, when a category already inherits the parameters of another category. Just set a different template under the "Display Settings" tab, option "Select a template" and the category will override the template from the inherited category but allow all other options to stay inherited. 11 | 12 | ### v2.11.20241016 - October 16th, 2024 13 | - Ensure "moduleID" is a cache modifier/differentiator in itemlist views. This resolves issues where 2 or more URLs containing different "moduleID" parameters where cached as the same. 14 | 15 | ### v2.11.20240911 - September 11th, 2024 16 | - Fixed reported vulnerability in the third-party PHP library "class.upload.php" (https://github.com/getk2/k2/issues/561) 17 | 18 | ### v2.11.20240609 - June 9th, 2024 19 | - Improved database performance for the K2 Content module. When selecting specific items, a single query will now be executed instead of distinct queries, as was done previously. 20 | - Improved database performance for itemlist views (category, tag, user, date, search) by using a forced index on the category JOIN. The performance benefits for this change will be greatly noticed on sites with dozens to hundreds of thousands of K2 items, especially during crawling hours by search engines, SEO bots etc. 21 | - New update endpoints (now hosted on GitHub) - this will allow for faster code updates & releases from essentially a single point/codebase 22 | 23 | --- 24 | 25 | ### Previous Versions 26 | Please visit our blog for old release announcements: https://getk2.org/blog 27 | -------------------------------------------------------------------------------- /administrator/components/com_joomfish/contentelements/k2_attachments.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Item attachments 4 | JoomlaWorks 5 | (see K2 component) 6 | Definitions for K2 Item attachments 7 | 8 | 9 | ID 10 | Title 11 | Title attribute 12 |
13 |
14 |
-------------------------------------------------------------------------------- /administrator/components/com_joomfish/contentelements/k2_categories.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Categories 4 | JoomlaWorks 5 | (see K2 component) 6 | Definitions for K2 Categories 7 | 8 | 9 | ID 10 | Name 11 | Description 12 |
13 |
14 |
-------------------------------------------------------------------------------- /administrator/components/com_joomfish/contentelements/k2_extra_fields.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Extra Fields 4 | JoomlaWorks 5 | (see K2 component) 6 | Definitions for K2 Extra Fields 7 | 8 | 9 | ID 10 | Title 11 | Type 12 | Group 13 |
14 |
15 |
-------------------------------------------------------------------------------- /administrator/components/com_joomfish/contentelements/k2_items.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Items 4 | JoomlaWorks 5 | (see K2 component) 6 | Definitions for K2 Items 7 | 8 | 9 | ID 10 | Title 11 | Intro text 12 | Full text 13 | Image caption 14 | Image credits 15 | Video caption 16 | Video credits 17 | Extra fields 18 | Extra fields search 19 | Meta keywords 20 | Meta description 21 |
22 |
23 | 24 | catid 25 | title 26 | created_by 27 | published 28 | 29 |
-------------------------------------------------------------------------------- /administrator/components/com_joomfish/contentelements/k2_tags.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Tags 4 | JoomlaWorks 5 | (see K2 component) 6 | Definitions for K2 Tags 7 | 8 | 9 | ID 10 | Name 11 |
12 |
13 |
-------------------------------------------------------------------------------- /administrator/components/com_joomfish/contentelements/k2_users.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Users 4 | JoomlaWorks 5 | (see K2 component) 6 | Definitions for K2 Users 7 | 8 | 9 | ID 10 | Joomla user ID 11 | Description 12 |
13 |
14 |
-------------------------------------------------------------------------------- /administrator/components/com_k2/access.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 |
13 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/category.php: -------------------------------------------------------------------------------- 1 | getModel('category'); 27 | $model->save(); 28 | } 29 | 30 | public function saveAndNew() 31 | { 32 | JRequest::checkToken() or jexit('Invalid Token'); 33 | $model = $this->getModel('category'); 34 | $model->save(); 35 | } 36 | 37 | public function apply() 38 | { 39 | $this->save(); 40 | } 41 | 42 | public function cancel() 43 | { 44 | $app = JFactory::getApplication(); 45 | $app->redirect('index.php?option=com_k2&view=categories'); 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/comments.php: -------------------------------------------------------------------------------- 1 | getModel('comments'); 28 | $model->publish(); 29 | } 30 | 31 | public function unpublish() 32 | { 33 | JRequest::checkToken() or jexit('Invalid Token'); 34 | $model = $this->getModel('comments'); 35 | $model->unpublish(); 36 | } 37 | 38 | public function remove() 39 | { 40 | JRequest::checkToken() or jexit('Invalid Token'); 41 | $model = $this->getModel('comments'); 42 | $model->remove(); 43 | } 44 | 45 | public function deleteUnpublished() 46 | { 47 | JRequest::checkToken() or jexit('Invalid Token'); 48 | $model = $this->getModel('comments'); 49 | $model->deleteUnpublished(); 50 | } 51 | 52 | public function saveComment() 53 | { 54 | JRequest::checkToken() or jexit('Invalid Token'); 55 | $model = $this->getModel('comments'); 56 | $model->save(); 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/controller.php: -------------------------------------------------------------------------------- 1 | save(); 26 | } 27 | 28 | public function save() 29 | { 30 | JRequest::checkToken() or jexit('Invalid Token'); 31 | $model = $this->getModel('extraField'); 32 | $model->save(); 33 | } 34 | 35 | public function saveAndNew() 36 | { 37 | $this->save(); 38 | } 39 | 40 | public function cancel() 41 | { 42 | $app = JFactory::getApplication(); 43 | $app->redirect('index.php?option=com_k2&view=extrafields'); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/extrafields.php: -------------------------------------------------------------------------------- 1 | getModel('extraFields'); 27 | $model->publish(); 28 | } 29 | 30 | public function unpublish() 31 | { 32 | JRequest::checkToken() or jexit('Invalid Token'); 33 | $model = $this->getModel('extraFields'); 34 | $model->unpublish(); 35 | } 36 | 37 | public function saveorder() 38 | { 39 | JRequest::checkToken() or jexit('Invalid Token'); 40 | $model = $this->getModel('extraFields'); 41 | $model->saveorder(); 42 | $document = JFactory::getDocument(); 43 | if ($document->getType() == 'raw') { 44 | echo '1'; 45 | return $this; 46 | } else { 47 | $this->setRedirect('index.php?option=com_k2&view=extrafields', JText::_('K2_NEW_ORDERING_SAVED')); 48 | } 49 | } 50 | 51 | public function orderup() 52 | { 53 | JRequest::checkToken() or jexit('Invalid Token'); 54 | $model = $this->getModel('extraFields'); 55 | $model->orderup(); 56 | } 57 | 58 | public function orderdown() 59 | { 60 | JRequest::checkToken() or jexit('Invalid Token'); 61 | $model = $this->getModel('extraFields'); 62 | $model->orderdown(); 63 | } 64 | 65 | public function remove() 66 | { 67 | JRequest::checkToken() or jexit('Invalid Token'); 68 | $model = $this->getModel('extraFields'); 69 | $model->remove(); 70 | } 71 | 72 | public function add() 73 | { 74 | $app = JFactory::getApplication(); 75 | $app->redirect('index.php?option=com_k2&view=extrafield'); 76 | } 77 | 78 | public function edit() 79 | { 80 | $app = JFactory::getApplication(); 81 | $cid = JRequest::getVar('cid'); 82 | $app->redirect('index.php?option=com_k2&view=extrafield&cid='.$cid[0]); 83 | } 84 | } 85 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/extrafieldsgroup.php: -------------------------------------------------------------------------------- 1 | getModel('extraFields'); 21 | $view = $this->getView('extrafieldsgroup', 'html'); 22 | $view->setModel($model, true); 23 | parent::display(); 24 | } 25 | 26 | public function apply() 27 | { 28 | $this->save(); 29 | } 30 | 31 | public function save() 32 | { 33 | JRequest::checkToken() or jexit('Invalid Token'); 34 | $model = $this->getModel('extraFields'); 35 | $view = $this->getView('extrafieldsgroup', 'html'); 36 | $view->setModel($model, true); 37 | $model->saveGroup(); 38 | } 39 | 40 | public function saveAndNew() 41 | { 42 | $this->save(); 43 | } 44 | 45 | public function cancel() 46 | { 47 | $app = JFactory::getApplication(); 48 | $app->redirect('index.php?option=com_k2&view=extrafieldsgroups'); 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/extrafieldsgroups.php: -------------------------------------------------------------------------------- 1 | getModel('extraFields'); 21 | $view = $this->getView('extrafieldsgroups', 'html'); 22 | $view->setModel($model, true); 23 | parent::display(); 24 | } 25 | 26 | public function add() 27 | { 28 | $app = JFactory::getApplication(); 29 | $app->redirect('index.php?option=com_k2&view=extrafieldsgroup'); 30 | } 31 | 32 | public function edit() 33 | { 34 | $app = JFactory::getApplication(); 35 | $cid = JRequest::getVar('cid'); 36 | $app->redirect('index.php?option=com_k2&view=extrafieldsgroup&cid='.$cid[0]); 37 | } 38 | 39 | public function remove() 40 | { 41 | JRequest::checkToken() or jexit('Invalid Token'); 42 | $model = $this->getModel('extraFields'); 43 | $model->removeGroups(); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/info.php: -------------------------------------------------------------------------------- 1 | redirect('index.php?option=com_config&view=component&component=com_k2&path=&tmpl=component'); 22 | } else { 23 | JRequest::setVar('tmpl', 'component'); 24 | parent::display(); 25 | } 26 | } 27 | 28 | public function save() 29 | { 30 | $app = JFactory::getApplication(); 31 | JRequest::checkToken() or jexit('Invalid Token'); 32 | $model = $this->getModel('settings'); 33 | $model->save(); 34 | $app->redirect('index.php?option=com_k2&view=settings'); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/tag.php: -------------------------------------------------------------------------------- 1 | save(); 26 | } 27 | 28 | public function save() 29 | { 30 | JRequest::checkToken() or jexit('Invalid Token'); 31 | $model = $this->getModel('tag'); 32 | $model->save(); 33 | } 34 | 35 | public function saveAndNew() 36 | { 37 | $this->save(); 38 | } 39 | 40 | public function cancel() 41 | { 42 | $app = JFactory::getApplication(); 43 | $app->redirect('index.php?option=com_k2&view=tags'); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/tags.php: -------------------------------------------------------------------------------- 1 | getModel('tags'); 27 | $model->publish(); 28 | } 29 | 30 | public function unpublish() 31 | { 32 | JRequest::checkToken() or jexit('Invalid Token'); 33 | $model = $this->getModel('tags'); 34 | $model->unpublish(); 35 | } 36 | 37 | public function remove() 38 | { 39 | JRequest::checkToken() or jexit('Invalid Token'); 40 | $model = $this->getModel('tags'); 41 | $model->remove(); 42 | } 43 | 44 | public function add() 45 | { 46 | $app = JFactory::getApplication(); 47 | $app->redirect('index.php?option=com_k2&view=tag'); 48 | } 49 | 50 | public function edit() 51 | { 52 | $app = JFactory::getApplication(); 53 | $cid = JRequest::getVar('cid'); 54 | $app->redirect('index.php?option=com_k2&view=tag&cid='.$cid[0]); 55 | } 56 | 57 | public function removeOrphans() 58 | { 59 | JRequest::checkToken() or jexit('Invalid Token'); 60 | $model = $this->getModel('tags'); 61 | $model->removeOrphans(); 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/user.php: -------------------------------------------------------------------------------- 1 | getModel('user'); 27 | $model->save(); 28 | } 29 | 30 | public function apply() 31 | { 32 | $this->save(); 33 | } 34 | 35 | public function cancel() 36 | { 37 | $app = JFactory::getApplication(); 38 | $app->redirect('index.php?option=com_k2&view=users'); 39 | } 40 | 41 | public function report() 42 | { 43 | $app = JFactory::getApplication(); 44 | $model = K2Model::getInstance('User', 'K2Model'); 45 | $model->setState('id', JRequest::getInt('id')); 46 | $model->reportSpammer(); 47 | if (JRequest::getCmd('context') == "modalselector") { 48 | $app->redirect('index.php?option=com_k2&view=users&tmpl=component&template=system&context=modalselector'); 49 | } else { 50 | $app->redirect('index.php?option=com_k2&view=users'); 51 | } 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/usergroup.php: -------------------------------------------------------------------------------- 1 | save(); 26 | } 27 | 28 | public function save() 29 | { 30 | JRequest::checkToken() or jexit('Invalid Token'); 31 | $model = $this->getModel('userGroup'); 32 | $model->save(); 33 | } 34 | 35 | public function saveAndNew() 36 | { 37 | $this->save(); 38 | } 39 | 40 | public function cancel() 41 | { 42 | $app = JFactory::getApplication(); 43 | $app->redirect('index.php?option=com_k2&view=usergroups'); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /administrator/components/com_k2/controllers/usergroups.php: -------------------------------------------------------------------------------- 1 | redirect('index.php?option=com_k2&view=usergroup&cid='.$cid[0]); 28 | } 29 | 30 | public function add() 31 | { 32 | $app = JFactory::getApplication(); 33 | $app->redirect('index.php?option=com_k2&view=usergroup'); 34 | } 35 | 36 | public function remove() 37 | { 38 | JRequest::checkToken() or jexit('Invalid Token'); 39 | $model = $this->getModel('userGroups'); 40 | $model->remove(); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /administrator/components/com_k2/elements/header.php: -------------------------------------------------------------------------------- 1 | attributes()->class) { 22 | $additionalCssClass = ' '.$node->attributes()->class; 23 | } 24 | } else { 25 | if ($node->attributes('class')) { 26 | $additionalCssClass = ' '.$node->attributes('class'); 27 | } 28 | } 29 | 30 | if (version_compare(JVERSION, '2.5.0', 'ge')) { 31 | return '
'.JText::_($value).'
'; 32 | } else { 33 | return '
'.JText::_($value).'
'; 34 | } 35 | } 36 | 37 | public function fetchTooltip($label, $description, &$node, $control_name, $name) 38 | { 39 | return null; 40 | } 41 | } 42 | 43 | class JFormFieldHeader extends K2ElementHeader 44 | { 45 | public $type = 'header'; 46 | } 47 | 48 | class JElementHeader extends K2ElementHeader 49 | { 50 | public $_name = 'header'; 51 | } 52 | -------------------------------------------------------------------------------- /administrator/components/com_k2/elements/itemform.php: -------------------------------------------------------------------------------- 1 | addScriptDeclaration(" 24 | /* Mootools Snippet */ 25 | window.addEvent('domready', function() { 26 | if($('request-options')) { 27 | $$('.panel')[0].setStyle('display', 'none'); 28 | } 29 | if($('jform_browserNav')) { 30 | $('jform_browserNav').setProperty('value', 2); 31 | $('jform_browserNav').getElements('option')[0].destroy(); 32 | } 33 | if($('browserNav')) { 34 | $('browserNav').setProperty('value', 2); 35 | options = $('browserNav').getElements('option'); 36 | if(options.length == 3) { 37 | options[0].remove(); 38 | } 39 | } 40 | }); 41 | "); 42 | return ''; 43 | } 44 | 45 | public function fetchTooltip($label, $description, &$node, $control_name, $name) 46 | { 47 | return ''; 48 | } 49 | } 50 | 51 | class JFormFielditemform extends K2ElementItemForm 52 | { 53 | public $type = 'itemform'; 54 | } 55 | 56 | class JElementitemform extends K2ElementItemForm 57 | { 58 | public $_name = 'itemform'; 59 | } 60 | -------------------------------------------------------------------------------- /administrator/components/com_k2/elements/k2tags.php: -------------------------------------------------------------------------------- 1 | addStyleSheet('https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/css/select2.min.css'); 23 | $document->addScript('https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/js/select2.min.js'); 24 | $document->addScriptDeclaration(' 25 | $K2(document).ready(function() { 26 | if(typeof($K2(".k2TagsElement").chosen) == "function") { 27 | $K2(".k2TagsElement").chosen("destroy"); 28 | } 29 | $K2(".k2TagsElement").select2({ 30 | width : "300px", 31 | minimumInputLength : 2, 32 | ajax: { 33 | dataType : "json", 34 | url: "'.JURI::root(true).'/administrator/index.php?option=com_k2&view=item&task=tags&id=1", 35 | cache: "true", 36 | data: function (params) { 37 | var queryParameters = {q: params.term}; 38 | return queryParameters; 39 | }, 40 | processResults: function (data) { 41 | var results = []; 42 | jQuery.each(data, function(index, value) { 43 | var row = { 44 | id : value.id, 45 | text : value.name 46 | }; 47 | results.push(row); 48 | }); 49 | return {results: results}; 50 | } 51 | 52 | } 53 | }); 54 | }); 55 | '); 56 | 57 | $options = array(); 58 | if (is_array($value) && count($value)) { 59 | $db = JFactory::getDbo(); 60 | $query = "SELECT id AS value, name AS text FROM #__k2_tags WHERE id IN(".implode(',', $value).")"; 61 | $db->setQuery($query); 62 | $options = $db->loadObjectList(); 63 | } 64 | 65 | return JHTML::_('select.genericlist', $options, $fieldName, 'class="k2TagsElement" multiple="multiple" size="15"', 'value', 'text', $value); 66 | } 67 | } 68 | 69 | class JFormFieldK2Tags extends K2ElementK2Tags 70 | { 71 | public $type = 'k2tags'; 72 | } 73 | 74 | class JElementK2Tags extends K2ElementK2Tags 75 | { 76 | public $_name = 'k2tags'; 77 | } 78 | -------------------------------------------------------------------------------- /administrator/components/com_k2/elements/k2textarea.php: -------------------------------------------------------------------------------- 1 | attributes()->chars) { 23 | $chars = $node->attributes()->chars; 24 | } 25 | if ($node->attributes()->cols) { 26 | $cols = $node->attributes()->cols; 27 | } 28 | if ($node->attributes()->rows) { 29 | $rows = $node->attributes()->rows; 30 | } 31 | } else { 32 | $fieldName = $control_name.'['.$name.']'; 33 | if ($node->attributes('chars')) { 34 | $chars = $node->attributes('chars'); 35 | } 36 | if ($node->attributes('cols')) { 37 | $cols = $node->attributes('cols'); 38 | } 39 | if ($node->attributes('rows')) { 40 | $rows = $node->attributes('rows'); 41 | } 42 | } 43 | if (!$value) { 44 | $value = ''; 45 | } 46 | 47 | // Output 48 | return ''; 49 | } 50 | } 51 | 52 | class JFormFieldK2textarea extends K2ElementK2textarea 53 | { 54 | public $type = 'k2textarea'; 55 | } 56 | 57 | class JElementK2textarea extends K2ElementK2textarea 58 | { 59 | public $_name = 'k2textarea'; 60 | } 61 | -------------------------------------------------------------------------------- /administrator/components/com_k2/elements/menus.php: -------------------------------------------------------------------------------- 1 | setQuery($query); 23 | $menus = $db->loadObjectList(); 24 | $options = array(); 25 | $options[] = JHTML::_('select.option', '', JText::_('K2_NONE_ONSELECTLISTS')); 26 | foreach ($menus as $menu) { 27 | $options[] = JHTML::_('select.option', $menu->menutype, $menu->title); 28 | } 29 | return JHTML::_('select.genericlist', $options, $fieldName, 'class="inputbox"', 'value', 'text', $value); 30 | } 31 | } 32 | 33 | class JFormFieldMenus extends K2ElementMenus 34 | { 35 | public $type = 'menus'; 36 | } 37 | 38 | class JElementMenus extends K2ElementMenus 39 | { 40 | public $_name = 'menus'; 41 | } 42 | -------------------------------------------------------------------------------- /administrator/components/com_k2/jupgrade/j16upgrade.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | https://updates.getk2.org/collection.xml 5 | 6 | administrator/components/com_k2/jupgrade/j16upgrade.php 7 | jUpgradeComponentK2 8 | 9 | 10 | 11 | k2_attachments
12 | k2_categories
13 | k2_comments
14 | k2_extra_fields
15 | k2_extra_fields_groups
16 | k2_items
17 | k2_rating
18 | k2_tags
19 | k2_tags_xref
20 | k2_users
21 | k2_user_groups
22 |
23 | 24 | 25 | administrator/components/com_k2 26 | components/com_k2 27 | media/k2 28 | 29 | 30 | 31 | mod_k2_comments 32 | 33 | 34 | mod_k2_content 35 | 36 | 37 | mod_k2_login 38 | 39 | 40 | mod_k2_tools 41 | 42 | 43 | mod_k2_user 44 | 45 | 46 | mod_k2_users 47 | 48 | 49 |
-------------------------------------------------------------------------------- /administrator/components/com_k2/jupgrade/j25upgrade.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | https://updates.getk2.org/collection.xml 5 | 6 | administrator/components/com_k2/jupgrade/j25upgrade.php 7 | jUpgradeComponentK2 8 | 9 | 10 | 11 | k2_attachments
12 | k2_categories
13 | k2_comments
14 | k2_extra_fields
15 | k2_extra_fields_groups
16 | k2_items
17 | k2_rating
18 | k2_tags
19 | k2_tags_xref
20 | k2_users
21 | k2_user_groups
22 |
23 | 24 | 25 | administrator/components/com_k2 26 | components/com_k2 27 | media/k2 28 | 29 | 30 | 31 | mod_k2_comments 32 | 33 | 34 | mod_k2_content 35 | 36 | 37 | mod_k2_login 38 | 39 | 40 | mod_k2_tools 41 | 42 | 43 | mod_k2_user 44 | 45 | 46 | mod_k2_users 47 | 48 | 49 |
-------------------------------------------------------------------------------- /administrator/components/com_k2/models/model.php: -------------------------------------------------------------------------------- 1 | loadByOption('com_k2'); 22 | $post = JRequest::get('post'); 23 | $component->bind($post); 24 | if (!$component->check()) { 25 | $app->enqueueMessage($component->getError(), 'error'); 26 | return false; 27 | } 28 | if (!$component->store()) { 29 | $app->enqueueMessage($component->getError(), 'error'); 30 | return false; 31 | } 32 | return true; 33 | } 34 | 35 | public function &getParams() 36 | { 37 | static $instance; 38 | if ($instance == null) { 39 | $component = JTable::getInstance('component'); 40 | $component->loadByOption('com_k2'); 41 | $instance = new JParameter($component->params, JPATH_ADMINISTRATOR.'/components/com_k2/config.xml'); 42 | } 43 | return $instance; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /administrator/components/com_k2/models/usergroup.php: -------------------------------------------------------------------------------- 1 | load($cid); 24 | return $row; 25 | } 26 | 27 | public function save() 28 | { 29 | $app = JFactory::getApplication(); 30 | $row = JTable::getInstance('K2UserGroup', 'Table'); 31 | 32 | if (!$row->bind(JRequest::get('post'))) { 33 | $app->enqueueMessage($row->getError(), 'error'); 34 | $app->redirect('index.php?option=com_k2&view=usergroups'); 35 | } 36 | 37 | if (!$row->check()) { 38 | $app->enqueueMessage($row->getError(), 'error'); 39 | $app->redirect('index.php?option=com_k2&view=usergroup&cid='.$row->id); 40 | } 41 | 42 | if (!$row->store()) { 43 | $app->enqueueMessage($row->getError(), 'error'); 44 | $app->redirect('index.php?option=com_k2&view=usergroups'); 45 | } 46 | 47 | $cache = JFactory::getCache('com_k2'); 48 | $cache->clean(); 49 | 50 | switch (JRequest::getCmd('task')) { 51 | case 'apply': 52 | $msg = JText::_('K2_CHANGES_TO_USER_GROUP_SAVED'); 53 | $link = 'index.php?option=com_k2&view=usergroup&cid='.$row->id; 54 | break; 55 | case 'saveAndNew': 56 | $msg = JText::_('K2_USER_GROUP_SAVED'); 57 | $link = 'index.php?option=com_k2&view=usergroup'; 58 | break; 59 | case 'save': 60 | default: 61 | $msg = JText::_('K2_USER_GROUP_SAVED'); 62 | $link = 'index.php?option=com_k2&view=usergroups'; 63 | break; 64 | } 65 | $app->enqueueMessage($msg); 66 | $app->redirect($link); 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /administrator/components/com_k2/tables/k2attachment.php: -------------------------------------------------------------------------------- 1 | commentText = JString::trim($this->commentText); 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /administrator/components/com_k2/tables/k2extrafield.php: -------------------------------------------------------------------------------- 1 | name = JString::trim($this->name); 34 | if ($this->name == '') 35 | { 36 | $this->setError(JText::_('K2_NAME_CANNOT_BE_EMPTY')); 37 | return false; 38 | } 39 | return true; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /administrator/components/com_k2/tables/k2extrafieldsgroup.php: -------------------------------------------------------------------------------- 1 | name = JString::trim($this->name); 29 | if ($this->name == '') 30 | { 31 | $this->setError(JText::_('K2_GROUP_MUST_HAVE_A_NAME')); 32 | return false; 33 | } 34 | return true; 35 | } 36 | 37 | } 38 | -------------------------------------------------------------------------------- /administrator/components/com_k2/tables/k2user.php: -------------------------------------------------------------------------------- 1 | url) != '' && substr($this->url, 0, 4) != 'http') { 38 | $this->url = 'https://'.$this->url; 39 | } 40 | return true; 41 | } 42 | 43 | public function bind($array, $ignore = '') 44 | { 45 | if (key_exists('plugins', $array) && is_array($array['plugins'])) { 46 | $registry = new JRegistry(); 47 | $registry->loadArray($array['plugins']); 48 | $array['plugins'] = $registry->toString(); 49 | } 50 | 51 | return parent::bind($array, $ignore); 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /administrator/components/com_k2/tables/k2usergroup.php: -------------------------------------------------------------------------------- 1 | name = JString::trim($this->name); 31 | if ($this->name == '') 32 | { 33 | $this->setError(JText::_('K2_GROUP_CANNOT_BE_EMPTY')); 34 | return false; 35 | } 36 | return true; 37 | } 38 | 39 | function bind($array, $ignore = '') 40 | { 41 | 42 | if (key_exists('params', $array) && is_array($array['params'])) 43 | { 44 | $registry = new JRegistry(); 45 | $registry->loadArray($array['params']); 46 | if (JRequest::getVar('categories') == 'all' || JRequest::getVar('categories') == 'none') 47 | $registry->set('categories', JRequest::getVar('categories')); 48 | $array['permissions'] = $registry->toString(); 49 | } 50 | return parent::bind($array, $ignore); 51 | } 52 | 53 | } 54 | -------------------------------------------------------------------------------- /administrator/components/com_k2/tables/table.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 |
17 |

18 | row->id): ?> 19 | 20 | 21 | 22 | 23 |

24 | 34 |
35 | 36 | 37 | 38 | 39 | 40 |
41 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/extrafieldsgroup/view.html.php: -------------------------------------------------------------------------------- 1 | getModel(); 20 | $extraFieldsGroup = $model->getExtraFieldsGroup(); 21 | JFilterOutput::objectHTMLSafe($extraFieldsGroup); 22 | $this->assignRef('row', $extraFieldsGroup); 23 | 24 | // Disable Joomla menu 25 | JRequest::setVar('hidemainmenu', 1); 26 | 27 | // Toolbar 28 | $title = (JRequest::getInt('cid')) ? JText::_('K2_EDIT_EXTRA_FIELD_GROUP') : JText::_('K2_ADD_EXTRA_FIELD_GROUP'); 29 | JToolBarHelper::title($title, 'k2.png'); 30 | 31 | JToolBarHelper::apply(); 32 | JToolBarHelper::save(); 33 | $saveNewIcon = version_compare(JVERSION, '2.5.0', 'ge') ? 'save-new.png' : 'save.png'; 34 | JToolBarHelper::custom('saveAndNew', $saveNewIcon, 'save_f2.png', 'K2_SAVE_AND_NEW', false); 35 | JToolBarHelper::cancel(); 36 | 37 | // JS 38 | $document = JFactory::getDocument(); 39 | $document->addScriptDeclaration(" 40 | Joomla.submitbutton = function(pressbutton) { 41 | if (pressbutton == 'cancel') { 42 | submitform(pressbutton); 43 | return; 44 | } 45 | if (\$K2.trim(\$K2('#name').val()) == '') { 46 | alert('".JText::_('K2_GROUP_NAME_CANNOT_BE_EMPTY', true)."'); 47 | } else { 48 | submitform(pressbutton); 49 | } 50 | }; 51 | "); 52 | 53 | parent::display($tpl); 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/media/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 14 | 40 |
41 |
42 |
43 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/media/view.html.php: -------------------------------------------------------------------------------- 1 | assignRef('mimes', $mimes); 34 | $this->assignRef('type', $type); 35 | $this->assignRef('fieldID', $fieldID); 36 | $this->assignRef('token', $token); 37 | 38 | if ($app->isAdmin()) { 39 | // Toolbar 40 | JToolBarHelper::title(JText::_('K2_MEDIA_MANAGER'), 'k2.png'); 41 | if (K2_JVERSION != '15') { 42 | JToolBarHelper::preferences('com_k2', '(window.innerHeight) * 0.9', '(window.innerWidth) * 0.7', 'K2_SETTINGS'); 43 | } else { 44 | $toolbar = JToolBar::getInstance('toolbar'); 45 | $toolbar->appendButton('Popup', 'config', 'K2_SETTINGS', 'index.php?option=com_k2&view=settings', '(window.innerWidth) * 0.7', '(window.innerHeight) * 0.9'); 46 | } 47 | 48 | $this->loadHelper('html'); 49 | K2HelperHTML::subMenu(); 50 | } 51 | 52 | parent::display($tpl); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/settings/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 13 | 14 |
15 |
16 |
17 | 20 | 23 |
24 |
25 | 26 |
27 |
28 |
29 | 30 | pane->startPane('settings'); ?> 31 | params->getGroups() as $group=>$value): ?> 32 | pane->startPanel(JText::_($group), $group.'-tab'); ?> 33 | params->render('params', $group); ?> 34 | pane->endPanel(); ?> 35 | 36 | pane->endPane(); ?> 37 | 38 | 39 | 40 | 41 | 42 |
43 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/settings/view.html.php: -------------------------------------------------------------------------------- 1 | getModel(); 24 | 25 | $params = $model->getParams(); 26 | $this->assignRef('params', $params); 27 | 28 | $pane = JPane::getInstance('Tabs'); 29 | $this->assignRef('pane', $pane); 30 | 31 | parent::display($tpl); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/tag/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 |
17 |

18 | row->id): ?> 19 | 20 | 21 | 22 | 23 |

24 | 25 | 51 |
52 | 53 | 54 | 55 | 56 | 57 | 58 |
59 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/tag/view.html.php: -------------------------------------------------------------------------------- 1 | getModel(); 20 | $tag = $model->getData(); 21 | JFilterOutput::objectHTMLSafe($tag); 22 | if (!$tag->id) { 23 | $tag->published = 1; 24 | } 25 | $this->assignRef('row', $tag); 26 | 27 | $lists = array(); 28 | $lists['published'] = JHTML::_('select.booleanlist', 'published', 'class="inputbox"', $tag->published); 29 | $this->assignRef('lists', $lists); 30 | 31 | // Disable Joomla menu 32 | JRequest::setVar('hidemainmenu', 1); 33 | 34 | // Toolbar 35 | $title = (JRequest::getInt('cid')) ? JText::_('K2_EDIT_TAG') : JText::_('K2_ADD_TAG'); 36 | JToolBarHelper::title($title, 'k2.png'); 37 | 38 | JToolBarHelper::apply(); 39 | JToolBarHelper::save(); 40 | $saveNewIcon = version_compare(JVERSION, '2.5.0', 'ge') ? 'save-new.png' : 'save.png'; 41 | JToolBarHelper::custom('saveAndNew', $saveNewIcon, 'save_f2.png', 'K2_SAVE_AND_NEW', false); 42 | JToolBarHelper::cancel(); 43 | 44 | // JS 45 | $document = JFactory::getDocument(); 46 | $document->addScriptDeclaration(" 47 | Joomla.submitbutton = function(pressbutton) { 48 | if (pressbutton == 'cancel') { 49 | submitform(pressbutton); 50 | return; 51 | } 52 | if (\$K2.trim(\$K2('#name').val())=='') { 53 | alert('".JText::_('K2_TAG_CANNOT_BE_EMPTY', true)."'); 54 | } else { 55 | submitform(pressbutton); 56 | } 57 | }; 58 | "); 59 | 60 | parent::display($tpl); 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/users/tmpl/move.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 |
17 |
18 |

19 |
20 |
21 |
22 | 23 | lists['group']; ?> 24 |
25 |
26 | 27 | lists['k2group']; ?> 28 |
29 |
30 | (rows); ?>) 31 |
    32 | rows as $row): ?> 33 |
  1. 34 | name; ?> 35 | 36 |
  2. 37 | 38 |
39 |
40 |
41 |
42 | 43 | 44 | 45 | 46 |
47 | -------------------------------------------------------------------------------- /administrator/components/com_k2/views/view.php: -------------------------------------------------------------------------------- 1 | isClient('site') && stripos($app->getTemplate(), 'yootheme') === 0) { 25 | // Trigger the custom YOOtheme Pro event 26 | $app->triggerEvent('onLoadTemplate', [$this, $tpl]); 27 | 28 | // If the event overrode the output, print that output and don't display anything else 29 | if ($this->_output) { 30 | echo $this->_output; 31 | return; 32 | } 33 | } 34 | 35 | return parent::display($tpl); 36 | } 37 | } 38 | } else { 39 | class K2View extends JView 40 | { 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.com_k2.dates.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_DATE_FORMAT="d/m/Y - H:i" 10 | K2_DATE_FORMAT_CALENDAR="Y-m-d H:i:s" 11 | K2_DATE_FORMAT_LC2="l, d F Y H:i" 12 | K2_DATE_FORMAT_LC="l, d F Y" 13 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.com_k2.menu.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | COM_K2.K2_CATEGORIES="Categories" 10 | COM_K2.K2_COMMENTS="Comments" 11 | COM_K2.K2_EXTRA_FIELDS="Extra Fields" 12 | COM_K2.K2_EXTRA_FIELD_GROUPS="Extra Field Groups" 13 | COM_K2.K2_INFORMATION="Information" 14 | COM_K2.K2_ITEMS="Items" 15 | COM_K2.K2_MEDIA_MANAGER="Media Manager" 16 | COM_K2.K2_TAGS="Tags" 17 | COM_K2.K2_USERS="Users" 18 | COM_K2.K2_USER_GROUPS="User Groups" 19 | COM_K2="K2" 20 | K2="K2" 21 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.com_k2.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | COM_K2="K2" 10 | K2="K2" 11 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.mod_k2_quickicons.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_ADD_NEW_ITEM="Add new item" 10 | K2_CACHE_TIME="Cache time" 11 | K2_CACHING="Caching" 12 | K2_CATEGORIES="Categories" 13 | K2_COMMENTS="Comments" 14 | K2_COMMUNITY="K2 Community" 15 | K2_DASHBOARD="K2 dashboard" 16 | K2_DISABLE="Disable" 17 | K2_DISABLED="Disabled" 18 | K2_DOCS_AND_TUTORIALS="K2 Documentation" 19 | K2_EDIT="Edit" 20 | K2_ENABLE="Enable" 21 | K2_ENABLED="Enabled" 22 | K2_EXTEND="Extend K2" 23 | K2_EXTRA_FIELDS="Extra fields" 24 | K2_EXTRA_FIELD_GROUPS="Extra field groups" 25 | K2_FEATURED_ITEMS="Featured items" 26 | K2_HIDE="Hide" 27 | K2_ITEMS="Items" 28 | K2_MEDIA_MANAGER="Media Manager" 29 | K2_MODULE_CLASS_SUFFIX="Module class suffix" 30 | K2_MODULE_CLASS_SUFFIX_DESCRIPTION="A suffix to be applied to the CSS class of the Module. This allows for individual Module styling." 31 | K2_MODULE_DEFAULT_CSS="Module default CSS" 32 | K2_MODULE_LOGO="Module logo" 33 | K2_NO_CACHING="No caching" 34 | K2_QUICKICONS_ADMIN="K2 Quick Icons (admin)" 35 | K2_QUICKICONS_FOR_USE_IN_THE_JOOMLA_CONTROL_PANEL_DASHBOARD_PAGE="K2 quickicons for use in the Joomla control panel (dashboard) page" 36 | K2_SELECT_WHETHER_TO_CACHE_THE_CONTENT_OF_THIS_MODULE="Select whether to cache the content of this module" 37 | K2_SHOW="Show" 38 | K2_TAGS="Tags" 39 | K2_THE_TIME_IN_SECONDS_BEFORE_THE_MODULE_IS_RECACHED="The time (in seconds) before the module is recached." 40 | K2_TRASHED_CATEGORIES="Trashed categories" 41 | K2_TRASHED_ITEMS="Trashed items" 42 | K2_USER="User" 43 | K2_USERS="Users" 44 | K2_USER_GROUPS="User groups" 45 | K2_USE_GLOBAL="Use global" 46 | MOD_K2_QUICKICONS="K2 quickicons" 47 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.mod_k2_quickicons.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | MOD_K2_QUICKICONS="K2 quickicons" 10 | K2_QUICKICONS_FOR_USE_IN_THE_JOOMLA_CONTROL_PANEL_DASHBOARD_PAGE="K2 quickicons for use in the Joomla control panel (dashboard) page" 11 | 12 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.mod_k2_stats.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_ADDED_ON="Added on" 10 | K2_CACHE_TIME="Cache time" 11 | K2_CACHING="Caching" 12 | K2_CATEGORIES="Categories" 13 | K2_COMMENT="Comment" 14 | K2_COUNT="Count" 15 | K2_DISABLE="Disable" 16 | K2_DISABLED="Disabled" 17 | K2_ENABLE="Enable" 18 | K2_FEATURED="featured" 19 | K2_LATEST_COMMENTS="Latest comments" 20 | K2_LATEST_COMMENTS_TAB="Latest Comments tab" 21 | K2_LATEST_ITEMS="Latest items" 22 | K2_LATEST_ITEMS_TAB="Latest Items tab" 23 | K2_MOD_K2_STATS="mod k2 stats" 24 | K2_MOST_COMMENTED_ITEMS="Most commented items" 25 | K2_MOST_COMMENTED_ITEMS_TAB="Most Commented Items tab" 26 | K2_NO_CACHING="No caching" 27 | K2_POPULAR_ITEMS="Popular items" 28 | K2_POPULAR_ITEMS_TAB="Popular Items tab" 29 | K2_POSTED_BY="Posted by" 30 | K2_STATISTICS="Statistics" 31 | K2_STATISTICS_TAB="Statistics tab" 32 | K2_STATS_ADMIN="K2 stats (admin)" 33 | K2_STATS_FOR_USE_IN_THE_K2_DASHBOARD_PAGE="K2 Stats for use in the K2 Dashboard page." 34 | K2_SELECT_WHETHER_TO_CACHE_THE_CONTENT_OF_THIS_MODULE="Select whether to cache the content of this module" 35 | K2_TAGS="Tags" 36 | K2_THE_TIME_IN_SECONDS_BEFORE_THE_MODULE_IS_RECACHED="The time (in seconds) before the module is recached." 37 | K2_TRASHED="trashed" 38 | K2_TYPE="Type" 39 | K2_USE_GLOBAL="Use global" 40 | K2_USERS="Users" 41 | K2_USER_GROUPS="User groups" 42 | K2_USER="User" 43 | 44 | ;Untranslated 45 | MOD_K2_STATS="K2 stats" 46 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.mod_k2_stats.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | MOD_K2_STATS="K2 stats" 10 | K2_STATS_FOR_USE_IN_THE_K2_DASHBOARD_PAGE="K2 Stats for use in the K2 Dashboard page." 11 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.plg_finder_k2.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | PLG_FINDER_K2_DESCRIPTION="This plugin indexes K2 Items." 10 | PLG_FINDER_K2="Smart Search - K2" 11 | PLG_FINDER_QUERY_FILTER_BRANCH_P_AUTHOR="Authors" 12 | PLG_FINDER_QUERY_FILTER_BRANCH_P_K2_CATEGORY="K2 Categories" 13 | PLG_FINDER_QUERY_FILTER_BRANCH_P_K2_ITEM="K2 Items" 14 | PLG_FINDER_QUERY_FILTER_BRANCH_S_AUTHOR="Author" 15 | PLG_FINDER_QUERY_FILTER_BRANCH_S_K2_CATEGORY="K2 Category" 16 | PLG_FINDER_QUERY_FILTER_BRANCH_S_K2_ITEM="K2 Item" 17 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.plg_finder_k2.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | PLG_FINDER_K2="Smart Search - K2" 10 | PLG_FINDER_K2_DESCRIPTION="This plugin indexes K2 Items." 11 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.plg_search_k2.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_ENABLE="Enable" 10 | K2_ENABLE_SEARCHING_IN_TAGS="Enable searching in tags" 11 | K2_ITEMS="K2 Items" 12 | K2_SEARCH_K2="Search - K2" 13 | K2_SEARCH_LIMIT="Search Limit" 14 | K2_SELECT_IF_YOU_WANT_TO_SEARCH_ITEMS_TAGS_NOTE_THAT_THIS_CAN_BE_VERY_SLOW_ON_LARGE_SITES="Select if you want to search item's tags. Note that this can be very slow on large sites." 15 | K2_THE_NUMBER_OF_ITEMS_TO_RETURN_WHEN_PERFORMING_A_SEARCH="The number of items to return when performing a search." 16 | K2_THIS_PLUGIN_EXTENDS_THE_DEFAULT_JOOMLA_SEARCH_FUNCTIONALITY_TO_K2_CONTENT="This plugin extends the default Joomla search functionality to K2 content." 17 | 18 | ;Untranslated 19 | K2_NO="No" 20 | K2_YES="Yes" 21 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.plg_search_k2.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_SEARCH_K2="Search - K2" 10 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.plg_system_k2.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_SYSTEM_K2="System - K2" 10 | K2_THE_K2_SYSTEM_PLUGIN_IS_USED_TO_ASSIST_THE_PROPER_FUNCTIONALITY_OF_THE_K2_COMPONENT_SITE_WIDE_MAKE_SURE_ITS_ALWAYS_PUBLISHED_WHEN_THE_K2_COMPONENT_IS_INSTALLED="The K2 system plugin is used to assist the proper functionality of the K2 component site wide. Make sure it's always published when the K2 component is installed." 11 | K2_TRANSLATION="Translation" 12 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.plg_system_k2.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_SYSTEM_K2="System - K2" 10 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.plg_user_k2.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_A_USER_SYNCHRONIZATION_PLUGIN_FOR_K2="A user synchronization plugin for K2" 10 | K2_USER_K2="User - K2" 11 | -------------------------------------------------------------------------------- /administrator/language/en-GB/en-GB.plg_user_k2.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | K2_USER_K2="User - K2" 10 | -------------------------------------------------------------------------------- /administrator/modules/mod_k2_quickicons/mod_k2_quickicons.j25.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Quick Icons (admin) 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_QUICKICONS_FOR_USE_IN_THE_JOOMLA_CONTROL_PANEL_DASHBOARD_PAGE 12 | 13 | mod_k2_quickicons.php 14 | tmpl 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 |
29 | 30 | 31 | 32 | 33 | 34 |
35 |
36 |
37 |
38 | -------------------------------------------------------------------------------- /administrator/modules/mod_k2_quickicons/mod_k2_quickicons.php: -------------------------------------------------------------------------------- 1 | authorise('core.manage', 'com_k2')) { 17 | return; 18 | } 19 | $language = JFactory::getLanguage(); 20 | $language->load('com_k2.dates', JPATH_ADMINISTRATOR); 21 | if ($user->authorise('core.admin', 'com_k2')) { 22 | $user->gid = 1000; 23 | } else { 24 | $user->gid = 1; 25 | } 26 | } 27 | 28 | // JoomlaWorks reference parameters 29 | $mod_name = "mod_k2_quickicons"; 30 | $mod_copyrights_start = "\n\n\n"; 31 | $mod_copyrights_end = "\n\n\n"; 32 | 33 | // API 34 | $app = JFactory::getApplication(); 35 | $document = JFactory::getDocument(); 36 | $user = JFactory::getUser(); 37 | 38 | // Module parameters 39 | $moduleclass_sfx = $params->get('moduleclass_sfx', ''); 40 | $modCSSStyling = (int)$params->get('modCSSStyling', 1); 41 | $modLogo = (int)$params->get('modLogo', 1); 42 | 43 | // Component parameters 44 | $componentParams = JComponentHelper::getParams('com_k2'); 45 | 46 | // Load CSS & JS 47 | K2HelperHTML::loadHeadIncludes(true, false, true, false); 48 | if ($modCSSStyling) { 49 | $document->addStyleSheet(JURI::base(true).'/modules/'.$mod_name.'/tmpl/css/style.css?v='.K2_CURRENT_VERSION); 50 | } 51 | 52 | // Output content with template 53 | echo $mod_copyrights_start; 54 | require(JModuleHelper::getLayoutPath($mod_name, 'default')); 55 | echo $mod_copyrights_end; 56 | -------------------------------------------------------------------------------- /administrator/modules/mod_k2_quickicons/mod_k2_quickicons.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Quick Icons (admin) 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_QUICKICONS_FOR_USE_IN_THE_JOOMLA_CONTROL_PANEL_DASHBOARD_PAGE 12 | 13 | mod_k2_quickicons.php 14 | tmpl 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /administrator/modules/mod_k2_quickicons/tmpl/images/bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/administrator/modules/mod_k2_quickicons/tmpl/images/bg.jpg -------------------------------------------------------------------------------- /administrator/modules/mod_k2_stats/mod_k2_stats.php: -------------------------------------------------------------------------------- 1 | authorise('core.manage', 'com_k2')) 18 | { 19 | return; 20 | } 21 | } 22 | 23 | if (K2_JVERSION != '15') 24 | { 25 | $language = JFactory::getLanguage(); 26 | $language->load('com_k2.dates', JPATH_ADMINISTRATOR); 27 | } 28 | 29 | require_once(dirname(__FILE__).'/helper.php'); 30 | 31 | if ($params->get('latestItems', 1)) 32 | { 33 | $latestItems = modK2StatsHelper::getLatestItems(); 34 | } 35 | if ($params->get('popularItems', 1)) 36 | { 37 | $popularItems = modK2StatsHelper::getPopularItems(); 38 | } 39 | if ($params->get('mostCommentedItems', 1)) 40 | { 41 | $mostCommentedItems = modK2StatsHelper::getMostCommentedItems(); 42 | } 43 | if ($params->get('latestComments', 1)) 44 | { 45 | $latestComments = modK2StatsHelper::getLatestComments(); 46 | } 47 | if ($params->get('statistics', 1)) 48 | { 49 | $statistics = modK2StatsHelper::getStatistics(); 50 | } 51 | 52 | require(JModuleHelper::getLayoutPath('mod_k2_stats')); 53 | -------------------------------------------------------------------------------- /administrator/modules/mod_k2_stats/mod_k2_stats.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | K2 Stats (admin) 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_STATS_FOR_USE_IN_THE_K2_DASHBOARD_PAGE 12 | 13 | mod_k2_stats.php 14 | helper.php 15 | tmpl 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /components/com_k2/controllers/controller.php: -------------------------------------------------------------------------------- 1 | getModel('item'); 20 | $format = JRequest::getWord('format', 'html'); 21 | $document = JFactory::getDocument(); 22 | $viewType = $document->getType(); 23 | $view = $this->getView('itemlist', $viewType); 24 | $view->setModel($model); 25 | $user = JFactory::getUser(); 26 | if ($user->guest) { 27 | $cache = true; 28 | } else { 29 | $cache = false; 30 | } 31 | if (K2_JVERSION != '15') { 32 | $urlparams['amp'] = 'INT'; 33 | $urlparams['day'] = 'INT'; 34 | $urlparams['id'] = 'INT'; 35 | $urlparams['Itemid'] = 'INT'; 36 | $urlparams['lang'] = 'CMD'; 37 | $urlparams['limit'] = 'UINT'; 38 | $urlparams['limitstart'] = 'UINT'; 39 | $urlparams['m'] = 'INT'; 40 | $urlparams['moduleID'] = 'INT'; 41 | $urlparams['month'] = 'INT'; 42 | $urlparams['ordering'] = 'CMD'; 43 | $urlparams['print'] = 'INT'; 44 | $urlparams['searchword'] = 'STRING'; 45 | $urlparams['tag'] = 'STRING'; 46 | $urlparams['template'] = 'CMD'; 47 | $urlparams['tmpl'] = 'CMD'; 48 | $urlparams['year'] = 'INT'; 49 | } 50 | parent::display($cache, $urlparams); 51 | } 52 | 53 | // For mod_k2_content 54 | public function module() 55 | { 56 | $document = JFactory::getDocument(); 57 | $view = $this->getView('itemlist', 'raw'); 58 | $model = $this->getModel('itemlist'); 59 | $view->setModel($model); 60 | $model = $this->getModel('item'); 61 | $view->setModel($model); 62 | $view->module(); 63 | } 64 | 65 | // For mod_k2_tools 66 | public function calendar() 67 | { 68 | require_once(JPATH_SITE.'/modules/mod_k2_tools/helper.php'); 69 | $calendar = new modK2ToolsHelper(); 70 | $calendar->calendarNavigation(); 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /components/com_k2/controllers/latest.php: -------------------------------------------------------------------------------- 1 | getView('latest', 'html'); 20 | $model = $this->getModel('itemlist'); 21 | $view->setModel($model); 22 | $itemModel = $this->getModel('item'); 23 | $view->setModel($itemModel); 24 | $user = JFactory::getUser(); 25 | if ($user->guest) { 26 | $cache = true; 27 | } else { 28 | $cache = false; 29 | } 30 | if (K2_JVERSION != '15') { 31 | $urlparams['Itemid'] = 'INT'; 32 | $urlparams['m'] = 'INT'; 33 | $urlparams['amp'] = 'INT'; 34 | $urlparams['tmpl'] = 'CMD'; 35 | $urlparams['template'] = 'CMD'; 36 | } 37 | parent::display($cache, $urlparams); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /components/com_k2/css/k2.print.css: -------------------------------------------------------------------------------- 1 | /** 2 | * @version 2.11 (rolling release) 3 | * @package K2 4 | * @author JoomlaWorks https://www.joomlaworks.net 5 | * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | */ 8 | 9 | /* Print-specific CSS for K2 */ 10 | a.itemPrintThisPage, 11 | div.itemHeader h2.itemTitle span sup, 12 | div.itemToolbar, 13 | div.itemRatingBlock, 14 | div.itemLinks, 15 | div.itemSocialLinksBlock, 16 | div.itemAttachmentsBlock, 17 | div.itemRelated, 18 | div.itemAuthorLatest, 19 | div.itemVideoBlock, 20 | div.itemNavigation {display:none;} 21 | -------------------------------------------------------------------------------- /components/com_k2/images/loaders/calendar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/components/com_k2/images/loaders/calendar.gif -------------------------------------------------------------------------------- /components/com_k2/images/loaders/generic.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/components/com_k2/images/loaders/generic.gif -------------------------------------------------------------------------------- /components/com_k2/images/loaders/search.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/components/com_k2/images/loaders/search.gif -------------------------------------------------------------------------------- /components/com_k2/images/placeholder/category.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/components/com_k2/images/placeholder/category.png -------------------------------------------------------------------------------- /components/com_k2/images/placeholder/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/components/com_k2/images/placeholder/user.png -------------------------------------------------------------------------------- /components/com_k2/images/ratingstars.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/components/com_k2/images/ratingstars.gif -------------------------------------------------------------------------------- /components/com_k2/images/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/components/com_k2/images/search.png -------------------------------------------------------------------------------- /components/com_k2/images/videobg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/components/com_k2/images/videobg.gif -------------------------------------------------------------------------------- /components/com_k2/k2.php: -------------------------------------------------------------------------------- 1 | authorise('core.admin', 'com_k2')) { 16 | $user->gid = 1000; 17 | } else { 18 | $user->gid = 1; 19 | } 20 | } 21 | 22 | JLoader::register('K2Controller', JPATH_COMPONENT.'/controllers/controller.php'); 23 | JLoader::register('K2View', JPATH_COMPONENT_ADMINISTRATOR.'/views/view.php'); 24 | JLoader::register('K2Model', JPATH_COMPONENT_ADMINISTRATOR.'/models/model.php'); 25 | 26 | JLoader::register('K2HelperRoute', JPATH_COMPONENT.'/helpers/route.php'); 27 | JLoader::register('K2HelperPermissions', JPATH_COMPONENT.'/helpers/permissions.php'); 28 | JLoader::register('K2HelperUtilities', JPATH_COMPONENT.'/helpers/utilities.php'); 29 | 30 | K2HelperPermissions::setPermissions(); 31 | K2HelperPermissions::checkPermissions(); 32 | 33 | $controller = JRequest::getWord('view', 'itemlist'); 34 | $task = JRequest::getWord('task'); 35 | 36 | if ($controller == 'media') { 37 | $controller = 'item'; 38 | if ($task != 'connector') { 39 | $task = 'media'; 40 | } 41 | } 42 | 43 | if ($controller == 'users') { 44 | $controller = 'item'; 45 | $task = 'users'; 46 | } 47 | 48 | jimport('joomla.filesystem.file'); 49 | jimport('joomla.html.parameter'); 50 | 51 | if (JFile::exists(JPATH_COMPONENT.'/controllers/'.$controller.'.php')) { 52 | $classname = 'K2Controller'.$controller; 53 | if (!class_exists($classname)) { 54 | require_once(JPATH_COMPONENT.'/controllers/'.$controller.'.php'); 55 | } 56 | $controller = new $classname(); 57 | $controller->execute($task); 58 | $controller->redirect(); 59 | } else { 60 | JError::raiseError(404, JText::_('K2_NOT_FOUND')); 61 | } 62 | 63 | if (JRequest::getCmd('format') != 'json') { 64 | echo "\n\n\n"; 65 | } 66 | -------------------------------------------------------------------------------- /components/com_k2/templates/default/itemform.php: -------------------------------------------------------------------------------- 1 | 14 | 15 | items) && count($this->items)): ?> 16 | 21 | 22 | -------------------------------------------------------------------------------- /components/com_k2/views/comments/metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /components/com_k2/views/comments/tmpl/report.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 |

17 | 18 |

19 |
20 | 21 | row->commentText); ?> 22 | 23 |
24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 | params->get('recaptcha') && $this->user->guest): ?> 32 |
33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 |
46 |
47 | -------------------------------------------------------------------------------- /components/com_k2/views/comments/view.html.php: -------------------------------------------------------------------------------- 1 | load(JRequest::getInt('commentID')); 26 | if (!$row->published) { 27 | JError::raiseError(404, JText::_('K2_NOT_FOUND')); 28 | } 29 | 30 | if (!$params->get('comments') || !$params->get('commentsReporting') || ($params->get('commentsReporting') == '2' && $user->guest)) { 31 | JError::raiseError(403, JText::_('K2_ALERTNOTAUTH')); 32 | } 33 | 34 | // B/C code for reCAPTCHA 35 | if ($params->get('antispam') == 'recaptcha' || $params->get('antispam') == 'both') { 36 | $params->set('recaptcha', true); 37 | } else { 38 | $params->set('recaptcha', false); 39 | } 40 | $params->set('recaptchaV2', true); 41 | 42 | // Load reCAPTCHA 43 | if ($params->get('recaptcha') && ($user->guest || $params->get('recaptchaForRegistered', 1))) { 44 | $document->addScript('https://www.google.com/recaptcha/api.js?onload=onK2RecaptchaLoaded&render=explicit'); 45 | $document->addScriptDeclaration(' 46 | function onK2RecaptchaLoaded() { 47 | grecaptcha.render("recaptcha", { 48 | "sitekey": "'.$item->params->get('recaptcha_public_key').'", 49 | "theme": "'.$item->params->get('recaptcha_theme', 'light').'" 50 | }); 51 | } 52 | '); 53 | $this->recaptchaClass = 'k2-recaptcha-v2'; 54 | } 55 | 56 | $this->assignRef('row', $row); 57 | $this->assignRef('user', $user); 58 | $this->assignRef('params', $params); 59 | 60 | parent::display($tpl); 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /components/com_k2/views/item/metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | K2_CREATE_A_MENU_ITEM_LINKING_DIRECTLY_TO_AN_ITEM_IN_K2 5 | 6 | -------------------------------------------------------------------------------- /components/com_k2/views/item/tmpl/item.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | K2_CREATE_A_MENU_ITEM_LINKING_DIRECTLY_TO_AN_ITEM_IN_K2 5 | 6 | 7 | K2_ITEM 8 | K2_CREATE_A_MENU_ITEM_LINKING_DIRECTLY_TO_AN_ITEM_IN_K2 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 |
17 |
18 |
19 |
-------------------------------------------------------------------------------- /components/com_k2/views/item/tmpl/item_comments_form.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | K2_CREATE_A_MENU_ITEM_LINKING_TO_ITEM_EDIT_FORM 5 | 6 | 7 | K2_ITEM_EDIT_FORM 8 | K2_CREATE_A_MENU_ITEM_LINKING_TO_ITEM_EDIT_FORM 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 |
24 |
25 | 26 |
27 | 28 |
29 |
30 |
31 |
-------------------------------------------------------------------------------- /components/com_k2/views/item/view.json.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | K2_CREATE_A_MENU_ITEM_LINKING_TO_A_GRID_PAGE_WITH_THE_LATEST_ITEMS_FROM_SPECIFIC_USERS_OR_CATEGORIES_IN_K2 5 | 6 | -------------------------------------------------------------------------------- /components/com_k2/views/itemlist/tmpl/category.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | -------------------------------------------------------------------------------- /components/com_k2/views/itemlist/tmpl/generic_item.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | K2_CREATE_A_MENU_ITEM_LINKING_TO_A_GRID_PAGE_WITH_THE_LATEST_ITEMS_FROM_SPECIFIC_CATEGORIES_OR_USERS_IN_K2 5 | 6 | -------------------------------------------------------------------------------- /components/com_k2/views/latest/tmpl/latest.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/images/k2_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/docs/images/k2_logo.png -------------------------------------------------------------------------------- /docs/images/k2_logo.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/docs/images/k2_logo.webp -------------------------------------------------------------------------------- /docs/update.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | K2 5 | K2, the powerful content extension for Joomla (by JoomlaWorks) 6 | com_k2 7 | component 8 | 2.11.20250512 9 | https://github.com/getk2/k2/blob/master/CHANGELOG.md 10 | 11 | https://getk2.org/downloads/?f=K2_Rolling_Release.zip 12 | 13 | 14 | stable 15 | 16 | JoomlaWorks Ltd. 17 | https://getk2.org/ 18 |
Updates
19 | 20 | 1 21 |
22 | 23 | K2 24 | K2, the powerful content extension for Joomla (by JoomlaWorks) 25 | com_k2 26 | component 27 | 2.11.20250512 28 | https://github.com/getk2/k2/blob/master/CHANGELOG.md 29 | 30 | http://getk2.org/downloads/?f=K2_Rolling_Release.zip 31 | 32 | 33 | stable 34 | 35 | JoomlaWorks Ltd. 36 | https://getk2.org/ 37 |
Updates
38 | 39 | 1 40 |
41 |
42 | -------------------------------------------------------------------------------- /language/en-GB/en-GB.mod_k2_comments.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | MOD_K2_COMMENTS="K2 comments" 10 | MOD_K2_COMMENTS_DESCRIPTION="K2 Comments is a dual-function module used to display a) latest comments (from one or more categories) and b) a list of the top commenters." 11 | -------------------------------------------------------------------------------- /language/en-GB/en-GB.mod_k2_content.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | MOD_K2_CONTENT="K2 content" 10 | K2_MOD_K2_CONTENT_DESCRIPTION="K2 Content is the primary "content" retrieval module for K2. You can set various category and item element filters to display a number of items coming from the K2 component. Using multiple copies of this module (with varying settings) you can achieve complex news publishing/magazine site layouts." 11 | -------------------------------------------------------------------------------- /language/en-GB/en-GB.mod_k2_tools.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | MOD_K2_TOOLS="K2 tools" 10 | K2_TOOLS="K2 Tools is a multi-function utility module for your Joomla website. It allows you to filter or display K2 content in various ways." 11 | 12 | -------------------------------------------------------------------------------- /language/en-GB/en-GB.mod_k2_user.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | MOD_K2_USER="K2 user" 10 | K2_MOD_K2_USER_DESCRIPTION="K2 User is a better version of the Joomla login module. Use it to display a login box for your users. When users are logged in, they see the user block (toolbar), which allows them to perform tasks like: add/edit K2 items (based on their access rights), moderate comments to their items (again, based on their access rights), update their personal details (profile) and quickly access all their published items (the user page/blog). This module replaces the 'K2 Login' module in v2.5 and later. If you are using the 'K2 Login' module, please make sure you replace it with this one." 11 | -------------------------------------------------------------------------------- /language/en-GB/en-GB.mod_k2_users.sys.ini: -------------------------------------------------------------------------------- 1 | ;/** 2 | ; * @version 2.11 (rolling release) 3 | ; * @package K2 4 | ; * @author JoomlaWorks https://www.joomlaworks.net 5 | ; * @copyright Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 6 | ; * @license GNU/GPL: https://gnu.org/licenses/gpl.html 7 | ; */ 8 | 9 | MOD_K2_USERS="K2 users" 10 | K2_MOD_K2_USERS_DESCRTIPTION="This module utilizes on-the-fly MVC template overrides. What this means is that you can create a new sub-template folder for this module within your Joomla template's /html/mod k2 users/ folder. The module will then pickup the new sub-template auto-magically, without you editing any XML file or doing any other non-designer work!" 11 | -------------------------------------------------------------------------------- /media/k2/assets/images/backend/cross.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/images/backend/cross.png -------------------------------------------------------------------------------- /media/k2/assets/images/backend/dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/images/backend/dashboard.png -------------------------------------------------------------------------------- /media/k2/assets/images/backend/k2_logo_126x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/images/backend/k2_logo_126x48.png -------------------------------------------------------------------------------- /media/k2/assets/images/backend/k2_logo_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/images/backend/k2_logo_16x16.png -------------------------------------------------------------------------------- /media/k2/assets/images/backend/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/images/backend/loader.gif -------------------------------------------------------------------------------- /media/k2/assets/images/backend/sprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/images/backend/sprite.png -------------------------------------------------------------------------------- /media/k2/assets/images/backend/tick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/images/backend/tick.png -------------------------------------------------------------------------------- /media/k2/assets/js/k2.rc.patch.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Patch for reCAPTCHA with Mootools 1.2 Compatibility Layer 3 | * 4 | * @author James Sleeman 5 | * @see https://github.com/google/recaptcha/issues/374 6 | * 7 | * Source: https://gist.github.com/sleemanj/f076ed2c0b887ab08074b55dad2fd636 8 | * 9 | */ 10 | 11 | Function.prototype._compatbind = Function.prototype.bind; 12 | 13 | delete Function.prototype.bind; 14 | 15 | Function.implement({ 16 | _polybind: function(bind) { 17 | var self = this, 18 | args = (arguments.length > 1) ? Array.slice(arguments, 1) : null; 19 | 20 | return function() { 21 | if (!args && !arguments.length) return self.call(bind); 22 | if (args && arguments.length) return self.apply(bind, args.concat(Array.from(arguments))); 23 | return self.apply(bind, args || arguments); 24 | }; 25 | }, 26 | bind: function(bind, args) { 27 | if ((new Error()).stack.match(/recaptcha/)) { 28 | return this._polybind(bind, args); 29 | } 30 | 31 | return this._compatbind(bind, args); 32 | } 33 | }); 34 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/bkirchoff/nicedit/nicEditorIcons.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/bkirchoff/nicedit/nicEditorIcons.gif -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | ._* 3 | _* 4 | .DS_Store 5 | php-old 6 | extensions 7 | build 8 | files2 9 | elFinderVolumeSVN.class.php 10 | connector-svn.php 11 | node_modules 12 | connector.php 13 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/LICENSE.md: -------------------------------------------------------------------------------- 1 | elFinder is issued under a 3-clauses BSD license. 2 | 3 | Copyright (c) 2009-2020, Studio 42 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 7 | 8 | 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 9 | 10 | 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 11 | 12 | 3. Neither the name of the Studio 42 Ltd. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 13 | 14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL "STUDIO 42" OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 15 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 16 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "elfinder", 3 | "authors": [ 4 | "Dmitry \"dio\" Levashov ", 5 | "Troex Nevelin ", 6 | "Alexey Sukhotin ", 7 | "Naoki Sawada " 8 | ], 9 | "description": "Open-source file manager for web, written in JavaScript using jQuery and jQuery UI.", 10 | "dependencies": { 11 | "jquery": "1.8.0 - 3", 12 | "jquery-ui": "^1.9.x" 13 | }, 14 | "keywords": [ 15 | "filemanager", 16 | "jquery", 17 | "jquery-ui", 18 | "javascript", 19 | "php" 20 | ], 21 | "license": "BSD-3-Clause", 22 | "homepage": "https://github.com/Studio-42/elFinder", 23 | "ignore": [ 24 | "**/.*", 25 | "jquery", 26 | "php" 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "studio-42/elfinder", 3 | "description": "File manager for web", 4 | "license": "BSD-3-Clause", 5 | "homepage": "http://elfinder.org", 6 | "authors": [ 7 | { 8 | "name": "Dmitry Levashov", 9 | "homepage": "http://std42.ru", 10 | "email": "dio@std42.ru" 11 | }, 12 | { 13 | "name": "Troex Nevelin", 14 | "homepage": "http://std42.ru", 15 | "email": "troex@fury.scancode.ru" 16 | }, 17 | { 18 | "name": "Naoki Sawada", 19 | "homepage": "http://xoops.hypweb.net", 20 | "email": "hypweb+elfinder@gmail.com" 21 | }, 22 | { 23 | "name": "Community contributions", 24 | "homepage": "https://github.com/Studio-42/elFinder/contributors" 25 | } 26 | ], 27 | "require": { 28 | "php": ">=5.2" 29 | }, 30 | "suggest": { 31 | "kunalvarma05/dropbox-php-sdk": "VolumeDriver `Dropbox`2 require `kunalvarma05/dropbox-php-sdk.", 32 | "google/apiclient": "VolumeDriver GoogleDrive require `google/apiclient:^2.0.", 33 | "barryvdh/elfinder-flysystem-driver": "VolumeDriver for elFinder to use Flysystem as a root.", 34 | "nao-pon/flysystem-google-drive": "require in GoogleDrive network volume mounting with Flysystem." 35 | }, 36 | "autoload": { 37 | "classmap": ["php"] 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/files/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/files/.gitkeep -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/files/.trash/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/files/.trash/.gitkeep -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/arrows-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/arrows-active.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/arrows-normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/arrows-normal.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/crop.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/crop.gif -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/dialogs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/dialogs.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_aceeditor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_aceeditor.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_ckeditor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_ckeditor.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_ckeditor5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_ckeditor5.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_codemirror.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_codemirror.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_creativecloud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_creativecloud.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_onlineconvert.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_onlineconvert.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_pixlreditor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_pixlreditor.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_pixlrexpress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_pixlrexpress.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_simplemde.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_simplemde.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_tinymce.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_tinymce.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_tuiimgedit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_tuiimgedit.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/edit_zohooffice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/edit_zohooffice.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/editor-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/editor-icons.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/icons-big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/icons-big.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/icons-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/icons-small.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/logo.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/progress.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/progress.gif -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/quicklook-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/quicklook-bg.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/quicklook-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/quicklook-icons.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/resize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/resize.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/spinner-mini.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/spinner-mini.gif -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/toolbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/toolbar.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/trashmesh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/trashmesh.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_box.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_box.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_box.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_dropbox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_dropbox.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_dropbox.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_ftp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_ftp.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_googledrive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_googledrive.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_googledrive.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_local.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_local.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_network.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_onedrive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_onedrive.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_onedrive.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_sql.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_sql.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_trash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_trash.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_zip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/img/volume_icon_zip.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/extras/quicklook.googledocs.js: -------------------------------------------------------------------------------- 1 | (function(root, factory) { 2 | if (typeof define === 'function' && define.amd) { 3 | define(['elfinder'], factory); 4 | } else if (typeof exports !== 'undefined') { 5 | module.exports = factory(require('elfinder')); 6 | } else { 7 | factory(root.elFinder); 8 | } 9 | }(this, function(elFinder) { 10 | "use strict"; 11 | try { 12 | if (! elFinder.prototype.commands.quicklook.plugins) { 13 | elFinder.prototype.commands.quicklook.plugins = []; 14 | } 15 | elFinder.prototype.commands.quicklook.plugins.push(function(ql) { 16 | var fm = ql.fm, 17 | preview = ql.preview; 18 | 19 | preview.on('update', function(e) { 20 | var win = ql.window, 21 | file = e.file, node, loading; 22 | 23 | if (file.mime.indexOf('application/vnd.google-apps.') === 0) { 24 | if (file.url == '1') { 25 | preview.hide(); 26 | $('
').appendTo(ql.info.find('.elfinder-quicklook-info')) 27 | .on('click', function() { 28 | $(this).html(''); 29 | fm.request({ 30 | data : {cmd : 'url', target : file.hash}, 31 | preventDefault : true 32 | }) 33 | .always(function() { 34 | preview.show(); 35 | $(this).html(''); 36 | }) 37 | .done(function(data) { 38 | var rfile = fm.file(file.hash); 39 | ql.value.url = rfile.url = data.url || ''; 40 | if (ql.value.url) { 41 | preview.trigger($.Event('update', {file : ql.value})); 42 | } 43 | }); 44 | }); 45 | } 46 | if (file.url !== '' && file.url != '1') { 47 | e.stopImmediatePropagation(); 48 | 49 | loading = $('
'+fm.i18n('nowLoading')+'
').appendTo(ql.info.find('.elfinder-quicklook-info')); 50 | 51 | node = $('') 52 | .css('background-color', 'transparent') 53 | .on('load', function() { 54 | ql.hideinfo(); 55 | loading.remove(); 56 | node.css('background-color', '#fff'); 57 | }) 58 | .on('error', function() { 59 | loading.remove(); 60 | node.remove(); 61 | }) 62 | .appendTo(preview) 63 | .attr('src', fm.url(file.hash)); 64 | 65 | preview.one('change', function() { 66 | loading.remove(); 67 | node.off('load').remove(); 68 | }); 69 | } 70 | } 71 | 72 | }); 73 | }); 74 | } catch(e) {} 75 | })); 76 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/extras/quicklook.googledocs.min.js: -------------------------------------------------------------------------------- 1 | !function(e,n){"function"==typeof define&&define.amd?define(["elfinder"],n):"undefined"!=typeof exports?module.exports=n(require("elfinder")):n(e.elFinder)}(this,function(e){"use strict";try{e.prototype.commands.quicklook.plugins||(e.prototype.commands.quicklook.plugins=[]),e.prototype.commands.quicklook.plugins.push(function(e){var n=e.fm,o=e.preview;o.on("update",function(i){var r,a,t=(e.window,i.file);0===t.mime.indexOf("application/vnd.google-apps.")&&("1"==t.url&&(o.hide(),$('
").appendTo(e.info.find(".elfinder-quicklook-info")).on("click",function(){$(this).html(''),n.request({data:{cmd:"url",target:t.hash},preventDefault:!0}).always(function(){o.show(),$(this).html("")}).done(function(i){var r=n.file(t.hash);e.value.url=r.url=i.url||"",e.value.url&&o.trigger($.Event("update",{file:e.value}))})})),""!==t.url&&"1"!=t.url&&(i.stopImmediatePropagation(),a=$('
'+n.i18n("nowLoading")+'
').appendTo(e.info.find(".elfinder-quicklook-info")),r=$('').css("background-color","transparent").on("load",function(){e.hideinfo(),a.remove(),r.css("background-color","#fff")}).on("error",function(){a.remove(),r.remove()}).appendTo(o).attr("src",n.url(t.hash)),o.one("change",function(){a.remove(),r.off("load").remove()})))})})}catch(n){}}); -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/elfinder.fallback.js: -------------------------------------------------------------------------------- 1 | (function(factory) { 2 | if (typeof define === 'function' && define.amd) { 3 | define(factory); 4 | } else if (typeof exports !== 'undefined') { 5 | module.exports = factory(); 6 | } else { 7 | factory(); 8 | } 9 | }(this, function() { 10 | return void 0; 11 | })); 12 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/cs.html.js: -------------------------------------------------------------------------------- 1 |

Tipy na obsluhu

2 |

Obsluha na uživatelském rozhraní je podobná standardnímu správci souborů operačního systému. Drag and Drop však není možné používat s mobilními prohlížeči.

3 |
    4 |
  • Kliknutím pravým tlačítkem nebo dlouhým klepnutím zobrazíte kontextové menu.
  • 5 |
  • Přetáhněte do stromu složek nebo do aktuálního pracovního prostoru a přetáhněte / kopírujte položky.
  • 6 |
  • Výběr položky v pracovním prostoru můžete rozšířit pomocí kláves Shift nebo Alt (Možnost).
  • 7 |
  • Přemístěte soubory a složky do cílové složky nebo do pracovního prostoru.
  • 8 |
  • Dialog předávání může přijímat data schránky nebo seznamy adres URL a přitáhnout a odejít z jiných prohlížečů nebo správců souborů.
  • 9 |
  • Zatažením spusťte stisknutím klávesy Alt (Možnost) přetáhněte do vnějšího prohlížeče. Tato funkce se převezme pomocí prohlížeče Google Chrome.
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/de.html.js: -------------------------------------------------------------------------------- 1 |

Anwendungstipps

2 |

Die Verwendung dieser Anwendung ist ähnlich der einer lokalen Dateiverwaltung.
Hinweis: auf mobilen Geräten ist das Ziehen und Ablegen (Drag and Drop) von Dateien nicht möglich.

3 |
    4 |
  • Rechtsklick auf ein Element oder länger darauf zeigen öffnet das Kontextmenü
  • 5 |
  • Um Elemente in andere Ordner oder aktuellen Arbeitsbereich zu kopieren oder verschieben diese Ziehen und Ablegen
  • 6 |
  • Elementauswahl im Arbeitsbereich kann mit der Hochstell- oder ALT-TAste erweitert werden
  • 7 |
  • Um lokale Ordner und Dateien in den Zielorder oder -arbeitsbereich zu kopieren diese Ziehen und Ablegen
  • 8 |
  • Der Uploaddialog erlaubt Daten aus dem Clipboard (Zwischenspeicher), eine URL und Ziehen und Ablegen aus anderen Browsern und Dateiverwaltungsoberflächen
  • 9 |
  • Ziehen mit gedrückter ALT-Taste erlaubt einen einfachen Dateidownload (nur Google Chrome)
  • 10 |
  • Ordner und Dateien können ausgeblendet (versteckt) werden. Um sie wieder dauerhaft sichtbar zu machen, über die Menüleiste das "Icon Einstellungen" anklicken, dort unter Arbeitsplatz "Zeige versteckte Elemente" den Button "Neustart" anklicken
  • 11 |
  • Das Kontextmenü (rechte Maustaste) zeigt je nach ausgewählten Element diverse Aktionen an
  • 12 |
  • Je nach Art des Elements kann der Inhalt entweder mit dem integrierten Editor bearbeitet werden (z.B. .php, .txt, .ini usw.) oder wenn ein Bild dieses gedreht sowie die Größe geändert werden
  • 13 |
  • Zum verbinden externer Speicherorte (FTP, Dropbox, Box, GoogleDrive, OneDrive) sowie Onlineeditor Zoho Office Editor oder Konvertierungsdienst Online-Convert müssen diese Anwendungen freigeschaltet als auch die entsprechenden API-Daten zum Abrufen je Dienst definiert sein.
    Sollten diese Dienste nicht verfügbar sein, müssen diese entweder selbständig dazu programmiert werden, oder einen Entwickler des Vertrauens damit beauftragen (z.B. OSWorX)
  • 14 |
  • In den Einstellungen "Menü Icon Einstellungen" kann der gesamte Arbeitsbereich, die Menüleiste sowie etliche weitere Aktionen definiert werden
  • 15 |
16 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/en.html.js: -------------------------------------------------------------------------------- 1 |

Operation Tips

2 |

Operation on the UI is similar to operating system's standard file manager. However, Drag and Drop is not possible with mobile browsers.

3 |
    4 |
  • Right click or long tap to show the context menu.
  • 5 |
  • Drag and drop into the folder tree or the current workspace to move/copy items.
  • 6 |
  • Item selection in the workspace can be extended selection with Shift or Alt (Option) key.
  • 7 |
  • Drag and Drop to the destination folder or workspace to upload files and folders.
  • 8 |
  • The upload dialog can accept paste/drop clipboard data or URL lists and Drag and Drop from other browser or file managers etc.
  • 9 |
  • Drag start with pressing Alt(Option) key to drag out to outside browser. It will became download operation with Google Chrome.
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/es.html.js: -------------------------------------------------------------------------------- 1 |

Consejos de operación

2 |

Operar en la Interfaz del Usuario es similar al administrador de archivos estandar del sistema operativo. Sin embargo, Arrastrar y soltar no es posible con los navegadores móviles.

3 |
    4 |
  • Click derecho o un tap largo para mostrar el menú de contexto.
  • 5 |
  • Arrastrar y soltar dentro del árbol de carpetas o el espacio de trabajo actual para mover/copiar elementos.
  • 6 |
  • La selección de elementos en el espacio de trabajo puede ampliarse con la tecla Shift o Alt (Opción).
  • 7 |
  • Arrastrar y soltar a la carpeta de destino o área de trabajo para cargar archivos y carpetas.
  • 8 |
  • El cuadro de diálogo de carga puede aceptar pegar/soltar datos del portapapeles o listas de URL y arrastrar y soltar desde otro navegador o administrador de archivos, etc.
  • 9 |
  • Iniciar a arrastrar presionando la tecla Alt (Opción) para arrastrar fuera del navegador. Se convertirá en una operación de descarga con Google Chrome.
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/ja.html.js: -------------------------------------------------------------------------------- 1 |

操作のヒント

2 |

UIの操作は、オペレーティングシステムの標準ファイルマネージャにほぼ準拠しています。ただし、モバイルブラウザではドラッグ&ドロップはできません。

3 |
    4 |
  • 右クリックまたはロングタップでコンテキストメニューを表示します。
  • 5 |
  • アイテムを移動/コピーするには、フォルダツリーまたはワークスペースにドラッグ&ドロップします。
  • 6 |
  • ワークスペース内のアイテムの選択は、ShiftキーまたはAltキー(Optionキー)で選択範囲を拡張できます。
  • 7 |
  • コピー先のフォルダまたはワークスペースにドラッグアンドドロップして、ファイルとフォルダをアップロードします。
  • 8 |
  • アップロードダイアログでは、クリップボードのデータやURLリストのペースト/ドロップ、他のブラウザやファイルマネージャからのドラッグ&ドロップなどを受け入れることができます。
  • 9 |
  • Altキー(Optionキー)を押しながらドラッグすると、ブラウザの外にドラッグできます。Google Chromeでダウンロード操作になります。
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/ko.html.js: -------------------------------------------------------------------------------- 1 |

사용 팁

2 |

UI 조작은 운영체제의 표준 파일 관리자를 사용하는 방법과 비슷합니다. 하지만 모바일 브라우저에서는 드래그앤드롭을 사용할 수 없습니다.

3 |
    4 |
  • 오른쪽 클릭하거나 길게 누르면 컨텍스트 메뉴가 나타납니다.
  • 5 |
  • 이동/복사하려면 폴더 트리 또는 원하는 폴더로 드래그앤드롭하십시오.
  • 6 |
  • 작업공간에서 항목을 선택하려면 Shift또는 Alt(Option) 키를 사용하여 선택 영역을 넓힐 수 있습니다.
  • 7 |
  • 업로드 대상 폴더 또는 작업 영역으로 파일및 폴더를 드래그앤드롭하여 업로드할 수 있습니다.
  • 8 |
  • 다른 브라우저 또는 파일관리자등에서 드래그앤드롭하거나, 클립보드를 통해 데이터또는 URL을 복사/붙여넣어 업로드할 수 있습니다.
  • 9 |
  • 크롬브라우저의 경우, Alt(Option) 키를 누른 상태에서 브라우저 밖으로 드래그앤드롭하면 다운로드가 가능합니다.
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/pl.html.js: -------------------------------------------------------------------------------- 1 |

Wskazówki Obsługi

2 |

Działanie w interfejsie użytkownika jest podobne do standardowego menedżera plików systemu operacyjnego. Jednak Przeciąganie i Upuszczanie nie jest możliwe w przeglądarkach mobilnych.

3 |
    4 |
  • Kliknij prawym przyciskiem myszy lub dłużej, aby wyświetlić menu kontekstowe.
  • 5 |
  • Przeciągnij i upuść w drzewie folderów lub bieżącym obszarze roboczym, aby przenieść/kopiować elementy.
  • 6 |
  • Wybór elementu w obszarze roboczym można rozszerzyć wybór z klawiszem Shift lub Alt(Opcja).
  • 7 |
  • Przeciągnij i Upuść do folderu docelowego lub obszaru roboczego, aby przesłać pliki i foldery.
  • 8 |
  • W oknie dialogowym przesyłania można zaakceptować wklejanie/upuszczanie danych schowka lub listy adresów URL, i Przeciągnij i Upuść z innych przeglądarek lub menedżerów plików, itp.
  • 9 |
  • Rozpocznij Przeciąganie naciskając Alt (Opcja), aby przeciągnąć na zewnątrz przeglądarki. Stanie się operacją pobierania z Google Chrome.
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/ru.html.js: -------------------------------------------------------------------------------- 1 |

Советы по работе

2 |

Работа с пользовательским интерфейсом похожа на стандартный файловый менеджер операционной системы. Однако перетаскивание в мобильных браузерах невозможно.

3 |
    4 |
  • Щелкните правой кнопкой мыши или используйте «длинный тап», чтобы отобразить контекстное меню.
  • 5 |
  • Перетащите в дерево папок или текущую рабочую область для перемещения / копирования элементов.
  • 6 |
  • Выбор элемента в рабочей области может быть расширен с помощью клавиши Shift или Alt (Option).
  • 7 |
  • Перетащите в папку назначения или рабочую область для загрузки файлов и папок.
  • 8 |
  • В диалоговом окне загрузки можно использовать вставку данных или списков URL-адресов из буфера обмена, а также перетаскивать из других браузеров или файловых менеджеров и т.д.
  • 9 |
  • Начните перетаскивание, нажав Alt (Option), чтобы перетащить за пределы браузера. Это запустить процесс скачивания в Google Chrome.
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/sk.html.js: -------------------------------------------------------------------------------- 1 |

Tipy na obsluhu

2 |

Obsluha na používateľskom rozhraní je podobná štandardnému správcovi súborov operačného systému. Drag and Drop však nie je možné používať s mobilnými prehliadačmi.

3 |
    4 |
  • Kliknutím pravým tlačidlom alebo dlhým klepnutím zobrazíte kontextové menu.
  • 5 |
  • Presuňte myšou do stromu priečinkov alebo do aktuálneho pracovného priestoru a presuňte / kopírujte položky.
  • 6 |
  • Výber položky v pracovnom priestore môžete rozšíriť pomocou klávesov Shift alebo Alt (Možnosť).
  • 7 |
  • Premiestnite súbory a priečinky do cieľovej zložky alebo do pracovného priestoru.
  • 8 |
  • Dialog odovzdávania môže prijímať dáta schránky alebo zoznamy adries URL a pritiahnuť a odísť z iných prehliadačov alebo správcov súborov.
  • 9 |
  • Potiahnutím spustite stlačením klávesu Alt (Možnosť) pretiahnite do vonkajšieho prehliadača. Táto funkcia sa prevezme pomocou prehliadača Google Chrome.
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/i18n/help/tr.html.js: -------------------------------------------------------------------------------- 1 |

İşlem İpuçları

2 |

Kullanıcı arayüzündeki işlem, işletim sisteminin standart dosya yöneticisine benzer. Ancak Sürükle ve Bırak özelliği mobil tarayıcılarda mümkün değildir.

3 |
    4 |
  • Bağlam menüsünü göstermek için sağ tıklayın veya uzun dokunun.
  • 5 |
  • Öğeleri taşımak/kopyalamak için klasör ağacına veya geçerli çalışma alanına sürükleyip bırakın.
  • 6 |
  • Çalışma alanındaki öğe seçimi Shift veya Alt (Seçenek) tuşuyla genişletilebilir.
  • 7 |
  • Dosya ve klasör yüklemek için hedef klasöre veya çalışma alanına sürükleyip bırakın.
  • 8 |
  • Yükleme iletişim kutusu, pano verilerini veya URL listelerini yapıştırma/bırakma ve diğer tarayıcı veya dosya yöneticilerinden Sürükle ve Bırak vb.
  • 9 |
  • Dış tarayıcıya sürüklemek için Alt (Seçenek) tuşuna basarak sürükleyin. Google Chrome ile indirme işlemi olacak.
  • 10 |
11 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/worker/calcfilehash.js: -------------------------------------------------------------------------------- 1 | var type = self.data.type, 2 | bin = self.data.bin, 3 | hashOpts = self.data.hashOpts; 4 | 5 | self.res = {}; 6 | if (type === 'md5') { 7 | let sp = new self.SparkMD5.ArrayBuffer(); 8 | sp.append(bin); 9 | self.res.hash = sp.end(); 10 | } else { 11 | let sha = new jsSHA('SHA' + (type.length === 5? type : ('-' + type)).toUpperCase(), 'ARRAYBUFFER'), 12 | opts = {}; 13 | if (type === 'ke128') { 14 | opts.shakeLen = hashOpts.shake128len; 15 | } else if (type === 'ke256') { 16 | opts.shakeLen = hashOpts.shake256len; 17 | } 18 | sha.update(bin); 19 | self.res.hash = sha.getHash('HEX', opts); 20 | } 21 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/worker/quicklook.tiff.js: -------------------------------------------------------------------------------- 1 | var data = self.data; 2 | if (data.memory) { 3 | Tiff.initialize({ TOTAL_MEMORY: data.memory }); 4 | } 5 | var tiff = new Tiff({buffer: data.data}); 6 | var image = tiff.readRGBAImage(); 7 | self.res = { image: image, width: tiff.width(), height: tiff.height() }; 8 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/js/worker/quicklook.unzip.js: -------------------------------------------------------------------------------- 1 | var type = self.data.type, 2 | bin = self.data.bin, 3 | unzipFiles = function() { 4 | /** @type {Array.} */ 5 | var filenameList = []; 6 | /** @type {number} */ 7 | var i; 8 | /** @type {number} */ 9 | var il; 10 | /** @type {Array.} */ 11 | var fileHeaderList; 12 | // need check this.Y when update cdns.zlibUnzip 13 | this.Y(); 14 | fileHeaderList = this.i; 15 | for (i = 0, il = fileHeaderList.length; i < il; ++i) { 16 | // need check fileHeaderList[i].J when update cdns.zlibUnzip 17 | filenameList[i] = fileHeaderList[i].filename + (fileHeaderList[i].J? ' ({formatSize(' + fileHeaderList[i].J + ')})' : ''); 18 | } 19 | return filenameList; 20 | }, 21 | tarFiles = function(tar) { 22 | var filenames = [], 23 | tarlen = tar.length, 24 | offset = 0, 25 | toStr = function(arr) { 26 | return String.fromCharCode.apply(null, arr).replace(/\0+$/, ''); 27 | }, 28 | h, name, prefix, size, dbs; 29 | while (offset < tarlen && tar[offset] !== 0) { 30 | h = tar.subarray(offset, offset + 512); 31 | name = toStr(h.subarray(0, 100)); 32 | if (prefix = toStr(h.subarray(345, 500))) { 33 | name = prefix + name; 34 | } 35 | size = parseInt(toStr(h.subarray(124, 136)), 8); 36 | dbs = Math.ceil(size / 512) * 512; 37 | if (name === '././@LongLink') { 38 | name = toStr(tar.subarray(offset + 512, offset + 512 + dbs)); 39 | } 40 | (name !== 'pax_global_header') && filenames.push(name + (size? ' ({formatSize(' + size + ')})': '')); 41 | offset = offset + 512 + dbs; 42 | } 43 | return filenames; 44 | }; 45 | 46 | self.res = {}; 47 | if (type === 'tar') { 48 | self.res.files = tarFiles(new Uint8Array(bin)); 49 | } else if (type === 'zip') { 50 | self.res.files = unzipFiles.call(new Zlib.Unzip(new Uint8Array(bin))); 51 | } else if (type === 'gzip') { 52 | self.res.files = tarFiles((new Zlib.Gunzip(new Uint8Array(bin))).decompress()); 53 | } else if (type === 'bzip2') { 54 | self.res.files = tarFiles(self.bzip2.simple(self.bzip2.array(new Uint8Array(bin)))); 55 | } 56 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "elfinder", 3 | "version": "2.1.61", 4 | "description": "Open-source file manager for web, written in JavaScript using jQuery and jQuery UI.", 5 | "author": "Studio-42 (https://github.com/Studio-42/elFinder)", 6 | "license": "3-clauses BSD", 7 | "bugs": "https://github.com/Studio-42/elFinder/issues", 8 | "homepage": "http://elfinder.org/", 9 | "repository": { 10 | "type": "git", 11 | "url": "https://github.com/Studio-42/elFinder.git" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/php/.tmp/.htaccess: -------------------------------------------------------------------------------- 1 | order deny,allow 2 | deny from all 3 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/php/MySQLStorage.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS `elfinder_file`; 2 | CREATE TABLE IF NOT EXISTS `elfinder_file` ( 3 | `id` int(7) unsigned NOT NULL auto_increment, 4 | `parent_id` int(7) unsigned NOT NULL, 5 | `name` varchar(255) NOT NULL, 6 | `content` longblob NOT NULL, 7 | `size` int(10) unsigned NOT NULL default '0', 8 | `mtime` int(10) unsigned NOT NULL default '0', 9 | `mime` varchar(256) NOT NULL default 'unknown', 10 | `read` enum('1', '0') NOT NULL default '1', 11 | `write` enum('1', '0') NOT NULL default '1', 12 | `locked` enum('1', '0') NOT NULL default '0', 13 | `hidden` enum('1', '0') NOT NULL default '0', 14 | `width` int(5) NOT NULL default '0', 15 | `height` int(5) NOT NULL default '0', 16 | PRIMARY KEY (`id`), 17 | UNIQUE KEY `parent_name` (`parent_id`, `name`), 18 | KEY `parent_id` (`parent_id`) 19 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci; 20 | 21 | INSERT INTO `elfinder_file` 22 | (`id`, `parent_id`, `name`, `content`, `size`, `mtime`, `mime`, `read`, `write`, `locked`, `hidden`, `width`, `height`) VALUES 23 | ('1' , '0', 'DATABASE', '', '0', '0','directory', '1', '1', '0', '0', '0', '0'); 24 | 25 | DROP TABLE IF EXISTS `elfinder_trash`; 26 | CREATE TABLE IF NOT EXISTS `elfinder_trash` ( 27 | `id` int(7) unsigned NOT NULL auto_increment, 28 | `parent_id` int(7) unsigned NOT NULL, 29 | `name` varchar(255) NOT NULL, 30 | `content` longblob NOT NULL, 31 | `size` int(10) unsigned NOT NULL default '0', 32 | `mtime` int(10) unsigned NOT NULL default '0', 33 | `mime` varchar(256) NOT NULL default 'unknown', 34 | `read` enum('1', '0') NOT NULL default '1', 35 | `write` enum('1', '0') NOT NULL default '1', 36 | `locked` enum('1', '0') NOT NULL default '0', 37 | `hidden` enum('1', '0') NOT NULL default '0', 38 | `width` int(5) NOT NULL default '0', 39 | `height` int(5) NOT NULL default '0', 40 | PRIMARY KEY (`id`), 41 | UNIQUE KEY `parent_name` (`parent_id`, `name`), 42 | KEY `parent_id` (`parent_id`) 43 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci; 44 | 45 | INSERT INTO `elfinder_trash` 46 | (`id`, `parent_id`, `name`, `content`, `size`, `mtime`, `mime`, `read`, `write`, `locked`, `hidden`, `width`, `height`) VALUES 47 | ('1' , '0', 'DB Trash', '', '0', '0','directory', '1', '1', '0', '0', '0', '0'); 48 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/php/editors/ZipArchive/editor.php: -------------------------------------------------------------------------------- 1 | elfinder = $elfinder; 40 | $this->args = $args; 41 | } 42 | 43 | /** 44 | * Return boolean that this plugin is enabled. 45 | * 46 | * @return bool 47 | */ 48 | public function enabled() 49 | { 50 | return true; 51 | } 52 | 53 | /** 54 | * Return boolean that $name method is allowed. 55 | * 56 | * @param string $name 57 | * 58 | * @return bool 59 | */ 60 | public function isAllowedMethod($name) 61 | { 62 | $checker = array_flip($this->allowed); 63 | 64 | return isset($checker[$name]); 65 | } 66 | 67 | /** 68 | * Return $this->args value of the key 69 | * 70 | * @param string $key target key 71 | * @param string $empty empty value 72 | * 73 | * @return mixed 74 | */ 75 | public function argValue($key, $empty = '') 76 | { 77 | return isset($this->args[$key]) ? $this->args[$key] : $empty; 78 | } 79 | } 80 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/php/elFinderSessionInterface.php: -------------------------------------------------------------------------------- 1 | options['lockEverything'] = false; // Lock all items in the trash to disable delete, move, rename. 24 | 25 | // common options as the volume driver 26 | $this->options['alias'] = 'Trash'; 27 | $this->options['quarantine'] = ''; 28 | $this->options['rootCssClass'] = 'elfinder-navbar-root-trash'; 29 | $this->options['copyOverwrite'] = false; 30 | $this->options['uiCmdMap'] = array('paste' => 'hidden', 'mkdir' => 'hidden', 'copy' => 'restore'); 31 | $this->options['disabled'] = array('archive', 'duplicate', 'edit', 'extract', 'mkfile', 'places', 'put', 'rename', 'resize', 'upload'); 32 | } 33 | 34 | public function mount(array $opts) 35 | { 36 | if ($this->options['lockEverything']) { 37 | if (!is_array($opts['attributes'])) { 38 | $opts['attributes'] = array(); 39 | } 40 | $attr = array( 41 | 'pattern' => '/./', 42 | 'locked' => true, 43 | ); 44 | array_unshift($opts['attributes'], $attr); 45 | } 46 | // force set `copyJoin` to true 47 | $opts['copyJoin'] = true; 48 | 49 | return parent::mount($opts); 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/php/elFinderVolumeTrashMySQL.class.php: -------------------------------------------------------------------------------- 1 | options['lockEverything'] = false; // Lock all items in the trash to disable delete, move, rename. 24 | 25 | // common options as the volume driver 26 | $this->options['alias'] = 'Trash'; 27 | $this->options['quarantine'] = ''; 28 | $this->options['rootCssClass'] = 'elfinder-navbar-root-trash'; 29 | $this->options['copyOverwrite'] = false; 30 | $this->options['uiCmdMap'] = array('paste' => 'hidden', 'mkdir' => 'hidden', 'copy' => 'restore'); 31 | $this->options['disabled'] = array('archive', 'duplicate', 'edit', 'extract', 'mkfile', 'places', 'put', 'rename', 'resize', 'upload'); 32 | } 33 | 34 | public function mount(array $opts) 35 | { 36 | if ($this->options['lockEverything']) { 37 | if (!is_array($opts['attributes'])) { 38 | $opts['attributes'] = array(); 39 | } 40 | $attr = array( 41 | 'pattern' => '/./', 42 | 'locked' => true, 43 | ); 44 | array_unshift($opts['attributes'], $attr); 45 | } 46 | // force set `copyJoin` to true 47 | $opts['copyJoin'] = true; 48 | 49 | return parent::mount($opts); 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/php/plugins/Watermark/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/php/plugins/Watermark/logo.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/php/resources/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/php/resources/image.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/php/resources/video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/php/resources/video.png -------------------------------------------------------------------------------- /media/k2/assets/vendors/studio-42/elfinder/sounds/rm.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/getk2/k2/197445346dbaf5e3383f3e4b6abecfd9c350b96a/media/k2/assets/vendors/studio-42/elfinder/sounds/rm.wav -------------------------------------------------------------------------------- /media/k2/attachments/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/categories/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/galleries/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/items/cache/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/items/src/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/users/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/k2/videos/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /modules/mod_k2_comments/mod_k2_comments.php: -------------------------------------------------------------------------------- 1 | load('com_k2.dates', JPATH_ADMINISTRATOR, null, true); 16 | } 17 | 18 | require_once(dirname(__FILE__).'/helper.php'); 19 | 20 | // Params 21 | $moduleclass_sfx = $params->get('moduleclass_sfx', ''); 22 | $module_usage = $params->get('module_usage', '0'); 23 | 24 | $commentAvatarWidthSelect = $params->get('commentAvatarWidthSelect', 'custom'); 25 | $commentAvatarWidth = $params->get('commentAvatarWidth', 50); 26 | 27 | $commenterAvatarWidthSelect = $params->get('commenterAvatarWidthSelect', 'custom'); 28 | $commenterAvatarWidth = $params->get('commenterAvatarWidth', 50); 29 | 30 | // Get component params 31 | $componentParams = JComponentHelper::getParams('com_k2'); 32 | 33 | // User avatar for latest comments 34 | if ($commentAvatarWidthSelect == 'inherit') { 35 | $lcAvatarWidth = $componentParams->get('commenterImgWidth'); 36 | } else { 37 | $lcAvatarWidth = $commentAvatarWidth; 38 | } 39 | 40 | // User avatar for top commenters 41 | if ($commenterAvatarWidthSelect == 'inherit') { 42 | $tcAvatarWidth = $componentParams->get('commenterImgWidth'); 43 | } else { 44 | $tcAvatarWidth = $commenterAvatarWidth; 45 | } 46 | 47 | switch ($module_usage) { 48 | case '0': 49 | $comments = modK2CommentsHelper::getLatestComments($params); 50 | require(JModuleHelper::getLayoutPath('mod_k2_comments', 'comments')); 51 | break; 52 | 53 | case '1': 54 | $commenters = modK2CommentsHelper::getTopCommenters($params); 55 | require(JModuleHelper::getLayoutPath('mod_k2_comments', 'commenters')); 56 | break; 57 | } 58 | -------------------------------------------------------------------------------- /modules/mod_k2_comments/tmpl/commenters.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 | 17 | 50 | 51 |
52 | -------------------------------------------------------------------------------- /modules/mod_k2_content/mod_k2_content.php: -------------------------------------------------------------------------------- 1 | load('com_k2.dates', JPATH_ADMINISTRATOR, null, true); 16 | } 17 | 18 | require_once(dirname(__FILE__).'/helper.php'); 19 | 20 | // Params 21 | $moduleclass_sfx = $params->get('moduleclass_sfx', ''); 22 | $getTemplate = $params->get('getTemplate', 'Default'); 23 | $itemAuthorAvatarWidthSelect = $params->get('itemAuthorAvatarWidthSelect', 'custom'); 24 | $itemAuthorAvatarWidth = $params->get('itemAuthorAvatarWidth', 50); 25 | $itemCustomLinkTitle = $params->get('itemCustomLinkTitle', ''); 26 | $itemCustomLinkURL = trim($params->get('itemCustomLinkURL')); 27 | $itemCustomLinkMenuItem = $params->get('itemCustomLinkMenuItem'); 28 | 29 | if ($itemCustomLinkURL && $itemCustomLinkURL!='http://' && $itemCustomLinkURL!='https://') { 30 | if ($itemCustomLinkTitle=='') { 31 | if (strpos($itemCustomLinkURL, '://')!==false) { 32 | $linkParts = explode('://', $itemCustomLinkURL); 33 | $itemCustomLinkURL = $linkParts[1]; 34 | } 35 | $itemCustomLinkTitle = $itemCustomLinkURL; 36 | } 37 | } elseif ($itemCustomLinkMenuItem) { 38 | $menu = JMenu::getInstance('site'); 39 | $menuLink = $menu->getItem($itemCustomLinkMenuItem); 40 | if (!empty($menuLink)) { 41 | if (!$itemCustomLinkTitle) { 42 | $itemCustomLinkTitle = (K2_JVERSION != '15') ? $menuLink->title : $menuLink->name; 43 | } 44 | $itemCustomLinkURL = JRoute::_('index.php?&Itemid='.$menuLink->id); 45 | } else { 46 | $itemCustomLinkTitle = ''; 47 | $itemCustomLinkURL = ''; 48 | } 49 | } 50 | 51 | // Make params backwards compatible 52 | $params->set('itemCustomLinkTitle', $itemCustomLinkTitle); 53 | $params->set('itemCustomLinkURL', $itemCustomLinkURL); 54 | 55 | // Get component params 56 | $componentParams = JComponentHelper::getParams('com_k2'); 57 | 58 | // User avatar 59 | if ($itemAuthorAvatarWidthSelect == 'inherit') { 60 | $avatarWidth = $componentParams->get('userImageWidth'); 61 | } else { 62 | $avatarWidth = $itemAuthorAvatarWidth; 63 | } 64 | 65 | $items = modK2ContentHelper::getItems($params); 66 | 67 | if (is_array($items) && count($items)) { 68 | require(JModuleHelper::getLayoutPath('mod_k2_content', $getTemplate.'/default')); 69 | } 70 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/archive.php: -------------------------------------------------------------------------------- 1 | 14 | 15 | 27 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/authors.php: -------------------------------------------------------------------------------- 1 | 14 | 15 | 42 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/breadcrumbs.php: -------------------------------------------------------------------------------- 1 | get('home')) { 15 | $output .= ''.JText::_('K2_YOU_ARE_HERE').''.$params->get('home', JText::_('K2_HOME')).''; 16 | if (count($path)) { 17 | foreach ($path as $link) { 18 | $output .= ''.$params->get('seperator', '»').''.$link; 19 | } 20 | } 21 | if ($title) { 22 | $output .= ''.$params->get('seperator', '»').''.$title; 23 | } 24 | } else { 25 | if ($title) { 26 | $output .= ''.JText::_('K2_YOU_ARE_HERE').''; 27 | } 28 | if (count($path)) { 29 | foreach ($path as $link) { 30 | $output .= $link.''.$params->get('seperator', '»').''; 31 | } 32 | } 33 | $output .= $title; 34 | } 35 | 36 | ?> 37 | 38 |
39 | 40 |
41 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/calendar.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 | 17 |
18 |
19 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/categories.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 | 17 |
18 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/customcode.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 | 17 |
18 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/search.php: -------------------------------------------------------------------------------- 1 | 20 | 21 |
22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | getCfg('sef')): ?> 38 | 39 | 40 | 41 | 42 | 43 | get('liveSearch')): ?> 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 |
53 | 54 | get('liveSearch')): ?> 55 |
56 | 57 |
58 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/selected_tags.php: -------------------------------------------------------------------------------- 1 | 14 | 15 | 16 |
17 |
    18 | $tag): ?> 19 | 0 && ($key + 1) > $selectedTagsLimit) break; ?> 20 |
  • 21 | 22 |
  • 23 | 24 |
25 |
26 | 27 | -------------------------------------------------------------------------------- /modules/mod_k2_tools/tmpl/tags.php: -------------------------------------------------------------------------------- 1 | 14 | 15 |
16 | 17 | tag)): ?> 18 | 19 | tag; ?> 20 | 21 | 22 | 23 |
24 |
25 | -------------------------------------------------------------------------------- /modules/mod_k2_users/mod_k2_users.php: -------------------------------------------------------------------------------- 1 | load('com_k2.dates', JPATH_ADMINISTRATOR, null, true); 16 | } 17 | 18 | require_once(dirname(__FILE__).'/helper.php'); 19 | 20 | // Params 21 | $moduleclass_sfx = $params->get('moduleclass_sfx', ''); 22 | $getTemplate = $params->get('getTemplate', 'Default'); 23 | $userName = $params->get('userName', 1); 24 | $userAvatar = $params->get('userAvatar', 1); 25 | $userAvatarWidthSelect = $params->get('userAvatarWidthSelect', 'custom'); 26 | $userAvatarWidth = $params->get('userAvatarWidth', 50); 27 | $userDescription = $params->get('userDescription', 1); 28 | $userDescriptionWordLimit = $params->get('userDescriptionWordLimit'); 29 | $userURL = $params->get('userURL', 1); 30 | $userEmail = $params->get('userEmail', 0); 31 | $userFeed = $params->get('userFeed', 1); 32 | $userItemCount = $params->get('userItemCount', 1); 33 | 34 | // User avatar 35 | if ($userAvatarWidthSelect == 'inherit') { 36 | $componentParams = JComponentHelper::getParams('com_k2'); 37 | $avatarWidth = $componentParams->get('userImageWidth'); 38 | } else { 39 | $avatarWidth = $userAvatarWidth; 40 | } 41 | 42 | $users = modK2UsersHelper::getUsers($params); 43 | 44 | require(JModuleHelper::getLayoutPath('mod_k2_users', $getTemplate.'/default')); 45 | -------------------------------------------------------------------------------- /plugins/finder/k2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | plg_finder_k2 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | https://gnu.org/licenses/gpl.html 8 | please-use-the-contact-form@joomlaworks.net 9 | https://www.joomlaworks.net 10 | (see K2 component) 11 | PLG_FINDER_K2_DESCRIPTION 12 | 13 | k2.php 14 | 15 | 16 | -------------------------------------------------------------------------------- /plugins/search/k2.j25.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Search - K2 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_THIS_PLUGIN_EXTENDS_THE_DEFAULT_JOOMLA_SEARCH_FUNCTIONALITY_TO_K2_CONTENT 12 | 13 | k2.php 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 |
24 |
25 |
26 |
27 | -------------------------------------------------------------------------------- /plugins/search/k2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Search - K2 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_THIS_PLUGIN_EXTENDS_THE_DEFAULT_JOOMLA_SEARCH_FUNCTIONALITY_TO_K2_CONTENT 12 | 13 | k2.php 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /plugins/system/k2.j25.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | System - K2 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_THE_K2_SYSTEM_PLUGIN_IS_USED_TO_ASSIST_THE_PROPER_FUNCTIONALITY_OF_THE_K2_COMPONENT_SITE_WIDE_MAKE_SURE_ITS_ALWAYS_PUBLISHED_WHEN_THE_K2_COMPONENT_IS_INSTALLED 12 | 13 | k2.php 14 | 15 | 16 | -------------------------------------------------------------------------------- /plugins/system/k2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | System - K2 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_THE_K2_SYSTEM_PLUGIN_IS_USED_TO_ASSIST_THE_PROPER_FUNCTIONALITY_OF_THE_K2_COMPONENT_SITE_WIDE_MAKE_SURE_ITS_ALWAYS_PUBLISHED_WHEN_THE_K2_COMPONENT_IS_INSTALLED 12 | 13 | k2.php 14 | 15 | 16 | -------------------------------------------------------------------------------- /plugins/user/k2.j25.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | User - K2 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_A_USER_SYNCHRONIZATION_PLUGIN_FOR_K2 12 | 13 | k2.php 14 | 15 | 16 | -------------------------------------------------------------------------------- /plugins/user/k2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | User - K2 4 | JoomlaWorks 5 | (see K2 component) 6 | Copyright (c) 2009 - 2024 JoomlaWorks Ltd. All rights reserved. 7 | please-use-the-contact-form@joomlaworks.net 8 | https://www.joomlaworks.net 9 | (see K2 component) 10 | https://gnu.org/licenses/gpl.html 11 | K2_A_USER_SYNCHRONIZATION_PLUGIN_FOR_K2 12 | 13 | k2.php 14 | 15 | 16 | --------------------------------------------------------------------------------