Archive: ComponentOwl Rails app, DB backups, go redirect script

This commit is contained in:
EC2 Default User
2026-03-23 16:20:05 +00:00
commit 50037f386f
218 changed files with 14558 additions and 0 deletions

View File

@@ -0,0 +1,250 @@
<h1>About Us</h1>
<blockquote class="quote"><b>&ldquo;</b>Have you ever wondered why some software immediately strikes you<br />
as polished and professional, and looks and feels just great?<br />
So did we. Component Owl is the result of our journey.</blockquote>
<p class="placing">Component Owl is part of the <%= link_to image_tag('dextronet-small.gif', :alt => "Dextronet.com", :class => "logo-inset"), Settings.dextronet_url %> network.</p>
<div class="about-ct">
<div class="placing dextronet">
<h2>About Dextronet</h2>
<p>Dextronet has been founded in 2004 with the intention to develop, sell and support software
with great design that makes your life better. To put it simply: <strong>We love creating software
that you will love to use.</strong></p>
<p>In the <%= years_since_founded %> years that Dextronet has existed, we have been growing
and expanding our business organically and responsibly, and attained substantial steady growth
each year. We are here to stay.</p>
<p>Our flagship and most popular product is <%= link_to "Swift To-Do List", Settings.stdl_url %>
(developed in .NET). With over 500.000 downloads and paying customers in 93 countries,
it is the number one task and notes organizer for Windows.</p>
<p><strong>Better ListView component is the core part of Swift To-Do List, and as such, tens
of thousands users work with it every day.</strong></p>
</div>
<div class="placing cowl">
<h2>About Component Owl</h2>
<p>ComponentOwl.com was founded as a Dextronet.com spinoff to commercially release Better ListView
and other software components originally developed for our in-house purposes.</p>
<p>Our goal is to provide complete, light-weight, flexible, intuitive to use and reliable
components and controls for Microsoft .NET with native look and feel.</p>
<p>Soon after release, Better ListView has started to receive favorable reviews and praise
from developers. All our <%= link_to "development effort", "http://www.componentowl.com/better-listview/releases?since=1.40" %>
is based on the feedback of our customers.</p>
<div class="testimonial-wide-ct">
<div class="testimonial-wide">
<blockquote>&ldquo;The [Better ListView] control is very easy and intuitive to use and
is well documented.&rdquo;
&ndash; <%= link_to "DevProConnections.com Review", "http://www.devproconnections.com/article/product-review/review-componentowl-s-better-listview" %></blockquote>
</div>
</div>
</div>
</div>
<div class="placing">
<h3 class="team">Our Team</h3>
<p>Our growing team has over 50+ years of combined experience with development of rich-client
desktop Windows software and components.</p>
<p class="libor">
<%= image_tag('libor.jpg', :alt => 'Libor Tinka - lead developer') %>
<em>Libor Tinka, Better ListView lead developer, has been programming since 7 years old on ZX Spectrum,
and has enormous attention for detail. His interests include programming, quantum physics, advanced
mathematics, digital imaging (algorithms, HDR and panoramic photography), and green Japanese tea.</em>
</p>
<h3 class="customers">Our Customers</h3>
<p>Since releasing Better ListView, numerous developers and companies have started utilizing
Better ListView in their projects, to save money, development time, and to impress their customers.</p>
<p>Our customers represent a rich spectrum of businesses and organizations, including:</p>
<ul class="common">
<li><%= link_to "Kingston Technology", "http://www.kingston.com/" %></li>
<li><%= link_to "DevScope", "http://www.devscope.net/" %></li>
<li><%= link_to "Digi Link Limited", "http://www.digi-link.com/" %></li>
<li><%= link_to "KingBill GmbH", "http://www.kingbill.net/" %></li>
<li><%= link_to "Hydro-Québec", "http://www.hydroquebec.com" %></li>
<li><%= link_to "LCRA Energy Water Community Services", "http://www.lcra.org/" %></li>
<li><%= link_to "K-Software", "http://www.ksoftware.net/" %></li>
<li><%= link_to "ImageWare Systems, Inc.", "http://www.iwsinc.com/" %></li>
<li><%= link_to "Interdata srl", "http://www.interdata.it" %></li>
<li><%= link_to "OfficeDoxs Software, Inc.", "http://www.officedoxs.com/" %></li>
<li><%= link_to "Magnet Forensics Inc.", "http://www.magnetforensics.com/" %></li>
<li>Qextron Inc.</li>
<li>Telephone Directory of Texas, Inc.</li>
<li>Industriinformation Sverige AB</li>
<li>Five O&rsquo;Clock Software</li>
<li>Renegade Minds</li>
<li>Vastgoed24, Netherlands</li>
<li>... and others, as well as individual developers all over the world.</li>
</ul>
<div class="testimonial-wide-ct">
<div class="testimonial-wide">
<blockquote>&ldquo;<strong>It's an odd thing when you're inspired by a form component</strong>, but
Component Owl with their Better ListView has done it. Love its native feel.&rdquo;
<br />&ndash; <%= link_to "Daniel Nolan", "http://sweetfancymuses.wordpress.com/" %></blockquote>
</div>
</div>
<div class="testimonial-wide-ct">
<div class="testimonial-wide">
<blockquote>&ldquo;I greatly appreciate all of the help you have provided over the past week. The knowledge of your product and Support response time far exceeds that of the other software vendors I have worked with. <strong>I could not be more happy with the product and will be recommending Component Owl to any/all future development teams I am part of</strong>. Thank you again for being so attentive to our needs and <strong>providing excellent support</strong>!
&rdquo;
<br />&ndash; Brian S.</blockquote>
</div>
</div>
<h3 class="csauthor">ComponentSource Professional Partner</h3>
<p class="cs">
<%= image_tag('component-source-professional-partner.gif', :alt => 'ComponentSource Professional Partner') %>
We are certified ComponentSource Professional Partner. ComponentSource is the world&rsquo;s largest software component marketplace, and acts as our authorized value added reseller (VAR).
<br /><br />
You can <%= link_to "call ComponentSource", "http://www.componentowl.com/customer-service" %>
customer service free of charge from 49 countries.
</p>
<p><strong>US and Canada</strong>: Toll Free: 888 850 9911 (Non-stop)</p>
<p><strong>United Kingdom</strong>: Toll Free: 0800 581111 (Non-stop)</p>
<div id="cscontact-ct">
<div id="cscontact-nav">
<ul>
<li><a href="" class="current">European Headquarters</a></li>
<li><a href="">US Headquarters</a></li>
<li><a href="">Asia-Pacific Headquarters</a></li>
</ul>
</div>
<div id="cscontact">
<div id="cscontact-1" class="panel">
<table border="0" cellspacing="0">
<tr>
<td class="address">
<b>ComponentSource</b><br />
30 Greyfriars Road<br />
Reading<br />
Berkshire<br />
RG1 1PE<br />
United Kingdom<br />
</td>
<td class="hours">
<b>Office hours:</b><br />
9:00am - 5:30pm BST &amp; CEST<br />
<br />
Tel: +44 118 958 1111<br />
Fax: +44 118 958 9999<br />
</td>
<td>
<b>Languages:</b><br />
English / French / German / Spanish / Italian
</td>
</tr>
</table>
</div>
<div id="cscontact-2" class="panel" style="display: none">
<table border="0" cellspacing="0">
<tr>
<td class="address">
<b>ComponentSource</b><br />
650 Claremore Professional Way<br />
Suite 100<br />
Woodstock<br />
GA 30188-5188<br />
USA<br />
</td>
<td class="hours">
<b>Office hours:</b><br />
9:00am - 7:00pm EDT<br />
<br />
Tel: +1 770 250 6100<br />
Fax: +1 770 250 6199<br />
</td>
<td>
<b>Languages:</b><br />
English / Spanish
</td>
</tr>
</table>
</div>
<div id="cscontact-3" class="panel" style="display: none">
<table border="0" cellspacing="0">
<tr>
<td class="address">
<b>ComponentSource</b><br />
3F Kojimachi Square Bldg<br />
3-3 Kojimachi Chiyoda-ku<br />
Tokyo<br />
Japan<br />
102-0083<br />
</td>
<td class="hours">
<b>Office hours:</b><br />
10:00am - 6:00pm JST<br />
<br />
Tel: +81 3 3237 0281<br />
Fax: +81 3 3237 0282<br />
</td>
<td>
<b>Languages:</b><br />
English / Japanese / Korean / Mandarin / Cantonese
</td>
</tr>
</table>
</div>
</div>
</div>
<h3>Association of Software Professionals Member</h3>
<p>We&rsquo;ve been proud members of Association of Software Professionals for over
<%= years_since_asp_member %> years now.</p>
<p>We also contribute to ASPects, the monthly magazine of Association of Software Professionals.</p>
<p><%= image_tag('asp_logo-member.png', :alt => 'Association of Software Professionals') %></p>
<div class="testimonial-wide-ct">
<div class="testimonial-wide">
<blockquote>&ldquo;Component Owl created <strong>the one and only tool I dont want to be without when it comes to software developing in Visual Studio</strong>. Also, Ive been working as software user/developer for the last 26 years, and <strong>I have never before experienced</strong> a support that really goes the needed extra mile to make things work, like the guys at Component Owl do.&rdquo;
&ndash; Göran Alfvén, Sweden</blockquote>
</div>
</div>
<h3>Microsoft Partner</h3>
<p class="with-image"><%= image_tag 'microsoft-partner.png', :alt => "Component Owl is a Microsoft Partner" %> We are part of the Microsoft Partner Network, which helps us strengthen our capabilities in delivering the best components for Microsoft Windows.</p>
<div class="contact-info-ct">
<h3>Our Contact Info</h3>
<p class="contact"><strong>Contact us today directly with any of your questions, suggestions or comments:</strong>
<br /><span class="emil">support (at) componentowl (dot) com</span></p>
<p>You can also use the <%= link_to "contact form", support_index_path %> in Support section.
We usually reply within 24 hours or sooner.</p>
<p>You can <%= link_to "follow us on twitter", "http://twitter.com/ComponentOwl" %> and subscribe
to our <%= link_to "RSS news feed", feeds_url(:format => :rss) %>.</p>
<p class="hq">
<%= image_tag('brno.jpg', :alt => 'The City of Brno') %>
Our offices are based in Brno,<br />Czech Republic, European Union.
<br /><br />
<em>Brno is the second largest city in Czech Republic, after the capital city Prague.
<br />It is a technological hub and home of two computer science universities and influential
software enterprises, including AVG and Red Hat.</em>
</p>
</div>
</div>

View File

@@ -0,0 +1,7 @@
<div class="owl-flag"><%= image_tag('owl-flag.gif', :alt => "Component Owl") %></div>
<div class="about-content">
<%= render :inline => @static_page.html %>
<%#= render :partial => "draft" %>
</div>

View File

@@ -0,0 +1,18 @@
<div class="subpage resources-content">
<div class="section-heading">Articles for .NET developers</div>
<div class="featured-articles">
<% for article in @featured_articles %>
<h2><%= link_to article.title, article %></h2>
<div class="post-info"><%= t('txt.resources.published_on', :date => l(article.date.to_time, :format => :cute_long)) %></div>
<% end %>
</div>
<div class="articles">
<% for article in @articles %>
<h2><%= link_to article.title, article %></h2>
<% end %>
</div>
</div>

View File

@@ -0,0 +1,46 @@
<div class="subpage article-content">
<div class="left">
<div class="section-heading">Articles for .NET developers</div>
<h1 class="title"><%= @article.title %></h1>
<div class="content">
<%= render :inline => @article.content %>
</div>
</div>
<div class="right">
<div class="dextronet-feeds">
<ul class="links">
<li><%= link_to t('txt.home.subscribe_to_rss'), feeds_url(:format => :rss), :class => "rss" %></li>
<li><%= link_to t('txt.home.follow_on_twitter'), twitter_url, :class => "twitter" %></li>
<li><%= link_to t('txt.home.follow_on_facebook'), Settings.facebook_url, :class => "facebook" %></li>
</ul>
</div>
<div class="sidebar">
<h4><%= featured_product.name %></h4>
<%= screenshot_link(featured_product.screenshot) %>
<div class="buttonz">
<%= download_link(featured_product) %>
</div>
<div class="text">
<%= render :inline => @subtemplate %>
</div>
<%= screenshot_link(@article.screenshot) if @article.screenshot %>
<% if @subtemplate.present? %>
<div class="download">
<%= download_link_to("Download Now", featured_product) %>
</div>
<% end %>
</div>
</div>
</div>
<%= render :partial => "shared/screenshot_buttons", :object => featured_product %>

View File

@@ -0,0 +1,17 @@
xml.instruct! :xml, :version => "1.0"
xml.rss :version => "2.0" do
xml.channel do
xml.title t('txt.rss.comics_title')
xml.description t('txt.rss.comics_description')
xml.link comics_url
for comic in @comics
xml.item do
xml.title title(comic)
xml.description description(comic)
xml.pubDate comic.publish_on.to_s(:rfc822)
xml.link comic_url(comic)
end
end
end
end

View File

