Pārlūkot izejas kodu

There is now a downloadable free trial for Luminotes Desktop. Also made export plugins work on Windows.

master
Dan Helfman pirms 10 gadiem
vecāks
revīzija
81388ed36b
12 mainītis faili ar 111 papildinājumiem un 22 dzēšanām
  1. +2
    -1
      NEWS
  2. +1
    -0
      config/Version.py
  3. +3
    -1
      controller/Root.py
  4. +2
    -3
      plugins/Invoke.py
  5. +3
    -0
      plugins/__init__.py
  6. +7
    -1
      setup.py
  7. +11
    -0
      static/css/product.css
  8. +7
    -0
      static/css/style.css
  9. Binārs
      static/images/trial_button.png
  10. Binārs
      static/images/trial_button.xcf
  11. +62
    -12
      view/Download_page.py
  12. +13
    -4
      view/Header.py

+ 2
- 1
NEWS Parādīt failu

@@ -1,4 +1,4 @@
1.6.7: ?
1.6.7: February 23, 2009
* When you export your notebook as an HTML or CSV file, the saved filename is
now based on the name of your notebook, for instance "my-to-do-list.html"
or "ideas-for-my-novel.csv".
@@ -6,6 +6,7 @@
* Converted the existing HTML and CSV export features to work as separate
export plugins. This means that a new export format can be implemented as
a new plugin.
* There is now a downloadable free trial for Luminotes Desktop!

1.6.6: February 16, 2009
* Luminotes now recognizes "mailto:" links as external links, so you can

+ 1
- 0
config/Version.py Parādīt failu

@@ -1 +1,2 @@
VERSION = u"1.6.7"
TRIAL = True

+ 3
- 1
controller/Root.py Parādīt failu

@@ -361,7 +361,9 @@ class Root( object ):
result[ "first_notebook" ] = None

result[ "download_products" ] = self.__settings[ u"global" ].get( u"luminotes.download_products" )
result[ "upgrade" ] = upgrade

referer = cherrypy.request.headerMap.get( u"Referer" )
result[ "upgrade" ] = upgrade or ( referer and u"localhost:" in referer )

return result


+ 2
- 3
plugins/Invoke.py Parādīt failu

@@ -3,8 +3,7 @@ import plugins

def invoke( plugin_type, plugin_name, *args, **kwargs ):
plugin_name = u"%s_%s" % ( plugin_type, plugin_name )
plugin_location = imp.find_module( plugin_name, plugins.__path__ )
plugin_module = imp.load_module( plugin_name, *plugin_location )

plugin_module = getattr( plugins, plugin_name )
function = getattr( plugin_module, plugin_type )

return apply( function, args, kwargs )

+ 3
- 0
plugins/__init__.py Parādīt failu

@@ -0,0 +1,3 @@
# for the benefit of py2exe
import export_html
import export_csv

+ 7
- 1
setup.py Parādīt failu

@@ -1,6 +1,7 @@
#!/usr/bin/python

import os
import os.path
import sys
from glob import glob
from distutils.core import setup, Distribution
@@ -148,6 +149,11 @@ class InnoScript:
print >> ofi, r"end;"

def compile(self):
import os
if os.environ.get( "CYGWIN" ):
print "Running in Cygwin, so skipping compile"
return

