>>all your data is stored in one
location. This means if you move your app to your server, all the files go
with it.
1. you can also store all your images in one location, in some images
directory.
if this directory is inside your site -- which is better if you want
your images to be
vi
>>My gut reaction is that this would add overhead, a
dependency on the database, network traffic, etc. What are your thoughts?
This sbject has been brought many times.
You're right
The purpose of a database is to store information in such a way that it
can be sorted and searched
more easily. An
>>Nowadays it is a 2 step process. Not only do you have to tell IIS to
send it to JRun, you also have to tell JRun to send it to the CfmServlet
(or the FileServlet, or ...). That is why you need the aditional mapping
in web.xml.
IMHO, this is what is going wrong with CF since CFMX.
I mean, the ma
>>Not sure I would try it with a standard file type like .txt or .ini
though. That could create some confusion...
The only confusion could be when a .txt file contains CF tags that
should not be executed,
very unlikely.
Otherwise, the txt file will be just passed to the client transparently.
--
>>I'm curious...why do you want CF to read txt files?
Check robots that read robots.txt or not.
It would be much easier than collecting, reading and parsing IIS logs.
Unless someone has a better idea?
--
___
REUSE CODE! Use custom tags;
See http://www.conten
>>In web.xml map *.txt to the CfmServlet.
Ah ok, thanks, I will try.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
~
>>I'm curious...why do you want CF to read txt files?
Check robots that read robots.txt or not.
It would be much easier than collecting, reading and parsing IIS logs.
Unless someone has a better idea?
--
___
REUSE CODE! Use custom tags;
See http://www.conten
Hi,
I'm trying to get IIS (Windows XP) to read .txt files through CF, just
like .cfm or .cfml.
So I defined the same configuration for .txt extensions as for .cfm.
It works under CF 5, but with CF 7 all I get is an empty page.
Is there any other setting necessary in CF itself in order to get it
>>One question, how would I do a Regexp on an IP range of let's say
192.29.13.1 to 192.29.13.255?
I would try something like 192\.29\.13\.[0-9]{1,3} although this will
match 192.29.13.1 to 192.29.13.999 as well,
but if you are getting the IP from the HTTP request, there is no
possibility the l
>>Use the number character class.
provided that there are no other sort of numbers in the field.
If yes, see CF_REextract here:
http://www.contentbox.com/claude/customtags/REextract/testREextract.cfm
You can test it here:
http://www.contentbox.com/claude/customtags/REextract/testingREextrac
>>but you can convert IP addresses to a single big integer number.
Exactly, and there is a function to do this in CFLib.org:
http://www.cflib.org/udf.cfm?id=733&enable=0
And if you're familiar with regExp, see this one too:
http://www.cflib.org/udf.cfm?id=1075&enable=1
--
_
Try this :
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
~|
Enterprise we
>>Project Honey Pot have a DNS-based blacklist system too.
Good, but apparently their site is closed for the time being.
It their black list system still working?
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
>>I use Project Honey Pot's service
Thanks, I'll sure have a look.
Though my own system is well enough advanced now.
- I automatically detect robots when they fall in the trap.
- known robots will only see text, no image is displayed.
- I can verify the host and if anything looks suspicious, flag
>>In response to an earlier comment, the sizes of the cuts are all
rectangles
Ah ok, in that case, the algorithm is going to be much simpler,
otherwise I was wondering
how the user could enter the shape of each piece by Internet.
I'm affraid you'll have to write the code yourself, it's quite an
>>my Google searches are either turning up commercial products
and there is a good reason: this is really a commercial application.
These programs are parts of CAD/CAM systems. Who will ever program such
a complicated
algorithm just for fun if he has one sheet to cut once a year?
And what w
>>No, Google Web Accelerator doesn't rely on Google's cache, it prefetches
links from your server.
Are you sure about that ?
"It uses client software installed on the user's computer, as well as
data caching on Google's servers..."
( http://en.wikipedia.org/wiki/Google_Web_Accelerator )
"Sending
>>someone with Google Web Accelerator installed,
I don't see the problem, users with Web accelerator get their stuff from
Google's cache,
not from my server, so I don't even hear about them.
Anyway, our sites are dynamic, we publish news every day, so robots are
asked to not use cache anyway.
>>Nutch is part of Lucene, I think. So, you may well need to be scanned
by that.
I'll make my mind when they'll put a correct web address in their user
agent,
and I'll be able to see by myself why they are crawling my sites.
the word "experimental" and just an email address doesn't look too ser
>>Define 'bad'.
- bots that disobey robots.txt,
- bots that do not even offer any search service for visitors searching
for you, useless bots,
- bots that just harvest images (just Google picscout AND gettyImages)
and steal a huge amount of your bandwidth,
>>If I was a 'bad' bot and you block
>>I can tell you with absolute certainty that Google obeys robots.txt.
I'm pretty sure they do.
But we all know that sometimes, an HTTP request is lost somewhere in the
cyber space.
If for any reason the robot does not receive the file, it will probably
act as if there is none.
Only once will s
>>Have you confirmed that the robots have
requested and successfully retrieved robots.txt (perhaps search the
logs for the webserver)?
No, I do not trace reading of robots.txt.
In principle good robot should read and honor it.
Obviously, there is no absolutely good robot.
I use Copernic for sear
Hi,
I tried to implement a bad robot trap, I mean those that do not honor
the robots.txt file.
Here is the robots.txt file:
User-agent: *
Disallow: /noBots.cfm
Disallow: /bulleltin
Disallow: /admin
in /noBots.cfm, for the time being I just display this:
"This page was illegitimately indexed by #
>>If not, does anyone have a suggestion.
Don't know about CFIMAGE, but here is a solution, if you provide a palette,
any palette in GIF, JPG, JPE, JPEG or PNG format will work.
See CFX_MapClick:
http://www.contentbox.com/claude/customtags/mapClick/viewmapClick.cfm
and don't miss the test page:
ht
>>Let's move on, because somehow this thread just won't die
Right. It's time to start a new one. How about coldFusion dying? ;-)
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this add
>>F*cking HomeSite+ wiped out my file on the server (AGAIN).
Are you really editing files directly on your server?
I never do that, always develop on my working station, with CF 5 and
CFMX installed.
When everything looks ok, I update the server by FTP.
--
_
>>You can use Firebug to look at the
JavaScript that the browser is executing after the applet decrypts it.
Exact, but as I said, I developped this many years ago, by the times
Netscape 4 was the master in the net, and there was no Firebug.
--
___
REUSE CODE
>>BASIC?
There are $ signs in front of variable names in Basic?
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
~~
>>never learned perl? T-SQL?
nope.
>>Unary and dereferencing in C?
These are operators, not included in the variable name.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this addres
>>Reextract
You are taking the words from my mouth! ;-)
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
~~
>>we will look into JS encryption
I remember having developed an (almost) perfect way to hide Javascript
code from a page.
The idea was to encrypt it, send it encrypted as a string to a Java applet.
This applet decrypted the script, and passed it to the browser for
execution.
It worked well wi
>>if the string is [1122] I want it to display only the characters
after which would be 1122
In other words, all what you want is to remove the brackets?
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
>>Just keep in mind, all you are doing is slowing someone down. If they
are determined, they will get your source code.
Exactly, and another way to look at it is that any hiding scheme will
only prevent
those who hardly see a difference between a PC and a toaster from
getting the code.
In othe
>>Here is a little script that I use.
This is a masterpiece of naivety ;-)
It will only disable right click, but not View Source from the tool bar.
Nor it will disable right click if Javascript is disabled.
--
___
REUSE CODE! Use custom tags;
See http://www.c
>>Is there anything that php can do that CF can't?
Yeah: having all variable names to start with a $ sign.
I've learn tens of languages in my carrer, PHP is the only one to need a
special character to mark variables.
Makes code unreadable; stupid design!
--
>>It lookos like we may be making the move away from CF to .Net so the
boss has tasked me to get going on .Net training.
First and most important thing to do:
Get yourself a good list about .NET ;-)
--
___
REUSE CODE! Use custom tags;
See http://www.contentbo
>>The lock just seemed to prevent that from happening.
If it did, it cannot be for any logical reason.
The purpose of named locks is to ensure that a program cannot lock under
the name,
if another lock with the same name is already active.
Using CreateUUID() to create a unique name, you just mak
>>will this validate AMEX, MC, Visa and Mastercard
- since there's a different number of digits in an AMEX number?
Normally, it should.
In any number, there are digits that identify the type of card, and the
bank it comes from.
So the rest of the number can be checked independently for each type
>>Would I use another instance of cffile?
Yes, and a regexp to find all IP addresses.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
Is there a way to pass a variable with the domain name only from the
referring page to a target page using CF?
Try listGetAt(CGI.HTTP_REFERER, 2, "/")
But the HTTP_REFERER value is not always set by the client, so it is not
100% proof.
--
___
REUSE CODE! Use
>>Could CF8 be converting the Tiny Integer type to say a bit/boolean type?
I was thinking about this, but in this case, all even values would
converted to zeros, not ones
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tag
>>How are you going to guarantee the person that changes the file doesn't
change the registered hash too?
Easy: don't put the registered hash in the edit form.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(P
>>Even if the tag is not
published I'd love to hear a little about the concepts of how it works, you
can mail me off list if you'd prefer to keep it private.
Actually, it does not use MD5 algorithm, but a CRC-32 checksum, which
returns an 8 characters hexadecimal value.
The probability of having
#event_days#
This is an old CF bug:
Inside a loop, a column name alone always comes from the first record.
You must specify the query name to get the current row:
#get_days.event_days#
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.
I think the problem is with #Image.Link#.
I suppose that Image is a structure returned by CFX_JPG?
But if you are inside a CFOUTPUT loop on query Get_Announcements.,
then Image is also a column in the query,
and CF tries to get to the element .Link inside Image, which does not work.
--
__
>>Does that sounds like a fair concept?
It sure is. I have written such a tag and it works.
I use it to make sure two images are not the same, even if they have
different file names.
But I have not publish the tag yet.
I also have a tag that return a correct time stamp about a file, to the
seco
>>Right now I am getting an error that PubYear is not a valid column
Then I'll try to make sure that PubYear is a valid column in table
crAdInfo ;-)
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send
>>The login script checks for a session
variable, or presence of the cookie.
The presence of the cookie should not be enough to be logged.
Keep the userId in the cookie for user code preset in the login form,
but use the session variable only to test for login done.
--
_
>>Wow... pretty complicated.
Ok, then try this:
#HTMLEditFormat(finalString)#
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED
>>I would add a column hierarchyLevel and order by that column
That won't do it: you can have element at the same level, but in
completely distinct branches in the hierarchy.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags
>>Can anyone tell me how to remove the xml code, that text pasted from
word or works ads. For examlpe
This is not XML but HTML.
Any way, to remove it, all you need are regular expressions.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/cl
>>I gave it a shot Claude!
Ha ha, good luck ! ;-)
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
>> think that I need to look at
redoing this table for sure.
If you can redesign the table, the best way to handle hierarchy is using
a recursive template
like a custom tag, called with only the parentId as parameter.
The root elements in the the tree have parentId = 0.
--
>>Hmmm... CF_REextract looks useful, but the problem is that
I'd have to know enough regex to tell it what "RE1" and "RE2"
should be. If I knew that, I could probably write the regex.
Not really, because REextract needs much simpler regexp to do the job,
so you only need to master the basic abou
>>Know how to regex that, Claude?
Must not be simple.
I'm too lazy, this is why I made CF_REextract.
If I had to do it, I would use CF_REextract for sure.
1º get all strings outside tags and their location,
2 loop on the query backward and replace spaces in these strings
See CF_REextract:
http:/
>>#replace(replace(get_events.event_description, "#chr(13)#", "",
"All"),
"#chr(32)#", " ", "All")#
You are using unnecessary # in this expression, use instead:
#replace(replace(get_events.event_description, chr(13), "", "All"),
chr(32), " ", "All")#
But it is not the source of your problem
An
>>Damn, I replied to the wrong thread .
and you've got a severe hiccup?
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
~
>>My question, and this is more out of curiosity than anything, is how
does CF "remember" the original user's file name of "myFile.txt"
The original name is transmitted in the HTTP request by the browser.
This is the purpose of the "multipart" in the ENCTYPE attribute of the form.
One of the part
>>So, i want to check if the value is in A or in B. But the result is
all entrys from tableA.
I don't understand.
How can you select records from tableA on the only fact that a field
from another table is in a list of values?
--
___
REUSE CODE! Use custom t
>>Is it basically a memory problem where I need to increase the memory
for the coldfusion instance?
It might also be an infinite recursive problem.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send a
>>Why have a field for every row when a small minority will actually
use it?
Most database system will use only one byte for a logical value,
sometimes may be only one bit,
so, uless you have zillons of articles, the overhead is marginal.
>>However, should I really create a table with one fie
>>"[EMAIL PROTECTED]" just off the top of my head.
H, by the way, isValid("email", "[EMAIL PROTECTED]")
returns "no", so according to this discussion, this address should never
be used
in CFMAIL in the first time. ;-)
--
___
REUSE CODE! Use custom tags;
>>"[EMAIL PROTECTED]" just off the top of my head.
This will cause an exception in your template only if is the spooler is
deactivated in the CF server,
something I wouldn't recommend for mass mailing.
Otherwise, the error will occur in the service which sends messages from
the spool,
which is
>>I though CF enterprise boasted 2 million emails per hour only with
spooling disabled...
On the same destination server, may be.
I just don't think this is possible. Some servers will take seconds
before they send an answer.
--
___
REUSE CODE! Use custom ta
>>People still use HomeSite or CF Studio!?!
Sure.
I tried DW once, and CFEclipse too... Glad I didn't uninstall CF STudio!
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address:
>>Tell HomeSite/CF Studio to convert tabs to spaces
so you don't have to actually use the spacebar.
Exact. And you can have tabs to be converted to only 2, 3, or 4 spaces.
Another reason for doing so is when you want to look at the source code
your template has generated.
Both Explorer and Mozil
>>Yes, it can, if spooling is disabled. the cfmail tag will throw
whatever error message it gets from the remote SMTP server.
Ok, but not really recommended for mass mailing.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtag
>>I don't believe it will cause an exception.
It can't. Anyway the template which sent the message cannot get an
exception since it
is not running anymore. The CFMAIL tag only drops a copy of the message
in the spool.
Now I think the spool may be deactivated in the server.
Don't know what happ
>>It's perfectly possible for a
validly formatted address to cause an exception when you actually try to
email it.
Not so sure about that, since the message is not sent by the CF server
it self.
If there is an exception, it can be for any other reason, like an
invalid value in some other attrib
>>see if we can change that.
Ok, I've added the list in my list of lists.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
>>I'll see if I can find another one.
How about doing as Charlie suggests, let's make the HOF list alive.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED]
>>This is one of the most active newsgroups:
apparently mostly active for spamers though :-(
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks
>>Hi, i am getting data out of a database. i need to be able to check
if a value returned in a query is null.
If the idea is just because you want to ignore null values, better
simply set a condition in the query, ie:
WHERE myColumn NOT IS NULL
If what you want is being able to distinguish nu
>>The first is a superfluous use of carriage returns in my opinion and does
nothing to improve readability.
The idea is that if a line is too long, it will be broken in your editor
anyway, so better break it yourself at some logical points,
indent it, and make it more readable, ie:
--
_
>>My goal is to get a code set that everyone can share and agree
What an utopia!
For instance, I cannot argue with the fact that many people want to go
XHTML, and use tags in lower case, why not?
Personally I don't have any interest for XHTML, I'm quite satisfied with
HTML and I prefer having
>>Precede all but simple variables with a prefix that indicates what
type of data is in the variable.
Yurk ! This is going back to FORTRAN where integer variables started
with IJKLMN !
And it is particularly useless in a typeless language like CF.
>>Use functions when doing TEXT comparisons i
>>CF cannot create it so it treats it as a
variable "session.test" that it places into the URL scope.
And this is what is inconsistent, since a variable cannot have a dot in
its name.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/c
>>But I guess that's the point. Its not a structure in this case. Dump
#URL# and the value is not shown as a structure. Its a simple value ie
"test.test".
That's not only the point, it is also an issue, since in theory,
variable cannot have dots in their names.
So CF is actually creating an il
>>This helps not only new programmers to the code to
understand and follow what you have done, but also helps YOU when you come
back to an application after 3 years and can't remember exactly how
something was written.
I agree with you on that point, but there is absolutely no reason the
compile
>>I don't think its a structure. Just a variable name with a "." in it.
But this is unconsistent with the way CF really works:
Try
CFDUMP shows that test is a structure with a variable " test", not a
variable "test.test"
--
___
REUSE CODE! Use custom tag
>>Case sensitivity is not an invention of computer science, it is a
property of written language.
I was talking about « case sensitivity in computer languages » of course.
Some early computers, like Control Data, had only 6 bits character sets
with only upper case,
so case sensitivity was comple
>>case sensitivity has not been the 'source of many
errors', but rather the programmers who ignored it.
This is exactly what I mean: programmers have enough things to watch and
worry about,
case sensitivity could be one of the details they should be able to ignore.
--
_
>>The rest of the world should not be crippled by Microsoft's mistakes.
Case insensivity Microsoft's mistake?
C'mon, case sensitive languages has been the most stupid thing and worse
innovation in whole computer science history.
It has been a source of many errors, much more often than it helped
>>I have done some
tests and it all *seems* case insensitive, but I'd appreciate some back-up
from a more experienced CF developer.
Syntactically, CF IS case insensitive, but there are a few occasions
where case is important:
- directory and file names under Linux,
- when generating Javascript c
>>if you create a
variable, you should make that variable local to the function/method if it's
only going to be used within that function.
Oh I see, you're right, but I still don't see the utility to name the
query, then to create a variable.
>>Garbage collection doesn't happen immediately whe
>>You should always var your query name and use a query name to make it
a local variable and avoid race conditions.
What for? All variable names are local by default anyway.
Furthermore, giving a name to a query will force CF to keep the
connection alive during the whole HTTP request,
and use me
>>i like clean simple code ( getting spoiled with javascript
If you call Javascript "clean", obviously, you have not worked with C ;-)
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to th
>>NOT 0 should return 1 not "yes".
Never.
NOT is a logical operator and returns a logical value, ie: "yes" or "no"
Since NOT applies to a logical value, 1 is first converted to "no", then NOT
returns "yes".
--
___
REUSE CODE! Use custom tags;
See http://www.c
>>
and even simpler: call your classes bg0 and bg1 and use
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
>>You might look into one of the free regular expression tools to make jobs
like this easier. One is
Another one, made in CF for CF is here:
http://www.contentbox.com/claude/REwizard/index.cfm
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com
>>Is there some kind of Java garbage collection or something else that
people know about that would cause such a regular slowdown?
It might also be related with other applications on the server, like
backups, etc.
--
___
REUSE CODE! Use custom tags;
See htt
>>What's a good way to parse the data returned from Abebooks?
Not only a good way, but definitely the best way: CF_REextract
See http://www.contentbox.com/claude/customtags/REextract/testREextract.cfm
--
___
REUSE CODE! Use custom tags;
See http://www.contentb
>>What's a good way to parse the data returned from Abebooks?
Not only a good way, but definitely the best way: CF_REextract
See http://www.contentbox.com/claude/customtags/REextract/testREextract.cfm
--
___
REUSE CODE! Use custom tags;
See http://www.content
>>run it and find out. It is not a memory issue.
Of course it is not.
Recursing to a level of 1000 is not a problem.
As I said, with a factorial function, you will hit an overflow before
any limit of recursion or any memory limit.
Can ou imagine how large is 1000! ?
At a certain point, you hi
>>The recordset is not returning the heirarchy correctly however.
Please define "not correctly"
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
>>This little factorial function will show you that limit in a hurry
IMO, with a factorial function, you will hit a numeric overflow far
before any limit in recursion level.
I have some recursive functions, got them loop to infinity while
debugging, and like in most languages,
the only limit I
>>but am curious to see what everyone else is using for a text editor
out there.
Depends... Are you under DOS or CP/M ?
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [E
>>Because robots typically read the form
Sure, I was just joking ;-)
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address: [EMAIL PROTECTED])
Thanks.
~
>>It's like implementing captcha, but validating the captcha key with
javascript
Ha ha, but where is the problem, since robots can't read Javascript? ;-)
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please
>>The maze is rendered at the client using only HTML and CSS...
and Javascript, unless they include Javascript in HTML.
--
___
REUSE CODE! Use custom tags;
See http://www.contentbox.com/claude/customtags/tagstore.cfm
(Please send any spam to this address
601 - 700 of 2718 matches
Mail list logo