@@ -0,0 +1,72 @@
<% @meta_title = title %>
<% @meta_description = description %>
<% content_for :header do %>
<meta property="og:title" content="<%= @meta_title %>" />
<meta property="og:site_name" content="<%= sitename %>" />
<meta property="og:description" content="<%= @meta_description %>" />
<meta property="og:type" content="article" />
<meta property="og:url" content="<%= comic_url(@comic) %>" />
<meta property="og:image" content="<%= @comic.image.url(:web) %>" />
<meta property="fb:admins" content="1658456436" />
<% end %>
<div class="comics-content">
<div class="comics-bubble-ct">
<div class="comics-bubble"><p>Component Owl cares about fun too. Behold, the truth-inspired web
comics for puny human developers!</p></div>
</div>
<div class="comics-navigation">
<%= link_to "Previous", @previous_comic, :class => "comics-prev" if @previous_comic %>
<h2 class="comics-day <%= "comics-np" unless @previous_comic %> <%= "comics-nn" unless @next_comic %>">
<%= l(@comic.publish_on, :format => :cute_with_dayname) %></h2>
<%= link_to "Next", @next_comic, :class => "comics-next" if @next_comic %>
</div>
<div class="comics-wrap">
<div class="comics">
<%= image_tag(@comic.image.url(:web)) %>
</div>
</div>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#appId=181510968582844&amp;xfbml=1"></script>
<div class="comics-social-ct">
<div class="comics-social">
<g:plusone size="tall"></g:plusone>
<span class='st_twitter_vcount' displayText='Tweet'></span>
<span class='st_dzone_vcount' displayText='DZone'></span>
<span class='st_linkedin_vcount' displayText='LinkedIn'></span>
<fb:like href="" send="false" layout="box_count" width="50" show_faces="false" font=""></fb:like>
<span class='st_stumbleupon_vcount' displayText='Share'></span>
<span class='st_email_vcount' displayText='Email'></span>
</div>
</div>
<div class="comics-rss"><%= link_to "Subscribe to Comics RSS", comics_path(:format => :rss) %></div>
<p class="comics-info">
All these comics strips are drawn by our lead Better ListView developer
Libor Tinka. He is either restlessly crafting the perfect code, drinking
green Japanese tea, or drawing hilarious comics.
<br /><br />
If you like this comics, please share it with your friends!
</p>
<div class="comics-blv-wrap">
<div class="comics-blv">
<%= link_to(image_tag('overview.gif', :alt => "Better ListView", :class => "ss"), featured_product) %>
<div class="inside">
<div class="text">Better ListView: .NET ListView control for WinForms (C#, VB.NET)</div>
<span class="dbtn-c dbtn-hilight"><span class="dbtn-w"><%= download_link_to "Download", featured_product, :class => "dbtn" %></span></span>
<span class="dbtn-c"><span class="dbtn-w"><%= link_to("More Info", featured_product, :class => "dbtn") %></span>
</div>
</div>
</div>
<script type="text/javascript">var switchTo5x=true;</script>
<script type="text/javascript" src="http://w.sharethis.com/button/buttons.js"></script>
<script type="text/javascript">stLight.options({publisher:'db6a9d0e-5d07-4036-8bed-4959941491f3'});</script>
</div>

View File

@@ -0,0 +1,37 @@
<div class="download-content" id="download-page">
<h2><%= t('txt.download_page.thanks', :product => strip_version(@product.name), :version => @product.current_version) %></h2>
<%= hidden_field_tag "download_url", @download_url %>
<div class="section-info"><%= t('txt.download_page.start') %></div>
<p><%= t('txt.download_page.info') %></p>
<% form_tag @download_url do -%>
<%= submit_button t('txt.common.start_download'), :btn_class => "dbtn-hilight" %>
<% end -%>
<hr />
<div class="newsletter-ct"><div class="newsletter">
<% if @product.has_newsletter? %>
<h3><%= t('txt.download_page.newsletter_product', :product => @product.name) %></h3>
<% else %>
<h3><%= t('txt.download_page.newsletter_general') %></h3>
<% end %>
<% remote_form_for newsletter_subscription, :html => { :onsubmit => "if (!validate_newsletter_form(this)) return false" } do |f| -%>
<%= hidden_field_tag "form_id", "#new_subscription" %>
<div class="field">
<%= f.label :first_name, t("txt.common.first_name") %>
<%= f.text_field :first_name, :class => "name stressed" %>
</div>
<div class="field">
<%= f.label :email, t("txt.common.your_email") %>
<%= f.text_field :email, :class => "email stressed" %>
</div>
<%= subscription_lists('download-page', @product) %>
<%= subscribe %>
<% end -%>
</div></div>
</div>

View File

@@ -0,0 +1 @@
<%= render :partial => "error/not_found" %>

View File

@@ -0,0 +1 @@
<%= render :partial => "error/not_found" %>

View File

@@ -0,0 +1,15 @@
<div class="subpage not_found-content">
<div class="section-heading"><%= image_tag("heading-404.gif", :alt => t("txt.alt.not_found")) %></div>
<p><%= t('txt.not_found.not_found') %></p>
<p><%= t('txt.not_found.visit_instead', :url => root_url) %></p>
<ul class="common">
<% for product in all_products %>
<li><%= link_to(product.name, product) %></li>
<% end %>
</ul>
</div>

View File

@@ -0,0 +1,34 @@
<div class="subpage faqs-content">
<div class="section-heading"><%= image_tag("heading-support.gif", :alt => t("txt.alt.support")) %></div>
<%= breadcrumb(link_to(t('txt.support.help_support'), "/support"), t('txt.faqs.search_breadcrumb')) %>
<h1><%= t("txt.faqs.search_results") %></h1>
<div class="search">
<% unless @faqs.blank? %>
<% for faq in @faqs %>
<% if faq.product %>
<h2><%= link_to faq.question, product_faq_path(faq.product, faq) %></h2>
<div class="path"><%= t('txt.faqs.faq_in', :link => link_to("#{faq.product.name} &raquo; #{faq.faq_category.name}", product_faq_path(faq.product, faq.faq_category))) %></div>
<% else %>
<h2><%= link_to faq.question, general_faq_path(faq) %></h2>
<div class="path"><%= t('txt.faqs.faq_in', :link => link_to("#{t("txt.faqs.general_faqs")} &raquo; #{faq.faq_category.name}", general_faq_path(faq.faq_category))) %></div>
<% end %>
<div class="answer"><%= render :inline => faq.answer %></div>
<% end %>
<% else %>
<p><%= t('txt.faqs.no_search_results') %></p>
<br />
<h2 class="different-search"><%= t('txt.faqs.try_different_search') %></h2>
<%= render :partial => "support/search" %>
<% end %>
</div>
</div>

View File

@@ -0,0 +1,70 @@
<div class="subpage faqs-content">
<div class="section-heading"><%= image_tag("heading-support.gif", :alt => t("txt.alt.support")) %></div>
<%= breadcrumb(link_to(t('txt.support.help_support'), "/support"), (@product ? "#{@product.name} #{t('txt.faqs.faqs')}" : t("txt.faqs.general_faqs"))) %>
<% if @product %>
<h1><%= @product.name %> <%= t("txt.faqs.faqs") %></h1>
<% else %>
<h1><%= t("txt.faqs.general_faqs") %></h1>
<% end %>
<div class="left">
<ul class="nav">
<% for category in @categories %>
<% current = category == @category%>
<% url = @product ? product_faq_path(@product, category) : general_faq_path(category) %>
<li><%= link_to(category.name, url, :class => "#{"current" if current}") %></li>
<% end %>
</ul>
<div class="nav-panel">
<div class="content">
<div class="faqs">
<h3><%= @category.description %></h3>
<ul class="common">
<% for faq in @faqs %>
<% url = @product ? product_faq_path(@product, @category) : general_faq_path(@category) %>
<li><%= link_to faq.question, "##{faq.url_param}" %></li>
<% end %>
</ul>
</div>
<% for faq in @faqs %>
<h2><a name="<%= faq.url_param %>"><%= faq.question %></a></h2>
<div class="answer"><%= render :inline => faq.answer %></div>
<% end %>
</div>
</div>
</div>
<div class="right">
<h4><%= t("txt.faqs.other_faqs") %></h4>
<ul class="faqs-links">
<% if @product %>
<%= faqs_links(@products, @product) %>
<% else %>
<%= faqs_links(@products) %>
<% end %>
</ul>
<h4><%= t("txt.faqs.cant_find") %></h4>
<p><%= t("txt.faqs.try_search") %></p>
<p><%= t("txt.faqs.contact_us") %></p>
<div class="fpbox">
<h2><%= featured_product.name %></h2>
<%= screenshot_link(featured_product.screenshot) %>
<p><%= featured_product.short_description %></p>
<div class="buttonz">
<%= download_link(featured_product) %>
<%= buy_professional(featured_product) %>
<%= buy_standard(featured_product) %>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,29 @@
xml.instruct! :xml, :version => "1.0"
xml.rss :version => "2.0" do
xml.channel do
xml.title t('txt.rss.title')
xml.description t('txt.rss.description')
xml.link feeds_url
for post in @posts
xml.item do
if post.is_a? Release
link = releases_page_url(post.product, post.version)
xml.title t('txt.home.new_release', :product => strip_version(post.product.name), :version => post.version)
if post.has_changelog?
xml.description t('txt.rss.release_description', :whats_new_url => link, :download_url => download_url(post.product))
else
xml.description link_to(t('txt.rss.download_latest_release'), download_url(post.product))
end
xml.pubDate post.date.to_datetime.to_s(:rfc822)
xml.link link
else
xml.title post.title
xml.description post.intro
xml.pubDate post.date.to_s(:rfc822)
xml.link post.url
end
end
end
end
end

View File

@@ -0,0 +1,10 @@
<div class="buttons-hp buttons-hp-<%= layout_type %>">
<%= download_link(featured_product, "standard", t('txt.home.free_download')) %>
<%= more_link_button(featured_product) %>
<%= buy_link(featured_product) %>
<div class="logos">
<%= image_tag('logo-dotnet.gif', :alt => "Microsoft .NET") %>
<%= image_tag('logo-vs.gif', :alt => "Microsoft Visual Studio") %>
<%= image_tag('logo-win.gif', :alt => "Microsoft Windows") %>
</div>
</div>

View File

@@ -0,0 +1,125 @@
<h3 class="compatiblehd">Better ListView is compatible with:</h3>
<div class="compatiblelists">
<ul class="compatiblelist list-l">
<li class="logo vs"><%= image_tag('logo-vs-big.gif') %></li>
<li>Visual Studio 2005, 2008, 2010, and newer.</li>
<li>C#, Visual Basic .NET (VB.NET), managed C++, and other CLI languages.</li>
</ul>
<ul class="compatiblelist list-r">
<li class="logo dotnet"><%= image_tag('logo-dotnet-big.gif') %></li>
<li>.NET 2, .NET 3, .NET 3.5, .NET 4, and newer.</li>
<li>Windows 2000, XP, 2003, Vista, 7, and newer, both 32-bit and 64-bit.</li>
</ul>
</div>
<div class="lists">
<div class="list-l">
<h3>Better ListView<strong> advantages:</strong></h3>
<ul class="common checklist">
<li>Single small DLL file (less than 250kB when compressed).</li>
<li>Easy deployment (xcopy). No dependencies. No installation.</li>
<li>Royalty-free distribution. No runtime licensing.</li>
<li>Written from scratch in pure managed code.</li>
<li>Lightning fast, optimized for 100.000+ items.</li>
<li>Minimum learning needed. Very similar to regular .NET ListView control.</li>
<li>User-friendly and developer-friendly.</li>
<li>No limits of the regular Microsoft .NET ListView control bundled with Visual Studio!</li>
<li>Tested by thousands of users world-wide.</li>
<li>Guaranteed continued support and development. We use Better ListView ourselves in our
popular and successful desktop products, like
<%= link_to 'Swift To-Do List', 'http://www.dextronet.com/swift-to-do-list-software', :class => "nowrap" %>.</li>
<li>Well documented, intuitive method/properties names.</li>
<li>Always looks great. Always fully uses the current Windows theme, including Aero support.</li>
<li>Enterprise source code licenses available.</li>
<li>Well documented.</li>
<li>Fast 24-hour or faster support.</li>
</ul>
</div>
<div class="list-r">
<h3>BetterListView<strong> extra features:</strong></h3>
<p>Better ListView has hundreds of extra features, compared to the regular .NET ListView control.
Plus, it removes all its limitations and bugs. Some of the most notable extra features include:</p>
<ul class="common checklist">
<li>Hierarchical items. Supports sub-items like in the tree view control.</li>
<li>Thumbnails view.</li>
<li>Serialization XML and Binary</li>
<li>Save/load Better ListView content into XML or binary, string or file, in just 1 line of code.</li>
<li>Inbuilt drag &amp; drop reordering (with insertion mark indicator).</li>
<li>Sub-item images</li>
<li>Double-buffered and flicker-free.</li>
<li>Highly customizable and flexible.</li>
<li>Multi-column sorting.</li>
<li>Inbuilt sorting (zero code needed).</li>
<li>Checkboxes in all views, 3-state support</li>
<li>Better grouping preserves item order, customizable group headers look and behavior,
collapsible, image support, context menu support, focusable, etc.</li>
<li>Embedded editing controls, support for custom controls.</li>
<li>Many other useful features - <%= link_to 'see more Better ListView features', featured_product %>.</li>
</ul>
</div>
</div>
<div class="testimonial-wide">
<blockquote>&ldquo;Better List View is <b>awesome</b>.&rdquo; &ndash; Daniel N.</blockquote>
</div>
<div class="tellingct">
<div class="tellingcnt">
<h3 class="tellinghd">Why is Better ListView the best ListView<br />replacement component for .NET (C#, VB)?</h3>
<p>To put it simply, there is nothing like Better ListView out there. Nothing.</p>
<p>Better ListView has been designed as a component that can easily replace the original
ListView control supplied with .NET.</p>
<p>There is virtually no learning needed. Its just intuitive.</p>
<p>Better ListView looks native and always fully utilizes the current system theme (so there is
no weird inconsistent look), and it also behaves exactly like it should. Weve modeled it after
the original list view component and the list view used in Windows Explorer everyone already
knows how to use it. It fully leverages the previous user knowledge.</p>
<p>We put extreme attention to details. All the little quirks and nuances that drive us crazy when
it comes to components of many smaller vendors are resolved in Better ListView. You will be
amazed how flexible and customizable it is, and how great it feels to use it. The users of your
application will feel right at home.</p>
<p>And most importantly, Better ListView is packed full of great features.</p>
<p>If you are wondering why we created Better ListView, you can read
<%= link_to 'our story', story_path(featured_product) %>.</p>
<p class="ending">And by the way, Better ListView comes with awesome samples gallery. Download and install
the trial package right now and see for yourself what Better ListView can do:</p>
</div>
<div class="testimonial ">
<blockquote>Better ListView really is better - it kills the standard!</blockquote>
<em>Mitchell V.</em>
</div>
<div class="testimonial">
<blockquote>Better ListView really is better - it kills the standard .NET ListView in both
performance and flexibility. I'll never use anything else!</blockquote>
<em>Mitchell V.</em>
</div>
<div class="testimonial">
<blockquote>I'll never use anything else!</blockquote>
<em>Mitchell V.</em>
</div>
<div class="testimonial">
<blockquote>Better ListView really is better - it kills the standard .NET ListView in both
performance and flexibility. I'll never use anything else!</blockquote>
<em>Mitchell V.</em>
</div>
</div>

View File

@@ -0,0 +1,23 @@
<div class="d-placing">
<h1 class="homehd"><span><%= featured_product.featured_phrase.title %></span></h1>
<h2 class="homeph"><%= render :inline => featured_product.featured_phrase %></h2>
<h2 class="homeph"><%= featured_product.description('featured-subphrase') %></h2>
<div class="hp-wrap">
<%= render :partial => "buttons_logos", :locals => { :layout_type => "vertical" } %>
<iframe width="560" height="315" src="http://www.youtube.com/embed/hsY5OLRwNYw" frameborder="0" allowfullscreen></iframe>
</div>
<div class="home-static">
<%= render :inline => @static_page.html %>
<%#= render :partial => "draft" %>
<div class="darrows"></div>
<%= render :partial => "buttons_logos", :locals => { :layout_type => "horizontal" } %>
<%= render :partial => "shared/sharethis" %>
</div>
</div>

View File

@@ -0,0 +1,16 @@
<div class="buttons">
<%= download_link(featured_product, "standard", t('txt.home.free_download')) %>
<%= buy_link(featured_product, "pricing", t('txt.home.pricing')) %>
<%= image_tag("simple/logos.gif", :alt => ".NET, Visual Studio, Windows", :class => "logos") %>
</div>
<div class="moreinfo">
<h4><strong>Send me more info please</strong> (Comparison table and more):</h4>
<% remote_form_for newsletter_subscription("landing-page"), :html => { :"data-progress" => "Sending...", :id => newsletter_form_id,
:onsubmit => "if (!validate_newsletter_form(this)) return false" } do |f| -%>
<%= f.hidden_field :subscription_location_id %>
<%= hidden_field_tag "form_id", "##{newsletter_form_id}" %>
<%= f.text_field :email, :value => t("txt.common.your_email"), :class => "email inline-label" %><%= subscribe :small, "Send", :btn_id => "send-info" %>
<%= subscription_lists('landing-page', @product) %>
<% end -%>
</div>

View File

@@ -0,0 +1,72 @@
<div class="placed">
<h1>Better ListView .NET control</h1>
<h3>The perfect alternative to the regular .NET List View control with <strong>more features</strong>.</h3>
<div class="quote">
<blockquote>Youve might already discovered that the regular list view control included with .NET is far from perfect and other alternatives are either insufficient
or inflexible overkills. <strong>Better ListView is just what you are looking for. It is the ideal alternative to regular .NET list view control.
Learn why now.</strong><br /><em>&ndash; Jiri Novotny, Better ListView Project Leader</em></blockquote>
</div>
<%= render :partial => "actions", :locals => { :newsletter_form_id => "new_subscription_a" } %>
<h2>Why is Better ListView the number one List View control for .NET?</h2>
<ul class="list">
<li>Written from scratch in pure managed C# code, does <strong>not</strong> inherit from regular list view</li>
<li>Easy to deploy, single tiny .DLL file (&lt; 200kB when compressed), no dependencies</li>
<li>Very light-weight and lightning fast, optimized even for 100 000+ items</li>
<li>Developer friendly, minimal learning needed</li>
<li>Can easily replace regular list view control in your projects, only very small code changes are needed</li>
<li>Fixed all known issues related to regular .NET list view control</li>
<li>Double-buffered and flicker free</li>
<li>Customizable and flexible</li>
<li>Source code licenses available</li>
<li><strong>Much</strong> more features (see below)</li>
</ul>
<p><strong>The unique thing about Better ListView</strong> is that we use it in our own consumer desktop applications (for example,
<%= link_to "Swift&nbsp;To-Do&nbsp;List", "http://www.dextronet.com/swift-to-do-list-software" %>). Better ListView is therefore thoroughly <strong>tested in the
real world by thousands of users</strong>. Also, this <strong>guarantees its continued development and support in the future</strong>. It is not uncommon to find
abandoned components by many small component vendors, but that will never happen with Better ListView.</p>
<h2>The extra features of Better ListView include:</h2>
<div class="features">
<ul class="list floated">
<li>Better Drag and Drop support (including insertion marker and auto-scroll)</li>
<li>3 types of context menus supported (items, column headers, and empty area)</li>
<li>Inbuilt sorting (this can save you a lot of time)</li>
<li>Inbuilt multi-column sort support</li>
<li>Excellent images support, smooth resizing, column-headers images supported</li>
<li>Each sub-item can have its own image</li>
<li>Better checkboxes, can be used in all layouts, 3-state, improved behavior</li>
<li>XML Serialization</li>
<li>Embedded controls support</li>
<li>Sub-item label editing</li>
<li>More user friendly behavior similar to Windows Explorer list view</li>
<li>Advanced hit-test</li>
<li>Excellent layout, images and text formatting logic</li>
<li>And <strong>much</strong> more</li>
</ul>
<div class="screenshots">
<%= link_to(image_tag("simple/lp-ss1.png", :alt => "Better ListView"), screenshot_path(13), :class => "screenshot") %>
<%= link_to(image_tag("simple/lp-ss2.png", :alt => "Better ListView"), screenshot_path(2), :class => "screenshot") %>
</div>
</div>
<p>Don't hesitate and <strong><%= download_link_to "download", @product %></strong> the free Better ListView trial package <strong>now</strong>.</p>
<%= render :partial => "actions", :locals => { :newsletter_form_id => "new_subscription_b" } %>
<div class="contact-form-ct">
<p class="airmail"><strong><%= t("txt.product.any_questions") %></strong></p>
<%= contact_form(:show_product_select => false, :split_layout => true) %>
</div>
</div>
<div class="owl"><%= image_tag "simple/owl.gif", :alt => "Component Owl" %></div>

View File

@@ -0,0 +1,48 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en" lang="en">
<head>
<%= render :partial => "shared/meta" %>
<%= cached_stylesheets_base %>
<%= yield :header %>
</head>
<body<%= ' class="d-homepage"' if @controller.controller_name == "home" %>>
<div class="d-page">
<%= render :partial => "shared/header" %>
<% if @controller.controller_name == "home" %>
<div class="d-content-wrap">
<%= yield %>
</div>
<% else %>
<div class="d-placing">
<div class="d-content-wrap">
<%= yield %>
</div>
</div>
<% end %>
<%= render :partial => "shared/footer" %>
</div>
<%= cached_javascripts_app %>
<%= page_include %>
<!-- Place this tag after the last plusone tag -->
<script type="text/javascript">
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
</script>
</body>
</html>

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<title><%= controller.controller_name.singularize.camelize.constantize.human_name(:count => 2) %></title>
<%= stylesheet_link_tag 'cute_admin' %>
</head>
<body>
<% if flash[:notice] -%><p class="flash-notice"><%= flash[:notice] %></p><% end -%>
<%= yield %>
</body>
</html>

View File

@@ -0,0 +1,17 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<%= cached_stylesheets_base %>
</head>
<body class="d-iframe">
<%= javascript_tag "var t = #{locales['txt']['javascript'].to_json}" %>
<%= yield %>
<%= cached_javascripts_base %>
</body>
</html>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cz" lang="cz">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<title>Login</title>
<%= stylesheet_link_tag 'login' %>
</head>
<body>
<div id="d-login">
<div class="pad">
<%= yield %>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,30 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<%= render :partial => "shared/meta" %>
<%= cached_stylesheets_simple %>
</head>
<body>
<%= javascript_tag "var t = #{locales['txt']['javascript'].to_json}" %>
<div class="d-page">
<div class="d-border"></div>
<div class="d-content-wrap">
<%= yield %>
</div>
<div class="d-footer">
<div class="d-placing">&copy; 2011 Dextronet.com, ComponentOwl.com. All rights reserved. <%= link_to "Go to Component Owl Homepage", root_path %></div>
</div>
</div>
<%= page_include %>
<%= cached_javascripts_simple %>
</body>
</html>

View File

@@ -0,0 +1,4 @@
Full name: <%= @survey.full_name %>
Company name: <%= @survey.company_name %>
Purchase email: <%= [[@survey.purchase_email1, @survey.purchase_email2, @survey.purchase_email3] - [""]].flatten.compact.join(", ") %>
Current email: <%= @survey.current_email %>

View File

@@ -0,0 +1 @@
<%= @message %>

View File

@@ -0,0 +1,10 @@
<%= @license_key.error %>
Source file:
---------------------------------------------
<%= @license_key.source_file_data.join("\n") %>
XML Request:
---------------------------------------------
<%= @license_key.raw_post_data %>

View File

@@ -0,0 +1,6 @@
<% @licenses.each do |license| %>
<%= license[:product].name %>:
---------------------------------------------
<%= license[:license_keys].join("\n") %>
<% end %>

View File

@@ -0,0 +1,14 @@
Hi,
Your friend <%= @survey.full_name %> wants you to check out Swift To-Do List, the number one task management software for Windows. Have all your tasks and notes in one place - get organized in no time and be more productive.
More info, screenshots, free 30-day trial at:
http://www.dextronet.com/swift-to-do-list-software
<%= @survey.full_name %> uses Swift To-Do List and is quite happy with it. Why store all your worries, tasks and all that stuff in your head, when you can store it in your computer?
Snap! It's like an instant brain upgrade.
With the best regards,
Jiri Novotny
Dextronet.com

View File

@@ -0,0 +1,6 @@
Full name: <%= @survey.full_name %>
Company name: <%= @survey.company_name %>
Purchase email: <%= [[@survey.purchase_email1, @survey.purchase_email2, @survey.purchase_email3] - [""]].flatten.compact.join(", ") %>
Email address: <%= @survey.current_email %>
<%= survey(@survey.survey) %>

View File

@@ -0,0 +1,205 @@
<h1>Licensing &amp; pricing for Better ListView</h1>
<p class="section-info">Purchase the ideal replacement component for .NET ListView.</p>
<ul id="buy-nav" class="nav">
<li><%= link_to("Buy new licenses", {}, :class => "current") %></li>
<li><%= link_to("Renew subscription", {}) %></li>
</ul>
<div id="buy-panels">
<div class="panel">
<% form_tag "https://secure.bmtmicro.com/servlets/Orders.ShoppingCart", :method => :get do -%>
<%= hidden_field_tag "CID", Settings.order.cid %>
<%= hidden_field_tag "CLR", Settings.order.clr %>
<%= hidden_field_tag "PRODUCTID", "", :class => "product-id" %>
<table cellspacing="0">
<tr>
<th colspan="4">Single developer licenses</th>
</tr>
<tr>
<td>Single developer license with 1 year subscription</td>
<td class="price">$345</td>
<td class="addon">
<%= check_box_tag "PRODUCTID", "18300056", false, :id => "support-single" %>
<%= label_tag "support-single", "Add 1 year priority support ($99)" %>
</td>
<td class="buy"><%= buy "18300042" %></td>
</tr>
<tr>
<th colspan="4">5 developers licenses</th>
</tr>
<tr>
<td>5 developer license with 1 year subscription</td>
<td class="price">$995</td>
<td class="addon">
<%= check_box_tag "PRODUCTID", "18300057", false, :id => "support-5" %>
<%= label_tag "support-5", "Add 1 year priority support ($295)" %>
</td>
<td class="buy"><%= buy "18300044" %></td>
</tr>
<tr>
<th colspan="4">Site licenses - use at 1 site (office or building)</th>
</tr>
<tr>
<td>Site license with 1 year subscription</td>
<td class="price">$1995</td>
<td class="addon" rowspan="2">
<%= check_box_tag "PRODUCTID", "18300058", false, :id => "support-site" %>
<%= label_tag "support-site", "Add 1 year priority support ($495)" %>
</td>
<td class="buy"><%= buy "18300046" %></td>
</tr>
<tr>
<td>Site license with source code and 1 year subscription</td>
<td class="price">$3995</td>
<td class="buy"><%= buy "18300047" %></td>
</tr>
<tr>
<th colspan="4">Enterprise license - use world-wide at unlimited sites</th>
</tr>
<tr>
<td>Enterprise license with source code and 1 year subscription</td>
<td class="price">$8995</td>
<td class="addon">
<%= check_box_tag "PRODUCTID", "18300059", false, :id => "support-enterprise" %>
<%= label_tag "support-enterprise", "Add 1 year priority support ($995)" %>
</td>
<td class="buy"><%= buy "18300048" %></td>
</tr>
</table>
<% end -%>
</div>
<div class="panel">
<% form_tag "https://secure.bmtmicro.com/servlets/Orders.ShoppingCart", :method => :get do -%>
<%= hidden_field_tag "CID", Settings.order.cid %>
<%= hidden_field_tag "CLR", Settings.order.clr %>
<%= hidden_field_tag "PRODUCTID", "", :class => "product-id" %>
<table cellspacing="0">
<tr>
<th colspan="4">Single developer licenses</th>
</tr>
<tr>
<td>Renew single developer 1 year subscription</td>
<td class="price">$138</td>
<td class="addon">
<%= check_box_tag "PRODUCTID", "18300056", false, :id => "renew-support-single" %>
<%= label_tag "renew-support-single", "Add 1 year priority support ($99)" %>
</td>
<td class="buy"><%= renew "18300049" %></td>
</tr>
<tr>
<th colspan="4">5 developers licenses</th>
</tr>
<tr>
<td>Renew 5 developer 1 year subscription</td>
<td class="price">$398</td>
<td class="addon">
<%= check_box_tag "PRODUCTID", "18300057", false, :id => "renew-support-5" %>
<%= label_tag "renew-support-5", "Add 1 year priority support ($295)" %>
</td>
<td class="buy"><%= renew "18300051" %></td>
</tr>
<tr>
<th colspan="4">Site licenses - use at 1 site (office or building)</th>
</tr>
<tr>
<td>Renew site license 1 year subscription</td>
<td class="price">$798</td>
<td class="addon" rowspan="2">
<%= check_box_tag "PRODUCTID", "18300058", false, :id => "renew-support-site" %>
<%= label_tag "renew-support-site", "Add 1 year priority support ($495)" %>
</td>
<td class="buy"><%= renew "18300053" %></td>
</tr>
<tr>
<td>Renews site license 1 year subscription with source code</td>
<td class="price">$1598</td>
<td class="buy"><%= renew "18300054" %></td>
</tr>
<tr>
<th colspan="4">Enterprise license - use world-wide at unlimited sites</th>
</tr>
<tr>
<td>Renew enterprise license 1 year subscription with source code</td>
<td class="price">$3598</td>
<td class="addon">
<%= check_box_tag "PRODUCTID", "18300059", false, :id => "renew-support-enterprise" %>
<%= label_tag "renew-support-enterprise", "Add 1 year priority support ($995)" %>
</td>
<td class="buy"><%= renew "18300055" %></td>
</tr>
</table>
<% end -%>
</div>
</div>
<div class="licenses-info">
<div class="block">
<h3>All licenses are:</h3>
<ul class="common">
<li>Life-time (non-expiring)</li>
<li>Royalty free</li>
</ul>
</div>
<div class="block">
<h3>Subscription gets you:</h3>
<ul class="common">
<li>Support</li>
<li>Updates</li>
</ul>
</div>
<div class="block last">
<h3>Priority support gets you:</h3>
<ul class="common">
<li>Guaranteed 24 hour reply</li>
<li>Help with implementing new features and extending Better ListView</li>
</ul>
</div>
</div>
<div class="licenses-info">
<h3>What license do I need?</h3>
<ul class="common">
<li>If only 1 developer works on your current and future projects, then the "Single developer license" is for you.</li>
<li>If 2-5 developers works on your current and future projects, then the "5 developer license" is for you.</li>
<li>If more than 5 developers work on your current and future projects, then the "Site license" is for you.</li>
<li>If you have multiple teams in different locations, then the "Enterprise license" is for you.</li>
</ul>
</div>
<div class="licenses-info componentsource">
<h3>Resellers and Customer Service, Contact Sales</h3>
<div class="block">
<p><strong>US and Canada</strong><br />Toll Free: 888 850 9911 (24 hour)</p>
</div>
<div class="block">
<p><strong>United Kingdom</strong><br />Toll Free: 0800 581111 (24 hour)</p>
</div>
<div class="block last">
<p>Or call us free of charge from <%= link_to "these&nbsp;countries", customer_service_path %>.</p>
</div>
<br /><br /><br />
<%= image_tag "CSLogo.gif", :alt => "ComponentSource.com" %>
</div>

View File

@@ -0,0 +1,7 @@
<div class="order-content">
<%= render :inline => @page.html %>
<%#= render :partial => "draft" %>
</div>

View File

@@ -0,0 +1,145 @@
xml.instruct! :xml, :version => "1.0"
xml.XML_DIZ_INFO do
xml.MASTER_PAD_VERSION_INFO do
xml.MASTER_PAD_VERSION val('MASTER_PAD_VERSION')
xml.MASTER_PAD_EDITOR val('MASTER_PAD_EDITOR')
xml.MASTER_PAD_INFO val('MASTER_PAD_INFO')
end
xml.Company_Info do
xml.Company_Name val('Company_Name')
xml.Address_1 val('Address_1')
xml.Address_2 val('Address_2')
xml.City_Town val('City_Town')
xml.State_Province val('State_Province')
xml.Zip_Postal_Code val('Zip_Postal_Code')
xml.Country val('Country')
xml.Company_WebSite_URL val('Company_WebSite_URL')
xml.Contact_Info do
xml.Contact_First_Name val('Contact_First_Name')
xml.Contact_Last_Name val('Contact_Last_Name')
xml.Contact_Email val('Contact_Email')
xml.Author_First_Name val('Author_First_Name')
xml.Author_Last_Name val('Author_Last_Name')
xml.Author_Email val('Author_Email')
end
xml.Support_Info do
xml.Sales_Email val('Sales_Email')
xml.Support_Email val('Support_Email')
xml.General_Email val('General_Email')
xml.Sales_Phone val('Sales_Phone')
xml.Support_Phone val('Support_Phone')
xml.General_Phone val('General_Phone')
xml.Fax_Phone val('Fax_Phone')
end
end
xml.ASP do
xml.ASP_FORM val('ASP_FORM')
xml.ASP_Member val('ASP_Member')
xml.ASP_Member_Number val('ASP_Member_Number')
end
xml.NewsFeed do
xml.NewsFeed_FORM val('NewsFeed_FORM')
xml.NewsFeed_VERSION val('NewsFeed_VERSION')
xml.NewsFeed_URL val('NewsFeed_URL')
xml.NewsFeed_Type val('NewsFeed_Type')
xml.NewsFeed_Language val('NewsFeed_Language')
xml.NewsFeed_Purpose val('NewsFeed_Purpose')
xml.NewsFeed_Author_Email val('NewsFeed_Author_Email')
xml.NewsFeed_Author_First_Name val('NewsFeed_Author_First_Name')
xml.NewsFeed_Author_Last_Name val('NewsFeed_Author_Last_Name')
xml.NewsFeed_DESCRIPTION val('NewsFeed_DESCRIPTION')
xml.NewsFeed_Feed_URL val('NewsFeed_Feed_URL')
xml.NewsFeed_Site_Name val('NewsFeed_Site_Name')
xml.NewsFeed_Site_URL val('NewsFeed_Site_URL')
xml.NewsFeed_Title val('NewsFeed_Title')
xml.NewsFeed_Description_70 val('NewsFeed_Description_70')
xml.NewsFeed_Description_250 val('NewsFeed_Description_250')
end
xml.Site do
xml.Site_FORM val('Site_FORM')
xml.Site_VERSION val('Site_VERSION')
xml.Site_URL val('Site_URL')
xml.Site_DESCRIPTION val('Site_DESCRIPTION')
xml.Site_Contact_Email val('Site_Contact_Email')
xml.Site_Contact_First_Name val('Site_Contact_First_Name')
xml.Site_Contact_Last_Name val('Site_Contact_Last_Name')
xml.Site_Site_Title val('Site_Site_Title')
xml.Site_Site_URL product_link
xml.Site_Description_100 val('Site_Description_100')
xml.Site_Description_250 val('Site_Description_250')
xml.Site_Description_450 val('Site_Description_450')
xml.Site_Keywords val('Site_Keywords')
end
xml.Program_Info do
xml.Program_Name name
xml.Program_Version version
xml.Program_Release_Month release_month
xml.Program_Release_Day release_day
xml.Program_Release_Year release_year
xml.Program_Cost_Dollars price
xml.Program_Type val('Program_Type')
xml.Program_Release_Status val('Program_Release_Status')
xml.Program_Install_Support val('Program_Install_Support')
xml.Program_OS_Support val('Program_OS_Support')
xml.Program_Language val('Program_Language')
xml.Program_Change_Info val('Program_Change_Info')
xml.Program_System_Requirements val('Program_System_Requirements')
xml.Program_Category_Class val('Program_Category_Class')
xml.File_Info do
xml.File_Size_Bytes size_b
xml.File_Size_K size_kb
xml.File_Size_MB size_mb
xml.Filename_Versioned ""
xml.Filename_Previous ""
xml.Filename_Generic ""
xml.Filename_Long ""
end
xml.Expire_Info do
xml.Has_Expire_Info val('Has_Expire_Info')
xml.Expire_Count val('Expire_Count')
xml.Expire_Based_On val('Expire_Based_On')
xml.Expire_Other_Info val('Expire_Other_Info')
xml.Expire_Month val('Expire_Month')
xml.Expire_Day val('Expire_Day')
xml.Expire_Year val('Expire_Year')
end
xml.Limitations val('Limitations')
xml.Program_Categories val('Program_Categories')
xml.Program_Cost_Other_Code ""
xml.Program_Cost_Other ""
xml.Awards val('Awards')
xml.Program_Specific_Category val('Program_Specific_Category')
xml.Includes_JAVA_VM val('Includes_JAVA_VM')
xml.Includes_VB_Runtime val('Includes_VB_Runtime')
xml.Includes_DirectX val('Includes_DirectX')
end
xml.Web_Info do
xml.Application_URLs do
xml.Application_Info_URL product_link
xml.Application_Order_URL (val('Application_Order_URL').present? ? val('Application_Order_URL') : buy_link)
xml.Application_Screenshot_URL val('Application_Screenshot_URL')
xml.Application_Icon_URL val('Application_Icon_URL')
xml.Application_XML_File_URL pad_link
end
xml.Download_URLs do
xml.Primary_Download_URL setup_file_link
xml.Secondary_Download_URL ""
xml.Additional_Download_URL_1 ""
xml.Additional_Download_URL_2 ""
end
end
xml.Permissions do
xml.Distribution_Permissions val('Distribution_Permissions')
xml.EULA val('EULA')
end
xml.Program_Descriptions do
xml.English do
xml.Keywords val('Keywords')
xml.Char_Desc_45 val('Char_Desc_45')
xml.Char_Desc_80 val('Char_Desc_80')
xml.Char_Desc_250 val('Char_Desc_250')
xml.Char_Desc_450 val('Char_Desc_450')
xml.Char_Desc_2000 val('Char_Desc_2000')
end
end
end

View File

@@ -0,0 +1,4 @@
<div class="edition-popup-content">
<div class="heading"><%= t('txt.order.stdl_editions_difference') %></div>
<%= @edition.description %>
</div>

View File

@@ -0,0 +1 @@
<p>The Professional edition has all the features the Standard edition has and many extra.</p><p>It allows you to easily <strong>email tasks</strong> to others or to yourself. Set <strong>Start Date</strong> and <strong>Completion Date</strong> for your tasks. <strong>Assign</strong> tasks using <strong>Assigned To</strong> field. Track your progress more precisely using <strong>Percent Done</strong> field and <strong>Status</strong> field. Use <strong>Time Estimate</strong> and <strong>Time Spent</strong> fields for instant clarity about time needed and time spent for each task. <strong>Context</strong> field helps you to better categorize your tasks.</p><p>The best part is: <strong>You decide</strong> which fields you want to use, and which to <strong>completely</strong> hide (this is a unique feature).</p>

View File

@@ -0,0 +1,132 @@
<div class="features-page">
<ul class="common">
<li>Better ListView is a <strong>list view control for .NET Windows Forms</strong> (C#, VB.net) with full Visual Studio support.</li>
<li>Designed as a replacement for the regular .NET list view control.</li>
<li>Better ListView has <strong>more features and flexibility</strong>, always uses the <strong>current system theme</strong> (including <strong>Aero</strong> support), and <strong>removes limitations</strong> of the regular .NET list view control.</li>
<li><strong>Minimum learning needed</strong>. Better ListView can be used just like the regular list view.</li>
<li>Written in <strong>pure managed C# code</strong>. It is fast, <strong>light-weight</strong> and optimized for 100k+ items.</li>
<li>Easy royalty-free deployment. Single DLL file that has just 180kB when compressed.</li>
<li>Tested in the real world by thousands of users</li>
</ul>
<div class="image"><img src="http://assets.componentowl.com/images/7/Overview Collage_original_1298555587.png?1298555587" alt="" /></div>
<h2>Extra features summary</h2>
Better ListView is fast and flicker-free, has better drag &amp; drop and item reordering support, better column headers, inbuilt sorting, multi-column sorting, better images support, context menus for column headers and items, embedded controls for editing support, automatic and custom sizing of items and images, thumbnails view, richer event data, item text formatting, XML serialization, data-binding, owner-drawing options, better tooltips, powerful hit-test, improved usability, and more.
<% testimonial :author => "DevProConnections.com Review" do -%>
The control is <b>very easy and intuitive to use and is well documented</b>.
<% end -%>
<h3>Double-buffered and flicker free</h3>
Simply put, Better ListView is smooth. Regular listview requires multiple anti-flicker techniques, but you do not have to worry about that with Better ListView. Better ListView is optimized for 100k+ items.
<h3>Column header images</h3>
You can use images in column headers. Custom image sizes are supported.
<div class="image"><img src="http://assets.componentowl.com/images/8/Column Header Images_original_1298624101.png?1298624101" alt="" /></div>
<h3>Sub-item images</h3>
You can set images to list view sub-items. Regular list view allows you to set only one image per list view item, but Better ListView can show image for every sub-item (in every column).
<h3>Image-List and Image Support</h3>
Better ListView supports both image list, or individual image objects (System.Drawing.Image). Regular list view forces you to use ImageList object.
<h3>Custom list view Image size</h3>
You can use any image size in the list view. Better ListView can also automatically resize images with preserving aspect ratio.
<h3>Drag &amp; drop with insertion mark</h3>
Highly customizable drag-drop for both internal and external drag-drop. You can use drop highlight or insertion mark drag drop modes.
<div class="image"><img src="http://assets.componentowl.com/images/21/List View Item Reordering Mark Preview_original_1298635398.png?1298635398" alt="" /></div>
<h3>List view item reordering</h3>
Better ListView has inbuilt item reordering and item drag &amp; drop inserting at the position specified by user. Drag &amp; drop preview is shown using an insertion mark.
<h3>Column-header reordering</h3>
Better ListView has inbuilt easy drag &amp; drop column header reordering that is much easier to use than in the regular list view. Insertion mark is shown, auto-scrolling is supported.
<div class="image"><img src="http://assets.componentowl.com/images/9/Column Header Reordering With Insertion Mark_original_1298624931.png?1298624931" alt="" /></div>
<h3>Auto-scroll for column header reordering and item reordering</h3>
Better ListView has inbuilt auto-scrolling for column header and item reordering.
<h3>Column headers can be shown in all views</h3>
Better ListView can display column headers in all views - Details, SmallIcons, LargeIcons, List, Tile, Thumbnails. This allows users to sort items in all views. Additionally, you can also hide the column headers even in the details view.
<div class="image"><img src="http://assets.componentowl.com/images/10/Column Headers In LargeIcons View_original_1298625638.png?1298625638" alt="" /></div>
<h3>Thumbnails view mode</h3>
Better ListView supports additional "thumbnails" view mode that allows you to view images of large sizes. The images are automatically and smoothly resized with preserved aspect ratio. You can define the maximum/minimum desired image sizes.
<h3>Image shadows, borders and padding</h3>
All images in Better ListView can have border or shadow specified. You can also specify padding that gives you space for owner drawing (eg. overlay images). This can be used in all views.
Image shadows like in Windows 7 theme are supported. Windows Explorer uses very similar shadows for image thumbnails.
<div class="image"><img src="http://assets.componentowl.com/images/11/ListView Image Shadows and Image Borders_original_1298626278.png?1298626278" alt="" /></div>
<h3>Multi-column sorting</h3>
You can sort by multiple columns in Better ListView. Simply shift+click a secondary (or third, etc) column to add it to the current sort. Zero code needed. Additionally, the background of the primary (first) sort column can be highlighted.
<div class="image"><img src="http://assets.componentowl.com/images/12/Multi Column Sort in List View_original_1298626613.png?1298626613" alt="" /></div>
<h3>Inbuilt sorting and natural sorting</h3>
Better ListView has inbuilt list view sorting that works out of the box. You no longer need to implement your own item comparer. If custom comparer is needed, you can inherit from the Better ListView comparer to save time.
<h3>Richer event data</h3>
Many events have richer event data that allow you to do extra operations or tell you extra useful information. The richer events include: AfterItemSort, BeforeDrag, BeforeItemSort, ColumnClick (allows you to cancel sort), DragDropException, DrawBackground, DrawColumnHeaderBackground, DrawColumnHeader, DrawItemBackground, DrawItem, HitTestChanged, ItemActivate (event data tells you how the item got activated - mouse, keyboard or code), ItemDrag, ItemDrop, ItemReorder, ItemSearch, LabelEdit, RequestEmebeddedControl.
<h3>Checkboxes in all views</h3>
You can have checkboxes in LargeIcons view, SmallIcons view, List view, Thumbnails view and of course also in the Details view.
<div class="image"><img src="http://assets.componentowl.com/images/13/Checkboxes In LargeIcons View_original_1298626985.png?1298626985" alt="" /></div>
<h3>Three state checkboxes</h3>
Three state checkboxes are supported in Better ListView:
<div class="image"><img src="http://assets.componentowl.com/images/14/Three State Checkboxes in List View_original_1298628177.png?1298628177" alt="" /></div>
<h3>Powerful list view tooltips</h3>
You can display tooltips for nearly any part of Better ListView - tooltips for items, sub-items, checkboxes, item images, sub-item images, column headers, column header images, column header borders, and even for custom areas (regions). Owner-drawn tooltips are supported.
<div class="image"><img src="http://assets.componentowl.com/images/15/List View Tooltips Region And Owner Drawn Tooltips_original_1298635957.png?1298635957" alt="" /></div>
<h3>Uses current Windows theme</h3>
Instead of implementing custom, un-native look and feel, Better ListView always automatically fully uses the current system theme. It supports Aero as well. Better ListView always looks great and feels right to the user.
<h3>XML serialization of everything</h3>
Every part of Better ListView (items, sub-items, column headers) can be both binary and XML serialized. You can easily XML serialize whole list view (or binary serialize) to save it to file or transfer items between controls. Standard ways of .NET serialization can be used (BinaryFormatter, XmlSerializer).
<h3>Owner drawing</h3>
Better ListView allows you to draw over the client area, items and column headers. Contrary to .NET ListView, owner drawing is fully operational even when the system uses Aero theme. You can draw separately to background and foreground parts of Better ListView without worrying about proper drawing order. Owner drawing events provide rich data, including exact item state and areas of every item part.
<div class="image"><img src="http://assets.componentowl.com/images/22/List View Owner Drawing Background Gradient_original_1298636653.png?1298636653" alt="" /></div>
<h3>Context menu for column headers, list items, and empty area</h3>
Better ListView supports 3 types of context menus: Column header context menu, list view items context menu, and empty area context menu (when right-clicking white space).
<div class="image"><img src="http://assets.componentowl.com/images/17/Column Header Context Menu in List View_original_1298633212.png?1298633212" alt="" /></div>
<h3>Powerful hit-test</h3>
The hit test returns very detailed information. It tells you not only the location (Client Area, Sub-Item, Sub-Item Text, Sub-Item Image, Checkbox, Column Header Image, and many more), but it also tells you the state of the item, and part of the item (left or right).
<h3>Customizable search-by-typing</h3>
Better ListView has excellent customization functionality for find-as-you-type item searching. The search modes include: Prefix (searchs from beginning of items), Substring (search any part of item text), Prefix + Substring, or Disabled. Additionally, search options include: Case sensitive, search first word only, play sound when item not found, prefer prefixes, search whole words. You can also restrict the search to only certain columns. You can also call "FindItemsWithText" function to find items from code.
<h3>Display text when the list view is empty</h3>
You can display a gray text centered in the list view if it's empty to hint or educate users. This will make your software more user friendly.
<div class="image"><img src="http://assets.componentowl.com/images/18/Show Text When List View is Empty_original_1298633516.png?1298633516" alt="" /></div>
<h3>Embedded controls for item editing</h3>
Inbuilt in-line editing support includes label edit and combobox edit. You can also embed any custom control for in-line editing.
<div class="image"><img src="http://assets.componentowl.com/images/19/Custom Embedded Control in List View for Editing_original_1298633863.png?1298633863" alt="" /></div>
<h3>ListView item text formatting</h3>
Supports both text trimming and auto-ellipsis for text that's too long. You can choose from: TrimCharacter, TrimWord, EllipsisCharacter, EllipsisWord, EllipsisPath (for file paths). Column header text can be broken into multiple lines.
<h3>Automatic list view layout</h3>
Better ListView can auto-size item images, item text, column header images, column header text.
.. obrazek .
<h3>Custom list view item size</h3>
You can set custom sizes for item text area and item images. You can also set custom size for column header text area and column header images. (Text area size is different from font size, text area size basically defines the size of the list view item.) This enables you to make tiny/huge column headers or list view items.
<div class="image"><img src="http://assets.componentowl.com/images/20/Custom Item Size in List View_original_1298634339.png?1298634339" alt="" /></div>
<h2>More advantages of our improved list view component:</h2>
<ul class="common">
<li><strong>Developer friendly</strong>: All classes and properties are as similar to the regular list view as possible. Everything is intuitive, very little learning is needed. You can use Better ListView immediately. <strong>Save time and ship sooner</strong>.</li>
<li><strong>Better ListView has improved usability and fixed behavior</strong>. All Windows users are familiar with the list view used in Windows Explorer. Better ListView mimicks behavior and look &amp; feel of the Windows Explorer list view as much as possible to leverage the existing user knowledge. <strong>Using Better ListView is pleasant for users.</strong> Many other list view components implement custom look and behavior and can oftentimes downright frustrate users (many controls don't even support mouse-wheel scrolling!) This doesn't happen with Better ListView.</li>
<li><strong>Guaranteed support and continued development</strong>: Better ListView is developed as a joint-venture of two software companies that use Better ListView in their main products (popular <strong><a href="http://www.dextronet.com/swift-to-do-list-software" target="_blank">Swift To-Do List</a></strong> and <strong><a href="http://www.imagingshop.com" target="_blank">ImagingShop</a></strong>). These applications are used by thousands of users daily. This is your guarantee that Better ListView will be supported and developed in the future.</li>
<li><strong>Tested in real world applications by thousands of users</strong>: Because Better ListView is used in professional consumer desktop software applications - Swift To-Do List and ImagingShop, thousands of users work with Better ListView every day. Although we use unit tests that cover most of code, and do thorough inhouse testing, this is your true guarantee that it is tested thoroughly in the real world. It is <strong>extremely stable</strong>.</li>
<li>Better ListView does <strong>not</strong> inherit from the regular .NET list view. It is written in pure managed C# code and is flexible, light weight, and fast. Extensions of the regular .net list view only go so far. Better ListView goes further. Soure code licenses are also available for ultimate customization.</li>
</ul>
</div>

View File

@@ -0,0 +1,20 @@
<% form_tag releases_page_path(@product), :method => :get do %>
<div class="changes-since">
<%= t("txt.releases.changes_since") %> <%= select_tag "since", versions_for_select(@product.releases.all_ordered, @since_release.version), :class => "autosubmit" %>
</div>
<% end %>
<hr />
<% if @since_release == @product.current_release %>
<h2 class="first"><%= t('txt.releases.whats_new', :product => @product.name.strip_version, :version => @since_release.version) %></h2>
<% else %>
<h2 class="first"><%= t('txt.releases.whats_new_since', :product => @product.name.strip_version, :version => @since_release.version) %></h2>
<% end %>
<% for release in @releases %>
<% unless release.changelog.blank? %>
<h3><%= t('txt.releases.changes_in_version', :version => release.version, :date => l(release.date, :format => :cute)) %></h3>
<p><%= release.changelog.gsub("\n", "<br />") %></p>
<% end %>
<% end %>

View File

@@ -0,0 +1,19 @@
<div class="newsletter">
<% remote_form_for newsletter_subscription("product-page"), :html => { :id => "new_subscription_product", :onsubmit => "if (!validate_newsletter_form(this)) return false" } do |f| -%>
<%= f.hidden_field :subscription_location_id %>
<%= hidden_field_tag "form_id", "#new_subscription_product" %>
<strong><% if @product.has_updates_newsletter? %><%= t("txt.product.receive_product_updates") %><% else %><%= t("txt.product.receive_updates") %><% end %></strong>
<div><%= f.text_field :email, :value => t("txt.common.your_email"), :class => "email inline-label", :id => "product-newsletter-email" %></div>
<div id="product-newsleter-lists" class="subscription-lists-ct" style="display: none"><%= subscription_lists('product-page', @product) %></div>
<%= subscribe :small %>
<% end -%>
</div>
<div class="sharethis-ct">
<strong><%= t('txt.product.sharethis') %></strong>
<%= render :partial => "shared/sharethis" %>
</div>
<% if @product.is_featured? && 1 == 2 %>
<div class="fb-like">
<fb:like-box profile_id="103814186343723" width="190" height="100" stream="false" header="false"></fb:like-box>
</div>
<% end %>

View File

@@ -0,0 +1,107 @@
<div class="subpage product-content">
<h1><%= @product.description('heading') %></h1>
<p class="section-info"><%= @product.section_description %></p>
<div class="sides">
<div class="right">
<% if @releases %>
<ul id="nav" class="nav">
<li><%= link_to(t('txt.releases.back'), @product, :class => "current") %></li>
</ul>
<div id="nav-panel" class="nav-panel product-detail releases"><%= render :partial => "releases" %></div>
<% else %>
<% if @product.tab_product_pages.size > 1 %>
<%= hidden_field_tag "tabs-initial-index", (@detail ? -1 : 0) %>
<ul id="nav" class="nav">
<% for page in @product.tab_product_pages %>
<li><%= link_to(page.name, product_page_path(@product, page), :class => ((@detail && @detail == page) ? "current" : "")) %></li>
<% end %>
</ul>
<div id="nav-panel" class="nav-panel product-detail"><%#= render :partial => "draft" %><%= render :inline => @detail.html if @detail %></div>
<% else %>
<div id="nav-panel" class="nav-panel single-tab product-detail">
<%#= render :partial => "draft" %><%= render :inline => (@product.default_page ? @product.default_page.html : "") %>
</div>
<% end %>
<% end %>
</div>
<div class="left">
<div class="buttons-box">
<%= download_link_trial_or_free(@product) %>
<% if better_splitbutton? %>
<%= better_slitbutton_buy_link %>
<% elsif !@product.free? %>
<%= buy_link(@product) %>
<% end %>
<p><%= t("txt.product.version", :version => @release.version, :date => no_day_zero(l(@release.date, :format => :cute))) if @release %></p>
</div>
<div class="compatibility">
<p><strong><%= t('txt.product.compatibility_note') %></strong></p>
<div class="documentation">
<p><%= link_to_new_window "See Quick Start Guide", quick_start_guide_path(@product) %></p>
<p><%= link_to_new_window "See Documentation", documentation_path(@product) %></p>
<% if @product.code == "better-listview-express" %>
<p><%= link_to_new_window "See Class Reference", class_reference_path(featured_product) %></p>
<% else %>
<p><%= link_to_new_window "See Class Reference", class_reference_path(@product) %></p>
<% end %>
</div>
</div>
<% unless in_screenshot_section?(@detail) %>
<% for screenshot in @screenshots %>
<div class="screenshot">
<p><%= screenshot_link(screenshot) %></p>
</div>
<%= render :partial => "social" if @screenshots.size > 1 && @screenshots.first == screenshot %>
<% end %>
<% if @product.has_screenshots? %>
<div class="small-button-ct">
<%= small_button(t('txt.product.more_screenshots'), screenshots_path(@product)) %>
</div>
<% end %>
<%= render :partial => "social" unless @screenshots.any? && @screenshots.size > 1 %>
<% else %>
<%= render :partial => "social" %>
<% end %>
</div>
</div>
<div class="buttons-wrap">
<div class="buttons">
<%= download_link_trial_or_free(@product) %>
<% if better_splitbutton? %>
<%= better_slitbutton_buy_link %>
<% elsif !@product.free? %>
<%= buy_link(@product) %>
<% end %>
</div>
</div>
</div>
<%= render :partial => "shared/screenshot_buttons", :object => @product %>

View File

@@ -0,0 +1,5 @@
<div class="release-popup-content">
<div class="heading"><%= t('txt.releases.whats_new', :product => strip_version(@release.product.name), :version => @release.version) %></div>
<div class="buttons-wrap"><div class="buttons"><%= download_link(@release.product, "small") %><%= buy_link(@release.product, "small") %></div></div>
<%= @release.description %>
</div>

View File

@@ -0,0 +1 @@
<%= @response.join("\n") %>

View File

@@ -0,0 +1,6 @@
<div class="release-content subpage">
<%= subpage_headline(t('txt.releases.whats_new', :product => strip_version(@release.product.name), :version => @release.version)) %>
<div class="back"><%= link_to(t("txt.releases.back"), @release.product) %></div>
<%= render :partial => "products/product_box", :object => @release.product %>
<%= @release.description %>
</div>

View File

@@ -0,0 +1,38 @@
<div class="subpage resources-content">
<div class="section-heading">Articles about task management and productivity</div>
<h1>Latest blog posts and articles from our blog</h1>
<div class="resources-latest-posts">
<% for post in @posts %>
<h2><%= link_to post.title, post.url %></h2>
<div class="post-info">
<%= t('txt.home.blog_post_info', :on => l(post.date, :format => :cute_long), :in => wp_categories_links(post.categories)) %>
</div>
<% end %>
</div>
<div class="small-button-ct">
<%= small_button(t('txt.home.see_other_posts'), blog_url) %>
</div>
<% if @featured_articles.present? || @articles.present? %>
<h1>Articles about productivity, to-do lists, task lists and being organized</h1>
<div class="featured-articles">
<% for article in @featured_articles %>
<h2><%= link_to article.title, article %></h2>
<div class="post-info"><%= t('txt.resources.published_on', :date => l(article.date.to_time, :format => :cute_long)) %></div>
<% end %>
</div>
<div class="articles">
<% for article in @articles %>
<h2><%= link_to article.title, article %></h2>
<% end %>
</div>
<% end %>
</div>

View File

@@ -0,0 +1,49 @@
<div class="d-footer">
<div class="d-placing">
<div class="left">
<div class="latest-posts">
<h3 class="latest_from_blog"><%= link_to t("txt.home.latest_from_blog"), blog_url %></h3>
<% for post in blog_posts %>
<h4><%= link_to(truncate(post.title, 83), post.url) %></h4>
<div class="post-info"><%= t('txt.home.blog_post_info', :on => l(post.date, :format => :cute_long), :in => wp_categories_links(post.categories)) %></div>
<% end %>
</div>
<div class="other-posts"><%= link_to(t('txt.home.see_other_posts'), blog_url) %></div>
</div>
<div class="right">
<div class="news">
<ul class="links">
<li><%= link_to t('txt.home.subscribe_to_rss'), feeds_url(:format => :rss), :class => "rss" %></li>
<li><%= link_to t('txt.home.follow_on_twitter'), twitter_url, :class => "twitter" %></li>
</ul>
<% for latest in latest_news %>
<div class="news-item <%= "last-item" if latest_news.last == latest %>">
<div class="date"><%= l(latest.date, :format => :news) %></div>
<div class="message">
<% if latest.is_release? %>
<h4><%= t('txt.home.new_release', :product => strip_version(latest.product.name), :version => latest.version) %></h4>
<p>
<% if latest.has_changelog? %>
<%= link_to t('txt.common.see_whats_new'), releases_page_path(latest.product, latest.version) %>
<%= t('txt.common.or') %>
<% end %>
<%= download_link_to t('txt.home.download_latest_release'), latest.product %>
</p>
<% else %>
<h4><% if latest.with_link? %><%= link_to latest.title, latest.link %><% else %><%= latest.title %><% end %></h4><p><%= latest.body %></p>
<% end %>
</div>
</div>
<% end %>
</div>
</div>
</div>
<div class="d-placing">
<hr />
<div class="copy"><%= render :partial => "shared/footer_copy" %></div>
</div>
</div>

View File

@@ -0,0 +1,2 @@
<div class="social"><%= link_to(t("txt.footer.feedback"), "/support", :class => "feedback") %> <span>|</span> <%= link_to(t("txt.footer.rss"), feeds_url(:format => :rss), :class => "rss") %> <span>|</span> <%= link_to(t("txt.footer.twitter"), twitter_url, :class => "twitter") %> <span>|</span> <%= link_to(t("txt.footer.sitemap"), sitemap_path, :class => "sitemap") %> <span>|</span> Our <%= link_to("task management software", Settings.dextronet_url, :class => "stdl") %> that uses Better ListView</div>
<%= t("txt.footer.copy", :year => Time.now.year, :disclaimer => link_to(t("txt.footer.disclaimer"), disclaimer_path), :privacy_policy => link_to(t("txt.footer.privacy_policy"), privacy_policy_path), :eula => link_to(t("txt.footer.eula"), eula_path)) %><br />

View File

@@ -0,0 +1,41 @@
<%= javascript_tag "var t = #{locales['txt']['javascript'].to_json}" %>
<div class="d-header d-placing">
<% cm = { @controller.controller_name => "active" } %>
<ul class="d-menu">
<li class="<%= cm['home'] %>"><%= link_to(t("txt.menu.home"), root_path, :class => "menu-item") %></li>
<li class="<%= cm['products'] %> with-dropdown">
<%= link_to(t("txt.menu.products"), featured_product, :class => "menu-item") %>
<% dropdown(:class => "dropdown-submenu", :style => "width: 370px") do %>
<% dropdown_categorized_products.each do |categorized_products| %>
<div class="dropdown-category"><%= categorized_products[:category] %></div>
<% categorized_products[:products].each do |product| %>
<% css_class = (product.featured? || product.code == "better-thumbnail-browser") ? "featured-item" : nil %>
<%= link_to "#{icon(product)} #{product.name}<br /><span class=\"subline\">#{product.label}</span>", product_path(product),
:class => css_class %>
<% end %>
<% end %>
<% end %>
</li>
<li class="<%= cm['orders'] %>">
<%= link_to("Purchase", order_path(featured_product), :class => "menu-item") %>
<% dropdown(:class => "dropdown-submenu", :style => "width: 330px") do %>
<% dropdown_products.each do |product| %>
<% unless product.free? %>
<% css_class = (product.featured? || product.code == "better-thumbnail-browser") ? "featured-item" : nil %>
<%= link_to product.name, order_path(product), :class => css_class %>
<% end %>
<% end %>
<% end %>
</li>
<li class="<%= cm['support'] %>"><%= link_to(t("txt.menu.support"), "/support", :class => "menu-item") %></li>
<% if have_articles? %><li class="<%= cm['articles'] %>"><%= link_to("Articles", "/articles", :class => "menu-item") %></li><% end %>
<li class="<%= "active" if @blog %>"><%= link_to(t("txt.menu.blog"), blog_url, :class => "menu-item") %></li>
<% if latest_comic %><li class="<%= cm['comics'] %>"><%= link_to(t("txt.menu.comics"), latest_comic, :class => "menu-item") %></li><% end %>
<li class="<%= cm['about'] %>"><%= link_to(t("txt.menu.about"), "/about-us", :class => "menu-item") %></li>
</ul>
<div class="d-logo">
<%= link_to(image_tag('componentowl.gif', :alt => t('txt.componentowl')), root_path, :class => "logoimg") %>
<% unless @blog %><g:plusone size="medium" count="false" href="http://www.componentowl.com"></g:plusone><% end %>
</div>
</div>

View File

@@ -0,0 +1,15 @@
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta name="keywords" content="<%= @meta_keywords || meta_tags.keywords %>" />
<meta name="description" content="<%= @meta_description || meta_tags.description %>" />
<meta name="author" content="Dextronet" />
<meta http-equiv="Title" content="<%= @meta_title || meta_tags.title %>" />
<meta name="copyright" content="(c) 2010-<%= Date.today.year %> Dextronet" />
<meta name="distribution" content="Global" />
<meta name="rating" content="General" />
<meta name="robots" content="All" />
<meta http-equiv="Content-Language" content="en" />
<meta name="verify-v1" content="NK0H1gWia1vxGZ2Yhr59gsS0/P2/USBI1DVA18VkzjM=" />
<meta name="google-site-verification" content="O7Dwtzu5x_Mob9u98uxqpZ-_wCLGpEkx2IL0UYVQ4ac" />
<title><%= @meta_title || meta_tags.title %></title>
<link rel="alternate" type="application/rss+xml" title="<%= t('txt.rss_description') %>" href="<%= feeds_url(:format => :rss) %>" />
<link rel="alternate" type="application/rss+xml" title="<%= t('txt.comics_rss_description') %>" href="<%= comics_url(:format => :rss) %>" />

View File

@@ -0,0 +1,10 @@
<div class="preload">
<%= image_tag("loader.gif") %>
<%= image_tag("button-indicator.gif") %>
<%= image_tag("button-indicator-noborder.gif") %>
<%= image_tag("dropdown-bg.png") %>
<%= image_tag("dropdown-o.png") %>
<%= image_tag("dropdown-s.png") %>
<%= icon(featured_product, 32) %>
<%= icon(featured_product, 48) %>
</div>

View File

@@ -0,0 +1,6 @@
<div id="screenshot-buttons" style="display: none">
<div class="buttons">
<%= download_link(screenshot_buttons, :small, t('txt.common.free_download')) %>
<%= buy_link(screenshot_buttons, :small, t('txt.products.buy_now_from', :price => number_to_currency(screenshot_buttons.price))) unless screenshot_buttons.is_free? %>
</div>
</div>

View File

@@ -0,0 +1,3 @@
<div class="sharethis">
<script type="text/javascript" src="http://w.sharethis.com/button/sharethis.js#publisher=db6a9d0e-5d07-4036-8bed-4959941491f3&amp;type=website&amp;post_services=email%2Cfacebook%2Ctwitter%2Cgbuzz%2Cmyspace%2Cdigg%2Csms%2Cwindows_live%2Cdelicious%2Cstumbleupon%2Creddit%2Cgoogle_bmarks%2Clinkedin%2Cbebo%2Cybuzz%2Cblogger%2Cyahoo_bmarks%2Cmixx%2Ctechnorati%2Cfriendfeed%2Cpropeller%2Cwordpress%2Cnewsvine"></script>
</div>

View File

@@ -0,0 +1,5 @@
<div class="d-footer">
<div class="d-placing">
<div class="copy"><%= render :partial => "shared/footer_copy" %></div>
</div>
</div>

View File

View File

@@ -0,0 +1,55 @@
<div class="subpage sitemap-content">
<h1>ComponentOwl.com Sitemap</h1>
<h2><%= t('txt.componentowl_long') %>&nbsp;/&nbsp;</h2>
<ul class="common top">
<li><strong><%= link(root_path, t('txt.menu.home')) %></strong></li>
<% Product.all_ordered.each do |product| %>
<li>
<strong><%= link(product_path(product), product.name) %></strong>
<% if product.product_pages.count > 1 %>
<ul class="common">
<% product.product_pages.root.cute_ordered.each do |product_page| %>
<% unless pricing_licensing?(product_page) %>
<li>
<%= link(product_page_path(product, product_page), product_page.name) %>
<% if product_page.children.any? %>
<ul class="common">
<% product_page.children.each do |child_product_page| %>
<li><%= link(product_page_path(product, child_product_page), child_product_page.name) %></li>
<% end %>
</ul>
<% end %>
</li>
<% end %>
<% end %>
</ul>
<% end %>
<% end %>
</li>
<% Product.all_ordered.non_free.each do |product| %>
<li>
<strong><%= link(order_path(product), "Pricing &amp; Licensing for #{product.name}") %></strong>
</li>
<% end %>
<li>
<strong><%= link("/support", t('txt.menu.support')) %></strong>
</li>
<li><strong><%= link(latest_comic, t('txt.menu.comics')) %></strong></li>
<li><strong><%= link(blog_url, t('txt.menu.blog')) %></strong></li>
<li><strong><%= link(about_path, t('txt.menu.about')) %></strong></li>
</ul>
<ul class="common top">
<li><strong><%= link("/quick-start-guide/better-listview/index.html", "Quick Start Guide for #{featured_product.name}") %></strong></li>
</ul>
<ul class="common top">
<li><%= link(download_path(featured_product), t('txt.download.thanks_general')) %></li>
<li><%= link(disclaimer_path, t('txt.footer.disclaimer')) %></li>
<li><%= link(privacy_policy_path, t('txt.footer.privacy_policy')) %></li>
</ul>
</div>

View File

@@ -0,0 +1,111 @@
xml.instruct! :xml, :version => "1.0"
xml.urlset :xmlns => "http://www.sitemaps.org/schemas/sitemap/0.9" do
# /
xml.url do
xml.loc root_url
xml.lastmod Date.today
xml.changefreq "daily"
xml.priority "0.9"
end
Product.all_ordered.each do |product|
# product pages
xml.url do
xml.loc product_url(product)
xml.lastmod product.last_updated_page.updated_at.to_date
xml.changefreq "weekly"
xml.priority "1.0"
end
for product_page in product.product_pages
xml.url do
xml.loc product_page_url(product, product_page)
xml.lastmod product_page.updated_at.to_date
xml.changefreq "weekly"
xml.priority "1.0"
end unless product_page == product.default_page || pricing_licensing?(product_page)
end
end
Product.all_ordered.non_free.each do |product|
xml.url do
xml.loc order_url(product)
xml.changefreq "weekly"
xml.priority "0.8"
end
end
# download pages
xml.url do
xml.loc download_url(featured_product)
xml.changefreq "weekly"
xml.priority "0.7"
end
# /support
xml.url do
xml.loc url_for(:controller => "support", :only_path => false)
xml.changefreq "weekly"
end
# /comics
xml.url do
xml.loc url_for(:controller => "comics", :only_path => false)
xml.changefreq "daily"
xml.lastmod latest_comic.publish_on
end
# /comics/:id
Comic.published.reverse_ordered.each do |comic|
xml.url do
xml.loc comic_url(comic)
xml.changefreq "monthly"
xml.priority "0.5"
end
end
# /blog
xml.url do
xml.loc blog_url
xml.lastmod Date.today
xml.changefreq "daily"
xml.priority "0.6"
end
# /about-us
xml.url do
xml.loc about_url
xml.changefreq "weekly"
end
# /quick-start-guide/better-listview/index.html
xml.url do
xml.loc "#{root_url}/quick-start-guide/better-listview/index.html"
xml.changefreq "weekly"
end
# /sitemap
xml.url do
xml.loc sitemap_url
xml.changefreq "weekly"
end
# /disclaimer
xml.url do
xml.loc disclaimer_url
xml.changefreq "monthly"
xml.priority "0.1"
end
# /privacy-policy
xml.url do
xml.loc privacy_policy_url
xml.changefreq "monthly"
xml.priority "0.1"
end
end

View File

@@ -0,0 +1,33 @@
<div class="subscribe-content">
<h2><%= t('txt.download.started') %></h2>
<% remote_form_for newsletter_subscription("download-page"), :html => { :onsubmit => "if (!validate_newsletter_form(this)) return false" } do |f| -%>
<% f.field_set "Optional" do -%>
<% name = @product.has_newsletter? ? t('txt.download.newsletter_product', :product => @product.name) : t('txt.download.newsletter_general') %>
<p><%= t('txt.download.newsletter', :name => name) %></p>
<div class="newsletter-box">
<%= hidden_field_tag "form_id", "#new_subscription" %>
<%= hidden_field_tag "callback", "download_subscription_saved" %>
<%= f.hidden_field :subscription_location_id %>
<div class="field">
<%= f.label :first_name, t("txt.common.first_name") %>
<%= f.text_field :first_name, :class => "name stressed" %>
</div>
<div class="field">
<%= f.label :email, t("txt.common.your_email") %>
<%= f.text_field :email, :class => "email stressed" %>
</div>
<%= subscription_lists('download-page', @product) %>
<%= subscribe :hilight %>
<div class="clear"></div>
</div>
<% end -%>
<% end -%>
</div>

View File

@@ -0,0 +1,9 @@
<div class="subpage support-content">
<h1>Component Owl Newsletter</h1>
<p>You've been unsubscribed.</p>
<p>You can now continue to our <%= link_to "home page", root_path %>.</p>
</div>

View File

@@ -0,0 +1,26 @@
<div class="contact-form <%= klass %>" id="contact-form">
<% remote_form_for @support_request, :html => { :onsubmit => "if (!validate_contact_from(this)) return false" } do |f| -%>
<%= f.hidden_field :support_request_origin_id %>
<%= f.hidden_field :subject, :value => params[:subject] %>
<%= f.hidden_field :product_id unless show_product_select %>
<%= hidden_field_tag "callback", callback %>
<%= antispam_field %>
<fieldset>
<ul>
<li><%= f.label :name, t("txt.common.your_name") %><%= f.text_field :name, :class => "name" %></li>
<li><%= f.label :email, [t("txt.common.your_email"), t("txt.common.required")].join(" ") %><%= f.text_field :email, :class => "email" %></li>
<% if show_product_select %>
<li><%= f.label :product_id, Product.human_name %><%= f.select :product_id, cute_for_select(Product.all_ordered), { :include_blank => t('txt.common.not_applicable') }, :class => "dropdown" %></li>
<% end %>
<% if split_layout %>
</ul>
<ul class="rside">
<% end %>
<li><%= f.label :message, [t("txt.common.message"), t("txt.common.required")].join(" ") %><%= f.text_area :message, :class => "message" %></li>
</ul>
</fieldset>
<div class="submit">
<%= submit_button "&nbsp;&nbsp;&nbsp;Send&nbsp;&nbsp;&nbsp;" %>
</div>
<% end -%>
</div>

View File

@@ -0,0 +1,8 @@
<div class="help-search">
<% form_tag "/faqs/search", :method => :get do -%>
<p>
<%= text_field_tag "search[question_or_answer_contains]", "", :id => "search" %>
<%= submit_tag t("txt.support.search_help_button"), :class => "submit" %>
</p>
<% end -%>
</div>

View File

@@ -0,0 +1,5 @@
<div class="service-content">
<%= render :inline => @static_page.html %>
</div>

View File

@@ -0,0 +1,7 @@
<div class="legal-content disclaimer">
<h1><%= t("txt.alt.disclaimer") %></h1>
<%= render :inline => @static_page.html %>
</div>

View File

@@ -0,0 +1,89 @@
<div class="legal-content">
<%#= render :inline => @static_page.html %>
<h1>Software license agreement (EULA)</h1>
<p><em><strong>The following license agreement applies to all products published by Component Owl.</strong></em></p>
<p>Before installing this software on your computer, please carefully read the following terms and conditions.</p>
<p>If you do not fully accept and agree to these terms, then you are not allowed to install and use this software.</p>
<h2>1. Trialware</h2>
<p>This Software is distributed as Trialware. It is not free. You may use the Software for a trial period, at no cost to you, to determine if it fits your needs.
If you decide to use the Software, you must purchase it and pay the applicable fee. You may use the software in your commercial or non-commercial projects
without purchasing a valid license. The trial version of this software may be used only to determine if the software suits your needs.</p>
<h2>2. License Grant</h2>
<p>This is a License between you ("Licensee") and Jiri Novotny ("ComponentOwl.com"). ComponentOwl.com grants to you a non-exclusive license to use the enclosed copy
of software in accord with the terms set forth in this License Agreement. The software is owned by Jiri Novotny and ComponentOwl.com and protected by copyright laws.</p>
<p>Software is licensed and not sold to you.</p>
<h2>3. License Permits</h2>
<p>The software is licensed on per-developer basis. You need a multi-license in order to use the software in projects that more than one developer participates on.
Each developer may use the software on up to 2 machines.</p>
<h2>4. License Does Not Permit</h2>
<p>Licenses may not be transferred except with specific written authorization from ComponentOwl.com.</p>
<p>Licensee may not publicize or distribute any registration code algorithms, information, or license codes used by this software without permission
of ComponentOwl.com. Licensee may not charge fees for distribution or delivery of the Software without expressed written consent of ComponentOwl.com.
All granted licenses are non-transferable to other persons outside the organization of licensee.</p>
<p>Licensee may not decompile, disassemble or reverse engineer this software.</p>
<p>It's strictly prohibited to sell or rent this software. Full version may be used only by the person to whom it has been licensed to.</p>
<p>It's strictly prohibited to distribute source code (full or partial) of this software under any circumstances.</p>
<p>Licensee may not under any circumstances distribute:</p>
<ul class="common">
<li>Stand-alone components based on CompononetOwl.com software</li>
<li>Products based on ComponentOwl.com software that are similar to ComponentOwl.com software or competing with ComponentOwl.com software</li>
</ul>
<p>(Note: Please contact ComponentOwl.com for a custom license if the above is required by the nature of your project.)</p>
<h2>5. Distribution (Royalty Free)</h2>
<p>If you have purchased a valid license, compiled binaries (.DLL) of the software may be distributed royalty-free with your products. If you have purchased
source code, the software may be integrated into your software applications (.EXE).</p>
<p>The installation package of the trial version of this software may be freely distributed, as long as no fees are charged, and original packaging and
documentation are retained.</p>
<h2>6. No Warranty</h2>
<p>This software has no warranty of suitability for a particular purpose or satisfactory quality. This Software is provided to licensee "as is".</p>
<h2>7. Newsletter</h2>
<p>By ordering this software you agree to receive our software newsletter with information about Software updates. ComponentOwl.com will ensure that it is
possible to easily unsubscribe from all such newsletters.</p>
<h2>8. Publicity</h2>
<p>You grant the right to include your company's name and logo as a customer on ComponentOwl.com website and other advertising and promotional materials.
Within thirty days after your written request (usually sooner), your company's name and other materials will be removed from ComponentOwl.com.</p>
<h2>9. Premium Support</h2>
<p>Premium support is a paid service that licensee may purchase together with a license of the software. ComponentOwl.com will make reasonable effort to help
the licensee to resolve issues directly related to software and its defect. ComponentOwl.com can not guarantee successful resolution of all support incidents.
ComponentOwl.com is not obliged to provide support if more than 20 incidents are raised per year by the licensee or the ComponentOwl.com support service is
abused in any way. Custom development is not covered by the premium support.</p>
<p>ComponentOwl.com also reserves the right to terminate any premium support contract with a pro-rated refund.</p>
<h2>10. Disclaimer</h2>
<p>Licensee hereby disclaims and indemnifies ComponentOwl.com from any juridical claims or complaints about the Software.</p>
</div>

View File

@@ -0,0 +1,34 @@
<div class="support-content">
<h1>Help &amp; Support</h1>
<div class="left">
<p><%= t("txt.support.contact_info_1") %></p>
<p><%= t("txt.support.contact_info_2") %></p>
<div class="contact-form-ct">
<div class="contact-form-wrap">
<%= contact_form(:show_product_select => false) %>
</div>
</div>
<hr />
<p class="note"><%= t("txt.support.contact_info_3") %></p>
</div>
<div class="right">
<% @products.each do |product| %>
<h2><%= product.name %></h2>
<p class="guide"><strong><%= link_to_new_window "See Quick Start Guide", quick_start_guide_path(product) %></strong></p>
<p class="documentation"><strong><%= link_to_new_window "See Documentation", documentation_path(product) %></strong></p>
<p class="reference"><strong><%= link_to_new_window "See Class Reference", class_reference_path(product) %></strong></p>
<% if product == featured_product %><p class="stackoverflow"><strong><%= link_to_new_window "Better ListView on StackOverflow", "
http://stackoverflow.com/questions/tagged/better-listview" %></strong></p><% end %>
<% end %>
</div>
</div>
<% javascript_tag do -%>
document.getElementById("support_request_name").focus();
<% end %>

View File

@@ -0,0 +1,5 @@
<div class="legal-content">
<%= render :inline => @static_page.html %>
</div>

View File

@@ -0,0 +1,33 @@
<div class="uninstall-content support-content">
<h1><%= t("txt.uninstall.heading", :product => @product.name) %></h1>
<p>How do <strong>you</strong> think we can make <%= @product.name %> better? We would <em>love</em> to hear from you!</p>
<p>Your email address is optional, but providing it allows us to respond - perhaps with a solution to your issue.</p>
<div class="contact-form-ct">
<div class="contact-form-wrap">
<div class="contact-form">
<% remote_form_for @support_request, :html => { :onsubmit => "if (!validate_uninstall_from(this)) return false" } do |f| -%>
<%= f.hidden_field :support_request_origin_id %>
<%= f.hidden_field :subject, :value => t('txt.uninstall.why_uninstall') %>
<%= f.hidden_field :product_id %>
<%= hidden_field_tag "callback", "why_uninstall_sent" %>
<%= antispam_field %>
<fieldset>
<ul>
<li><%= f.label :message, "The main issue or your comments" %><%= f.text_area :message, :class => "message" %></li>
<li><%= f.label :email, t("txt.uninstall.your_email") %><%= f.text_field :email, :class => "email" %>
<p class="emailsafe">We 100% respect your privacy and will never share your email.</p></li>
</ul>
</fieldset>
<div class="submit">
<%= submit_button "Send Feedback", :btn_class => "dbtn-hilight" %>
</div>
<% end -%>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,160 @@
<p class="first"><strong>Just before you continue, consider upgrading to Professional edition.</strong> It can make a real difference and we have
<strong>a special offer</strong> for you.</p>
<h2 class="nomar">Upgrade to Professional edition and save 56%!</h2>
<% stdl_professional = @product.edition('professional') %>
<p>The Professional edition has all the features the Standard edition has and many extra.</p>
<% testimonial :author => "Donna W. from Canada" do -%>
<b>Im blown away at the number of new features</b> in Swift To-Do 7. The thing I like the most is that your software allows one to be <b>as simple or as complex as you want</b>, all within the framework of one program.
<br /><br />
Frankly, my requirements change from time to time. For 30+ years, Ive used or tried a wide variety of task management and notes programs. While I liked Swift To-Do 6, <b>version 7 has been an “eureka” moment</b>.
<br /><br />
Now, I dont have to start searching for a new to-do/notes program to fit my ever changing requirements. Nicely done!
<% end -%>
<p>It allows you to easily <strong>email tasks</strong> to others or to yourself.
Set <strong>Start Date</strong> and <strong>Completion Date</strong> for your tasks. <strong>Assign</strong> tasks using <strong>Assigned To</strong> field.
Track your progress more precisely using <strong>Percent Done</strong> field and <strong>Status</strong> field. Use <strong>Time Estimate</strong> and
<strong>Time Spent</strong> fields for instant clarity about time needed and time spent for each task. <strong>Context</strong> field helps you to better categorize
your tasks.</p>
<p>The best part is: <strong>You decide</strong> which fields you want to use, and which to <strong>completely</strong> hide (this is a unique feature).</p>
<p>The upgrade is easy and quick - and all your tasks and settings are imported automatically.</p>
<p>It's the complete package! Stay with the number one to-do list software for Windows.</p>
<div class="priceinfo">
<div class="label">Regular price:</div><span class="oldprice"><%= number_to_currency(stdl_professional.regular_price) %></span>
</div>
<div class="priceinfo pad">
<div class="label">Upgrade price for you:</div><span class="newprice"><%= number_to_currency(stdl_professional.upgrade('from-stdl6').price) %> only</span>
</div>
<p><strong>This is a time-limited offer for valued previous customers like you <span class="underline">only</span></strong>. All orders are protected by
<strong>unconditional 90-day money back guarantee</strong> - you have nothing to lose and much to gain! The Professional edition can be
the <strong>smartest investment</strong> you will make this year. And, you will get all future 7.xx upgrades for free.</p>
<div class="pro-offer claim">
<% form_tag "https://secure.bmtmicro.com/servlets/Orders.ShoppingCart", :method => :get do -%>
<%= hidden_field_tag "CID", Settings.order.cid %>
<%= hidden_field_tag "CLR", Settings.order.clr %>
<% @upgrade = stdl_professional.upgrade('from-stdl6') %>
<p><strong>Upgrade my <span class="quantity"><%= quantity_select_tag(nil, (params[:q] ? params[:q].to_i : 1)) %></span> copy/copies of Swift To-Do List to <%= stdl_professional.name %> for just <span class="newprice"><%= number_to_currency(@upgrade.price) %></span> / copy.</strong></p>
<%= hidden_field_tag "PRODUCTID", @upgrade.bmtID %>
<% upgrade = stdl_professional.upgrade('from-stdl6-discount') %>
<p class="nopad"><strong>Purchase <span class="quantity"><%= quantity_select_tag(nil, 0) %></span> new additional copies for just <%= number_to_currency(upgrade.price) %> / copy. (Save <%= percents_save(stdl_professional.regular_price, upgrade.price) %>)</strong></p>
<%= hidden_field_tag "PRODUCTID", upgrade.bmtID %>
<p class="smaller">(If you buy 2 or more new copies, you will get an additional volume discount)</p>
<div class="button-ct"><%= submit_image('upgrade_to_professional') %></div>
<% end -%>
<div class="money_back"><%= image_tag('money_back-blue.gif', :title => t("txt.order.money_back")) %></div>
</div>
<h2>Upgrade to basic Standard edition</h2>
<% form_for @survey, :builder => UpgradeHelper::SurveyFormBuilder, :html => { :onsubmit => "if (!validate_free_upgrade_survey_from(this)) return false", :class => "prevent-return" } do |f| -%>
<%= hidden_field_tag :magicwand, "you-shall-not-pass" %>
<%= f.hidden_field :product_id %>
<% features_options = ["Nothing - Swift To-Do List is perfect", "Sub-tasks", "Custom tree-icons", "Ability to attach emails from Outlook", "Complete calendar",
"Custom fields (columns)", "Ability to merge/split databases", "In-place editing", "Sticky notes created from tasks or to-do lists", "Search-box",
"Spellchecker", "Better import/export", "Windows Mobile version", "iPhone version", "BlackBerry version", "Mac version"] %>
<h3>Your contact information</h3>
<div class="field pad">
<%= f.label :full_name %><%= f.text_field :full_name, :value => params[:n], :size => 22 %>
</div>
<div class="field">
<%= f.label :company_name %><%= f.text_field :company_name, :value => params[:c], :size => 22 %>
</div>
<div class="field purchase_email">
<%= f.label :purchase_email1, t('txt.survey.purchase_email_stdl') %><%= f.text_field :purchase_email1, :value => params[:e], :size => 22 %> or <%= f.text_field :purchase_email2, :size => 22 %> or <%= f.text_field :purchase_email3, :size => 22 %>
</div>
<div class="field">
<%= f.label :current_email %><%= f.text_field :current_email, :value => params[:e], :size => 22 %>
</div>
<p><strong>Please note</strong>: You are eligible for free upgrade to Standard edition <span class="underline">only</span> if you have purchased Swift To-Do List
in February 2010 or later. If you have purchased Swift To-Do List before February 2010, then please go to the <%= link_to "relevant upgrade page", upgrade_path("to-stdl7") %>.</p>
<h3>Help us make Swift To-Do List better!</h3>
<p>Please fill this short optional 10-step survey. Check all boxes that apply.</p>
<div class="survey">
<h4>1. <%= f.question "For what projects do you use Swift To-Do List?" %></h4>
<p class="set"><%= f.answer :check_box, ["Work Projects", "Personal projects", "Family projects", "Non-profit projects"] %></p>
</div>
<div class="survey">
<h4>2. <%= f.question "For what do you use Swift To-Do List?" %></h4>
<p>I use Swift To-Do List to <%= f.answer :text_field, :size => 40, :class => "freetext" %></p>
</div>
<div class="survey">
<h4>3. <%= f.question "What describes your position the best?" %></h4>
<p class="set"><%= f.answer :check_box, ["Employee", "Freelancer", "Consultant", "Manager", "Business owner", "At home", "Retired", "Student"] %></p>
</div>
<div class="survey">
<h4>4. <%= f.question "What is your occupation (profession)?" %></h4>
<p><%= f.answer :text_field, :size => 42, :class => "freetext" %></p>
</div>
<div class="survey">
<h4>5. <%= f.question "Where do you use Swift To-Do List?" %></h4>
<p class="set"><%= f.answer :check_box, ["Home", "Work", "Laptop", "Else"] %></p>
</div>
<div class="survey">
<h4>6. <%= f.question "On how many computers total do you use Swift To-Do List?" %></h4>
<p class="select"><%= f.answer :select, ["1", "2", "3", "4", "5+", "10+", "20+", "30+", "50+", "100"], :class => "dropdown" %> computer(s)</p>
</div>
<div class="survey">
<h4>7. <%= f.question "Do any of your colleagues/friends use Swift To-Do List?" %></h4>
<p><%= f.answer :radio_button, "Yes" %>, around <%= f.answer :text_field, :size => 1, :class => "freetext" %> of them. <%= f.answer :radio_button, "No", :class => 'lpad' %></p>
</div>
<div class="survey">
<h4>8. <%= f.question "What do you think are the 3 most important features to be added?" %></h4>
<p class="combos"><%= f.answer :combo, features_options %><br />
<%= f.answer :combo, features_options %><br />
<%= f.answer :combo, features_options %></p>
</div>
<div class="survey">
<h4>9. <%= f.question "If you want to recommend Swift To-Do List to someone now, fill their email addresses below:" %></h4>
<p><%= f.answer :text_area, :rows => 3, :cols => 51 %></p>
</div>
<div class="survey">
<h4>10. <%= f.question "Any comments, thoughts, feedback? Please speak up! :-)" %></h4>
<p><%= f.answer :text_area, :rows => 5, :cols => 81 %></p>
</div>
<p>Thank you very much for your time and valuable opinions. We really appreciate it. Please allow up to 48 hours for delivery of free upgrades.</p>
<p><%= link_to "By the way: We are looking for partners and resellers. Interested? Get in touch.", {}, :rel => "abibgal@qrkgebarg.pbz?fhowrpg=Cnegarefuvc%20Cebcbfny", :class => "obfmail" %></p>
<div class="native-buttons">
<%= f.submit "Submit and upgrade to Standard", :id => "claim-button", :class => "native-button", :onclick => "$('#pro-button').attr('disabled', true);" %>
<button type="submit" name="pro" onclick="$('#claim-button').attr('disabled', true);" id="pro-button" class="native-button hilight tick">Submit and upgrade to Professional for <span class="newprice"><%= number_to_currency(@upgrade.price) %> only</span> <span class="oldprice"><%= number_to_currency(stdl_professional.regular_price) %></span></button>
</div>
<% end -%>

View File

@@ -0,0 +1,4 @@
<div class="subpage upgrade-content static-content">
<%= subpage_headline(:text => @static_page.name, :html => { :class => "smaller" }) %>
<div class="cntpad"><%= render :inline => @static_page.html %><%#= render :file => "upgrade/_draft" %></div>
</div>

View File

@@ -0,0 +1,8 @@
<div class="dextronet-sidebar-ad-box">
<h2>Better ListView</h2>
<p>
Better list view control for .NET<br />
<%= link_to(image_tag("blv-blog-sidebar.gif", :class => "screenshot", :alt => "Better ListView"), featured_product) %>
</p>
<%= link_to(t('txt.blog.download'), download_path(featured_product), :class => "download") %>
</div>

View File

View File

@@ -0,0 +1 @@
<%= render :partial => "shared/tiny_footer" %>

View File

@@ -0,0 +1,11 @@
<meta name="keywords" content="<%= meta_tags.keywords %>" />
<meta name="description" content="<%= meta_tags.description %>" />
<meta name="author" content="Dextronet" />
<meta http-equiv="Title" content="<%= meta_tags.title %>" />
<meta name="copyright" content="(c) 2010 Dextronet" />
<meta name="distribution" content="Global" />
<meta name="rating" content="General" />
<meta name="robots" content="All" />
<meta http-equiv="Content-Language" content="en" />
<meta name="verify-v1" content="NK0H1gWia1vxGZ2Yhr59gsS0/P2/USBI1DVA18VkzjM=" />
<link rel="shorcut icon" href="/favicon2.ico" />

View File

@@ -0,0 +1 @@
<%= page_include %>

View File

@@ -0,0 +1 @@
<%= render :partial => "shared/header" %>

View File

@@ -0,0 +1,9 @@
<div class="product-ad blv-ad">
<%= link_to(image_tag("blv-blog-post.gif", :class => "screenshot", :alt => "Better ListView"), featured_product) %>
<h3><%= link_to "Better ListView", featured_product %></h3>
<p>Ultimate .NET ListView replacement control<br />for WinForms (C#, VB.NET)</p>
<div class="buttons">
<span class="dbtn-c dbtn-hilight"><span class="dbtn-w"><%= download_link_to "Download", featured_product, :class => "dbtn" %></span></span>
<span class="dbtn-c"><span class="dbtn-w"><%= link_to("More Info", featured_product, :class => "dbtn") %></span>
</div>
</div>

View File

@@ -0,0 +1,9 @@
<div class="product-ad stdl-ad">
<%= link_to(image_tag("stdl-blog-post.gif", :class => "screenshot", :alt => "stdl"), Settings.stdl_url) %>
<h3><%= link_to("Swift To-Do List", Settings.stdl_url) %></h3>
<p><%= t('txt.blog.stdl') %></p>
<div class="buttons">
<span class="dbtn-c dbtn-hilight"><span class="dbtn-w"><%= link_to "Download", Settings.stdl_download, :class => "dbtn" %></span></span>
<span class="dbtn-c"><span class="dbtn-w"><%= link_to("More Info", Settings.stdl_url, :class => "dbtn") %></span>
</div>
</div>

View File

@@ -0,0 +1,8 @@
<div class="dextronet-sidebar-ad-box">
<h2><%= featured_product.name %></h2>
<p>
<%= t('txt.blog.stdl') %><br />
<%= link_to(image_tag("stdl-blog-sidebar.gif", :class => "screenshot", :alt => "stdl"), featured_product) %>
</p>
<%= link_to(t('txt.blog.download'), download_path(featured_product), :class => "download") %>
</div>