namespace Elementor; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } /** * Elementor skin base. * * An abstract class to register new skins for Elementor widgets. Skins allows * you to add new templates, set custom controls and more. * * To register new skins for your widget use the `add_skin()` method inside the * widget's `register_skins()` method. * * @since 1.0.0 * @abstract */ abstract class Skin_Base extends Sub_Controls_Stack { /** * Parent widget. * * Holds the parent widget of the skin. Default value is null, no parent widget. * * @access protected * * @var Widget_Base|null */ protected $parent = null; /** * Skin base constructor. * * Initializing the skin base class by setting parent widget and registering * controls actions. * * @since 1.0.0 * @access public * @param Widget_Base $parent */ public function __construct( Widget_Base $parent ) { parent::__construct( $parent ); $this->_register_controls_actions(); } /** * Render skin. * * Generates the final HTML on the frontend. * * @since 1.0.0 * @access public * @abstract */ abstract public function render(); /** * Render element in static mode. * * If not inherent will call the base render. */ public function render_static() { $this->render(); } /** * Determine the render logic. */ public function render_by_mode() { if ( Plugin::$instance->frontend->is_static_render_mode() ) { $this->render_static(); return; } $this->render(); } /** * Register skin controls actions. * * Run on init and used to register new skins to be injected to the widget. * This method is used to register new actions that specify the location of * the skin in the widget. * * Example usage: * `add_action( 'elementor/element/{widget_id}/{section_id}/before_section_end', [ $this, 'register_controls' ] );` * * @since 1.0.0 * @access protected */ protected function _register_controls_actions() {} /** * Get skin control ID. * * Retrieve the skin control ID. Note that skin controls have special prefix * to distinguish them from regular controls, and from controls in other * skins. * * @since 1.0.0 * @access protected * * @param string $control_base_id Control base ID. * * @return string Control ID. */ protected function get_control_id( $control_base_id ) { $skin_id = str_replace( '-', '_', $this->get_id() ); return $skin_id . '_' . $control_base_id; } /** * Get skin settings. * * Retrieve all the skin settings or, when requested, a specific setting. * * @since 1.0.0 * @TODO: rename to get_setting() and create backward compatibility. * * @access public * * @param string $control_base_id Control base ID. * * @return mixed */ public function get_instance_value( $control_base_id ) { $control_id = $this->get_control_id( $control_base_id ); return $this->parent->get_settings( $control_id ); } /** * Start skin controls section. * * Used to add a new section of controls to the skin. * * @since 1.3.0 * @access public * * @param string $id Section ID. * @param array $args Section arguments. */ public function start_controls_section( $id, $args = [] ) { $args['condition']['_skin'] = $this->get_id(); parent::start_controls_section( $id, $args ); } /** * Add new skin control. * * Register a single control to the allow the user to set/update skin data. * * @param string $id Control ID. * @param array $args Control arguments. * @param array $options * * @return bool True if skin added, False otherwise. * @since 3.0.0 New `$options` parameter added. * @access public * */ public function add_control( $id, $args = [], $options = [] ) { $args['condition']['_skin'] = $this->get_id(); return parent::add_control( $id, $args, $options ); } /** * Update skin control. * * Change the value of an existing skin control. * * @since 1.3.0 * @since 1.8.1 New `$options` parameter added. * * @access public * * @param string $id Control ID. * @param array $args Control arguments. Only the new fields you want to update. * @param array $options Optional. Some additional options. */ public function update_control( $id, $args, array $options = [] ) { $args['condition']['_skin'] = $this->get_id(); parent::update_control( $id, $args, $options ); } /** * Add new responsive skin control. * * Register a set of controls to allow editing based on user screen size. * * @param string $id Responsive control ID. * @param array $args Responsive control arguments. * @param array $options * * @since 1.0.5 * @access public * */ public function add_responsive_control( $id, $args, $options = [] ) { $args['condition']['_skin'] = $this->get_id(); parent::add_responsive_control( $id, $args ); } /** * Start skin controls tab. * * Used to add a new tab inside a group of tabs. * * @since 1.5.0 * @access public * * @param string $id Control ID. * @param array $args Control arguments. */ public function start_controls_tab( $id, $args ) { $args['condition']['_skin'] = $this->get_id(); parent::start_controls_tab( $id, $args ); } /** * Start skin controls tabs. * * Used to add a new set of tabs inside a section. * * @since 1.5.0 * @access public * * @param string $id Control ID. */ public function start_controls_tabs( $id ) { $args['condition']['_skin'] = $this->get_id(); parent::start_controls_tabs( $id ); } /** * Add new group control. * * Register a set of related controls grouped together as a single unified * control. * * @param string $group_name Group control name. * @param array $args Group control arguments. Default is an empty array. * @param array $options * * @since 1.0.0 * @access public * */ final public function add_group_control( $group_name, $args = [], $options = [] ) { $args['condition']['_skin'] = $this->get_id(); parent::add_group_control( $group_name, $args ); } /** * Set parent widget. * * Used to define the parent widget of the skin. * * @since 1.0.0 * @access public * * @param Widget_Base $parent Parent widget. */ public function set_parent( $parent ) { $this->parent = $parent; } } Fourth Wall Jobs | Theater, TV, Movie jobs, auditions & education

