primo commit

This commit is contained in:
2024-12-17 17:34:10 +01:00
commit e650f8df99
16435 changed files with 2451012 additions and 0 deletions

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<access component="com_phocadownload">
<section name="component">
<action name="core.admin" title="JAction_Admin" description="JAction_Admin_Component_Desc" />
<action name="core.manage" title="JAction_Manage" description="JAction_Manage_Component_Desc" />
<action name="core.create" title="JAction_Create" description="JAction_Create_Component_Desc" />
<action name="core.delete" title="JAction_Delete" description="JAction_Delete_Component_Desc" />
<action name="core.edit" title="JAction_Edit" description="JAction_Edit_Component_Desc" />
<action name="core.edit.state" title="JACTION_EDITSTATE" description="JAction_EditState_Component_Desc" />
</section>
</access>

View File

@ -0,0 +1,632 @@
<?xml version="1.0" encoding="utf-8"?>
<config>
<fields addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fieldset name="display" label="COM_PHOCADOWNLOAD_CONFIG_HEAD_DISPLAY_LABEL">
<field name="phocahead1" type="phocahead" default="COM_PHOCADOWNLOAD_CONFIG_CATEGORY_CATEGORIES_VIEW_LABEL" label="" description=""/>
<field name="filename_or_name" type="list" default="filenametitle" label="COM_PHOCADOWNLOAD_FIELD_FILENAME_OR_NAME_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FILENAME_OR_NAME_LABEL_DESC">
<option value="filename">COM_PHOCADOWNLOAD_FILENAME</option>
<option value="title">COM_PHOCADOWNLOAD_TITLE</option>
<option value="filenametitle">COM_PHOCADOWNLOAD_FILENAME_AND_TITLE</option>
</field>
<field name="display_downloads" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_DOWNLOADS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_DOWNLOADS_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="display_description" type="list" default="3" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_DESCRIPTION_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_DESCRIPTION_DESC">
<option value="0">COM_PHOCADOWNLOAD_NONE</option>
<option value="1">COM_PHOCADOWNLOAD_TOP</option>
<option value="2">COM_PHOCADOWNLOAD_BOTTOM</option>
<option value="3">COM_PHOCADOWNLOAD_TOOLTIP</option>
<option value="4">COM_PHOCADOWNLOAD_TOP_AND_TOOLTIP</option>
<option value="5">COM_PHOCADOWNLOAD_BOTTOM_AND_TOOLTIP</option>
<option value="6">COM_PHOCADOWNLOAD_TOP_WITH_DETAIL_AND_TOOLTIP</option>
<option value="7">COM_PHOCADOWNLOAD_BOTTOM_WITH_DETAIL_AND_TOOLTIP</option>
<option value="8">COM_PHOCADOWNLOAD_OVERLIB_WIDTH_DETAIL</option>
</field>
<field name="display_main_cat_desc" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_MAIN_CAT_DESC_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_MAIN_CAT_DESC_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>
<field name="display_main_cat_subcategories" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_MAIN_CAT_SUBCATEGORIES_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_MAIN_CAT_SUBCATEGORIES_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>
<field name="display_detail" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_DETAIL_BUTTON_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_DETAIL_BUTTON_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES_TOOLTIP</option>
<option value="2">COM_PHOCADOWNLOAD_YES_MODAL</option>
<option value="3">COM_PHOCADOWNLOAD_YES_STANDARD_POPUP_WINDOW</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="display_new" default="0" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_NEW_ICON_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_NEW_ICON_DESC" />
<field name="display_hot" default="0" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_HOT_ICON_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_HOT_ICON_DESC" />
<field name="display_most_download" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_MOST_DOWNLOAD_FILES_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_MOST_DOWNLOAD_FILES_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="most_download_files_num" default="5" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_MOST_DOWNLOAD_FILES_NUMBER_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MOST_DOWNLOAD_FILES_NUMBER_DESC" />
<field name="display_file_view" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_FILE_VIEW_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_FILE_VIEW_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="2">COM_PHOCADOWNLOAD_YES_ONLY_MODALBOX</option>
</field>
<field name="display_date_type" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_DATE_TYPE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_DATE_TYPE_DESC">
<option value="0">COM_PHOCADOWNLOAD_DATABASE_TIME</option>
<option value="1">COM_PHOCADOWNLOAD_FILE_FILEMTIME</option>
<option value="2">COM_PHOCADOWNLOAD_FILE_FILECTIME</option>
<option value="3">COM_PHOCADOWNLOAD_FILE_FILEATIME</option>
</field>
<field name="download_external_link" type="list" default="_self" label="COM_PHOCADOWNLOAD_FIELD_EXTERNAL_DOWNLOAD_LINK_LABEL" description="COM_PHOCADOWNLOAD_FIELD_EXTERNAL_DOWNLOAD_LINK_DESC">
<option value="_self">COM_PHOCADOWNLOAD_SELF</option>
<option value="_blank">COM_PHOCADOWNLOAD_BLANK</option>
</field>
<field name="download_metadesc" type="textarea" label="COM_PHOCADOWNLOAD_FIELD_METADESC_LABEL" description="COM_PHOCADOWNLOAD_FIELD_METADESC_DESC" rows="2" cols="26" default="" />
<field name="download_metakey" type="textarea" label="COM_PHOCADOWNLOAD_FIELD_METAKEY_LABEL" description="COM_PHOCADOWNLOAD_FIELD_METAKEY_DESC" rows="2" cols="26" default="" />
<field name="category_ordering" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_CATEGORY_ORDERING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CATEGORY_ORDERING_DESC">
<option value="1">COM_PHOCADOWNLOAD_ORDERING_ASC</option>
<option value="2">COM_PHOCADOWNLOAD_ORDERING_DESC</option>
<option value="3">COM_PHOCADOWNLOAD_TITLE_ASC</option>
<option value="4">COM_PHOCADOWNLOAD_TITLE_DESC</option>
<option value="5">COM_PHOCADOWNLOAD_DATE_ASC</option>
<option value="6">COM_PHOCADOWNLOAD_DATE_DESC</option>
<option value="7">COM_PHOCADOWNLOAD_ID_ASC</option>
<option value="8">COM_PHOCADOWNLOAD_ID_DESC</option>
</field>
<field name="file_ordering" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_FILE_ORDERING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FILE_ORDERING_DESC">
<option value="1">COM_PHOCADOWNLOAD_ORDERING_ASC</option>
<option value="2">COM_PHOCADOWNLOAD_ORDERING_DESC</option>
<option value="3">COM_PHOCADOWNLOAD_TITLE_ASC</option>
<option value="4">COM_PHOCADOWNLOAD_TITLE_DESC</option>
<option value="5">COM_PHOCADOWNLOAD_DATE_ASC</option>
<option value="6">COM_PHOCADOWNLOAD_DATE_DESC</option>
<option value="7">COM_PHOCADOWNLOAD_ID_ASC</option>
<option value="8">COM_PHOCADOWNLOAD_ID_DESC</option>
<option value="11">COM_PHOCADOWNLOAD_FILENAME_ASC</option>
<option value="12">COM_PHOCADOWNLOAD_FILENAME_DESC</option>
<option value="15">COM_PHOCADOWNLOAD_RATING_COUNT_ASC</option>
<option value="16">COM_PHOCADOWNLOAD_RATING_COUNT_DESC</option>
<option value="13">COM_PHOCADOWNLOAD_AVERAGE_ASC</option>
<option value="14">COM_PHOCADOWNLOAD_AVERAGE_DESC</option>
<option value="9">COM_PHOCADOWNLOAD_DOWNLOADS_ASC</option>
<option value="10">COM_PHOCADOWNLOAD_DOWNLOADS_DESC</option>
</field>
<field name="file_ordering_values" default="1,2,3,4,5,6,11,12,15,16,13,14,9,10" size="18" type="text" label="COM_PHOCADOWNLOAD_FIELD_FILE_ORDERING_VALUES_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FILE_ORDERING_VALUES_DESC"/>
<field name="ordering_asc_desc_arrows" default="0" type="radio" class="btn-group btn-group-yesno" label="COM_PHOCADOWNLOAD_FIELD_ORDERING_ASC_DESC_ARROWS_LABEL"
description="COM_PHOCADOWNLOAD_FIELD_ORDERING_ASC_DESC_ARROWS_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="default_pagination" default="20" size="18" type="text" label="COM_PHOCADOWNLOAD_FIELD_DEFAULT_VALUE_PAGINATION_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DEFAULT_VALUE_PAGINATION_DESC" />
<field name="pagination" default="5,10,15,20,50" size="18" type="text" label="COM_PHOCADOWNLOAD_FIELD_CATEGORY_VIEW_PAGINATION_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CATEGORY_VIEW_PAGINATION_DESC" />
<field name="display_num_doc_secs" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_NUM_FILES_CATEGORIES_VIEW_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_NUM_FILES_CATEGORIES_VIEW_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="display_num_doc_secs_header" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_NUM_FILES_CATEGORIES_VIEW_HEADER_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_NUM_FILES_CATEGORIES_VIEW_HEADER_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="display_up_icon" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_UP_ICON_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_UP_ICON_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="display_mirror_links" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_MIRROR_LINKS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_MIRROR_LINKS_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES_CATEGORY_VIEW</option>
<option value="2">COM_PHOCADOWNLOAD_YES_FILE_VIEW</option>
<option value="3">COM_PHOCADOWNLOAD_YES_CATEGORY_FILE_VIEW</option>
<option value="4">COM_PHOCADOWNLOAD_YES_CATEGORY_VIEW_BUTTON</option>
<option value="5">COM_PHOCADOWNLOAD_YES_FILE_VIEW_BUTTON</option>
<option value="6">COM_PHOCADOWNLOAD_YES_CATEGORY_FILE_VIEW_BUTTON</option>
</field>
<field name="display_report_link" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_REPORT_LINK_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_REPORT_LINK_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES_CATEGORY_VIEW</option>
<option value="2">COM_PHOCADOWNLOAD_YES_FILE_VIEW</option>
<option value="3">COM_PHOCADOWNLOAD_YES_CATEGORY_FILE_VIEW</option>
</field>
<field name="report_link_guestbook_id" default="" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_REPORT_LINK_GUESTBOOK_ID_LABEL" description="COM_PHOCADOWNLOAD_FIELD_REPORT_LINK_GUESTBOOK_ID_DESC" />
<field name="tags_links" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_TAGS_LINKS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TAGS_LINKS_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_EXTERNAL_LINK</option>
<option value="2">COM_PHOCADOWNLOAD_CATEGORY_LINK</option>
<option value="3">COM_PHOCADOWNLOAD_SEARCH_OUTCOME</option>
</field>
<field name="display_tags_links" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_TAGS_LINKS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_TAGS_LINKS_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES_CATEGORY_VIEW</option>
<option value="2">COM_PHOCADOWNLOAD_YES_FILE_VIEW</option>
<option value="3">COM_PHOCADOWNLOAD_YES_CATEGORY_FILE_VIEW</option>
<option value="4">COM_PHOCADOWNLOAD_YES_CATEGORY_VIEW_TITLE_SUFFIX</option>
<option value="5">COM_PHOCADOWNLOAD_YES_FILE_VIEW_TITLE_SUFFIX</option>
<option value="6">COM_PHOCADOWNLOAD_YES_CATEGORY_FILE_VIEW_TITLE_SUFFIX</option>
</field>
<field name="disable_breadcrumbs_category_view" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISABLE_BREADCRUMBS_CATEGORY_VIEW_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISABLE_BREADCRUMBS_CATEGORY_VIEW_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="phocahead4" type="phocahead" default="COM_PHOCADOWNLOAD_FILE_VIEW_LABEL" label="" description=""/>
<field name="license_box_height" default="300" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_LICENSE_BOX_HEIGHT_LABEL" description="COM_PHOCADOWNLOAD_FIELD_LICENSE_BOX_HEIGHT_DESC" />
<field name="phocahead8" type="phocahead" default="COM_PHOCADOWNLOAD_GENERAL_DISPLAY_OPTIONS_LABEL" label="" description=""/>
<field name="display_header_type" type="list" default="h1" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_HEADER_TYPE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_HEADER_TYPE_DESC">
<option value="h1">h1</option>
<option value="h2">h2</option>
<option value="h3">h3</option>
<option value="h4">h4</option>
<option value="h5">h5</option>
<option value="h6">h6</option>
<option value="div">div</option>
<option value="p">p</option>
<option value="-1">COM_PHOCADOWNLOAD_HIDE_HEADER</option>
</field>
<field name="display_subheader_type" type="list" default="h3" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_SUBHEADER_TYPE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_SUBHEADER_TYPE_DESC">
<option value="h1">h1</option>
<option value="h2">h2</option>
<option value="h3">h3</option>
<option value="h4">h4</option>
<option value="h5">h5</option>
<option value="h6">h6</option>
<option value="div">div</option>
<option value="p">p</option>
<option value="-1">COM_PHOCADOWNLOAD_HIDE_HEADER</option>
</field>
<!--
<field name="phocahead2" type="phocahead" default="COM_PHOCADOWNLOAD_CONFIG_COMMENTS_SETTINGS_LABEL" label="" description=""/>
<field name="display_category_comments" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_CATEGORY_COMMENTS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_CATEGORY_COMMENTS_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_JCOMMENTS</option>
<option value="2">COM_PHOCADOWNLOAD_FACEBOOK</option>-
</field>
<field name="display_file_comments" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_FILE_COMMENTS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_FILE_COMMENTS_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_JCOMMENTS</option>
<option value="2">COM_PHOCADOWNLOAD_FACEBOOK</option>
</field>
<field name="fb_comment_app_id" default="" size="18" type="phocaselectfbuser" label="COM_PHOCADOWNLOAD_FIELD_FB_COMMENT_APP_ID_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FB_COMMENT_APP_ID_DESC" />
<field name="fb_comment_width" default="550" size="6" type="text" label="COM_PHOCADOWNLOAD_FACEBOOK_COMMENTS_WIDTH_LABEL" description="COM_PHOCADOWNLOAD_FACEBOOK_COMMENTS_WIDTH_DESC" />
<field name="fb_comment_lang" type="text" size="30" default="en_US" label="COM_PHOCADOWNLOAD_FACEBOOK_FIELD_COMMENT_LANG_LABEL" description="COM_PHOCADOWNLOAD_FACEBOOK_FIELD_COMMENT_LANG_DESC" />
<field name="fb_comment_count" type="text" size="6" default="" label="COM_PHOCADOWNLOAD_FACEBOOK_FIELD_COMMENT_COUNT_LABEL" description="COM_PHOCADOWNLOAD_FACEBOOK_FIELD_COMMENT_COUNT_DESC" />-->
<field name="phocahead7" type="phocahead" default="COM_PHOCADOWNLOAD_CONFIG_RATING_SETTINGS_LABEL" label="" description=""/>
<field name="display_rating_file" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_RATING_FILE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_RATING_FILE_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES_CATEGORY_VIEW</option>
<option value="2">COM_PHOCADOWNLOAD_YES_FILE_VIEW</option>
<option value="3">COM_PHOCADOWNLOAD_YES_CATEGORY_FILE_VIEW</option>
</field>
<field name="phocahead3" type="phocahead" default="COM_PHOCADOWNLOAD_CONFIG_THEME_SETTINGS_LABEL" label="" description=""/>
<field name="file_icon_size" type="list" default="16" label="COM_PHOCADOWNLOAD_FIELD_FILE_ICON_SIZE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FILE_ICON_SIZE_DESC">
<option value="16">16px</option>
<option value="32">32px</option>
<option value="48">48px</option>
<option value="64">64px</option>
</field>
<field name="file_icon_size_md" type="list" default="16" label="COM_PHOCADOWNLOAD_FIELD_FILE_ICON_SIZE_MD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FILE_ICON_SIZE_MD_DESC">
<option value="16">16px</option>
<option value="32">32px</option>
<option value="48">48px</option>
<option value="64">64px</option>
</field>
<field name="file_icon_mime" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_FILE_ICON_MIME_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FILE_ICON_MIME_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>
<!--
<field name="display_specific_layout" type="list" default="0" label="COM_PHOCADOWNLOAD_DISPLAY_SPEC_LAYOUT_LABEL" description="COM_PHOCADOWNLOAD_DISPLAY_SPEC_LAYOUT_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>
<field name="display_bootstrap3_layout" type="list" default="0" label="COM_PHOCADOWNLOAD_DISPLAY_BOOTSTRAP3_LAYOUT_LABEL" description="COM_PHOCADOWNLOAD_DISPLAY_BOOTSTRAP3_LAYOUT_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="2">COM_PHOCADOWNLOAD_YES_LOAD_BOOTSTRAP_LIBRARY</option>
</field>
-->
<field name="phocahead5" type="phocahead" default="COM_PHOCADOWNLOAD_PLAY_SETTINGS_LABEL" label="" description=""/>
<field name="display_play" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_PLAY_BUTTON_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_PLAY_BUTTON_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="player_width" default="328" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_PLAYER_WIDTH_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PLAYER_WIDTH_DESC" />
<field name="player_height" default="200" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_PLAYER_HEIGHT_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PLAYER_HEIGHT_DESC" />
<field name="player_mp3_height" default="30" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_PLAYER_MP3_HEIGHT_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PLAYER_MP3_HEIGHT_DESC" />
<field name="play_popup_window" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_PLAY_POPUP_WINDOW_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PLAY_POPUP_WINDOW_DESC">
<option value="1">COM_PHOCADOWNLOAD_STANDARD_POPUP_WINDOW</option>
<option value="0">COM_PHOCADOWNLOAD_MODAL_BOX</option>
</field>
<!--<field name="html5_play" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_HTML5_AUDIO_VIDEO_LABEL" description="COM_PHOCADOWNLOAD_FIELD_HTML5_AUDIO_VIDEO_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>-->
<field name="phocahead6" type="phocahead" default="COM_PHOCADOWNLOAD_PREVIEW_SETTINGS_LABEL" label="" description=""/>
<field name="display_preview" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_PREVIEW_BUTTON_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_PREVIEW_BUTTON_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="preview_width" default="640" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_PREVIEW_WIDTH_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PREVIEW_WIDTH_DESC" />
<field name="preview_height" default="480" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_PREVIEW_HEIGHT_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PREVIEW_HEIGHT_DESC" />
<field name="preview_popup_window" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_PREVIEW_POPUP_WINDOW_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PREVIEW_POPUP_WINDOW_DESC">
<option value="1">COM_PHOCADOWNLOAD_STANDARD_POPUP_WINDOW</option>
<option value="0">COM_PHOCADOWNLOAD_MODAL_BOX</option>
</field>
<field name="youtube_height_cv" default="240" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_VIDEO_HEIGHT_CV_LABEL" description="COM_PHOCADOWNLOAD_FIELD_VIDEO_HEIGHT_CV_DESC" />
<field name="youtube_width_cv" default="320" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_VIDEO_WIDTH_CV_LABEL" description="COM_PHOCADOWNLOAD_FIELD_VIDEO_WIDTH_CV_DESC" />
<field name="youtube_height_dv" default="360" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_VIDEO_HEIGHT_DV_LABEL" description="COM_PHOCADOWNLOAD_FIELD_VIDEO_HEIGHT_DV_DESC" />
<field name="youtube_width_dv" default="480" size="10" type="text" label="COM_PHOCADOWNLOAD_FIELD_VIDEO_WIDTH_DV_LABEL" description="COM_PHOCADOWNLOAD_FIELD_VIDEO_WIDTH_DV_DESC" />
</fieldset>
<fieldset name="user_download" label="COM_PHOCADOWNLOAD_CONFIG_HEAD_DOWNLOADS_LABEL">
<field name="ignore_file_types_check" default="2" type="list" label="COM_PHOCADOWNLOAD_IGNORE_FILE_TYPES_CHECK_LABEL" description="COM_PHOCADOWNLOAD_IGNORE_FILE_TYPES_CHECK_DESC" >
<option value="1">COM_PHOCADOWNLOAD_YES_UPLOAD_PARAM</option>
<option value="2">COM_PHOCADOWNLOAD_YES_UPLOAD_PARAM_ADMIN</option>
<option value="3">COM_PHOCADOWNLOAD_YES_DOWNLOAD_PARAM</option>
<option value="4">COM_PHOCADOWNLOAD_YES_DOWNLOAD_UPLOAD_PARAM</option>
<option value="5">COM_PHOCADOWNLOAD_YES_DOWNLOAD_UPLOAD_PARAM_ADMIN</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="allowed_file_types_download" default="{hqx=application/mac-binhex40}
{cpt=application/mac-compactpro}
{csv=text/x-comma-separated-values}
{bin=application/macbinary}
{dms=application/octet-stream}
{lha=application/octet-stream}
{lzh=application/octet-stream}
{exe=application/octet-stream}
{class=application/octet-stream}
{psd=application/x-photoshop}
{so=application/octet-stream}
{sea=application/octet-stream}
{dll=application/octet-stream}
{oda=application/oda}
{pdf=application/pdf}
{ai=application/postscript}
{eps=application/postscript}
{ps=application/postscript}
{smi=application/smil}
{smil=application/smil}
{mif=application/vnd.mif}
{xls=application/vnd.ms-excel}
{ppt=application/powerpoint}
{wbxml=application/wbxml}
{wmlc=application/wmlc}
{dcr=application/x-director}
{dir=application/x-director}
{dxr=application/x-director}
{dvi=application/x-dvi}
{gtar=application/x-gtar}
{gz=application/x-gzip}
{php=application/x-httpd-php}
{php4=application/x-httpd-php}
{php3=application/x-httpd-php}
{phtml=application/x-httpd-php}
{phps=application/x-httpd-php-source}
{js=application/x-javascript}
{swf=application/x-shockwave-flash}
{sit=application/x-stuffit}
{tar=application/x-tar}
{tgz=application/x-tar}
{xhtml=application/xhtml+xml}
{xht=application/xhtml+xml}
{zip=application/x-zip}
{mid=audio/midi}
{midi=audio/midi}
{mpga=audio/mpeg}
{mp2=audio/mpeg}
{mp3=audio/mpeg}
{aif=audio/x-aiff}
{aiff=audio/x-aiff}
{aifc=audio/x-aiff}
{ram=audio/x-pn-realaudio}
{rm=audio/x-pn-realaudio}
{rpm=audio/x-pn-realaudio-plugin}
{ra=audio/x-realaudio}
{rv=video/vnd.rn-realvideo}
{wav=audio/x-wav}
{bmp=image/bmp}
{gif=image/gif}
{jpeg=image/jpeg}
{jpg=image/jpeg}
{jpe=image/jpeg}
{png=image/png}
{tiff=image/tiff}
{tif=image/tiff}
{css=text/css}
{html=text/html}
{htm=text/html}
{shtml=text/html}
{txt=text/plain}
{text=text/plain}
{log=text/plain}
{rtx=text/richtext}
{rtf=text/rtf}
{xml=text/xml}
{xsl=text/xml}
{mpeg=video/mpeg}
{mpg=video/mpeg}
{mpe=video/mpeg}
{qt=video/quicktime}
{mov=video/quicktime}
{avi=video/x-msvideo}
{flv=video/x-flv}
{movie=video/x-sgi-movie}
{doc=application/msword}
{xl=application/excel}
{eml=message/rfc822}
{pptx=application/vnd.openxmlformats-officedocument.presentationml.presentation}
{xlsx=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet}
{docx=application/vnd.openxmlformats-officedocument.wordprocessingml.document}
{rar=application/x-rar-compressed}
{odb=application/vnd.oasis.opendocument.database}
{odc=application/vnd.oasis.opendocument.chart}
{odf=application/vnd.oasis.opendocument.formula}
{odg=application/vnd.oasis.opendocument.graphics}
{odi=application/vnd.oasis.opendocument.image}
{odm=application/vnd.oasis.opendocument.text-master}
{odp=application/vnd.oasis.opendocument.presentation}
{ods=application/vnd.oasis.opendocument.spreadsheet}
{odt=application/vnd.oasis.opendocument.text}
{sxc=application/vnd.sun.xml.calc}
{sxd=application/vnd.sun.xml.draw}
{sxg=application/vnd.sun.xml.writer.global}
{sxi=application/vnd.sun.xml.impress}
{sxm=application/vnd.sun.xml.math}
{sxw=application/vnd.sun.xml.writer}
{ogv=video/ogg}
{ogg=audio/ogg}
{mp4=video/mp4}
{mp4=application/octet-stream}" rows="8" cols="35" type="textarea" label="COM_PHOCADOWNLOAD_FIELD_ALLOWED_FILE_TYPES_DOWNLOAD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ALLOWED_FILE_TYPES_DOWNLOAD_DESC" />
<field name="allowed_file_types_upload" default="{pdf=application/pdf}
{ppt=application/powerpoint}
{gz=application/x-gzip}
{tar=application/x-tar}
{tgz=application/x-tar}
{zip=application/x-zip}
{bmp=image/bmp}
{gif=image/gif}
{jpeg=image/jpeg}
{jpg=image/jpeg}
{jpe=image/jpeg}
{png=image/png}
{tiff=image/tiff}
{tif=image/tiff}
{txt=text/plain}
{mpeg=video/mpeg}
{mpg=video/mpeg}
{mpe=video/mpeg}
{qt=video/quicktime}
{mov=video/quicktime}
{avi=video/x-msvideo}
{flv=video/x-flv}
{doc=application/msword}
{ogv=video/ogg}
{ogg=audio/ogg}
{mp4=video/mp4}
{mp4=application/octet-stream}" rows="8" cols="35" type="textarea" label="COM_PHOCADOWNLOAD_FIELD_ALLOWED_FILE_TYPES_UPLOAD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ALLOWED_FILE_TYPES_UPLOAD_DESC" />
<field name="disallowed_file_types_download" default="" rows="2" cols="35" type="textarea" label="COM_PHOCADOWNLOAD_FIELD_DISALLOWED_FILE_TYPES_DOWNLOAD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISALLOWED_FILE_TYPES_DOWNLOAD_DESC" />
<field name="disallowed_file_types_upload" default="" rows="2" cols="35" type="textarea" label="COM_PHOCADOWNLOAD_FIELD_DISALLOWED_FILE_TYPES_UPLOAD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DISALLOWED_FILE_TYPES_UPLOAD_DESC" />
<field name="send_mail_download" type="user" section="com_phocadownload" default="0" label="COM_PHOCADOWNLOAD_FIELD_SEND_EMAIL_DOWNLOAD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_SEND_EMAIL_DOWNLOAD_DESC" />
<field name="user_files_max_count_download" type="text" size="20" default="0" label="COM_PHOCADOWNLOAD_FIELD_MAX_COUNT_USER_DOWNLOADS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MAX_COUNT_USER_DOWNLOADS_DESC" />
<field name="enable_token_download" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_ENABLE_TOKEN_DOWNLOAD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ENABLE_TOKEN_DOWNLOAD_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="token_files_max_count_download" type="text" size="20" default="0" label="COM_PHOCADOWNLOAD_FIELD_MAX_COUNT_TOKEN_DOWNLOADS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MAX_COUNT_TOKEN_DOWNLOADS_DESC" />
</fieldset>
<fieldset name="user_upload" label="COM_PHOCADOWNLOAD_CONFIG_HEAD_UPLOADS_LABEL">
<field name="enable_user_cp" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_USER_UPLOAD_ENABLE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_USER_UPLOAD_ENABLE_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="user_files_max_count" type="text" size="20" default="5" label="COM_PHOCADOWNLOAD_FIELD_MAX_COUNT_USER_FILES_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MAX_COUNT_USER_FILES_DESC" />
<field name="user_files_max_size" type="text" size="20" default="20971520" label="COM_PHOCADOWNLOAD_FIELD_MAX_SIZE_USER_FILES_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MAX_SIZE_USER_FILES_DESC" />
<field name="user_file_upload_size" type="text" size="20" default="3145728" label="COM_PHOCADOWNLOAD_FIELD_USER_FILE_UPLOAD_SIZE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_USER_FILE_UPLOAD_SIZE_DESC" />
<field name="enable_user_upload_approve" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_ENABLE_APPROVE_USERFILE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ENABLE_APPROVE_USERFILE_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="user_ucp_lang" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_USER_UCP_LANG_LABEL" description="COM_PHOCADOWNLOAD_FIELD_USER_UCP_LANG_DESC">
<option value="1">COM_PHOCADOWNLOAD_ALL</option>
<option value="2">COM_PHOCADOWNLOAD_USER_LANG</option>
<option value="3">COM_PHOCADOWNLOAD_SITE_LANG</option>
</field>
<field name="send_mail_upload" type="user" section="com_phocadownload" default="0" label="COM_PHOCADOWNLOAD_FIELD_SEND_EMAIL_UPLOAD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_SEND_EMAIL_UPLOAD_DESC" />
<field name="overwrite_existing_files" default="0" type="list" label="COM_PHOCADOWNLOAD_FIELD_OVERWRITE_EXISTING_FILES_LABEL" description="COM_PHOCADOWNLOAD_FIELD_OVERWRITE_EXISTING_FILES_DESC" >
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="pap_copy" default="0" type="list" label="COM_PHOCADOWNLOAD_FIELD_PLAY_OR_PREVIEW_COPY_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PLAY_OR_PREVIEW_COPY_DESC" >
<option value="1">COM_PHOCADOWNLOAD_YES_FRONTEND</option>
<option value="2">COM_PHOCADOWNLOAD_YES_BACKEND</option>
<option value="3">COM_PHOCADOWNLOAD_YES_FRONTEND_BACKEND</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="upload_maxsize" type="text" size="20" default="3145728" label="COM_PHOCADOWNLOAD_FIELD_UPLOAD_MAX_SIZE_ADMIN_LABEL" description="COM_PHOCADOWNLOAD_FIELD_UPLOAD_MAX_SIZE_ADMIN_DESC" />
<field name="enable_multiple_upload_admin" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_ENABLE_MU_ADMIN_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ENABLE_MU_ADMIN_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="multiple_upload_method" type="list" default="4" label="COM_PHOCADOWNLOAD_FIELD_MULTIPLE_UPLOAD_METHOD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MULTIPLE_UPLOAD_METHOD_DESC">
<option value="4">COM_PHOCADOWNLOAD_HTML5_UPLOADER</option>
<option value="5">COM_PHOCADOWNLOAD_BROWSERPLUS_UPLOADER</option>
<option value="6">COM_PHOCADOWNLOAD_HTML4_UPLOADER</option>
</field>
<field name="default_access" default="1" type="accesslevel" label="COM_PHOCADOWNLOAD_FIELD_DEFAULT_ACCESS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DEFAULT_ACCESS_DESC" class="form-select" size="1" />
<field name="enable_xss_check" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_ENABLE_XSS_CHECK_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ENABLE_XSS_CHECK_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES_FRONTEND</option>
<option value="2">COM_PHOCADOWNLOAD_YES_BACKEND</option>
<option value="3">COM_PHOCADOWNLOAD_YES_FRONTEND_BACKEND</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="frontend_run_events" type="list" default="0" label="COM_PHOCADOWNLOAD_RUN_EVENTS_FRONTEND_LABEL" description="COM_PHOCADOWNLOAD_RUN_EVENTS_FRONTEND_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>
</fieldset>
<fieldset name="general" label="COM_PHOCADOWNLOAD_CONFIG_HEAD_GENERAL_LABEL">
<field name="enable_user_statistics" default="1" type="list" label="COM_PHOCADOWNLOAD_FIELD_ENABLE_USER_STAT_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ENABLE_USER_STAT_DESC" >
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="enable_logging" default="0" type="list" label="COM_PHOCADOWNLOAD_FIELD_ENABLE_LOGGING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ENABLE_LOGGING_DESC" >
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="2">COM_PHOCADOWNLOAD_YES_UPLOADS_ONLY</option>
<option value="1">COM_PHOCADOWNLOAD_YES_DOWNLOADS_ONLY</option>
<option value="3">COM_PHOCADOWNLOAD_YES_UPLOADS_DOWNLOADS</option>
</field>
<field name="store_ip" type="list" class="btn-group btn-group-yesno" default="0" label="COM_PHOCADOWNLOAD_FIELD_STORE_IP_ADDRESS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_STORE_IP_ADDRESS_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>
<field name="delete_existing_files" default="0" type="list" label="COM_PHOCADOWNLOAD_FIELD_DELETE_EXISTING_FILES_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DELETE_EXISTING_FILES_DESC" >
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="description" default="" type="editor" class="form-control" label="COM_PHOCADOWNLOAD_FIELD_DESCRIPTION_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DESCRIPTION_DESC" filter="\Joomla\CMS\Component\ComponentHelper::filterText" />
<field name="registered_access_level" type="phocaaccesslevel" label="COM_PHOCADOWNLOAD_FIELD_REGISTERED_ACCESS_LEVEL_LABEL" description="COM_PHOCADOWNLOAD_FIELD_REGISTERED_ACCESS_LEVEL_DESC" multiple="true" size="10" layout="joomla.form.field.list-fancy-select" >
</field>
<field name="remove_sef_ids" type="radio" layout="joomla.form.field.radio.switcher" default="0" label="COM_PHOCADOWNLOAD_SEF_NOIDS_LABEL" description="COM_PHOCADOWNLOAD_SEF_NOIDS_DESC" filter="integer" >
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>
<field name="phocaheadexpert1" type="phocaheadexpert" default="COM_PHOCADOWNLOAD_EXPERTS_ONLY_LABEL" label="" description=""/>
<field name="download_folder" default="phocadownload" size="40" type="text" label="COM_PHOCADOWNLOAD_FIELD_DOWNLOAD_FOLDER_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DOWNLOAD_FOLDER_DESC" />
<field name="download_folder_pap" default="phocadownloadpap" size="40" type="text" label="COM_PHOCADOWNLOAD_FIELD_DOWNLOAD_FOLDER_PAP_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DOWNLOAD_FOLDER_PAP_DESC" />
<field name="absolute_path" default="" size="40" type="text" label="COM_PHOCADOWNLOAD_FIELD_ABSOLUTE_PATH_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ABSOLUTE_PATH_DESC" />
<field name="enable_plugin_query" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_ENABLE_PLUGIN_QUERY_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ENABLE_PLUGIN_QUERY_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="enable_cache" type="list" default="0" label="COM_PHOCADOWNLOAD_FIELD_ENABLE_CACHE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ENABLE_CACHE_DESC">
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="bt_cat_col_left" default="" size="40" type="text" label="COM_PHOCADOWNLOAD_FIELD_COLUMN_SIZE_CATEGORY_VIEW_LABEL" description="COM_PHOCADOWNLOAD_FIELD_COLUMN_SIZE_CATEGORY_VIEW_DESC" />
<field name="check_http_range" type="list" default="1" label="COM_PHOCADOWNLOAD_FIELD_CHECK_HTTP_RANGE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CHECK_HTTP_RANGE_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>
</fieldset>
<fieldset name="permissions" description="JCONFIG_PERMISSIONS_DESC" label="JCONFIG_PERMISSIONS_LABEL">
<field name="rules" type="rules" component="com_phocadownload" filter="rules" validate="rules" label="COM_PHOCADOWNLOAD_FIELD_JCONFIG_PERMISSIONS_LABEL" section="component"/>
</fieldset>
</fields>
</config>

