PHP project
$95-100 USD
Pagato alla consegna
Need 9 PHP functions.
## Deliverables
Before bidding, please make sure that you READ THE WHOLE DESCRIPTION OF THE PROJECT !!!
I need the secondary coder of the same project, which is already up (check my profile for details of entire software). Some time needs to be saved with coding and therefore the software would be done faster. So I would like the secondary coder to do some functions of the software.
If you would like to see a code before bidding, no problem, let me know please.
If you would like to try the software via remote desktoping before bidding, no problem, let me know.
There might be some misunderstanding of what is your, as secondary coder's work and what is not your work (but it is work of primary coder). So whatever you would like to make sure, ask me, I will answer as soon as possible on every single question.
You have NO further obligation - so its totally your decision.
I need the secondary coder for the software which is already being created. The software, which is being done ( ! ), creates the list of links based on two methods. First method is one link = one folder (so per each folder it creates one link). Second is one link = one file (so per each file it creates one link). In the first method software picks up the words from relevant and exactly definited parts of ID3v2 tags (of EACH file located in the folder) as well as words from filenames (the ones that are NOT already in relevant ID3v2 tags) and also foldername (usually are all words in foldername located either in ID3v2 tags or filenames so there is not much to do with foldernames). When all words are used, they are combined together and used as a Searching Keyword on definited websites (databases). In two different .txt files are words that should NOT be searched (one per line, in one line can also be several words such as "mash up"). So this software, which is being done, removes from Searching Keyword (all words that should be searched), the ones that are definited in those two .txt files. In the second method (one link = one file), the rules are the same, the only difference is that the software doesn't "see" the folder because it works only with one file at a time and NOT one folder at a time. I determinate in the software which method I want. The main goal of the software is to go through folders (some are eliminated from the process) or through the files (method one file = one link) and provide all the links found. If in the first method (one link = one folder) is link NOT found on any website where Searching Keyword (consist of several words) is searched then the foldername is provided but on exact line, in the html file (list of all clickable links) comparing to where the link (on which line), that wasn't found, should be located. If in the second method (one link = one file) is file NOT found (according to Searching Keyword) then the filename ( !!! ) is provided.
There are many features coded already, many small functions are also coded so the features could be implemented. The code is being written and updated every day, also new features are being implemented. So the code is changing from day to day towards being done.
If you need entire description of the software that is being done, check my user profile and request opened.
What I need and the reason for opening this project request, is:
I would like to have few functions written so they can be added to the code which is being done (php). When coder will be finished with all functions, I will provide the current code. What I will need is to provide me the several functions (one function for one file sent) which Im going to describe AND ( !!! ) also where, into the code, should they be pasted. Once I get the correctly written functions AND information, for each of the functions, where do they need to be pasted, I will wait for confirmation from primary coder that this works. After I get the confirmation, I will also test on my own. If all will be good, I will accept the project and you (whoever I will choose as secondary coder) will get my payment.
So what I need are the following 9 functions:
1. permanently (without moving to recycle bin) delete the folder(s), located on hard drive, whose foldername(s) I remove (after saving) in the list of links. The function is only relevant for method one folder = one link. So I delete the line in the list of links (in the txt file). For example:
I have the following folders:
folder1
folder2
folder3
folder4
folder5
In the list of links are the following links (where is foldername instead of link that means the link was NOT found when searching on websites):
link for folder1
folder2's
link for folder3
link for folder4
link for folder5
So AFTER ( ! ) I save the .txt file (no matter as back into txt or as a html) and IF the list of links will look like (note the second line is gone):
link for folder1
link for folder3
link for folder4
link for folder5
then the folder "folder2" must be permanently deleted from hard drive. This is because I removed it from the list AND saved the list.
I will let you know where on hard drive are folders located.
--------------------------------------------------------
2. Before the link is provided, additional function must be written. This function ensures that the number of files equals number of entries on the link which would be provided. The function is only for method one folder = one link. Explanation of what do I mean with "entries" is the following:
- website Discogs
example: [url removed, login to view]
In this example are 3 entries. Note the number of lines under "Tracklist". So in the folder, that would cause this link being provided, must be exactly 3 files. If they are 3, the link can be provided. If NOT exactly 3 that the software should continue with searching (on all websites) if something else matches Searching Keyword and has exactly 3 entries. If nothing then the foldername should be provided. Where, in the list, will be foldernames provided is not your task.
- website Junodownload
example: [url removed, login to view]
In this example are 2 entries. Note the number of lines under "Title"
- website Audiojelly
example: [url removed, login to view]
In this example are 4 entries. Note the number of lines under "Tracks In This Release"
- website [url removed, login to view]
example: [url removed, login to view]
In this example are 4 entries. Note the number of lines under "Tracks"
- website [url removed, login to view]
example: [url removed, login to view]
In this example are 4 entries. Note the number of lines under "track title"
- website [url removed, login to view]
example: http://www.somixx.com/en/eps/profile/Sacred+Heart+EP
In this example are 4 entries. Note the number of lines under "track artist(s) genre(s) price rate"
If you wonder why exactly those sites and why 6 if I mentoined 8 in my original project request. The answer is because I removed 3 websites and added 1 more.
KEEP IN MIND THAT DOING SEARCHES AND DETERMINATING WEBSITES IS NOT (!) YOUR TASK!
--------------------------------------------------------------
3. Function that will remember to which folder does specific link belong to. The function is relevant only for method one folder = one link. In this list can also foldernames appear and also filenames. DETERMINATING FOLDERNAMES AND FILESNAMES AS WELL AS LINKS IS NOT YOUR TASK !!!!
What I need done here is the function that "records" link per which folder (method one folder = one link) or per which file (method one file = one link) does it belong to. Example (for folders, same rule is for files):
I have 5 folders:
folder1
folder2
folder3
folder4
folder5
They contain different amount of files.
I have two softwares, lets call them software X (the one which is being done) and software Y (some other software).
Example:
I have folders:
(folder1
[ folder2
[folder3
8folder4
aa folder5
List of links is then the following:
(folder1's link
[ folder2's link
[folder3's link
8folder4's link
aa folder5's link
Presuming that the [folder3's link wouldn't be found, the list of links would look like this:
(folder1's link
[folder2's link
[folder3
8folder4's link
aa folder5's link
Note that in the third line is actual foldername instead of link that hasn't been found.
Software Y has also a number of features but I will mentoin only relevant one:
- picks up each link in the list of links and, based on some words that appear on the webpage of this link, it tags the foldername (so it changes its name) and filenames inside that folder. It is extremly important ( ! ) that it tags the correct folder based on the link to which it belongs. Thats why the list of links must equal (from order point of view) to the list of folders. Some of the folders are eliminated from tagging process but this doesn't matter to my question.
Also when exactly the foldernames and their files gets renamed - before or after moving of those folders (moving and NOT copying!) from one to another location of hard drive is totally irrelevant. Also if there is any dragging and dropping process involved and how do they end, after being dropped - as the folders or just as the big group of files that have been located before, in all folders together, is irrelevant.
So again: I expect from third function that it will just make the software "remember" to which folder or file does specific link belongs. Thats all!
------------------------------------------------
4. Function that will equal "4" and "for". What I need done is the function that will check if in Searching Keyword is either number "4" or word "for". For example if the Searching Keyword is the following:
word1 word2 word3 4 word4 word5
and IF the link isn't found on this exact Searching Keyword then the function should convert "4" into "for" and search again for the link but with the Searching Keyword:
word1 word2 word3 for word4 word5
Another example:
If the Searching Keyword is the following:
word1 word2 word3 word4 word5 word6 for
and IF the link isn't found on this exact Searching Keyword then the function should convert "for" into "4" and search again for the link but with the Searching Keyword:
word1 word2 word3 word4 word5 word6 4
Same should be checked "2" and "to" (but not "two" because this is the part of 6th function).
Also the same should be checked for ''+'' and ''plus''.
-------------------------------------------------------
5. As the fifth function, I need function that will care for one of the most often reason for mistypen words; they are either wrongly separated or combined. So the function should take care for separating and combining words. For example if the Searching Keyword is the following:
first word something alex your telephone
and IF the link isn't found on this exact Searching Keyword then the function should also either separate or combine the words that are near each other and try also those combinations of Searching Keyword. For example:
firstword something alex your telephone
or
first word some thing alexyour telephone
or
firstword something alex your tele phone
and so on. Note the difference in spacing. The function should take care for this.
-----------------------------------------------------------
6. As the sixth function I need the function that will care for numerical numbers from 0 to 9 and its words (zero, one, two, three, four, five, six, seven, eight, nine). It doesn't matter where those words or numbers appear. So for example if the Searching Keyword is:
something somebody 5 word
and IF the link isn't found on this exact Searching Keyword then the function should also take care for the numerical word and replace it with its word. Therefore the following Searching Keyword will be searched:
something somebody five word
Another example:
If the searching keyword is:
something six somebody word 5
and IF the link isn't found, both Searching Keywords should also be tried:
something 6 somebody word 5
if link still isn't found then try:
something 6 somebody word five
if link still isn't found then try:
something six somebody word five
Another example can be with several numerical numbers or several words:
something somebody word 124 here
If link isn't found, function should try the Searching Keyword:
something somebody word onetwofour here
If link still isn't found, function should try the Searching Keyword (with a spaces):
something somebody word one two four here
Same is for words. For example Searching Keyword is:
something somebody word onetwofour
If link isn't found function should try:
something somebody word one two four
or
something somebody word 124
or
something somebody word 1 2 4
So this function should take care for numerical numbers and their words.
-----------------------------------------------------------
7. Software is already working with 2 txt files, another one will be still added and it will NOT be your task. But the 7th function should work with fourth added txt in BOTH method (one folder = one link and also one file = one link). Your task is to add another .txt file and name it "file_d". Put the following words inside:
meet
meet.
meets
meets.
presenting
presenting.
presentin
presentin.
presentin'
pres
pres.
presents
presents.
present
present.
All those 15 words are in the list of words that should NOT be searched. To explain this function, I will chose the random line which is "meets.". The same should work for any other line out of those 15 lines. Software is first gathering words from relevant ID3v2 tags. This function, which I need, should work only with filenames. By default if the filename is:
something_meets._somebody_-_another_words_here
The Searching Keyword will be:
something somebody another words here
What I need in this function is:
IF the link is NOT found then the function should remove from searching the first closest word on the right side, in this case "somebody". So the Searching Keyword will be:
something another words here
IF the link is still NOT found that the function should remove the first closest word on the left side (if nothing is on the right side, so if "meets." is already the first word of filename then simply skip this) BUT the first closest word on the right side should be bring back in. So the Searching Keyword would be:
somebody another words here
In case IF the list is still NOT found and IF (so now we have TWO conditions that must be met) before "meets." is more than one word (the ones that should NOT be searched, determinated in file_a, file_b and file_d does NOT count) then try to remove from Searching Keyword ALL the words that are in filename(s) located BEFORE "meets."
something_somewhere_meets._somebody_-_another_words_here
Therefore the Searching Keyword would be:
somebody another words here
In case IF even this doesn't provide the link and IF (again TWO conditions that must be met) before the word "meets." is more than one word (again, words that should NOT be searched don't count) then last chance, before providing foldername instead of the link (THIS IS NOT YOUR TASK, providing foldername is already done) is to search with ALL the words located BEFORE the word "meets." but remove the first word on the right side of "meets.". So since the filename is:
something_somewhere_meets._somebody_-_another_words_here
the last chance of providing the link is the following Searching Keyword:
something somewhere another words here
---------------------------------------
8. Function that will equal "va" and "various". Example; If the Searching Keyword is:
first second third va fifth
and IF the link is not found, then try the Searching Keyword:
first second third various fifth
Another example; If the Searching Keyword is:
first second third various fifth
and IF the link is not found, then try the Searching Keyword:
first second third va fifth
-------------------------------------------
9. If any word in the Searching Keyword ends with either "in" or "in' " (note: the space is added just because of better vision) and IF the link isn't provided then change this word(s) to end with "ing" instead. So for Searching Keyword by default would be:
something somebody startin somewhere word
IF I got no link for this, try:
something somebody starting somewhere word
Thats it. The first, second and third function are only for method one folder = one link, the rest of functions are for both method. Never matters case-sensitivity.
Rif. progetto: #3178966