Version 5.0.13
This commit is contained in:
1 parent
b89858b2ff
commit
5efe744c5f
1407 files changed
+69690
-30177
No files matched your search
@@ -1,63 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @brief Converter Library <#CLASS#> Class
|
||||
* @author <a href='https://www.invisioncommunity.com'>Invision Power Services, Inc.</a>
|
||||
* @copyright (c) Invision Power Services, Inc.
|
||||
* @package Invision Community
|
||||
* @subpackage Converter
|
||||
* @since 21 Jan 2015
|
||||
*/
|
||||
|
||||
namespace <#NAMESPACE#>;
|
||||
|
||||
/* To prevent PHP errors (extending class does not exist) revealing path */
|
||||
if ( !\defined( '\IPS\SUITE_UNIQUE_KEY' ) )
|
||||
{
|
||||
header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
|
||||
exit;
|
||||
}
|
||||
|
||||
class <#CLASS#> extends \IPS\convert\Library
|
||||
{
|
||||
/**
|
||||
* @brief Application
|
||||
*/
|
||||
public $app = '<#CLASS_LOWER#>';
|
||||
|
||||
/**
|
||||
* Returns an array of items that we can convert, including the amount of rows stored in the Community Suite as well as the recommend value of rows to convert per cycle
|
||||
*
|
||||
* @param bool $rowCounts enable row counts
|
||||
* @return array
|
||||
*/
|
||||
public function menuRows( $rowCounts=FALSE )
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an array of tables that need to be truncated when Empty Local Data is used
|
||||
*
|
||||
* @param string The method to truncate.
|
||||
* @return array
|
||||
*/
|
||||
protected function truncate( $method )
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* This is how the insert methods will work - basically like 3.x, but we should be using the actual classes to insert the data unless there is a real world reason not too.
|
||||
* Using the actual routines to insert data will help to avoid having to resynchronize and rebuild things later on, thus resulting in less conversion time being needed overall.
|
||||
* Anything that parses content, for example, may need to simply insert directly then rebuild via a task over time, as HTML Purifier is slow when mass inserting content.
|
||||
*/
|
||||
|
||||
/**
|
||||
* A note on logging -
|
||||
* If the data is missing and it is unlikely that any source software would be able to provide this, we do not need to log anything and can use default data (for example, group_layout in convertLeaderGroups).
|
||||
* If the data is missing and it is likely that a majority of the source software can provide this, we should log a NOTICE and use default data (for example, a_casesensitive in convertAcronyms).
|
||||
* If the data is missing and it is required to convert the item, we should log a WARNING and return FALSE.
|
||||
* If the conversion absolutely cannot proceed at all (filestorage locations not writable, for example), then we should log an ERROR and throw an \IPS\convert\Exception to completely halt the process and redirect to an error screen showing the last logged error.
|
||||
*/
|
||||
}
|
||||
@@ -1,153 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @brief Converter <#CLASS#> Class
|
||||
* @author <a href='https://www.invisioncommunity.com'>Invision Power Services, Inc.</a>
|
||||
* @copyright (c) Invision Power Services, Inc.
|
||||
* @package Invision Community
|
||||
* @subpackage Converter
|
||||
* @since 21 Jan 2015
|
||||
*/
|
||||
|
||||
namespace <#NAMESPACE#>;
|
||||
|
||||
/* To prevent PHP errors (extending class does not exist) revealing path */
|
||||
if ( !\defined( '\IPS\SUITE_UNIQUE_KEY' ) )
|
||||
{
|
||||
header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
|
||||
exit;
|
||||
}
|
||||
|
||||
class <#CLASS#> extends \IPS\convert\Software
|
||||
{
|
||||
/**
|
||||
* Software Name
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function softwareName()
|
||||
{
|
||||
/* Child classes must override this method */
|
||||
return "<#CLASS#>";
|
||||
}
|
||||
|
||||
/**
|
||||
* Software Key
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function softwareKey()
|
||||
{
|
||||
/* Child classes must override this method */
|
||||
return "<#CLASS_LOWER#>";
|
||||
}
|
||||
|
||||
/**
|
||||
* Content we can convert from this software.
|
||||
*
|
||||
* @return array|NULL
|
||||
* @note NULL indicates this converter cannot be used yet, useful to move redirect scripts into the 4.x framework
|
||||
*/
|
||||
public static function canConvert()
|
||||
{
|
||||
return array(
|
||||
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Can we convert passwords from this software.
|
||||
*
|
||||
* @return boolean
|
||||
*/
|
||||
public static function loginEnabled()
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Can we convert settings?
|
||||
*
|
||||
* @return boolean
|
||||
*/
|
||||
public static function canConvertSettings()
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Settings Map
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function settingsMap()
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Settings Map Listing
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function settingsMapList()
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a block of text, or a language string, that explains what the admin must do to start this conversion
|
||||
*
|
||||
* @return string|NULL
|
||||
*/
|
||||
public static function getPreConversionInformation()
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/**
|
||||
* List of conversion methods that require additional information
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function checkConf()
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get More Information
|
||||
*
|
||||
* @param string $method Conversion method
|
||||
* @return array
|
||||
*/
|
||||
public function getMoreInfo( $method )
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Finish - Adds everything it needs to the queues and clears data store
|
||||
*
|
||||
* @return array Messages to display
|
||||
*/
|
||||
public function finish()
|
||||
{
|
||||
return array();
|
||||
}
|
||||
|
||||
/**
|
||||
* Pre-process content for the Invision Community text parser
|
||||
*
|
||||
* @param string The post
|
||||
* @param string|null Content Classname passed by post-conversion rebuild
|
||||
* @param int|null Content ID passed by post-conversion rebuild
|
||||
* @return string The converted post
|
||||
*/
|
||||
public static function fixPostData( string $post, ?string $className=null, ?int $contentId=null ): string
|
||||
{
|
||||
return $post;
|
||||
}
|
||||
|
||||
// Insert convertX methods here
|
||||
}
|
||||
@@ -13,9 +13,7 @@
|
||||
"RebuildNonContent": "IPS\\convert\\extensions\\core\\Queue\\RebuildNonContent",
|
||||
"RebuildProfilePhotos": "IPS\\convert\\extensions\\core\\Queue\\RebuildProfilePhotos",
|
||||
"RebuildTagCache": "IPS\\convert\\extensions\\core\\Queue\\RebuildTagCache",
|
||||
"RecountAnswerRatings": "IPS\\convert\\extensions\\core\\Queue\\RecountAnswerRatings",
|
||||
"RecountClubMembers": "IPS\\convert\\extensions\\core\\Queue\\RecountClubMembers",
|
||||
"RecountQuestionRatings": "IPS\\convert\\extensions\\core\\Queue\\RecountQuestionRatings"
|
||||
"RecountClubMembers": "IPS\\convert\\extensions\\core\\Queue\\RecountClubMembers"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<javascript app="convert">
|
||||
<file javascript_app="convert" javascript_location="admin" javascript_path="controllers/convert" javascript_name="ips.convert.menu.js" javascript_type="controller" javascript_version="5000074" javascript_position="1000100">/**
|
||||
<file javascript_app="convert" javascript_location="admin" javascript_path="controllers/convert" javascript_name="ips.convert.menu.js" javascript_type="controller" javascript_version="5001302" javascript_position="1000100">/**
|
||||
* Invision Community
|
||||
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
|
||||
*
|
||||
@@ -45,7 +45,7 @@
|
||||
}
|
||||
} );
|
||||
}(jQuery, _));</file>
|
||||
<file javascript_app="convert" javascript_location="admin" javascript_path="controllers/forms" javascript_name="ips.forms.reactionmapper.js" javascript_type="controller" javascript_version="5000074" javascript_position="1000050">/**
|
||||
<file javascript_app="convert" javascript_location="admin" javascript_path="controllers/forms" javascript_name="ips.forms.reactionmapper.js" javascript_type="controller" javascript_version="5001302" javascript_position="1000050">/**
|
||||
* Invision Community
|
||||
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
|
||||
*
|
||||
@@ -61,7 +61,7 @@
|
||||
initialize: function () {
|
||||
var id = $(this.scope).data( 'reactionid' );
|
||||
|
||||
this.on( document, 'click', "#elReactionMapper" + id + "_menu .ipsMenu_item", this.selectReaction );
|
||||
this.on( document, 'click', "#elReactionMapper" + id + "_menu [data-action='selectReaction']", this.selectReaction );
|
||||
|
||||
this.setup();
|
||||
},
|
||||
@@ -72,7 +72,7 @@
|
||||
* @returns {void}
|
||||
*/
|
||||
setup: function () {
|
||||
this.scope.find('a[data-default="true"]').click();
|
||||
this.scope.find('[data-default="true"]').click();
|
||||
},
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<language>
|
||||
<app key="convert" version="5000074">
|
||||
<app key="convert" version="5001302">
|
||||
<word key="__app_convert" js="0">Converter</word>
|
||||
<word key="menu__convert_manage" js="0">Conversions</word>
|
||||
<word key="menu__convert_manage_manage_start" js="0">Start New Conversion</word>
|
||||
@@ -275,10 +275,6 @@
|
||||
<word key="convert_forum_password_desc" js="0"><![CDATA[This forum has a password set, however we are unable to decrypt the password for conversion into Invision Community. Please enter the password you wish to use for this forum. <strong>Note:</strong> Not entering a password here will result in no password being set for the forum.]]></word>
|
||||
<word key="convert_forums_topics_multimods" js="0">Convert Multi-moderation Settings</word>
|
||||
<word key="_convert_forums_topics_multimods" js="0">Multi-moderation Settings</word>
|
||||
<word key="convert_forums_question_ratings" js="0">Convert Question Ratings</word>
|
||||
<word key="convert_forums_answer_ratings" js="0">Convert Answer Ratings</word>
|
||||
<word key="_convert_forums_question_ratings" js="0">Question Ratings</word>
|
||||
<word key="_convert_forums_answer_ratings" js="0">Answer Ratings</word>
|
||||
<word key="convert_forums_topics" js="0">Convert Topics</word>
|
||||
<word key="convert_forums_topics_followers" js="0">Convert Topic Followers</word>
|
||||
<word key="_convert_forums_topics" js="0">Topics</word>
|
||||
@@ -416,8 +412,6 @@
|
||||
<word key="queue_rebuilding_profile_photos" js="0">Rebuilding Profile Photo Thumbnails</word>
|
||||
<word key="queue_rebuilding_conversation_first_id" js="0">Rebuilding Personal Conversation first post ids</word>
|
||||
<word key="queue_rebuilding_tag_cache" js="0">Rebuilding %s tags</word>
|
||||
<word key="queue_recounting_question_ratings" js="0">Rebuilding Question Ratings</word>
|
||||
<word key="queue_recounting_answer_ratings" js="0">Rebuilding Answer Ratings</word>
|
||||
<word key="queue_recounting_club_members" js="0">Recounting Club Members</word>
|
||||
<word key="continue_conversion" js="0">Continue Conversion</word>
|
||||
<word key="convert_nexus_customers" js="0">Convert Customers</word>
|
||||
|
||||
@@ -13,13 +13,17 @@
|
||||
<input type="hidden" value="0" name="{$name}[{$id}]" />
|
||||
<p class='i-text-align_center'>{$cReaction['title']|raw}</p>
|
||||
<div>
|
||||
<a href='#elReactionMapper{$id}_menu' id='elReactionMapper{$id}' class='ipsButton ipsButton--secondary ipsButton--small ipsButton--wide' data-ipsMenu><span class="elMenuSelect_replace">{lang="convert_reaction_choose"}</span> <i class='fa-solid fa-caret-down'></i></a>
|
||||
<button type="button" id="elReactionMapper{$id}" popovertarget="elReactionMapper{$id}_menu" class='ipsButton ipsButton--secondary ipsButton--small ipsButton--wide'><span class="elMenuSelect_replace">{lang="convert_reaction_choose"}</span><i class='fa-solid fa-caret-down'></i></button>
|
||||
</div>
|
||||
<ul id='elReactionMapper{$id}_menu' role='menu' class='ipsMenu ipsMenu_auto ipsMenu_withStem ipsHide'>
|
||||
{{foreach $ipsReactions as $reactionId => $reaction}}
|
||||
<li class='ipsMenu_item'><a role='menuitem' href='#' data-id="{$reactionId}" {{if(isset($value[$id]) aND $value[$id] ==$reactionId)}}data-default="true"{{endif}}>{{if( !empty( $reaction ))}}<img src="{$reaction}" alt="" class="cReactionSmall"/> {{endif}}{$descriptions[ $reactionId ]}</a></li>
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
<i-dropdown popover id="elReactionMapper{$id}_menu">
|
||||
<div class="iDropdown">
|
||||
<ul class="iDropdown__items" role='menu'>
|
||||
{{foreach $ipsReactions as $reactionId => $reaction}}
|
||||
<li><button type="button" data-action="selectReaction" role='menuitem' data-id="{$reactionId}" {{if(isset($value[$id]) AND $value[$id] ==$reactionId)}}data-default="true"{{endif}}>{{if( !empty( $reaction ))}}<img src="{$reaction}" alt="" class="cReactionSmall"/> {{endif}}{$descriptions[ $reactionId ]}</button></li>
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</div>
|
||||
</i-dropdown>
|
||||
</div>
|
||||
</div>
|
||||
{{endforeach}}
|
||||
|
||||
@@ -348,5 +348,54 @@
|
||||
"5000071": "5.0.6 Beta 2",
|
||||
"5000072": "5.0.6 Beta 3",
|
||||
"5000073": "5.0.6 Beta 4",
|
||||
"5000074": "5.0.6"
|
||||
"5000074": "5.0.6",
|
||||
"5000075": "5.0.7 Beta 1",
|
||||
"5000076": "5.0.7 Beta 2",
|
||||
"5000077": "5.0.7 Beta 2",
|
||||
"5000078": "5.0.7 Beta 3",
|
||||
"5000079": "5.0.7 Beta 4",
|
||||
"5000080": "5.0.7",
|
||||
"5000081": "5.0.7",
|
||||
"5000082": "5.0.7",
|
||||
"5000800": "5.0.8 Alpha 1",
|
||||
"5000801": "5.0.8 Alpha 2",
|
||||
"5000802": "5.0.8 Beta 1",
|
||||
"5000803": "5.0.8 Beta 2",
|
||||
"5000804": "5.0.8 Beta 3",
|
||||
"5000805": "5.0.8",
|
||||
"5000900": "5.0.9 Beta 1",
|
||||
"5000901": "5.0.9 Beta 1",
|
||||
"5000902": "5.0.9 Beta 1",
|
||||
"5000903": "5.0.9 Beta 2",
|
||||
"5000904": "5.0.9",
|
||||
"5000905": "5.0.9",
|
||||
"5000906": "5.0.10 Beta 1",
|
||||
"5000907": "5.0.10 Beta 1",
|
||||
"5000908": "5.0.10 Beta 1",
|
||||
"5000909": "5.0.10 Beta 1",
|
||||
"5000910": "5.0.10 Beta 2",
|
||||
"5000911": "5.0.10 Beta 3",
|
||||
"5000912": "5.0.10 Beta 4",
|
||||
"5000913": "5.0.10 Beta 4",
|
||||
"5000914": "5.0.10",
|
||||
"5000915": "5.0.10",
|
||||
"5000916": "5.0.10",
|
||||
"5000917": "5.0.10",
|
||||
"5000918": "5.0.10",
|
||||
"5000919": "5.0.10",
|
||||
"5000920": "5.0.10",
|
||||
"5001100": "5.0.11 Beta 1",
|
||||
"5001101": "5.0.11 Beta 1",
|
||||
"5001102": "5.0.11 Beta 2",
|
||||
"5001103": "5.0.11",
|
||||
"5001104": "5.0.11",
|
||||
"5001105": "5.0.11",
|
||||
"5001200": "5.0.12 Beta 1",
|
||||
"5001201": "5.0.12 Beta 2",
|
||||
"5001202": "5.0.12 Beta 3",
|
||||
"5001203": "5.0.12",
|
||||
"5001204": "5.0.12",
|
||||
"5001300": "5.0.13 Beta 1",
|
||||
"5001301": "5.0.13 Beta 2",
|
||||
"5001302": "5.0.13"
|
||||
}
|
||||
Reference in new issue
Block a user