Version 3.2.3

This commit is contained in:
Neo committed 2025-12-19 00:34:03 -08:00
1 parent ae5c01cc78
commit 78706903a2
2641 files changed
+228363 -201264

No files matched your search

@@ -1,31 +1,14 @@
<?php
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* Default section for attachments module
* Last Updated: $LastChangedDate: 2010-01-15 10:18:44 -0500 (Fri, 15 Jan 2010) $
* </pre>
*
* @author $Author: bfarber $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @package IP.Board
* @subpackage Forums
* @link http://www.invisionpower.com
* @file defaultSection.php Define the default section for the 'attachments' module
*~TERABYTE_DOC_READY~
* $Copyright: (c) 2001 - 2011 Invision Power Services, Inc.$
* $License: This is NULLED!
* $Author: ips_terabyte $
* @since 14th May 2003
* @version $Rev: 5713 $
* $LastChangedDate: 2011-05-05 12:40:49 -0400 (Thu, 05 May 2011) $
* @version v3.2.3
* $Revision: 8655 $
*/
if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded all the relevant files.";
exit();
}
/**
* Very simply returns the default section if one is not
* passed in the URL
*/
$DEFAULT_SECTION = 'types';
@@ -5,6 +5,6 @@
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
<a href="http://www.invisionpower.com">IP.Board</a>
</body>
</html>
@@ -2,19 +2,19 @@
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* IP.Board v3.2.3
* Attachments: Search
* Last Updated: $LastChangedDate: 2010-10-01 20:18:21 -0400 (Fri, 01 Oct 2010) $
* Last Updated: $LastChangedDate: 2011-05-05 07:03:47 -0400 (Thu, 05 May 2011) $
* </pre>
*
* @author $Author: bfarber $
* @author $Author: ips_terabyte $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @license This is NULLED!
* @package IP.Board
* @subpackage Forums
* @link http://www.invisionpower.com
* @link http://hatynka.in
* @since Mon 24th May 2004
* @version $Rev: 6937 $
* @version $Rev: 8644 $
*/
if ( ! defined( 'IN_ACP' ) )
@@ -28,33 +28,29 @@ class admin_forums_attachments_search extends ipsCommand
/**
* Skin object
*
* @access private
* @var object Skin templates
*/
private $html;
protected $html;
/**
* Shortcut for url
*
* @access private
* @var string URL shortcut
*/
private $form_code;
protected $form_code;
/**
* Shortcut for url (javascript)
*
* @access private
* @var string JS URL shortcut
*/
private $form_code_js;
protected $form_code_js;
/**
* Main class entry point
*
* @access public
* @param object ipsRegistry reference
* @return void [Outputs to screen]
* @return @e void [Outputs to screen]
*/
public function doExecute( ipsRegistry $registry )
{
@@ -103,10 +99,9 @@ class admin_forums_attachments_search extends ipsCommand
/**
* Bulk remove attachments
*
* @access private
* @return void [Outputs to screen]
* @return @e void [Outputs to screen]
*/
private function _bulkRemoveAttachments()
protected function _bulkRemoveAttachments()
{
foreach ( $_POST as $key => $value )
{
@@ -166,7 +161,7 @@ class admin_forums_attachments_search extends ipsCommand
// Recount topic upload marker
//-----------------------------------------
require_once( IPSLib::getAppDir('forums') . '/sources/classes/post/classPost.php' );
require_once( IPSLib::getAppDir('forums') . '/sources/classes/post/classPost.php' );/*noLibHook*/
$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'forums' ) . '/sources/classes/post/classPostForms.php', 'classPostForms', 'forums' );
$postlib = new $classToLoad( $this->registry );
@@ -210,10 +205,9 @@ class admin_forums_attachments_search extends ipsCommand
/**
* Attachment search results
*
* @access private
* @return void [Outputs to screen]
* @return @e void [Outputs to screen]
*/
private function _searchResults()
protected function _searchResults()
{
$show = intval($this->request['show']);
$show = $show > 100 ? 100 : $show;
@@ -323,10 +317,9 @@ class admin_forums_attachments_search extends ipsCommand
/**
* Show attachment search form
*
* @access private
* @return void [Outputs to screen]
* @return @e void [Outputs to screen]
*/
private function _searchForm()
protected function _searchForm()
{
$gt_array = array( 0 => array( 'gt', $this->lang->words['se_morethan'] ), 1 => array( 'lt', $this->lang->words['se_lessthan'] ) );
@@ -2,19 +2,19 @@
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* IP.Board v3.2.3
* Attachments: Stats
* Last Updated: $LastChangedDate: 2010-02-18 20:29:54 -0500 (Thu, 18 Feb 2010) $
* Last Updated: $LastChangedDate: 2011-05-05 07:03:47 -0400 (Thu, 05 May 2011) $
* </pre>
*
* @author $Author: josh $
* @author $Author: ips_terabyte $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @license This is NULLED!
* @package IP.Board
* @subpackage Forums
* @link http://www.invisionpower.com
* @link http://hatynka.in
* @since Mon 24th May 2004
* @version $Rev: 5855 $
* @version $Rev: 8644 $
*/
if ( ! defined( 'IN_ACP' ) )
@@ -25,28 +25,18 @@ if ( ! defined( 'IN_ACP' ) )
class admin_forums_attachments_stats extends ipsCommand
{
/**
* Image directory
*
* @access private
* @var string
*/
private $image_dir = '';
/**
* HTML object
*
* @access private
* @var object
*/
private $html;
protected $html;
/**
* Main execution point
*
* @access public
* @param object ipsRegistry reference
* @return void
* @return @e void
*/
public function doExecute( ipsRegistry $registry )
{
@@ -56,10 +46,7 @@ class admin_forums_attachments_stats extends ipsCommand
$this->html->form_code_js = 'module=attachments&amp;section=stats&amp;';
$this->lang->loadLanguageFile( array( 'admin_attachments' ) );
/* Image Set */
$this->image_dir = $this->registry->output->skin['set_image_dir'];
//-----------------------------------------
// StRT!
//-----------------------------------------
@@ -82,15 +69,14 @@ class admin_forums_attachments_stats extends ipsCommand
/**
* Shows attachment statistics
*
* @access public
* @return void
**/
* @return @e void
*/
public function attachmentStatsOverview()
{
/* Get attachment Types */
$cache['attachtypes'] = array();
$this->DB->build( array( 'select' => 'atype_extension,atype_mimetype,atype_post,atype_photo,atype_img', 'from' => 'attachments_type', 'where' => "atype_photo=1 OR atype_post=1" ) );
$this->DB->build( array( 'select' => 'atype_extension,atype_mimetype,atype_post,atype_img', 'from' => 'attachments_type', 'where' => "atype_post=1" ) );
$this->DB->execute();
while ( $r = $this->DB->fetch() )
@@ -2,19 +2,19 @@
/**
* <pre>
* Invision Power Services
* IP.Board v3.1.4
* IP.Board v3.2.3
* Attachments: Manage
* Last Updated: $LastChangedDate: 2010-06-28 20:04:10 -0400 (Mon, 28 Jun 2010) $
* Last Updated: $LastChangedDate: 2011-06-23 12:03:27 -0400 (Thu, 23 Jun 2011) $
* </pre>
*
* @author $Author: bfarber $
* @author $Author: mmecham $
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
* @license http://www.invisionpower.com/community/board/license.html
* @license This is NULLED!
* @package IP.Board
* @subpackage Forums
* @link http://www.invisionpower.com
* @link http://hatynka.in
* @since Mon 24th May 2004
* @version $Rev: 6584 $
* @version $Rev: 9081 $
*/
if ( ! defined( 'IN_ACP' ) )
@@ -25,28 +25,18 @@ if ( ! defined( 'IN_ACP' ) )
class admin_forums_attachments_types extends ipsCommand
{
/**
* Image directory
*
* @access private
* @var string
*/
private $image_dir = '';
/**
* HTML object
*
* @access private
* @var object
*/
private $html;
protected $html;
/**
* Main execution point
*
* @access public
* @param object ipsRegistry reference
* @return void
* @return @e void
*/
public function doExecute( ipsRegistry $registry )
{
@@ -56,10 +46,7 @@ class admin_forums_attachments_types extends ipsCommand
$this->html->form_code_js = 'module=attachments&amp;section=types&amp;';
$this->lang->loadLanguageFile( array( 'admin_attachments' ) );
/* Image Set */
$this->image_dir = $this->registry->output->skin['set_image_dir'];
//-----------------------------------------
// StRT!
//-----------------------------------------
@@ -103,6 +90,7 @@ class admin_forums_attachments_types extends ipsCommand
case 'overview':
default:
$this->registry->getClass('class_permissions')->checkPermissionAutoMsg( 'mime_view' );
$this->attachmentTypesOverview();
break;
}
@@ -115,9 +103,8 @@ class admin_forums_attachments_types extends ipsCommand
/**
* Imports attachment types from an xml document
*
* @access public
* @return void
**/
* @return @e void
*/
public function attachmentTypeImport()
{
/* Get the XML Content */
@@ -131,11 +118,10 @@ class admin_forums_attachments_types extends ipsCommand
}
/* Get the XML class */
require_once( IPS_KERNEL_PATH.'class_xml.php' );
$xml = new class_xml();
/* Parse the XML document */
$xml->xml_parse_document( $content );
require_once( IPS_KERNEL_PATH.'classXML.php' );/*noLibHook*/
$xml = new classXML( IPS_DOC_CHAR_SET );
$xml->loadXML( $content );
/* Get a list of the types already installed */
$types = array();
@@ -149,24 +135,25 @@ class admin_forums_attachments_types extends ipsCommand
}
/* Loop through the xml document and insert new types */
foreach( $xml->xml_array['attachtypesexport']['attachtypesgroup']['attachtype'] as $entry )
foreach( $xml->fetchElements('attachtype') as $record )
{
$entry = $xml->fetchElementsFromRecord( $record );
/* Build the insert array */
$insert_array = array( 'atype_extension' => $entry['atype_extension']['VALUE'],
'atype_mimetype' => $entry['atype_mimetype']['VALUE'],
'atype_post' => $entry['atype_post']['VALUE'],
'atype_photo' => $entry['atype_photo']['VALUE'],
'atype_img' => $entry['atype_img']['VALUE']
$insert_array = array( 'atype_extension' => $entry['atype_extension'],
'atype_mimetype' => $entry['atype_mimetype'],
'atype_post' => $entry['atype_post'],
'atype_img' => $entry['atype_img']
);
/* Bypass if this type has already been added */
if ( $types[ $entry['atype_extension']['VALUE'] ] )
if ( $types[ $entry['atype_extension'] ] )
{
continue;
}
/* Insert the new type */
if ( $entry['atype_extension']['VALUE'] and $entry['atype_mimetype']['VALUE'] )
if ( $entry['atype_extension'] and $entry['atype_mimetype'] )
{
$this->DB->insert( 'attachments_type', $insert_array );
}
@@ -182,27 +169,28 @@ class admin_forums_attachments_types extends ipsCommand
/**
* Builds the attachment type xml export
*
* @access public
* @return void
**/
* @return @e void
*/
public function attachmentTypeExport()
{
/* Get XML Class */
require_once( IPS_KERNEL_PATH.'class_xml.php' );
$xml = new class_xml();
//-----------------------------------------
// Get xml class
//-----------------------------------------
/* Set the root of the XML document */
$xml->xml_set_root( 'attachtypesexport' );
/* Add the attachment type group */
$xml->xml_add_group( 'attachtypesgroup' );
require_once( IPS_KERNEL_PATH.'classXML.php' );/*noLibHook*/
$xml = new classXML( IPS_DOC_CHAR_SET );
$xml->newXMLDocument();
$xml->addElement( 'attachtypesexport' );
$xml->addElement( 'attachtypesgroup', 'attachtypesexport' );
/* Query the attachment Types */
$this->DB->build( array(
'select' => 'atype_extension,atype_mimetype,atype_post,atype_photo,atype_img',
'from' => 'attachments_type',
'order' => "atype_extension"
) );
'select' => 'atype_extension,atype_mimetype,atype_post,atype_img',
'from' => 'attachments_type',
'order' => "atype_extension"
) );
$this->DB->execute();
/* Loop through the types */
@@ -210,33 +198,18 @@ class admin_forums_attachments_types extends ipsCommand
while( $r = $this->DB->fetch() )
{
/* INI */
$content = array();
/* Build the tag */
foreach ( $r as $k => $v )
{
$content[] = $xml->xml_build_simple_tag( $k, $v );
}
/* Add to the entry */
$entry[] = $xml->xml_build_entry( 'attachtype', $content );
$xml->addElementAsRecord( 'attachtypesgroup', 'attachtype', $r );
}
/* Add entries to the group and build the document */
$xml->xml_add_entry_to_group( 'attachtypesgroup', $entry );
$xml->xml_format_document();
/* Send for download */
$this->registry->output->showDownload( $xml->xml_document, 'attachments.xml', "unknown/unknown", false );
$this->registry->output->showDownload( $xml->fetchDocument(), 'attachments.xml', "unknown/unknown", false );
}
/**
* Removes the specified attachment type
*
* @access public
* @return void
**/
* @return @e void
*/
public function attachmentTypeDelete()
{
/* INI */
@@ -255,10 +228,9 @@ class admin_forums_attachments_types extends ipsCommand
/**
* Processes the from for adding/editing attachments
*
* @access public
* @param string $type Either add or edit
* @return void
**/
* @return @e void
*/
public function attachmentTypeSave( $type='add' )
{
/* INI */
@@ -274,11 +246,9 @@ class admin_forums_attachments_types extends ipsCommand
/* Build the save array */
$save_array = array( 'atype_extension' => str_replace( ".", "", $this->request['atype_extension'] ),
'atype_mimetype' => $this->request['atype_mimetype'],
'atype_post' => $this->request['atype_post'],
'atype_photo' => $this->request['atype_photo'],
'atype_img' => $this->request['atype_img']
);
'atype_mimetype' => trim( $this->request['atype_mimetype'] ),
'atype_post' => trim( $this->request['atype_post'] ),
'atype_img' => trim( $this->request['atype_img'] ) );
/* Add attachment type to the database */
if ( $type == 'add' )
@@ -290,6 +260,7 @@ class admin_forums_attachments_types extends ipsCommand
{
$this->registry->output->global_message = sprintf( $this->lang->words['ty_already'], $save_array['atype_extension'] );
$this->attachmentTypeForm($type);
return;
}
/* Insert the attachment type */
@@ -316,15 +287,14 @@ class admin_forums_attachments_types extends ipsCommand
/**
* Displays the form for adding/editing attachment types
*
* @access public
* @param string $type Either add or edit
* @return void
**/
* @return @e void
*/
public function attachmentTypeForm( $type='add' )
{
/* INI */
$this->request[ 'id'] = $this->request['id'] ? intval( $this->request['id'] ) : 0;
$this->request[ 'baseon'] = $this->request['baseon'] ? intval( $this->request['baseon'] ) : 0;
$this->request['id'] = $this->request['id'] ? intval( $this->request['id'] ) : 0;
$this->request['baseon'] = $this->request['baseon'] ? intval( $this->request['baseon'] ) : 0;
/* Navigation */
$this->registry->output->nav[] = array( '', $this->lang->words['ty_addedit'] );
@@ -352,7 +322,6 @@ class admin_forums_attachments_types extends ipsCommand
$attach = array( 'atype_extension' => '',
'atype_mimetype' => '',
'atype_post' => '',
'atype_photo' => '',
'atype_img' => '' );
}
@@ -391,11 +360,10 @@ class admin_forums_attachments_types extends ipsCommand
/* Form Elements */
$form = array(
'atype_extension' => $this->registry->output->formSimpleInput( 'atype_extension', ( isset( $this->request['atype_extension'] ) AND $this->request['atype_extension'] ) ? $this->request['atype_extension'] : $attach['atype_extension'], 10 ),
'atype_mimetype' => $this->registry->output->formSimpleInput( 'atype_mimetype' , ( isset( $this->request['atype_mimetype'] ) AND $this->request['atype_mimetype'] ) ? $this->request['atype_mimetype'] : $attach['atype_mimetype'] , 40 ),
'atype_post' => $this->registry->output->formYesNo( 'atype_post' , ( isset( $this->request['atype_post'] ) AND $this->request['atype_post'] ) ? $this->request['atype_post'] : $attach['atype_post'] ),
'atype_photo' => $this->registry->output->formYesNo( 'atype_photo' , ( isset( $this->request['atype_photo'] ) AND $this->request['atype_photo'] ) ? $this->request['atype_photo'] : $attach['atype_photo'] ),
'atype_img' => $this->registry->output->formSimpleInput( 'atype_img' , ( isset( $this->request['atype_img'] ) AND $this->request['atype_img'] ) ? $this->request['atype_img'] : $attach['atype_img'] , 40 ),
'atype_extension' => $this->registry->output->formSimpleInput( 'atype_extension', !empty( $this->request['atype_extension'] ) ? $this->request['atype_extension'] : $attach['atype_extension'], 10 ),
'atype_mimetype' => $this->registry->output->formSimpleInput( 'atype_mimetype' , !empty( $this->request['atype_mimetype'] ) ? $this->request['atype_mimetype'] : $attach['atype_mimetype'] , 40 ),
'atype_post' => $this->registry->output->formYesNo( 'atype_post' , !empty( $this->request['atype_post'] ) ? $this->request['atype_post'] : $attach['atype_post'] ),
'atype_img' => $this->registry->output->formSimpleInput( 'atype_img' , !empty( $this->request['atype_img'] ) ? $this->request['atype_img'] : $attach['atype_img'] , 40 ),
);
/* Output */
@@ -405,9 +373,8 @@ class admin_forums_attachments_types extends ipsCommand
/**
* Shows the attachment types that have been setup
*
* @access public
* @return void
**/
* @return @e void
*/
public function attachmentTypesOverview()
{
/* Get the attachments */
@@ -419,11 +386,9 @@ class admin_forums_attachments_types extends ipsCommand
while( $r = $this->DB->fetch() )
{
$r['_imagedir'] = $this->image_dir;
$r['_imagedir'] = $this->registry->output->skin['set_image_dir'];
$checked_img = "<img src='{$this->settings['skin_acp_url']}/_newimages/icons/tick.png' alt='Yes' />";
$r['apost_checked'] = $r['atype_post'] ? $checked_img : '&nbsp;';
$r['aphoto_checked'] = $r['atype_photo'] ? $checked_img : '&nbsp;';
$r['apost_checked'] = $r['atype_post'] ? "<img src='{$this->settings['skin_acp_url']}/images/icons/tick.png' alt='{$this->lang->words['yesno_yes']}' />" : "<img src='{$this->settings['skin_acp_url']}/images/icons/cross.png' alt='{$this->lang->words['yesno_no']}' />";
$attach_rows[] = $r;
}
@@ -435,14 +400,13 @@ class admin_forums_attachments_types extends ipsCommand
/*
* Rebuilds the attachment type cache
*
* @access public
* @return void
**/
* @return @e void
*/
public function attachmentTypeCacheRebuild()
{
$cache = array();
$this->DB->build( array( 'select' => 'atype_extension,atype_mimetype,atype_post,atype_photo,atype_img', 'from' => 'attachments_type', 'where' => "atype_photo=1 OR atype_post=1" ) );
$this->DB->build( array( 'select' => 'atype_extension,atype_mimetype,atype_post,atype_img', 'from' => 'attachments_type', 'where' => "atype_post=1" ) );
$this->DB->execute();
while ( $r = $this->DB->fetch() )
@@ -5,6 +5,6 @@
<hr>
You have reached this page in error, please use your back button to return to the forum.
<hr>
<a href="http://www.invisionboard.com/">IP.Board</a>
<a href="http://www.invisionpower.com">IP.Board</a>
</body>
</html>
@@ -6,9 +6,10 @@
<subitems>
<subitem>
<subitemtitle>Типы файлов</subitemtitle>
<subitemlang>attachment_types</subitemlang>
<subsection>types</subsection>
<subitemurl>do=overview</subitemurl>
<subitemrolekey></subitemrolekey>
<subitemrolekey>mime_view</subitemrolekey>
<subisredirect>0</subisredirect>
</subitem>
</subitems>
@@ -18,9 +19,10 @@
<subitems>
<subitem>
<subitemtitle>Статистика</subitemtitle>
<subitemlang>attachment_stats</subitemlang>
<subsection>stats</subsection>
<subitemurl>do=overview</subitemurl>
<subitemrolekey></subitemrolekey>
<subitemrolekey>stats_attachments</subitemrolekey>
<subisredirect>0</subisredirect>
</subitem>
</subitems>
@@ -30,9 +32,10 @@
<subitems>
<subitem>
<subitemtitle>Поиск</subitemtitle>
<subitemlang>attachment_search</subitemlang>
<subsection>search</subsection>
<subitemurl>do=overview</subitemurl>
<subitemrolekey></subitemrolekey>
<subitemrolekey>view_attachments</subitemrolekey>
<subisredirect>0</subisredirect>
</subitem>
</subitems>
@@ -2,6 +2,7 @@
<permissions>
<group>
<grouptitle>Управление прикрепленными файлами</grouptitle>
<grouplang>forums_attachments</grouplang>
<items>
<item>
<key>view_attachments</key>
@@ -19,7 +20,12 @@
</group>
<group>
<grouptitle>Управление типами прикрепляемых файлов</grouptitle>
<grouplang>forums_mimes</grouplang>
<items>
<item>
<key>mime_view</key>
<string>Может просматривать?</string>
</item>
<item>
<key>mime_add</key>
<string>Может добавлять?</string>