View File

@ -0,0 +1,62 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\Helpers\Sidebar;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\MVC\Controller\BaseController;
jimport('joomla.application.component.controller');
$app = Factory::getApplication();
$option = $app->input->get('option');
$l['cp'] = array('COM_PHOCADOWNLOAD_CONTROL_PANEL', '');
$l['f'] = array('COM_PHOCADOWNLOAD_FILES', 'phocadownloadfiles');
$l['c'] = array('COM_PHOCADOWNLOAD_CATEGORIES', 'phocadownloadcats');
$l['l'] = array('COM_PHOCADOWNLOAD_LICENSES', 'phocadownloadlics');
$l['st'] = array('COM_PHOCADOWNLOAD_STATISTICS', 'phocadownloadstat');
$l['d'] = array('COM_PHOCADOWNLOAD_DOWNLOADS', 'phocadownloaddownloads');
$l['u'] = array('COM_PHOCADOWNLOAD_UPLOADS', 'phocadownloaduploads');
$l['fr'] = array('COM_PHOCADOWNLOAD_FILE_RATING', 'phocadownloadrafile');
$l['t'] = array('COM_PHOCADOWNLOAD_TAGS', 'phocadownloadtags');
//$l['ly'] = array('COM_PHOCADOWNLOAD_LAYOUT', 'phocadownloadlayouts');
$l['sty'] = array('COM_PHOCADOWNLOAD_STYLES', 'phocadownloadstyles');
$l['log'] = array('COM_PHOCADOWNLOAD_LOGGING', 'phocadownloadlogs');
$l['in'] = array('COM_PHOCADOWNLOAD_INFO', 'phocadownloadinfo');
// Submenu view
//$view = JFactory::getApplication()->input->get( 'view', '', '', 'string', J R EQUEST_ALLOWRAW );
//$layout = JFactory::getApplication()->input->get( 'layout', '', '', 'string', J R EQUEST_ALLOWRAW );
$view = Factory::getApplication()->input->get('view');
$layout = Factory::getApplication()->input->get('layout');
if ($layout == 'edit') {
} else {
foreach ($l as $k => $v) {
if ($v[1] == '') {
$link = 'index.php?option='.$option;
} else {
$link = 'index.php?option='.$option.'&view=';
}
if ($view == $v[1]) {
Sidebar::addEntry(Text::_($v[0]), $link.$v[1], true );
} else {
Sidebar::addEntry(Text::_($v[0]), $link.$v[1]);
}
}
}
class PhocadownloadCpController extends BaseController {
function display($cachable = false, $urlparams = array()) {
parent::display($cachable , $urlparams);
}
}
?>

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

View File

@ -0,0 +1,61 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Router\Route;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadcat extends FormController
{
protected $option = 'com_phocadownload';
function __construct($config=array()) {
parent::__construct($config);
}
protected function allowAdd($data = array()) {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.create', 'com_phocadownload');
if ($allow === null) {
return parent::allowAdd($data);
} else {
return $allow;
}
}
protected function allowEdit($data = array(), $key = 'id') {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.edit', 'com_phocadownload');
if ($allow === null) {
return parent::allowEdit($data, $key);
} else {
return $allow;
}
}
public function batch($model = null) {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
// Set the model
$model = $this->getModel('phocadownloadcat', '', array());
// Preset the redirect
$this->setRedirect(Route::_('index.php?option=com_phocadownload&view=phocadownloadcats'.$this->getRedirectToListAppend(), false));
return parent::batch($model);
}
}
?>

View File

@ -0,0 +1,47 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Factory;
jimport('joomla.application.component.controlleradmin');
class PhocaDownloadCpControllerPhocaDownloadcats extends AdminController
{
protected $option = 'com_phocadownload';
public function __construct($config = array())
{
parent::__construct($config);
}
public function &getModel($name = 'PhocaDownloadcat', $prefix = 'PhocaDownloadCpModel', $config = array())
{
$model = parent::getModel($name, $prefix, array('ignore_request' => true));
return $model;
}
public function saveOrderAjax() {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$pks = $this->input->post->get('cid', array(), 'array');
$order = $this->input->post->get('order', array(), 'array');
ArrayHelper::toInteger($pks);
ArrayHelper::toInteger($order);
$model = $this->getModel();
$return = $model->saveorder($pks, $order);
if ($return) { echo "1";}
Factory::getApplication()->close();
}
}
?>

View File

@ -0,0 +1,67 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadDownloads extends FormController
{
protected $option = 'com_phocadownload';
public function &getModel($name = 'PhocaDownloadDownload', $prefix = 'PhocaDownloadCpModel', $config = array('ignore_request' => true))
{
$model = parent::getModel($name, $prefix, array('ignore_request' => true));
return $model;
}
function cancel($key = NULL) {
$model = $this->getModel( 'phocadownload' );
$this->setRedirect( 'index.php?option=com_phocadownload&view=phocadownloaddownloads' );
}
function reset() {
$post = Factory::getApplication()->input->get('post');
$cid = Factory::getApplication()->input->get( 'cid', array(0), 'post', 'array' );
$idFile = Factory::getApplication()->input->get( 'idfile', 0, 'post', 'int' );
$model = $this->getModel( 'phocadownloaddownloads' );
if ($model->reset($cid)) {
$msg = Text::_( 'COM_PHOCADOWNLOAD_SUCCESS_RESET_USER_STAT' );
} else {
$msg = Text::_( 'COM_PHOCADOWNLOAD_ERROR_RESET_USER_STAT' );
}
$link = 'index.php?option=com_phocadownload&view=phocadownloaddownloads&id='.(int)$idFile;
$this->setRedirect($link, $msg);
}
function delete() {
$cid = Factory::getApplication()->input->get( 'cid', array(0), 'post', 'array' );
$model = $this->getModel( 'phocadownloaddownload' );
if ($model->delete($cid)) {
$msg = Text::_( 'COM_PHOCADOWNLOAD_SUCCESS_DELETE_USER_STAT' );
} else {
$msg = Text::_( 'COM_PHOCADOWNLOAD_ERROR_DELETE_USER_STAT' );
}
$link = 'index.php?option=com_phocadownload&view=phocadownloaddownloads';
$this->setRedirect($link, $msg);
}
}
?>

View File

@ -0,0 +1,84 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Router\Route;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadFile extends FormController
{
protected $option = 'com_phocadownload';
function __construct($config=array()) {
parent::__construct($config);
$task = Factory::getApplication()->input->get('task');
if ((string)$task == 'addtext') {
Factory::getApplication()->input->set('task','add');
Factory::getApplication()->input->set('layout','edit_text');
}
}
protected function allowAdd($data = array()) {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.create', 'com_phocadownload');
if ($allow === null) {
return parent::allowAdd($data);
} else {
return $allow;
}
}
protected function allowEdit($data = array(), $key = 'id') {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.edit', 'com_phocadownload');
if ($allow === null) {
return parent::allowEdit($data, $key);
} else {
return $allow;
}
}
public function batch($model = null) {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
// Set the model
$model = $this->getModel('phocadownloadfile', '', array());
// Preset the redirect
$this->setRedirect(Route::_('index.php?option=com_phocadownload&view=phocadownloadfiles'.$this->getRedirectToListAppend(), false));
return parent::batch($model);
}
/*
function copyquick() {
$cid = Factory::getApplication()->input->get( 'cid', array(0), 'post', 'array' );
$model = $this->getModel( 'phocadownloadfile' );
if ($model->copyQuick($cid)) {
$msg = Text::_( 'COM_PHOCADOWNLOAD_SUCCESS_COPY_FILE' );
} else {
$msg = Text::_( 'COM_PHOCADOWNLOAD_ERROR_COPY_FILE' );
}
$link = 'index.php?option=com_phocadownload&view=phocadownloadfiles';
$this->setRedirect($link, $msg);
}*/
}
?>

View File

@ -0,0 +1,89 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Factory;
use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Router\Route;
jimport('joomla.application.component.controlleradmin');
class PhocaDownloadCpControllerPhocaDownloadFiles extends AdminController
{
protected $option = 'com_phocadownload';
public function __construct($config = array())
{
parent::__construct($config);
$this->registerTask('disapprove', 'approve');
}
public function &getModel($name = 'PhocaDownloadFile', $prefix = 'PhocaDownloadCpModel', $config = array())
{
$model = parent::getModel($name, $prefix, array('ignore_request' => true));
return $model;
}
function approve()
{
// Check for request forgeries
Session::checkToken() or die(Text::_('JINVALID_TOKEN'));
// Get items to publish from the request.
$cid = Factory::getApplication()->input->get('cid', array(), '', 'array');
$data = array('approve' => 1, 'disapprove' => 0);
$task = $this->getTask();
$value = ArrayHelper::getValue($data, $task, 0, 'int');
if (empty($cid)) {
throw new Exception(Text::_($this->text_prefix.'_NO_ITEM_SELECTED'), 500);
return false;
} else {
// Get the model.
$model = $this->getModel();
// Make sure the item ids are integers
ArrayHelper::toInteger($cid);
// Publish the items.
if (!$model->approve($cid, $value)) {
throw new Exception($model->getError(), 500);
return false;
} else {
if ($value == 1) {
$ntext = $this->text_prefix.'_N_ITEMS_APPROVED';
} else if ($value == 0) {
$ntext = $this->text_prefix.'_N_ITEMS_DISAPPROVED';
}
$this->setMessage(Text::plural($ntext, count($cid)));
}
}
$this->setRedirect(Route::_('index.php?option='.$this->option.'&view='.$this->view_list, false));
}
public function saveOrderAjax() {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$pks = $this->input->post->get('cid', array(), 'array');
$order = $this->input->post->get('order', array(), 'array');
ArrayHelper::toInteger($pks);
ArrayHelper::toInteger($order);
$model = $this->getModel();
$return = $model->saveorder($pks, $order);
if ($return) { echo "1";}
Factory::getApplication()->close();
}
}
?>

View File

