SitePoint Sponsor

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 25 of 48
  1. #1
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)

    Calling all Coders! Enter the August Programming Competition here.

    Do you think you can write a...

    SitePoint Private Message Utility Application

    I can put my Private Messages into custom folders. And I can select Private Messages and move or delete them.
    But I wanted to be able to search them, save some, and clean things up now that I'm starting to get quite a few and my limit is approaching. And I didn't want to spend a lot of time doing so.

    I can export my Private Messages to Text, CSV, and XML files. So, I can archive my Private Messages and clean up the older ones saved on the forum if I want to. But do I want to save them all? And once I have them, what do I do with them so they're useful?

    My first impulse was to write my own utility application to run on a localhost server. But then I thought "Hey, SitePoint has a lot of members that write code! Maybe someone else could write a better application than I could?" quickly followed by "Why not have a contest?"

    The idea was passed along to those at SitePoint Headquarters, and they approved! So who can enter? Any and every SitePoint forum member!

    But be warned, the task is probably a bit much for a newbie developer. The time constraints and high standards may make meeting the requirements too daunting for even more advanced developers.

    That said, to make things as easy as possible, competitors can choose what format(s) the utility application works with and what language is used to write it in - with the stipulation that the judges can read and test it. The judges have experience with many languages and various versions and variants of those languages. For example:
    Awk, Bash, Basic variants, C/C++, Java, Lisp variants, Lua, Pascal variants, Perl, PHP, Python, Ruby, XSLT
    - So the chances are better than good that the language of your choice will be OK. Just let us know first to be sure.

    Those interested are encouraged to look at their own exported files. For easy reference they are as follows:

    TEXT FILE FORMAT: (whitespace includes newlines and tabs)
    Code:
    SitePoint Forums;http://www.sitepoint.com/forums
    Private Message Dump for User SampleMember; Jul 11, 2010 13:57 -->
    
    ################################################################################
    Folder :	Sent Items
    ################################################################################
    
    ================================================================================
    From :	SampleMember
    To :	FormAlly
    Date :	2006-11-14 01:24
    Summary :	added iframe
    --------------------------------------------------------------------------------
    If you can give me a link to the site I'll take a look at what's being added and look at what kind of user input stuff it has that should be checked. Not that I'm an expert, but it's worth a try.
    SampleMember
    CSV FILE FORMAT: (whitespace includes newlines)
    Code:
    Date,Folder,Summary,From,To,Message
    "2006-11-14 01:24","Sent Items","added iframe",SampleMember,FormAlly,"If you can give me a link to the site I'll take a look at what's being added and look at what kind of user input stuff it has that should be checked. Not that I'm an expert, but it's worth a try.
    SampleMember"
    XML FILE FORMAT: (whitespace includes newlines and tabs)
    Code XML:
    <?xml version="1.0" encoding="ISO-8859-1"?>
     
    <!-- SitePoint Forums;[url]http://www.sitepoint.com/forums[/url] -->
    <!-- Private Message Dump for User SampleMember; Jul 11, 2010 13:54 -->
     
    <privatemessages>
    <folder name="Sent Items">
    <privatemessage>
    			<datestamp>2006-11-14 01:24</datestamp>
    			<title>added iframe</title>
    			<fromuser>SampleMember</fromuser>
    			<fromuserid>83449</fromuserid>
    			<touser>FormAlly</touser>
    			<message><![CDATA[If you can give me a link to the site I'll take a look at what's being added and look at what kind of user input stuff it has that should be checked. Not that I'm an expert, but it's worth a try.
    SampleMember]]></message>
    		</privatemessage>

    Don't have any Private Messages to export and work with or prefer to not use your own? The attached SampleMember files are available for your convenience. Every effort has been made to make them as "real" as possible.
    privatemessages-SampleMember-Jul 11, 2010.txt
    privatemessages-SampleMember-Jul 11, 2010.csv
    privatemessages-SampleMember-Jul 11, 2010.xml

    Now the details, the utility application:

    Must:
    • state platform requirements
    • follow a standard coding style convention - i.e. human readable with good naming - in English.
    • have enough comments to make it easier for someone unfamilliar with the code.
    • be able to be run on a typical localhost server
    • be 100% error free (suppressing errors doesn't count!)
    • interfaced via a web page that has valid accessible mark-up,
      ....... any javascript and CSS in external files only
    • SELECT file(s)
    • READ data from the exported Text and/or CSV and/or XML files and those created by the application,
    • SEARCH Private Messages by:
      ....... folder, date(s), from, to
      ....... summary, message - by using both single words or phrases
    • DISPLAY results in a table or table-like rendering
    • SORT results in both ascending and descending date and time order
    • SAVE any selected results to a new separate file (Text and/or CSV and/or XML).
    • be fully functional without javascript being enabled
    • still be easily readable without CSS being enabled
    • be such that others are freely able to use your code for personal use for free


    Optional:
    • code can be written in any language the judges can read and test
      ....... Post here to let us know and find out if it's OK first
    • testing can be done using either developer's own exported Private Message files or the attached SampleMember files
    • mark-up can be
      ....... HTML
      ....... XHTML
    • javascript, if used, can include freely available open-source libraries
    • images, if used, must be your own or in the public domain
    • any reasonable directory structure is acceptable


    Time Span:
    • Participants will have 14 days to submit their Beta version. That is, until August 14 midnight GMT
      - Only one submission per member will be accepted.
    • Approximately 5 days later the winner and any deserving honourable mention will be announced.


    Additional Criteria:
    • in the event of any "ties" Bonus Points* will be taken into consideration
    • Submissions should NOT be attached to posts. Please send me a Private Message with a URL where I can download them. Or send me a Private Message and I will give you an email address where you can send them.


    Incentives:
    • Code to be made available to other members for their personal use.
    • Winner will be featured in an Interview thread
    • Winner will receive a SitePoint book and admittance to a *Live Course of their choice Free
    • Those receiving Honourable Mention will receive admittance to a *Live Course of their choice Free


    *Bonus Points for:
    • Secure access
    • Pagination of results
    • Most efficient run time
    • Most efficient memory use
    • Having the utility application also work with (but not dependent on) database(s)
    • Rendering smilies as images


    Sign up now, the clock is ticking!

    Last edited by Mittineague; Jul 31, 2010 at 20:24.

  2. #2
    SitePoint Enthusiast Mr.Alexander's Avatar
    Join Date
    Apr 2010
    Location
    Toronto, Canada
    Posts
    46
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Sounds like a great competition, hopefully I can participate.

  3. #3
    SitePoint Member
    Join Date
    Aug 2010
    Posts
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Awesome, I think JSON output would be a benefit, especially considering the JavaScript community around Sitepoint.

    Any UI requirements (besides table of messages)? i.e. should it look like Sitepoint Forums?

  4. #4
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)
    I've been working on my own version that works with all 3 exported file formats.
    But that is NOT required. As long as it works with at least one of them it's fine.

    So far I have the initial page which shows a list of the available files with checkboxes
    The - "Must SELECT file(s)" - requirement.
    and submit buttons for each format.

    The second page has several inputs including a "sort by"
    The - "Must SEARCH Private Messages by:
    ....... folder, date(s), from, to
    ....... summary, message - by using both single words or phrases" and "Must SORT results in both ascending and descending date and time order" - requirements.
    with a submit button and a "go back" return link.

    The third page displays any Private Messages that matched the input from the second page. Any or all that matched can be selected. A new file can be given a filename and saved in an existing or new folder.
    The - "Must DISPLAY results in a table or table-like rendering" and "Must SAVE any selected results to a new separate file (Text and/or CSV and/or XML)." - requirements.
    with a submit button and "go back" return links

    IMHO working with only one format and putting something together without any of the "Bonus Point" features will still be quite a task. I suggest you write something basic first and then add the "bells and whistles" if you have enough time. The submission is a Beta after all, not a Release Candidate! It doesn't have to look like the SitePoint forum. The main concern is that it be easily readable. Anything more than that is a plus in your favor.

    Another thing that merits repeating for all interested is to please sign up here BEFORE writing any code!. I wouldn't want someone to spend a lot of time putting together something the judges can't read and test.

    For example, if I was entering I would leave a post like

    Hi, I'm interested in writing a utility app in PHP. The requirements are
    * PHP with PCRE enabled (default as of PHP 4.2+)
    * Text and/or CSV requires PHP 4+
    * XML requires PHP 5 with SimpleXML enabled (default)
    Is this OK?

  5. #5
    om nom nom nom Stomme poes's Avatar
    Join Date
    Aug 2007
    Location
    Netherlands
    Posts
    10,271
    Mentioned
    50 Post(s)
    Tagged
    2 Thread(s)
    I've been working on my own version that works with all 3 exported file formats.
    But that is NOT required. As long as it works with at least one of them it's fine.
    This is big news... the text above made it sound like Text was required and the others were possible additions! Thanks.

  6. #6
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)
    Quote Originally Posted by Stomme poes View Post
    This is big news... the text above made it sound like Text was required and the others were possible additions! Thanks.
    I'm glad it came up soon then. Using "and/or" is one of my grammatical idiosyncrasies (eg. like using (...) and "..."). I know what I mean, so I figure others will too. As old as I'm getting to be I should know better, but that's another idiosyncrasy

    But no, working with one, two, or all three formats is fine. TBH I just finished writing my own text file parser class and I'll be impressed if anyone takes that route.

    Also, I've though of another Bonus Point
    I have no trouble reading bbCode tags, but if anyone wants to change them to HTML tags for the rendered display, go for it!

  7. #7
    SitePoint Author silver trophybronze trophy
    wwb_99's Avatar
    Join Date
    May 2003
    Location
    Washington, DC
    Posts
    10,625
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    If I were to submit one, it would be

    * ASP.NET 4 MVC based
    * Run with a few open source libraries to handle details of file parsing and search (will be statically included, no config for the judges)
    * If I were to use a database, it would be MSSQL express.

    Would that be acceptable?

  8. #8
    SitePoint Member
    Join Date
    Jul 2010
    Location
    Raleigh, NC
    Posts
    6
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'll give the contest a go. My current plan is to use Turbogears 2.1 which is a full-stack, Python web framework.

    Looking forward to hopefully getting something submitted.

  9. #9
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)
    Quote Originally Posted by wwb_99 View Post
    If I were to submit one, it would be

    * ASP.NET 4 MVC based
    * Run with a few open source libraries to handle details of file parsing and search (will be statically included, no config for the judges)
    * If I were to use a database, it would be MSSQL express.

    Would that be acceptable?
    One of the judges has given their thumbs up Go for it!!

  10. #10
    SitePoint Wizard bronze trophy
    Join Date
    Jul 2006
    Location
    Augusta, Georgia, United States
    Posts
    4,139
    Mentioned
    16 Post(s)
    Tagged
    3 Thread(s)
    My builds platform requirements will be as follows:

    PHP 5 w/ SimpleXML, DomDocument & XSLTProcessor (1.0)

    acceptable?
    The only code I hate more than my own is everyone else's.

  11. #11
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)
    Quote Originally Posted by oddz View Post
    My builds platform requirements will be as follows:

    PHP 5 w/ SimpleXML, DomDocument & XSLTProcessor (1.0)

    acceptable?
    SimpleXML and DomDocument are enabled by default - no problem there
    XSLTProcessor is included but not enabled by default - easy enough for tech savvy members but it might be beyond other's capabilities.

    If you can get it to work OK without XSLTProcessor and have that as an enhancement for those that have (or can get) it enabled that would be perfect.

    Otherwise if you include instructions on how to enable it - ie. a README - I think that should be OK too.

    The primary intent of the Must be able to be run on a typical localhost server requirement is that the application should be easy enough so that members can upload it and run it - without any additional Installation process that might be too complicated for them to deal with.

  12. #12
    SitePoint Wizard bronze trophy
    Join Date
    Jul 2006
    Location
    Augusta, Georgia, United States
    Posts
    4,139
    Mentioned
    16 Post(s)
    Tagged
    3 Thread(s)
    hmmm…

    I was thinking of using XSL for mostly the entire thing. Just use PHP to create "dynamic xpath" queries and inject some control and request variables into the template. I'll see what I can dig up on enabling it though considering my approach has a heavy reliance on it.
    The only code I hate more than my own is everyone else's.

  13. #13
    billycundiff{float:left;} silver trophybronze trophy RyanReese's Avatar
    Join Date
    Oct 2008
    Location
    Whiteford, Maryland, United States
    Posts
    13,564
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)
    Do..I want to do this or not...after I come home from Nationals I'll come see if I can whip something up and how long it'll take me..said the same thing about the sitepoint book writing stuff and I never got around to that either
    Twitter-@Ryan_Reese09
    http://www.ryanreese.us -Always looking for web design/development work

  14. #14
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)
    I use Notepad++ for developing. I wrote one in PHP that works with all 3 formats - Text, CSV, and XML in about 20 hours. The text format being the hardest for me.

    Having it work with all 3 formats is NOT a requirement. As long as it works with one format it's fine.

    Of course mine isn't designed very classy looking, but it's completely functional.

    My suggestion is to "sign up" here to see if it's OK before you write any code. Once approved, take your time and do a good job at it. Use any remaining time before the closing deadline to polish it up. And submit it close to, but careful, not after, the deadline.

  15. #15
    om nom nom nom Stomme poes's Avatar
    Join Date
    Aug 2007
    Location
    Netherlands
    Posts
    10,271
    Mentioned
    50 Post(s)
    Tagged
    2 Thread(s)
    I'll give the contest a go. My current plan is to use Turbogears 2.1 which is a full-stack, Python web framework.
    Python's jawsome. I want to see this.

  16. #16
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)
    OK!

    So far it looks like 3 have been given the go ahead!

    wwb_99
    ASP.NET 4
    oddz
    PHP 5
    KamiQuasi
    Python



    I was expecting to see PHP, PHP, PHP, PHP ..... so it's a very pleasant surprise for me to see there's interest in other languages.

  17. #17
    SitePoint Enthusiast
    Join Date
    Aug 2005
    Posts
    32
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I simply open the xml file in Open Office Calc, delete the ones I don't want to keep and re-save the file. Results are comparable to most solutions that are likely to be developed.

    Development time: less than 1 second.
    Dependencies: Open Office or MS Excel.
    Installation time: 0 - 2 minutes depending on whether open office or excel is installed.

  18. #18
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)
    Hmmmm, That sounds more like an OS app than a localhost app.

    But if it works for you, no problem there.

  19. #19
    SitePoint Wizard bronze trophy
    Join Date
    Jul 2006
    Location
    Augusta, Georgia, United States
    Posts
    4,139
    Mentioned
    16 Post(s)
    Tagged
    3 Thread(s)
    I would like to scratch XSL in place of MySQL 5. Is that alright? is it alright to assume people know how to create a database and set-up a user with password? Than change authentication data in a XML config file for the app to connect to the db?
    The only code I hate more than my own is everyone else's.

  20. #20
    SitePoint Guru Chroniclemaster1's Avatar
    Join Date
    Jun 2007
    Location
    San Diego, CA
    Posts
    784
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Mittineague View Post
    Hmmmm, That sounds more like an OS app than a localhost app.

    But if it works for you, no problem there.
    Maybe I'm misunderstanding the point of the application. Can I get some clarification? It sounds like these are the project requirements.

    Project Purpose: You want to be able to create a dump of your PMs from Sitepoint because you've nearly maxed out your PM space. Then you want a utility to operate on that dump and give you the same basic functionality to access, read, and search the PMs similarly to if you were on Sitepoint. All this for the purpose of being able to save those messages locally, while deleting them all (or most) off Sitepoint so you can start collecting a whole new batch of PMs.

    Secondary Requirements
    # The application needs to be easy for people to install locally on their computers.

    Is that correct?

    If so, don't the secondary requirements scream desktop application? I realize we're mostly web developers here, but do you really think the web designers, the SEO specialists, the content writers, etc., etc. have the foggiest notion of how to setup a local server, PHP, a development database, etc.? I would assume that even if you can't use Open Office or MS Office, you would at least want a solution that you can download, run the installer (or at most unzip the files), and use.

    This seems like a situation where a project looks like a web project only because we all write web projects. If I were going to work on something it would probably be Visual C# based winforms / WPF solution. That results in an executable file which can be easily downloaded. Not sure I have the knowledge to get deeply enough into winforms for a 14 day project though.
    Whatever you can do or dream you can, begin it.
    Boldness has genius, power and magic in it. Begin it now.

    Chroniclemaster1, Founder of Earth Chronicle
    A Growing History of our Planet, by our Planet, for our Planet.

  21. #21
    Twitter: @AnthonySterling silver trophy AnthonySterling's Avatar
    Join Date
    Apr 2008
    Location
    North-East, UK.
    Posts
    6,111
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)
    @Oddz, SQLite viable? Via PDO. Might save you some 'chew'.

    I was thinking of XSLT myself actually, it would have made the sorting a breeze.
    @AnthonySterling: I'm a PHP developer, a consultant for oopnorth.com and the organiser of @phpne, a PHP User Group covering the North-East of England.

  22. #22
    SitePoint Wizard bronze trophy
    Join Date
    Jul 2006
    Location
    Augusta, Georgia, United States
    Posts
    4,139
    Mentioned
    16 Post(s)
    Tagged
    3 Thread(s)
    Personally, I think its more viable for most people to have/get PHP w/ XSLTProcessor then PHP and MySQL known configuration. Especially if your talking the non-programmers. I think keeping this a non-database driven application is critical. That is why I would prefer to to use XSL and XPath which just seems right considering the XML Import format, efficiency and set-up factor. II mean all the requirements of the project can be achieved using XSL w/ some clever Dynamic XPath manipulation using string replace functions.
    The only code I hate more than my own is everyone else's.

  23. #23
    SitePoint Guru Chroniclemaster1's Avatar
    Join Date
    Jun 2007
    Location
    San Diego, CA
    Posts
    784
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by oddz View Post
    Personally, I think its more viable for most people to have/get PHP w/ XSLTProcessor then PHP and MySQL known configuration. Especially if your talking the non-programmers. I think keeping this a non-database driven application is critical.
    I should probably stop thinking about this, but in Visual C#, I think there's a way to create an MSSQL database as a .mdf file and just bury it inside the single executable file. It effectively creates a database inside the app. Is there a way to create a portable version of MySQL that's similar to that? I don't know of any way, but then I've only built production quality web projects before, not a desktop app.
    Whatever you can do or dream you can, begin it.
    Boldness has genius, power and magic in it. Begin it now.

    Chroniclemaster1, Founder of Earth Chronicle
    A Growing History of our Planet, by our Planet, for our Planet.

  24. #24
    Programming Team silver trophybronze trophy
    Mittineague's Avatar
    Join Date
    Jul 2005
    Location
    West Springfield, Massachusetts
    Posts
    17,022
    Mentioned
    187 Post(s)
    Tagged
    2 Thread(s)
    Quote Originally Posted by oddz View Post
    I would like to scratch XSL in place of MySQL 5. Is that alright? is it alright to assume people know how to create a database and set-up a user with password? Than change authentication data in a XML config file for the app to connect to the db?
    As long as the application can work with at least one file format, feel free to add any database you like as a "Bonus Point". That way those that can't/don't have a database can still use it, but for those that do, they can.

    Personally, if I was writing this for only myself, using a database would be my first preference. But I worry that requiring a database might complicate matters for some members.

    Quote Originally Posted by Chroniclemaster1 View Post
    Maybe I'm misunderstanding the point of the application. Can I get some clarification? It sounds like these are the project requirements.

    Project Purpose: You want to be able to create a dump of your PMs from Sitepoint because you've nearly maxed out your PM space. Then you want a utility to operate on that dump and give you the same basic functionality to access, read, and search the PMs similarly to if you were on Sitepoint. All this for the purpose of being able to save those messages locally, while deleting them all (or most) off Sitepoint so you can start collecting a whole new batch of PMs.

    Secondary Requirements
    # The application needs to be easy for people to install locally on their computers.

    Is that correct?

    If so, don't the secondary requirements scream desktop application? I realize we're mostly web developers here, but do you really think the web designers, the SEO specialists, the content writers, etc., etc. have the foggiest notion of how to setup a local server, PHP, a development database, etc.? I would assume that even if you can't use Open Office or MS Office, you would at least want a solution that you can download, run the installer (or at most unzip the files), and use.

    This seems like a situation where a project looks like a web project only because we all write web projects. If I were going to work on something it would probably be Visual C# based winforms / WPF solution. That results in an executable file which can be easily downloaded. Not sure I have the knowledge to get deeply enough into winforms for a 14 day project though.
    Actually the purpose is to have better functionality than what's found in vBulletin. AFAIK there's no way to search PMs for Date: To: From: Title: or Message: content. If there is, please let me know.

    True enough that a desktop app would be easier to install. But I think it would be harder to write something that would run on a majority of members' Operating Systems. As SitePoint is a web developer forum as opposed to an OS developer forum, I think such an approach is justified.

    Maybe I'm wrong, but it's a contest not a project per se. Though maybe writing a desktop app would be a good idea for another contest? Or maybe you could write one and market it? Such is the makings of successful entrepreneurship.

    Quote Originally Posted by oddz View Post
    Personally, I think its more viable for most people to have/get PHP w/ XSLTProcessor then PHP and MySQL known configuration. Especially if your talking the non-programmers. I think keeping this a non-database driven application is critical. That is why I would prefer to to use XSL and XPath which just seems right considering the XML Import format, efficiency and set-up factor. II mean all the requirements of the project can be achieved using XSL w/ some clever Dynamic XPath manipulation using string replace functions.
    I agree that requiring a database is likely to be more troublesome than enabling XSLTProcessor. As I mentioned before, it's included, just not enabled by default. But if you state it as a requirement and include instructions on how to enable it in a README I don't see any problems with going that route.

  25. #25
    SitePoint Addict NetNerd85's Avatar
    Join Date
    Aug 2005
    Location
    Australia
    Posts
    298
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hrmmm, thinking about it... How about an Adobe Flex app with PHP? actionscript anyone?
    a new day, a new beginning
    never follow the crowd, the crowd is poor!


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •