Skip to content

Instantly share code, notes, and snippets.

View Luiyit's full-sized avatar
🏠
Working from home

Luiyit Hernandez Luiyit

🏠
Working from home
View GitHub Profile
@Luiyit
Luiyit / free_pack_access.rb
Created November 19, 2020 17:31
Create pack_customer, order and order_product for free
def free_pack_access(pack_id, users_emails, finish_date=nil)
pack = Pack.find(pack_id)
users_emails.each do |email|
current_user = User.find_by(email: email)
ActiveRecord::Base.transaction do
order = Order.create!(
user_id: current_user.id,
date: Time.now,
status: 'success',
@Luiyit
Luiyit / remove_talent_class_with_customer.rb
Last active November 20, 2020 19:33
Remove the class record and customer. Be carefull about the source of the class customer (pass, pack, paid)
def remove_class(class_id, remove)
klass = TalentClass.find(class_id)
amount_class_customers_removed = 0
if klass
zoon_meeting = ZoomMeeting.find_by(talent_class_id: class_id)
if remove
ActiveRecord::Base.transaction do
zoon_meeting.delete if zoon_meeting
# https://talent-hack.atlassian.net/browse/TAL-908
client_email = 'brittanebates@gmail.com'
talent_email = 'hello@emimoves.com'
pass_title = 'Monthly Unlimited Virtual Classes - Reoccurring'
# References involved
client_user = User.find_by(email: client_email)
talent_user = User.find_by(email: talent_email)
pass = Pass.find_by(user_id: talent_user.id, title: pass_title)
@Luiyit
Luiyit / redeem_class_credit.rb
Created November 19, 2020 21:52
Use pack to book class
def redeem_class_credit(customer_user_id, class_id)
# Validate customer
current_user = User.find(customer_user_id)
return "Invalide customer user id" if current_user.nil?
# Validate class
klass = TalentClass.find(class_id);
return "Invalide class id" if klass.nil?
def create_backend_admin(admin_email, admin_pass)
admin_exist = Admin.find_by(email: admin_email)
if not admin_exist
admin = Admin.create({
email: admin_email,
password: admin_pass,
password_confirmation: admin_pass,
})
pp admin
@Luiyit
Luiyit / free_on_demand_access.rb
Last active March 3, 2021 16:57
Gives free access to the On Demand collection. Each customer must include the email and the end date.
def free_on_demand_access (on_demand_collection_id, customers)
collection = OnDemandCollection.find(on_demand_collection_id)
return "Invalid collection" if collection.nil?
ActiveRecord::Base.transaction do
customers.each do |customer|
user = User.find_by(email: customer[:email])
return "Invalid user email #{customer[:email]}" if user.nil?
return "Invalid finish date for #{customer[:email]}" if customer[:finish_date].nil?
@Luiyit
Luiyit / remove_pass_customer_products.rb
Last active April 2, 2021 21:12
Remove pass customer and products
# TODO: include sessions
def remove_customer_pass(client_user_id, pass_customer_id, delete_pass_customer = false, expire_pass_customer = false)
user_client = User.find(client_user_id)
if user_client
pass_customer_classes = []
customer_collection = nil
pass_customer = PassCustomer.find(pass_customer_id)
pass_applies_to = pass_customer.pass.pass_products.pluck(:applies_to)
talent = pass_customer.pass.user.talent
@Luiyit
Luiyit / add_pass_customers_to_program.rb
Last active February 2, 2022 17:12
Add pass customers to program
def add_pass_customers_to_program(passes_slugs, program_uid, include_cancelled: true)
ActiveRecord::Base.transaction do
passes_slugs.each do |slug|
pass = Pass.find_by_slug(slug)
pass_customers = pass.pass_customers.active_upcoming
pass_customers = pass_customers.not_cancelled unless include_cancelled
pass_customers.each do |pass_customer|
client = pass_customer.user
program_customer = ::Customers::Bundles::Program.active_upcoming.find_by(product_uid: program_uid, user_uuid: client.uuid)
@Luiyit
Luiyit / webpack.config.ts
Created July 27, 2023 20:26
How to fix Webpack Dev Server HMR using WSL 2 (TypeScript)
import { Configuration as WebpackConfiguration } from "webpack";
import { Configuration as WebpackDevServerConfiguration } from 'webpack-dev-server';
import path from "path";
import HtmlWebpackPlugin from "html-webpack-plugin";
interface Configuration extends WebpackConfiguration {
devServer?: WebpackDevServerConfiguration;
}
const config = (): Configuration => ({
@Luiyit
Luiyit / laravel-10-ubuntu.md
Last active July 29, 2023 13:57
How to install Laravel 10 step by step in Ubuntu

How to install Laravel 10 step by step in Ubuntu

DEV NOTE: Support for Ubuntu 18.04 was removed from Ondřej Surý's PPA on June 15, 2023 as that version of Ubuntu is no longer supported. As per the description on the PPA landing page

Reference