document.write("<div class=\"pastie\">\n");
document.write("  <link href=\"http://pastie.org/stylesheets/embed.css\" media=\"screen\" rel=\"stylesheet\" type=\"text/css\" />\n");
document.write("  <link href=\"http://pastie.org/stylesheets/clean.css\" media=\"screen\" rel=\"stylesheet\" type=\"text/css\" />\n");
document.write("  \n");
document.write("\n");
document.write("  \n");
document.write("  \n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("\n");
document.write("	\n");
document.write("	<div class=\"allcode\">\n");
document.write("		<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\">\n");
document.write("		<tr>\n");
document.write("			<td>\n");
document.write("				\n");
document.write("				<pre class=\"textmate-source-numbers\">1\n");
document.write("2\n");
document.write("3\n");
document.write("4\n");
document.write("5\n");
document.write("6\n");
document.write("7\n");
document.write("8\n");
document.write("9\n");
document.write("10\n");
document.write("11\n");
document.write("12\n");
document.write("13\n");
document.write("14\n");
document.write("15\n");
document.write("16\n");
document.write("17\n");
document.write("18\n");
document.write("19\n");
document.write("20\n");
document.write("21\n");
document.write("22\n");
document.write("23\n");
document.write("24\n");
document.write("25\n");
document.write("26\n");
document.write("27\n");
document.write("28\n");
document.write("29\n");
document.write("30\n");
document.write("31\n");
document.write("32\n");
document.write("33\n");
document.write("34\n");
document.write("35\n");
document.write("36\n");
document.write("37\n");
document.write("38\n");
document.write("39\n");
document.write("40\n");
document.write("41\n");
document.write("42\n");
document.write("43\n");
document.write("44\n");
document.write("45\n");
document.write("46\n");
document.write("47\n");
document.write("48\n");
document.write("49\n");
document.write("50\n");
document.write("51\n");
document.write("52\n");
document.write("53\n");
document.write("54\n");
document.write("55\n");
document.write("56\n");
document.write("57\n");
document.write("58\n");
document.write("59\n");
document.write("60\n");
document.write("<\/pre>\n");
document.write("			<\/td>\n");
document.write("		<td>\n");
document.write("		<pre class=\"textmate-source\"><pre class=\"sunburst\"><span class=\'meta meta_rails meta_rails_model\'><span class=\'meta meta_class meta_class_ruby\'><span class=\'keyword keyword_control keyword_control_class keyword_control_class_ruby\'>class<\/span> <span class=\'entity entity_name entity_name_type entity_name_type_class entity_name_type_class_ruby\'>User<span class=\'entity entity_other entity_other_inherited-class entity_other_inherited-class_ruby\'> &lt; ActiveRecord::Base<\/span><\/span><\/span>\n");
document.write("  <span class=\'meta meta_function meta_function_method meta_function_method_with-arguments meta_function_method_with-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>self.find_by_username<\/span>(<span class=\'variable variable_parameter variable_parameter_function variable_parameter_function_ruby\'>username<\/span>)<\/span>\n");
document.write("    user <span class=\'keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_ruby\'>=<\/span> find_existing_user(username)\n");
document.write("    user <span class=\'keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_ruby\'>=<\/span> build_new_user(username) <span class=\'keyword keyword_control keyword_control_ruby\'>unless<\/span> user\n");
document.write("    user.update_from_twitter <span class=\'keyword keyword_control keyword_control_ruby\'>unless<\/span> user.updated_recently?\n");
document.write("    user\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("  <span class=\'meta meta_function meta_function_method meta_function_method_with-arguments meta_function_method_with-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>self.find_existing_user<\/span>(<span class=\'variable variable_parameter variable_parameter_function variable_parameter_function_ruby\'>username<\/span>)<\/span>\n");
document.write("    <span class=\'support support_class support_class_ruby\'>User<\/span>.first(<span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:conditions<\/span> =&gt; {<span class=\'meta meta_syntax meta_syntax_ruby meta_syntax_ruby_start-block\'> <\/span><span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:username<\/span> =&gt; username })\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("  <span class=\'meta meta_function meta_function_method meta_function_method_with-arguments meta_function_method_with-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>self.build_new_user<\/span>(<span class=\'variable variable_parameter variable_parameter_function variable_parameter_function_ruby\'>username<\/span>)<\/span>\n");
document.write("    <span class=\'support support_class support_class_ruby\'>User<\/span>.<span class=\'keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby\'>new<\/span>(<span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:username<\/span> =&gt; username)\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("  <span class=\'meta meta_function meta_function_method meta_function_method_without-arguments meta_function_method_without-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>check_twitter!<\/span><\/span>\n");
document.write("    <span class=\'keyword keyword_control keyword_control_ruby\'>begin<\/span>\n");
document.write("      twitter_account <span class=\'keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_ruby\'>=<\/span> <span class=\'support support_class support_class_ruby\'>Twitter<\/span>.user(username)\n");
document.write("    <span class=\'keyword keyword_control keyword_control_ruby\'>rescue<\/span>\n");
document.write("      twitter_account <span class=\'keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_ruby\'>=<\/span> <span class=\'constant constant_language constant_language_ruby\'>nil<\/span>\n");
document.write("    <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("    update_with(twitter_account)\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("  <span class=\'meta meta_function meta_function_method meta_function_method_without-arguments meta_function_method_without-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>updated_recently?<\/span><\/span>\n");
document.write("    <span class=\'keyword keyword_control keyword_control_pseudo-method keyword_control_pseudo-method_ruby\'>return<\/span> <span class=\'constant constant_language constant_language_ruby\'>false<\/span> <span class=\'keyword keyword_control keyword_control_ruby\'>unless<\/span> updated_at\n");
document.write("    updated_at <span class=\'keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_ruby\'>&gt;<\/span> <span class=\'constant constant_numeric constant_numeric_ruby\'>1<\/span>.day.ago\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("\n");
document.write("  <span class=\'meta meta_function meta_function_method meta_function_method_with-arguments meta_function_method_with-arguments_ruby\'><span class=\'keyword keyword_control keyword_control_def keyword_control_def_ruby\'>def<\/span> <span class=\'entity entity_name entity_name_function entity_name_function_ruby\'>update_with<\/span>(<span class=\'variable variable_parameter variable_parameter_function variable_parameter_function_ruby\'>twitter_account<\/span>)<\/span>\n");
document.write("    <span class=\'keyword keyword_control keyword_control_ruby\'>unless<\/span> twitter_account.nil?\n");
document.write("      update_attributes(\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:name<\/span>                         =&gt; twitter_account.name,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:location<\/span>                     =&gt; twitter_account.location,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:description<\/span>                  =&gt; twitter_account.description,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:profile_image_url<\/span>            =&gt; twitter_account.profile_image_url,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:protected<\/span>                    =&gt; twitter_account.<span class=\'keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby\'>protected<\/span>,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:url<\/span>                          =&gt; twitter_account.url,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:followers_count<\/span>              =&gt; twitter_account.followers_count,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:profile_background_color<\/span>     =&gt; twitter_account.profile_background_color,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:profile_text_color<\/span>           =&gt; twitter_account.profile_text_color,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:profile_link_color<\/span>           =&gt; twitter_account.profile_link_color,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:profile_sidebar_fill_color<\/span>   =&gt; twitter_account.profile_sidebar_fill_color,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:profile_sidebar_border_color<\/span> =&gt; twitter_account.profile_sidebar_border_color,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:friends_count<\/span>                =&gt; twitter_account.friends_count,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:user_created_at<\/span>              =&gt; twitter_account.user_created_at,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:favourites_count<\/span>             =&gt; twitter_account.favourites_count,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:utc_offset<\/span>                   =&gt; twitter_account.utc_offset,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:time_zone<\/span>                    =&gt; twitter_account.time_zone,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:profile_background_image_url<\/span> =&gt; twitter_account.profile_background_image_url,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:profile_background_tile<\/span>      =&gt; twitter_account.profile_background_tile,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:statuses_count<\/span>               =&gt; twitter_account.statuses_count,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:notifications<\/span>                =&gt; twitter_account.notifications,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:following<\/span>                    =&gt; twitter_account.following,\n");
document.write("        <span class=\'constant constant_other constant_other_symbol constant_other_symbol_ruby\'>:verified<\/span>                     =&gt; twitter_account.verified\n");
document.write("      )\n");
document.write("    <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("  <span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("<\/span><span class=\'keyword keyword_control keyword_control_ruby\'>end<\/span>\n");
document.write("<\/pre><\/pre>\n");
document.write("		<\/td>\n");
document.write("		<\/tr>\n");
document.write("		<\/table>\n");
document.write("	\n");
document.write("	<\/div>\n");
document.write("\n");
document.write("\n");
document.write("  \n");
document.write("  \n");
document.write("  <div class=\"credit\">\n");
document.write("    <div class=\"buttons\">\n");
document.write("      <a href=\"http://pastie.org/pastes/1009990.txt\">\n");
document.write("      <img src=\"http://pastie.org/images/view.png\" height=\"20\" width=\"67\" /><\/a>\n");
document.write("    <\/div>\n");
document.write("  \n");
document.write("    <a href=\"http://pastie.org/1009990\">Pastie #1009990<\/a> linked directly from <a href=\"http://pastie.org/\">Pastie<\/a>.\n");
document.write("  <\/div><\/div>");