@ -0,0 +1,25 @@
<?php
/*
* @package Joomla 1.5
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
// Check to ensure this file is included in Joomla!
defined('_JEXEC') or die();
class PhocaDownloadCpControllerPhocaDownloadinfo extends PhocaDownloadCpController
{
function __construct() {
parent::__construct();
}
function cancel($key = NULL) {
$this->setRedirect( 'index.php?option=com_phocadownload' );
}
}
?>

View File

@ -0,0 +1,993 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
class PhocaDownloadCpControllerPhocaDownloadinstall extends PhocaDownloadCpController
{
function __construct(){
parent::__construct();
$this->registerTask( 'install' , 'install' );
$this->registerTask( 'upgrade' , 'upgrade' );
}
function install() {
$db = JFactory::getDBO();
$msgSQL = '';
$msgFile = '';
$msgError = '';
// --------------------------------------------------------------------------
$query =' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_categories').' ;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE '.$db->quoteName('#__phocadownload_categories').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('parent_id').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('section').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('title').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('name').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('alias').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('image').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('image_position').' varchar(30) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('description').' text,'."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('editor').' varchar(50) default NULL,'."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('access').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('uploaduserid').' text,'."\n";
$query.=' '.$db->quoteName('accessuserid').' text,'."\n";
$query.=' '.$db->quoteName('deleteuserid').' text,'."\n";
$query.=' '.$db->quoteName('date').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('count').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('params').' text,'."\n";
$query.=' '.$db->quoteName('hits').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('metakey').' text,'."\n";
$query.=' '.$db->quoteName('metadesc').' text,'."\n";
$query.=' '.$db->quoteName('metadata').' text,'."\n";
$query.=' '.$db->quoteName('language').' char(7) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').'),'."\n";
$query.=' KEY '.$db->quoteName('cat_idx').' ('.$db->quoteName('section').', '. $db->quoteName('published').', '. $db->quoteName('access').'),'."\n";
$query.=' KEY '.$db->quoteName('idx_access').' ('.$db->quoteName('access').'),'."\n";
$query.=' KEY '.$db->quoteName('idx_checkout').' ('.$db->quoteName('checked_out').')'."\n";
$query.=') default CHARSET=utf8;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// --------------------------------------------------------------------------
/*
$query=' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_sections').' ;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE '.$db->quoteName('#__phocadownload_sections').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('title').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('name').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('alias').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('image').' text,'."\n";
$query.=' '.$db->quoteName('scope').' varchar(50) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('image_position').' varchar(30) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('description').' text,'."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('access').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('date').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('count').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('params').' text,'."\n";
$query.=' '.$db->quoteName('metakey').' text,'."\n";
$query.=' '.$db->quoteName('metadesc').' text,'."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').'),'."\n";
$query.=' KEY '.$db->quoteName('idx_scope').' ('.$db->quoteName('scope').')'."\n";
$query.=') TYPE=MyISAM CHARACTER SET '.$db->quoteName('utf8').' ;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
*/
// --------------------------------------------------------------------------
$query=' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload').' ;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE '.$db->quoteName('#__phocadownload').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) unsigned NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('catid').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('sectionid').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('owner_id').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('sid').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('title').' varchar(250) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('alias').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('filename').' varchar(250) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('filesize').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('filename_play').' varchar(250) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('filename_preview').' varchar(250) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('author').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('author_email').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('author_url').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('license').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('license_url').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('video_filename').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('image_filename').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('image_filename_spec1').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('image_filename_spec2').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('image_download').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('link_external').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('mirror1link').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('mirror1title').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('mirror1target').' varchar(10) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('mirror2link').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('mirror2title').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('mirror2target').' varchar(10) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('description').' text,'."\n";
$query.=' '.$db->quoteName('features').' text,'."\n";
$query.=' '.$db->quoteName('changelog').' text,'."\n";
$query.=' '.$db->quoteName('notes').' text,'."\n";
$query.=' '.$db->quoteName('userid').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('version').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('directlink').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('date').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('publish_up').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('publish_down').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('hits').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('textonly').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('approved').' tinyint(3) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('access').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('confirm_license').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('unaccessible_file').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('params').' text,'."\n";
$query.=' '.$db->quoteName('metakey').' text,'."\n";
$query.=' '.$db->quoteName('metadesc').' text,'."\n";
$query.=' '.$db->quoteName('metadata').' text,'."\n";
$query.=' '.$db->quoteName('language').' char(7) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').'),'."\n";
$query.=' KEY '.$db->quoteName('catid').' ('.$db->quoteName('catid').', '. $db->quoteName('published').')'."\n";
$query.=') default CHARSET=utf8;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// --------------------------------------------------------------------------
/*
$query=' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_settings').' ;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query =' CREATE TABLE '.$db->quoteName('#__phocadownload_settings').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) unsigned NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('title').' varchar(250) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('value').' text,'."\n";
$query.=' '.$db->quoteName('values').' text,'."\n";
$query.=' '.$db->quoteName('type').' varchar(50) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') TYPE=MyISAM CHARACTER SET '.$db->quoteName('utf8').' ;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// VALUES
$queries[] = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'download_folder', 'phocadownload','', 'text');"."\n";
$queries[] = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'allowed_file_types', '{hqx=application/mac-binhex40}\n{cpt=application/mac-compactpro}\n{csv=text/x-comma-separated-values}\n{bin=application/macbinary}\n{dms=application/octet-stream}\n{lha=application/octet-stream}\n{lzh=application/octet-stream}\n{exe=application/octet-stream}\n{class=application/octet-stream}\n{psd=application/x-photoshop}\n{so=application/octet-stream}\n{sea=application/octet-stream}\n{dll=application/octet-stream}\n{oda=application/oda}\n{pdf=application/pdf}\n{ai=application/postscript}\n{eps=application/postscript}\n{ps=application/postscript}\n{smi=application/smil}\n{smil=application/smil}\n{mif=application/vnd.mif}\n{xls=application/vnd.ms-excel}\n{ppt=application/powerpoint}\n{wbxml=application/wbxml}\n{wmlc=application/wmlc}\n{dcr=application/x-director}\n{dir=application/x-director}\n{dxr=application/x-director}\n{dvi=application/x-dvi}\n{gtar=application/x-gtar}\n{gz=application/x-gzip}\n{php=application/x-httpd-php}\n{php4=application/x-httpd-php}\n{php3=application/x-httpd-php}\n{phtml=application/x-httpd-php}\n{phps=application/x-httpd-php-source}\n{js=application/x-javascript}\n{swf=application/x-shockwave-flash}\n{sit=application/x-stuffit}\n{tar=application/x-tar}\n{tgz=application/x-tar}\n{xhtml=application/xhtml+xml}\n{xht=application/xhtml+xml}\n{zip=application/x-zip}\n{mid=audio/midi}\n{midi=audio/midi}\n{mpga=audio/mpeg}\n{mp2=audio/mpeg}\n{mp3=audio/mpeg}\n{aif=audio/x-aiff}\n{aiff=audio/x-aiff}\n{aifc=audio/x-aiff}\n{ram=audio/x-pn-realaudio}\n{rm=audio/x-pn-realaudio}\n{rpm=audio/x-pn-realaudio-plugin}\n{ra=audio/x-realaudio}\n{rv=video/vnd.rn-realvideo}\n{wav=audio/x-wav}\n{bmp=image/bmp}\n{gif=image/gif}\n{jpeg=image/jpeg}\n{jpg=image/jpeg}\n{jpe=image/jpeg}\n{png=image/png}\n{tiff=image/tiff}\n{tif=image/tiff}\n{css=text/css}\n{html=text/html}\n{htm=text/html}\n{shtml=text/html}\n{txt=text/plain}\n{text=text/plain}\n{log=text/plain}\n{rtx=text/richtext}\n{rtf=text/rtf}\n{xml=text/xml}\n{xsl=text/xml}\n{mpeg=video/mpeg}\n{mpg=video/mpeg}\n{mpe=video/mpeg}\n{qt=video/quicktime}\n{mov=video/quicktime}\n{avi=video/x-msvideo}\n{flv=video/x-flv}\n{movie=video/x-sgi-movie}\n{doc=application/msword}\n{xl=application/excel}\n{eml=message/rfc822}', '', 'textarea');"."\n";
$queries[] = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'disallowed_file_types', '','', 'textarea');"."\n";
$queries[] = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'upload_maxsize', '3145728','', 'text');"."\n";
$queries[] = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'enable_flash', 0,'{0=No}{1=Yes}', 'select');"."\n";
// Version 1.0.6
$queries[] = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'enable_user_statistics', 1,'{0=No}{1=Yes}', 'select');"."\n";
// Version 1.1.0
$queries[] = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'absolute_path', '','', 'text');"."\n";
// Version 1.3.4
$queries[] = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'description', '','', 'textareaeditor');"."\n";
foreach ($queries as $valueQuery) {
$db->setQuery( $valueQuery );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
}
*/
// --------------------------------------------------------------------------
$query=' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_user_stat').' ;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query='CREATE TABLE '.$db->quoteName('#__phocadownload_user_stat').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('fileid').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('userid').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('count').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('date').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('language').' char(7) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') default CHARSET=utf8;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// --------------------------------------------------------------------------
$query=' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_licenses').' ;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE '.$db->quoteName('#__phocadownload_licenses').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('title').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('alias').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('description').' text,'."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('language').' char(7) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') default CHARSET=utf8;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// ------------------------------------------
// PHOCADOWNLOAD FILE VOTES (2.0.0 RC2)
// ------------------------------------------
$query ='DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_file_votes').';'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query =' CREATE TABLE '.$db->quoteName('#__phocadownload_file_votes').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('fileid').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('userid').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('date').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('rating').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('params').' text,'."\n";
$query.=' '.$db->quoteName('language').' char(7) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') default CHARSET=utf8;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// ------------------------------------------
// PHOCADOWNLOAD FILE VOTES STATISTICS (2.0.0 RC2)
// ------------------------------------------
$query ='DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_file_votes_statistics').';'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query =' CREATE TABLE '.$db->quoteName('#__phocadownload_file_votes_statistics').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('fileid').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('count').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('average').' float(8,6) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('language').' char(7) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') default CHARSET=utf8;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// ------------------------------------------
// PHOCADOWNLOAD TAGS (2.1.0)
// ------------------------------------------
$query =' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_tags').' ;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE '.$db->quoteName('#__phocadownload_tags').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('title').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('alias').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('link_cat').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('link_ext').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('description').' text,'."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('params').' text,'."\n";
$query.=' '.$db->quoteName('language').' char(7) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') default CHARSET=utf8;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query =' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_tags_ref').' ;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE '.$db->quoteName('#__phocadownload_tags_ref').' ('."\n";
$query.=' '.$db->quoteName('id').' SERIAL,'."\n";
$query.=' '.$db->quoteName('fileid').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('tagid').' int(11) NOT NULL default 0,'."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').'),'."\n";
$query.=' UNIQUE KEY '.$db->quoteName('i_fileid').' ('.$db->quoteName('fileid').','.$db->quoteName('tagid').')'."\n";
$query.=') default CHARSET=utf8;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query =' DROP TABLE IF EXISTS '.$db->quoteName('#__phocadownload_layout').' ;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE '.$db->quoteName('#__phocadownload_layout').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('categories').' text,'."\n";
$query.=' '.$db->quoteName('category').' text,'."\n";
$query.=' '.$db->quoteName('file').' text,'."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('params').' text,'."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') default CHARSET=utf8;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='INSERT INTO '.$db->quoteName('#__phocadownload_layout').' ('."\n";
$query.=' '.$db->quoteName('id').' ,'."\n";
$query.=' '.$db->quoteName('categories').' ,'."\n";
$query.=' '.$db->quoteName('category').' ,'."\n";
$query.=' '.$db->quoteName('file').' ,'."\n";
$query.=' '.$db->quoteName('checked_out').' ,'."\n";
$query.=' '.$db->quoteName('checked_out_time').' ,'."\n";
$query.=' '.$db->quoteName('params').' )'."\n";
$query.=' VALUES ('."\n";
$query.=' NULL,'."\n";
$query.=' '.$db->Quote('<div class="pd-categoriesbox">
<div class="pd-title">{pdtitle}</div>
{pdsubcategories}
{pdclear}
</div>').','."\n";
$query.=' '.$db->Quote('<div class="pd-filebox">
{pdfiledesctop}
{pdfile}
<div class="pd-buttons">{pdbuttondownload}</div>
<div class="pd-buttons">{pdbuttondetails}</div>
<div class="pd-buttons">{pdbuttonpreview}</div>
<div class="pd-buttons">{pdbuttonplay}</div>
<div class="pd-mirrors">{pdmirrorlink2} {pdmirrorlink1}</div>
<div class="pd-rating">{pdrating}</div>
<div class="pd-tags">{pdtags}</div>
{pdfiledescbottom}
<div class="pd-cb"></div>
</div>').','."\n";
$query.=' '.$db->Quote('<div class="pd-filebox">
{pdimage}
{pdfile}
{pdfilesize}
{pdversion}
{pdlicense}
{pdauthor}
{pdauthoremail}
{pdfiledate}
{pddownloads}
{pddescription}
{pdfeatures}
{pdchangelog}
{pdnotes}
<div class="pd-mirrors">{pdmirrorlink2} {pdmirrorlink1}</div>
<div class="pd-report">{pdreportlink}</div>
<div class="pd-rating">{pdrating}</div>
<div class="pd-tags">{pdtags}</div>
<div class="pd-cb"></div>
</div>').','."\n";
$query.=' '.$db->Quote('0').','."\n";
$query.=' '.$db->Quote('0000-00-00 00:00:00').','."\n";
$query.=' NULL'."\n";
$query.=' );'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// END -------------------------------------------------------------------------------
// Error
if ($msgSQL !='') {
$msgError .= '<br />' . $msgSQL;
}
if ($msgFile !='') {
$msgError .= '<br />' . $msgFile;
}
// End Message
if ($msgError !='') {
$msg = JText::_( 'Phoca Download not successfully installed' ) . ': ' . $msgError;
} else {
$msg = JText::_( 'Phoca Download successfully installed' );
}
$link = 'index.php?option=com_phocadownload';
$this->setRedirect($link, $msg);
}
function upgrade()
{
$db = JFactory::getDBO();
$dbPref = $db->getPrefix();
$msgSQL = '';
$msgFile = '';
$msgError = '';
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum())
{
$msgSQL .= $db->getErrorMsg(). '<br />';
}
$query=' SELECT * FROM '.$db->quoteName('#__phocadownload_categories').' LIMIT 1;'."\n";
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum())
{
$msgSQL .= $db->getErrorMsg(). '<br />';
}
/*
$query=' SELECT * FROM '.$db->quoteName('#__phocadownload_sections').' LIMIT 1;'."\n";
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum())
{
$msgSQL .= $db->getErrorMsg(). '<br />';
}
*/
// UPGRADE PHOCA DOWNLOAD 2.1.0 VERSION
// ------------------------------------------
// PHOCADOWNLOAD TAGS
// ------------------------------------------
$query ='CREATE TABLE IF NOT EXISTS '.$db->quoteName('#__phocadownload_tags').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('title').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('alias').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('link_cat').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('link_ext').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('description').' text,'."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('params').' text,'."\n";
$query.=' '.$db->quoteName('language').' char(7) NOT NULL default \'\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') default CHARSET=utf8;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE IF NOT EXISTS'.$db->quoteName('#__phocadownload_tags_ref').' ('."\n";
$query.=' '.$db->quoteName('id').' SERIAL,'."\n";
$query.=' '.$db->quoteName('fileid').' int(11) NOT NULL default 0,'."\n";
$query.=' '.$db->quoteName('tagid').' int(11) NOT NULL default 0,'."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').'),'."\n";
$query.=' UNIQUE KEY '.$db->quoteName('i_fileid').' ('.$db->quoteName('fileid').','.$db->quoteName('tagid').')'."\n";
$query.=') default CHARSET=utf8;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$query ='CREATE TABLE IF NOT EXISTS '.$db->quoteName('#__phocadownload_layout').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('categories').' text,'."\n";
$query.=' '.$db->quoteName('category').' text,'."\n";
$query.=' '.$db->quoteName('file').' text,'."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('params').' text,'."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') default CHARSET=utf8;'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
$update0 = false;
$errorMsg = '';
$update0 = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload", "features", "text", "description" );
if (!$update0) {
$msgSQL .= 'Error while updating Features column';
}
$update1 = false;
$errorMsg = '';
$update1 = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload", "changelog", "text", "description" );
if (!$update1) {
$msgSQL .= 'Error while updating Changelog column';
}
$update2 = false;
$errorMsg = '';
$update2 = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload", "notes", "text", "description" );
if (!$update2) {
$msgSQL .= 'Error while updating Notes column';
}
/*
$query=' SELECT title FROM '.$db->quoteName('#__phocadownload_settings').' WHERE title = \'enable_user_statistics\' LIMIT 1;'."\n";
$db->setQuery($query);
if (!$result = $db->loadObject()) {
$query = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'enable_user_statistics', 1,'{0=No}{1=Yes}', 'select');"."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
}
// --------------------------------------------------------------------------
// UPGRADE PHOCA DOWNLOAD 1.1.0 VERSION
// ------------------------------------------
// PHOCADOWNLOAD USER STAT
// ------------------------------------------
$query='CREATE TABLE IF NOT EXISTS '.$db->quoteName('#__phocadownload_licenses').' ('."\n";
$query.=' '.$db->quoteName('id').' int(11) NOT NULL auto_increment,'."\n";
$query.=' '.$db->quoteName('title').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('alias').' varchar(255) NOT NULL default \'\','."\n";
$query.=' '.$db->quoteName('description').' text,'."\n";
$query.=' '.$db->quoteName('checked_out').' int(11) unsigned NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('checked_out_time').' datetime NOT NULL default \'0000-00-00 00:00:00\','."\n";
$query.=' '.$db->quoteName('published').' tinyint(1) NOT NULL default \'0\','."\n";
$query.=' '.$db->quoteName('ordering').' int(11) NOT NULL default \'0\','."\n";
$query.=' PRIMARY KEY ('.$db->quoteName('id').')'."\n";
$query.=') TYPE=MyISAM CHARACTER SET '.$db->quoteName('utf8').' ;';
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
// --------------------------------------------------------------------------
// ------------------------------------------
// PHOCADOWNLOAD UPDATE confirm_license
// ------------------------------------------
$updateCL = false;
$updateCL = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "confirm_license", "int(11) NOT NULL default '0'", "access" );
if (!$updateCL) {
$msgSQL .= 'Error while updating Confirm License column<br />';
}
// ------------------------------------------
// PHOCADOWNLOAD UPDATE confirm_license
// ------------------------------------------
$updateUF = false;
$updateUF = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "unaccessible_file", "int(11) NOT NULL default '0'", "access" );
if (!$updateUF) {
$msgSQL .= 'Error while updating Display Unaccessible Files column <br />';
}
// ------------------------------------------
// PHOCADOWNLOAD CATEGORIES UPDATE date
// ------------------------------------------
$updateCD = false;
$updateCD = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload_categories", "date", "datetime NOT NULL default '0000-00-00 00:00:00'", "access" );
if (!$updateCD) {
$msgSQL .= 'Error while updating Date column (categories) <br />';
}
// ------------------------------------------
// PHOCADOWNLOAD SECTIONS UPDATE date
// ------------------------------------------
$updateSD = false;
$updateSD = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload_sections", "date", "datetime NOT NULL default '0000-00-00 00:00:00'", "access" );
if (!$updateSD) {
$msgSQL .= 'Error while updating Date column (sections) <br />';
}
// ------------------------------------------
// PHOCADOWNLOAD SETTINGS UPDATE absolute_path
// ------------------------------------------
$query=' SELECT title FROM '.$db->quoteName('#__phocadownload_settings').' WHERE title = \'absolute_path\' LIMIT 1;'."\n";
$db->setQuery($query);
if (!$result = $db->loadObject()) {
$query = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'absolute_path', '','', 'text');"."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
}
// ------------------------------------------
// PHOCA DOWNLOAD UPDATE 1.2.0
// ------------------------------------------
// Filename_preview
$updateFPR = false;
$updateFPR = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "filename_preview", "varchar(250) NOT NULL default ''", "filename" );
if (!$updateFPR) {
$msgSQL .= 'Error while updating Filename Preview column<br />';
}
// Filename_play
$updateFPL = false;
$updateFPL = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "filename_play", "varchar(250) NOT NULL default ''", "filename" );
if (!$updateFPL) {
$msgSQL .= 'Error while updating Filename Play column<br />';
}
$updateIFS1 = false;
$updateIFS1 = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "image_filename_spec1", "varchar(250) NOT NULL default ''", "filename" );
if (!$updateIFS1) {
$msgSQL .= 'Error while updating Image Filename Spec1 column<br />';
}
$updateIFS2 = false;
$updateIFS2 = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "image_filename_spec2", "varchar(250) NOT NULL default ''", "filename" );
if (!$updateIFS2) {
$msgSQL .= 'Error while updating Image Filename Spec2 column<br />';
}
// ------------------------------------------
// PHOCA DOWNLOAD UPDATE 1.3.0
// ------------------------------------------
// Approved
$updateApr = false;
$updateApr = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "approved", "tinyint(1) NOT NULL default '0'", "published" );
if (!$updateApr) {
$msgSQL .= 'Error while updating Approved column<br />';
}
// Upload
$updateUpl = false;
$updateUpl = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload_categories", "uploaduserid", "text", "access" );
if (!$updateUpl) {
$msgSQL .= 'Error while updating Upload User ID column<br />';
}
// Owner ID
$updateOid = false;
$updateOid = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "owner_id", "int(11) NOT NULL default '0'", "id" );
if (!$updateOid) {
$msgSQL .= 'Error while updating Owner ID column<br />';
}
// Owner ID
$fileSize = false;
$fileSize = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload", "filesize", "int(11) NOT NULL default '0'", "filename" );
if (!$fileSize) {
$msgSQL .= 'Error while updating File Size column<br />';
}
// ------------------------------------------
// PHOCA DOWNLOAD UPDATE 1.3.2
// ------------------------------------------
$updateMK = false;
$errorMsg = '';
$updateMK = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload", "metakey", "text", "params" );
if (!$updateMK) {
$msgSQL .= 'Error while updating Metakey (File) column';
}
$updateMKC = false;
$errorMsg = '';
$updateMKC = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload_categories", "metakey", "text", "params" );
if (!$updateMKC) {
$msgSQL .= 'Error while updating Metakey (Category) column';
}
$updateMKS = false;
$errorMsg = '';
$updateMKS = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload_sections", "metakey", "text", "params" );
if (!$updateMKS) {
$msgSQL .= 'Error while updating Metakey (Section) column';
}
$updateMD = false;
$errorMsg = '';
$updateMD = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload", "metadesc", "text", "params" );
if (!$updateMD) {
$msgSQL .= 'Error while updating Metadesc (File) column';
}
$updateMDC = false;
$errorMsg = '';
$updateMDC = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload_categories", "metadesc", "text", "params" );
if (!$updateMDC) {
$msgSQL .= 'Error while updating Metadesc (Category) column';
}
$updateMDS = false;
$errorMsg = '';
$updateMDS = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload_sections", "metadesc", "text", "params" );
if (!$updateMDS) {
$msgSQL .= 'Error while updating Metadesc (Section) column';
}
// ------------------------------------------
// PHOCA DOWNLOAD UPDATE 1.3.4
// ------------------------------------------
$query=' SELECT title FROM '.$db->quoteName('#__phocadownload_settings').' WHERE title = \'description\' LIMIT 1;'."\n";
$db->setQuery($query);
if (!$result = $db->loadObject()) {
$query = "INSERT INTO ".$db->quoteName('#__phocadownload_settings')." VALUES (null, 'description', '','', 'textareaeditor');"."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
}
$updatePU = false;
$errorMsg = '';
$updatePU = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload", "publish_up", "datetime NOT NULL default '0000-00-00 00:00:00'", "date" );
if (!$updatePU) {
$msgSQL .= 'Error while updating Publish Up column';
}
$updatePD = false;
$errorMsg = '';
$updatePD = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload", "publish_down", "datetime NOT NULL default '0000-00-00 00:00:00'", "date" );
if (!$updatePD) {
$msgSQL .= 'Error while updating Publish Down column';
}
// ------------------------------------------
// PHOCA DOWNLOAD UPDATE 1.3.4
// ------------------------------------------
// Access User ID
$updateAid = false;
$updateAid = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload_categories", "accessuserid", "text", "access" );
if (!$updateAid) {
$msgSQL .= 'Error while updating Access User ID column<br />';
}
// Delete User ID
$updateDid = false;
$updateDid = $this->AddColumnIfNotExists($errorMsg, "#__phocadownload_categories", "deleteuserid", "text", "access" );
if (!$updateDid) {
$msgSQL .= 'Error while updating Delete User ID column<br />';
}
*/
// CHECK TABLES
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum()) {
$msgSQL .= $db->getErrorMsg(). '<br />';
}
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload_categories').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum()) {
$msgSQL .= $db->getErrorMsg(). '<br />';
}
/*
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload_sections').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum()) {
$msgSQL .= $db->getErrorMsg(). '<br />';
}
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload_settings').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum()) {
$msgSQL .= $db->getErrorMsg(). '<br />';
}
*/
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload_user_stat').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum()) {
$msgSQL .= $db->getErrorMsg(). '<br />';
}
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload_licenses').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum()) {
$msgSQL .= $db->getErrorMsg(). '<br />';
}
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload_tags').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadResult();
if ($db->getErrorNum()) {
$msgSQL .= $db->getErrorMsg(). '<br />';
}
$query =' SELECT * FROM '.$db->quoteName('#__phocadownload_layout').' LIMIT 1;';
$db->setQuery( $query );
$result = $db->loadObjectList();
if ($db->getErrorNum()) {
$msgSQL .= $db->getErrorMsg(). '<br />';
}
if ((!isset($result->categories) && !isset($result->category) && !isset($result->file)) ||
(isset($result->categories) && $result->category == '' && isset($result->category) && $result->category == '' && isset($result->file) && $result->file == '')
) {
$query ='INSERT INTO '.$db->quoteName('#__phocadownload_layout').' ('."\n";
$query.=' '.$db->quoteName('id').' ,'."\n";
$query.=' '.$db->quoteName('categories').' ,'."\n";
$query.=' '.$db->quoteName('category').' ,'."\n";
$query.=' '.$db->quoteName('file').' ,'."\n";
$query.=' '.$db->quoteName('checked_out').' ,'."\n";
$query.=' '.$db->quoteName('checked_out_time').' ,'."\n";
$query.=' '.$db->quoteName('params').' )'."\n";
$query.=' VALUES ('."\n";
$query.=' NULL,'."\n";
$query.=' '.$db->Quote('<div class="pd-categoriesbox">
<div class="pd-title">{pdtitle}</div>
{pdsubcategories}
{pdclear}
</div>').','."\n";
$query.=' '.$db->Quote('<div class="pd-filebox">
{pdfiledesctop}
{pdfile}
<div class="pd-buttons">{pdbuttondownload}</div>
<div class="pd-buttons">{pdbuttondetails}</div>
<div class="pd-buttons">{pdbuttonpreview}</div>
<div class="pd-buttons">{pdbuttonplay}</div>
<div class="pd-mirrors">{pdmirrorlink2} {pdmirrorlink1}</div>
<div class="pd-rating">{pdrating}</div>
<div class="pd-tags">{pdtags}</div>
{pdfiledescbottom}
<div class="pd-cb"></div>
</div>').','."\n";
$query.=' '.$db->Quote('<div class="pd-filebox">
{pdimage}
{pdfile}
{pdfilesize}
{pdversion}
{pdlicense}
{pdauthor}
{pdauthoremail}
{pdfiledate}
{pddownloads}
{pddescription}
{pdfeatures}
{pdchangelog}
{pdnotes}
<div class="pd-mirrors">{pdmirrorlink2} {pdmirrorlink1}</div>
<div class="pd-report">{pdreportlink}</div>
<div class="pd-rating">{pdrating}</div>
<div class="pd-tags">{pdtags}</div>
<div class="pd-cb"></div>
</div>').','."\n";
$query.=' '.$db->Quote('0').','."\n";
$query.=' '.$db->Quote('0000-00-00 00:00:00').','."\n";
$query.=' NULL'."\n";
$query.=' );'."\n";
$db->setQuery( $query );
if (!$result = $db->query()){$msgSQL .= $db->stderr() . '<br />';}
}
// - - - - - - - - - - - - - - - -
// ------------------------------------------
// PHOCA DOWNLOAD UPDATE 2.1.1
// ------------------------------------------
$updateVL = false;
$errorMsg = '';
$updateVL = $this->AddColumnIfNotExists( $errorMsg, "#__phocadownload", "video_filename", "varchar(255) NOT NULL default ''", "params" );
if (!$updateVL) {
$msgSQL .= 'Error while updating Video Filename column';
}
// Error
if ($msgSQL !='') {
$msgError .= '<br />' . $msgSQL;
}
if ($msgFile !='') {
$msgError .= '<br />' . $msgFile;
}
// End Message
if ($msgError !='') {
$msg = JText::_( 'Phoca Download not successfully upgraded' ) . ': ' . $msgError;
} else {
$msg = JText::_( 'Phoca Download successfully upgraded' );
}
$link = 'index.php?option=com_phocadownload';
$this->setRedirect($link, $msg);
}
function AddColumnIfNotExists(&$errorMsg, $table, $column, $attributes = "INT( 11 ) NOT NULL default '0'", $after = '' ) {
$db = JFactory::getDBO();
$columnExists = false;
$query = 'SHOW COLUMNS FROM '.$table;
$db->setQuery( $query );
if (!$result = $db->query()){return false;}
$columnData = $db->loadObjectList();
foreach ($columnData as $valueColumn) {
if ($valueColumn->Field == $column) {
$columnExists = true;
break;
}
}
if (!$columnExists) {
if ($after != '') {
$query = 'ALTER TABLE '.$db->quoteName($table).' ADD '.$db->quoteName($column).' '.$attributes.' AFTER '.$db->quoteName($after).';';
} else {
$query = 'ALTER TABLE '.$db->quoteName($table).' ADD '.$db->quoteName($column).' '.$attributes.';';
}
$db->setQuery( $query );
if (!$result = $db->query()){return false;}
$errorMsg = 'notexistcreated';
}
return true;
}
}
// utf-8 test: <20>,<2C>,<2C>,<2C>,<2C>
?>

View File

@ -0,0 +1,117 @@
<?php
/*
* @package Joomla 1.5
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Router\Route;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadLayout extends FormController
{
protected $option = 'com_phocadownload';
function __construct($config=array()) {
parent::__construct($config);
}
public function execute($task)
{
parent::execute($task);
// Clear the component's cache
if ($task != 'display') {
$cache = Factory::getCache('com_phocadownload');
$cache->clean();
}
}
protected function allowAdd($data = array()) {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.create', 'com_phocadownload');
if ($allow === null) {
return parent::allowAdd($data);
} else {
return $allow;
}
}
protected function allowEdit($data = array(), $key = 'id') {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.edit', 'com_phocadownload');
if ($allow === null) {
return parent::allowEdit($data, $key);
} else {
return $allow;
}
}
public function back($key = null) {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
// Initialise variables.
$app = Factory::getApplication();
$model = $this->getModel();
$table = $model->getTable();
$checkin = property_exists($table, 'checked_out');
$context = "$this->option.edit.$this->context";
if (empty($key))
{
$key = $table->getKeyName();
}
$recordId = Factory::getApplication()->input->getInt($key);
// Attempt to check-in the current record.
if ($recordId)
{
// Check we are holding the id in the edit list.
if (!$this->checkEditId($context, $recordId))
{
// Somehow the person just went to the form - we don't allow that.
$this->setMessage($this->getError(), 'error');
$app->enqueueMessage(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $recordId), 'error');
$this->setRedirect(Route::_('index.php?option=' . $this->option, false));
return false;
}
if ($checkin)
{
if ($model->checkin($recordId) === false)
{
// Check-in failed, go back to the record and display a notice.
$this->setMessage($this->getError(), 'error');
$app->enqueueMessage(Text::sprintf('JLIB_APPLICATION_ERROR_CHECKIN_FAILED', $model->getError()), 'error');
$this->setRedirect(Route::_('index.php?option=' . $this->option, false));
return false;
}
}
}
// Clean the session data and redirect.
$this->releaseEditId($context, $recordId);
$app->setUserState($context . '.data', null);
$this->setRedirect(Route::_('index.php?option=' . $this->option, false));
return true;
}
}

View File

@ -0,0 +1,19 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadLayouts extends FormController
{
protected $option = 'com_phocadownload';
}
?>

View File

@ -0,0 +1,47 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadLic extends FormController
{
protected $option = 'com_phocadownload';
function __construct($config=array()) {
parent::__construct($config);
}
protected function allowAdd($data = array()) {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.create', 'com_phocadownload');
if ($allow === null) {
return parent::allowAdd($data);
} else {
return $allow;
}
}
protected function allowEdit($data = array(), $key = 'id') {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.edit', 'com_phocadownload');
if ($allow === null) {
return parent::allowEdit($data, $key);
} else {
return $allow;
}
}
}
?>

View File

@ -0,0 +1,41 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Factory;
jimport('joomla.application.component.controlleradmin');
class PhocaDownloadCpControllerPhocaDownloadLics extends AdminController
{
protected $option = 'com_phocadownload';
public function &getModel($name = 'PhocaDownloadLic', $prefix = 'PhocaDownloadCpModel', $config = array())
{
$model = parent::getModel($name, $prefix, array('ignore_request' => true));
return $model;
}
public function saveOrderAjax() {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$pks = $this->input->post->get('cid', array(), 'array');
$order = $this->input->post->get('order', array(), 'array');
ArrayHelper::toInteger($pks);
ArrayHelper::toInteger($order);
$model = $this->getModel();
$return = $model->saveorder($pks, $order);
if ($return) { echo "1";}
Factory::getApplication()->close();
}
}
?>

View File

@ -0,0 +1,18 @@
<?php
/*
* @package Joomla 1.5
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
class PhocaDownloadCpControllerPhocaDownloadLinkFile extends PhocaDownloadCpController
{
function __construct() {
parent::__construct();
}
}
?>

View File

@ -0,0 +1,33 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\Language\Text;
class PhocaDownloadCpControllerPhocaDownloadLogs extends PhocaDownloadCpController
{
function __construct() {
parent::__construct();
$this->registerTask( 'reset', 'reset');
}
function reset() {
$model = $this->getModel( 'phocadownloadlog' );
if ($model->reset()) {
$msg = Text::_( 'COM_PHOCADOWNLOAD_SUCCESS_RESET_LOG_STAT' );
} else {
$msg = Text::_( 'COM_PHOCADOWNLOAD_ERROR_RESET_LOG_STAT' );
}
$link = 'index.php?option=com_phocadownload&view=phocadownloadlogs';
$this->setRedirect($link, $msg);
}
}
?>

View File

@ -0,0 +1,59 @@
<?php
/*
* @package Joomla 1.5
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*
* @component Phoca Gallery
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
use Joomla\CMS\Router\Route;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadM extends FormController
{
protected $option = 'com_phocadownload';
protected $view_list = 'phocadownloadmanager';
protected $layout = 'edit';
function __construct() {
parent::__construct();
$this->layout = 'edit';
}
protected function allowAdd($data = array()) {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.create', 'com_phocadownload');
if ($allow === null) {
return parent::allowAdd($data);
} else {
return $allow;
}
}
protected function allowEdit($data = array(), $key = 'id') {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.edit', 'com_phocadownload');
if ($allow === null) {
return parent::allowEdit($data, $key);
} else {
return $allow;
}
}
function edit($key = NULL, $urlVar = NULL) {
$this->setRedirect(Route::_('index.php?option='.$this->option.'&view='.$this->view_list.'&layout='.$this->layout.'&manager=filemultiple', false));
}
function cancel($key = NULL) {
$this->setRedirect( 'index.php?option=com_phocadownload&view=phocadownloadfiles' );
}
}
?>

View File

@ -0,0 +1,111 @@
<?php
/*
* @package Joomla 1.5
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*
* @component Phoca Gallery
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
use Joomla\CMS\Router\Route;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Filesystem\File;
use Joomla\CMS\Language\Text;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadManager extends FormController
{
protected $option = 'com_phocadownload';
protected $view_list = 'phocadownloadmanager';
protected $layout = 'edit';
function __construct() {
parent::__construct();
$this->layout = 'edit';
}
protected function allowAdd($data = array()) {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.create', 'com_phocadownload');
if ($allow === null) {
return parent::allowAdd($data);
} else {
return $allow;
}
}
protected function allowEdit($data = array(), $key = 'id') {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.edit', 'com_phocadownload');
if ($allow === null) {
return parent::allowEdit($data, $key);
} else {
return $allow;
}
}
function edit($key = NULL, $urlVar = NULL) {
$this->setRedirect(Route::_('index.php?option='.$this->option.'&view='.$this->view_list.'&layout='.$this->layout.'&manager=filemultiple', false));
}
function cancel($key = NULL) {
$this->setRedirect( 'index.php?option=com_phocadownload&view=phocadownloadfiles' );
}
function delete($key = null, $urlVar = null) {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$cid = Factory::getApplication()->input->get('cid', array(), '', 'array');
$returnUrl = Factory::getApplication()->input->get( 'return-url', null, 'post', 'base64' );//includes field
$manager = Factory::getApplication()->input->get( 'manager', 'file', 'string' );
if ($cid[0] != '') {
$filePath = PhocaDownloadPath::getPathSet($manager);
$fileToRemove = $filePath['orig_abs_ds']. $cid[0];
if (File::exists($fileToRemove)) {
$db = Factory::getDBO();
$query = 'SELECT a.filename'
.' FROM #__phocadownload AS a'
.' WHERE a.filename = '.$db->quote($cid[0]) . ' OR a.filename_play = '.$db->quote($cid[0]). ' OR a.filename_preview = '.$db->quote($cid[0])
.' ORDER BY a.id';
$db->setQuery($query, 0, 1);
$filename = $db->loadObject();
if (isset($filename->filename) && $filename->filename != '') {
$this->app->enqueueMessage(Text::_('COM_PHOCADOWNLOAD_WARNING_FILE_EXISTS_IN_SYSTEM'), 'warning');
$this->setRedirect(Route::_(base64_decode($returnUrl), false));
return false;
}
if (File::delete($fileToRemove)) {
$this->app->enqueueMessage(Text::_('COM_PHOCADOWNLOAD_FILE_SUCCESSFULLY_DELETED'), 'success');
} else {
$this->app->enqueueMessage(Text::_('COM_PHOCADOWNLOAD_FILE_SUCCESSFULLY_DELETED'), 'error');
}
}
}
$this->setRedirect(Route::_(base64_decode($returnUrl), false));
return true;
}
}
?>

View File

@ -0,0 +1,36 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Factory;
jimport('joomla.application.component.controlleradmin');
class PhocaDownloadCpControllerPhocaDownloadRaFile extends AdminController
{
protected $option = 'com_phocadownload';
public function &getModel($name = 'PhocaDownloadRaFile', $prefix = 'PhocaDownloadCpModel', $config = array())
{
$model = parent::getModel($name, $prefix, array('ignore_request' => true));
return $model;
}
public function saveOrderAjax() {
$pks = $this->input->post->get('cid', array(), 'array');
$order = $this->input->post->get('order', array(), 'array');
ArrayHelper::toInteger($pks);
ArrayHelper::toInteger($order);
$model = $this->getModel();
$return = $model->saveorder($pks, $order);
if ($return) { echo "1";}
Factory::getApplication()->close();
}
}
?>

View File

@ -0,0 +1,69 @@
<?php
/*
* @package Joomla 1.5
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
class PhocaDownloadCpControllerPhocaDownloadset extends PhocaDownloadCpController
{
function __construct() {
parent::__construct();
$this->registerTask( 'apply' , 'save' );
}
function save() {
$post = Factory::getApplication()->input->get('post');
$phocaSet = Factory::getApplication()->input->get( 'phocaset', array(0), 'post', 'array' );
$model = $this->getModel( 'phocadownloadset' );
$errorMsg = '';
switch ( Factory::getApplication()->input->getCmd('task') ) {
case 'apply':
if ($model->store($phocaSet, $errorMsg)) {
$msg = Text::_( 'Changes to Phoca Download Settings Saved' );
if ($errorMsg != '') {
$msg .= '<br />'.Text::_($errorMsg);
}
} else {
$msg = Text::_( 'Error Saving Phoca Download Settings' );
}
$this->setRedirect( 'index.php?option=com_phocadownload&view=phocadownloadset', $msg );
break;
case 'save':
default:
if ($model->store($phocaSet, $errorMsg)) {
$msg = Text::_( 'Phoca Download Settings Saved' );
if ($errorMsg != '') {
$msg .= '<br />'.Text::_($errorMsg);
}
} else {
$msg = Text::_( 'Error Saving Phoca Download Settings' );
}
$this->setRedirect( 'index.php?option=com_phocadownload', $msg );
break;
}
// Check the table in so it can be edited.... we are done with it anyway
$model->checkin();
}
function cancel($key = NULL) {
$model = $this->getModel( 'phocadownload' );
$model->checkin();
$this->setRedirect( 'index.php?option=com_phocadownload' );
}
}
?>

View File

@ -0,0 +1,50 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Router\Route;
use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Factory;
class PhocaDownloadCpControllerPhocaDownloadstat extends AdminController
{
public function __construct() {
parent::__construct();
}
/*
public function cancel($key = NULL) {
$model = $this->getModel( 'phocadownload' );
$model->checkin();
$this->setRedirect( 'index.php?option=com_phocadownload' );
}*/
public function back($key = null) {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$this->setRedirect(Route::_('index.php?option=com_phocadownload', false));
return true;
}
public function saveOrderAjax() {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$pks = $this->input->post->get('cid', array(), 'array');
$order = $this->input->post->get('order', array(), 'array');
ArrayHelper::toInteger($pks);
ArrayHelper::toInteger($order);
$model = $this->getModel();
$return = $model->saveorder($pks, $order);
if ($return) { echo "1";}
Factory::getApplication()->close();
}
}
?>

View File

@ -0,0 +1,45 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadStyle extends FormController
{
protected $option = 'com_phocadownload';
function __construct($config=array()) {
parent::__construct($config);
}
protected function allowAdd($data = array()) {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.create', 'com_phocadownload');
if ($allow === null) {
return parent::allowAdd($data);
} else {
return $allow;
}
}
protected function allowEdit($data = array(), $key = 'id') {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.edit', 'com_phocadownload');
if ($allow === null) {
return parent::allowEdit($data, $key);
} else {
return $allow;
}
}
}
?>

View File

@ -0,0 +1,44 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Factory;
class PhocaDownloadCpControllerPhocaDownloadStyles extends AdminController
{
protected $option = 'com_phocadownload';
public function __construct($config = array()){
parent::__construct($config);
$this->registerTask('apply', 'save');
}
public function &getModel($name = 'PhocaDownloadStyle', $prefix = 'PhocaDownloadCpModel', $config = array()) {
$model = parent::getModel($name, $prefix, array('ignore_request' => true));
return $model;
}
public function saveOrderAjax() {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$pks = $this->input->post->get('cid', array(), 'array');
$order = $this->input->post->get('order', array(), 'array');
ArrayHelper::toInteger($pks);
ArrayHelper::toInteger($order);
$model = $this->getModel();
$return = $model->saveorder($pks, $order);
if ($return) { echo "1";}
Factory::getApplication()->close();
}
}
?>

View File

@ -0,0 +1,47 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\MVC\Controller\FormController;
use Joomla\CMS\Factory;
jimport('joomla.application.component.controllerform');
class PhocaDownloadCpControllerPhocaDownloadTag extends FormController
{
protected $option = 'com_phocadownload';
function __construct($config=array()) {
parent::__construct($config);
}
protected function allowAdd($data = array()) {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.create', 'com_phocadownload');
if ($allow === null) {
return parent::allowAdd($data);
} else {
return $allow;
}
}
protected function allowEdit($data = array(), $key = 'id') {
$user = Factory::getUser();
$allow = null;
$allow = $user->authorise('core.edit', 'com_phocadownload');
if ($allow === null) {
return parent::allowEdit($data, $key);
} else {
return $allow;
}
}
}
?>

View File

@ -0,0 +1,39 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\MVC\Controller\AdminController;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Session\Session;
use Joomla\Utilities\ArrayHelper;
use Joomla\CMS\Factory;
jimport('joomla.application.component.controlleradmin');
class PhocaDownloadCpControllerPhocaDownloadTags extends AdminController
{
protected $option = 'com_phocadownload';
public function &getModel($name = 'PhocaDownloadTag', $prefix = 'PhocaDownloadCpModel', $config = array())
{
$model = parent::getModel($name, $prefix, array('ignore_request' => true));
return $model;
}
public function saveOrderAjax() {
Session::checkToken() or jexit(Text::_('JINVALID_TOKEN'));
$pks = $this->input->post->get('cid', array(), 'array');
$order = $this->input->post->get('order', array(), 'array');
ArrayHelper::toInteger($pks);
ArrayHelper::toInteger($order);
$model = $this->getModel();
$return = $model->saveorder($pks, $order);
if ($return) { echo "1";}
Factory::getApplication()->close();
}
}
?>

View File

