10 Secrets that will make you a master of Opencart Events
If you are an Opencart Developer, you have probably heard about events. If you come from wordpress like me, you would definitely relate this to their hooks API and when Opencart Events first arrived in opencart 2.0.0.0 they were very similar in terms of the naming approach. This changed in the version 2.2.0.0 when the Opencart team changed the way events where triggered and this we believe will revolutionize Opencart forever.
What are events?
First of all, what are ¨events〃 in the opencart core understanding? Events are methods that are called when an action takes place. In other words, you can define specifically the moment when you want your custom function to run in the opencart store.
Before ¨events〃 for a long time we have been using VQMOD, a modification system that uses an XML file to add changes to files of opencart. It would run in the beginning, creating vqmod cache files with the modifications and then the opencart core system would use those new files to make the changes. In other words, you would change the codebase, but the changes would be added on the fly.
The idea was great at that moment and it really boosted opencart since it allowed for the developer to create any kind of modification without altering the actually core files, making installation of modules and the future opencart upgrade easier.
As good as it sounds, it created a whole level of conflicts between custom modules, leading to hours and even days of work to fix. Mostly, due to poorly created modifications.
Still, even with this drawback, VQMOD, and further OCMOD, a native implementation of VQMOD concept directly in Opencart, gives us, developers, a great tool.
So how can Events help me better then VQMOD/OCMOD?
Events are simple functions that execute at a specific moment in your opencart runtime and modify the output not the codebase. For example, if you want to run a function before the common/header controller is loaded, you can do that. Or if you want to add some html to the output of the common/header view you can do that as well. There is no file manipulation so you wonˇt need to worry about creating conflicts by altering the code the code base stays the same.
Sound interesting, but how do I actually use it?
Lets try an example. Say, you have another tpl file for the header and you need the header controller to load my_custom_header.tpl.
VQMOD/OCMOD solution:
Create a modification that would edit the $this->load->view method in the controller.
You would need to add the trigger yourself during the installation of your module or use the Event Manager to do it manually
Of course there could be an extension that also wants to change the tpl file and load its second_custom_header.tpl so there are always a possibility of conflicts, yet with events the chances are dramatically reduced.
You can find more information in the documentation here
10 Tips that will make you events rock!
There are some rules you should know about events and trigger naming before diving into events.
1. The trigger name starts with admin or catalog. Even if you are calling a config file,which is in systemfolder, you will call it either in admin or catalog.Ex: trigger: admin/config/admin/after
2. Actions are defined only in the controllers. So even if you want to trigger them for a model, you still must define them in a controller. Ex: file location will be admin/controller/event/admin_config_modification.php
3. The Catalog View trigger before and after are different. This is not necessarily a bug, yet is not obvious from the start. Ex: before trigger: catalog/view/common/header/before Ex: after trigger: catalog/view/default/template/common/header/after
The reason this happens, is that the controller passes the $route value of ‘common/header’ yet opencart builds up the $route with the theme settings using an event action located in catalog/controller/event/theme.php. This only happens in the
catalog (frontend) and not in the admin since admin does not have a theme option.
4. You can use the wildcard symbol (*) in your trigger. This will save you the time creatingalmost the same triggers for different paths.
5. You will need to set the events upfront in your admin using the event model from your admin/model/extension/event.php. The perfect way of adding is when someone is installing your extension.
6. You can not create events from the catalog, only admin. There is no method in the catalog/model for that. Well, why would you, right?
7. Remember, that the $this->load- >config does not return anything, so you can’t actually modify the $output of the config file, yet you can still add modify with $this->config->set() method.
8. Same goes for Language files, the only difference is the language $output is returned and you can evaluate it. But you still need $this->language- >set() method to modify.
9. To avoid theme conflicts, you can alter the html $output of the view with simple html DOM library. You can also move the selectors to the module config and allow edit in the admin panel for the user to set it in case the custom theme differs from the default.
10. Remember that your event action is not he only one in the loop. Try to return the$output that the next action can safely use. This is probably the most important rule of them all.
NEW DELHI: Satta Matka is a form of gambling or lottery that ..
NEW DELHI: Satta Matka is a form of gambling or lottery that had originated before the Independence of India.
Originally, the game of Matka gambling involved betting on the opening and closing rates of cotton as transmitted to the Bombay Cotton Exchange from the New York Cotton Exchange, via teleprinters.
The modern-day Matka gambling/ Satta King is based on random number selection and betting. The players participating in the Satta Matka game/ gambling are required to choose the right number for winning the game. The player who wins the game becomes Satta King and is rewarded financially.
Two of the most famous Matka games are – Kalyan and Worli.
The Kalyan Matka gambling was started by Kalyanji Bhagat, a farmer from Gujarat, in 1962 and it ran for all days of the week.
Another Matka gambling, New Worli Matka, was started by the Rattan Khatri in 1964 with slight modifications to the rules of the game. Khatri’s Matka ran only five days a week, from Monday to Friday.
Term
Meaning
Matka
Matka means earthen pot that were used to draw numbers
Single
Any digit between 0 and 9
Jodi/Pair
Any pair of two digits between 00 and 99
Patti/Panna
Three digit number
Open result / close result
Outcome of matka betting
Berij
Berij is last digit of jodi’s/pair’s sum
Any form of Satta Matka gambling is illegal in India.
Disclaimer: This content is for reference purpose only and The Times of India claims no ownership of this content. The Times of India does not support or promote piracy in any manner.
Here at Firebase, we believe that apps improve the way people live, work, learn, and socialize. That’s why our mission is to make app development as easy as possible by giving you a platform that solves key challenges across the app lifecycle. Whether you’re an up-and-coming startup or a well-established enterprise, Firebase can help you build your app, improve its quality, and grow your business.
It’s exciting to evolve Firebase alongside our passionate community. Right now, over 1.5 million apps are actively using Firebase every month. We love hearing your stories; they inspire us to keep making Firebase even better so you can continue to succeed. One story we heard recently is from Hotstar, India’s largest entertainment app with over 150 million monthly active users around the world.
A few months ago, the Hotstar team safely rolled out new features to their video watch screen during a major live-streaming sports event. These changes, along with updates to their onboarding flow, increased user engagement by 38%! Impressively, by using a combination of Firebase products, Hotstar was able to do this without disrupting users, sacrificing stability or releasing a new build.
Learn more about their story here:
Today, we’re hosting the third annual Firebase Summit in Prague to meet many more members of our developer community and learn about the great things they’re building. All sessions will be posted to our YouTube channel or you can read on to learn about all the exciting new updates we’re announcing today!
Supporting sophisticated development teams
We’ve been working hard to make it easier for sophisticated app development teams to use Firebase. Today, we’re excited to share that we’ll be adding support for Firebase to our Google Cloud Platform (GCP) support packages, available in beta by the end of this year.
If you already have a paid GCP support package, our beta will let you get your Firebase questions answered through the GCP support channel – at no additional charge. When this new support graduates to general availability, it will include target response times, technical account management (for enterprise tier), and more. You can learn more about GCP support here.
If you’re planning to stick with Firebase’s free support, don’t worry – we don’t plan to change anything about our existing support model. Please continue to reach out to our friendly support team for help as needed.
In addition to Cloud support, we’ve made improvements to Firebase across the board. More below!
New tools for building better apps
Manage projects with ease via Firebase Management API
We’ve worked hard to open access to our server-side APIs, so that you can easily integrate Firebase services with your existing systems. Today we’re releasing the Firebase Management API, a REST API that allows you to create and manage projects and apps programmatically. Now, you can create and destroy Firebase environments as part of your existing developer workflow.
The Management API is also enabling partners to build awesome new experiences. We’re thrilled to share that you can now deploy to Firebase Hosting directly from within StackBlitz and Glitch, two web-based IDEs. Their platforms will now automatically detect when you are creating a Firebase app and allow you to deploy to Firebase Hosting with the click of a button, without ever leaving their platforms.
What’s especially cool is that this isn’t just for partners. This is a new, extensible API and we’re very excited to see what you build with it. You can learn more and get started here.
Enhanced face detection with ML Kit
Launched at Google I/O in May, ML Kit makes machine learning easy and accessible for all app developers, regardless of your experience with ML. If you’re new to the space you can use ML Kit’s out-of-the-box APIs, like text recognition or face detection, or if you’re more experienced you can bring your own custom TensorFlow Lite models and serve them through Firebase.
Today, we’re expanding on the face detection API with the beta launch of face contours, allowing you to detect 100+ detailed points in and around a user’s face. The face contours functionality empowers apps to easily overlay masks or accessories on facial features with high fidelity and accurate positioning, or add beautification elements, like skin smoothing or coloration. See our docs to learn more!
Increased confidence in deployment with Cloud Firestore
In the past, we’ve heard feedback that testing can be tricky on Firebase. For example, it’s sometimes hard to set the right rules to ensure your apps are secure. To help with this problem, we’re releasing local emulators for Cloud Firestore and the Realtime Database. These emulators let you develop and test locally, and can be built into your continuous integration workflow so you can deploy with more confidence and peace of mind. Learn more about the emulator here.
Propagate Remote Config updates in near real time + integration with Cloud Functions
Developers love using Remote Config because it gives them the ability to modify their app, customize the UI, or release a new feature without deploying a new version that could disrupt users. But, there was no easy way of knowing when an app’s Remote Config was updated! You had to fetch updates from Remote Config every few hours to ensure your users always saw the latest changes in their app.
Today, we’re happy to announce that Remote Config now integrates with Cloud Functions & Firebase Cloud Messaging so you can notify your apps in near real time when you publish (or rollback) a new config. This reduces the set-up complexity of Remote Config and uses less bandwidth on devices because apps only need to fetch when a new config is available.
Additionally, Remote Config can now trigger developer-defined functions when you publish or rollback your config. This way, you can keep different Remote Config projects in sync (for development/staging/production environment workflows), as well as send Slack messages to your team when a new config is published. To learn more, visit our docs!
From our early access partner eBay:
“The combination of the Cloud Functions with the Firebase Remote Config REST API has allowed my distributed team at eBay to be instantly notified of any changes to our application’s configuration. Using these tools to create a function which pushes changes to Slack ensures everybody who needs to know about a configuration change has that information immediately.”
– Jake Hall, eBay Classifieds Group Mobile Architect
New tools for improving app quality
Test Lab for iOS graduates into general availability
At Google I/O, we also launched the beta availability of Firebase Test Labfor iOS. Over the last several months, we’ve expanded the iOS device farm, added support for iOS 12 as well as for older iOS versions, and integrated the UI for iOS into the Firebase console. With these updates, we are graduating Test Lab for iOS out of beta and into general availability. Learn more and get started with Test Lab today!
Performance Monitoring: Sessions insights and issues management
Even if you run thorough tests throughout your development lifecycle, bugs and performance issues will pop up in your production app from time to time. Performance Monitoring gives you insight into these issues and automatically surfaces the most critical issues in a given trace instance (i.e. a particular app start or checkout flow). Now, you can dive into an individual trace session to see exactly what was going on when a performance issue occurred.
For example, in the following dashboard, you could see that CPU usage spiked after the app fetches and renders a product image, which tells you the specific part of code to investigate.
With all the data and issues that Performance Monitoring surfaces, it can be hard to prioritize your efforts. That’s why we’re also launching the ability to “mute”, “close”, and “reopen” issues in your console. Muting temporarily silences the issue, so you can concentrate on other work, until you’re ready to tackle it. Marking an issue as closed indicates that it’s been solved, but Firebase will notify you if it occurs again.
Learn more about session insights and issues management here.
Crashlytics is now integrated with PagerDuty
App performance and stability issues can occur anytime. To help you stay on top of stability, even when you’re away from your desk, we’re introducing a Firebase Crashlytics stability digest email and a new integration with PagerDuty. The stability digest highlights emerging issues that could become problematic in the future, while the PagerDuty integration allows you to alert your team about a high impact crash, any time of day. To connect Crashlytics with PagerDuty, follow the steps here.
Do more with your data with BigQuery + Data Studio
Earlier this year, we integrated Crashlytics with BigQuery so you can run deeper analysis on your crash data. To help you get started in BigQuery, we’ve put together a Data Studio template, so you can quickly produce a shareable report. You can preview the template with mock data, and then customize the report to suit your needs. Learn more here.
New tools for growing your business
Predictions graduates out of beta into general availability
Last year at the Firebase Summit, we introduced you to Firebase Predictions. Predictions applies Google’s machine learning to your app analytics data to create user segments based on predicted behavior. Without requiring anyone on your app team to have ML expertise, Predictions give you insight into which segments of users are likely to churn or spend (or complete another conversion event) so you can make informed product decisions. This year, we’re excited to announce that Predictions is graduating out of beta and into general availability with a host of new features designed to make Predictions more useful.
Wondering what goes go into any given prediction? We added a new details page that shows you what factors the ML model considered (like events, device, user data, etc.) to make that prediction. We also now expose performance metrics for each prediction, letting you see how the prediction has performed historically against actual user behavior, so you can better calibrate your risk tolerance level. And, if you want to do a deeper analysis of prediction data or use it in third party services, you can export your complete prediction dataset to BigQuery.
Reach users more effectively with dynamic audiences in Google Analytics
Google Analytics for Firebase has always given you the ability to segment your users into audiences based on events, device type, and other dimensions. Now, we’re enhancing the audience builder with a few major updates: dynamic audience evaluation, audience exclusion, and membership duration.
First, audiences are now dynamic by default, meaning that Firebase will pull in new users that meet your criteria and automatically remove users that no longer meet your criteria. If, for example, you set up an audience of users who are on level 5 in your game, as users beat the level and move on to level 6, they will automatically be removed from the audience. Conversely, once users advance to level 5 they will automatically be added to the level 5 audience you’ve established.
Secondly, you can refine your audience by adding exclusion criteria using and/or statements which enable you to create audiences like “users that have added to their shopping cart but not made a purchase”.
Finally, audiences can now include a membership duration, allowing you to ensure that your audiences stay fresh. This enables you to target users who have completed an action within a specific time period, e.g. “made a purchase within the past two weeks”.
Dynamic audiences allow you to reach your users more effectively with relevant messaging and a more personalized app experience. Learn more and get started with dynamic audiences here.
Run automatically recurring campaigns with Cloud Messaging
Once you’ve defined your user segments using Analytics or Predictions, you can use Firebase Cloud Messaging (FCM) to send notifications to latent users to bring them back into your app. We’ve redesigned the notifications console to support more sophisticated campaigns. This new UI gives you the power to set up recurring notification campaigns that automatically send messages to new users as they meet the targeting criteria. Previously, you could only schedule one-time sends.
Additionally, the new notifications UI allows you to easily target users based on the date of their first session or the number of days since they last opened an app. And last but not least, we’ve updated the campaign results view so you can track the effectiveness of recurring notification campaigns day-by-day.
advantages and disadvantages of amazon web services
The AWS bouquet of services includes the following:
Simple Storage Service – This covers archiving of application programs and data and online backup. The service is low cost, high speed and scalable.
CloudDrive – This lets users utilize web-connected devices to access and upload photos, music, documents, and videos. They can also use their devices to stream music.
RedShift – The service is designed for analytic workloads connecting with business intelligence tools and standard SQL based clients. It is a data warehouse service that handles petabyte-scale data.
CloudSearch – is used for the integration of customized search capabilities and is a scalable search service.
Mechanical Turk – This lets developers incorporate human intelligence in remote procedure calls. It is an application program interface (API) that uses a human network to carry out tasks that computers are not suitable for.
Dynamo Database – is a NoSQL database which is fully managed and known for its scalability and low latencies.
ElastiCache – is protocol-compliant with Memcached, which alleviates database load by speeding up dynamic web applications. Memcached is an open source and high performing distributed memory object caching system. ElastiCache is a fully managed caching service.
Elastic Compute Cloud – can be used as an unlimited number of virtual machines and lets business subscribers run app programs.
Satta Matka 2023: भारत में बढ़ रहा है सट्टा मटका का क्रेज, ऑनलाइन खेलते हैं लोग
भारत में Satta Matka लगाने का क्रेज लोगों के बीच बढ़ता जा रहा है। पुलिस और प्रशासन के लगाम लगाने के बावजूद लोग चोरी छिपे सट्टा मटकाखेलते हैं। पुलिस से बचने के लिए आजकल कई लोग Online Sattaखेलते हैं। इससे उनके बारे में किसी को पता नहीं चलता है।
गैरकानूनी लॉटरी गेम है सट्टा मटका सट्टा मटका एक तरह की Lottery Game है इसकी शुरुआत अमेरिका में हुई थी लेकिन भारत में भी यह काफी लोकप्रिय हो चुका है। यह एक तरह का सट्टा गेम है। इसे मटका इसलिए कहा जाता है क्योंकि पुराने समय में मटके में नंबर डाले जाते थे। भारत में सट्टा मटका खेलना गैरकानूनी है लेकिन लोग फिर भी इसे खेलते हैं।
कैसे खेलते हैं सट्टा मटका सट्टा मटके में कई नंबर होते हैं जिसमें से एक यूनिक नंबर पर ही लॉटरी निकलती है अगर आपका वो नंबर निकल गया तो आप मालामाल हो जाएंगे अगर नहीं निकला तो सारे पैसे गंवा देंगे।
ऑनलाइन भी खेलते हैं सट्टा मटका टेक्नोलॉजी के विस्तार के कारण अब कई तरह के Satta Matka 2018 ऑनलाइन खेले जाते हैं यहां तक कि इसके कई ऐप्स भी मौजूद हैं। पुलिस से बचने के लिए लोग इसे खेल को ऑनलाइन भी खेलते हैं क्योंकि इसमें पकड़े जाने के चांस बहुत कम होते हैं।
कई तरह के होते हैं सट्टा मटका गेम्स भारत में कई तरह के सट्टा मटका गेम्स खेले जाते हैं जैसे कल्याण मटका, कुबेर मटका, दी पी बॉस, मैन मुंबई मटका, इंडियन मटका, वाली मटका, सुपर डे मटका, बॉस मटका, कुबेर मटका, मधुर मटका, ब्लैक सट्टा, गली दिसावर, गुरु दिल्ली, मायापुरी, दिल्ली किंग, मुंबई मॉर्निंग आदि।
डिस्क्लेमर: इस खबर का उद्देश्य सिर्फ आपको खबरों से अपडेट रखना है। हम किसी भी तरह से सट्टा/ जुआ या इस तरह की गैर-कानूनी गतिविधियों को प्रोत्साहित नहीं करते हैं।
5 Situations Where Your Train Ticket Refund Can Be Rejected
5 Situations Where Your Train Ticket Refund Can Be Rejected
You may have booked a train ticket through IRCTC website or from the railway ticket counter but you later had a change of plan and decided to cancel the ticket. If you haven’t received the refund, here are 10 such situations that may be the reason for rejection of refund request by IRCTC. Note that these are applicable on e-tickets or i-tickets only.
1. Tatkal ticket
Tatkal ticket provision allows passengers to book a train journey ticket just 24 hours prior to the date of the journey at a higher price. These were introduced for last minute bookings for people travelling due to various emergency reasons
However, no refund is provided to the user on cancellation of a confirmed tatkal ticket. If your ticket was on the waitlist or incase of contingent cancellation, you will get a partial refund from the department as per the prescribed rules. Partial cancellation of Tatkal e-tickets is allowed.
2. Confirmed ticket on the day of journey
You will not be receiving any refund if you cancel a confirmed ticket less than 4 hours prior to the train’s scheduled departure. If a confirmed ticket is cancelled more than 48 hrs before the scheduled departure of the train, flat cancellation charges shall be deducted at Rs.240 for AC First Class/Executive Class, Rs.200 for AC 2 Tier/First Class, Rs. 180 for AC 3 Tier/AC Chair car/ AC 3 Economy, Rs.120 for Sleeper Class and Rs.60 for Second Class.
Cancellation charges are per passenger. If a confirmed ticket is cancelled within 48 hrs and up to 12 hours before the scheduled departure of the train, cancellation charges shall be 25% of the fare subject to the minimum flat rate mentioned in the above clause.
3. RAC ticket on the day of journey
Any refund will not be given by the Indian Railways on a RAC (reservation against cancellation) e-ticket if the cancellation is not filed up to 30 minutes before the scheduled departure of the train.
4. Party tickets
In case, on a party e-ticket or a family e-ticket issued for travel of more than one passenger, some passengers have confirmed reservation and others are on RAC or waiting list, full refund of fare (minus clerkage), shall be admissible for confirmed passengers also subject to the condition that the ticket shall be cancelled online or online TDR shall be filed for all the passengers up to thirty minutes prior to the scheduled departure of the train.
5. Lost I-ticket
If you lose your ticket, make sure you inform the authorities immediately about the loss. The passenger can be issued a duplicate ticket in such a case to be able to travel on the reservation made but a refund cannot be granted on the grounds of loss of ticket.
SBI Changes Cash Deposit Rules For Its SB Accounts
State Bank of India savings account holders, India’s biggest bank has removed the limit on the quantity which will be deposited in an exceedingly non-home branch. This was declared by SBI on Twitter.
“Good news SBI customers! Currently, the higher cap for depositing money at a non-home branch has been updated,” the bank said. A home branch is that the branch wherever a client includes a checking account. All alternative branches of the bank ar non-home branches for the client.
According to SBI’s tweet, in personal savings checking account, there’ll be no restrictions on the quantity which will be deposited at a non-home branch. Earlier, this limit was Rs twenty five,000, in line with SBI’s web site. SBI levies Rs fifty (plus GST) per dealing on money deposits at non-home branches, says its web site.
For SME section accounts, the cap on money deposits at non-home branch remains at Rs 2 lakh per day, SBI same within the tweet.
SBI has been urging its customers, WHO hold magstripe debit cards, to change to chip-based debit cards. “Do not take a chance; get increased security for your charge account credit by applying for the SBI EMV Chip charge account credit with no fee at your branch or through OnlineSBI,” said SBI in another tweet.
INSTALL LARAVEL ON UBUNTU 17.04 / 17.10 WITH APACHE2, MARIADB AND PHP SUPPORT
Laravel is a flexible and lightweight open source PHP framework with Model-View Controller (MVC) design pattern. It can be a great alternative to CodeIgniter framework. Laravel is designed for ease of use to allow developers create great applications.
If you’re looking for a simple and straightforward PHP framework to design your next application, you’ll find Laravel to be useful. This brief tutorial is going to show students and new users how to install Laravel PHP framework on Ubuntu 17.04 / 17.10 with Apache2, MariaDB and PHP support.
To get started with installing Laravel, follow the steps below:
Step 1: Install Apache2
Laravel requires a webserver to function and the second most popular webserver in use today is Apache2. So, go and install Apache2 on Ubuntu by running the commands below:
sudo apt install apache2
Next, run the commands below to stop, start and enable Apache2 service to always start up with the server boots.
Run the commands below to install composer package and install.. you must have curl package installed for the commands to work.. if not, just run sudo apt install curl to install it…
Change into Laravel directory and run the commands below to download and install Laravel for th e project you want to create… name the project whatever you want… for this post, we’re calling it MyProject..
cd /var/www/html
sudo composer create-project laravel/laravel MyProject --prefer-dist
After running the commands above, a new project directory will be created… Run the commands below to set the correct permissions for that directory..
Finally, configure Apahce2 site configuration file for Laravel. This file will control how users access Laravel content. Run the commands below to create a new configuration file called laravel.conf