"Widget showing available jobs from aditrorecruit." ) // Args ); } public function form( $instance ) { if ( isset( $instance[ 'title' ] ) ) { $title = $instance[ 'title' ]; } else { $title = "Lediga jobb"; } if ( isset( $instance[ 'show_work' ] ) ) { $show_work = $instance[ 'show_work' ]; } else { $show_work = ""; } ?>

Other settings can be found under Aditroreqruit Settings.

"; } public function update( $new_instance, $old_instance ) { $instance['show_work'] = strip_tags( $new_instance['show_work'] ); $instance['title'] = $new_instance['title']; return $instance; } public function widget( $args, $instance ) { extract( $args ); $render = hk_aditro_render(true); $retValue = ""; if ($instance["show_work"] == "" || in_array(get_query_var("cat"), split(",",$instance["show_work"]))) { if (!empty($render)) { $retValue .= $before_widget; $title = apply_filters( 'widget_title', $instance['title'] ); if ( ! empty( $title ) ) { $retValue .= $before_title . $title . $after_title; } $retValue .= $render; $retValue .= $after_widget; } } echo $retValue; } } /* add the widget */ add_action( 'widgets_init', create_function( '', 'register_widget( "hk_aditro_rss_widget" );' ) ); /* * add settings page */ // create custom plugin settings menu add_action('admin_menu', 'hk_aditro_plugin_create_menu'); function hk_aditro_plugin_create_menu() { //create new top-level menu add_menu_page('Aditroreqruit Plugin Settings', 'Aditroreqruit', 'administrator', __FILE__, 'hk_aditro_plugin_settings_page' , NULL /*plugins_url('/images/icon.png', __FILE__)*/ ); //call register settings function add_action( 'admin_init', 'register_hk_aditro_plugin_settings' ); } function register_hk_aditro_plugin_settings() { //register our settings register_setting( 'hk_aditro_settings', 'hk_aditro' ); } function hk_aditro_plugin_settings_page() { ?>

Aditro widget and shortcode

New cache generated.
"; } ?>

Widget only

/>

Shortcode only

The shortcode [aditrorecruit] always show all available jobs.

/>

Cron

/>

"; $retValue .= $options["hk_aditro_shortcode"]; $retValue .= ""; } } return $retValue; } /* * ADITRO RSS CRONJOB */ function hk_aditro() { $options = get_option('hk_aditro'); $hk_aditro_check_time = time(); $options["hk_aditro_check_time"] = $hk_aditro_check_time; $hk_aditro_days_new = ($options["hk_aditro_days_new"] != "")?$options["hk_aditro_days_new"]:"1"; $hk_aditro_num = ($options["hk_aditro_num"] != "")?$options["hk_aditro_num"]:"10"; $hk_aditro_full_description = ($options["hk_aditro_full_description"] != "")?$options["hk_aditro_full_description"]:"0"; $hk_aditro_shortcode_full_description = ($options["hk_aditro_shortcode_full_description"] != "")?$options["hk_aditro_shortcode_full_description"]:"0"; $hk_aditro_show_num_new = ($options["hk_aditro_show_num_new"] != "")?$options["hk_aditro_show_num_new"]:""; $hk_aditro_more_text = ($options["hk_aditro_more_text"] != "")?$options["hk_aditro_more_text"]:""; $hk_aditro_more_link = ($options["hk_aditro_more_link"] != "")?$options["hk_aditro_more_link"]:""; $log = "No rss is checked."; $widgetcache = ""; $shortcodecache = ""; if ($options['hk_aditro_rss'] != "") : $log = "Checked rss " . date("Y-m-d H:i:s", strtotime("now")) . "."; $url = $options['hk_aditro_rss']; $rss = simplexml_load_file(strip_tags($url)); $has_new = ""; $numjobs = count($rss->Assignments->Assignment); if ($numjobs > 0 ) { $log .= "
Found " . count($rss->Assignments->Assignment) . " available jobs in RSS.\n"; $num_new_text = explode("\n",$hk_aditro_show_num_new); if (count($num_new_text)-1 >= count($rss->Assignments->Assignment)) $available_jobs_text = $num_new_text[count($rss->Assignments->Assignment)-1]; else if (count($num_new_text)-1 < count($rss->Assignments->Assignment)) $available_jobs_text = str_replace("[nr]",count($rss->Assignments->Assignment),$num_new_text[count($num_new_text)-1]); if ($available_jobs_text != "") { $hk_aditro_more_link_pre = ""; $hk_aditro_more_link_post = ""; if ($hk_aditro_more_link != "") { $hk_aditro_more_link_pre = ""; $hk_aditro_more_link_post = ""; } $widgetcache .= "
$hk_aditro_more_link_pre$available_jobs_text$hk_aditro_more_link_post
"; $shortcodecache .= "
$available_jobs_text
"; } $baseurl = $rss->channel->link; $newrsstime = strtotime("-" . $hk_aditro_days_new . " days"); $count = 0; $widgetcache .= ""; } endif; $options["hk_aditro_log"] = $log; $options["hk_aditro"] = $widgetcache; $options["hk_aditro_shortcode"] = $shortcodecache; $options["hk_aditro_has_new"] = $has_new; update_option("hk_aditro", $options); } add_action("hk_aditro_event", "hk_aditro"); // add special cron interval to wp schedules function hk_aditro_add_scheduled_interval($schedules) { $schedules['hk_aditro_schedule'] = array('interval'=>900, 'display'=>'Aditro cron (15 minutes)'); return $schedules; } add_filter('cron_schedules', 'hk_aditro_add_scheduled_interval'); if (!function_exists("hk_nicedate")) { function hk_nicedate($time) { $time = date("j F Y" , $time); $mo = array('januari' => 'January', 'februari' => 'February', 'mars' => 'March', 'april' => 'April', 'maj' => 'May', 'juni' => 'June', 'juli' => 'July', 'augusti' => 'August', 'september' => 'September', 'oktober' => 'October', 'november' => 'November', 'december' => 'December'); foreach ($mo as $swe => $eng) $time = preg_replace('/\b'.$eng.'\b/', $swe, $time); return $time; } } ?>