@ -0,0 +1,37 @@
<?php
/*
* @package Joomla 1.5
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
// Check to ensure this file is included in Joomla!
defined('_JEXEC') or die();
class PhocaDownloadCpControllerPhocaDownloaduninstall extends PhocaDownloadCpController
{
function __construct()
{
parent::__construct();
// Register Extra tasks
$this->registerTask( 'remove' , 'remove' );
$this->registerTask( 'keep' , 'keep' );
}
function remove()
{
}
function keep()
{
}
}

View File

@ -0,0 +1,129 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die( 'Restricted access' );
use Joomla\CMS\Factory;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Client\ClientHelper;
use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Filesystem\Path;
use Joomla\CMS\Filesystem\Folder;
use Joomla\CMS\Filesystem\File;
jimport('joomla.client.helper');
jimport('joomla.filesystem.file');
jimport('joomla.filesystem.folder');
class PhocaDownloadCpControllerPhocaDownloadUpload extends PhocaDownloadCpController
{
function __construct() {
parent::__construct();
}
function createfolder() {
$app = Factory::getApplication();
// Check for request forgeries
Session::checkToken() or jexit( 'COM_PHOCADOWNLOAD_INVALID_TOKEN' );
// Set FTP credentials, if given
jimport('joomla.client.helper');
ClientHelper::setCredentialsFromRequest('ftp');
$paramsC = ComponentHelper::getParams('com_phocadownload');
$folder_permissions = $paramsC->get( 'folder_permissions', 0755 );
//$folder_permissions = octdec((int)$folder_permissions);
$folderNew = Factory::getApplication()->input->getCmd( 'foldername', '');
$folderCheck = Factory::getApplication()->input->get( 'foldername', null, 'string');
$parent = Factory::getApplication()->input->get( 'folderbase', '', 'path' );
$tab = Factory::getApplication()->input->get( 'tab', 0, 'string' );
$field = Factory::getApplication()->input->get( 'field');
$viewBack = Factory::getApplication()->input->get( 'viewback', '', 'phocadownloadmanager' );
$manager = Factory::getApplication()->input->get( 'manager', 'file', 'string' );
$link = '';
if ($manager != '') {
$group = PhocaDownloadSettings::getManagerGroup($manager);
$link = 'index.php?option=com_phocadownload&view='.(string)$viewBack.'&manager='.(string)$manager
.str_replace('&amp;', '&', $group['c']).'&folder='.$parent.'&tab='.(string)$tab.'&field='.$field;
$path = PhocaDownloadPath::getPathSet($manager);// we use viewback to get right path
} else {
$app->enqueueMessage( Text::_('COM_PHOCADOWNLOAD_ERROR_CONTROLLER_MANAGER_NOT_SET'));
$app->redirect('index.php?option=com_phocadownload');
exit;
}
Factory::getApplication()->input->set('folder', $parent);
if (($folderCheck !== null) && ($folderNew !== $folderCheck)) {
$app->enqueueMessage( Text::_('COM_PHOCADOWNLOAD_WARNING_DIRNAME'));
$app->redirect($link);
}
if (strlen($folderNew) > 0) {
$folder = Path::clean($path['orig_abs_ds'].$parent.'/'.$folderNew);
if (!Folder::exists($folder) && !File::exists($folder)) {
//JFolder::create($path, $folder_permissions );
switch((int)$folder_permissions) {
case 777:
Folder::create($folder, 0777 );
break;
case 705:
Folder::create($folder, 0705 );
break;
case 666:
Folder::create($folder, 0666 );
break;
case 644:
Folder::create($folder, 0644 );
break;
case 755:
Default:
Folder::create($folder, 0755 );
break;
}
if (isset($folder)) {
$data = "<html>\n<body bgcolor=\"#FFFFFF\">\n</body>\n</html>";
File::write($folder.'/'."index.html", $data);
} else {
$app->enqueueMessage(Text::_("COM_PHOCADOWNLOAD_ERROR_FOLDER_CREATING"), 'error');
$app->redirect($link);
}
$app->enqueueMessage(Text::_("COM_PHOCADOWNLOAD_SUCCESS_FOLDER_CREATING"), 'success');
$app->redirect($link);
} else {
$app->enqueueMessage(Text::_("COM_PHOCADOWNLOAD_ERROR_FOLDER_CREATING_EXISTS"), 'error');
$app->redirect($link);
}
//JFactory::getApplication()->input->set('folder', ($parent) ? $parent.'/'.$folder : $folder);
}
$app->redirect($link);
}
function multipleupload() {
$result = PhocaDownloadFileUpload::realMultipleUpload();
return true;
}
function upload() {
$result = PhocaDownloadFileUpload::realSingleUpload();
return true;
}
}

View File

@ -0,0 +1,31 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\Language\Text;
class PhocaDownloadCpControllerPhocaDownloadUploads extends PhocaDownloadCpController
{
function __construct() {
parent::__construct();
$this->registerTask( 'approveall', 'approveall');
}
function approveall() {
$model = $this->getModel('phocadownloadupload');
if(!$model->approveall()) {
$msg = Text::_( 'COM_PHOCADOWNLOAD_ERROR_APPROVE_ALL' );
} else {
$msg = Text::_( 'COM_PHOCADOWNLOAD_ALL_APPROVED' );
}
$this->setRedirect( 'index.php?option=com_phocadownload&view=phocadownloaduploads' , $msg);
}
}
?>

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@ -0,0 +1,65 @@
<?php defined('_JEXEC') or die;?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en_GB" xml:lang="en_GB">
<head>
<title>Phoca Download</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
body {
font-family: "Roboto", sans, Arial;
}
</style>
</head>
<body>
<h1>Phoca Download</h1>
<div style="float:right;margin:10px;"><img src="logo-phoca.png" alt="" /></div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div><a href="https://www.phoca.cz/project/phocadownload-joomla-download" target="_blank">Phoca Download Main Site</a></div>
<p>&nbsp;</p>
<h2>Documentation</h2>
<div><a href="https://www.phoca.cz/documentation/category/17-phoca-download-component" target="_blank">Documentation</a></div>
<ul>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/66-features" target="_blank">Features</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/730-phoca-download-concepts-and-glossary" target="_blank">Phoca Download Concepts and Glossary</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/232-installation" target="_blank">Installation</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/231-installation-problem-solving" target="_blank">Installation Problem Solving</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/109-settings" target="_blank">Settings</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/575-setting-folders" target="_blank">Setting folders</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/223-saving-files-outside-publichtml-folder" target="_blank">Saving files outside public_html folder</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/897-creating-menu-link" target="_blank">Creating Menu Link</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/377-customize-phoca-download-theme" target="_blank">Customize Phoca Download Theme</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/108-options-parameters" target="_blank">Options (Parameters)</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/679-options-parameters-since-joomla-3" target="_blank">Phoca Download Options (Parameters - since Joomla! 3)</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/86-setting-icon-next-to-file-name-or-image-above-file-name" target="_blank">Setting Icon next to File Name or Image above File Name</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/366-access-rights" target="_blank">Access Rights</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/731-unique-download-link" target="_blank">Unique Download Link (Security Token)</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/269-allowing-download-for-registered-users-only" target="_blank">Allowing download for registered users only</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/347-user-upload-uploading-files-in-frontend" target="_blank">User Upload - Uploading Files In Frontend</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/85-faq" target="_blank">FAQ</a></li>
</ul>
<p>&nbsp;</p>
<h2>Support</h2>
<ul>
<li><a href="https://www.phoca.cz/forum" target="_blank">Phoca Forum</a></li>
<li><a href="https://www.phoca.cz/forum/app.php/feed" target="_blank">Phoca Forum RSS</a></li>
</ul>
<p>&nbsp;</p>
<h2>News</h2>
<ul>
<li><a href="https://www.phoca.cz/news" target="_blank">Phoca News</a></li>
<li><a href="https://www.phoca.cz/news?format=feed&type=rss" target="_blank">Phoca News RSS</a></li>
<li><a href="https://www.phoca.cz/download/feed/111?format=feed&type=rss" target="_blank">Phoca Latest Releases RSS</a></li>
</ul>
<p>&nbsp;</p>
<h2>Demo</h2>
<ul>
<li><a href="https://www.phoca.cz/joomla3demo/" target="_blank">Joomla! 3 Demo</a></li>
<li><a href="https://www.phoca.cz/joomlademo/" target="_blank">Joomla! 2.5 Demo</a></li>
<li><a href="https://www.phoca.cz/demo/" target="_blank">Joomla! 1.5 Demo</a></li>
</ul>
<p>&nbsp;</p>
<p>&nbsp;</p>
<a href="javascript:void(0);" onclick="javascript:window.close();"><span class="small">Close window</span></a>
</body>
</html>

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@ -0,0 +1,65 @@
<?php defined('_JEXEC') or die;?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en_GB" xml:lang="en_GB">
<head>
<title>Phoca Download</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
body {
font-family: "Roboto", sans, Arial;
}
</style>
</head>
<body>
<h1>Phoca Download</h1>
<div style="float:right;margin:10px;"><img src="logo-phoca.png" alt="" /></div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div><a href="https://www.phoca.cz/project/phocadownload-joomla-download" target="_blank">Phoca Download Main Site</a></div>
<p>&nbsp;</p>
<h2>Documentation</h2>
<div><a href="https://www.phoca.cz/documentation/category/17-phoca-download-component" target="_blank">Documentation</a></div>
<ul>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/66-features" target="_blank">Features</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/730-phoca-download-concepts-and-glossary" target="_blank">Phoca Download Concepts and Glossary</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/232-installation" target="_blank">Installation</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/231-installation-problem-solving" target="_blank">Installation Problem Solving</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/109-settings" target="_blank">Settings</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/575-setting-folders" target="_blank">Setting folders</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/223-saving-files-outside-publichtml-folder" target="_blank">Saving files outside public_html folder</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/897-creating-menu-link" target="_blank">Creating Menu Link</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/377-customize-phoca-download-theme" target="_blank">Customize Phoca Download Theme</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/108-options-parameters" target="_blank">Options (Parameters)</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/679-options-parameters-since-joomla-3" target="_blank">Phoca Download Options (Parameters - since Joomla! 3)</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/86-setting-icon-next-to-file-name-or-image-above-file-name" target="_blank">Setting Icon next to File Name or Image above File Name</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/366-access-rights" target="_blank">Access Rights</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/731-unique-download-link" target="_blank">Unique Download Link (Security Token)</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/269-allowing-download-for-registered-users-only" target="_blank">Allowing download for registered users only</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/347-user-upload-uploading-files-in-frontend" target="_blank">User Upload - Uploading Files In Frontend</a></li>
<li><a href="https://www.phoca.cz/documents/17-phoca-download-component/85-faq" target="_blank">FAQ</a></li>
</ul>
<p>&nbsp;</p>
<h2>Support</h2>
<ul>
<li><a href="https://www.phoca.cz/forum" target="_blank">Phoca Forum</a></li>
<li><a href="https://www.phoca.cz/forum/app.php/feed" target="_blank">Phoca Forum RSS</a></li>
</ul>
<p>&nbsp;</p>
<h2>News</h2>
<ul>
<li><a href="https://www.phoca.cz/news" target="_blank">Phoca News</a></li>
<li><a href="https://www.phoca.cz/news?format=feed&type=rss" target="_blank">Phoca News RSS</a></li>
<li><a href="https://www.phoca.cz/download/feed/111?format=feed&type=rss" target="_blank">Phoca Latest Releases RSS</a></li>
</ul>
<p>&nbsp;</p>
<h2>Demo</h2>
<ul>
<li><a href="https://www.phoca.cz/joomla3demo/" target="_blank">Joomla! 3 Demo</a></li>
<li><a href="https://www.phoca.cz/joomlademo/" target="_blank">Joomla! 2.5 Demo</a></li>
<li><a href="https://www.phoca.cz/demo/" target="_blank">Joomla! 1.5 Demo</a></li>
</ul>
<p>&nbsp;</p>
<p>&nbsp;</p>
<a href="javascript:void(0);" onclick="javascript:window.close();"><span class="small">Close window</span></a>
</body>
</html>

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

View File

@ -0,0 +1,31 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadCatsHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,26 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadCpHelper
{
public static function getActions($c = 'phocadownload') {
$user = Factory::getUser();
$result = new CMSObject;
$assetName = 'com_'.$c;
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,32 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadDownloadsHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,31 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadFilesHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,54 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadLayoutsHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
public static function getTableId() {
$idString = '';
$db = Factory::getDBO();
$query = ' SELECT a.id'
.' FROM #__phocadownload_layout AS a';
$db->setQuery($query, 0,1);
/*if (!$db->query()) {
throw new Exception('Database Error - Getting Layout ID', 500);
return false;
}*/
$idO = $db->loadObject();
//First autoincrement line can be different
if (isset($idO->id) && $idO->id > 0) {
$idString = '&id='.(int)$idO->id;
}
return $idString;
}
}
?>

View File

