{{=c}}:
{{=A(a,_href="http://"+a)}}
{{pass}}
{{pass}}
{{pass}}
{{=INPUT(_type='button',_value='Venster
sluiten',_onclick="javascript:window.clos
ir-conditioning, parking lot, lockers
and towel service as facilities as well.
I find it difficult to get a grip on this part of my domain. Given the
concept of bounded rationality I have to settle for a less perfect
model and improve on it in upcoming iterations.
Kind regards,
Annet.
--~--~
arted to doubt the correctness of the form.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email to web2py@googlegroups.com
... to the login function, but that does not work. What does work?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email to web2py
Where did you put this line of code;
> form[0][-1][1].append(INPUT
> (_type='button',_value='Cancel',_onclick="window.location='%s';"%URL
> (r=request,f='index')))
Kind regards,
Annet.
--~--~-~--~~~---~--
Problem solved, I had to restart web2py from the terminal. Thanks for
your reply.
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email
ect has no attribute '_tablename'
I wonder whether this problem has been solved with the introduction of
version 1.65. I read the slides, but the examples are all based on an
IS_IN_SET() validator, not on a table field.
Kind regards,
Annet.
--~--~-~--~~~--
use from db.py. I do not foresee any
problem, am I overlooking something?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email
Yarko,
Thanks for your reply, indeed I set the migrate=False.
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email
res.plaats.like('%s%%'%q.capitalize(\
.select(db.adres.plaats,orderby=db.adres.plaats,distinct=True)
r=''
for row in rows:
r='%s%s\n'%(r,row.plaats)
return r
What do I have to do to get this to work as it did perviously?
Kind regards,
Anne
regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email to
web2p
Length': 12,
'bFilter': false,
'bSort': false,
'bInfo': true,
'bAutoWidth': true
});
... doesn't work, so this: jQuery("input:text:not
(.date):first:visble").focus(); has to come after the other line of
code. I don'
t%3Anot%28.date%29%3Afirst%3Avisble%22%29.focus%28%29&pli=1
... and doesn't have anything to do with web2py_ajax.html.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web
. When I check the
check to delete box and click submit the record isn't being deleted
and the function doesn't return to the previous page.
What changed between those versions? How do I get this to work again?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You
It is not just the check to delete that doesn't work, when I update
the record and click submit the update isn't being executed either.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Group
esults in an error ticket as does removing the first
part of the validator. How do I get this to work?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
T
Massimo,
Problem solved. Thanks.
By the way: I couldn't find a link on the web2py site to
bazaar.launchpad.net, did I overlook it or is it just not there?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed t
.. request.vars.company probably doesn't have a value?
I hope I provided you with sufficient information to help me solve the
problem. I apologize for asking the question without translating the
Dutch words into English, to me German, Dutch and English are similar
one another.
Kind regards,
the next create form to keep the day and facility
i.e. Monday and Creche. Both fields are drop boxes.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
drijfactiviteit.id]))}}
{{pass}}
And in a style sheet you style it the way you like.
Apart from dataTables being straightforward to use, Alan, just like
Massimo, answers your questions immediately.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
Yo
upport item assignment
Where: db.bedrijfactiviteit.activiteit.widget['requires']
=db.bedrijfactiviteit.activiteit.requires is Dutch for:
db.companyactivity.activity.widget['requires']
=db.companyactivity.activity.requires
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received th
es what you ask.
keepvalues=True keeps all the values, whereas I only want to keep
specific values.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
ity.activity,v)
.. but that results in the same error.
I hope you're close to solving this problem.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To
s):
File "/Library/Python/2.5/site-packages/web2py/gluon/sqlhtml.py",
line 837, in accepts
if fields[fieldname] != None:
KeyError: 'activity'
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscr
pdate_form(table,rec,nxt):
form=crud.update(table,rec,next=(URL(r=request,f=nxt)))
form[0][-1][1].append(INPUT
(_type='button',_value='Cancel',_onclick='javascript:history.go(-1)'))
return form
Kind regards,
Annet.
--~--~-~--~~~---
_form(table,rec,nxt):
form=crud.update(table,rec,next=(URL(r=request,f=nxt)))
form[0][-1][1].append(INPUT
(_type='button',_value='Cancel',_onclick='javascript:history.go
(-1)'))
return form
Kind regards,
Annet.
--~--~-~--~~~---
> ...you mean a list of fields, correct? Anyway, that is what Annet is
> asking for I think.
Yes, a list of fields that should keep their previous values when the
form reloads.
Something like keepvalues=[field2,field4]
Annet.
--~--~-~--~~~---~--~---
I am using Xcode, not as beautiful an IDE as WingIDE, but it suits me.
When you're on OS X, NodeBox is fun to experiment with while you're
learning Python.
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Goo
... using revision 1027 of the sqlhtml.py file. The OptionsWidget
works, but, the validator:
IS_NOT_IN_DB(db
(db.companyactivity.company==request.vars.company),db.companyactivity.activ
ity)
... doesn't work.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You
n):
File "/Library/Python/2.5/site-packages/web2py/gluon/sqlhtml.py",
line 807, in accepts
fields[fieldname] = field.store(source_file, original_filename)
AttributeError: 'SQLField' object has no attribute 'store'
Does that mean that I have to add a field store to my
Massimo,
> It looks to me you have a new version of globals.py but an old version
> of sql.py. Is this possible?
Yes, after upgrading to version 1.65.7 the upload field worked.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message becau
activiteit.level.image}}
...
The problem is, that when I expose the function instead of the image
the file name:
level.image.aef56e3f826179e6.677265656e5f646f742e706e67.png is being
displayed. Why is that?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to th
Fran,
> because that is what is stored in the DB.
>
> To display the image you need something like:
>
>
>
Problem solved, thanks.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Goog
Does Field(...,uploadfolder="...") make it possible to let every user
have his own upload folder by assigning a variable to uploadfolder
like: in the table definition in my model: Field
(...,uploadfolder=variable) and in the controller: variable="myfolder"
gs=[item.id]))}}
{{pass}}
{{for item in news:}}
{{=item.titel}}
{{pass}}
I hope one of you could provide me with the correct for loop to make
this work.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message b
Jason,
I'll give it a try, if it works, it's exactly what I was looking for.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group,
st.now)&\
(db.nieuws.publicatie_datum>=minus_three_months(request.now)))
.select(db.nieuws.ALL,orderby=~db.nieuws.publicatie_datum,limitby=
(6,23))
return dict(latest6=latest6,latest18=latest18)
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received
on to read like:
(db.nieuws.publicatie_datum.month=request.now.month)
... would work, but it doesn't, why not?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to th
Massimo and Kuba,
Thanks for helping me solve this problem.
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@google
.month()==request.args[0]
works, but how do I get the second argument assigned to month? This:
month=request.args.[0][1]
doesn't work. Why does: request.args[0]
retrieve the correct argument?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message
quest,args=
[month.nummer,month.maand]))}}
reads like:
August 2009
Making maand an argument results in August_2009.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" gr
hat should the first argument read like to make this work?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@googlegroup
en reactie'
mail.send(to=['vermee...@xs4all.nl'],
subject=form.vars.onderwerp, message=form.vars)
form=[]
elif form.errors:
response.flash=response.flash_error
else:
response.flash='de velden gemerkt met een * zijn verplichte
velden
Hi Denes,
> you could use the string replace function (if month IS a string):
> {{=month.replace('_',' ')}}
month is a string, so problem solved, thanks!
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because
Hi Denes,
Thanks for the extensive answer to my question. Both the digression
and sample code were very helpful.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" grou
I am using PostgreSQL as a database and wonder wether I have to
preserve OIDs when running pg_dump.
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to
add explicit type casts.
Where the ^ points to the = sign in doelgroep=1
How do I solve this problem. Why doesn't 'db.event.bedrijf==1' result
in an error, to me both expressions are the same.
Kind regards,
Annet
--~--~-~--~~~---~--~~
You rec
'eventtype']for k in eventtyperows]
event.eventtype contains the keys, eventtype.eventtype contains the
values that should be displayed in the drop box. How do I proceed from
here, to create an drop box.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You receive
Massimo,
The drop box works. Thanks.
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this g
On my development machine I accidently clicked the compile link of one
of the applications I am working on. How do I reverse this action. So
that I can EDIT the application again.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you
Massimo,
Thanks, problem solved.
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group,
has faced the same problem, and if so, how
you did solve it.
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@google
IE.
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group, send email
when it comes to file size.
I had a look at tinyMCE, which generates much more standards compliant
code, however, in terms of data transfer its file size is enormous.
There are compressors, but not a Python based.
Are that other alternatives to nicEdit?
Kind regards,
Annet
ly in my Postgres
database, and set migrate to False to get my model to work again,
which means I cannot do any migrations from the address table in the
future.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are sub
File "/Library/Python/2.5/site-packages/web2py/applications/base/
models/db.py", line 155, in
db(db.address.number==None).update(number=0),
File "/Library/Python/2.5/site-packages/web2py/gluon/sql.py", line
605, in __getattr__
return dict.__getitem__(self,key)
Key
troduced because
the link:
{{=A(month.maand,_href=URL(r=request,args=
[month.nummer,month.maand]))}}
reads like:
August 2009
Making maand an argument results in August_2009.
Is there a way to fix this?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received thi
/2.5/site-packages/web2py/applications/init/
views/news/archive.html", line 98, in
File "/Library/Python/2.5/site-packages/web2py/gluon/sql.py", line
605, in __getattr__
return dict.__getitem__(self,key)
KeyError: 'replace'
When I do:
{{=month}}
I get the
n't formatted correctly. In my
views I have got:
{{=db.event.van_datum.formatter(event.event.van_datum)}}
... to format the date correctly. Is there an equivalent of this code
to format the date in the function?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
Yo
September 2009, and returned to
the view, which I posted above. For some reason
order matters here.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to th
Hi Mengu,
Thanks for your help, using fromdate.strftime("%d-%m-%Y") displays the
date in the correct format.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users&quo
Hi Mengu,
Thanks for the link to the tutorial site.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@googlegro
on the field of type text?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this g
password.requires=[IS_NOT_EMPTY(), CRYPT()]
db.auth_user.password.label='Password * '
db.auth_user.created_on.default=request.now
db.auth_user.created_on.readable=False
db.auth_user.created_on.writable=False
db.auth_user.modified_on.default=request.now
db.auth_user.modified_on.update=requ
I menu.py I defined the following menu:
if 'auth' in globals():
if not auth.is_logged_in():
response.menu_auth = [
['Fitwise CMS',request.function=='index',URL
(r=request,c='default',f='index')],
['Login',request.function=='user/login',URL
(r=request,c='default
CRYPT()]
db.auth_user.password.label='Password * '
db.auth_user.created_on.default=request.now
db.auth_user.modified_on.default=request.now
db.auth_user.modified_on.update=request.now
db.auth_user.most_recent_login.default=request.now
When I expose the user/profile function the password a
d,
because I set message=message,
however, the flash still read like: Update bedrijfsgegevens.
In the manual I read: message is the flash message upon form
acceptance. Why doesn't this work?
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this mess
7;, 'nfa.adres', 'adres'})
When I remove the headers attribute from the code it works, what is
the correct
syntax for the headers attribute?
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the
Denes,
> Hope this helps,
Yes, thanks. I thought that when I'd set writable=False
I wouldn't be able to do:
db.nfa.bedrijf.default=auth.user.bedrijf
... but I am, so, problem solved.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received
I cut and paste your code in a db.py and the default.py index function
and it ran without problem.
I work on a Mac and use Postgres Plus 8.3 and Web2py 1.72.3
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the
Massimo,
Problem solved, thanks.
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@googlegroups.com
To unsubscribe from this group,
Massimo,
Thanks, for your explanation, problem solved.
Annet
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web2py@googlegroups.com
To unsubs
When I use crud.update(), and the table contains a field of type
upload, the upload form displays a download link and chechbox with a
delete label in the third column. How do I disable this feature.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this
When I use crud.update(), and the table contains a field of type
upload, the upload form displays a download link and chechbox with a
delete label in the third column. How do I disable this feature.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this
Massimo,
Isn't it possible to remove the file|upload link and checkbox from the
third column?
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group
ijf)&
(db.company_activity.activity==db.activity.id))
.select(db.activity.activity)
The key and value in the dropbox should have the value of
db.activity.activity. Does one of
you know how to implement this?
Kind regards,
Annet
--~--~-~--~~~---~--~~
You
Massimo,
On page 218 of the web2py manual it says:
headers={'person.name', 'Name'}
That should read like:
headers={'person.name':'Name'}
Kind regards,
Annet
--~--~-~--~~~---~--~~
You received this message because
Massimo,
> there will be no link to download, no preview and (I think) no delete
> button.
You're right, all three features are gone when using an SQLFORM.
Kind regards,
Annet.
--~--~-~--~~~---~--~~
You received this message because you are subscr
fault=request.now
db.bedrijf.modified_on.default=request.now
db.bedrijf.modified_on.update=request.now
In the database when I modify a record the modified_on fields isn't
updated, it remains set to the datatime it was created on. What is the
correct syntaxis to the modfied_on field updated.
esn't
work.
Kind regards,
Annet
--
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web...@googlegroups.com.
To unsubscribe from this group, send email to
web2py+unsubscr...@googlegroups.com.
For
ity.bedrijf==auth.user.bedrijf)
&
(db.company_activity.activity==db.activity.id)).select
(db.activity.activity)
db.timetable.activity.requires=IS_IN_SET([row.activity for row in
myactivities])
form=create_form(db.timetable,message='Class inserted')
return dict(form=for
I have a table that contains opening hours. I would like to validate
that the from_time is less than the to_time.
I tried:
db.openinghours.from_time.requires=db.openinghours.from_timehttp://groups.google.com/group/web2py?hl=en.
27;)]
When I insert records using appadmin, the validator works, I cannot
insert the same combination of company.id and activity.id twice.
However, when I insert records using:
form=crud.create(db.companyactivity)
... the validator doesn't work, I can insert the same combination of
company.id an
est.now
db.bedrijf.modified_on.default=request.now
db.bedrijf.modified_on.writable=db.bedrijf.modified_on.readable=False
db.bedrijf.modified_on.update=request.now
the modified_on field still isn't updated when I update the record.
What am I doing wrong?
Kind regards,
Annet.
--
You received
e.datetime.strptime(self.value,'%Y-%m-%d %H:%M:%S')
TypeError: strptime() argument 1 must be string, not None
How do I resolve this error?
Kind regards,
Annet.
--
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this
Yes, I am sorry a typo introduced on translation.
The problem still exists, in appadmin all the validators of this kind
work, in my own cms based on crud
functions they do not work.
Annet
--
You received this message because you are subscribed to the Google Groups
"web2py-users"
Massimo,
> Is the problem when you use appadmin? update would not work in this
> case because appadmin (by design) ignores writable=False.
Yes, it's an appadmin problem, when I update records using my cms
application the modified_on fields are update correctly. Thanks.
Annet.
--
Y
Massimo and Denes,
So, I guess my problem won't be solved.
I don't understand why request.vars.to_time is None.
I am using form=crud.create(table) and form=crud.update(table,...)
so request.vars.to_time cannot be None can it?
Annet.
--
You received this message because you are sub
UT(_type="reset",_value="Reset"))
form[0][-1][1].append(INPUT
(_type="button",_value="Cancel",_onclick="javascript:history.go(-1)"))
return form
I hope this will point you in the right direction.
Annet.
--
You received this message be
etime.strptime(self.value,'%H:%M')
TypeError: strptime() argument 1 must be string, not None
I don't understand why argument 1 is None.
> If you want to compare from_time with to_time then to_time should bot
> be None unless you tell us how should the validation be perfo
', value)
File "/Library/Python/2.5/site-packages/web2py/gluon/sql.py", line
2688, in __init__
right = sql_represent(right, left.type, left._db._dbname)
File "/Library/Python/2.5/site-packages/web2py/gluon/sql.py", line
466, in sql_represent
return str(int(obj))
V
ET([row.activity for row in
> activity])
>
> should be
>
> db.timetable.activity.requires=IS_IN_SET([row.id for row in activity],
> [row.activity for row in activity])
I changed my code to read like the code above, but I still get the
same error ticket.
Kind regards,
Annet.
Massimo,
Is there a way to solve this problem?
Kind regards,
Annet.
--
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to web...@googlegroups.com.
To unsubscribe from this group, send email to
web2p
after redirection because it was overridden
by
another response.flash, I had to rename one of the flashes to get the
flash
to work properly.
Thanks for pointing me in the right direction.
Annet.
--
You received this message because you are subscribed to the Google Groups
"web2py-users&quo
m apologies for asking so many questions about something as simple
as setting up web2py at WebFaction, but I really haven't got a clue
what some of the instructions are about.
Kind regards,
Annet.
Settting up Web2py as WSGI on Webfaction
Make available two subdomain names, one for admin
change my domain's NS records to use their
nameservers.
ns1.webfaction.com
ns2.webfaction.com
ns3.webfaction.com
ns4.webfaction.com
I am not sure all this is absolutely necessary, I'd like to learn that
from you.
Mengu,
Thanks for your explantion.
Kind regards,
Annet
--
You rec
27;))]
The user shouldn't be able to enter paymentdata more than once, I
thought by making company unique and defining the validator I would
implement that constraint. However, even when inserting a record in an
empty paymentdata table I get the error message ' paymentdata alread
;
if (window.focus) demowindow.focus();
return false;
}
When I click the div, a new window opens, however, the url reads like:
http://127.0.0.1/frame/default/%s
whereas, it should read like:
http://127.0.0.1:8000/frame/demo/index
Why doesn't this work?
Kind regards,
Annet.
--
You received
snaam
with:
Fitwise Demo Applicatie
In de Demo Applicatie ...
I gave this a try:
Fitwise Demo Applicatie
In de Demo Applicatie ...
By escaping my Python code you mean escaping this line:
onclick="javascript:demo('%s')"%URL(r=request,c='demo',f='index
All of you,
Thanks for all the helpful replies to my posts, I really learned a
lot.
Merry Christmas and all the best for 2010.
Annet.
--
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send em
301 - 400 of 1659 matches
Mail list logo