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.

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.  

Assume currently you are shopping on a website that uses inhouse credits as currency. You are currently logged into the site and browsing for some products. Then you visit some other site for a cool new wallpaper for your desktop, not knowing that it is a malicious site and you hit the download button for the image.

Continue reading
0
  629 Hits
  0 Comments
629 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.

The primary OS for my development related tasks is Ubuntu with Eclipse IDE, so the entire blog is targeted for Eclipse.

Continue reading
0
  946 Hits
  0 Comments
946 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
  1118 Hits
  0 Comments
1118 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
  931 Hits
  0 Comments
931 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
  2803 Hits
  0 Comments
2803 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
  5838 Hits
  0 Comments
5838 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
  5295 Hits
  0 Comments
5295 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
  14330 Hits
  0 Comments
14330 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
  5220 Hits
  0 Comments
5220 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
  6101 Hits
  0 Comments
6101 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
  6791 Hits
  0 Comments
6791 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
  11901 Hits
  0 Comments
11901 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
  2690 Hits
  0 Comments
2690 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
  24255 Hits
  0 Comments
24255 Hits
0 Comments

How to make a URL SEF when triggered from Joomla backend?

How to make a URL SEF when triggered from Joomla backend?
Any Joomla developer worth his salt knows to use JRoute::_() to ensure he produces SEF URLs. This is an important SEO thing! However, if you’re writing code that does things from the Joomla Admin, the URLs turn out to be non-SEF. No I’m not talking about the URLs of the Joomla Admin itself.For Instance,Shika sends a notification email with a link t...
Continue reading
3
  6156 Hits
  0 Comments
6156 Hits
0 Comments