Version 4.5.0

This commit is contained in:
Neo committed 2025-12-19 05:51:58 -08:00
1 parent 1a0c7fd3c2
commit f79dcf067a
3791 files changed
+248032 -76372

No files matched your search

+158 -53
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<javascript app="forums">
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/forum" javascript_name="ips.forum.flow.js" javascript_type="controller" javascript_version="103038" javascript_position="1000100"><![CDATA[/**
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/forum" javascript_name="ips.forum.flow.js" javascript_type="controller" javascript_version="105100" javascript_position="1000100"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -220,7 +220,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/forum" javascript_name="ips.forum.forumList.js" javascript_type="controller" javascript_version="103038" javascript_position="1000100"><![CDATA[/**
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/forum" javascript_name="ips.forum.forumList.js" javascript_type="controller" javascript_version="105100" javascript_position="1000100"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -287,7 +287,7 @@
}
});
}(jQuery, _));]]></file>
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/forum" javascript_name="ips.forum.forumPage.js" javascript_type="controller" javascript_version="103038" javascript_position="1000100">/**
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/forum" javascript_name="ips.forum.forumPage.js" javascript_type="controller" javascript_version="105100" javascript_position="1000100">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -346,7 +346,7 @@
}
});
}(jQuery, _));</file>
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/forum" javascript_name="ips.forum.hovercard.js" javascript_type="controller" javascript_version="103038" javascript_position="1000100">/**
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/forum" javascript_name="ips.forum.hovercard.js" javascript_type="controller" javascript_version="105100" javascript_position="1000100">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -396,7 +396,7 @@
}
});
}(jQuery, _));</file>
<file javascript_app="forums" javascript_location="admin" javascript_path="controllers/settings" javascript_name="ips.settings.archiveRules.js" javascript_type="controller" javascript_version="103038" javascript_position="1000050"><![CDATA[/**
<file javascript_app="forums" javascript_location="admin" javascript_path="controllers/settings" javascript_name="ips.settings.archiveRules.js" javascript_type="controller" javascript_version="105100" javascript_position="1000050"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -461,7 +461,39 @@
});
}(jQuery, _));
]]></file>
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/topic" javascript_name="ips.topic.answers.js" javascript_type="controller" javascript_version="103038" javascript_position="1000050"><![CDATA[/**
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/topic" javascript_name="ips.topic.activity.js" javascript_type="controller" javascript_version="105100" javascript_position="1000050">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
* ips.topic.activity.js - Topic activity controller
*
* Author: Rikki Tissier
*/
;( function($, _, undefined){
&quot;use strict&quot;;
ips.controller.register('forums.front.topic.activity', {
initialize: function () {
this.on('click', '[data-action=&quot;toggleOverview&quot;]', this.toggleOverview );
},
toggleOverview: function (e) {
e.preventDefault();
if( this.scope.hasClass('cTopicOverview--expanded') ){
this.scope.find('[data-role=&quot;preview&quot;]').removeClass('ipsHide');
this.scope.find('[data-role=&quot;overview&quot;]').addClass('ipsHide');
this.scope.removeClass('cTopicOverview--expanded');
} else {
this.scope.find('[data-role=&quot;preview&quot;]').addClass('ipsHide');
this.scope.find('[data-role=&quot;overview&quot;]').removeClass('ipsHide');
this.scope.addClass('cTopicOverview--expanded');
}
}
});
}(jQuery, _));</file>
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/topic" javascript_name="ips.topic.answers.js" javascript_type="controller" javascript_version="105100" javascript_position="1000050"><![CDATA[/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -496,26 +528,62 @@
var self = this;
var clicked = $( e.currentTarget );
var positive = clicked.hasClass('cAnswerRate_up');
var voteCount = this.scope.find('[data-role="voteCount"]');
var currentVotes = parseInt( voteCount.attr('data-voteCount') );
this.scope.find('.cAnswerRate_up').toggleClass( 'ipsType_positive', positive );
this.scope.find('.cAnswerRate_down').toggleClass( 'ipsType_negative', !positive );
this.scope.toggleClass( 'cRatingColumn_up', positive ).toggleClass( 'cRatingColumn_down', !positive );
var newVoteCount = 0;
if( positive ){
newVoteCount = currentVotes + 1;
if( this.scope.find('.cAnswerRate_up').is('.ipsType_positive') ) {
var currentVote = 'positive';
}
else if( this.scope.find('.cAnswerRate_down').is('.ipsType_negative') ) {
var currentVote = 'negative';
}
else {
newVoteCount = currentVotes - 1;
var currentVote = false;
}
var positive = clicked.hasClass('cAnswerRate_up');
var voteCount = this.scope.find('[data-role="voteCount"]');
var currentVotes = parseInt( voteCount.attr('data-voteCount') );
var newVoteCount = 0;
var setPositive = false;
var setNegative = false;
// Do we have a current vote?
if( currentVote !== false ) {
// If our current vote is positive and we clicked it again, we're removing our vote
if( positive && currentVote == 'positive' ) {
newVoteCount = currentVotes - 1;
}
// If our current vote is negative and we clicked it again, we're removing our vote
else if( !positive && currentVote == 'negative' ) {
newVoteCount = currentVotes + 1;
}
// Otherwise if our current vote is positive and we clicked negative...
else if( !positive && currentVote == 'positive' ) {
newVoteCount = currentVotes - 2;
setNegative = true;
}
// Or our current vote is negative and we clicked positive
else if( positive && currentVote == 'negative' ) {
newVoteCount = currentVotes + 2;
setPositive = true;
}
}
// Otherwise if we clicked the positive icon...
else if( positive ) {
newVoteCount = currentVotes + 1;
setPositive = true;
}
// Or we clicked the negative icon
else {
newVoteCount = currentVotes - 1;
setNegative = true;
}
this.setStyles( setPositive, setNegative );
voteCount
.toggleClass( 'ipsType_positive', positive )
.toggleClass( 'ipsType_negative', !positive )
.toggleClass( 'ipsType_positive', setPositive )
.toggleClass( 'ipsType_negative', setNegative )
.text( newVoteCount )
.attr( 'data-voteCount', newVoteCount );
@@ -524,42 +592,48 @@
this.ajaxObj.abort();
}
if( positive ){
this.scope.find('a.cAnswerRate_up').addClass('ipsHide');
this.scope.find('span.cAnswerRate_up').removeClass('ipsHide');
} else {
this.scope.find('a.cAnswerRate_down').addClass('ipsHide');
this.scope.find('span.cAnswerRate_down').removeClass('ipsHide');
}
this.ajaxObj = ips.getAjax()( clicked.attr('href') )
.done( function (response) {
Debug.log( response );
if( !response.canVoteUp ){
self.scope.find('a.cAnswerRate_up').addClass('ipsHide');
self.scope.find('span.cAnswerRate_up').removeClass('ipsHide');
} else {
self.scope.find('a.cAnswerRate_up').removeClass('ipsHide');
self.scope.find('span.cAnswerRate_up').addClass('ipsHide');
}
if( !response.canVoteDown ){
self.scope.find('a.cAnswerRate_down').addClass('ipsHide');
self.scope.find('span.cAnswerRate_down').removeClass('ipsHide');
} else {
self.scope.find('a.cAnswerRate_down').removeClass('ipsHide');
self.scope.find('span.cAnswerRate_down').addClass('ipsHide');
}
voteCount.text( response.votes );
self.scope.find('.ipsType_light').text( ips.pluralize( ips.getString( 'votes_no_number' ), response.votes ) );
});
}
},
/**
* Reset CSS classes
*
* @param {bool} Set positive
* @param {bool} Set negative
*/
setStyles: function( setPositive, setNegative ) {
this.scope.find('.cAnswerRate_up').toggleClass( 'ipsType_positive', setPositive );
this.scope.find('.cAnswerRate_down').toggleClass( 'ipsType_negative', setNegative );
this.scope.toggleClass( 'cRatingColumn_up', setPositive ).toggleClass( 'cRatingColumn_down', setNegative );
// Reset tooltips
this.scope.find('a.cAnswerRate_up').removeAttr( '_title' );
this.scope.find('a.cAnswerRate_down').removeAttr( '_title' );
if( setPositive ) {
this.scope.find('a.cAnswerRate_up').attr( 'title', ips.getString('js_remove_your_vote') );
}
else {
this.scope.find('a.cAnswerRate_up').attr( 'title', ips.getString('js_vote_answer_up') );
}
if( setNegative ) {
this.scope.find('a.cAnswerRate_down').attr( 'title', ips.getString('js_remove_your_vote') );
}
else {
this.scope.find('a.cAnswerRate_down').attr( 'title', ips.getString('js_vote_answer_down') );
}
}
});
}(jQuery, _));]]></file>
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/topic" javascript_name="ips.topic.reply.js" javascript_type="controller" javascript_version="103038" javascript_position="1000050">/**
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/topic" javascript_name="ips.topic.reply.js" javascript_type="controller" javascript_version="105100" javascript_position="1000050">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -583,12 +657,11 @@
* @returns {void}
*/
replyToTopic: function (e) {
e.preventDefault();
$( document ).trigger( 'replyToTopic' );
}
});
}(jQuery, _));</file>
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/topic" javascript_name="ips.topic.view.js" javascript_type="controller" javascript_version="103038" javascript_position="1000050">/**
<file javascript_app="forums" javascript_location="front" javascript_path="controllers/topic" javascript_name="ips.topic.view.js" javascript_type="controller" javascript_version="105100" javascript_position="1000050">/**
* Invision Community
* (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
*
@@ -603,8 +676,38 @@
initialize: function () {
$( document ).on( 'replyToTopic', _.bind( this.replyToTopic, this ) );
this.on( 'click', '[data-action=&quot;showMoreActivity&quot;]', this.showActivity );
this.on( 'click', '[data-action=&quot;closeMoreActivity&quot;]', this.hideActivity );
},
/**
* Opens up the activity box when placed under the first post
*
* @param {event} e Event object
* @returns {void}
*/
showActivity: function (e) {
e.preventDefault();
this.scope.find('[data-role=&quot;moreActivity&quot;]').show();
this.scope.find('[data-action=&quot;showMoreActivity&quot;]').hide();
this.scope.find('[data-action=&quot;closeMoreActivity&quot;]').show();
},
/**
* Closes the activity box when placed under the first post
*
* @param {event} e Event object
* @returns {void}
*/
hideActivity: function (e) {
e.preventDefault();
this.scope.find('[data-role=&quot;moreActivity&quot;]').hide();
this.scope.find('[data-action=&quot;showMoreActivity&quot;]').show();
this.scope.find('[data-action=&quot;closeMoreActivity&quot;]').hide();
},
/**
* Triggers the initialize event on the editor
*
@@ -612,11 +715,11 @@
* @returns {void}
*/
replyToTopic: function (e) {
var editorID = this.scope.find('[data-role=&quot;replyArea&quot;] [data-role=&quot;contentEditor&quot;]').attr('name');
if( editorID ){
this.trigger('initializeEditor', { editorID: editorID } );
}
ips.ui.editor.getObjWithInit( this.scope.find('[data-role=&quot;replyArea&quot;] [data-ipsEditor]'), function(editor){
editor.unminimize(function(){
editor.focus();
});
} );
}
});
}(jQuery, _));</file>
@@ -630,9 +733,11 @@ controllers</order>
jquery
mustache
jstz
IntersectionObserver
Debug.js
app.js</order>
<order app="global" path="/dev/js//library//jquery">jquery.js
jquery-migrate.js
jquery.history.js
jquery.transform.js</order>
<order app="global" path="/dev/js//library//linkify">linkify.min.js