public static function print_quota_limit_per_experiment_field()
        {
            $limit = NelioABSettings::get_quota_limit_per_exp();
            $field_name = 'quota_limit_per_exp';
            printf('<select id="%1$s" name="nelioab_settings[%1$s]" %2$s>', $field_name, self::get_pro_details());
            ?>
				<option value='-1'><?php 
            _e('Unlimited', 'nelioab');
            ?>
</option>
			<?php 
            $options = array(500, 1000, 1500, 2500, 3000);
            if (NelioABAccountSettings::is_plan_at_least(NelioABAccountSettings::PROFESSIONAL_SUBSCRIPTION_PLAN)) {
                array_push($options, 4000, 5000, 7500, 10000);
            }
            foreach ($options as $v) {
                printf('<option value="%2$s" %3$s>%1$s</option>', sprintf(__('%s page views', 'nelioab'), number_format_i18n($v)), strval($v), $limit == $v ? 'selected="selected"' : '');
            }
            ?>
			</select>
			<br><div class="the-descr" style="display:none;"><span <?php 
            echo self::get_pro_details('description');
            ?>
><?php 
            _e('This setting will automatically stop the experiment as soon as the results of an experiment are updated and the number of page views is equal to (or a little bit greater than) the limit you set. Don\'t waste your quota anymore!', 'nelioab');
            ?>
</span></div>
			<?php 
        }
        /**
         * PHPDOC
         *
         * @param int   $mode        PHPDOC
         * @param mixed $value       PHPDOC
         * @param array $valid_modes PHPDOC
         *
         * @return void
         *
         * @see NelioABExperiment::FINALIZATION_MANUAL,
         * @see NelioABExperiment::FINALIZATION_AFTER_DATE,
         * @see NelioABExperiment::FINALIZATION_AFTER_VIEWS,
         * @see NelioABExperiment::FINALIZATION_AFTER_CONFIDENCE,
         *
         * @since PHPDOC
         */
        public static function print_finalization_mode_field($mode, $value, $valid_modes = array())
        {
            require_once NELIOAB_MODELS_DIR . '/experiment.php';
            if (count($valid_modes) == 0) {
                $valid_modes = array(NelioABExperiment::FINALIZATION_MANUAL, NelioABExperiment::FINALIZATION_AFTER_DATE, NelioABExperiment::FINALIZATION_AFTER_VIEWS, NelioABExperiment::FINALIZATION_AFTER_CONFIDENCE);
            }
            ?>
			<select
					id="exp_finalization_mode"
					name="exp_finalization_mode"
					style="width:100%;max-width:350px;margin-bottom:1.5em;">
				<?php 
            $current_mode = NelioABExperiment::FINALIZATION_MANUAL;
            if (in_array($current_mode, $valid_modes)) {
                ?>
					<option
						<?php 
                if ($current_mode == $mode) {
                    echo 'selected="selected"';
                }
                ?>
						value="<?php 
                echo $current_mode;
                ?>
"
							><?php 
                _e('Manual', 'nelioab');
                ?>
</option><?php 
            }
            ?>
				<?php 
            $current_mode = NelioABExperiment::FINALIZATION_AFTER_DATE;
            if (in_array($current_mode, $valid_modes)) {
                ?>
					<option
						<?php 
                if ($current_mode == $mode) {
                    echo 'selected="selected"';
                }
                ?>
						value="<?php 
                echo $current_mode;
                ?>
"
							><?php 
                _e('Duration', 'nelioab');
                ?>
</option><?php 
            }
            ?>
				<?php 
            $current_mode = NelioABExperiment::FINALIZATION_AFTER_VIEWS;
            if (in_array($current_mode, $valid_modes)) {
                ?>
					<option
						<?php 
                if ($current_mode == $mode) {
                    echo 'selected="selected"';
                }
                ?>
						value="<?php 
                echo $current_mode;
                ?>
"
							><?php 
                _e('Number of Page Views', 'nelioab');
                ?>
</option><?php 
            }
            ?>
				<?php 
            $current_mode = NelioABExperiment::FINALIZATION_AFTER_CONFIDENCE;
            if (in_array($current_mode, $valid_modes)) {
                ?>
					<option
						<?php 
                if ($current_mode == $mode) {
                    echo 'selected="selected"';
                }
                ?>
						value="<?php 
                echo $current_mode;
                ?>
"
							><?php 
                _e('Winning Alternative Reaches a Minimum Confidence', 'nelioab');
                ?>
</option><?php 
            }
            ?>
			</select>
			<input
				id="exp_finalization_value"
				name="exp_finalization_value"
				type="hidden"
				value="<?php 
            echo $value;
            ?>
" />
			<div class="fin-mode manual" style="display:block;"><?php 
            _e('The experiment will be running until you manually stop it.', 'nelioab');
            ?>
</div>
			<div class="fin-mode date" style="display:none;">
				<p style="margin-bottom:0.2em;"><strong><?php 
            _e('Mode Configuration', 'nelioab');
            ?>
</strong></p><?php 
            printf(__('The experiment will be runnning for %s and will then be automatically stopped.', 'nelioab'), '<select class="fin-mode-value">' . '<option value="1">' . __('24 hours', 'nelioab') . '</option>' . '<option value="2">' . __('48 hours', 'nelioab') . '</option>' . '<option value="5">' . __('5 days', 'nelioab') . '</option>' . '<option value="7">' . __('1 week', 'nelioab') . '</option>' . '<option value="14">' . __('2 weeks', 'nelioab') . '</option>' . '<option value="30">' . __('1 month', 'nelioab') . '</option>' . '<option value="60">' . __('2 months', 'nelioab') . '</option>' . '</select>');
            ?>
</div>
			<div class="fin-mode views" style="display:none;">
				<p style="margin-bottom:0.2em;"><strong><?php 
            _e('Mode Configuration', 'nelioab');
            ?>
</strong></p><?php 
            printf(__('If the tested page (and its alternatives) have been seen over %s times, the experiment will be automatically stopped.', 'nelioab'), '<select class="fin-mode-value">' . '<option value="100">100</option>' . '<option value="200">200</option>' . '<option value="500">500</option>' . '<option value="1000">1,000</option>' . '<option value="2000">2,000</option>' . '<option value="5000">5,000</option>' . '<option value="10000">10,000</option>' . '<option value="15000">15,000</option>' . '<option value="20000">20,000</option>' . '<option value="50000">50,000</option>' . '<option value="100000">100,000</option>' . '</select>');
            $value = NelioABSettings::get_quota_limit_per_exp();
            if (-1 != $value) {
                ?>
					<div id="quota-warning" style="display:none;">
						<div style="width:100%;max-width:100px;padding-top:0.9em;border-bottom:1px solid #ccc;">&nbsp;</div>
						<p style="font-size:90%;"><?php 
                printf(__('According to your global settings, there\'s a Quota Limit of %s page views per experiment. For this experiment, however, the global setting will be overriden.', 'nelioab'), number_format_i18n($value));
                ?>
</p>
					</div>
					<script>
						(function($) {
							var warning = $('#quota-warning');
							$('.fin-mode-value').on('change', function() {
								if ( $(this).attr('value') <= <?php 
                echo $value;
                ?>
 )
									warning.hide();
								else
									warning.show();
							});
						})(jQuery);
					</script>
					<?php 
            }
            ?>
</div>
			<div class="fin-mode confidence" style="display:none;">
				<p style="margin-bottom:0.2em;"><strong><?php 
            _e('Mode Configuration', 'nelioab');
            ?>
</strong></p><?php 
            printf(__('%s the experiment will be automatically stopped.', 'nelioab'), '<select class="fin-mode-value">' . '<option' . self::select_confidence(99) . 'value="99">' . __('99% - If we are absolutely confident there\'s a clear winner', 'nelioab') . '</option>' . '<option' . self::select_confidence(98) . 'value="98">' . __('98% - If we are extremely confident there\'s a clear winner', 'nelioab') . '</option>' . '<option' . self::select_confidence(97) . 'value="97">' . __('97% - If we are quite confident there\'s a winner', 'nelioab') . '</option>' . '<option' . self::select_confidence(96) . 'value="96">' . __('96% - If we are confident there\'s a winner', 'nelioab') . '</option>' . '<option' . self::select_confidence(95) . 'value="95">' . __('95% - If we are slightly confident there\'s a winner', 'nelioab') . '</option>' . '<option' . self::select_confidence(90, 0) . 'value="90">' . __('90% - If it is possible that there\'s a winner', 'nelioab') . '</option>' . '</select>');
            ?>
</div>
			<script type="text/javascript">
			(function($) {
				// Functions
				function switch_finalization_mode( mode, value ) {
					$('div.fin-mode').hide();
					var block;
					switch ( mode ) {
						case <?php 
            echo NelioABExperiment::FINALIZATION_MANUAL;
            ?>
:
							block = 'div.fin-mode.manual';
							break;
						case <?php 
            echo NelioABExperiment::FINALIZATION_AFTER_DATE;
            ?>
:
							block = 'div.fin-mode.date';
							break;
						case <?php 
            echo NelioABExperiment::FINALIZATION_AFTER_VIEWS;
            ?>
:
							block = 'div.fin-mode.views';
							break;
						case <?php 
            echo NelioABExperiment::FINALIZATION_AFTER_CONFIDENCE;
            ?>
:
							block = 'div.fin-mode.confidence';
							break;
						default:
							return;
					}
					if ( undefined != value )
						$(block + ' .fin-mode-value').attr('value', value);
					$('#exp_finalization_value').attr('value',
						$(block + ' .fin-mode-value').attr('value') );
					$(block).show();
				}
				// Events
				$('#exp_finalization_mode').on('change', function() {
					switch_finalization_mode( parseInt( $('#exp_finalization_mode').attr('value') ) );
				});
				$('.fin-mode .fin-mode-value').on('change', function() {
					$('#exp_finalization_value').attr('value', $(this).attr('value') );
				});
				// Initialization
				switch_finalization_mode(
					parseInt( $('#exp_finalization_mode').attr('value') ),
					parseInt( $('#exp_finalization_value').attr('value') )
				);
			})(jQuery);
			</script><?php 
        }