The Techjoomla Blog

Stay updated with all the latest happenings at Techjoomla. From news about the developments in your favourite extensions to Tips & Tricks about the Joomla CMS, Framework & Development.

Packaging system for Joomla extensions

packagingsystemforjoomlaextensions

Joomla extension package is a combination of core, sub-extension, libraries, layouts, core folder, etc.

Many of Techjoomla’s extensions are shipped with other Techjoomla extensions and infrastructure extensions. For eg:-JTicketing is shipped with JLike along with TJ Vendor, TJ Notifications and TJ Reports. Let's assume that each extension code is maintained in separate GitHub repositories.

Continue reading
0
  1081 Hits
  0 Comments
1081 Hits
0 Comments

Using Cookies and CSRF tokens effectively

Using-Cookies-and-CSRF-tokens-effectively

What is CSRF?

CSRF (Cross-Site Request Forgery) is a type of attack which tricks the victim to do a task on the victim authenticated web-application on behalf of the interests of the attacker. An application vulnerable to CSRF enables attackers to perform any actions on the victim’s behalf without his/her knowledge.  

Continue reading
0
  1438 Hits
  0 Comments
1438 Hits
0 Comments

Joomla Development with Eclipse: Tips, Tricks, and Best Practices

Joomla-Development-with-Eclipse

Every developer uses a set of tools that simplifies their life and without which their development life feels crippled! Over the years, I have developed my own set of tools which I have described in this blog.

Continue reading
0
  1820 Hits
  0 Comments
1820 Hits
0 Comments

Joomla! Development - Common Mistakes To Avoid

Joomla-Development---Common-Mistakes-To-Avoid

In this series of blogs, we will talk about common mistakes to avoid while building extensions for Joomla!.

In this particular blog, we will talk about these four common mistakes:

  • Not using language constants and instead of hard coding language strings
  • Not using JInput and instead directly accessing $_POST or $_GET
  • Not using the Joomla Database layer and writing plain database queries instead
  • Wrong usage of loadObjectList / loadAssocList() (Using loadObjectList() when just 1 row is needed)
Continue reading
0
  1802 Hits
  0 Comments
1802 Hits
0 Comments

TJ UCM - Yet another Joomla Universal Content Manager

Universal-Content-Manager-is-here

Joomla has tried to create a content manager / CCK for several years now. Though the project has been inactive, there are a few database tables that Joomla still uses, mainly for storing content history. Although the original UCM in its spirit isn’t part of Joomla, similar functionality has been introduced by article fields. 

Continue reading
0
  1217 Hits
  0 Comments
1217 Hits
0 Comments

The right way to build a Joomla site - Part I

Foodies-Vocabular_20190903-130925_1

I recently happened to have a client approach us to build a mobile app. What should have been a fairly quick job turned out into a mid sized development project. The reason ? They had created almost half a dozen custom components where articles could have served the purpose.

Continue reading
1
  3699 Hits
  0 Comments
3699 Hits
0 Comments

TJ Queue - A message queue for Joomla

TJ-Queue-is-here

As we go on in our pursuit to use Joomla in never-seen-before use cases a few interesting problems came forth.

  • A web-hooks implementation: Similar to how plugins can declare triggers they want to listen to, webhooks allow external applications to register URLs that can receive a JSON payload when an action happens in an application. Since there could be multiple webhooks, each webhook call is queued as a message and happens asynchronously.
  • In Shika: Recalculating user progress in the background. When a new lesson is added to a course, Shika recalculates each enrolled user’s progress to take into account the newly added lesson. When there are a lot of lessons and a large number of users enrolled in the course, this recalculation cannot happen in real time. In this case, a recalculation job does this in the background once the lesson is saved.
Continue reading
1
  6529 Hits
  0 Comments
6529 Hits
0 Comments

Some JavaScript code snippets in Joomla worth keeping in your stash

Some-Joomla-Javascript-Code-Snippets-Worth-Keeping-in-your-Stash

In this blog, I will be explaining some JavaScript snippets which are very useful while developing extensions in Joomla. Let’s start one by one.

Continue reading
1
  5986 Hits
  0 Comments
