-
Posts
4,201 -
Joined
-
Last visited
-
Days Won
3
Content Type
Downloads
Release Notes
IPS4 Guides
IPS4 Developer Documentation
Invision Community Blog
Development Blog
Deprecation Tracker
Providers Directory
Forums
Events
Store
Gallery
Posts posted by AlexJ
-
-
36 minutes ago, DaveLegg said:
From my testing, the issue only arises if you attempt to reply to a status the first time you load the page you're making the reply on. If you refresh, or navigate away and return, you can reply without issue.
I agree. It drove me nuts. I started with our Firewall, CF, apps, etc. and then was able to figure out based on console error.
I hope someone from IPS will take a look and fix this issues. Makes forum profile unstable because people don't refresh and it's getting annoying for them.
I am happy, that I am not alone. Please share the fix in case if you create custom fix for your site. You got pretty popular site their and I used to be active user on it when I was little younger.
Thanks!
-
1 minute ago, Makoto said:
There were some communication issues apparently. I was told this was fixed in 4.7.6, but it turns out it actually wasn't, so there is still a workaround in the next build of the app currently pending approval on the marketplace. Hopefully that should be up and available soon.
Thanks for the update! I rushed to upgrade 4.7.6 because of the issue which u had mentioned. Now i hope they approve u workaround fix ASAP.
-
Seeing below error when I try to post on user profile... it happens randomly but it's consistent and can be reproduced - especially, when you try to comment on existing profile status update. How do I figure out which application or IPS code is causing it? Thanks.
;(function($,_,undefined){"use strict";ips.controller.register('core.front.statuses.status',{_commentStatusID:null,initialize:function(){this.on('click','[data-action="loadPreviousComments"], [data-action="loadNextComments"]',this.paginate);this.on('submit','[data-role="replyComment"]',this.quickReply);this.on(document,'addToStatusFeed',this.addToStatusFeed);this.setup();},setup:function(){this._commentStatusID=this.scope.attr('data-statusID');},paginate:function(e){e.preventDefault();var feed=$(e.currentTarget).closest('[data-role="statusComments"]');var paginateRow=$(e.currentTarget).closest('.cStatusUpdates_pagination');paginateRow.html(ips.templates.render('core.statuses.loadingComments'));ips.getAjax()($(e.currentTarget).attr('href')).done(function(response){paginateRow.replaceWith(response);feed.find('meta').remove().end();$(document).trigger('contentChange',[feed]);}).fail(function(response){paginateRow.replaceWith('');ips.ui.alert.show({type:'alert',icon:'warn',message:_.isUndefined(response.responseJSON)?ips.getString('errorLoadingContent'):response.responseJSON,});});},quickReply:function(e){var form=this.scope.find('[data-role="replyComment"] form');if(form.attr('data-noAjax')){return;} e.preventDefault();e.stopPropagation();var self=this;var feed=$(e.currentTarget).closest('[data-role="statusComments"]');var replyArea=this.scope.find('[data-role="replyComment"]');var submit=this.scope.find('[type="submit"]');var page=feed.attr('data-currentPage');if(!page){page=1;} var currentText=submit.text();submit.prop('disabled',true).text(ips.getString('saving'));ips.getAjax()(form.attr('action'),{data:form.serialize()+'&submitting=1¤tPage='+page,type:'post'}).done(function(response){self.trigger('addToStatusFeed',{content:response.content,statusID:self._commentStatusID});}).fail(function(){form.attr('data-noAjax','true');form.submit();}).always(function(){submit.prop('disabled',false).text(currentText);});},addToStatusFeed:function(e,data){if(!data.content||data.statusID!=this._commentStatusID){return;} var content=$('<div/>').append(data.content);this.scope.find('[data-role="statusComments"]').append(content);ips.utils.anim.go('fadeInDown',content);ips.ui.editor.getObj(this.scope.find('[data-role="replyComment"] [data-ipsEditor]')).reset();$(document).trigger('contentChange',[this.scope]);}});}(jQuery,_));; ;(function($,_,undefined){"use strict";ips.controller.register('core.front.statuses.statusFeed',{initialize:function(){this.on('submit','[data-role="newStatus"] form',this.submitNewStatus);this.setup();},setup:function(){},submitNewStatus:function(e){e.preventDefault();e.stopPropagation();var self=this;var feed=this.scope.find('[data-role="activityStream"]');var replyArea=this.scope.find('[data-role="replyComment"]');var form=this.scope.find('[data-role="newStatus"] form');var submit=this.scope.find('[data-action="submitComment"]');var textarea=form.find('textarea');var currentText=submit.text();if(!textarea.val()){ips.ui.alert.show({type:'alert',message:ips.getString('validation_required'),icon:'warn'});return;} submit.prop('disabled',true).text(ips.getString('saving'));ips.getAjax()(form.attr('action'),{data:form.serialize(),type:'post',bypassRedirect:true}).done(function(response){var content=$('<div/>').append(response);var comment=content.find('.ipsComment,.ipsStreamItem').first();feed.prepend(comment);ips.utils.anim.go('fadeInDown',comment);$('textarea[name="'+textarea.attr('name')+'"]').closest('[data-ipsEditor]').data('_editor').reset();$(document).trigger('contentChange',[comment]);}).fail(function(xhr){self.scope.find('#elStatusSubmit').parent().html(xhr.responseText);$(document).trigger('contentChange',[self.scope.find('#elStatusSubmit').parent()]);}).always(function(){submit.prop('disabled',false).text(currentText);});}});}(jQuery,_));;
-
53 minutes ago, Randy Calvert said:
The call to Giphy is essentially the opposite. Your server directly initiates a request to the Giphy server which is not routed through CF. So you're not going to be whitelisting anything related to Giphy at Cloudflare.
Wouldn't it be Server -> Giphy -> Cloudflare -> Server? OR Are you saying, since server is making a call -> Giphy will bypass CF and then direct send response to server? So it would be something like below:
Server Request -> Giphy
Giphy Response -> Server
In both cases, CF is bypassed? I don't have outbound firewall. Only inbound for http and https.
However, you are right i.e. if it's firewall issue, I should always get that but I don't get it all the time, so it's very hard to figure it out.
FYI: On CF, i whitelisted hostname. Few months, got DDoS's, with avg 12-50M Request/second. So I set up all the stuff through CF and put restrictions on it. Now server IP is not exposed.. so CF takes care of majority of DDoS. No issues anymore except this annoying indexnow and Giphy errors - randomly.
Thanks for your insight.
-
@Makoto - Let me know if u still need access or error is fixed based. I will gladly share admin cp. No issues.
-
7 minutes ago, Stuart Silvester said:
Yes, it looks like Chatbox is hardcoded to use the old CDN.
text = (text = (text = self._parseForContent(text)).replace(this.lmn11, function(callback) { return 0 > self.lmn12.indexOf(callback) ? "twemoji" != ips.getSetting("emoji_style") ? "<span class='chatboxEmoji'>" + callback + "</span>" : "<img class='chatboxEmoji' src='" + ("https://twemoji.maxcdn.com/2/72x72/" + self._emojiUnicode(callback) + ".png") + "'>" : callback; })).replace("!", "!");
Ok many thanks! This thing was driving me nuts... cache clear and all worked on some pages.. but back to same laggy behavior on site. Will let developer know.
Thanks!
-
1 minute ago, Jim M said:
This would be the URL you mentioned here. How your server processes that outbound request would be something only you know.
Let's take specific example, so I can explain better.
When I trigger that from browser, I get remote address of 199.232.38.2.
When I trigger that from opera browser, with proxy, I get remote address of 77.111.246.126
Now both IP's are in different ASN and later is under Opera VPN.
So question is - when IPS sends above API call to Giphy, forget which server for a second here.. -> What's expected response from Giphy to IPS?
OR May be above is more technical question to Giphy team rather then IPS team? Since question revolves around Giphy response. I am trying to figure out what's expectation on IPS side, so I can whitelist it and call it a day.
-
-
You need to convert your existing tables, which is very easy. Look here:
https://phoenixnap.com/kb/myisam-vs-innodb
Look at this topic on above link.
How to Convert MyISAM and InnoDB
-
Just now, Jim M said:
Sorry, instructions and investigation into a service to whitelist would be outside our scope of support.
No. I am asking about how IPS software communicates with Giphy and how Giphy communicates back to IPS.
If I am unclear about how IPS software works, I can't find a solution.
-
Ok, I think need some additional help.
Giphy ASN is - AS54113 when I trigger the API call from my browser. When I try to check through other VPN's. I get this IP. 77.111.246.126 which is Opera Mini Proxy.
So how the connection from Giphy API -> Cloudflare works? I need to find a way to whitelist Giphy for my site, in cloudflare. ASN doesn't look like solution to me.
Can I whitelist using path.. /v1/gifs/search ? But that would fall under Server -> Cloudflare -> Gifhy connection, no? And we need solution from Giphy -> Cloudflare -> Server.
All our firewall rules are in Cloudflare server.
-
Just for my learning ... if it's just pure notifications i.e. inline notifications (as SJ77 mentioned - no email), wouldn't it be on php and database to process it?
-
13 hours ago, Randy Calvert said:
Also you mentioned using Cloudflare. If you’re using their Early Hints, this is duplicated effort. You could just turn it off in IPB as it can be triggered from CF.
Thanks for the tip! Appreciate it.
13 hours ago, Randy Calvert said:It’s a little more nuanced than that. A user clicks the giphy button. That triggers an api call from your server to giphy to get a list of results. Those results are retuned from your server to the user. If a user clicks an image it is directly downloaded from giphy to the user.
Need to find a way to whitelist Giphy on Cloudflare.
5 minutes ago, Jim M said:If this is the first it's happened, it's more likely a network error.
15 hours ago, AlexJ said:I had more errors before but i have started whitelisting their ASN blocks. I am guessing some IP's might be under different ASN. Initially, I wasn't sure if it's Indexnow issue rate limiting websites or just firewall. Looks like later.
Thank you both once again.
-
47 minutes ago, Jim M said:
This would be as frequent as content is posted.
1 hour ago, AlexJ said:Ok so if it's continuous problem, i should see more. So I am guessing indexnow is rate limiting our site? I don't have popular site.. so i am curious...
48 minutes ago, Jim M said:This is from the server, yes.
Ok, tks. How the connection works? User -> Server -> Giphy API -> Cloudflare -> Server -> User see Giphy - Is this correct? Can you please share details. Thank you.
-
@Mark H - Tks it helps a bit. Can you please share one thing:
Timing from IPS to IndexNow i.e. how often IPS calls the request and interval.
----
For giphy, does the request original from webserver? I thought that's more of a client side? Can you please confirm.
-
Is that slowness coming from PHP processing OR through Email server? OR Both? @AlexWebsites suggested to me, while back to move away from SMTP for Amazon SES and use their API, through 3rd party addon on IPS.
-
1 hour ago, SJ77 said:
Yes he would. But he says he didn't get it. I am looking for a way to show "My records indicate that you indeed did get this email on X date at X time" or at the least prove that it was sent.
How do you send email? If through Postfix - you can check in postfix logs. I am not familiar with Exim.. but if you use it, you can probably do same?
I stopped using mail server on same machine because of DDoS issue as it exposes IP because of SPF records.
-
Just now, SJ77 said:
aren't those only for errors?
Yes but if it's not error'd - then wouldn't he get it? Thanks
-
On 1/11/2023 at 5:46 PM, SJ77 said:
Have a client who would have been sent an email but he claims it wasn't sent. I want to verify the claim.
Anyway to look this up?
Wouldn't it show up in Email error logs if you have it enabled? But now, I have my own question... @AlexWebsites have u seen SMTP timeout errors in past from IPS before u switched to API? Can you please share your experience. I am using Amazon SES as well.
-
Indexnow issue:
Seeing this errors for indexnow. Is anyone experiencing same OR do they publish their IP's? I don't have much outbound firewall on server but inbound is restricted.
Same happens randomly for giphy:
IPS\Http\Request\CurlException: https://api.giphy.com/v1/gifs/search?
Connection timed out after 10001 milliseconds (28) -
With increasing control of profiles on FB, users are requesting their accounts to be deactivated/activated based on their choice. So for now, we created deactivated group with setting of not allowed to access site.
Now when user tries to login, they get Banned message, which is more for users, who we don't want on our site. Can you please provide an option so that depending on group, we can show custom message and/or allow them to use Contact Us as well.
As of today - if you are not allowed to use website, you can't even use Contact Us. That makes Contact Us not that useful for "ALL" the groups - Thanks!
-
-
3 hours ago, Stuart Silvester said:
We'll likely add Unicode 14 to the Emoji soon too, then they'll match up nicely.
That would be super helpful! Much appreciated!
I still see an error after the upgrade on twitter style:
-
24 minutes ago, Jim M said:
I'm afraid, as mentioned, this is not possible. It is 1 message for all cases. It would require a customization of the software if you want two different messages depending on the user.
Ok - thanks! Why some simple things, are soo tough! I wish, we had similar option like downloads i.e. show message based on category and in this case by user group.
Upgrade from IPB 3.4.x
in Classic self-hosted technical help
Posted · Edited by AlexJ
Hello,
During upgrade, I am getting below error:
Unknown column 'word_plugin' in 'field list'
/home/xxx/public_html/forums/system/Lang/Lang.php::350
REPLACE INTO `core_sys_lang_words` ( `lang_id`, `word_app`, `word_plugin`, `word_key`, `word_default`, `word_custom`, `word_js`, `word_export` ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ? )
Help please on how to fix it? Thanks
Update: I added the column manually but now i get this:
Field 'word_pack' doesn't have a default value
/home/xxx/public_html/forums/system/Lang/Lang.php::350
REPLACE INTO `core_sys_lang_words` ( `lang_id`, `word_app`, `word_plugin`, `word_key`, `word_default`, `word_custom`, `word_js`, `word_export` ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ? )