@ -0,0 +1,31 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadLicsHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,32 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadLogsHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,38 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadManagerHelper
{
public static function getActions($categoryId = 0)
{
$user = Factory::getUser();
$result = new CMSObject;
if (empty($categoryId)) {
$assetName = 'com_phocadownload';
} else {
$assetName = 'com_phocadownload.phocadownloadraimg.'.(int) $categoryId;
}
$actions = array(
'core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete'
);
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,38 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadRaFileHelper
{
public static function getActions($categoryId = 0)
{
$user = Factory::getUser();
$result = new CMSObject;
if (empty($categoryId)) {
$assetName = 'com_phocadownload';
} else {
$assetName = 'com_phocadownload.phocadownloadraimg.'.(int) $categoryId;
}
$actions = array(
'core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete'
);
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,315 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined( '_JEXEC' ) or die( 'Restricted access' );
class PhocaDownloadRateHelper
{
function updateVoteStatisticsFile( $fileid ) {
$db = JFactory::getDBO();
// Get AVG and COUNT
$query = 'SELECT COUNT(vs.id) AS count, AVG(vs.rating) AS average'
.' FROM #__phocadownload_file_votes AS vs'
.' WHERE vs.fileid = '.(int) $fileid;
// .' AND vs.published = 1';
$db->setQuery($query, 0, 1);
$votesStatistics = $db->loadObject();
// if no count, set the average to 0
if($votesStatistics->count == 0) {
$votesStatistics->count = (int)0;
$votesStatistics->average = (float)0;
}
if (isset($votesStatistics->count) && isset($votesStatistics->average)) {
// Insert or update
$query = 'SELECT vs.id AS id'
.' FROM #__phocadownload_file_votes_statistics AS vs'
.' WHERE vs.fileid = '.(int) $fileid;
$db->setQuery($query, 0, 1);
$votesStatisticsId = $db->loadObject();
// Yes, there is id (UPDATE) x No, there isn't (INSERT)
if (!empty($votesStatisticsId->id)) {
$query = 'UPDATE #__phocadownload_file_votes_statistics'
.' SET count = ' .(int)$votesStatistics->count
.' , average = ' .(float)$votesStatistics->average
.' WHERE fileid = '.(int) $fileid;
$db->setQuery($query);
if (!$db->execute()) {
throw new Exception('Database Error Voting 1', 500);
return false;
}
} else {
$query = 'INSERT into #__phocadownload_file_votes_statistics'
.' (id, fileid, count, average)'
.' VALUES (null, '.(int)$fileid
.' , '.(int)$votesStatistics->count
.' , '.(float)$votesStatistics->average
.')';
$db->setQuery($query);
if (!$db->execute()) {
throw new Exception('Database Error Voting 2', 500);
return false;
}
}
} else {
return false;
}
return true;
}
function getVotesStatisticsFile($id) {
$db = JFactory::getDBO();
$query = 'SELECT vs.count AS count, vs.average AS average'
.' FROM #__phocadownload_file_votes_statistics AS vs'
.' WHERE vs.fileid = '.(int) $id;
$db->setQuery($query, 0, 1);
$votesStatistics = $db->loadObject();
return $votesStatistics;
}
function checkUserVoteFile($fileid, $userid) {
$db = JFactory::getDBO();
$query = 'SELECT v.id AS id'
.' FROM #__phocadownload_file_votes AS v'
.' WHERE v.fileid = '. (int)$fileid
.' AND v.userid = '. (int)$userid;
$db->setQuery($query, 0, 1);
$checkUserVote = $db->loadObject();
if ($checkUserVote) {
return true;
}
return false;
}
public function renderRateFile($id, $displayRating, $small = 1, $refresh = false) {
$user = JFactory::getUser();
$neededAccessLevels = PhocaDownloadAccess::getNeededAccessLevels();
$access = PhocaDownloadAccess::isAccess($user->getAuthorisedViewLevels(), $neededAccessLevels);
if ($small == 1) {
$smallO = '-small';
$ratio = 18;
} else {
$smallO = '';
$ratio = 22;
}
$o = '';
//.$rating['urlvote'].$amp.'controller=detail&task=rate&rating=1
//$amp = PhocaDownloadUtils::setQuestionmarkOrAmp($rating['urlvote']);
$href = 'javascript:void(0);';
if ((int)$displayRating != 1) {
return '';
} else {
$rating['alreadyratedfile'] = self::checkUserVoteFile( (int)$id, (int)$user->id );
$rating['notregisteredfile'] = true;
//$rating['usernamefile'] = '';
if ($access > 0) {
$rating['notregisteredfile'] = false;
$rating['usernamefile'] = $user->name;
}
$rating['votescountfile'] = 0;
$rating['votesaveragefile'] = 0;
$rating['voteswidthfile'] = 0;
$votesStatistics = self::getVotesStatisticsFile((int)$id);
if (!empty($votesStatistics->count)) {
$rating['votescountfile'] = $votesStatistics->count;
}
if (!empty($votesStatistics->average)) {
$rating['votesaveragefile'] = $votesStatistics->average;
if ($rating['votesaveragefile'] > 0) {
$rating['votesaveragefile'] = round(((float)$rating['votesaveragefile'] / 0.5)) * 0.5;
$rating['voteswidthfile'] = $ratio * $rating['votesaveragefile'];
} else {
$rating['votesaveragefile'] = (int)0;// not float displaying
}
}
// Leave message for already voted images
//$vote = JFactory::getApplication()->input->get('vote', 0, '', 'int');
$voteMsg = JText::_('COM_PHOCADOWNLOAD_RATING_ALREADY_RATED_FILE');
//if ($vote == 1) {
// $voteMsg = JText::_('COM_PHOCADOWNLOAD_ALREADY_RATED_FILE_THANKS');
//}
$rating['votestextimg'] = 'VOTE';
if ((int)$rating['votescountfile'] > 1) {
$rating['votestextimg'] = 'VOTES';
}
$o .= '<div style="float:left;"><strong>'
. JText::_('COM_PHOCADOWNLOAD_RATING'). '</strong>: ' . $rating['votesaveragefile'] .' / '
.$rating['votescountfile'] . ' ' . JText::_('COM_PHOCADOWNLOAD_'.$rating['votestextimg']). '&nbsp;&nbsp;</div>';
if ($rating['alreadyratedfile']) {
$o .= '<div style="float:left;"><ul class="star-rating'.$smallO.'">'
.'<li class="current-rating" style="width:'.$rating['voteswidthfile'].'px"></li>'
.'<li><span class="star1"></span></li>';
for ($i = 2;$i < 6;$i++) {
$o .= '<li><span class="stars'.$i.'"></span></li>';
}
$o .= '</ul></div>';
$or ='<div class="pd-result" id="pdresult'.(int)$id.'" style="float:left;margin-left:5px">'.JText::_('COM_PHOCADOWNLOAD_RATING_ALREADY_RATED_FILE').'</div>';
} else if ($rating['notregisteredfile']) {
$o .= '<div style="float:left;"><ul class="star-rating'.$smallO.'">'
.'<li class="current-rating" style="width:'.$rating['voteswidthfile'].'px"></li>'
.'<li><span class="star1"></span></li>';
for ($i = 2;$i < 6;$i++) {
$o .= '<li><span class="stars'.$i.'"></span></li>';
}
$o .= '</ul></div>';
$or ='<div class="pd-result" id="pdresult'.(int)$id.'" style="float:left;margin-left:5px">'.JText::_('COM_PHOCADOWNLOAD_ONLY_REGISTERED_LOGGED_RATE_FILE').'</div>';
} else {
$o .= '<div style="float:left;"><ul class="star-rating'.$smallO.'">'
.'<li class="current-rating" style="width:'.$rating['voteswidthfile'].'px"></li>'
.'<li><a href="'.$href.'" onclick="pdRating('.(int)$id.', 1)" title="1 '. JText::_('COM_PHOCADOWNLOAD_STAR_OUT_OF').' 5" class="star1">1</a></li>';
for ($i = 2;$i < 6;$i++) {
$o .= '<li><a href="'.$href.'" onclick="pdRating('.(int)$id.', '.$i.')" title="'.$i.' '. JText::_('COM_PHOCADOWNLOAD_STARS_OUT_OF').' 5" class="stars'.$i.'">'.$i.'</a></li>';
}
$o .= '</ul></div>';
$or ='<div class="pd-result" id="pdresult'.(int)$id.'" style="float:left;margin-left:5px"></div>';
}
}
if ($refresh == true) {
return $o;//we are in Ajax, return only content of pdvoting div
} else {
return '<div id="pdvoting'.(int)$id.'">'.$o.'</div>' .$or ;//not in ajax, return the contend in div
}
}
public function renderRateFileJS($small = 1) {
$document = JFactory::getDocument();
$url = 'index.php?option=com_phocadownload&view=ratingfilea&task=rate&format=json&'.JSession::getFormToken().'=1';
$urlRefresh = 'index.php?option=com_phocadownload&view=ratingfilea&task=refreshrate&small='.$small.'&format=json&'.JSession::getFormToken().'=1';
$imgLoadingUrl = JURI::base(). 'components/com_phocadownload/assets/images/icon-loading2.gif';
$imgLoadingHTML = '<img src="'.$imgLoadingUrl.'" alt="" />';
$js = '<script type="text/javascript">' . "\n" . '<!--' . "\n";
//$js .= 'window.addEvent("domready",function() {
$js .= '
function pdRating(id, vote) {
var result = "pdresult" + id;
var resultvoting = "pdvoting" + id;
var pdRequest = new Request.JSON({
url: "'.$url.'",
method: "post",
onRequest: function(){
$(result).set("html", "'.addslashes($imgLoadingHTML).'");
},
onComplete: function(jsonObj) {
try {
var r = jsonObj;
} catch(e) {
var r = false;
}
if (r) {
if (r.error == false) {
$(result).set("text", jsonObj.message);
// Refreshing Voting
var pdRequestRefresh = new Request.JSON({
url: "'.$urlRefresh.'",
method: "post",
onComplete: function(json2Obj) {
try {
var rr = json2Obj;
} catch(e) {
var rr = false;
}
if (rr) {
$(resultvoting).set("html", json2Obj.message);
} else {
$(resultvoting).set("text", "'.JText::_('COM_PHOCADOWNLOAD_ERROR_REQUESTING_RATING').'");
}
},
onFailure: function() {
$(resultvoting).set("text", "'.JText::_('COM_PHOCADOWNLOAD_ERROR_REQUESTING_RATING').'");
}
})
pdRequestRefresh.send({
data: {"ratingId": id, "ratingVote": vote, "format":"json"}
});
//End refreshing voting
} else {
$(result).set("html", r.error);
}
} else {
$(result).set("text", "'.JText::_('COM_PHOCADOWNLOAD_ERROR_REQUESTING_RATING').'");
}
},
onFailure: function() {
$(result).set("text", "'.JText::_('COM_PHOCADOWNLOAD_ERROR_REQUESTING_RATING').'");
}
})
pdRequest.send({
data: {"ratingId": id, "ratingVote": vote, "format":"json"},
});
};';
//$js .= '});';
$js .= "\n" . '//-->' . "\n" .'</script>';
$document->addCustomTag($js);
}
}
?>

View File

@ -0,0 +1,31 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadStatHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,31 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadStylesHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,31 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadTagsHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,31 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Object\CMSObject;
class PhocaDownloadUploadsHelper
{
public static function getActions($t, $id = 0) {
$user = Factory::getUser();
$result = new CMSObject;
if (empty($id)) {
$assetName = $t['o'];
} else {
$assetName = $t['o'].'.'.$t['tasks'].'.'.(int) $id;
}
$actions = array('core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete');
foreach ($actions as $action) {
$result->set($action, $user->authorise($action, $assetName));
}
return $result;
}
}
?>

View File

@ -0,0 +1,63 @@
<?php
/*
* @package Joomla 1.5
* @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
// Check to ensure this file is included in Joomla!
defined('_JEXEC') or die();
use Joomla\CMS\Factory;
jimport('joomla.application.component.model');
class PhocaUserStatHelper
{
function createUserStatEntry($downloadId) {
$db = Factory::getDBO();
$user = Factory::getUser();
$query = ' SELECT * FROM '.$db->quoteName('#__phocadownload_user_stat')
.' WHERE '. $db->quoteName('userid')
.' = '
.$db->Quote((int)$user->id)
.' AND '. $db->quoteName('fileid')
.' = '
.$db->Quote((int)$downloadId);
$db->setQuery($query);
$results = $db->loadObjectList();
$date = gmdate('Y-m-d H:i:s');
if ($results) {
// Update count
$query = 'UPDATE '.$db->quoteName('#__phocadownload_user_stat')
.' SET count = (count + 1),'
.' date = '.$db->Quote($date)
.' WHERE userid = '.$db->Quote((int)$user->id)
.' AND fileid = '.$db->Quote((int)$downloadId);
$db->setQuery($query);
$db->execute();
} else {
$query = 'INSERT INTO '.$db->quoteName('#__phocadownload_user_stat')
.' ('.$db->quoteName('count').','
.' '.$db->quoteName('userid').','
.' '.$db->quoteName('fileid').','
.' '.$db->quoteName('date').')'
.' VALUES ('.$db->Quote(1).','
.' '.$db->Quote((int)$user->id).','
.' '.$db->Quote((int)$downloadId).','
.' '.$db->Quote($date).')';
$db->setQuery($query);
$db->execute();
}
return true;
}
}
?>

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

View File

@ -0,0 +1 @@
<html><body style="background-color: #000;"></body></html>

View File

@ -0,0 +1,140 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport( 'joomla.filesystem.folder' );
class com_phocadownloadInstallerScript
{
function install($parent) {
//echo '<p>' . JText::_('COM_PHOCAGALLLERY_INSTALL_TEXT') . '</p>';
$folder[0][0] = 'phocadownload' ;
$folder[0][1] = JPATH_ROOT . '/' . $folder[0][0];
$folder[1][0] = 'images/phocadownload' ;
$folder[1][1] = JPATH_ROOT . '/' . $folder[1][0];
$folder[2][0] = 'phocadownload/userupload';
$folder[2][1] = JPATH_ROOT . '/' . $folder[2][0];
$folder[3][0] = 'phocadownloadpap';
$folder[3][1] = JPATH_ROOT . '/' . $folder[3][0];
$folder[4][0] = 'phocadownloadpap/userupload';
$folder[4][1] = JPATH_ROOT . '/' . $folder[4][0];
$message = '';
$error = array();
foreach ($folder as $key => $value)
{
if (!JFolder::exists( $value[1]))
{
if (JFolder::create( $value[1], 0755 ))
{
$data = "<html>\n<body bgcolor=\"#FFFFFF\">\n</body>\n</html>";
JFile::write($value[1].'/'."index.html", $data);
$message .= '<div><b><span style="color:#009933">Folder</span> ' . $value[0]
.' <span style="color:#009933">created!</span></b></div>';
$error[] = 0;
}
else
{
$message .= '<div><b><span style="color:#CC0033">Folder</span> ' . $value[0]
.' <span style="color:#CC0033">creation failed!</span></b> Please create it manually.</div>';
$error[] = 1;
}
}
else//Folder exist
{
$message .= '<div><b><span style="color:#009933">Folder</span> ' . $value[0]
.' <span style="color:#009933">exists!</span></b></div>';
$error[] = 0;
}
}
JFactory::getApplication()->enqueueMessage($message, 'message');
//$app = JFactory::getApplication();
//$app->redirect(JRoute::_('index.php?option=com_phocadownload'), $message);
$parent->getParent()->setRedirectURL('index.php?option=com_phocadownload');
}
function uninstall($parent) {
//echo '<p>' . JText::_('COM_PHOCAGALLLERY_UNINSTALL_TEXT') . '</p>';
}
function update($parent) {
//echo '<p>' . JText::sprintf('COM_PHOCADOWNLOAD_UPDATE_TEXT', $parent->get('manifest')->version) . '</p>';
$folder[0][0] = 'phocadownload' ;
$folder[0][1] = JPATH_ROOT . '/' . $folder[0][0];
$folder[1][0] = 'images/phocadownload' ;
$folder[1][1] = JPATH_ROOT . '/' . $folder[1][0];
$folder[2][0] = 'phocadownload/userupload';
$folder[2][1] = JPATH_ROOT . '/' . $folder[2][0];
$folder[3][0] = 'phocadownloadpap';
$folder[3][1] = JPATH_ROOT . '/' . $folder[3][0];
$folder[4][0] = 'phocadownloadpap/userupload';
$folder[4][1] = JPATH_ROOT . '/' . $folder[4][0];
$message = '';
$error = array();
foreach ($folder as $key => $value)
{
if (!JFolder::exists( $value[1]))
{
if (JFolder::create( $value[1], 0755 ))
{
$data = "<html>\n<body bgcolor=\"#FFFFFF\">\n</body>\n</html>";
JFile::write($value[1].'/'."index.html", $data);
$message .= '<div><b><span style="color:#009933">Folder</span> ' . $value[0]
.' <span style="color:#009933">created!</span></b></div>';
$error[] = 0;
}
else
{
$message .= '<div><b><span style="color:#CC0033">Folder</span> ' . $value[0]
.' <span style="color:#CC0033">creation failed!</span></b> Please create it manually.</div>';
$error[] = 1;
}
}
else//Folder exist
{
$message .= '<div><b><span style="color:#009933">Folder</span> ' . $value[0]
.' <span style="color:#009933">exists!</span></b></div>';
$error[] = 0;
}
}
$msg = JText::_('COM_PHOCADOWNLOAD_UPDATE_TEXT');
$msg .= ' (' . JText::_('COM_PHOCADOWNLOAD_VERSION'). ': ' . $parent->get('manifest')->version . ')';
$msg .= '<br />'. $message;
//$parent->getParent()->setRedirectURL('index.php?option=com_phocadownload');
$app = JFactory::getApplication();
$app->enqueueMessage($msg);
$app->redirect(JRoute::_('index.php?option=com_phocadownload'));
}
function preflight($type, $parent) {
//echo '<p>' . JText::_('COM_PHOCADOWNLOAD_PREFLIGHT_' . $type . '_TEXT') . '</p>';
}
function postflight($type, $parent) {
//echo '<p>' . JText::_('COM_PHOCADOWNLOAD_POSTFLIGHT_' . $type . '_TEXT') . '</p>';
}
}

View File

@ -0,0 +1 @@
<html><body style="background-color: #000;"></body></html>

View File

@ -0,0 +1 @@
<html><body style="background-color: #000;"></body></html>

View File

@ -0,0 +1,226 @@
-- -------------------------------------------------------------------- --
-- Phoca Download manual installation --
-- -------------------------------------------------------------------- --
-- See documentation on https://www.phoca.cz/ --
-- --
-- Change all prefixes #__ to prefix which is set in your Joomla! site --
-- (e.g. from #__phocadownload to jos_phocadownload) --
-- Run this SQL queries in your database tool, e.g. in phpMyAdmin --
-- If you have questions, just ask in Phoca Forum --
-- https://www.phoca.cz/forum/ --
-- -------------------------------------------------------------------- --
CREATE TABLE IF NOT EXISTS `#__phocadownload_categories` (
`id` int(11) NOT NULL auto_increment,
`parent_id` int(11) NOT NULL default 0,
`section` int(11) NOT NULL default 0,
`title` varchar(255) NOT NULL default '',
`name` varchar(255) NOT NULL default '',
`alias` varchar(255) NOT NULL default '',
`project_name` varchar(255) NOT NULL default '',
`image` varchar(255) NOT NULL default '',
`image_position` varchar(30) NOT NULL default '',
`description` text,
`published` tinyint(1) NOT NULL default '0',
`checked_out` int(11) unsigned NOT NULL default '0',
`checked_out_time` datetime,
`editor` varchar(50) default NULL,
`ordering` int(11) NOT NULL default '0',
`access` int(11) unsigned NOT NULL default '0',
`uploaduserid` text,
`accessuserid` text,
`deleteuserid` text,
`date` datetime NOT NULL,
`count` int(11) NOT NULL default '0',
`hits` int(11) NOT NULL default '0',
`params` text,
`metakey` text,
`metadesc` text,
`metadata` text,
`language` char(7) NOT NULL default '',
PRIMARY KEY (`id`),
KEY `cat_idx` (`section`,`published`,`access`),
KEY `idx_access` (`access`),
KEY `idx_checkout` (`checked_out`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload` (
`id` int(11) unsigned NOT NULL auto_increment,
`catid` int(11) NOT NULL default '0',
`sectionid` int(11) NOT NULL default '0',
`sid` int(11) NOT NULL default '0',
`owner_id` int(11) NOT NULL default 0,
`title` varchar(250) NOT NULL default '',
`alias` varchar(255) NOT NULL default '',
`project_name` varchar(255) NOT NULL default '',
`filename` varchar(250) NOT NULL default '',
`filename_play` varchar(250) NOT NULL default '',
`filename_preview` varchar(250) NOT NULL default '',
`filesize` int(11) NOT NULL default 0,
`author` varchar(255) NOT NULL default '',
`author_email` varchar(255) NOT NULL default '',
`author_url` varchar(255) NOT NULL default '',
`license` varchar(255) NOT NULL default '',
`license_url` varchar(255) NOT NULL default '',
`image_filename` varchar(255) NOT NULL default '',
`image_filename_spec1` varchar(255) NOT NULL default '',
`image_filename_spec2` varchar(255) NOT NULL default '',
`image_download` varchar(255) NOT NULL default '',
`video_filename` varchar(255) NOT NULL default '',
`link_external` varchar(255) NOT NULL default '',
`mirror1link` varchar(255) NOT NULL default '',
`mirror1title` varchar(255) NOT NULL default '',
`mirror1target` varchar(10) NOT NULL default '',
`mirror2link` varchar(255) NOT NULL default '',
`mirror2title` varchar(255) NOT NULL default '',
`mirror2target` varchar(10) NOT NULL default '',
`description` text,
`features` text,
`changelog` text,
`notes` text,
`userid` int(11) NOT NULL default '0',
`version` varchar(255) NOT NULL default '',
`directlink` tinyint(1) NOT NULL default '0',
`date` datetime NOT NULL,
`publish_up` datetime NOT NULL,
`publish_down` datetime NOT NULL,
`hits` int(11) NOT NULL default '0',
`textonly` tinyint(1) NOT NULL default '0',
`published` tinyint(1) NOT NULL default '0',
`approved` tinyint(1) NOT NULL default '0',
`checked_out` int(11) NOT NULL default '0',
`checked_out_time` datetime,
`ordering` int(11) NOT NULL default '0',
`access` int(11) unsigned NOT NULL default '0',
`confirm_license` int(11) NOT NULL default '0',
`unaccessible_file` int(11) NOT NULL default '0',
`token` char(64) default NULL,
`tokenhits` int(11) NOT NULL default 0,
`tags_string` varchar(255) NOT NULL default '',
`params` text,
`metakey` text,
`metadesc` text,
`metadata` text,
`language` char(7) NOT NULL default '',
PRIMARY KEY (`id`),
KEY `catid` (`catid`,`published`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload_user_stat` (
`id` int(11) NOT NULL auto_increment,
`fileid` int(11) NOT NULL default '0',
`userid` int(11) NOT NULL default '0',
`count` int(11) NOT NULL default '0',
`date` datetime NOT NULL,
`published` tinyint(1) NOT NULL default '0',
`ordering` int(11) NOT NULL default '0',
`language` char(7) NOT NULL default '',
PRIMARY KEY (`id`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload_licenses` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(255) NOT NULL default '',
`alias` varchar(255) NOT NULL default '',
`description` text,
`checked_out` int(11) unsigned NOT NULL default '0',
`checked_out_time` datetime,
`published` tinyint(1) NOT NULL default '0',
`ordering` int(11) NOT NULL default '0',
`language` char(7) NOT NULL default '',
PRIMARY KEY (`id`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload_file_votes` (
`id` int(11) NOT NULL auto_increment,
`fileid` int(11) NOT NULL default 0,
`userid` int(11) NOT NULL default 0,
`date` datetime NOT NULL,
`rating` tinyint(1) NOT NULL default '0',
`published` tinyint(1) NOT NULL default '0',
`checked_out` int(11) unsigned NOT NULL default '0',
`checked_out_time` datetime,
`ordering` int(11) NOT NULL default '0',
`params` text,
`language` char(7) NOT NULL default '',
PRIMARY KEY (`id`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload_file_votes_statistics` (
`id` int(11) NOT NULL auto_increment,
`fileid` int(11) NOT NULL default 0,
`count` int(11) NOT NULL default '0',
`average` float(8,6) NOT NULL default '0',
`language` char(7) NOT NULL default '',
PRIMARY KEY (`id`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload_tags` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(255) NOT NULL default '',
`alias` varchar(255) NOT NULL default '',
`link_ext` varchar(255) NOT NULL default '',
`link_cat` int(11) unsigned NOT NULL default '0',
`description` text,
`published` tinyint(1) NOT NULL default '0',
`checked_out` int(11) unsigned NOT NULL default '0',
`checked_out_time` datetime,
`ordering` int(11) NOT NULL default '0',
`params` text,
`language` char(7) NOT NULL default '',
PRIMARY KEY (`id`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload_tags_ref` (
`id` SERIAL,
`fileid` int(11) NOT NULL default 0,
`tagid` int(11) NOT NULL default 0,
PRIMARY KEY (`id`),
UNIQUE KEY `i_fileid` (`fileid`,`tagid`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload_layout` (
`id` int(11) NOT NULL auto_increment,
`categories` text,
`category` text,
`file` text,
`checked_out` int(11) unsigned NOT NULL default '0',
`checked_out_time` datetime,
`params` text,
PRIMARY KEY (`id`)
) default CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `#__phocadownload_styles` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL DEFAULT '',
`alias` varchar(255) NOT NULL DEFAULT '',
`filename` varchar(255) NOT NULL DEFAULT '',
`menulink` text,
`type` tinyint(1) NOT NULL DEFAULT '0',
`published` tinyint(1) NOT NULL DEFAULT '0',
`checked_out` int(11) unsigned NOT NULL DEFAULT '0',
`checked_out_time` datetime,
`ordering` int(11) NOT NULL DEFAULT '0',
`params` text,
`language` char(7) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8 ;
INSERT INTO `#__phocadownload_styles` (`id`, `title`, `alias`, `filename`, `menulink`, `type`, `published`, `checked_out`, `checked_out_time`, `ordering`, `params`, `language`) VALUES
(1, 'Phocadownload', 'phocadownload', 'phocadownload.css', NULL, 1, 1, 0, '0000-00-00 00:00:00', 1, NULL, '*'),
(2, 'Rating', 'rating', 'rating.css', NULL, 1, 1, 0, '0000-00-00 00:00:00', 2, NULL, '*'),
(5, 'Default', 'default', 'default.css', NULL, 2, 1, 0, '0000-00-00 00:00:00', 1, NULL, '*');
CREATE TABLE IF NOT EXISTS `#__phocadownload_logging` (
`id` int(11) unsigned NOT NULL auto_increment,
`fileid` int(11) NOT NULL default '0',
`catid` int(11) NOT NULL default '0',
`userid` int(11) NOT NULL default '0',
`ip` varchar(50) NOT NULL default '',
`page` varchar(255) NOT NULL,
`date` datetime NOT NULL,
`type` tinyint(1) NOT NULL DEFAULT '0',
`params` text,
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8 ;

View File

@ -0,0 +1,10 @@
DROP TABLE IF EXISTS `#__phocadownload`;
DROP TABLE IF EXISTS `#__phocadownload_categories`;
DROP TABLE IF EXISTS `#__phocadownload_user_stat`;
DROP TABLE IF EXISTS `#__phocadownload_licenses`;
DROP TABLE IF EXISTS `#__phocadownload_file_votes`;
DROP TABLE IF EXISTS `#__phocadownload_file_votes_statistics`;
DROP TABLE IF EXISTS `#__phocadownload_tags`;
DROP TABLE IF EXISTS `#__phocadownload_tags_ref`;
DROP TABLE IF EXISTS `#__phocadownload_layout`;
DROP TABLE IF EXISTS `#__phocadownload_styles`;

View File

@ -0,0 +1,583 @@
<?php
/**
* @package Phoca Cart
* @author Jan Pavelka - https://www.phoca.cz
* @copyright Copyright (C) Jan Pavelka https://www.phoca.cz
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 and later
* @cms Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*/
namespace Phoca\Render;
defined( '_JEXEC' ) or die( 'Restricted access' );
use Joomla\CMS\HTML\Helpers\Sidebar;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Router\Route;
use Joomla\CMS\Version;
use Joomla\CMS\Layout\FileLayout;
class Adminview
{
public $view = '';
public $viewtype = 2;
public $option = '';
public $optionLang = '';
public $compatible = false;
public $sidebar = true;
protected $document = false;
public function __construct(){
$app = Factory::getApplication();
$version = new Version();
$this->compatible = $version->isCompatible('4.0.0-alpha');
$this->view = $app->input->get('view');
$this->option = $app->input->get('option');
$this->optionLang = strtoupper($this->option);
$this->sidebar = Factory::getApplication()->getTemplate(true)->params->get('menu', 1) ? true : false;
$this->document = Factory::getDocument();
$wa = $app->getDocument()->getWebAssetManager();
HTMLHelper::_('behavior.formvalidator');
HTMLHelper::_('behavior.keepalive');
HTMLHelper::_('jquery.framework', false);
$wa->registerAndUseStyle($this->option . '.font', 'media/' . $this->option . '/duotone/joomla-fonts.css', array('version' => 'auto'));
$wa->registerAndUseStyle($this->option . '.main', 'media/' .$this->option . '/css/administrator/'.str_replace('com_', '', $this->option).'.css', array('version' => 'auto'));
$wa->registerAndUseStyle($this->option . '.version', 'media/' .$this->option . '/css/administrator/4.css', array('version' => 'auto'));
$wa->registerAndUseStyle($this->option . '.theme', 'media/' .$this->option . '/css/administrator/theme-dark.css', array('version' => 'auto'), [], ['template.active']);
}
public function startHeader() {
$layoutSVG = new FileLayout('svg_definitions', null, array('component' => $this->option));
return $layoutSVG->render(array());
}
public function startCp() {
// CSS based on user groups
$user = Factory::getUser();
$groupClass = '';
if (!empty($user->groups)) {
foreach ($user->groups as $k => $v) {
$groupClass .= ' group-'. $v;
}
}
$o = array();
if ($this->compatible) {
if ($this->sidebar) {
$o[] = '<div class="ph-group-class '.$groupClass.'">';
} else {
$o[] = '<div class="row '.$groupClass.'">';
$o[] = '<div id="j-main-container" class="col-md-2">'. Sidebar::render().'</div>';
$o[] = '<div id="j-main-container" class="col-md-10">';
}
} else {
$o[] = '<div id="j-sidebar-container" class="span2">' . Sidebar::render() . '</div>'."\n";
$o[] = '<div id="j-main-container" class="span10">'."\n";
}
return implode("\n", $o);
}
public function endCp() {
$o = array();
if ($this->compatible) {
if ($this->sidebar) {
$o[] = '</div>';// end groupClass
} else {
$o[] = '</div></div>';
}
} else {
$o[] = '</div>';
}
return implode("\n", $o);
}
public function startForm($option, $view, $itemId, $id = 'adminForm', $name = 'adminForm', $class = '', $layout = 'edit', $tmpl = '') {
if ($layout != '') {
$layout = '&layout='.$layout;
}
if ($view != '') {
$viewP = '&view='.$view;
}
if ($tmpl != '') {
$tmpl = '&tmpl='.$tmpl;
}
$containerClass = 'container';
if ($this->compatible) {
$containerClass = '';
}
// CSS based on user groups
$user = Factory::getUser();
$groupClass = '';
if (!empty($user->groups)) {
foreach ($user->groups as $k => $v) {
$groupClass .= ' group-'. $v;
}
}
return '<div id="'.$view.'" class="'.$groupClass.'"><form action="'.Route::_('index.php?option='.$option . $viewP . $layout . '&id='.(int) $itemId . $tmpl).'" method="post" name="'.$name.'" id="'.$id.'" class="form-validate '.$class.'" role="form">'."\n"
.'<div id="phAdminEdit" class="'.$containerClass.'"><div class="row">'."\n";
}
public function endForm() {
return '</div></div>'."\n".'</form>'."\n".'</div>'. "\n" . $this->ajaxTopHtml();
}
public function startFormRoute($view, $route, $id = 'adminForm', $name = 'adminForm') {
// CSS based on user groups
$user = Factory::getUser();
$groupClass = '';
if (!empty($user->groups)) {
foreach ($user->groups as $k => $v) {
$groupClass .= ' group-'. $v;
}
}
return '<div id="'.$view.'" class="'.$groupClass.'"><form action="'.Route::_($route).'" method="post" name="'.$name.'" id="'.$id.'" class="form-validate">'."\n"
.'<div id="phAdminEdit" class="row">'."\n";
}
public function ajaxTopHtml($text = '') {
$o = '<div id="ph-ajaxtop">';
if ($text != '') {
$o .= '<div id="ph-ajaxtop-message"><div class="ph-loader-top"></div> '. strip_tags(addslashes($text)) . '</div>';
}
$o .= '</div>';
return $o;
}
public function formInputs($task = '') {
$o = '';
$o .= '<input type="hidden" name="task" value="" />'. "\n";
if ($task != '') {
$o .= '<input type="hidden" name="taskgroup" value="'.strip_tags($task).'" />'. "\n";
}
$o .= HTMLHelper::_('form.token'). "\n";
return $o;
}
public function groupHeader($form, $formArray , $image = '', $formArraySuffix = array(), $realSuffix = 0) {
$md = 6;
$columns = 12;
$count = count($formArray);
if ($image != '') {
$mdImage = 2;
$columns = 10;
}
$md = round(($columns/(int)$count), 0);
$md = $md == 0 ? 1 : $md;
$o = '';
$o .= '<div class="row title-alias form-vertical mb-3">';
if (!empty($formArray)) {
foreach ($formArray as $k => $v) {
// Suffix below input
if (isset($formArraySuffix[$k]) && $formArraySuffix[$k] != '' && $formArraySuffix[$k] != '<small>()</small>') {
if ($realSuffix) {
$value = $form->getInput($v) .' '. $formArraySuffix[$k];
} else {
$value = $formArraySuffix[$k];
}
} else {
$value = $form->getInput($v);
}
$o .= '<div class="col-12 col-md-'.(int)$md.'">';
$o .= '<div class="control-group ph-par-'.$v.'">'."\n"
. '<div class="control-label">'. $form->getLabel($v) . '</div>'."\n"
. '<div class="clearfix"></div>'. "\n"
. '<div>' . $value. '</div>'."\n"
. '<div class="clearfix"></div>' . "\n"
. '</div>'. "\n";
$o .= '</div>';
}
}
if ($image != '') {
$o .= '<div class="col-12 col-md-'.(int)$mdImage.'">';
$o .= '<div class="ph-admin-additional-box-img-box">'.$image.'</div>';
$o .= '</div>';
}
$o .= '</div>';
return $o;
}
public function group($form, $formArray, $clear = 0) {
$o = '';
if (!empty($formArray)) {
if ($clear == 1) {
foreach ($formArray as $value) {
$description = Text::_($form->getFieldAttribute($value, 'description'));
$descriptionOutput = '';
if ($description != '') {
$descriptionOutput = '<div role="tooltip">'.$description.'</div>';
}
$o .=
'<div class="control-group-clear ph-par-'.$value.'">'."\n"
.'<div class="control-label">'. $form->getLabel($value) . $descriptionOutput . '</div>'."\n"
//. '<div class="clearfix"></div>'. "\n"
. '<div>' . $form->getInput($value). '</div>'."\n"
. '<div class="clearfix"></div>' . "\n"
. '</div>'. "\n";
}
} else {
foreach ($formArray as $value) {
$description = Text::_($form->getFieldAttribute($value, 'description'));
$descriptionOutput = '';
if ($description != '') {
$descriptionOutput = '<div role="tooltip">'.$description.'</div>';
}
//$o .= $form->renderField($value) ;
$o .= '<div class="control-group ph-par-'.$value.'">'."\n"
. '<div class="control-label">'. $form->getLabel($value) . $descriptionOutput . '</div>'
. '<div class="controls">' . $form->getInput($value). '</div>'."\n"
. '</div>' . "\n";
}
}
}
return $o;
}
public function item($form, $item, $suffix = '', $realSuffix = 0) {
$value = $o = '';
if ($suffix != '' && $suffix != '<small>()</small>') {
if ($realSuffix) {
$value = $form->getInput($item) .' '. $suffix;
} else {
$value = $suffix;
}
} else {
$value = $form->getInput($item);
}
$description = Text::_($form->getFieldAttribute($item, 'description'));
$descriptionOutput = '';
if ($description != '') {
$descriptionOutput = '<div role="tooltip">'.$description.'</div>';
}
$o .= '<div class="control-group ph-par-'.$item.'">'."\n";
$o .= '<div class="control-label">'. $form->getLabel($item) . $descriptionOutput . '</div>'."\n"
. '<div class="controls">' . $value.'</div>'."\n"
. '</div>' . "\n";
return $o;
}
public function itemLabel($item, $label, $description = '', $name = '') {
$description = Text::_($description);
$descriptionOutput = '';
if ($description != '') {
$descriptionOutput = '<div role="tooltip">'.$description.'</div>';
}
$o = '';
$o .= '<div class="control-group ph-par-'.$name.'">'."\n";
$o .= '<div class="control-label"><label>'. $label .'</label>'. $descriptionOutput . '</div>'."\n"
. '<div class="controls">' . $item.'</div>'."\n"
. '</div>' . "\n";
return $o;
}
public function itemText($item, $label, $class = '', $name = '') {
$o = '';
$o .= '<div class="control-group ph-par-ph-text-'.$name.' ph-control-group-text">'."\n";
$o .= '<div class="control-label"><label>'. $label . '</label></div>'."\n"
. '<div class="controls '.$class.'">' . $item.'</div>'."\n"
. '</div>' . "\n";
return $o;
}
public static function getCalendarDate($dateCustom) {
$config = Factory::getConfig();
$user = Factory::getUser();
$filter = 'USER_UTC';//'SERVER_UTC'
switch (strtoupper($filter)){
case 'SERVER_UTC':
if ($dateCustom && $dateCustom != Factory::getDbo()->getNullDate()) {
$date = Factory::getDate($dateCustom, 'UTC');
$date->setTimezone(new \DateTimeZone($config->get('offset')));
$dateCustom = $date->format('Y-m-d H:i:s', true, false);
}
break;
case 'USER_UTC':
if ($dateCustom && $dateCustom != Factory::getDbo()->getNullDate()) {
$date = Factory::getDate($dateCustom, 'UTC');
$date->setTimezone(new \DateTimeZone($user->getParam('timezone', $config->get('offset'))));
$dateCustom = $date->format('Y-m-d H:i:s', true, false);
}
break;
}
return $dateCustom;
}
/* CP */
public function quickIconButton( $link, $text = '', $icon = '', $color = '', $item = '') {
$o = '<div class="ph-cp-item '.$item.'-item-box">';
$o .= ' <div class="ph-cp-item-icon">';
$o .= ' <a class="ph-cp-item-icon-link" href="'.$link.'"><span style="background-color: '.$color.'20;"><i style="color: '.$color.';" class="phi '.$icon.' ph-cp-item-icon-link-large"></i></span></a>';
$o .= ' </div>';
$o .= ' <div class="ph-cp-item-title"><a class="ph-cp-item-title-link" href="'.$link.'"><span>'.$text.'</span></a></div>';
$o .= '</div>';
return $o;
}
public function getLinks($internalLinksOnly = 0) {
$links = array();
switch ($this->option) {
case 'com_phocacart':
$links[] = array('Phoca Cart site', 'https://www.phoca.cz/phocacart');
$links[] = array('Phoca Cart documentation site', 'https://www.phoca.cz/documentation/category/116-phoca-cart-component');
$links[] = array('Phoca Cart download site', 'https://www.phoca.cz/download/category/100-phoca-cart-component');
$links[] = array('Phoca Cart extensions', 'https://www.phoca.cz/phocacart-extensions');
break;
case 'com_phocamenu':
$links[] = array('Phoca Restaurant Menu site', 'https://www.phoca.cz/phocamenu');
$links[] = array('Phoca Restaurant Menu documentation site', 'https://www.phoca.cz/documentation/category/52-phoca-restaurant-menu-component');
$links[] = array('Phoca Restaurant Menu download site', 'https://www.phoca.cz/download/category/36-phoca-restaurant-menu-component');
break;
case 'com_phocagallery':
$links[] = array('Phoca Gallery site', 'https://www.phoca.cz/phocagallery');
$links[] = array('Phoca Gallery documentation site', 'https://www.phoca.cz/documentation/category/2-phoca-gallery-component');
$links[] = array('Phoca Gallery download site', 'https://www.phoca.cz/download/category/66-phoca-gallery');
break;
}
$links[] = array('Phoca News', 'https://www.phoca.cz/news');
$links[] = array('Phoca Forum', 'https://www.phoca.cz/forum');
if ($internalLinksOnly == 1) {
return $links;
}
$components = array();
$components[] = array('Phoca Gallery','phocagallery', 'pg');
$components[] = array('Phoca Guestbook','phocaguestbook', 'pgb');
$components[] = array('Phoca Download','phocadownload', 'pd');
$components[] = array('Phoca Documentation','phocadocumentation', 'pdc');
$components[] = array('Phoca Favicon','phocafavicon', 'pfv');
$components[] = array('Phoca SEF','phocasef', 'psef');
$components[] = array('Phoca PDF','phocapdf', 'ppdf');
$components[] = array('Phoca Restaurant Menu','phocamenu', 'prm');
$components[] = array('Phoca Maps','phocamaps', 'pm');
$components[] = array('Phoca Font','phocafont', 'pf');
$components[] = array('Phoca Email','phocaemail', 'pe');
$components[] = array('Phoca Install','phocainstall', 'pi');
$components[] = array('Phoca Template','phocatemplate', 'pt');
$components[] = array('Phoca Panorama','phocapanorama', 'pp');
$components[] = array('Phoca Commander','phocacommander', 'pcm');
$components[] = array('Phoca Photo','phocaphoto', 'ph');
$components[] = array('Phoca Cart','phocacart', 'pc');
$banners = array();
$banners[] = array('Phoca Restaurant Menu','phocamenu', 'prm');
$banners[] = array('Phoca Cart','phocacart', 'pc');
$o = '';
$o .= '<p>&nbsp;</p>';
$o .= '<h4 style="margin-bottom:5px;">'.Text::_($this->optionLang.'_USEFUL_LINKS'). '</h4>';
$o .= '<ul>';
foreach ($links as $k => $v) {
$o .= '<li><a style="text-decoration:underline" href="'.$v[1].'" target="_blank">'.$v[0].'</a></li>';
}
$o .= '</ul>';
$o .= '<div>';
$o .= '<p>&nbsp;</p>';
$o .= '<h4 style="margin-bottom:5px;">'.Text::_($this->optionLang.'_USEFUL_TIPS'). '</h4>';
$m = mt_rand(0, 10);
if ((int)$m > 0) {
$o .= '<div>';
$num = range(0,(count($components) - 1 ));
shuffle($num);
for ($i = 0; $i<3; $i++) {
$numO = $num[$i];
$o .= '<div style="float:left;width:33%;margin:0 auto;">';
$o .= '<div><a style="text-decoration:underline;" href="https://www.phoca.cz/'.$components[$numO][1].'" target="_blank">'.HTMLHelper::_('image', 'media/'.$this->option.'/images/administrator/icon-box-'.$components[$numO][2].'.png', ''). '</a></div>';
$o .= '<div style="margin-top:-10px;"><small><a style="text-decoration:underline;" href="https://www.phoca.cz/'.$components[$numO][1].'" target="_blank">'.$components[$numO][0].'</a></small></div>';
$o .= '</div>';
}
$o .= '<div style="clear:both"></div>';
$o .= '</div>';
} else {
$num = range(0,(count($banners) - 1 ));
shuffle($num);
$numO = $num[0];
$o .= '<div><a href="https://www.phoca.cz/'.$banners[$numO][1].'" target="_blank">'.HTMLHelper::_('image', 'media/'.$this->option.'/images/administrator/b-'.$banners[$numO][2].'.png', ''). '</a></div>';
}
$o .= '<p>&nbsp;</p>';
$o .= '<h4 style="margin-bottom:5px;">'.Text::_($this->optionLang.'_PLEASE_READ'). '</h4>';
$o .= '<div><a style="text-decoration:underline" href="https://www.phoca.cz/phoca-needs-your-help/" target="_blank">'.Text::_($this->optionLang.'_PHOCA_NEEDS_YOUR_HELP'). '</a></div>';
$o .= '</div>';
return $o;
}
// TABS
public function navigation($tabs, $activeTab = '') {
if ($this->compatible) {
return '';
}
$o = '<ul class="nav nav-tabs">';
$i = 0;
foreach($tabs as $k => $v) {
$cA = 0;
if ($activeTab != '') {
if ($activeTab == $k) {
$cA = 'class="active"';
}
} else {
if ($i == 0) {
$cA = 'class="active"';
}
}
$o .= '<li '.$cA.'><a href="#'.$k.'" data-bs-toggle="tab">'. $v.'</a></li>'."\n";
$i++;
}
$o .= '</ul>';
return $o;
}
public function startTabs($active = 'general') {
if ($this->compatible) {
return HTMLHelper::_('uitab.startTabSet', 'myTab', array('active' => $active));
} else {
return '<div id="phAdminEditTabs" class="tab-content">'. "\n";
}
}
public function endTabs() {
if ($this->compatible) {
return HTMLHelper::_('uitab.endTabSet');
} else {
return '</div>';
}
}
public function startTab($id, $name, $active = '') {
if ($this->compatible) {
return HTMLHelper::_('uitab.addTab', 'myTab', $id, $name);
} else {
return '<div class="tab-pane '.$active.'" id="'.$id.'">'."\n";
}
}
public function endTab() {
if ($this->compatible) {
return HTMLHelper::_('uitab.endTab');
} else {
return '</div>';
}
}
public function itemCalc($id, $name, $value, $form = 'pform', $size = 1, $class = '') {
switch ($size){
case 3: $class = 'form-control input-xxlarge'. ' ' . $class;
break;
case 2: $class = 'form-control input-xlarge'. ' ' . $class;
break;
case 0: $class = 'form-control input-mini'. ' ' . $class;
break;
default: $class= 'form-control input-small'. ' ' . $class;
break;
}
$o = '';
$o .= '<input type="text" name="'.$form.'['.(int)$id.']['.htmlspecialchars($name, ENT_QUOTES, 'UTF-8').']" id="'.$form.'_'.(int)$id.'_'.htmlspecialchars($name, ENT_QUOTES, 'UTF-8').'" value="'.htmlspecialchars($value, ENT_QUOTES, 'UTF-8').'" class="'.htmlspecialchars($class, ENT_QUOTES, 'UTF-8').'" />';
return $o;
}
public function itemCalcCheckbox($id, $name, $value, $form = 'pform' ) {
$checked = '';
if ($value == 1) {
$checked = 'checked="checked"';
}
$o = '';
$o .= '<input type="checkbox" name="'.$form.'['.(int)$id.']['.htmlspecialchars($name, ENT_QUOTES, 'UTF-8').']" id="'.$form.'_'.(int)$id.'_'.htmlspecialchars($name, ENT_QUOTES, 'UTF-8').'" '.$checked.' />';
return $o;
}
}
?>

View File

@ -0,0 +1,521 @@
<?php
/**
* @package Phoca Cart
* @author Jan Pavelka - https://www.phoca.cz
* @copyright Copyright (C) Jan Pavelka https://www.phoca.cz
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 and later
* @cms Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
*/
namespace Phoca\Render;
defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\Helpers\Sidebar;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Layout\FileLayout;
use Joomla\CMS\Router\Route;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Version;
class Adminviews
{
public $view = '';
public $viewtype = 1;
public $option = '';
public $optionLang = '';
public $tmpl = '';
public $compatible = false;
public $sidebar = true;
protected $document = false;
public function __construct() {
$app = Factory::getApplication();
$version = new Version();
$this->compatible = $version->isCompatible('4.0.0-alpha');
$this->view = $app->input->get('view');
$this->option = $app->input->get('option');
$this->optionLang = strtoupper($this->option);
$this->sidebar = Factory::getApplication()->getTemplate(true)->params->get('menu', 1) ? true : false;
$this->document = Factory::getDocument();
$wa = $app->getDocument()->getWebAssetManager();
HTMLHelper::_('bootstrap.tooltip');
HTMLHelper::_('behavior.multiselect');
HTMLHelper::_('dropdown.init');
HTMLHelper::_('jquery.framework', false);
$wa->registerAndUseStyle($this->option . '.font', 'media/' . $this->option . '/duotone/joomla-fonts.css', array('version' => 'auto'));
$wa->registerAndUseStyle($this->option . '.main', 'media/' .$this->option . '/css/administrator/'.str_replace('com_', '', $this->option).'.css', array('version' => 'auto'));
$wa->registerAndUseStyle($this->option . '.version', 'media/' .$this->option . '/css/administrator/4.css', array('version' => 'auto'));
$wa->registerAndUseStyle($this->option . '.theme', 'media/' .$this->option . '/css/administrator/theme-dark.css', array('version' => 'auto'), [], ['template.active']);
// Modal
if ($this->tmpl == 'component') {
HTMLHelper::_('behavior.core');
HTMLHelper::_('behavior.polyfill', array('event'), 'lt IE 9');
//HTMLHelper::_('script', 'media/' . $this->option . '/js/administrator/admin-phocaitems-modal.min.js', array('version' => 'auto', 'relative' => true));
HTMLHelper::_('bootstrap.tooltip', '.hasTooltip', array('placement' => 'bottom'));
HTMLHelper::_('bootstrap.popover', '.hasPopover', array('placement' => 'bottom'));
}
}
public function startHeader() {
$layoutSVG = new FileLayout('svg_definitions', null, array('component' => $this->option));
//return $layoutSVG->render(array());
}
public function startMainContainer($id = 'phAdminView', $class = 'ph-admin-box') {
$o = array();
if ($this->compatible) {
// Joomla! 4
$o[] = '<div class="row">';
if ($this->sidebar) {
$o[] = '<div id="j-main-container" class="col-md-12">';
} else {
$o[] = '<div id="j-sidebar-container" class="col-md-2">' . Sidebar::render() . '</div>';
$o[] = '<div id="j-main-container" class="col-md-10">';
}
} else {
$o[] = '<div id="j-sidebar-container" class="span2">' . Sidebar::render() . '</div>';
$o[] = '<div id="j-main-container" class="span10">';
}
return implode("\n", $o);
}
public function endMainContainer() {
$o = array();
$o[] = '</div>';
if ($this->compatible) {
$o[] = '</div>';
}
return implode("\n", $o);
}
public function jsJorderTable($listOrder) {
$js = 'Joomla.orderTable = function() {' . "\n"
. ' table = document.getElementById("sortTable");' . "\n"
. ' direction = document.getElementById("directionTable");' . "\n"
. ' order = table.options[table.selectedIndex].value;' . "\n"
. ' if (order != \'' . $listOrder . '\') {' . "\n"
. ' dirn = \'asc\';' . "\n"
. ' } else {' . "\n"
. ' dirn = direction.options[direction.selectedIndex].value;' . "\n"
. ' }' . "\n"
. ' Joomla.tableOrdering(order, dirn, \'\');' . "\n"
. '}' . "\n";
Factory::getDocument()->addScriptDeclaration($js);
}
public function startForm($option, $view, $id = 'adminForm', $name = 'adminForm') {
// CSS based on user groups
$user = Factory::getUser();
$groupClass = '';
if (!empty($user->groups)) {
foreach ($user->groups as $k => $v) {
$groupClass .= ' group-'. $v;
}
}
return '<div id="' . $view . '" class="'.$groupClass.'"><form action="' . Route::_('index.php?option=' . $option . '&view=' . $view) . '" method="post" name="' . $name . '" id="' . $id . '">' . "\n" . '';
}
public function startFormModal($option, $view, $id = 'adminForm', $name = 'adminForm', $function = '') {
// CSS based on user groups
$user = Factory::getUser();
$groupClass = '';
if (!empty($user->groups)) {
foreach ($user->groups as $k => $v) {
$groupClass .= ' group-'. $v;
}
}
return '<div id="' . $view . '" class="'.$groupClass.'"><form action="' . Route::_('index.php?option=' . $option . '&view=' . $view . '&layout=modal&tmpl=component&function=' . $function . '&' . Session::getFormToken() . '=1') . '" method="post" name="' . $name . '" id="' . $id . '">' . "\n" . '';
}
public function endForm() {
return '</form>' . "\n" . '' . "\n" . $this->ajaxTopHtml();
}
public function ajaxTopHtml($text = '') {
$o = '<div id="ph-ajaxtop">';
if ($text != '') {
$o .= '<div id="ph-ajaxtop-message"><div class="ph-loader-top"></div> ' . strip_tags(addslashes($text)) . '</div>';
}
$o .= '</div>';
return $o;
}
/* Modal */
public function startMainContainerNoSubmenu() {
//return '<div id="j-main-container" class="col-xs-12 col-sm-10 col-md-10">'. "\n";
$o = '<div id="j-main-container" class="col-xs-12 col-sm-12 col-md-12 ph-admin-box-content ph-admin-manage">' . "\n";
$o .= '<div id="ph-system-message-container"></div>' . "\n";// specific container for moving messages from joomla to phoca
//$this->moveSystemMessageFromJoomlaToPhoca();
return $o;
}
public function moveSystemMessageFromJoomlaToPhoca() {
$s = array();
//$s[] = 'document.getElementById("system-message-container").style.display = "none";';
$s[] = 'jQuery(document).ready(function() {';
//$s[] = ' jQuery("#system-message-container").removeClass("j-toggle-main");';
$s[] = ' jQuery("#system-message-container").css("display", "none");';
$s[] = ' var phSystemMsg = jQuery("#system-message-container").html();';
$s[] = ' jQuery("#ph-system-message-container").html(phSystemMsg);';
$s[] = '});';
Factory::getDocument()->addScriptDeclaration(implode("\n", $s));
}
public function startTable($id, $class = '') {
return '<table class="table table-striped '.$class.'" id="' . $id . '">' . "\n";
}
public function endTable() {
return '</table>' . "\n";
}
public function tblFoot($listFooter, $columns) {
return '<tfoot>' . "\n" . '<tr><td colspan="' . (int)$columns . '">' . $listFooter . '</td></tr>' . "\n" . '</tfoot>' . "\n";
}
public function startTblHeader() {
return '<thead>' . "\n" . '<tr>' . "\n";
}
public function endTblHeader() {
return '</tr>' . "\n" . '</thead>' . "\n";
}
public function thOrderingXML($txtHo, $listDirn, $listOrder, $prefix = 'a', $empty = false) {
if ($empty) {
return '<th class="nowrap center ph-ordering"></th>' . "\n";
}
return '<th class="nowrap center ph-ordering">' . "\n"
. HTMLHelper::_('searchtools.sort', '', strip_tags($prefix) . '.ordering', $listDirn, $listOrder, null, 'asc', $txtHo, 'icon-menu-2') . "\n"
. '</th>';
//HTMLHelper::_('searchtools.sort', $this->t['l'].'_IN_STOCK', 'a.stock', $listDirn, $listOrder ).'</th>'."\n";
}
public function thCheck($txtCh) {
return '<th class=" ph-check">' . "\n"
. '<input type="checkbox" name="checkall-toggle" value="" title="' . Text::_($txtCh) . '" onclick="Joomla.checkAll(this)" />' . "\n"
. '</th>' . "\n";
}
public function tdOrder($canChange, $saveOrder, $orderkey, $ordering = 0, $catOrderingEnabled = true) {
$o = '<td class="order nowrap center ">' . "\n";
if ($canChange) {
$disableClassName = '';
$disabledLabel = '';
if (!$saveOrder) {
$disabledLabel = Text::_('JORDERINGDISABLED');
$disableClassName = 'inactive tip-top';
}
if (!$catOrderingEnabled && !$saveOrder) {
//$disableClassName = 'inactive tip-top';
$disabledLabel = Text::_($this->optionLang . '_SELECT_CATEGORY_TO_ORDER_ITEMS');
}
$o .= '<span class="sortable-handler hasTooltip ' . $disableClassName . '" title="' . $disabledLabel . '"><i class="icon-menu"></i></span>' . "\n";
} else {
$o .= '<span class="sortable-handler inactive"><i class="icon-menu"></i></span>' . "\n";
}
$orderkeyPlus = $ordering; //$orderkey + 1;
$o .= '<input type="text" style="display:none" name="order[]" size="5" value="' . $orderkeyPlus . '" />' . "\n"
. '</td>' . "\n";
return $o;
}
public function tdRating($ratingAvg) {
$o = '<td class="small ">';
$voteAvg = round(((float)$ratingAvg / 0.5)) * 0.5;
$voteAvgWidth = 16 * $voteAvg;
$o .= '<ul class="star-rating-small">'
. '<li class="current-rating" style="width:' . $voteAvgWidth . 'px"></li>'
. '<li><span class="star1"></span></li>';
for ($ir = 2; $ir < 6; $ir++) {
$o .= '<li><span class="stars' . $ir . '"></span></li>';
}
$o .= '</ul>';
$o .= '</td>' . "\n";
return $o;
}
public function tdLanguage($lang, $langTitle, $langTitleE) {
$o = '<td class="small nowrap ">';
if ($lang == '*') {
$o .= Text::_('JALL');
} else {
if ($langTitle) {
$o .= $langTitleE;
} else {
$o .= Text::_('JUNDEFINED');
}
}
$o .= '</td>' . "\n";
return $o;
}
public function tdEip($id, $value, $params = array()) {
$classBox = isset($params['classbox']) ? $params['clasbox'] : 'small';
$classEip = isset($params['classeip']) ? $params['classeip'] : 'ph-editinplace-text ph-eip-text ph-eip-price';
$o = array();
$o[] = '<td class="' . $classBox . '">';
$o[] = '<span class="' . $classEip . '" id="' . $id . '">' . $value . '</span>';
$o[] = '</td>';
return implode("\n", $o);
}
public function formInputsXml($listOrder, $listDirn, $originalOrders) {
return '<input type="hidden" name="task" value="" />' . "\n"
. '<input type="hidden" name="boxchecked" value="0" />' . "\n"
//.'<input type="hidden" name="filter_order" value="'.$listOrder.'" />'. "\n"
//.'<input type="hidden" name="filter_order_Dir" value="'.$listDirn.'" />'. "\n"
. HTMLHelper::_('form.token') . "\n"
. '<input type="hidden" name="original_order_values" value="' . implode(',', $originalOrders) . '" />' . "\n";
}
public function td($value, $class = '', $tag = 'td') {
// th for columns which cannot be hidden (Joomla feature);
if ($class != '') {
return '<'.$tag.' class="' . $class . '">' . $value . '</'.$tag.'>' . "\n";
} else {
return '<'.$tag.'>' . $value . '</'.$tag.'>' . "\n";
}
}
public function tdPublishDownUp($publishUp, $publishDown, $class = '') {
$o = '';
$db = Factory::getDBO();
//$app = Factory::getApplication();
$nullDate = $db->getNullDate();
$now = Factory::getDate();
$config = Factory::getConfig();
$publish_up = Factory::getDate($publishUp);
$publish_down = Factory::getDate($publishDown);
$tz = new \DateTimeZone($config->get('offset'));
$publish_up->setTimezone($tz);
$publish_down->setTimezone($tz);
if ($now->toUnix() <= ($publish_up->toUnix())) { // Possible $publish_up->toUnix() - 1 for lazy servers where e.g. when multiple add, pending is displayed instead of active, because it is faster then SQL date
$text = Text::_($this->optionLang . '_PENDING');
} else if (($now->toUnix() <= $publish_down->toUnix() || $publishDown == $nullDate)) {
$text = Text::_($this->optionLang . '_ACTIVE');
} else if ($now->toUnix() > $publish_down->toUnix()) {
$text = Text::_($this->optionLang . '_EXPIRED');
}
$times = '';
if (isset($publishUp)) {
if ($publishUp == $nullDate) {
$times .= Text::_($this->optionLang . '_START') . ': ' . Text::_($this->optionLang . '_ALWAYS');
} else {
$times .= Text::_($this->optionLang . '_START') . ": " . $publish_up->format("D, d M Y H:i:s");
}
}
if (isset($publishDown)) {
if ($publishDown == $nullDate) {
$times .= "<br />" . Text::_($this->optionLang . '_FINISH') . ': ' . Text::_($this->optionLang . '_NO_EXPIRY');
} else {
$times .= "<br />" . Text::_($this->optionLang . '_FINISH') . ": " . $publish_down->format("D, d M Y H:i:s");
}
}
if ($times) {
$o .= '<td align="center" class="'.$class.'">'
. '<span class="editlinktip hasTip" title="' . Text::_($this->optionLang . '_PUBLISH_INFORMATION') . '::' . $times . '">'
. '<a href="javascript:void(0);" >' . $text . '</a></span>'
. '</td>' . "\n";
} else {
$o .= '<td></td>' . "\n";
}
return $o;
}
public function saveOrder($t, $listDirn, $catid = 0) {
$saveOrderingUrl = 'index.php?option=' . $t['o'] . '&task=' . $t['tasks'] . '.saveOrderAjax&tmpl=component&' . Session::getFormToken() . '=1';
// Joomla BUG: https://github.com/joomla/joomla-cms/issues/36346 $this->t['catid']
// Add catid to the URL instead of sending in POST
// administrator/components/com_phocacart/views/phocacartitems/tmpl/default.php 37
if ((int)$catid > 0) {
$saveOrderingUrl .= '&catid='.(int)$catid;
}
// ---
if ($this->compatible) {
HTMLHelper::_('draggablelist.draggable');
} else {
HTMLHelper::_('sortablelist.sortable', 'categoryList', 'adminForm', strtolower($listDirn), $saveOrderingUrl, false, true);
}
return $saveOrderingUrl;
}
public function firstColumnHeader($listDirn, $listOrder, $prefix = 'a', $empty = false) {
if ($this->compatible) {
return '<th class="w-1 text-center ph-check">' . HTMLHelper::_('grid.checkall') . '</td>';
} else {
return $this->thOrderingXML('JGRID_HEADING_ORDERING', $listDirn, $listOrder, $prefix, $empty);
}
}
public function secondColumnHeader($listDirn, $listOrder, $prefix = 'a', $empty = false) {
if ($this->compatible) {
return $this->thOrderingXML('JGRID_HEADING_ORDERING', $listDirn, $listOrder, $prefix, $empty);
} else {
return $this->thCheck('JGLOBAL_CHECK_ALL');
}
}
public function startTblBody($saveOrder, $saveOrderingUrl, $listDirn) {
$o = array();
if ($this->compatible) {
$o[] = '<tbody';
if ($saveOrder) {
$o[] = ' class="js-draggable" data-url="' . $saveOrderingUrl . '" data-direction="' . strtolower($listDirn) . '" data-nested="true"';
}
$o[] = '>';
} else {
$o[] = '<tbody>' . "\n";
}
return implode("", $o);
}
public function endTblBody() {
return '</tbody>' . "\n";
}
public function startTr($i, $catid = 0, $id = 0, $level = -1, $parentsString = '', $class = '') {
$i2 = $i % 2;
$dataItemId = '';
if ($id > 0) {
$dataItemId = ' data-item-id="'.(int)$id.'"';
}
$dataItemCatid = '';
if ($this->compatible) {
$dataItemCatid = ' data-draggable-group="' . (int)$catid . '"';
} else {
$dataItemCatid = ' sortable-group-id="' . (int)$catid . '"';
}
$dataParents = '';
if ($parentsString != '') {
$dataParents = ' data-parents="'.$parentsString.'"';
} else if ($catid > 0) {
$dataParents = ' data-parents="'.(int)$catid.'"';
}
$dataLevel = '';
if ($level > -1) {
$dataLevel = ' data-parents="'.(int)$level.'"';
}
return '<tr for="cb'.$i.'" class="'.$class.'row' . $i2 . '"'.$dataItemId.$dataItemCatid.$dataParents.$dataLevel.' data-transitions>' . "\n";
}
public function endTr() {
return '</tr>' . "\n";
}
public function createIndentation($level) {
if ((int)$level > 1) {
$intendetation = str_repeat('-&nbsp;', ((int)$level - 1));
return '<div class="ph-intendation">'.$intendetation.'</div>';
}
return "";
}
public function firstColumn($i, $itemId, $canChange, $saveOrder, $orderkey, $ordering, $saveOrderCatSelected = true) {
if ($this->compatible) {
return $this->td(HTMLHelper::_('grid.id', $i, $itemId), 'text-center ph-select-row');
} else {
return $this->tdOrder($canChange, $saveOrder, $orderkey, $ordering, $saveOrderCatSelected);
}
}
public function secondColumn($i, $itemId, $canChange, $saveOrder, $orderkey, $ordering, $saveOrderCatSelected = true, $catid = 0) {
if ($this->compatible) {
$o = array();
$o[] = '<td class="text-center d-none d-md-table-cell">';
$iconClass = '';
if (!$canChange) {
$iconClass = ' inactive';
} else if (!$saveOrderCatSelected) {
$iconClass = ' inactive" title="' . Text::_($this->optionLang . '_SELECT_CATEGORY_TO_ORDER_ITEMS');
} else if (!$saveOrder) {
$iconClass = ' inactive" title="' . Text::_('JORDERINGDISABLED');
}
$o[] = '<span class="sortable-handler' . $iconClass . '"><span class="fas fa-ellipsis-v" aria-hidden="true"></span></span>';
if ($canChange && $saveOrder) {
$o[] = '<input type="text" name="order[]" size="5" value="' . $ordering . '" class="width-20 text-area-order hidden">';
}
$o[] = '</td>';
return implode("", $o);
} else {
return $this->td(HTMLHelper::_('grid.id', $i, $itemId), "small ");
}
}
}
?>

View File

@ -0,0 +1,36 @@
<?php
/**
* Users who do not have 'composer' to manage dependencies, include this
* file to provide auto-loading of the classes in this library.
*/
spl_autoload_register ( function ($class) {
/*
* PSR-4 autoloader, based on PHP Framework Interop Group snippet (Under MIT License.)
* https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-4-autoloader-examples.md
*/
$prefix = "Phoca\\";
$base_dir = __DIR__ . "/";
/* Only continue for classes in this namespace */
$len = strlen ( $prefix );
if (strncmp ( $prefix, $class, $len ) !== 0) {
return;
}
/* Require the file if it exists */
//$relative_class = substr ( $class, $len );
//$relative_class = str_replace('Joomla/CMS/' . $class);
$relative_class = $class;
$file = $base_dir . str_replace ( '\\', '/', $relative_class ) . '.php';
if (file_exists ( $file )) {
require $file;
}
} );

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

View File

@ -0,0 +1,80 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
spl_autoload_register(array('JLoader','load'));
class PhocaDownloadLoader extends JLoader
{
private static $paths = array();
protected static $classes = array();
public static function import($filePath, $base = null, $key = 'libraries.') {
$cU = 'phocadownload';
$cN = 'PhocaDownload';
$keyPath = $key ? $key . $filePath : $filePath;
if (!isset($paths[$keyPath])) {
if ( !$base ) {
$base = JPATH_ADMINISTRATOR.'/components/com_'.$cU.'/libraries';
}
$parts = explode( '.', $filePath );
$className = array_pop( $parts );
switch($className) {
case 'helper' :
$className = ucfirst(array_pop( $parts )).ucfirst($className);
break;
Default :
$className = ucfirst($className);
break;
}
$path = str_replace( '.', '/', $filePath );
if (strpos($filePath, $cU) === 0) {
$className = $cN.$className;
$classes = JLoader::register($className, $base.'/'.$path.'.php');
$rs = isset($classes[strtolower($className)]);
} else {
// If it is not in the joomla namespace then we have no idea if
// it uses our pattern for class names/files so just include
// if the file exists or set it to false if not
$filename = $base.'/'.$path.'.php';
if (is_file($filename)) {
$rs = (bool) include $filename;
} else {
// if the file doesn't exist fail
$rs = false;
// note: JLoader::register does an is_file check itself so we don't need it above, we do it here because we
// try to load the file directly and it may not exist which could cause php to throw up nasty warning messages
// at us so we set it to false here and hope that if the programmer is good enough they'll check the return value
// instead of hoping it'll work. remmeber include only fires a warning, so $rs was going to be false with a nasty
// warning message
}
}
PhocaDownloadLoader::$paths[$keyPath] = $rs;
}
return PhocaDownloadLoader::$paths[$keyPath];
}
}
function phocadownloadimport($path) {
return PhocaDownloadLoader::import($path);
}

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

View File

@ -0,0 +1,122 @@
<?php
/**
* @version $Id: accesslevel.php 20196 2011-01-09 02:40:25Z ian $
* @package Joomla.Framework
* @subpackage Form
* @copyright Copyright (C) 2005 - 2011 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('JPATH_BASE') or die;
use Joomla\CMS\Form\Field\ListField;
use Joomla\CMS\Form\FormHelper;
use Joomla\CMS\Form\Form;
use Joomla\CMS\Form\FormField;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper;
jimport('joomla.html.html');
jimport('joomla.form.formfield');
jimport('joomla.form.helper');
FormHelper::loadFieldClass('list');
/**
* Form Field class for the Joomla Framework.
*
* @package Joomla.Framework
* @subpackage Form
* @since 1.6
*/
class JFormFieldPhocaAccessLevel extends ListField
{
/**
* The form field type.
*
* @var string
* @since 1.6
*/
public $type = 'AccessLevel';
/**
* Method to get the field input markup.
*
* @return string The field input markup.
* @since 1.6
*/
protected function getInput()
{
// Initialize variables.
$attr = '';
// Initialize some field attributes.
$attr .= $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : '';
$attr .= ((string) $this->element['disabled'] == 'true') ? ' disabled="disabled"' : '';
$attr .= $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
$attr .= $this->multiple ? ' multiple="multiple"' : '';
// Initialize JavaScript field attributes.
$attr .= $this->element['onchange'] ? ' onchange="'.(string) $this->element['onchange'].'"' : '';
// Get the field options.
$options = $this->getOptions();
//return $this->_level( $this->name, $this->value, $attr, $options, $this->id);
$data = $this->getLayoutData();
$data['options'] = (array) $this->_level( $this->name, $this->value, $attr, $options, $this->id);
return $this->getRenderer($this->layout)->render($data);
}
public static function _level($name, $selected, $attribs = '', $params = true, $id = false) {
$db = Factory::getDbo();
$query = $db->getQuery(true);
$query->select('a.id AS value, a.title AS text');
$query->from('#__viewlevels AS a');
//PHOCAEDIT
$query->where('a.id <> 1');
//ENDPHOCAEDIT
$query->group('a.id, a.title');
$query->order('a.ordering ASC');
$query->order('`title` ASC');
// Check for a database error.
/* if ($db->getErrorNum()) {
throw new Exception($db->getErrorMsg(), 500);
return false;
}*/
try {
// Get the options.
$db->setQuery($query);
$options = $db->loadObjectList();
} catch (RuntimeException $e) {
throw new Exception($e->getMessage(), 500);
return false;
}
// If params is an array, push these options to the array
if (is_array($params)) {
$options = array_merge($params,$options);
}
// If all levels is allowed, push it into the array.
elseif ($params) {
array_unshift($options, HTMLHelper::_('select.option', '', Text::_('JOPTION_ACCESS_SHOW_ALL_LEVELS')));
}
return $options;
/*
return HTMLHelper::_('select.genericlist', $options, $name,
array(
'list.attr' => $attribs,
'list.select' => $selected,
'id' => $id
)
);*/
}
}

View File

@ -0,0 +1,87 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('JPATH_BASE') or die;
jimport('joomla.form.formfield');
class JFormFieldPhocaColorText extends JFormField
{
protected $type = 'PhocaColorText';
protected $phocaParams = null;
protected function getInput() {
$document = JFactory::getDocument();
$option = JFactory::getApplication()->input->getCmd('option');
$globalValue = $this->_getPhocaParams( $this->element['name'] );
JHTML::stylesheet( 'administrator/components/com_phocadownload/assets/jcp/picker.css' );
$document->addScript(JURI::base(true).'/components/com_phocadownload/assets/jcp/picker.js');
// Initialize some field attributes.
$size = $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
$class = $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : '';
$maxLength = $this->element['maxlength'] ? ' maxlength="'.(int) $this->element['maxlength'].'"' : '';
$readonly = ((string) $this->element['readonly'] == 'true') ? ' readonly="readonly"' : '';
$disabled = ((string) $this->element['disabled'] == 'true') ? ' disabled="disabled"' : '';
// Initialize JavaScript field attributes.
$onchange = $this->element['onchange'] ? ' onchange="'.(string) $this->element['onchange'].'"' : '';
$value = htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8');
// TODO 1.6
// MENU - Set Default value to "" because of saving "" value into the menu link ( use global = "")
if ($option == "com_menus") {
$DefaultValue = (string)$this->element['default'];
if ($value == $DefaultValue) {
$value = '';
}
}
$html ='<input type="text" name="'.$this->name.'" id="'.$this->id.'" value="'.$value.'"'
.$class.$size.$disabled.$readonly.$onchange.$maxLength.'/>';
// Color Picker
$nameCP = str_replace('[', '_', $this->name);
$nameCP = str_replace(']', '', $nameCP);
$html .= '<span style="margin-left:10px" onclick="openPicker(\''.$nameCP.'\')" class="picker_buttons">' . JText::_('COM_PHOCADOWNLOAD_PICK_COLOR') . '</span>';
// MENU - Display the global value
if ($option == "com_menus") {
$html .= '<span style="margin-left:10px;">[</span><span style="background:#fff"> ' . $globalValue . ' </span><span>]</span>';
}
return $html;
}
protected function getLabel() {
echo '<div class="clearfix"></div>';
return parent::getLabel();
echo '<div class="clearfix"></div>';
}
protected function _setPhocaParams(){
$component = 'com_phocadownload';
$paramsC = JComponentHelper::getParams($component) ;
$this->phocaParams = $paramsC;
}
protected function _getPhocaParams( $name ){
// Don't call sql query by every param item (it will be loaded only one time)
if (!$this->phocaParams) {
$params = $this->_setPhocaParams();
}
$globalValue = $this->phocaParams->get( $name, '' );
return $globalValue;
}
}
?>

View File

@ -0,0 +1,205 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\Form\FormField;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\Component\Fields\Administrator\Helper\FieldsHelper;
if (! class_exists('PhocaDownloadCategory')) {
require_once( JPATH_ADMINISTRATOR.'/components/com_phocadownload/libraries/phocadownload/category/category.php');
}
Factory::getApplication()->getLanguage()->load('com_phocadownload');
class JFormFieldPhocaDownloadCategory extends FormField
{
protected $type = 'PhocaDownloadCategory';
protected $layout = 'phocadownload.form.field.category';
protected function getRenderer($layoutId = 'default')
{
// Make field usable outside of Phoca Cart component
$renderer = parent::getRenderer($layoutId);
$renderer->addIncludePath(JPATH_ADMINISTRATOR . '/components/com_phocadownload/layouts');
return $renderer;
}
private function buildCategoryTree(array &$options, array $categories, string $treeTitle, array $typeFilter, array $langFilter, array $omitIds): void {
foreach ($categories as $category) {
if ($typeFilter && !in_array($category->type, $typeFilter)) continue;
if ($langFilter && !in_array($category->language, $langFilter)) continue;
if ($omitIds && in_array($category->id, $omitIds)) continue;
$title = ($treeTitle ? $treeTitle . ' - ' : '') . $category->title;
$options[] = (object)[
'text' => $title . ($category->language === '*' ? '' : ' (' . $category->language . ')'),
'value' => $category->id,
];
if ($category->children)
$this->buildCategoryTree($options, $category->children, $title, $typeFilter, $langFilter, $omitIds);
}
}
protected function getInput() {
$db = Factory::getDBO();
$multiple = (string)$this->element['multiple'] == 'true';
$typeMethod = $this->element['typemethod'];
switch($this->element['categorytype']) {
case 1:
$typeFilter = [0, 1];
break;
case 2:
$typeFilter = [0, 2];
break;
case 0:
default:
$typeFilter = [];
break;
}
if ($this->element['language']) {
$langFilter = explode(',', $this->element['language']);
} elseif ($this->form->getValue('language', 'filter')) {
$langFilter = [$this->form->getValue('language', 'filter')];
} else {
$langFilter = [];
}
// TO DO - check for other views than category edit
$omitIds = [];
switch (Factory::getApplication()->input->get('view')) {
case 'phocadownloadcategory':
if ($this->form->getValue('id') > 0)
$omitIds[] = $this->form->getValue('id');
break;
}
$db->setQuery('SELECT a.*, null AS children FROM #__phocadownload_categories AS a ORDER BY a.ordering, a.id');
$categories = $db->loadObjectList('id') ?? [];
array_walk($categories, function ($category) use ($categories) {
if ($category->parent_id) {
if ($categories[$category->parent_id]->children === null) {
$categories[$category->parent_id]->children = [];
}
$categories[$category->parent_id]->children[] = $category;
}
});
$rootCategories = array_filter($categories, function($category) {
return !$category->parent_id;
});
$options = [];
if ($multiple) {
if ($typeMethod == 'allnone') {
$options[] = HTMLHelper::_('select.option', '0', Text::_('COM_PHOCADOWNLOAD_NONE'), 'value', 'text');
$options[] = HTMLHelper::_('select.option', '-1', Text::_('COM_PHOCADOWNLOAD_ALL'), 'value', 'text');
}
} else {
// in filter we need zero value for canceling the filter
if ($typeMethod == 'menulink') {
// Required for menu link,
} else if ($typeMethod == 'filter') {
$options[] = HTMLHelper::_('select.option', '', '- ' . Text::_('COM_PHOCADOWNLOAD_SELECT_CATEGORY') . ' -', 'value', 'text');
} else {
$options[] = HTMLHelper::_('select.option', '0', '- '.Text::_('COM_PHOCADOWNLOAD_SELECT_CATEGORY').' -', 'value', 'text');
}
}
$this->buildCategoryTree($options, $rootCategories, '', $typeFilter, $langFilter, $omitIds);
$data = $this->getLayoutData();
$data['options'] = $options;
//if (!empty($activeCats)) {
// $data['value'] = $activeCats;
//} else {
$data['value'] = $this->value;
//}
$data['refreshPage'] = (bool)$this->element['refresh-enabled'];
$data['refreshCatId'] = (string)$this->element['refresh-cat-id'];
$data['refreshSection'] = (string)$this->element['refresh-section'];
$data['hasCustomFields']= !empty(FieldsHelper::getFields('com_phocadownload.phocadownloadfile'));
$document = Factory::getDocument();
$document->addCustomTag('<script type="text/javascript">
function changeCatid() {
/* var catid = document.getElementById(\'jform_catid\').value;*/
}
</script>');
return $this->getRenderer($this->layout)->render($data);
}
/*
protected function getInput() {
$db = Factory::getDBO();
//build the list of categories
$query = 'SELECT a.title AS text, a.id AS value, a.parent_id as parent_id'
. ' FROM #__phocadownload_categories AS a'
//. ' WHERE a.published = 1' // don't lose information about category when it will be unpublished - you should still be able to edit file with such category in administration
. ' ORDER BY a.ordering';
$db->setQuery( $query );
$data = $db->loadObjectList();
$view = Factory::getApplication()->input->get( 'view' );
$catId = -1;
if ($view == 'phocadownloadcat') {
$id = $this->form->getValue('id'); // id of current category
if ((int)$id > 0) {
$catId = $id;
}
}/*
if ($view == 'phocadownloadfile') {
$id = $this->form->getValue('catid'); // id of current category
if ((int)$id > 0) {
$catId = $id;
}
}*//*
//$required = ((string) $this->element['required'] == 'true') ? TRUE : FALSE;
$attr = '';
$attr .= $this->element['onchange'] ? ' onchange="'.(string) $this->element['onchange'].'"' : '';
$attr .= $this->required ? ' required aria-required="true"' : '';
$attr .= ' class="form-select"';
$tree = array();
$text = '';
$tree = PhocaDownloadCategory::CategoryTreeOption($data, $tree, 0, $text, $catId);
//if ($required == TRUE) {
//} else {
array_unshift($tree, HTMLHelper::_('select.option', '', '- '.Text::_('COM_PHOCADOWNLOAD_SELECT_CATEGORY').' -', 'value', 'text'));
//}
return HTMLHelper::_('select.genericlist', $tree, $this->name, trim($attr), 'value', 'text', $this->value, $this->id );
}*/
}
?>

View File

@ -0,0 +1,128 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('JPATH_BASE') or die;
jimport('joomla.html.editor');
jimport('joomla.form.formfield');
class JFormFieldPhocaDownloadEditor extends JFormField
{
public $type = 'PhocaDownloadEditor';
protected $phocaParams = null;
protected $editor;
protected function getInput()
{
// Initialize some field attributes.
$rows = (int) $this->element['rows'];
$cols = (int) $this->element['cols'];
$height = ((string) $this->element['height']) ? (string) $this->element['height'] : '250';
$width = ((string) $this->element['width']) ? (string) $this->element['width'] : '100%';
// Build the buttons array.
$buttons = (string) $this->element['buttons'];
if ($buttons == 'true' || $buttons == 'yes' || $buttons == '1') {
$buttons = true;
} else if ($buttons == 'false' || $buttons == 'no' || $buttons == '0') {
$buttons = false;
} else {
$buttons = explode(',', $buttons);
}
$hide = ((string) $this->element['hide']) ? explode(',',(string) $this->element['hide']) : array();
$globalValue = $this->_getPhocaParameter( 'display_editor' );
if ($globalValue == '') {
$globalValue = 1;
}
$widthE = $width + 200;
if ($globalValue == 1) {
// Get an editor object.
$editor = $this->getEditor();
$editorOutput = '<div style="width:'.$widthE.'px">'. $editor->display($this->name, htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8'), $width, $height, $cols, $rows, $buttons ? (is_array($buttons) ? array_merge($buttons,$hide) : $hide) : false, $this->id).'</div>';
return '<div style="clear:both;margin-top:5px"></div>' .$editorOutput;
}
else {
$style = '';
if ($width != '' && $height != '') {
$style = 'style="width:'.$width.'; height:'.$height.'"';
}
return '<textarea name="'.$this->name.'" cols="'.$cols.'" rows="'.$rows.'" '.$style.' id="'.$this->name.'" >'.htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8').'</textarea>';
}
}
protected function & getEditor()
{
// Only create the editor if it is not already created.
if (empty($this->editor)) {
// Initialize variables.
$editor = null;
// Get the editor type attribute. Can be in the form of: editor="desired|alternative".
$type = trim((string) $this->element['editor']);
if ($type) {
// Get the list of editor types.
$types = explode('|', $type);
// Get the database object.
$db = JFactory::getDBO();
// Iterate over teh types looking for an existing editor.
foreach ($types as $element) {
// Build the query.
$query = $db->getQuery(true);
$query->select('element');
$query->from('#__extensions');
$query->where('element = '.$db->quote($element));
$query->where('folder = '.$db->quote('editors'));
$query->where('enabled = 1');
// Check of the editor exists.
$db->setQuery($query, 0, 1);
$editor = $db->loadResult();
// If an editor was found stop looking.
if ($editor) {
break;
}
}
}
// Create the JEditor intance based on the given editor.
$this->editor = JFactory::getEditor($editor ? $editor : null);
}
return $this->editor;
}
public function save()
{
return $this->getEditor()->save($this->id);
}
protected function _setPhocaParams(){
$component = 'com_phocadownload';
$paramsC = JComponentHelper::getParams($component) ;
$this->phocaParams = $paramsC;
}
protected function _getPhocaParameter( $name ){
// Don't call sql query by every param item (it will be loaded only one time)
if (!$this->phocaParams) {
$params = $this->_setPhocaParams();
}
$globalValue = $this->phocaParams->get( $name, '' );
return $globalValue;
}
}

View File

@ -0,0 +1,51 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\Form\FormField;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
class JFormFieldPhocaDownloadFile extends FormField
{
protected $type = 'PhocaDownloadFile';
protected function getInput() {
$db = Factory::getDBO();
//build the list of files
$query = 'SELECT a.title , a.id , a.catid'
. ' FROM #__phocadownload AS a'
. ' WHERE a.published = 1'
. ' ORDER BY a.ordering';
$db->setQuery( $query );
$messages = $db->loadObjectList();
$options = array();
if ($messages)
{
foreach($messages as $message)
{
$options[] = HTMLHelper::_('select.option', $message->id, $message->title);
}
}
$attr = '';
$attr .= $this->required ? ' required aria-required="true"' : '';
$attr .= ' class="form-control"';
array_unshift($options, HTMLHelper::_('select.option', '', '- '.Text::_('COM_PHOCADOWNLOAD_SELECT_FILE').' -', 'value', 'text'));
return HTMLHelper::_('select.genericlist', $options, $this->name, trim($attr), 'value', 'text', $this->value, $this->id );
}
}
?>

View File

@ -0,0 +1,41 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\Form\FormField;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper;
class JFormFieldPhocaDownloadLicense extends FormField
{
protected $type = 'PhocaDownloadLicense';
protected function getInput() {
$db = Factory::getDBO();
//build the list of categories
$query = 'SELECT a.title AS text, a.id AS value'
. ' FROM #__phocadownload_licenses AS a'
//. ' WHERE a.published = 1'
. ' ORDER BY a.ordering';
$db->setQuery( $query );
$licenses = $db->loadObjectList();
$id = $this->form->getValue('id'); // id of current license
$required = ((string) $this->element['required'] == 'true') ? TRUE : FALSE;
array_unshift($licenses, HTMLHelper::_('select.option', '', '- '.Text::_('COM_PHOCADOWNLOAD_SELECT_LICENSE').' -', 'value', 'text'));
return HTMLHelper::_('select.genericlist', $licenses, $this->name, 'class="form-select"', 'value', 'text', $this->value, $this->id );
}
}
?>

View File

@ -0,0 +1,90 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('JPATH_BASE') or die;
use Joomla\CMS\Form\FormField;
use Joomla\CMS\HTML\HTMLHelper;
jimport('joomla.html.html');
jimport('joomla.form.formfield');
class JFormFieldPhocaDownloadOrdering extends FormField
{
protected $type = 'PhocaDownloadOrdering';
protected function getInput() {
// Initialize variables.
$html = array();
$attr = '';
// Get some field values from the form.
$id = (int) $this->form->getValue('id');
if ($this->element['table']) {
switch (strtolower($this->element['table'])) {
case "category":
$whereLabel = 'parent_id';
$whereValue = (int) $this->form->getValue('parent_id');
$table = '#__phocadownload_categories';
break;
case "tag":
$whereLabel = '';
$whereValue = '';
$table = '#__phocadownload_tags';
break;
case "file":
default:
$whereLabel = 'catid';
$whereValue = (int) $this->form->getValue('catid');
$table = '#__phocadownload';
break;
}
} else {
$whereLabel = 'catid';
$whereValue = (int) $this->form->getValue('catid');
$table = '#__phocadownload';
}
// Initialize some field attributes.
$attr .= $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : '';
$attr .= ((string) $this->element['disabled'] == 'true') ? ' disabled="disabled"' : '';
$attr .= $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
// Initialize JavaScript field attributes.
$attr .= $this->element['onchange'] ? ' onchange="'.(string) $this->element['onchange'].'"' : '';
// Build the query for the ordering list.
$query = 'SELECT ordering AS value, title AS text' .
' FROM ' . $table;
if ($whereLabel != '') {
$query .= ' WHERE '.$whereLabel.' = ' . (int) $whereValue;
}
$query .= ' ORDER BY ordering';
// Create a read-only list (no name) with a hidden input to store the value.
if ((string) $this->element['readonly'] == 'true') {
$html[] = HTMLHelper::_('list.ordering', '', $query, trim($attr), $this->value, $id ? 0 : 1);
$html[] = '<input type="hidden" name="'.$this->name.'" value="'.$this->value.'"/>';
}
// Create a regular list.
else {
$html[] = HTMLHelper::_('list.ordering', $this->name, $query, trim($attr), $this->value, $id ? 0 : 1);
}
return implode($html);
}
}

View File

@ -0,0 +1,53 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die();
use Joomla\CMS\Form\FormField;
use Joomla\CMS\Language\Text;
class JFormFieldPhocaDownloadToken extends FormField
{
protected $type = 'PhocaDownloadToken';
protected function getInput() {
//PhocaDownlooadUtils::getToken()
$salt = md5('string '. date('s'). mt_rand(0,9999) . str_replace(mt_rand(0,9), mt_rand(0,9999), date('r')). 'end string');
$token = hash('sha256', $salt . time());
// Initialize variables.
$html = array();
// Initialize some field attributes.
$size = $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
$maxLength = $this->element['maxlength'] ? ' maxlength="'.(int) $this->element['maxlength'].'"' : '';
$class = $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : '';
$readonly = ((string) $this->element['readonly'] == 'true') ? ' readonly="readonly"' : '';
$disabled = ((string) $this->element['disabled'] == 'true') ? ' disabled="disabled"' : '';
$maptype = ( (string)$this->element['maptype'] ? $this->element['maptype'] : '' );
// Initialize JavaScript field attributes.
$onchange = (string) $this->element['onchange'];
$onchangeOutput = ' onChange="'.(string) $this->element['onchange'].'"';
$html[] = '<div class="input-append input-group">';
$html[] = '<input type="text" id="'.$this->id.'_id" name="'.$this->name.'" value="'. $this->value.'"' .
' '.$class.$size.$disabled.$readonly.$onchangeOutput.$maxLength.' />';
$html[] = '<a class="btn btn-primary" title="'.Text::_('COM_PHOCADOWNLOAD_SET_TOKEN').'"'
.' href="javascript:void(0);"'
.' onclick="javascript:document.getElementById(\''.$this->id.'_id\').value = \''.$token.'\';return true;">'
. Text::_('COM_PHOCADOWNLOAD_SET_TOKEN').'</a>';
$html[] = '</div>'. "\n";
return implode("\n", $html);
}
}
?>

View File

@ -0,0 +1,61 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('JPATH_BASE') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\Form\FormField;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
jimport('joomla.html.html');
jimport('joomla.form.formfield');
class JFormFieldPhocaHead extends FormField
{
protected $type = 'PhocaHead';
protected function getLabel() { return '';}
protected function getInput() {
$tc = 'phocadownload';
//$ts = 'media/com_'.$tc.'/css/administrator/';
$ti = 'media/com_'.$tc.'/images/administrator/';
//HTMLHelper::stylesheet( $ts.'/'.$tc.'options.css' );
$app = Factory::getApplication();
$wa = $app->getDocument()->getWebAssetManager();
$option = 'com_phocadownload';
$wa->registerAndUseStyle($option . '.options', 'media/' .$option . '/css/administrator/phocadownloadoptions.css', array('version' => 'auto'));
$wa->registerAndUseStyle($option . '.theme', 'media/' .$option . '/css/administrator/theme-dark.css', array('version' => 'auto'), [], ['template.active']);
//echo '<div style="clear:both;"></div>';
$phocaImage = ( (string)$this->element['phocaimage'] ? $this->element['phocaimage'] : '' );
$image = '';
if ($phocaImage != ''){
$image = HTMLHelper::_('image', $ti . $phocaImage, '' );
}
if ($this->element['default']) {
if ($image != '') {
return '<div class="ph-options-head">'
.'<div>'. $image.' <strong>'. Text::_($this->element['default']) . '</strong></div>'
.'</div>';
} else {
return '<div class="ph-options-head">'
.'<strong>'. Text::_($this->element['default']) . '</strong>'
.'</div>';
}
} else {
return parent::getLabel();
}
//echo '<div style="clear:both;"></div>';
}
}
?>

View File

@ -0,0 +1,51 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('JPATH_BASE') or die;
use Joomla\CMS\Form\FormField;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
jimport('joomla.html.html');
jimport('joomla.form.formfield');
class JFormFieldPhocaHeadExpert extends FormField
{
protected $type = 'PhocaHeadExpert';
protected function getLabel() { return '';}
protected function getInput() {
$tc = 'phocadownload';
$ts = 'media/com_'.$tc.'/css/administrator/';
$ti = 'media/com_'.$tc.'/images/administrator/';
HTMLHelper::stylesheet( $ts.'/'.$tc.'options.css' );
echo '<div style="clear:both;"></div>';
$phocaImage = ( (string)$this->element['phocaimage'] ? $this->element['phocaimage'] : '' );
$image = '';
if ($phocaImage != ''){
$image = HTMLHelper::_('image', $ti . $phocaImage, '' );
}
if ($this->element['default']) {
if ($image != '') {
return '<div class="ph-options-head-expert">'
.'<div>'. $image.' <strong>'. Text::_($this->element['default']) . '</strong></div>'
.'</div>';
} else {
return '<div class="ph-options-head-expert">'
.'<strong>'. Text::_($this->element['default']) . '</strong>'
.'</div>';
}
} else {
return parent::getLabel();
}
echo '<div style="clear:both;"></div>';
}
}
?>

View File

@ -0,0 +1,40 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('JPATH_BASE') or die;
jimport('joomla.form.formfield');
class JFormFieldPhocaInfoText extends JFormField
{
protected $type = 'PhocaInfoText';
protected function getInput()
{
$class = 'inputbox';
if ((string) $this->element['class'] != '') {
$class = $this->element['class'];
}
return '<div class="'.$class.'" style="padding-top:5px">'.$this->value.'</div>';
}
protected function getLabel()
{
echo '<div class="clearfix"></div>';
return parent::getLabel();
echo '<div class="clearfix"></div>';
}
}

View File

@ -0,0 +1,80 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('JPATH_BASE') or die;
jimport('joomla.form.formfield');
class JFormFieldPhocaLongText extends JFormField
{
protected $type = 'PhocaLongText';
protected $phocaParams = null;
protected function getInput() {
$document = JFactory::getDocument();
$option = JFactory::getApplication()->input->getCmd('option');
$globalValue = $this->_getPhocaParams( $this->element['name'] );
// Initialize some field attributes.
$size = $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
$class = $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : '';
$maxLength = $this->element['maxlength'] ? ' maxlength="'.(int) $this->element['maxlength'].'"' : '';
$readonly = ((string) $this->element['readonly'] == 'true') ? ' readonly="readonly"' : '';
$disabled = ((string) $this->element['disabled'] == 'true') ? ' disabled="disabled"' : '';
// Initialize JavaScript field attributes.
$onchange = $this->element['onchange'] ? ' onchange="'.(string) $this->element['onchange'].'"' : '';
$value = htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8');
// TODO 1.6
// MENU - Set Default value to "" because of saving "" value into the menu link ( use global = "")
if ($option == "com_menus") {
$DefaultValue = (string)$this->element['default'];
if ($value == $DefaultValue) {
$value = '';
}
}
// MENU - Display the global value
if ($option == "com_menus") {
$html ='<table><tr><td colspan="3"><input type="text" name="'.$this->name.'" id="'.$this->id.'" value="'.$value.'"'
.$class.$size.$disabled.$readonly.$onchange.$maxLength.'/></td></tr>';
$html .='<tr><td>[</td><td><input type="text" value="'. $globalValue .'" style="width:15em;border:1px solid #fff;background:#fff;" /></td><td>]</td></tr></table>';
} else {
$html ='<input type="text" name="'.$this->name.'" id="'.$this->id.'" value="'.$value.'"'
.$class.$size.$disabled.$readonly.$onchange.$maxLength.'/>';
}
return $html;
}
protected function getLabel() {
echo '<div class="clearfix"></div>';
return parent::getLabel();
echo '<div class="clearfix"></div>';
}
protected function _setPhocaParams(){
$component = 'com_phocadownload';
$paramsC = JComponentHelper::getParams($component) ;
$this->phocaParams = $paramsC;
}
protected function _getPhocaParams( $name ){
// Don't call sql query by every param item (it will be loaded only one time)
if (!$this->phocaParams) {
$params = $this->_setPhocaParams();
}
$globalValue = $this->phocaParams->get( $name, '' );
return $globalValue;
}
}
?>

View File

@ -0,0 +1,153 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('JPATH_BASE') or die;
use Joomla\CMS\Form\FormField;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper;
jimport('joomla.form.formfield');
class JFormFieldPhocaSelectFilename extends FormField
{
public $type = 'PhocaSelectFilename';
protected function getInput()
{
// Initialize variables.
$html = array();
$idA = 'phFileNameModal';
$onchange = (string) $this->element['onchange'];
//$size = ($v = $this->element['size']) ? ' size="' . $v . '"' : '';
//$class = ($v = $this->element['class']) ? ' class="' . $v . '"' : 'class="form-control"';
$required = ($v = $this->element['required']) ? ' required="required"' : '';
// Initialize some field attributes.
$attr = $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : 'form-control';
$attr .= $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
// Manager
$manager = $this->element['manager'] ? $this->element['manager'] : '';
$managerOutput = $this->element['manager'] ? '&amp;manager='.(string) $this->element['manager'] : '';
$idA .= 'mo' . $manager;
$group = PhocaDownloadSettings::getManagerGroup((string) $this->element['manager']);
$textButton = 'COM_PHOCADOWNLOAD_FORM_SELECT_'.strtoupper($group['t']);
$link = 'index.php?option=com_phocadownload&amp;view=phocadownloadmanager'.$group['c'].$managerOutput.'&amp;field='.$this->id;
HTMLHelper::_('jquery.framework');
$script = array();
$script[] = ' function phocaSelectFileName_'.$this->id.'(title) {';
$script[] = ' document.getElementById("'.$this->id.'").value = title;';
$script[] = ' '.$onchange;
//$script[] = ' jModalClose();';
$script[] = ' jQuery(\'#'.$idA.'\').modal(\'toggle\');';
//$script[] = ' SqueezeBox.close();';
//$script[] = ' jQuery(\'#'.$idA.'\').modal(\'toggle\');';
$script[] = ' }';
// Add the script to the document head.
Factory::getDocument()->addScriptDeclaration(implode("\n", $script));
$html[] = '<div class="input-append input-group">';
$html[] = '<span class="input-append input-group"><input type="text" id="' . $this->id . '" name="' . $this->name . '"'
. ' value="' . $this->value . '"' . $attr . ' />';
$html[] = '<a href="'.$link.'" role="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#'.$idA.'" title="' . Text::_($textButton) . '">'
. '<span class="icon-list icon-white"></span> '
. Text::_($textButton) . '</a></span>';
$html[] = '</div>'. "\n";
$html[] = HTMLHelper::_(
'bootstrap.renderModal',
$idA,
array(
'url' => $link,
'title' => Text::_($textButton),
'width' => '',
'height' => '',
'modalWidth' => '80',
'bodyHeight' => '80',
'footer' => '<div class="ph-info-modal"></div><button type="button" class="btn btn-primary" data-bs-dismiss="modal" aria-hidden="true">'
. Text::_('COM_PHOCADOWNLOAD_CLOSE') . '</button>'
)
);
return implode("\n", $html);
// Load the modal behavior script.
//JHtml::_('behavior.modal', 'a.modal_'.$this->id);
// Build the script.
/* $script = array();
$script[] = ' function phocaSelectFileName_'.$this->id.'(title) {';
$script[] = ' document.getElementById("'.$this->id.'_id").value = title;';
$script[] = ' '.$onchange;
$script[] = ' SqueezeBox.close();';
$script[] = ' }';
// Add the script to the document head.
Factory::getDocument()->addScriptDeclaration(implode("\n", $script));
*/
/*$html[] = '<div class="fltlft">';
$html[] = ' <input type="text" id="'.$this->id.'_id" name="'.$this->name.'" value="'. $this->value.'"' .
' '.$attr.' />';
$html[] = '</div>';
// Create the user select button.
$html[] = '<div class="button2-left">';
$html[] = ' <div class="blank">';
$html[] = ' <a class="modal_'.$this->id.'" title="'.Text::_($textButton).'"' .
' href="'.($this->element['readonly'] ? '' : $link).'"' .
' rel="{handler: \'iframe\', size: {x: 780, y: 560}}">';
$html[] = ' '.Text::_($textButton).'</a>';
$html[] = ' </div>';
$html[] = '</div>';*/
/* Factory::getDocument()->addScriptDeclaration('
function phocaSelectFileName_' . $this->id . '(name) {
document.getElementById("' . $this->id . '").value = name;
jQuery(\'#'.$idA.'\').modal(\'toggle\');
}
');*/
/*$html[] = '<span class="input-append"><input type="text" ' . $required . ' id="' . $this->id . '" name="' . $this->name . '"'
. ' value="' . $this->value . '"' . $size . $class . ' />';
$html[] = '<a href="#'.$idA.'" role="button" class="btn btn-primary" data-toggle="modal" title="' . Text::_($textButton) . '">'
. '<span class="icon-list icon-white"></span> '
. Text::_($textButton) . '</a></span>';
$html[] = HTMLHelper::_(
'bootstrap.renderModal',
$idA,
array(
'url' => $link,
'title' => Text::_($textButton),
'width' => '700px',
'height' => '400px',
'modalWidth' => '80',
'bodyHeight' => '70',
'footer' => '<button type="button" class="btn btn-primary" data-bs-dismiss="modal" aria-hidden="true">'
. Text::_('COM_PHOCADOWNLOAD_CLOSE') . '</button>'
)
);*/
}
}

View File

@ -0,0 +1,41 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\Form\FormField;
class JFormFieldPhocaTags extends FormField
{
protected $type = 'PhocaTags';
protected function getInput() {
$id = (int) $this->form->getValue('id');
$activeTags = array();
if ((int)$id > 0) {
$activeTags = PhocaDownloadTag::getTags($id, 1);
}
//return PhocaGalleryTag::getAllTagsSelectBox($this->name, $this->id, $activeTags, NULL,'id' );
$tags = PhocaDownloadTag::getAllTags();
$data = $this->getLayoutData();
$data['options'] = (array)$tags;
$data['value'] = $activeTags;
return $this->getRenderer($this->layout)->render($data);
}
}
?>

View File

@ -0,0 +1,75 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('JPATH_BASE') or die;
jimport('joomla.form.formfield');
class JFormFieldPhocaText extends JFormField
{
protected $type = 'PhocaText';
protected $phocaParams = null;
protected function getInput() {
$document = JFactory::getDocument();
$option = JFactory::getApplication()->input->getCmd('option');
$globalValue = $this->_getPhocaParams( $this->element['name'] );
// Initialize some field attributes.
$size = $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
$class = $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : '';
$maxLength = $this->element['maxlength'] ? ' maxlength="'.(int) $this->element['maxlength'].'"' : '';
$readonly = ((string) $this->element['readonly'] == 'true') ? ' readonly="readonly"' : '';
$disabled = ((string) $this->element['disabled'] == 'true') ? ' disabled="disabled"' : '';
// Initialize JavaScript field attributes.
$onchange = $this->element['onchange'] ? ' onchange="'.(string) $this->element['onchange'].'"' : '';
$value = htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8');
// TODO 1.6
// MENU - Set Default value to "" because of saving "" value into the menu link ( use global = "")
if ($option == "com_menus") {
$DefaultValue = (string)$this->element['default'];
if ($value == $DefaultValue) {
$value = '';
}
}
$html ='<input type="text" name="'.$this->name.'" id="'.$this->id.'" value="'.$value.'"'
.$class.$size.$disabled.$readonly.$onchange.$maxLength.'/>';
// MENU - Display the global value
if ($option == "com_menus") {
$html .= '<span style="margin-left:10px;">[</span><span style="background:#fff;"> ' . $globalValue . ' </span><span>]</span>';
}
return $html;
}
protected function getLabel() {
echo '<div class="clearfix"></div>';
return parent::getLabel();
echo '<div class="clearfix"></div>';
}
protected function _setPhocaParams(){
$component = 'com_phocadownload';
$paramsC = JComponentHelper::getParams($component) ;
$this->phocaParams = $paramsC;
}
protected function _getPhocaParams( $name ){
// Don't call sql query by every param item (it will be loaded only one time)
if (!$this->phocaParams) {
$params = $this->_setPhocaParams();
}
$globalValue = $this->phocaParams->get( $name, '' );
return $globalValue;
}
}
?>

View File

@ -0,0 +1,81 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('JPATH_BASE') or die;
jimport('joomla.form.formfield');
class JFormFieldPhocaTextArea extends JFormField
{
protected $type = 'PhocaTextArea';
protected $phocaParams = null;
protected function getInput() {
$document = JFactory::getDocument();
$option = JFactory::getApplication()->input->getCmd('option');
$globalValue = $this->_getPhocaParams( $this->element['name'] );
// Initialize some field attributes.
$class = $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : '';
$disabled = ((string) $this->element['disabled'] == 'true') ? ' disabled="disabled"' : '';
$columns = $this->element['cols'] ? ' cols="'.(int) $this->element['cols'].'"' : '';
$rows = $this->element['rows'] ? ' rows="'.(int) $this->element['rows'].'"' : '';
// Initialize JavaScript field attributes.
$onchange = $this->element['onchange'] ? ' onchange="'.(string) $this->element['onchange'].'"' : '';
$value = htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8');
// TODO 1.6
// MENU - Set Default value to "" because of saving "" value into the menu link ( use global = "")
if ($option == "com_menus") {
$DefaultValue = (string)$this->element['default'];
if ($value == $DefaultValue) {
$value = '';
}
}
// MENU - Display the global value
if ($option == "com_menus") {
$html ='<table><tr><td colspan="3"><textarea name="'.$this->name.'" id="'.$this->id.'"' .
$columns.$rows.$class.$disabled.$onchange.'>' .
$value .
'</textarea></td></tr>';
$html .='<tr><td>[</td><td><input type="text" value="'. $globalValue .'" style="width:15em;border:1px solid #fff;background:#fff;" /></td><td>]</td></tr></table>';
} else {
$html = '<textarea name="'.$this->name.'" id="'.$this->id.'"' .
$columns.$rows.$class.$disabled.$onchange.'>' .
$value .
'</textarea>';
}
return $html;
}
protected function getLabel() {
echo '<div class="clearfix"></div>';
return parent::getLabel();
echo '<div class="clearfix"></div>';
}
protected function _setPhocaParams(){
$component = 'com_phocadownload';
$paramsC = JComponentHelper::getParams($component) ;
$this->phocaParams = $paramsC;
}
protected function _getPhocaParams( $name ){
// Don't call sql query by every param item (it will be loaded only one time)
if (!$this->phocaParams) {
$params = $this->_setPhocaParams();
}
$globalValue = $this->phocaParams->get( $name, '' );
return $globalValue;
}
}
?>

View File

@ -0,0 +1,46 @@
<?php
/*
* @package Joomla.Framework
* @copyright Copyright (C) 2005 - 2010 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*
* @component Phoca Component
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License version 2 or later;
*/
defined('_JEXEC') or die();
use Joomla\CMS\Form\FormField;
use Joomla\CMS\Form\Field\ListField;
phocadownloadimport('phocadownload.user.user');
class JFormFieldPhocaUsers extends ListField
{
protected $type = 'PhocaUsers';
protected function getInput() {
$data = $this->getLayoutData();
$userId = (string) $this->form->getValue($this->element['name']);
$data['options'] = (array) PhocaDownloadUser::usersList($this->name, $this->id, $userId, 1, NULL,'name', 0, 1 );
$activeArray = $userId;
if ($userId != '') {
$activeArray = explode(',',$userId);
}
if (!empty($activeArray)) {
$data['value'] = $activeArray;
} else {
$data['value'] = $this->value;
}
return $this->getRenderer($this->layout)->render($data);
}
}
?>

View File

@ -0,0 +1,52 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<field name="published" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">JOPTION_SELECT_PUBLISHED</option>
<option value="1">COM_PHOCADOWNLOAD_PUBLISHED</option>
<option value="0">COM_PHOCADOWNLOAD_UNPUBLISHED</option>
</field>
<field name="level" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">COM_PHOCADOWNLOAD_SELECT_MAX_LEVELS_HEAD</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</field>
<field name="language" type="contentlanguage" label="JOPTION_FILTER_LANGUAGE" description="JOPTION_FILTER_LANGUAGE_DESC" onchange="this.form.submit();">
<option value="">JOPTION_SELECT_LANGUAGE</option>
<option value="*">JALL</option>
</field>
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.ordering ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option>
<option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option>
<option value="a.title ASC">JGLOBAL_TITLE_ASC</option>
<option value="a.title DESC">JGLOBAL_TITLE_DESC</option>
<option value="a.published ASC" >COM_PHOCADOWNLOAD_PUBLISHED_ASC</option>
<option value="a.published DESC" >COM_PHOCADOWNLOAD_PUBLISHED_DESC</option>
<option value="parentcat_title ASC">COM_PHOCADOWNLOAD_PARENT_CATEGORY_ASC</option>
<option value="parentcat_title DESC">COM_PHOCADOWNLOAD_PARENT_CATEGORY_DESC</option>
<option value="a.language ASC">JGRID_HEADING_LANGUAGE_ASC</option>
<option value="a.language DESC">JGRID_HEADING_LANGUAGE_DESC</option>
<option value="a.id ASC">JGRID_HEADING_ID_ASC</option>
<option value="a.id DESC">JGRID_HEADING_ID_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="username ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="username ASC">COM_PHOCADOWNLOAD_USER_ASC</option>
<option value="username DESC">COM_PHOCADOWNLOAD_USER_DESC</option>
<option value="a.count ASC">COM_PHOCADOWNLOAD_COUNT_ASC</option>
<option value="a.count DESC">COM_PHOCADOWNLOAD_COUNT_DESC</option>
<option value="filename ASC">COM_PHOCADOWNLOAD_FILENAME_ASC</option>
<option value="filename DESC">COM_PHOCADOWNLOAD_FILENAME_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<field name="published" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">JOPTION_SELECT_PUBLISHED</option>
<option value="1">COM_PHOCADOWNLOAD_PUBLISHED</option>
<option value="0">COM_PHOCADOWNLOAD_UNPUBLISHED</option>
</field>
<!--<field name="category_id" type="PhocaDownloadCategory" label="JOPTION_FILTER_CATEGORY" description="JOPTION_FILTER_CATEGORY_DESC" onchange="this.form.submit();" />-->
<field name="category_id" type="PhocaDownloadCategory" typemethod="filter" layout="joomla.form.field.list-fancy-select" label="JOPTION_FILTER_CATEGORY" description="JOPTION_FILTER_CATEGORY_DESC" onchange="this.form.submit();" class="js-select-submit-on-change" multiple="true" hint="JOPTION_SELECT_CATEGORY" />
<field name="language" type="contentlanguage" label="JOPTION_FILTER_LANGUAGE" description="JOPTION_FILTER_LANGUAGE_DESC" onchange="this.form.submit();">
<option value="">JOPTION_SELECT_LANGUAGE</option>
<option value="*">JALL</option>
</field>
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.id DESC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option>
<option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option>
<option value="a.title ASC">JGLOBAL_TITLE_ASC</option>
<option value="a.title DESC">JGLOBAL_TITLE_DESC</option>
<option value="a.filename ASC">COM_PHOCADOWNLOAD_FILENAME_ASC</option>
<option value="a.filename DESC">COM_PHOCADOWNLOAD_FILENAME_DESC</option>
<option value="a.published ASC" >COM_PHOCADOWNLOAD_PUBLISHED_ASC</option>
<option value="a.published DESC" >COM_PHOCADOWNLOAD_PUBLISHED_DESC</option>
<option value="a.approved ASC" >COM_PHOCADOWNLOAD_APPROVED_ASC</option>
<option value="a.approved DESC" >COM_PHOCADOWNLOAD_APPROVED_DESC</option>
<option value="category_id ASC">JCATEGORY_ASC</option>
<option value="category_id DESC">JCATEGORY_DESC</option>
<option value="uploadusername ASC">COM_PHOCADOWNLOAD_UPLOADED_BY_ASC</option>
<option value="uploadusername DESC">COM_PHOCADOWNLOAD_UPLOADED_BY_DESC</option>
<option value="a.owner_id ASC">COM_PHOCADOWNLOAD_OWNER_ASC</option>
<option value="a.owner_id DESC">COM_PHOCADOWNLOAD_OWNER_DESC</option>
<option value="a.hits ASC">COM_PHOCADOWNLOAD_DOWNLOADS_ASC</option>
<option value="a.hits DESC">COM_PHOCADOWNLOAD_DOWNLOADS_DESC</option>
<option value="a.date ASC">COM_PHOCADOWNLOAD_DATE_ASC</option>
<option value="a.date DESC">COM_PHOCADOWNLOAD_DATE_DESC</option>
<option value="a.language ASC">JGRID_HEADING_LANGUAGE_ASC</option>
<option value="a.language DESC">JGRID_HEADING_LANGUAGE_DESC</option>
<option value="a.id ASC">JGRID_HEADING_ID_ASC</option>
<option value="a.id DESC">JGRID_HEADING_ID_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<field name="published" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">JOPTION_SELECT_PUBLISHED</option>
<option value="1">COM_PHOCADOWNLOAD_PUBLISHED</option>
<option value="0">COM_PHOCADOWNLOAD_UNPUBLISHED</option>
</field>
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.title ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option>
<option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option>
<option value="a.title ASC">JGLOBAL_TITLE_ASC</option>
<option value="a.title DESC">JGLOBAL_TITLE_DESC</option>
<option value="a.published ASC" >COM_PHOCADOWNLOAD_PUBLISHED_ASC</option>
<option value="a.published DESC" >COM_PHOCADOWNLOAD_PUBLISHED_DESC</option>
<option value="a.id ASC">JGRID_HEADING_ID_ASC</option>
<option value="a.id DESC">JGRID_HEADING_ID_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<field name="type" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">COM_PHOCADOWNLOAD_FILTER_SELECT_TYPE_HEAD</option>
<option value="1">COM_PHOCADOWNLOAD_DOWNLOADS</option>
<option value="2">COM_PHOCADOWNLOAD_UPLOADS</option>
</field>
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="username ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option>
<option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option>
<option value="a.date ASC">COM_PHOCADOWNLOAD_DATE_ASC</option>
<option value="a.date DESC">COM_PHOCADOWNLOAD_DATE_DESC</option>
<option value="username ASC">COM_PHOCADOWNLOAD_USER_ASC</option>
<option value="username DESC">COM_PHOCADOWNLOAD_USER_DESC</option>
<option value="d.title ASC">JGLOBAL_TITLE_ASC</option>
<option value="d.title DESC">JGLOBAL_TITLE_DESC</option>
<option value="filename ASC">COM_PHOCADOWNLOAD_FILENAME_ASC</option>
<option value="filename DESC">COM_PHOCADOWNLOAD_FILENAME_DESC</option>
<option value="category_id ASC">JCATEGORY_ASC</option>
<option value="category_id DESC">JCATEGORY_DESC</option>
<option value="a.ip ASC">COM_PHOCADOWNLOAD_IP_ASC</option>
<option value="a.ip DESC">COM_PHOCADOWNLOAD_IP_DESC</option>
<option value="a.page ASC">COM_PHOCADOWNLOAD_PAGE_ASC</option>
<option value="a.page DESC">COM_PHOCADOWNLOAD_PAGE_DESC</option>
<option value="a.type ASC">COM_PHOCADOWNLOAD_TYPE_ASC</option>
<option value="a.type DESC">COM_PHOCADOWNLOAD_TYPE_DESC</option>
<option value="a.id ASC">JGRID_HEADING_ID_ASC</option>
<option value="a.id DESC">JGRID_HEADING_ID_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<!--<field name="published" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">JOPTION_SELECT_PUBLISHED</option>
<option value="1">COM_PHOCADOWNLOAD_PUBLISHED</option>
<option value="0">COM_PHOCADOWNLOAD_UNPUBLISHED</option>
</field> -->
<field name="category_id" type="PhocaDownloadCategory" label="JOPTION_FILTER_CATEGORY" description="JOPTION_FILTER_CATEGORY_DESC" onchange="this.form.submit();" />
<!--
<field name="language" type="contentlanguage" label="JOPTION_FILTER_LANGUAGE" description="JOPTION_FILTER_LANGUAGE_DESC" onchange="this.form.submit();">
<option value="">JOPTION_SELECT_LANGUAGE</option>
<option value="*">JALL</option>
</field> -->
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="ua.username ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="category_title ASC">COM_PHOCADOWNLOAD_CATEGORY_ASC</option>
<option value="category_title DESC">COM_PHOCADOWNLOAD_CATEGORY_DESC</option>
<option value="file_title ASC">COM_PHOCADOWNLOAD_FILENAME_ASC</option>
<option value="file_title DESC">COM_PHOCADOWNLOAD_FILENAME_DESC</option>
<option value="ua.username ASC">COM_PHOCADOWNLOAD_USER_ASC</option>
<option value="ua.username DESC">COM_PHOCADOWNLOAD_USER_DESC</option>
<option value="a.rating ASC">COM_PHOCADOWNLOAD_RATING_ASC</option>
<option value="a.rating DESC">COM_PHOCADOWNLOAD_RATING_DESC</option>
<option value="a.id ASC">JGRID_HEADING_ID_ASC</option>
<option value="a.id DESC">JGRID_HEADING_ID_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<!--<field name="published" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">JOPTION_SELECT_PUBLISHED</option>
<option value="1">COM_PHOCADOWNLOAD_PUBLISHED</option>
<option value="0">COM_PHOCADOWNLOAD_UNPUBLISHED</option>
</field>-->
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.title ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="a.title ASC">JGLOBAL_TITLE_ASC</option>
<option value="a.title DESC">JGLOBAL_TITLE_DESC</option>
<option value="a.filename ASC">COM_PHOCADOWNLOAD_FILENAME_ASC</option>
<option value="a.filename DESC">COM_PHOCADOWNLOAD_FILENAME_DESC</option>
<option value="a.hits ASC">COM_PHOCADOWNLOAD_DOWNLOADS_ASC</option>
<option value="a.hits DESC">COM_PHOCADOWNLOAD_DOWNLOADS_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,53 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<field name="published" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">JOPTION_SELECT_PUBLISHED</option>
<option value="1">COM_PHOCADOWNLOAD_PUBLISHED</option>
<option value="0">COM_PHOCADOWNLOAD_UNPUBLISHED</option>
</field>
<field name="category_id" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">COM_PHOCADOWNLOAD_FILTER_SELECT_TYPE_HEAD</option>
<option value="1">COM_PHOCADOWNLOAD_MAIN_CSS</option>
<option value="2">COM_PHOCADOWNLOAD_CUSTOM_CSS</option>
</field>
<!--<field name="language" type="contentlanguage" label="JOPTION_FILTER_LANGUAGE" description="JOPTION_FILTER_LANGUAGE_DESC" onchange="this.form.submit();">
<option value="">JOPTION_SELECT_LANGUAGE</option>
<option value="*">JALL</option>
</field>-->
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.title ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option>
<option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option>
<option value="a.title ASC">JGLOBAL_TITLE_ASC</option>
<option value="a.title DESC">JGLOBAL_TITLE_DESC</option>
<option value="a.filename ASC">COM_PHOCADOWNLOAD_FILENAME_ASC</option>
<option value="a.filename DESC">COM_PHOCADOWNLOAD_FILENAME_DESC</option>
<option value="a.published ASC" >COM_PHOCADOWNLOAD_PUBLISHED_ASC</option>
<option value="a.published DESC" >COM_PHOCADOWNLOAD_PUBLISHED_DESC</option>
<option value="a.type ASC" >COM_PHOCADOWNLOAD_TYPE_ASC</option>
<option value="a.type DESC" >COM_PHOCADOWNLOAD_TYPE_DESC</option>
<option value="a.language ASC">JGRID_HEADING_LANGUAGE_ASC</option>
<option value="a.language DESC">JGRID_HEADING_LANGUAGE_DESC</option>
<option value="a.id ASC">JGRID_HEADING_ID_ASC</option>
<option value="a.id DESC">JGRID_HEADING_ID_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<field name="published" type="list" label="JOPTION_FILTER_PUBLISHED" description="JOPTION_FILTER_PUBLISHED_DESC" onchange="this.form.submit();" >
<option value="">JOPTION_SELECT_PUBLISHED</option>
<option value="1">COM_PHOCADOWNLOAD_PUBLISHED</option>
<option value="0">COM_PHOCADOWNLOAD_UNPUBLISHED</option>
</field>
<!--
<field name="language" type="contentlanguage" label="JOPTION_FILTER_LANGUAGE" description="JOPTION_FILTER_LANGUAGE_DESC" onchange="this.form.submit();">
<option value="">JOPTION_SELECT_LANGUAGE</option>
<option value="*">JALL</option>
</field> -->
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.title ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option>
<option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option>
<option value="a.title ASC">JGLOBAL_TITLE_ASC</option>
<option value="a.title DESC">JGLOBAL_TITLE_DESC</option>
<option value="a.published ASC" >COM_PHOCADOWNLOAD_PUBLISHED_ASC</option>
<option value="a.published DESC" >COM_PHOCADOWNLOAD_PUBLISHED_DESC</option>
<option value="a.id ASC">JGRID_HEADING_ID_ASC</option>
<option value="a.id DESC">JGRID_HEADING_ID_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<fields name="filter">
<field name="search" type="text" inputmode="search" label="COM_PHOCADOWNLOAD_SEARCH" description="COM_PHOCADOWNLOAD_SEARCH" hint="JSEARCH_FILTER" />
<input type="hidden" name="form_submited" value="1"/>
</fields>
<fields name="list">
<field name="fullordering" type="list" label="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING" description="COM_PHOCADOWNLOAD_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="username ASC" validate="options" >
<option value="">JGLOBAL_SORT_BY</option>
<!--<option value="d.title ASC">JGLOBAL_TITLE_ASC</option>
<option value="d.title DESC">JGLOBAL_TITLE_DESC</option>
<option value="d.filename ASC">COM_PHOCADOWNLOAD_FILENAME_ASC</option>
<option value="d.filename DESC">COM_PHOCADOWNLOAD_FILENAME_DESC</option>
<option value="a.count ASC">COM_PHOCADOWNLOAD_COUNT_ASC</option>
<option value="a.count DESC">COM_PHOCADOWNLOAD_COUNT_DESC</option>-->
<option value="username ASC">COM_PHOCADOWNLOAD_USER_ASC</option>
<option value="username DESC">COM_PHOCADOWNLOAD_USER_DESC</option>
</field>
<field name="limit" type="limitbox" label="COM_PHOCADOWNLOAD_LIST_LIMIT" description="COM_PHOCADOWNLOAD_LIST_LIMIT_DESC" class="input-mini" default="25" onchange="this.form.submit();" />
</fields>
</fieldset>
</form>

View File

@ -0,0 +1 @@
<html><body></body></html>

View File

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<field name="id" type="text" default="0" label="JGLOBAL_FIELD_ID_LABEL" required="true" readonly="true" class="readonly" />
<field name="title" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_TITLE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TITLE_DESC" required="true" />
<field name="alias" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_ALIAS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ALIAS_DESC" />
<field name="project_name" type="text" class="form-control" size="128" label="COM_PHOCADOWNLOAD_FIELD_PROJECT_NAME_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PROJECT_NAME_DESC" />
<field name="parent_id" type="phocadownloadcategory" label="COM_PHOCADOWNLOAD_FIELD_PARENT_CATEGORY_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PARENT_CATEGORY_DESC" />
<field name="ordering" type="PhocaDownloadOrdering" table="category" class="form-select" label="COM_PHOCADOWNLOAD_FIELD_ORDERING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ORDERING_DESC" />
<field name="access" type="accesslevel" label="JFIELD_ACCESS_LABEL" description="JFIELD_ACCESS_DESC" class="form-select" size="1" />
<field name="accessuserid" type="phocausers" multiple="true" label="COM_PHOCADOWNLOAD_FIELD_ACCESS_RIGHTS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ACCESS_RIGHTS_DESC" size="1" layout="joomla.form.field.list-fancy-select" />
<field name="uploaduserid" type="phocausers" multiple="true" label="COM_PHOCADOWNLOAD_FIELD_UPLOAD_RIGHTS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_UPLOAD_RIGHTS_DESC" size="1" layout="joomla.form.field.list-fancy-select" />
<field name="deleteuserid" type="phocausers" multiple="true" label="COM_PHOCADOWNLOAD_FIELD_DELETE_RIGHTS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DELETE_RIGHTS_DESC" size="1" layout="joomla.form.field.list-fancy-select" />
<field name="image" type="phocaselectfilename" manager="image" label="COM_PHOCADOWNLOAD_FIELD_CATEGORY_IMAGE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CATEGORY_IMAGE_DESC" class="form-control" size="40" />
<field name="description" type="editor" buttons="true" hide="pagebreak,readmore" class="form-control" label="COM_PHOCADOWNLOAD_FIELD_DESCRIPTION_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_DESCRIPTION_DESC" />
<field name="metakey" type="textarea"
label="JField_Meta_Keywords_Label" description="JField_Meta_Keywords_Desc"
class="form-control" rows="3" cols="30" />
<field name="metadesc" type="textarea"
label="JField_Meta_Description_Label" description="JField_Meta_Description_Desc"
class="form-control" rows="3" cols="30" />
</fieldset>
<fieldset name="publish" label="COM_PHOCADOWNLOAD_GROUP_LABEL_PUBLISHING_DETAILS" >
<field name="published" type="list" label="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_DESC" class="form-select" size="1" default="1">
<option value="1">JPUBLISHED</option>
<option value="0">JUNPUBLISHED</option>
</field>
<field name="language" type="contentlanguage" label="JFIELD_LANGUAGE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_LANGUAGE_CATEGORY_DESC" class="form-select">
<option value="*">JALL</option>
</field>
<field name="date" type="Calendar" class="form-control" label="COM_PHOCADOWNLOAD_FIELD_DATE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DATE_DESC" showtime="true" filter="user_utc" translateformat="true" />
<!--
<field name="hits" type="Text" class="form-control" size="6" label="COM_PHOCADOWNLOAD_FIELD_HITS" description="COM_PHOCADOWNLOAD_FIELD_HITS_DESC" />
-->
</fieldset>
<fields name="metadata">
<fieldset name="metadata" label="JGLOBAL_FIELDSET_METADATA_OPTIONS">
<!--
<field name="robots" type="list"
label="JField_Metadata_Robots_Label" description="JField_Metadata_Robots_Desc"
>
<option value="">JGLOBAL_USE_GLOBAL</option>
<option value="0">JGLOBAL_INDEX_FOLLOW</option>
<option value="1">JGLOBAL_NOINDEX_FOLLOW</option>
<option value="2">JGLOBAL_INDEX_NOFOLLOW</option>
<option value="3">JGLOBAL_NOINDEX_NOFOLLOW</option>
<option value="4">JGLOBAL_NO_ROBOTS_TAG</option>
</field>
<field name="author" type="text" label="JAUTHOR"
description="JField_Metadata_Author_Desc" size="20" />
<field name="rights" type="text"
label="JFIELD_META_RIGHTS_LABEL" description="JFIELD_META_RIGHTS_DESC"
required="" filter="string" cols="30" rows="2" /> -->
</fieldset>
</fields>
</form>

View File

@ -0,0 +1,161 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<field name="id" type="text" default="0" label="JGLOBAL_FIELD_ID_LABEL" required="true" readonly="true" class="readonly" />
<field name="textonly" type="hidden" default="0" label="COM_PHOCADOWNLOAD_FIELD_TEXTONLY_LABEL" readonly="true" class="readonly" />
<field name="title" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_TITLE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TITLE_DESC" />
<field name="alias" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_ALIAS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ALIAS_DESC" />
<field name="project_name" type="text" class="form-control" size="128" label="COM_PHOCADOWNLOAD_FIELD_PROJECT_NAME_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PROJECT_NAME_DESC" />
<field name="catid" type="phocadownloadcategory" onchange="changeCatid()" label="COM_PHOCADOWNLOAD_FIELD_CATEGORY_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CATEGORY_DESC" required="true" />
<field name="ordering" type="PhocaDownloadOrdering" table="file" class="form-select" label="COM_PHOCADOWNLOAD_FIELD_ORDERING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ORDERING_DESC" />
<field name="filename" type="phocaselectfilename" manager="file" label="COM_PHOCADOWNLOAD_FIELD_FILENAME_LABEL" required="true" description="COM_PHOCADOWNLOAD_FIELD_FILENAME_DESC" class="form-control" size="40" />
<field name="filename_play" type="phocaselectfilename" manager="fileplay" label="COM_PHOCADOWNLOAD_FIELD_FILEPLAY_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FILEPLAY_DESC" class="form-control" size="40" />
<field name="filename_preview" type="phocaselectfilename" manager="filepreview" label="COM_PHOCADOWNLOAD_FIELD_FILEPREVIEW_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FILEPREVIEW_DESC" class="form-control" size="40" />
<field name="image_filename" type="phocaselectfilename" manager="icon" label="COM_PHOCADOWNLOAD_FIELD_ICON_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ICON_DESC" class="form-control" size="40" />
<field name="image_filename_spec1" type="phocaselectfilename" manager="iconspec1" label="COM_PHOCADOWNLOAD_FIELD_ICON_SPEC1_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ICON_SPEC1_DESC" class="form-control" size="40" />
<field name="image_filename_spec2" type="phocaselectfilename" manager="iconspec2" label="COM_PHOCADOWNLOAD_FIELD_ICON_SPEC2_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ICON_SPEC2_DESC" class="form-control" size="40" />
<field name="image_download" type="phocaselectfilename" manager="image" label="COM_PHOCADOWNLOAD_FIELD_IMAGE_DOWNLOAD_LABEL" description="COM_PHOCADOWNLOAD_FIELD_IMAGE_DOWNLOAD_DESC" class="form-control" size="40" />
<field name="version" type="text" label="COM_PHOCADOWNLOAD_FIELD_VERSION_LABEL" description="COM_PHOCADOWNLOAD_FIELD_VERSION_DESC" class="form-control" size="40" />
<field name="author_url" type="text" label="COM_PHOCADOWNLOAD_FIELD_AUTHOR_URL_LABEL" description="COM_PHOCADOWNLOAD_FIELD_AUTHOR_URL_DESC" class="form-control" size="40" />
<field name="author" type="text" label="COM_PHOCADOWNLOAD_FIELD_AUTHOR_LABEL" description="COM_PHOCADOWNLOAD_FIELD_AUTHOR_DESC" class="form-control" size="40" />
<field name="author_email" type="text" label="COM_PHOCADOWNLOAD_FIELD_AUTHOR_EMAIL_LABEL" description="COM_PHOCADOWNLOAD_FIELD_AUTHOR_EMAIL_DESC" class="form-control" size="40" />
<field name="license" type="text" label="COM_PHOCADOWNLOAD_FIELD_LICENSE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_LICENSE_DESC" class="form-control" size="40" />
<field name="license_url" type="text" label="COM_PHOCADOWNLOAD_FIELD_LICENSE_URL_LABEL" description="COM_PHOCADOWNLOAD_FIELD_LICENSE_URL_DESC" class="form-control" size="40" />
<field name="confirm_license" type="phocadownloadlicense" label="COM_PHOCADOWNLOAD_FIELD_CONFIRM_LICENSE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CONFIRM_LICENSE_DESC" class="form-control" size="40" />
<field name="directlink" type="list" label="COM_PHOCADOWNLOAD_FIELD_DIRECT_LINK_LABEL" default="0" description="COM_PHOCADOWNLOAD_FIELD_DIRECT_LINK_DESC" class="form-select" >
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="link_external" type="text" label="COM_PHOCADOWNLOAD_FIELD_EXTERNAL_LINK_LABEL" description="COM_PHOCADOWNLOAD_FIELD_EXTERNAL_LINK_DESC" class="form-control" size="40" />
<field name="access" type="accesslevel" label="JFIELD_ACCESS_LABEL" description="JFIELD_ACCESS_DESC" class="form-select" size="1" />
<field name="unaccessible_file" type="list" label="COM_PHOCADOWNLOAD_FIELD_DISPLAY_INACCESSIBLE_FILE_LABEL" default="0" description="COM_PHOCADOWNLOAD_FIELD_DISPLAY_INACCESSIBLE_FILE_DESC" class="form-select" >
<option value="1">COM_PHOCADOWNLOAD_YES</option>
<option value="0">COM_PHOCADOWNLOAD_NO</option>
</field>
<field name="userid" type="user" section="com_phocadownload" default="" label="COM_PHOCADOWNLOAD_FIELD_UPLOADED_BY_LABEL" description="COM_PHOCADOWNLOAD_FIELD_UPLOADED_BY_DESC"/>
<field name="owner_id" type="user" section="com_phocadownload" default="" label="COM_PHOCADOWNLOAD_FIELD_OWNER_LABEL" description="COM_PHOCADOWNLOAD_FIELD_OWNER_DESC"/>
<field name="mirror1link" type="Text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_MIRROR_LINK_LINK_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MIRROR_LINK_LINK_DESC" />
<field name="mirror1title" type="Text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_MIRROR_LINK_TITLE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MIRROR_LINK_TITLE_DESC" />
<field name="mirror1target" type="list" class="form-select" label="COM_PHOCADOWNLOAD_MIRROR_LINK_TARGET_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MIRROR_LINK_TARGET_DESC" default="_self" >
<option value="_self">COM_PHOCADOWNLOAD_OPEN_WINDOW_SELF</option>
<option value="_blank">COM_PHOCADOWNLOAD_OPEN_WINDOW_BLANK</option>
<option value="_parent">COM_PHOCADOWNLOAD_OPEN_WINDOW_PARENT</option>
<option value="_top">COM_PHOCADOWNLOAD_OPEN_WINDOW_TOP</option>
</field>
<field name="mirror2link" type="Text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_MIRROR_LINK_LINK2_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MIRROR_LINK_LINK2_DESC" />
<field name="mirror2title" type="Text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_MIRROR_LINK_TITLE2_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MIRROR_LINK_TITLE2_DESC" />
<field name="mirror2target" type="list" class="form-select" label="COM_PHOCADOWNLOAD_MIRROR_LINK_TARGET2_LABEL" description="COM_PHOCADOWNLOAD_FIELD_MIRROR_LINK_TARGET2_DESC" default="_self" >
<option value="_self">COM_PHOCADOWNLOAD_OPEN_WINDOW_SELF</option>
<option value="_blank">COM_PHOCADOWNLOAD_OPEN_WINDOW_BLANK</option>
<option value="_parent">COM_PHOCADOWNLOAD_OPEN_WINDOW_PARENT</option>
<option value="_top">COM_PHOCADOWNLOAD_OPEN_WINDOW_TOP</option>
</field>
<field name="video_filename" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_VIDEO_LINK_LABEL" description="COM_PHOCADOWNLOAD_VIDEO_LINK_DESC" />
<field name="description" type="editor" buttons="true" filter="\Joomla\CMS\Component\ComponentHelper::filterText" label="COM_PHOCADOWNLOAD_FIELD_DESCRIPTION_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DESCRIPTION_DESC" />
<field name="features" type="editor" buttons="true" label="COM_PHOCADOWNLOAD_FIELD_FEATURES_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_FEATURES_DESC" />
<field name="changelog" type="editor" buttons="true" label="COM_PHOCADOWNLOAD_FIELD_CHANGELOG_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_CHANGELOG_DESC" />
<field name="notes" type="editor" buttons="true" label="COM_PHOCADOWNLOAD_FIELD_NOTES_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_NOTES_DESC" />
<field name="metakey" type="textarea"
label="JField_Meta_Keywords_Label" description="JField_Meta_Keywords_Desc"
class="form-control" rows="3" cols="30" />
<field name="metadesc" type="textarea"
label="JField_Meta_Description_Label" description="JField_Meta_Description_Desc"
class="form-control" rows="3" cols="30" />
</fieldset>
<fieldset name="publish" label="COM_PHOCADOWNLOAD_GROUP_LABEL_PUBLISHING_DETAILS" >
<field name="published" type="list" label="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_DESC" class="form-select" size="1" default="1">
<option value="1">JPUBLISHED</option>
<option value="0">JUNPUBLISHED</option>
</field>
<field name="approved" type="list" label="COM_PHOCADOWNLOAD_FIELD_APPROVED_LABEL" description="COM_PHOCADOWNLOAD_FIELD_APPROVED_DESC" class="form-select" size="1" default="1">
<option value="1">COM_PHOCADOWNLOAD_APPROVED</option>
<option value="0">COM_PHOCADOWNLOAD_NOT_APPROVED</option>
</field>
<field name="language" type="contentlanguage" label="JFIELD_LANGUAGE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_LANGUAGE_FILE_DESC" class="form-select">
<option value="*">JALL</option>
</field>
<field name="date" type="Calendar" class="form-control" label="COM_PHOCADOWNLOAD_FIELD_DATE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DATE_DESC" showtime="true" filter="user_utc" translateformat="true" />
<field name="publish_up" type="Calendar" class="form-control" label="COM_PHOCADOWNLOAD_FIELD_START_PUBLISHING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_START_PUBLISHING_DESC" showtime="true" filter="user_utc" translateformat="true" />
<field name="publish_down" type="Calendar" class="form-control" label="COM_PHOCADOWNLOAD_FIELD_FINISH_PUBLISHING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_FINISH_PUBLISHING_DESC" showtime="true" filter="user_utc" translateformat="true" />
<field name="hits" type="Text" class="form-control" size="6" label="COM_PHOCADOWNLOAD_FIELD_DOWNLOADS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DOWNLOADS_DESC" />
<field name="tags" type="phocatags" multiple="1" label="COM_PHOCADOWNLOAD_FIELD_TAGS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TAGS_DESC" layout="joomla.form.field.list-fancy-select" size="1" />
<field name="tags_string" type="text" label="COM_PHOCADOWNLOAD_FIELD_TAGS_STRING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TAGS_STRING_DESC" class="form-control" size="1" />
<field name="token" type="phocadownloadtoken" label="COM_PHOCADOWNLOAD_FIELD_TOKEN_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TOKEN_DESC" class="form-control" size="40" />
<field name="tokenhits" type="text" label="COM_PHOCADOWNLOAD_FIELD_TOKENHITS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TOKENHITS_DESC" class="form-control" size="40" />
</fieldset>
<fields name="metadata">
<fieldset name="metadata" label="JGLOBAL_FIELDSET_METADATA_OPTIONS">
<!--
<field name="robots" type="list"
label="JField_Metadata_Robots_Label" description="JField_Metadata_Robots_Desc"
>
<option value="">JGLOBAL_USE_GLOBAL</option>
<option value="0">JGLOBAL_INDEX_FOLLOW</option>
<option value="1">JGLOBAL_NOINDEX_FOLLOW</option>
<option value="2">JGLOBAL_INDEX_NOFOLLOW</option>
<option value="3">JGLOBAL_NOINDEX_NOFOLLOW</option>
<option value="4">JGLOBAL_NO_ROBOTS_TAG</option>
</field>
<field name="author" type="text" label="JAUTHOR"
description="JField_Metadata_Author_Desc" size="20" />
<field name="rights" type="text"
label="JFIELD_META_RIGHTS_LABEL" description="JFIELD_META_RIGHTS_DESC"
required="" filter="string" cols="30" rows="2" /> -->
</fieldset>
</fields>
</form>

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<field name="id" type="text" default="0" label="JGLOBAL_FIELD_ID_LABEL" required="true" readonly="true" class="readonly" />
<field name="categories" type="editor" height="400" buttons="true" hide="pagebreak,readmore" label="COM_PHOCADOWNLOAD_FIELD_CATEGORIES_LAYOUT_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_CATEGORIES_LAYOUT_DESC" />
<field name="category" type="editor" height="400" buttons="true" hide="pagebreak,readmore" label="COM_PHOCADOWNLOAD_FIELD_CATEGORY_LAYOUT_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_CATEGORY_LAYOUT_DESC" />
<field name="file" type="editor" height="400" buttons="true" hide="pagebreak,readmore" label="COM_PHOCADOWNLOAD_FIELD_FILE_LAYOUT_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_FILE_LAYOUT_DESC" />
</fieldset>
</form>

View File

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<field name="id" type="text" default="0" label="JGLOBAL_FIELD_ID_LABEL" required="true" readonly="true" class="readonly" />
<field name="title" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_TITLE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TITLE_DESC" required="true" />
<field name="alias" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_ALIAS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ALIAS_DESC" />
<field name="ordering" type="PhocaDownloadOrdering" table="file" class="form-select" label="COM_PHOCADOWNLOAD_FIELD_ORDERING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ORDERING_DESC" />
<field name="description" type="editor" buttons="true" hide="pagebreak,readmore" label="COM_PHOCADOWNLOAD_FIELD_LICENSE_TEXT_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_LICENSE_TEXT_DESC" />
</fieldset>
<fieldset name="publish" label="COM_PHOCADOWNLOAD_GROUP_LABEL_PUBLISHING_DETAILS" >
<field name="published" type="list" label="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_DESC" class="form-select" size="1" default="1">
<option value="1">JPUBLISHED</option>
<option value="0">JUNPUBLISHED</option>
</field>
</fieldset>
</form>

View File

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<field name="title" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_TITLE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TITLE_M_DESC" />
<field name="alias" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_ALIAS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ALIAS_M_DESC" />
<field name="catid" type="phocadownloadcategory" label="COM_PHOCADOWNLOAD_FIELD_CATEGORY_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CATEGORY_DESC" />
<field name="published" type="list" label="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_DESC" class="form-select" size="1" default="1">
<option value="1">JPUBLISHED</option>
<option value="0">JUNPUBLISHED</option>
</field>
<field name="approved" type="list" label="COM_PHOCADOWNLOAD_FIELD_APPROVED_LABEL" description="COM_PHOCADOWNLOAD_FIELD_APPROVED_DESC" class="form-select" size="1" default="1">
<option value="1">COM_PHOCADOWNLOAD_APPROVED</option>
<option value="0">COM_PHOCADOWNLOAD_NOT_APPROVED</option>
</field>
<field name="language" type="contentlanguage" label="JFIELD_LANGUAGE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_LANGUAGE_FILE_DESC" class="form-select">
<option value="*">JALL</option>
</field>
<!--
<field name="pap_copy_m" type="list" label="COM_PHOCADOWNLOAD_FIELD_COPY_PAP_LABEL" description="COM_PHOCADOWNLOAD_FIELD_COPY_PAP_DESC" class="form-control" size="1" default="0">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>-->
</fieldset>
</form>

View File

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<field name="id" type="text" default="0" label="JGLOBAL_FIELD_ID_LABEL" required="true" readonly="true" class="readonly" />
<field name="title" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_TITLE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TITLE_DESC" required="true" />
<field name="alias" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_ALIAS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ALIAS_DESC" />
<field name="type" type="hidden" default="0" label="COM_PHOCADOWNLOAD_FIELD_TYPE_LABEL" required="true" readonly="true" class="readonly" />
<field name="typeoutput" type="text" default="COM_PHOCADOWNLOAD_CUSTOM_CSS" label="COM_PHOCADOWNLOAD_FIELD_TYPE_LABEL" required="true" readonly="true" class="readonly" />
<field name="filename" type="text" default="" label="COM_PHOCADOWNLOAD_FIELD_FILENAME_LABEL" readonly="true" class="readonly" />
<field name="ordering" type="phocadownloadOrdering" table="styles" class="form-select" label="COM_PHOCADOWNLOAD_FIELD_ORDERING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ORDERING_DESC" />
<field name="source" type="editor" editor="codemirror|none" buttons="no" label="COM_PHOCADOWNLOAD_FIELD_CSS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CSS_DESC" filter="raw" height="400" />
</fieldset>
<fieldset name="publish" label="COM_PHOCADOWNLOAD_GROUP_LABEL_PUBLISHING_DETAILS" >
<field name="published" type="list" label="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_DESC" class="form-select" size="1" default="1">
<option value="1">JPUBLISHED</option>
<option value="0">JUNPUBLISHED</option>
</field>
<field name="menulink" type="text" default="" label="COM_PHOCADOWNLOAD_FIELD_CSS_MENULINK_ID_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CSS_MENULINK_ID_DESC" />
</fieldset>
</form>

View File

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<form>
<fieldset addfieldpath="/administrator/components/com_phocadownload/models/fields">
<field name="id" type="text" default="0" label="JGLOBAL_FIELD_ID_LABEL" required="true" readonly="true" class="readonly" />
<field name="title" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_TITLE_LABEL" description="COM_PHOCADOWNLOAD_FIELD_TITLE_DESC" required="true" />
<field name="alias" type="text" class="form-control" size="40" label="COM_PHOCADOWNLOAD_FIELD_ALIAS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ALIAS_DESC" />
<field name="link_cat" type="phocadownloadcategory" label="COM_PHOCADOWNLOAD_FIELD_CATEGORY_LINK_LABEL" description="COM_PHOCADOWNLOAD_FIELD_CATEGORY_LINK_DESC" />
<field name="link_ext" type="text" label="COM_PHOCADOWNLOAD_FIELD_EXT_LINK_TAG_LABEL" description="COM_PHOCADOWNLOAD_FIELD_EXT_LINK_TAG_DESC" class="form-control" size="40" />
<field name="ordering" type="PhocaDownloadOrdering" table="tag" class="form-select" label="COM_PHOCADOWNLOAD_FIELD_ORDERING_LABEL" description="COM_PHOCADOWNLOAD_FIELD_ORDERING_DESC" />
<field name="description" type="editor" buttons="true" hide="pagebreak,readmore" class="form-control" label="COM_PHOCADOWNLOAD_FIELD_DESCRIPTION_LABEL" filter="\Joomla\CMS\Component\ComponentHelper::filterText" description="COM_PHOCADOWNLOAD_FIELD_DESCRIPTION_DESC" />
</fieldset>
<fieldset name="publish" label="COM_PHOCADOWNLOAD_GROUP_LABEL_PUBLISHING_DETAILS" >
<field name="published" type="list" label="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_LABEL" description="COM_PHOCADOWNLOAD_FIELD_PUBLISHED_DESC" class="form-select" size="1" default="1">
<option value="1">JPUBLISHED</option>
<option value="0">JUNPUBLISHED</option>
</field>
</fieldset>
</form>

View File

@ -0,0 +1 @@
<html><body bgcolor="#FFFFFF"></body></html>

Some files were not shown because too many files have changed in this diff Show More