Jump to content

Gauravk

Clients
  • Posts

    1,278
  • Joined

  • Last visited

Reputation Activity

  1. Thanks
    Gauravk reacted to Jon Erickson in Server side OS choice   
    Ubuntu 18.04 LTS is always a very stable option. Very widely supported and EOL in 2023 with maintenance/security patches out to 2028. Ubuntu 20.04 just came out this year yet and is making its way into mainstream although I see 18.04 more widely used.
    Plesk offers a free option for their control panel software that supports 3 domains before needing to upgrade. I personally like it more than WHM/cPanel. More intuitive and user friendly. 
  2. Thanks
    Gauravk reacted to Morrigan in How to disable notification for some members?   
    Not from the ACP. Log into their account and go to their notifications:
    https://invisioncommunity.com/notifications/options/

  3. Thanks
    Gauravk reacted to CoffeeCake in Server side OS choice   
    Whatever distribution of Linux you choose, look at their stable release schedules and read their support policy. Some distributions have guaranteed periods of time when they will be supported (you'll get patches, security updates, etc.). This is a decision that no one else can make for you. For us, we choose the stable, long term support releases. That may not make sense for you. Your priorities may be different than ours. It may be more important for you to have the latest version of some dependency. For us, it makes sense to go with stability and then make a planned migration in cadence with our distro's release cycles, as the software we use (IPS) does not require anything beyond what's available in our distro's stable branch to operate efficiently.
    We simply have no need for a GUI control panel on the servers of our IPS site. That may not be the case for you. Speed is not a factor in our decision, however it's generally true that the more things running on a machine, the more resources will be required at a baseline. We, as a matter of practice, do not provision things we do not need. If the only thing on your server is IPS, it's probably likely that you don't need one either. However, if your level of comfort at working directly with configuration files and the like on the operating system is such that you'd prefer an interface, then that's something to weigh into your considerations.
    You'd need to get with the publishers of the various control panel software and determine what sort of overhead their solutions require you to consider and determine what their recommendations are.
  4. Thanks
    Gauravk reacted to RevengeFNF in Server core vs speed for concurrency   
    I will continue to use Centos 7 for the next 4 years. Then i will migrate to the new Centos Stream 8 (or 9 at the time).
    They closed the Centos Project, but created the new Centos Stream Project. The diference is that Centos is now ahead of RHEL.
     
  5. Thanks
    Gauravk reacted to CoffeeCake in Server side OS choice   
    We have used Debian for years. It may be too stable for some. If you'd like things a bit "newer," yet still very stable, consider Ubuntu's long-term support (LTS) releases.
    You probably can install whatever GUI you'd like to use regardless of the underlying distro, but that would be something to check from whoever is making the control panel. Many of them are not open source and must be licensed, and will likely give you supported configurations.
    We do not use a GUI like plesk/cPanel, but they can come in handy for those that use their server space for a number of different projects and want to delegate control of things easily to others.
  6. Thanks
    Gauravk reacted to ASTRAPI in Server core vs speed for concurrency   
    It is a plan that you must do or your server admin or both 🙂
    Installing Centos 7 for the next 4 years and then when things are more mature you can migrate.
    You may be able to adjust your existing installation and start using it following another Centos like distribution.... so no need to reinstall 🙂
    Or you can go ahead with Ubuntu for example. But check first that your control panel (if you use any) to support it and check also any scripts that you will use to be compatible also.
    IPS don't care if it is on top of Centos or Ubuntu... It just needs the web server, php, mysql, and other related software like Redis or Elastic search to work.
    IPS will perform better on the most minimal installation of the OS and to the better optimized Network, kernel, software e.t.c
  7. Thanks
    Gauravk reacted to ASTRAPI in Server core vs speed for concurrency   
    Yes this is the best option:
    Intel Xeon-E 2288G - 8 c / 16 t - 3.7 GHz / 5 GHz
     
    But adding a better cpu is one part of the performance results in general .....
    Optimizing the OS, network, software like Nginx, Phpfpm, Mysql, Redis e.t.c
    must be done to improve in general your server performance.
    If you have already optimize them then adding resources will help 🙂
  8. Thanks
    Gauravk reacted to ASTRAPI in Server core vs speed for concurrency   
    Hello Gauravk
    Centos 8 is dead ! To be more specific it will be dead in 1 year from now.
    Centos 7 has 4 years before the end also.
    We are in the process that a new Centos like system will take over like Rocky Linux or the Cloudlinux option.
    In the next few months we will see.
    You can wait a bit or get an alternative like Ubuntu or Debian e.t.c Or get Centos 7 and take your time to decide (4 years) and then migrate.
     
    Centos stream rolling doesn't seem to be the best and more stable option for server environments.
     
    As i prefer Centos personally i will pick up the most supported alternative that at the moment seems to be the Rocky linux that the owner of it is one of the owners of the original Centos... The name is coming from his partner that both build Centos that is not in life anymore 😞
     
    For the cpu it is a combination of both. A core with high clock will help on single core tasks like backing up a database if you use the traditional way to backup the database but it depends also how new is the Cpu and the instruction sets that it has.
     
    Let us know the exact cpu models and we will let you know which one is better 🙂
  9. Like
    Gauravk reacted to Adriano Faria in Calendar Enhancements   
    What's New in Version 1.1.2
    Added new moderator permission to allow moderator to message all attendees of an event
  10. Thanks
    Gauravk reacted to Nathan Explosion in How to use different server as a mail server?   
    System -> (Settings) Email Settings -> Advanced Settings....change the details there.
  11. Thanks
    Gauravk reacted to CoffeeCake in SQL Query / Plugin - custom request   
    That'll do it! This should get you what you're looking for. I've included spend_currency as IPS aggregates total customer spend by currency type. If you only accept one type of currency, you can remove this column from the query. Otherwise, you'll probably want to do some sort of currency conversion, so you're comparing apples to apples.
    Here you go! If you find value and want to donate to a worthy cause, feel free to reach out via PM.
    SELECT cm.`email` AS `email` ,cpc.`field_15` AS `phone` ,nc.`cm_first_name` AS `fn` ,nc.`cm_last_name` AS `ln` ,JSON_UNQUOTE(JSON_EXTRACT(nca.`address`, '$.postalCode')) AS `zip` ,JSON_UNQUOTE(JSON_EXTRACT(nca.`address`, '$.city')) AS `ct` ,JSON_UNQUOTE(JSON_EXTRACT(nca.`address`, '$.region')) AS `st` ,JSON_UNQUOTE(JSON_EXTRACT(nca.`address`, '$.country')) AS `country` ,cpc.`field_5` AS `gen` ,ncs.`spend_amount` AS `value` /* * Spend is aggregated per currency type. If you only * accept payments via one type of currency, you can * leave off the following column */ ,ncs.`spend_currency` FROM `core_members` cm INNER JOIN `nexus_customers` nc ON nc.`member_id` = cm.`member_id` INNER JOIN `nexus_customer_spend` ncs ON ncs.`spend_member_id` = cm.`member_id` LEFT JOIN `nexus_customer_addresses` nca ON nca.`member` = cm.`member_id` /* Use primary billing address */ AND nca.`primary_billing` = 1 LEFT JOIN `core_pfields_content` cpc ON cpc.`member_id` = cm.`member_id`  
  12. Thanks
    Gauravk reacted to CoffeeCake in SQL Query / Plugin - custom request   
    We're looking for the column name for each (something like field_1 or field_4, etc.).
  13. Thanks
    Gauravk reacted to CoffeeCake in SQL Query / Plugin - custom request   
    We'll need to figure out which field they are in the table core_pfields_content. There should be one there that represents mobile phone and one that represents gender.
     
  14. Thanks
    Gauravk reacted to CoffeeCake in SQL Query / Plugin - custom request   
    This was a fun little exercise. However, some questions:
    Customers have shipping and billing addresses. Which values are you interested in? Where is gender? Where is "mobile phone"? (Customers have a single phone entry)
  15. Thanks
    Gauravk reacted to CoffeeCake in SQL Query / Plugin - custom request   
    What classifies a member as a paid member only? You want results for members that have spent anything ever?
  16. Haha
    Gauravk reacted to CoffeeCake in SQL Query / Plugin - custom request   
    I'm having total deja vu!
     
  17. Thanks
    Gauravk reacted to CoffeeCake in SQL Query / Plugin - custom request   
    What do you mean? The members returned by that query are those with a customer record in Commerce, and that have spent money.
    The total spend is being calculated by Commerce based on the currency of the transaction. As you have people paying in different forms of currency, you'll need to figure out how you want to handle that as an additional exercise. If you want to convert non-AED amounts into AED, you'd need to sort out the current exchange rate between the currencies (or the exchange rate at the time of the transaction). This is not data available within IPS.
    Right now, Google tells me that AED is tied to the US dollar at a fixed rate and has been for some time, so if you're confident that works for you (I know nothing about foreign currencies), and it's true that 1 US dollar = 3.6725 AED, then this is something that you could convert in the query by multiplying any USD values by 3.6725 and then adding them to any AED transactions the member has made. Have you accepted any other types of currency?
    The entire address is stored as a JSON string within the database in a single column. If there's a field missing, it means that the piece missing wasn't stored. Do you have examples? I'm not sure what you're showing in your screenshot (perhaps that the first row doesn't have a state of "Dubai"? What is the full value of nexus_customer_address.address for the member in question (where primary_billing = 1)?
    This would be a very different query, as you'd have to look at the transaction/invoice level information to filter by date. This solution looks at the aggregate value stored by Commerce for all time.
    Assuming we'd want to remove refunds, that the AED calculation above is true, and that you've only ever had transactions in USD or AED, this might get you what you want for the past two years:
    SELECT cm.`email` AS `email` ,cpc.`field_15` AS `phone` ,nc.`cm_first_name` AS `fn` ,nc.`cm_last_name` AS `ln` ,JSON_UNQUOTE(JSON_EXTRACT(nca.`address`, '$.postalCode')) AS `zip` ,JSON_UNQUOTE(JSON_EXTRACT(nca.`address`, '$.city')) AS `ct` ,JSON_UNQUOTE(JSON_EXTRACT(nca.`address`, '$.region')) AS `st` ,JSON_UNQUOTE(JSON_EXTRACT(nca.`address`, '$.country')) AS `country` ,cpc.`field_5` AS `gen` /* * This factors in only the stored amount value for transactions of type "okay" and "rfnd" in USD * or AED currencies. Any other transactions in any other currencies are ignored, as are partial refund values, etc. */ ,ROUND(`aggregate_transactions`.`usd_and_aed_transactions_only_sum`,2) AS `value` FROM `core_members` cm INNER JOIN `nexus_customers` nc ON nc.`member_id` = cm.`member_id` INNER JOIN ( SELECT t_member ,SUM( CASE /* Convert AED to USD at fixed rate of 1 USD to 3.6725 AED */ WHEN `t_currency` = 'USD' THEN `signed_amount` * 3.6725 WHEN `t_currency` = 'AED' THEN `signed_amount` END ) AS `usd_and_aed_transactions_only_sum` FROM ( SELECT `t_member` ,CASE /* negative amount for refunds */ WHEN `t_status` = 'rfnd' THEN -1 * `t_amount` /* okay transaction */ WHEN `t_status` = 'okay' THEN `t_amount` ELSE NULL END AS `signed_amount` ,`t_currency` FROM `nexus_transactions` WHERE /* Last two years from execution only */ `t_date` >= UNIX_TIMESTAMP(DATE_SUB(NOW(),INTERVAL 2 YEAR)) /* Transcations in currencies other than USD and AED are out of scope */ AND `t_currency` IN ('USD','AED') ) AS `transactions` GROUP BY `t_member` ) AS `aggregate_transactions` ON `aggregate_transactions`.`t_member` = cm.`member_id` LEFT JOIN `nexus_customer_addresses` nca ON nca.`member` = cm.`member_id` /* Use primary billing address */ AND nca.`primary_billing` = 1 LEFT JOIN `core_pfields_content` cpc ON cpc.`member_id` = cm.`member_id`  
  18. Thanks
    Gauravk reacted to CoffeeCake in SQL Query / Plugin - custom request   
    No, it should be real time unless you have replication turned on (multiple MySQL servers, this is not typical).
    Without looking at your database directly, I'd be taking guesses. The query doesn't look at invoices, but rather looks at transactions. You may be getting NULL values if you have transactions in currencies other than AED and USD, or had transactions with a status other than okay and rfnd.
    You'd see negative values if you've refunded more than a person has paid, or if the person paid prior to the two year cut off and the refund was after the two year cut off. If you'd like to remove negative and null values, add the following to the end of the query:
    WHERE ROUND(`aggregate_transactions`.`usd_and_aed_transactions_only_sum`,2) >= 0 Change this line to be whatever date range you'd like: 
    `t_date` >= UNIX_TIMESTAMP(DATE_SUB(NOW(),INTERVAL 2 YEAR))
  19. Thanks
    Gauravk reacted to SC36DC in Members Shop ( Support Topic )   
    In your admin dashboard, in the top search bar, type in Reputation & Reactions, or in the left panel go to Members, then you will see under the MEMBER SETTINGS, Reputation & Reactions. Once  you open that, click on the 2nd tab, Reactions. Then for each reaction, you can edit and set points for each one.


     
  20. Like
    Gauravk got a reaction from SC36DC in Members Shop ( Support Topic )   
    How to set 1 point = 1 like (any emoticon reaction)?
  21. Thanks
    Gauravk reacted to bfarber in SQL Query help   
    That data is stored in Commerce and would need to be pulled separately. Members can have more than one address so it's a bit trickier than just a specific SQL query.
  22. Thanks
    Gauravk reacted to Morrigan in SQL Query help   
    I believe you can do this via the "Download member list thing:

     
    Change things to "expired" and cancelled active I think the "Total Spent" there at the bottom should work.
  23. Thanks
    Gauravk reacted to Makoto in Recommended Server OS for IPB   
    It mostly comes down to personal preference and how much you prioritize running up-to-date software over a potential increase in long-term stability 
    The big two are CentOS and Debian. Personally, I use Debian as I find it to be a better balance between being modern enough while also being very stable and easy to work with. CentOS' release cycle is much slower, so much so that I've had to deal with software incompatibilities trying to manually compile things on said server systems. But if you don't mind using very old software packages, it's a decent choice.
    Gentoo / ArchLinux are not ideal for production server systems. These are bleeding edge distros where things can break at a moment's notice. They're more suited for desktop use by people who are very familiar with Linux and/or want to learn. But due to their bleeding edge nature, they are not stable.
  24. Thanks
    Gauravk reacted to ASTRAPI in Recommended Server OS for IPB   
    Hello Gauravk
    Invision will work on any system that can run a Web server, Php, Mysql e.t.c so it will work on all 🙂
    My recommendation is to use Centos as you will find a lot of info online if you need any help and it is very stable and well known as recommended OS for web servers.
    A lot of scripts also are developed for Centos. If you are using a ready to use solution like a control panel just check which version it supports. Centos 7 or 8.
    If you are using a custom Installation then you may prefer to go with Centos 8 as it will be a bit faster due to the newer gcc and a few more libraries that will help in performance.
    Centos 7 is fine and i use it also....
    Have a nice day 🙂
  25. Like
    Gauravk got a reaction from sobrenome in WhatsApp Share Link   
    Same here, WhatsApp share link plugin is not working on 4.4.1.
    Appreciate a paid or free update soon, thanks in advance. Keep up the good work.
×
×
  • Create New...