I need a custom desktop application (with preferable built in ftp functions) that can do the following –
(MUST HAVE A GOOD USER INTERFACE. Browsing folders for files input should be convenient.)
1. Take following as inputs -
—————————
a). Keywords
————
User would be given an option to browse a file on desktop. Selecting it will display all the contents in the app’s ‘keywords interface’. (Usually keyword phrases one per line). User can edit those contents.
This interface should be large enough to see all the contents/lines conveniently and edit comfortably.
User can add or remove keywords.
(After clicking Run in 2nd step – the app should save this file as t_keyword.words) => (“Words” is the extension here)
b. Base Url
———–
It will be defined something like www.domain.cm or domain.cm
User will input in an interface. This interface can be small.
(After clicking Run in 2nd step – the app should save this file as t_baseurl.words) => containing user input entry
(At the same time it will save another file named t_url.words which will have the following content –
<a href=”http://www.domain.com/all-entries-of-t_keyword.words” title=entry>entry</a>
or
http://domain.cm/ in place of http://www.domain.cm
(depending on t_baseurl entry input by user ie. www.domain.cm or domain.cm)
so if these are some of the entries in t_keyword.words –
many other nutrients
Fiber Cleanse 240 Capsules
maintain optimal bodily function
and so on..
it should have this created in t_url.words ==>
<a href=”http://domain.cm/many-other-nutrients.html title=”many other nutrients”>many other nutrients</a>
<a href=”http://domain.cm/Fiber-Cleanse-240-Capsules.html title=”many other nutrients”>Fiber Cleanse 240 Capsules</a>
<a href=”http://domain.cm/maintain-optimal-bodily-function.html title=”many other nutrients”>maintain optimal bodily function</a>
Notice the dash “-” in between the words. where domain.cm is the entry in t_baseurl.words
Also there should be option to include “title” attribute or not(input by user.)
c. File t_lt.words
——————
User would be given an option to browse a file on desktop. Selecting it will display all the contents in the app’s ‘keywords interface’. (Usually keyword phrases one per line). User can edit those contents.
This interface should be large enough to see all the contents/lines conveniently and edit comfortably.
User can add or remove keywords.
(After clicking Run in 2nd step – the app should save this file as t_lt.words)
d. t_lsi
——–
User would be given an option to browse a file on desktop to be selected. No loading of contents required.
(After clicking Run in 2nd step – the app should save this file as t_lsi.words)
e. t_sentence
————-
User would be given an option to browse a file on desktop to be selected. No loading of contents required.
(After clicking Run in 2nd step – the app should save this file as t_sentence.words)
f. t_lsicontent
—————
User would be given an option to browse a file on desktop to be selected. No loading of contents required.
(After clicking Run in 2nd step – the app should save this file as t_lsicontent.words)
g. t_fanto
———-
User would be given an option to browse a file on desktop to be selected. No loading of contents required.
(After clicking Run in 2nd step – the app should save this file as t_fanto.words)
h. Template file
—————-
User would be asked which “folder” to take ‘template files’ from. User can browse for the folder on the desktop and select it.
User would be asked which “files and folder” to take from that folder. User can click on the ‘files’ and ‘folder’ from that folder. Usually it will be a file like ‘template.template’ and folders like “images’ and “css”. Usually 1 template file and 1 images/css folder will be selected. Sometimes there can be 2 folders – 1 images and 1 css. So better to give wider options where user can just browse for the folder and click on required files and folders.
i. htaccess file
—————-
User would be given an option to browse a file on desktop to be selected. No loading of contents required.
(After clicking Run in 2nd step – the app should save this file as “.htaccess”)
j. Other file (Optional input crieria)
————-
User would be given an option to browse a file/create a file/edit it’s contents. Not necessary but recommended. Otherwise just ask for user to browse and select a file.
===============================================
APPLICATION CAN SAVE ALL THOSE DATA IN IT’S CUSTOM DATA FOLDER OR AS YOU DESIRE TO CODE. BUT IF IT DOES SAVE DATA IN IT’S FOLDER THERE SHOULD BE OPTION TO DELETE CONTENTS OF IT’S DATA FOLDER. IT IS REQUIRED AS THE APPLICATION MAY BE RUN HUNDREDS OF TIMES AND THE DATA MAY CLOG UP IN THE FOLDER – IT’S SIZE WILL INCREASE.
ALSO THERE CAN BE SOME RUNS WHERE PREVIOUS DATA CAN BE UTILIZED SO AUTOMATIC DELETION OF DATA IS NOT RECOMMENDED UNTIL THE APP. IS CLOSED AT LEAST ONCE.
================================================
2. Running the app.
——————-
After all the inputs have been made, the app. will be run.
User will click on the button “Run and Create Files”.
All necessary changes will be made as in step 1.
3. Uploading
————-
User will input the ftp details. Following inputs required –
ftp : ftp.domain.com or ip-address
username:
pass:
(i) Directory for template images/css – input by user usually /public_html/folder-name/ or /public_html/
[[Here the "template images/css folder/folders" from step h.(not the template.template file) and the ".htaccess" file from step i. will be uploaded.]]
(ii) Directory for other files :- input by user usually /public_html/folder-name/cgi-bin/ or /public_html/cgi-bin/
[[Here all other files input by user in step 1 and created in step 2 will be uploaded. ]]
(iii) Core files uploading –
(a) user will input which directory to upload the contents – it will usually be either /public_html/folder-name/ or /public_html/folder-name/cgi-bin/
(b) User will be asked to browse and select for a folder on desktop. All the contents ie.. all the “files and folders” in that folder will be uploaded to Remote Directory input in step (a). User will also be given an option if he wants to change permissions on any of the files selected from the folder.
User will select those files and input their respective permissions usually 755 etc.. All the contents will be uploaded normally and those particular files(with changed permissions) after being uploaded will be CHMOD accordingly!
(iv) Other files (Optional)
User will select the file from desktop and input which directory to upload the slected file.
User will finally click on “Upload files” button and respective uploading actions will be done!
4. Testing
———–
User will click on “test” button and a sample url will appear on the user interface as a clickable html link. This link will be nothing but any random entry from the file t_url.words
You can see it will be an html link. User can click on that link and be taken to the web-page it links to.
If everythig is good, User will click on “Project successful” button and One run of the app. will be over.
Besides the entry in the t_baseurl.words along with “ftp data” and “the template directories options in step 3″ will be stored in the app. memory database of successful projects. THIS DATA IS NOT TO BE DELETED. Data should be saved in this form –
http://t_baseurl/
ftpdetails ie. ftp “ip address(ftp.domain-name)”,username,pass..
Directory for template images/css
User can always see the successful projects list in a drop-down menu. He can also see the 3 data stored.
He can also export the list either all 3 data or only the http://t_baseurl/ or copy-paste all successful http://t_baseurl/ data from an interface.
5. Making Changes
—————–
If testing was not OK. User can make some changes in the input options fields above in step 1 or step 3.
HE CAN UPLOAD FILES AGAIN. ONLY CHANGED INPUT OPTIONS should be executed this time. For example user changed the keyword file , then clicked on Run and create files – “only the new created keyword file must be created and uploaded this time.”
(THIS SAVES TIME)
Similarly if the user changes the options for “Core files uploading” in step 3. ie. the folder whose contents have to be uploaded and/or the remote directory where contents will be uploaded- only those
should be uploaded and only respective function should be executed in the “Application Run” in the “making changes” phase.
6. User input fields remembrance
———————————
When the application is closed and started again it should remember the last fields input by user and fill those automatically. OR something like which auto-fills the content in test-fields by remembering the data previoulsy entered eg. the ftp details. Not compulsary but good! Also the option to load the data ie. “3 data” related to successful http://t_baseurl/ will be good. Therafter the user can just change fields.
“Browsing folders” inbuilt in the app. interface should be fast and convenient.
Give me ur best bids! Hope you’ll be there in case I require debugging, tweaks, etc.