The following is information about the Paycheck Protection Program and is specific to freelance private contractors (those who get paid via a 1099).

The following is compiled from various sources including the Small Business Administration, the US Treasury and various articles. The information is subject to change without notice, this website is not responsible for its accuracy or for any mistakes or misrepresentations. Always verify all information with your bank.

How do I apply?

We will be publishing a State by State guide but as of Monday April 27th, Paypal is accepting applications for the Paychek Protection Program from freelancers. Click here to visit Paypal’s site to apply.
Also, visit our Facebook page (click here) to share if you were successful in applying or to ask any questions you might have. We will help guide you through the process – free!

Is there any money left?

UPDATED 4-27 -The SBA has now opened up PPP applications from banks as of this morning. While there is never a guarantee that you will receive money (due to the large backlog of applications) we suggest putting in an application and trying anyway. Pay Pal is now accepting applications from freelancers for the PPP program. At this time it is unclear if you have to have a Paypal account already active to apply. Here is the link to Paypal where you can find more information – https://www.loanbuilder.com/ppp-loan-application

Additionally, we will publish a list of banks accepting applications from non-account holders. This means that regardless of if you have an account at the bank, you can apply for PPP through them. Please check individual states’ pages for that information.

An overview from the payment company – Square with detailed information

https://squareup.com/us/en/l/sba-ppp-loans


What is the Paycheck Protection Program?

The Paycheck Protection Program (PPP) authorizes forgivable loans to small businesses, FREELANCERS and sole proprietors to pay their employees during the COVID-19 crisis. This also allows Freelancers who get paid on a 1099 to apply for a forgivable loan that can help make up lost gig work monies due to COVID-19

I got paid at least some of my money via a 1099, can I still apply?

*updated 4-15-20* Yes! The PPP has been widely written about detailing the ways businesses (with W2 employees) can get money to help them make payroll during this time BUT the PPP also provides the ability for freelancers, sole proprietors and private contractors (1099) to receive funds as well.

These funds are given as a loan from the SBA to start with and may be forgivable (meaning it becomes money you don’t have to pay back) if certain conditions are met.

How much money can I receive?

You can receive a loan for up to $16,666.67 which is the maximum amount that may be forgiven.


How is the $16,666.67 calculated?

The SBA allows up to $100,000 of revenue to be claimed by freelancers for the purpose of the PPP. To get the maximum forgivable amount divide $100,000 by 12 (months) in a year and then multiply by 2 = $16,666.67. Of course if you made less than $100,000, you can still apply, you would just receive less. (divide your 1099 earnings from 2019 by 12 and then multiply by 2 to see how much you may be eligible for. (e.g. $30,000 รท 12 x 2 = $5,000.)


Where do I apply?

This question is tricky. If you have an existing bank account at a bank that is a start. Many banks are still not taking applications from freelancers yet. Some are. To compound the difficulty, most banks, especially large ones like Chase, Wells Fargo, etc are not accepting new applications at this time. This is true even for existing customers due to the current backlog of applications they already have. We will be publishing a list soon of all the still banks accepting applications by region

Have you liked our Facebook page yet? Click here.