Jump to content

Michael

Administrators
  • Content Count

    2,434
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by Michael

  1. Michael

    EU and NA Down

    okay they both should be back up, moved them to new nodes. god i love cloud computing
  2. they are both back up, moved them to a different node.
  3. Michael

    EU and NA Down

    the datacenter is having a load balancer issue, i'm currently transfer both to a different node atm to get them back up. NA should be back up.
  4. I got an email a bit ago from the datacenter, saying they were having load balancer issues atm, and this seems to have caused the cert to not authenticate. i'll keep you informed.
  5. Michael

    Stratagem

    Version 1.0.6

    12 downloads

    Stratagem is the next-gen project management app for Invision Community, based on the concept of kanban. Plan, manage, and deliver community projects directly from your Invision Community with the project management app Stratagem. Manage – Implement the project of your dreams using the project management tool set of Stratagem. Create unlimited projects with their own unique workflows. Move issues as they get resolved, or remove them into the special Trash Can. Collaborate – Add users to the project team, assign tasks to team members, and watch real-time updates happen as a team member updates a card or column. Automate – Use the built-in automation tools to auto-update issues when they move into a new stage of the project, by either assigning a new due date or assigning a new status. Control – Define the project leader to spearhead the project, manage the members, or restrict access to certain development stages. Use Stratagem to plan your next community project, organize a user meetup, implement site feedback, or launch a new initiative. It can also be used for lists, comparisons, or any other form of visual organization. Kanban Kanban is a visual approach to project management for incremental and continuous improvements. The emphasis is on continual delivery of small items without overburdening the development team. Kanban is a process designed to help teams work together more effectively, by allowing your team members to pick and choose the issues they would like to develop next. The Japanese pioneered the process of kanban for industrial management at Toyota. The visual design is similar to a whiteboard where users can move cards to show progress (kanban translates to “visual card” in Japanese). Features Create unlimited projects for online or offline initiatives, each with their own unique workflow, steps, and issues. The app features: Projects - Create unlimited projects with their own unique workflows, teams, and statuses. Columns - Organize your project by columns. Each column represents a step in the process. Cards - Create cards for your task. Each card is an issue to be progressed or resolved. Drag-and-drop ordering – Beautiful visual approach to moving cards in between columns. Statistics – Detailed charts and statistics to help you analyze the progression of your project, identify roadblocks, and resolve upcoming issues. Filters – The project can be filtered in the sidebar to identify cards based on criteria for status, completion, or assignment. Live Collaboration – Columns and cards will periodically update without the need for refreshing. As other members of your team create new cards and / or reorder cards, the changes will reflect on your page for team collaboration. Archive – If cards need to be discarded, each project includes a archive section to archive all cards which saves the cards for future reference. Stratagem is beautifully visual with drag-and-drop ordering. Stratagem is beautifully simple, with a design that any member can immediately figure out. Stratagem is beautifully powerful, with workflows and badges that can be custom built to your needs. Demo/Request Features/Make Suggestions: https://codingjungle.com/stratagem/projects/1-stratagem/

    $50.00

  6. After long consideration, I will be ending Babble Self Hosted in the near future. It wont happen immediately, I don't have a firm date, but I am looking at the second quarter of 2019 (sometime between march and end of may, probably closer to the end of may). The reasons i have decided to do this cause the support load for babble self hosted is incredibly high, due to the installation requirements, the amount of self host clients who have moved to the chat service, the general decline in sales for self hosted in favor of the chat service. Basically the chat service has more or less killed it off. People who have a self hosted purchase and current on their renewals, will continue to be able to download (even after the EOL has been reached). I will try to cancel any outstanding renewals at the time the product is EOL, but you should also check this at that time to avoid being charged for renewals. You will be allowed to run babble self hosted as long as possible, but i will not be providing updates (including bug fixes or new features). Any self hosted client who wishes, I can move you over to the chat service now or at the time, I will offer the first 3 months or remainder of your renewal (whichever is the lesser) and after that you will receive an invoice to continue to be on the service, just let me know if you want to do this (as well which package you want, 3/6/1 year terms). in the near future, i will also be offering a different packages for users who will exceed the chat services 100 user, so stay tuned for those. Regards, Michael
  7. I had cobbled together a guide awhile back on how to do this, a bit has changed and some of the guide was inaccurate or had unneeded steps. Requirements: you will need to be up to date with windows 10, older versions of windows 10 does not have WSL. Make sure you windows is fully up to date, and you are comfortable with working with the command line or wish to learn more about the command line. other than that, enjoy the guide! So what is WSL? Well, basically it's the userspace from a linux distro added to win10 to allow you to run native linux apps (currently only CLI, some have gotten GUI stuff to work, but that is beyond the scope of this guide). Who is it for? Anyone really. I am a web developer, and one of the reasons i used linux for over 10 years as my daily driver, was due to how poorly a wamp stack performs compared to a lamp stack, and the differences you will encounter in how the two platforms operate. example: windows is a case insensitive OS, so windows doesn't see a difference between MyClass.php and myclass.php, this could be a problem with a case unaware autloloader on linux or mac os x. so it could lead to a unnecessary refactor if/when you deployed to linux/mac os x. I like this alternative mainly cause I migrated to a UHD monitor and use lower resolution monitors in the setup as well and linux has extremely poor fractional scaling (with the exception of KDE), windows scaling isn't perfect, but it is a lot better than any of the linux DE's atm. there were also other issues i ran into as well, as i recently also built a AMD Ryzen system, and ryzen's performance in linux isn't stellar, so least to say, Linux has several issues right now, that make it difficult for me to use well. So why should I use this over wamp or a linux setup? Don't get me wrong, apps likes WAMP/XAMP/MAMP are fine applications and if you are happy with those, then you shouldn't rock the boat. I do a lot of work outside of php with languages like python and technologies like node.js that don't perform very well in windows, they are actually quite cumbersome to install and to use in windows. So if you do more than just write wordpress plugins i suppose, then you'd prolly don't need this, but if you are curious how much greener the grass is, continue to read. so why should you use WSL over a full lamp stack? well the simple answers for me would be convenience. like the aforementioned issues i had running linux now days, this is sorta a meld of "best of both worlds". The Guide: Okay enough backstory, lets get started. First thing you will need to do is enable the sub system, you can do this a few ways. the fastest way imho is to start up a powershell in administrator mode (click start, type in powershell, when it comes up in cortana, right click on it and choose to run as administrator. if you have UAC enabled, it might prompt you if you wish to continue): Once it open enter this: (note: you can copy it, either right click on the powershell window or ctrl+v to paste it) Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux Press enter, it will do a few things, and then it will prompt you to restart. to continue you need to restart (did you really expect anything else? it is windows after all ) Now the Fun! Now once you are back after the reboot, you should be ready to install a distro. Now microsoft made this really simple, they put them in the app store. so open up the app store and search for 'linux': Click on "Get the apps" (if you don't see this, if you scroll down, under APPS, you will see the distro list). you should see this: There are a few distro's to choose from here. This guide will use Ubuntu, but in reality there really isn't any other choice IMHO. (i get this one a lot, "mike, how are you a ubuntu user? its for noobs and you know so much about linux!?", boggles the mind doesn't it? not really, Ubuntu is still more or less debian under the hood, it just has more recent packages and i think put together a bit better than debian and the other distro's, but any way, please refrain from ubuntu hate) any way, click on ubuntu: Now decision time, this guide will proceed almost identically regardless of your choice here. you can click install here and it will install ubuntu 16.04 LTS, however if you look below, you should see "people also like" and one of the options there, should be ubuntu 18.04 LTS. I highly recommend ubuntu 18.04 LTS as it is newer, and will be supported longer than 16.04 LTS, but the choice is yours. Let it install, once it is install click open. you will be greeted by a bash prompt, it will ask you for a username and a password (It should be noted as this has driven linux noobs insane, when you type in your password on the CLI, it will never indicate anything is being typed, so if you are expecting something like ****** to show up, it wont. ). Once you are done with that you will see a prompt like this: well it wont look exactly like this, but you can make it look like this here alright we have Ubuntu installed. First thing you should do, is if you are using windows defender, you should add exceptions to it for your wsl and your resource root, here are pretty good directions on how to do this: https://medium.com/@leandrw/speeding-up-wsl-i-o-up-than-5x-fast-saving-a-lot-of-battery-life-cpu-usage-c3537dd03c74 I wouldn't recommend turning off real time protection, but you can do what you wish. if you use another malware/virus protection, you should find out how to add exceptions in it, as this will drastically improve the IO of wsl. ,now we are going to do is add this ppa (which will have the several versions of php available and updates for them when they come out), enter this into your bash prompt: sudo add-apt-repository ppa:ondrej/php this will add the ppa, next we are going to add the webmin Repo for ubuntu, next enter this command: sudo nano /etc/apt/sources.list this will open the nano editor, using your arrow keys, go all the way to the bottom and add this on a new line (you can copy from here and use right click to 'paste') deb http://download.webmin.com/download/repository sarge contrib to save, ctrl+o (saves) and then ctrl+x (exits), next enter these commands: wget http://www.webmin.com/jcameron-key.asc and then: sudo apt-key add jcameron-key.asc and finally: sudo apt update (this last command will update the package managers database). Alright if you have made it this far, you have completed all the EASY stuff (yes, you have permission to roll your eyes). now the stuff that follows, we will be installing and configure Ubuntu with a LAMP stack, plus with webmin. alright, lets install everything we will need: sudo apt install apache2 mysql-server php7.2 php7.2-xml php7.2-zip php7.2-mbstring php7.2-curl php7.2-mysql php7.2-gd php7.2-imagick curl webmin this can take awhile, webmin takes awhile to install, so go watch a show or play solitaire . once it is done, it will return the prompt. so everything is installed, so next we need to start everything, in bash, enter this: sudo service apache2 start && sudo service mysql start && sudo service webmin start (it will prompt you for your user password). it should start up all the services, you can check in your browser by going to http://localhost and you should see something like this: now check if webmin is running, it will be the computers name (the part in bash prompt after your username) on port 10000, so it would be something like this: https://desktop-jlddkqm:10000 or https://localhost:100000 (don't log into it just yet, just make sure it is running, you should see a login prompt). you will be told the site is unsafe cause it doesn't have a cert, you can make an exception or edit webmin's config to change this: sudo nano /etc/webmin/miniserv.conf find: ssl=1 and change it to: ssl=0 now save and exit (ctrl+o then ctrl+x). restart webmin: sudo service webmin restart (sometimes this doesn't work, and you need restart your computer, i am not sure why it does this, if you restart, don't forget to start up all the services again when you open up bash). if you installed ubuntu 18.04 or installed mysql-server 5.7+, you will need to do this: In mysql 5.7, you are no longer able to use root to access your database, so you will need to setup another user to do this, in bash: sudo mysql -u root -p it will prompt you for the mysql root password, which at this point should be empty, so just hit enter, if that fails, enter your user password. this will enter the mysql prompt, do the follow, making changes where it says username and MYPASSWORDGOESHERE: GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'MYPASSWORDGOESHERE'; hit enter, next: FLUSH PRIVILEGES; hit enter, and finally: quit hit enter, it will return you to the prompt. optional (you can instead choose to create a vhost to where you want your document root to be): next we will link a folder from our C drive in windows to a /var/www/html in ubuntu (as you can't edit files on the linux fs with windows editors, something about permissions). now in WSL any of your drives are auto-mounted in /mnt, your C:\ drive will be /mnt/c and any other drive will be mounted under their drive letter. we will be assuming your document root for your web app is C:\myapp, so we need to get this linked to your servers document root folder, which is /var/www/html. to do this, we will create a symlink: sudo ln -s /mnt/c/myapp /var/www/html this will now be accessible via http://localhost/myapp/ okay, that it is it. apache is running, webmin is running, and everything is installed to get your local dev environment running. this isn't the end of the guide, just if you want, you can stop here and go about configuring the rest on your own. however if you want to do some more things, keep reading. Extra: Start With Bash: I like adding stuff to my .bashrc, so when i start the bash prompt, everything starts up for me (after enter my password, but you can set it up where sudo doesn't require a password, but use at your own peril). in the bash prompt: nano .bashrc using the arrow keys, go to the end and start a new line. add the following, each on their own line: sudo service apache2 start sudo service mysql start sudo service cron start sudo service webmin start save and exit (ctrl+o and then ctrl+x) i like adding cron here, as there are times i need to test out task, and setting a cron is a lot easier than trying to figure out the voodoo magic that is windows scheduler. but when you first open up bash, you will be prompted for your password, and then the services will start. Module userdir: I really like this module, allows me to work from my home directory, from a folder called public_html and accessible from http://localhost/~username/. first thing to do is enable the module for apache: sudo a2enmod userdir now we need to tell php it can parse php in the home dir: sudo nano /etc/apache2/mods-available/php7.2.conf find: php_admin_flag engine off comment it out, so make it look like this: #php_admin_flag engine off save and exit (ctrl+o then ctrl+x). restart apache: sudo service apache2 restart create the public_html folder in your home directory: cd ~ takes you back to your home dir. mkdir public_html creates a folder called public_html in your home dir. ln -s /mnt/c/webapp ~/public_html will link your webapp folder from your C:\ drive to ~/public_html/webapp. you will be able to access it via url: http://localhost/~username/webapp. as you can see, there is potentially a lot of work that goes into setting up WSL for a LAMP stack. you might think it isn't worth it, and it might not be for some, but for others it will be, as it will open up more possibilities, with the technology and applications working in a native environment. btw...why did you have us install webmin, you didn't do anything with it! you are right, i didn't use it in this guide. you can log into it now, and you can configure your webserver from there. i wanted to show you how it is done on the CLI, to get an appreciation for the software, but with webmin, it will allow you to do configuration with a GUI for apache and php. so if you don't see any need for webmin and are comfortable with the command line editors, then you can uninstall it or not install it to begin with. if you have any questions or comments, let me know below!
  8. Version 2.0.0

    1 download

    Note: It has been brought to my attention that people are using this on IPS community in the cloud and on their live sites causing issues for IPS Support. These tools are designed and their intended use are on localhost and/or absolute development environments. these tools have zero value outside of development, please use wisely, if you are not a developer or do not intend to use them in a developer environment, these tools are unlikely meant for you. Note 2: if you are using version 1.4.0 and before, please uninstall all the apps before installing 2.0.0. version 2.0.0 changes a lot as i have combined all the previous apps into one. The Dev Toolbox is a applications, designed with making working with IPS easier, and to reduce overall production time. This applications is being provided free of charge to the IPS developer community, but I ask if you find them useful or lifesaving, consider making a donation of any amount, to help ensure the future development of these fantastic tools. https://paypal.me/codingjungle if you would like to access the git repo: https://github.com/codingjungle/toolbox there are e branches, master, dev and xp. master will be what is found here in the download, dev will be any bug fixes, and xp will have new features, etc, that are in the works, so it might not be ready for general use. Here is a list of the the features and how they benefit you. (note: these descriptions are for the individual apps, but the combined app contains all these features and more now): DT Proxy: This application will be most useful for those who use IDE's, especially if you use PHPStorm with the PHP-Toolbox plugin. Once you run it, it will create proxy class for IPS classes (most IDE's are unable to correlate an IPS class, to a class used in the code, due to the use of the _ in the class name). it will also attempt to create property tags for Database columns and the setters and getters found in your code. This is useful for autocomplete and code inspection in your IDE (will make it possible for the IDE to map the class's and their method usage). Php-Toolbox Improvements: PHP-Toolbox is a plugin for phpstorm, that makes it possible to add autocompletes for methods, and alter the return type as well. Template Return Type: on Theme::getTemplate($group), this will trigger a return type that matches the $group param of the method. this will then provide possible templates that the group can provide. this is limited due to only $group being required, so it might not return the "right" template (as groups and template names aren't regulated like class names are). In my testing and use, this feature is about 95% accurate most of the time. It drastically goes up, the more unique the template name is compared to others. say you have a group called "forms" with a template in it called 'text.phtml', since IPS also has this, it could potentially return the wrong one (depends really on which order the template was processed in). Application Hinting: there are several methods in IPS that require an "app" name in their parameter, this builds a list of app names from the apps installed to "show up" when those methods are called. Table name Hinting: this is for any method that calls a Database table name, dt proxy will generate a list of table names based on the tables present at execution time. Language String Hinting: will provide a list of available language strings that can be used. Template Group Hinting: provides a list of available template groups to most methods that use them as a param. ModPermission Hinting: provides a list of available modpermissions to the methods that use them as a param. Url Hinting: provides a list of available Query Strings that can be used. Furl Hinting: provides a list of available FURL definitions. PHP Core Hinting: adds in additional hinting's and return types for PHP methods. DT Proxy Extension: The dtproxy extension, you can add property types for Request and Data\Store. It already includes some of the most common property's found in both, but you can add to this with the extension in your applications. DT Dev Center Plus: This application extends the features of the developer center for applications in IPS. this will add 3 new tabs to the dev center, along with other improvments. Tabs: Sources: this allows you to create "sources" classes for your application. there are several predefined class types you can choose from. There are also options to handle some of the "mundane" things that are involved in creating several classes. most notably are the AR\Node\Items\Comments\Review classes. with each you have the option of creating the databases at creation with a basic layout (mainly the ID column) and with the prefix used if defined (for nodes/items/comments/review, this will also add too the class and to the table it creates, any required/optional fields for IPS traits or interfaces used). For nodes and items, it will also create the corresponding module and controller. (this feature can be turned off by turning of "create scaffolding"). Dev Folder: this tab allows you to create "Dev Folder" components, such as Templates and the JS skeletons. it is not as complex as Sources, but it saves time from hunting down and cloning an existing JS/template and removing the bits you don't need. Languages: This tab shows you all the defined language strings for your app, in both jslang and lang.php. this allows you to add/remove/alter while on the tab. Features: Extension Generator: instead of just generating a blank skeleton for extensions, this feature aims to provide a working out of the box extensions. this feature atm only supports FileStorage, ContentRouter and CreateMenu. Adding/Removing Column in Versioning: this feature will allow to easily add in a query to add/remove columns for versions. Extension: Dev Center Plus has an extension called "Headerdoc". it is a bit misleading name, but it gives you the ability to do several useful things when building an app. Enabled() (bool) : if this is set to true, it will add the classes "doc block" to the file if it doesn't already exist, and if it does, it will only alter it for the files include in the tar (so the file wont be marked as changed by your repo software if you use it). IndexEnabled() (bool): if this is set to true, it will add a blank index.html to all the folders and subfolders in your application. to prevent viewing of the directory contents on servers that do not have the directory listing turned off. fileSkip() (array): allows you to add a list of files to skip during the build process of the tar. there is also a "global" skip list in the settings of DT Base for this. dirSkip(array): allow you to skip entire folds during the build process of the tar. there is also a "global" dir skip list in the settings of DT Base. exclude() (array) : allows you add a file or folder here to skip having a "header doc" added to it. useful if you use third party libraries. will automatically exclude the following directories and files: 'hooks', 'dev', 'data', '3rdparty', '3rd_party', 'vendor', '.git' and '.idea'. DT Dev Folder: ever misplaced thos pesky dev folders for your app or don't feel like alter table entries to rebuild your "plugin" dev folder manually, or simply doing work for a client and having a conflict with another app/plugin but can't debug it in in_dev due to missing dev folders, well look no further Dev Folder is the app for you. this will generate dev folders for both apps and plugins (will also allow you to install plugins while in_dev is enabled). if you have the app installed and enabled, it will automagically add the dev folders if they don't already exists . DT Code: I'm not sure where i will be going with this application exactly, right now it will search thru your code looking for lang keys and settings, it will check and verify they are both in use and defined. it can return false positives as these might not always be "defined" in a way it can read it, but can give you the ability to see which language strings are in use and get rid of the "dead" ones and same with settings. if you have any suggestions for things you would want to check in your code, let me know and i will see about implementing this feature. DT Content: Creates "dummy" content for testing purposes. Generators: members - generates random members. can select to add members randomly to a random group. forums - generates forums. topics - generates topics. will create between 1 to 30 replies per topic created. posts - randomly adds replies to topic. clubs - creates clubs with random owners and various "types" *note: unlike the "storm" version, when forums are generated they will not create topics (there was a bit of problems with this in storm, so you should create forums first, then create the topics). DT Profiler: Replaces the IPS "query log" with a more compreshensive "profiler'. to enable you must have the define('QUERY_LOG', true) in your constants.php (if you want the cache log as well, you will need to have define('CACHING_LOG', true); as well). Tabs: Execution: will display the total time a page took to process from start to finish (this isn't the load time, so don't confuse the two :)). if you click on this tab, it will display how long the framework took and the profiler to execute, so you can rule out the profiler for slowdowns). memory used: The memory used by the page when it was being executed. This feature can be expanded upon by using the Memory class in Profiler. Included Files: shows how many files are included on the page, and if you click on it will show the a list of these files.* Query Log: displays the queries being executed for the page, along with their execution time and memory load. Caching Log: displayes the stores and caches being set or got during execution. Templates: a list of all the templates in use. * CSS: a list of all the CSS files loaded.* JS: a list of all the JS files loaded.* JSVars: a list of the JS Vars defined for use. Logs: shows the most recent logs that were generated (the amount it shows can be changed in the DT Base settings). Debug: if you use the Debug class, you can add debug statements inside your app's methods. this feature uses a long polling script to query the DB for new log entries and adds them here if they are found (useful for debuging Ajax request). if you use DT Dev Center Plus, you can add a permanent Profiler/Debug class to your app, this way you can add the \IPS\myapp\Profiler\Debug::add('key', 'message') to your methods and leave them there safely for future use (as the Profiler\Debug added by Dev Center Plus will create a class that uses __callStatic and checks to see if the parent class exists, other wise it will just be ignored) InfoBar: Gives basic information about the environment, IPS version, PHP version, and Contoller being executed, along with the Method and line number that method begins on.* *: if you have define('DEV_WHOOPS_EDITOR', 'phpstorm'); (or a supported editors) in your constants.php, it will generate a link that will open the file in editor if you have the phpstorm/supported editor protocol configured ( how to's for phpstorm (how to do this in windows) (how to in linux) (how to on mac not sure how well it works as i don't have a mac ? ) ); Slasher.php This is a command line application, that you can use to add backslashes to php internal functions and constants. This has been shown to improve performance on php 7+, due to opcode enhancements. this will also improved execution times as php doesn't have to look in the local space and then globalspace for defined functions. instructions in install.txt. DT Base: This app doesn't do much on its own. it mainly exist as a "core" app, to share usefule features and code among the rest of Dev Toolbox (so we aren't spending a great deal of time reinventing the wheel for common features). It also contains the Settings and DevBar menu. This app is REQUIRED to run any of the other apps, as they heavily depend on its libraries to function correctly. There are a ton of features and abilitis i'm probably forgetting to mention here, so why don't you try it yourself, it is free after all. Hope everyone enjoys this! send me any bugs or feedback to my PM's. i wont be supporting this application in my app topic. thanks to everyone who has made this app possible! License Note: The Dev Toolbox, where applicable, is released under the 2-Clause BSD License

    Free

  9. Michael

    Babble Version 3 Update

    don't have a firm date yet, finishing up the new features and interface, and about to enter a beta period for it before releasing. in the meantime, i've released a new version 2.7.4 for chat service, that uses a site cache for online counts (it updates every 15 minutes) it wont give a real time count, but it will show at least that some one has visited in the last 15 minutes. users who are in babble, will still get real time counts. hope this helps with the activity issue.
  10. Michael

    Babble v3 Alpha 6

    i broke the commands class, i have it fixed, but there were other things i wanted to get working before i went into "beta"
  11. Michael

    Babble v3 Alpha 6

    welp, i broke it lol
  12. Michael

    Babble v3 Alpha 6

    babble chat messages are run thru the text parser for IPS, which should already be doing the built in profanity filter, but i'll double check, maybe its an extra step (you never know with IPS any more :)) as in the unix timestamp? click on the gear icon, you will see there are already sound notification options (for new message, send messages and whispers). there is already an option in the settings to set the status. i don't really want to clutter up the UI with little buttons i can make it where if they are a friend in the profile, that it can do this, but it might not be in the initial release.
  13. i've thought about grouping, i have commented out code for it, but it was a lot of buggy. i might revisit it after v3 releases.
  14. Michael

    Babble v3 Alpha 6

    lots of fine tuning has gone on this release private rooms and whispers should be working properly now. private rooms and whispers will now (or should) send out a notification if you are "offline" (each time you go to babble/switch a room/send a message, your last "online" time changes for babble, if that offline time is older than 15 minutes, you will be considered to be offline and a notification will be sent.). i've also made some style changes, dropped the background coloring, left them just to be all "white", you can still style them if you want, but i am going for a min. theme here.
  15. Michael

    Babble

    I would generally assume you are cyboman over on the IPS forum, but incase you are not , i've addressed this in more detail here: https://invisioncommunity.com/forums/topic/430583-babble-real-time-chat/?do=findComment&comment=2749716 not all the requested features will end up in babble and only a few will end up in the initial release of v3, but i'm always open to suggestions . Hopefully the features i do add in v3 for the bots, will be beneficial to everyones communities as i've added a few new ones, along with the old ones and the bot configuration is less messy than it was in v2 (instead of a bot being tied to a room, it is its own node now, allowing you to select which rooms to attach it too, along with which groups to send out too). I'll be writing up a more in depth article on the front page about bots in the near future as i get closer to getting them laid out and some what functional in v3. so stay tuned
  16. alpha 2 to 5 have mostly been PHP fixes and work, little to no work has went on on the front end so the things that were broken in the first alpha, remain broken in this alpha. One of the new front end features i've been wanting to bring to babble for awhile, is instead of fixed heights for everything, i wanted dynamic heights for it. so it will responsd to the view port size (well, it will measure from the top of babble itself to the bottom of the view port, and resize everything to 70% of the height of that area, hopefully avoid scroll bars and what not. the chat message area has a min height of 150px, cause i just know there will be one person out there that be on one of those 3 inch cheap af android smartphones from back in 2011 that has resolution of a calculator ). I've also been getting a huge amount of feedback from the IPS forums, mainly cyboman, who has given me a ton of great ideas on how to improve bots and other features in Babble. so like always if you have a suggestion, this is the best time to make it
  17. an oddity indeed, for me it just stalls out, doesn't do anything like that.that is when you are hitting the + button next to "online" correct?
  18. you can now test out an alpha of babble v3. https://codingjungle.com/babble/ there will be bugs with it, uploads do not currently work (they will upload but they wont attach to the topic) and a lot of the commands are still out of commission, edit/delete don't work (well they sorta do, but its not a permanent thing yet) . whispers and private rooms should work without a hitch. oh you should also be able to use markdown along with bbc in the editor error, so give that a go if you know markdown. so if you find anything that i haven't mentioned here, please let me know, as i'm pretty sure i got all the features i wanted to add in, now its just shoring everything up and getting some styling going on to finish it off
  19. Michael

    Babble Version 3 Update

    there was still a online list, the only difference was it wasn't always shown, how it is in like slack/rocket chat. a PM history list showed the status of the people you had sent PM's too, to me those would be most likely the people i was interested in chatting with and seeing if they were online or not. however instead of plowing forward and making only my vision, i've decided to compromise. there is still a pm history list, but its been merged with the online list. people you have whispered too will be perpetually apart of the list (you will have the option to remove them, but they will automatically clear out after 2 weeks of no activity with them). if they are online, they will show at the top of the list with the rest of the users, if they are offline or go invisible, they will be moved to the bottom of the list (until they come online or you initiate a chat with them). if you receive a PM that PM will move to the top of the list. Note: keep in mind this is still an alpha, and not the finalized version, as you can see there are bugs that creep up in the video.
  20. Michael

    Babble Version 3 Update

    i've restarted both servers over the weekend, let me know if they are still stuck.
  21. Michael

    Babble Version 3 Update

    It will return in version 3. there were a few sites that were having connections ranging up into the several thousands due the counts (multiple tabs, large influx of guest activity). Had to completely rethink it for v3 to avoid that issue with the chat service, as one site having that many connections, degraded the service for everyone else.
  22. Michael

    Babble Version 3 Update

    it was restarted last night, are they still "stuck" in it? out of curiosity, is this stuck user a random user always or is it the same one? I'll look into options, but right now i'm gonna say this probably wont happen, as the "rooms" and "pm" list code is already been done and they are pretty integral already. I might consider replacing the PM list and replacing it with an online list, make it a setting in the ACP and then having the user icon bring up the PM list instead of a online list, would that be better?
  23. showing off the new @list and command list, ignore the bugs, as this is relatively new code haven't gotten to actually debugging to testing it for all the issues it could have
  24. Michael

    Babble Version 3 Update

    I'm not completely closed to having an online list. slack and rocket chat are two chats i'm drawing inspiration from for babble v3, i'm also aiming to make v3 as "compact" as possible (as one of the complaints for v2 there is too much "white space" and/or its layout is ineffective or outdated). the online list i'm envisioning for v3 (the popup) wont be separated by room, it will show which rooms the members are currently connected too (well the ones you have access too, other wise if they are connected to a different set of rooms that you don't have access to, it will just show them being online). the other problem, where to put it. the channel block can be place on the left or the right side (default is the right side), what i'll prolly end up doing, is putting it on the side of the channel block that touches the message window and give people the option to collapse it. my other huge concern is the aforementioned sync problem. in v2 i tried to maintain a list on the node side of things and then updated as people logged in/off from it. this proved far more difficult than originally thought, as there were various issues with ghosting (people appearing there, but not actually there) and creepers (people who didn't appear there, but were able to chat, but they weren't logged in as anon). in v3, i'm adding their user data to their socket connection and then crawling the connected sockets when a request is made (it is how the new whisper history list works, it makes a request, just like the online list when a button is pushed) and then when they disconnect or log in, it emits a notification about that. so all the elements are already there for a always on online list, so i don't think the problems that use to exist in v2, will exist in v3. i don't want to promise that it wont have issues, as those sort of promises seem to have a tendency of biting me. I'll add in a option to enable the online list, but i will mark it as "experimental". i will support it within reason, but if it causes me grief like v2's online list has, i will remove it.
×
×
  • Create New...