Skip to content

026 How to setup a store message method along side the email helper class

Amigo edited this page Jun 14, 2019 · 14 revisions

HOW TO SETUP A STORE MESSAGE METHOD ALONG SIDE THE EMAIL HELPER CLASS

  • Example In Code

Hi, I've already done a tutorial how to use the email helper in your components. In that tutorial I actually do touch upon the storing of messages. Or emails for that matter once it's been sent. I would like to look at that again. For those of you that may just be wanting to know. 00:00:24 At this stage you should know that the email helper class is added to the helper folder of your components back end. It's usually called your components name and then email, that's the email helper class. To use it in the custom script you could use the 3 brackets [[[component]]]email' and send. 00:00:59 That is how you would construct your script. I will show that as well in the tutorial as we going to in more depths of how to use the email helper.

Code Snippet In Method

At the very bottom of this class in the send method, 00:01:21 there is a little snippet, it is quite significant as it may seem, it actually gives you a great ability. Because the result of the email that was sent is placed in sendemail. This result is passed to the method as well. First it looks in your helper class 00:01:47 which is usually a component name, helper, that's the helper class whether this method exists in that class. This method will not exist unless you write it. The area where you would have to write this method, is in the component. There is an area called 00:02:13 admin helper.

Adding Code To Admin Helper Area

We open a component. We go to libraries and helpers. We scroll down. We see there is email helper. Then underneath it, helper admin class. And it's in this(php) area that you need to add that method. Now I realized I've chosen the wrong components. This component actually does not use that storage concept, 00:02:47 but there is another one that does. Let's open that one instead then. So again we are in helper admin class, we have a function called storemessage, and this is in the components, where you edit your component. Storemessage has a signature. Values that it is passing to the method. In the 00:03:19 email helper class, you will see that it also has a signature. Wherever it gives this '=null' with a value, that is the default value. If you do not add a value for this position, there is one, two, three, four, fifth, positions, then it will default it to 0, if we do not add this, it will default to null. From there all the way to the end all of those values have the 00:03:51 null value. In reality you only need to add the first four values. Those values are all used in this method(see video). If you want to understand exactly how these value should look, look inside of the method, read through the method, and you will see.

Making a long story short, 00:04:17 we end up here at this little script. Basically ask whether you created the method or not. If you didn't it simple skips it and returns the value of send mail. If it sees that you have created it, it'll pass these variables that correspond to the signature. And then inside of that method that is in your helper class, that is how this method, you need to do the necessary checks and balances, and discovering for example since you've got the email address. 00:04:52 You can search with the getVar in the user class. It must equal email, recipient equal email, and then returns to us the id. So 00:05:09 That is basically how the getVar works. Then when we have the user id, we can make sure it's the number and we set it to our message as user. We set it as the email. Now we can store the message in whatever table or do whatever we want to do beyond the normal. Even if you want to do other things except 00:05:38 storing the message. This is the method inside of which you can do it. Storemessage is the method inside which you can do some more custom scripting on top of your email integration. That's just quickly giving a little bit more depth on that specific aspect of using the email class in your component.

Clone this wiki locally