5986 Hits
0 Comments

Building Chatbots with Joomla

Building-Chatbots-with-joomla

Chatbots are a great new way to engage with clients. A chatbot allows for a more "conversational" style of interaction as opposed to the traditional "transactional" way of interacting with web applications. A well-designed conversation experience can keep users hooked and increase the time spent with your applications. In this blog, we write about how we used FlowXO to create a quizzing bot for Shika

Continue reading
0
  15529 Hits
  0 Comments
15529 Hits
0 Comments

Hierarchy Management is here!

Hierarchy Management is here!

For the past couple of months, we have released couple of blogs on some of our infrastructure extensions like TJ vendor and TJ notifications and we thank you for the feedback. We are happy to introduce yet another infrastructure extension-Hierarchy Management.

Hierarchy Management is an horizontal(Infrastructure) extension for Joomla that allows setting up general or context specific hierarchical relations between users which can be further be used by other extensions for a variety of purposes like allowing special access control, reports generation and so on. Hierarchy is currently supported out of the box by TJ Reports for manager reporting and JLike for assignments. Read on for the features.

Continue reading
1
  5551 Hits
  0 Comments
5551 Hits
0 Comments

TJ Reports-Universal reporting engine for Joomla is here!

TJ Reports-Universal reporting engine for Joomla is here!

We are super excited to introduce TJ Reports - our Infrastructure extension that allows developers to easily develop reporting plugins and get extensive reporting capabilities in their extensions. Features include extension specific and multi extension reports, Report default configuration, Report customisation and CSV exports to name a few.

Let’s look at the features it offers in detail as well as how the integration with extensions works. Continue reading for the feature list.

Continue reading
3
  6459 Hits
  0 Comments
6459 Hits
0 Comments

TJ Notifications is here!

TJ-Notifications-is-here-1

Over the years we have received numerous requests to create a 'real manager’ or a way to edit system email notifications. We decided to go one step further. Enter TJ Notifications, our next 'horizontal’ or 'infrastructure’ extension.

This extension will eventually allow all our products and any other products who integrate it to centrally manage all notifications in your Joomla site. While we will start with emails, eventually we shall be adding support for SMS/Text notifications, Web Push (browser notifications) as well as native site notifications.

Continue reading
1
  7117 Hits
  0 Comments
7117 Hits
0 Comments

TJ Vendor - The infrastructure extension for unified vendor management & payouts

TJ-VENDORS-IS-HERE

You might have wondered at our blogs being a little silent. Well a lot has been happening behind the scenes. In the past several months our teams have been working on a host of ‘Infrastructure’ extensions that will add immense value and decrease development time for our extensions as well as custom projects.  

Infrastructure extensions are like Joomla’s core com_categories. Other extensions can use it without having to recreate the wheel. The below diagram should give you just a little bit of an idea as to what all is coming !

 

In this blog we shall be talking about one such extension - TJ Vendor. Techjoomla today already has several extensions like Quick2Cart, JGive, JTicketing that support a multi vendor mode. Soon Shika will have the same functionality. The core of the multi vendor system that supports Vendor Management, Fees management, Payouts to name a few have been abstracted into a reusable extension.

Continue reading
4
  12927 Hits
  0 Comments
12927 Hits
0 Comments

Using custom field of jform create textcounter

Using-custom-field-of-jform-create-textcounter-1
Joomla already has powerful form management libraries - jform, supported by jfield. There is plenty of built-in field types (text, textarea, integer, file, calendar and several more). However, once in a while you come across a special field that is not present. Or maybe extending the existing field types to add more features.These are perfect candi...
Continue reading
1
  3028 Hits
  0 Comments
3028 Hits
0 Comments

Using sub-forms to create repeatable fields

Using-sub-forms-to-create-repeatable-fields
Forms are everywhere on the web. From a simple sign up form to complicated application forms you’ve seen various forms with varying validation and fields. A very popular way to ask users to input multiple values for similar data is to use the “Add More” type field where the user can add any number of entries. Examples are Educational Qualification,...
Continue reading
11
  24809 Hits
  0 Comments
24809 Hits
0 Comments