try:
import ctypes
except ImportError:
@@ -276,7 +282,7 @@ setup(
options = dict(
py2exe = dict(
packages = "cherrypy.filters",
includes = "email.header,simplejson",
includes = "email.header,simplejson,plugins.*",
compressed = 1,
optimize = 2,
)

+ 11
- 0
static/css/product.css Parādīt failu

@@ -498,6 +498,11 @@
padding-bottom: 0.5em;
}

.trial_button_area {
padding-top: 1em;
padding-bottom: 0.5em;
}

.download_button_area {
padding-top: 1em;
padding-bottom: 0.5em;
@@ -543,3 +548,9 @@
margin-bottom: 0.5em;
border: 1px solid #999999;
}

.tiny_text {
font-size: 60%;
line-height: 140%;
font-weight: normal;
}

+ 7
- 0
static/css/style.css Parādīt failu

@@ -1233,3 +1233,10 @@ h1 {
font-size: 72%;
font-weight: normal;
}

.trial_upgrade_link {
font-weight: bold;
background-color: #ffcc66;
padding: 0.5em;
font-size: 110%;
}

Binārs
static/images/trial_button.png Parādīt failu

Pirms Pēc
Platums: 107  |  Augstums: 26  |  Izmērs: 2.6KB

Binārs
static/images/trial_button.xcf Parādīt failu


+ 62
- 12
view/Download_page.py Parādīt failu

@@ -8,7 +8,7 @@ class Download_page( Product_page ):
MEGABYTE = 1024 * 1024

# for now, just assume there's a single download package
download_button = download_products[ 0 ].get( "button" )
download_button = download_products[ 0 ].get( "button" ).strip()
news_url = u"http://luminotes.com/hg/luminotes/file/%s/NEWS" % VERSION

Product_page.__init__(
@@ -66,14 +66,16 @@ class Download_page( Product_page ):
class_ = u"version_text",
),
class_ = u"plan_name_area download_plan_width",
)
colspan = "2",
),
),
Tr( Td(), class_ = u"spacer_row" ),
Tr( Td( colspan = "2" ), class_ = u"spacer_row" ),
Tr(
Td(
Span( u"Solo", class_ = u"highlight" ), u"note taking",
title = u"Luminotes Desktop is designed for individuals.",
class_ = u"feature_value",
colspan = "2",
),
),
Tr(
@@ -81,6 +83,7 @@ class Download_page( Product_page ):
u"Runs on your", Span( u"own computer", class_ = u"highlight" ),
title = u"All of your notes are stored privately on your own computer or on a USB drive.",
class_ = u"feature_value",
colspan = "2",
),
),
Tr(
@@ -88,6 +91,7 @@ class Download_page( Product_page ):
Span( u"Unlimited", class_ = u"highlight" ), u"storage",
title = u"Add as many notes, documents, and files as you want.",
class_ = u"feature_value",
colspan = "2",
),
),
Tr(
@@ -95,30 +99,57 @@ class Download_page( Product_page ):
u"Works", Span( "offline", class_ = u"highlight" ),
title = u"Take notes in meetings, in class, or while on the go. Runs in a web browser, but doesn't need an internet connection.",
class_ = u"feature_value",
colspan = "2",
),
),
Tr( Td(), class_ = u"spacer_row" ),
Tr( Td( colspan = "2" ), class_ = u"spacer_row" ),
Tr(
Td(
u"Windows XP/Vista,", A( u"Linux source", href = u"/source_code" ),
class_ = u"small_text",
colspan = "2",
),
),
Tr(
Td(
u"Firefox 2+, Internet Explorer 7+, Chrome 1+, Safari 3+",
class_ = u"small_text",
colspan = "2",
),
),
Tr( Td( colspan = "2" ), class_ = u"spacer_row" ),
Tr(
Td(
( not upgrade ) and Td(
Div(
A(
Img(
src = u"/static/images/trial_button.png",
width = u"107", height = u"26",
alt = u"download trial",
),
href = "/static/luminotes.exe",
),
Div(
u"Completely free",
class_ = u"tiny_text",
),
class_ = u"trial_button_area",
),
colspan = download_button and "1" or "2",
) or None,
download_button and Td(
Div(
download_button,
Div(
u"Fast and secure",
class_ = u"tiny_text",
),
class_ = u"download_button_area",
),
),
colspan = upgrade and "2" or "1",
) or None,
),
Tr( Td(), class_ = u"spacer_row" ),
Tr( Td( colspan = "2" ), class_ = u"spacer_row" ),
border = u"1",
id = u"upgrade_table",
),
@@ -165,12 +196,15 @@ class Download_page( Product_page ):
H4( u"Can I try before I buy?", class_ = u"upgrade_question" ),
P(
"""
Sure! Just check out the full-featured
Sure! Just
""",
A( u"download the full-featured free trial", href = "/static/luminotes.exe" ),
"""
or check out the
""",
A( u"online demo", href = "/users/demo" ),
"""
to see Luminotes for yourself. The only difference is that Luminotes Desktop runs in
a browser on your own computer instead of on the web.
to see Luminotes for yourself.
""",
class_ = u"upgrade_text",
),
@@ -221,15 +255,31 @@ class Download_page( Product_page ):
Th(
Span( u"Luminotes Desktop", class_ = u"plan_name" ),
class_ = u"plan_name_area",
colspan = "2",
)
),
Tr(
Td(
( not upgrade ) and Td(
Div(
A(
Img(
src = u"/static/images/trial_button.png",
width = u"107", height = u"26",
alt = u"download trial",
),
href = "/static/luminotes.exe",
),
class_ = u"trial_button_area",
),
colspan = download_button and "1" or "2",
) or None,
download_button and Td(
Div(
download_button,
class_ = u"download_button_area",
),
),
colspan = upgrade and "2" or "1",
) or None,
),
id = u"upgrade_table_small",
),

+ 13
- 4
view/Header.py Parādīt failu

@@ -1,5 +1,5 @@
from Tags import Div, A, Img, Span
from config.Version import VERSION
from Tags import Div, A, Img, Span, B
from config.Version import VERSION, TRIAL

class Header( Div ):
def __init__( self, user, first_notebook, login_url, logout_url, note_title, rate_plan = None ):
@@ -9,6 +9,15 @@ class Header( Div ):
alt = u"Luminotes",
)

trial_expired = False
if TRIAL:
from pytz import utc
from datetime import datetime, timedelta
trial_age = datetime.now( tz = utc ) - first_notebook.revision
if trial_age > timedelta( days = 30 ):
trial_expired = True

if rate_plan and rate_plan.get( u"name" ) == u"desktop":
Div.__init__(
self,
@@ -16,8 +25,8 @@ class Header( Div ):
( note_title == u"home" ) and title_image or
A( title_image, href = u"http://luminotes.com/", target = "_new" ),
Div(
u"version", VERSION, u" | ",
A( u"upgrade", href = u"http://luminotes.com/download?upgrade=True", target = "_new" ), u" | ",
( TRIAL and u"trial" or u"" ), u"version", VERSION, u" | ",
A( u"upgrade", href = u"http://luminotes.com/download", target = "_new", class_ = trial_expired and "trial_upgrade_link" or u"" ), u" | ",
A( u"community", href = u"http://luminotes.com/community", target = "_new" ), u" | ",
A( u"blog", href = u"http://luminotes.com/blog/", target = "_new" ), u" | ",
A( u"close", href = u"/close" ),

Notiek ielāde…
Atcelt
Saglabāt