text:
Q: How to get a text file to split by a string in different RichTextBoxes? My Textfile looks like this:
(-*-)
textA1
textA2
textA3
(-*-)
textB1
textB2
textB3
(-*-)
textC1
...

Now i try to get the Textfile split up by the (-*-) string (<-it´s always this in the Textfile!) and show it in different richtextboxes.
I use actually following Code...
Tried with datatable, stringbuilder, iList...
My Goal is to get all textA in richtextbox A, textB in richtextbox B and so on...
 private void öffnenToolStripMenuItem_Click(object sender, EventArgs e)
    {
        var seiten = new List<string>();

        if (oFDOpenDatei.ShowDialog() == DialogResult.OK)
        {
            using (StreamReader sr = new StreamReader(oFDOpenDatei.FileName))
            {
                while (!sr.EndOfStream)
                {
                    string[] read = sr.ReadLine().Split(new string[] { "(-*-)" }, StringSplitOptions.None);

                    for (int i = 0; i < read.Length; i++)
                    {
                        seiten.Add(Convert.ToString(read));
                    }

                    //foreach (var item in read)
                    //{
                    //    seiten.Add(Convert.ToString(item));
                    //}
                }
                sr.Close();
            }

            rTBA.Text = seiten[0][0].ToString();
            rTBB.Text = seiten[1][0].ToString();
        }
    }

-the activ "for" statment shows a "S" in both richtboxes ... for whatever reason :))
-the foreach says out of index, but when i check the array.lenght, it shows me 1 at A and 2 at B ... not more
can someone please get me on the right track!?

A: First of all, it looks like you want your list to contain array-of-string elements, not string elements. In this case, it should be of type List<string[]>.
Second, when you use ReadLine(), it returns only one line. If you wish to split based on a specific line, you need to read multiple lines.
Here's an easy solution with LINQ:
var seiten = new List<string[]>();
var allLines = File.ReadAllLines(oFDOpenDatei.FileName);

int consumedLines = 0;
while (consumedLines < allLines.Length)
{
    var group = allLines.Skip(consumedLines).TakeWhile(s => s != "(-*-)").ToArray();
    if (group.Any()) seiten.Add(group);
    consumedLines += group.Length + 1;
}

If you don't need access to individual lines of the same group, then you can still use a List<string> and adjust the above code to something like this:
var seiten = new List<string>();
var allLines = File.ReadAllLines(oFDOpenDatei.FileName);

int consumedLines = 0;
while (consumedLines < allLines.Length)
{
    var group = allLines.Skip(consumedLines).TakeWhile(s => s != "(-*-)").ToArray();
    if (group.Any()) seiten.Add(string.Join(Environment.NewLine, group));
    consumedLines += group.Length + 1;
}

rTBA.Text = seiten[0];
rTBB.Text = seiten[1];

References:

*

*File.ReadAllLines.

*Enumerable.Skip.

*Enumerable.TakeWhile.

*Enumerable.Any.

A: using Regex
    string[] result = Regex.Split(input, @"(\(-\*-\))",
                               RegexOptions.IgnoreCase,
                               TimeSpan.FromMilliseconds(500));

A: Alternative method. All lines are read from the source text file, then assigned to each member of a List<TextBoxBase> (you can include both RichTextBox and TextBox controls), using a selector which is incremented each time a string pattern is found.
If the number of controls in the list is less than number of groups in the text file, the loop will fill only the controls listed then break out.
int groupID = -1;
string pattern = "(-*-)";
List<TextBoxBase> controls = new List<TextBoxBase>() { rTBA, rTBB, rTBC };

string[] input = File.ReadAllLines("[File Path]");
for (int i = 0; i < input.Length; i++) {
    if (input[i].Contains(pattern)) {
        groupID += 1;
        continue;
    }
    if (groupID == controls.Count) break;
    controls[groupID].AppendText(input[i] + Environment.NewLine);
}


text:
Q: How to create a findAll() method in android How to create a findAll() in android ? I've tried this but I can not achieve it ;

public List findAll() {
      Cursor c = mDb.rawQuery( "select * from " + TABLE_NAME, "", "" ); }

Here is Medicament.java
public class Medicament {
    private long   id;
    private String nom;
    private String fabriquant;
    private String pharmacie;
    private String description;
    private float prix;

    public Medicament( long id, String nom, String fabriquant, String pharmacie, String description, float prix ) {
        super();
        this.id = id;
        this.nom = nom;
        this.fabriquant = fabriquant;
        this.pharmacie = pharmacie;
        this.description = description;
        this.prix = prix;
    }

    public long getId() {
        return id;
    }

    public void setId( long id ) {
        this.id = id;
    }

    public String getNom() {
        return nom;
    }

    public void setNom( String nom ) {
        this.nom = nom;
    }

    public String getFabriquant() {
        return fabriquant;
    }

    public void setFabriquant( String fabriquant ) {
        this.fabriquant = fabriquant;
    }

    public String getPharmacie() {
        return pharmacie;
    }

    public void setPharmacie( String pharmacie ) {
        this.pharmacie = pharmacie;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription( String description ) {
        this.description = description;
    }

    public float getPrix() {
        return prix;
    }

    public void setPrix( float prix ) {
        this.prix = prix;
    } }

EDIT: Please do not forget the return statement.
Thanks in advance.

A: Do this way
Cursor c = mDb.rawQuery( "select * from " + TABLE_NAME,null);

A: Try somethiing like that in Your SQLiteOpenHelper:
public List<Medicament> findAll() {
    List<Medicament> medicaments = new ArrayList<Medicament>();
    SQLiteDatabase db = this.getWritableDatabase();
    Cursor cursor = db.rawQuery( "SELECT * FROM " + TABLE_NAME,null);
    if (cursor.moveToFirst()) {
        do {
            Medicament medicament = new Medicament();

            /*fill here medicament object with values from row,
            cursor.getString(0) = id value, cursor.getString(1) etc...
            for example medicament.setName(cursor.getString(1))*/

            medicaments.add(medicament);

        }
        while (cursor.moveToNext());
    }
    return medicaments;
}

EDIT :
Remember to use methods properly for value type in a cell, for example for Integer values use cursor.getInt(COLUMN_NUMBER), for String cursor.getString(COLUMN_NUMBER) etc.

redpajama_set_name: RedPajamaStackExchange


text:
Q: Java Assignment. Find min, sum of odd integers, and count of negative integers Basically the output will tell the minimum integer, sum of odd integers,  and count of negative integers when the user inputs a list of numbers (Stops when user enters 0). I get the count of negative numbers correct but the problem I am encountering is that the sum of odd integers only adds when numbers are positive and the minimum integer always turns out 0.
This is my code
package example2;
import java.util.Scanner;
public class ex {

public static void main(String[] args)
{ Scanner sc = new Scanner(System.in);
int oddsum=0, min=0, negcount=0;
int number;
do
{

number=sc.nextInt();

    if(number< 0)
     {

        negcount++;

     }
    else if(number%2!=0)
     {
         oddsum+=number;
     }
    else if(number<min)
     {
         number=min;
    }

}while(number!=0);
 System.out.println("The minimum integer is "+min);
 System.out.println("The sum of odd integers is "+oddsum);
 System.out.println("The count of negative integers in the sequence is "+negcount);

}
}

A: You're using an if-else construct, meaning that only one of the branches will be executed. Instead, you should use separate if statements and evaluate each condition separately:
if (number< 0) {
    negcount++;
}

if (number % 2 != 0) {
    oddsum += number;
}

if (number < min) {
    min = number;
}

A: package example2;
import java.util.Scanner;
public class ex { public static void
main(String[] args)
{
Scanner sc = new
Scanner(System.in);
int oddsum=0, min=0, negcount=0;
int number;
do
{
number=sc.nextInt();
if(number< 0)
{
negcount++;
}
if(number%2!=0)
{
 oddsum+=number;
}
if(number<min)
{
min=number;
}
}while(number!=0);

System.out.println("The minimum
integer is "+min);

System.out.println("The sum of odd
integers is "+oddsum);

System.out.println("The count of
negative integers in the sequence is
"+negcount);
}
}

Also refer
How does java do modulus calculations with negative numbers?


text:
Q: Use pointer to member function to determine which function to call I have the following class:
class Karen
{
    public:
        Karen(void);
        ~Karen(void);

        void complain(std::string level);

    private:
        void    debug(void)     const;
        void    info(void)      const;
        void    warning(void)   const;
        void    error(void)     const;
};

The complain function receives a string that can contain the words debug, info, warning or error, and it has to call the appropriate function without using a  forest of if/elseif/else, using instead pointers to member functions. The prototype of complain is given to me. I am new to pointers to member functions and I am not sure how to manage this. One of my attempts is this:
void    Karen::complain(std::string level)
{

    std::string     *p = &level;
    void            (Karen::*f)(void)       const;

    (this->*(*p))();
}

The syntax of the last line is incorrect, but I am trying to do (this->*(content of pointer p))() and I don't know how to write this. Can someone help me?
Edit I am only allowed to use C++98

A: Syntax to call a member function via member function pointer is
(this->*memf)();

You cannot magically turn the string into a member function pointer. Sloppy speaking, names of functions do not exist at runtime. If you want such mapping you need to provide it yourself. No way around that. What you can avoid is the "forest of if-else" by using a std::unordered_map:
#include <unordered_map>
#include <string>
#include <iostream>

class Karen
{
    public:
        void complain(std::string level) {
            static const std::unordered_map<std::string, void(Karen::*)() const>  m{
                {"debug",&Karen::debug},
                {"info",&Karen::info},
                {"warning",&Karen::warning},
                {"error",&Karen::error}
            };
            auto it = m.find(level);
            if (it == m.end()) return;
            (this->*(it->second))();
        }

    private:
        void debug(void) const { std::cout << "debug\n"; }
        void info(void) const { std::cout << "info\n"; }
        void warning(void) const { std::cout << "warning\n"; }
        void error(void) const { std::cout << "error\n"; }
};

int main() {
    Karen k;
    k.complain("info");
}

Live Demo
As mentioned in comments, you could use an enum in place of the string. When possible you should use the help of the compiler, which can diagnose a typo in an enum but not in a string. Alternatively you could directly pass a member function pointer to complain. Then implementation of complain would be trivial, no branching needed. Though this would require the methods to be public and the caller would have to deal with member function pointers.

If you are not allowed to use C++11 or newer you should have a serious talk with your teacher. Soon C++20 will be the de facto standard and things have changed quite a lot. I am not fluent in C++98 anymore, so here is just a quick fix of the above to get it working somehow. You cannot use std::unordered_map but there is std::map and initialization of the map is rather cumbersome:
#include <map>
#include <string>
#include <iostream>

class Karen
{
    typedef void(Karen::*memf_t)() const;
    typedef std::map<std::string,void(Karen::*)() const> map_t;

    public:
        void complain(std::string level) {
            map_t::const_iterator it = get_map().find(level);
            if (it == get_map().end()) return;
            (this->*(it->second))();
        }

    private:
        const map_t& get_map(){
            static const map_t m = construct_map();
            return m;
        }
        const map_t construct_map() {
            map_t m;
            m["debug"] = &Karen::debug;
            m["info"] = &Karen::info;
            m["warning"] = &Karen::warning;
            m["error"] = &Karen::error;
            return m;
        }
        void debug(void) const { std::cout << "debug\n"; }
        void info(void) const { std::cout << "info\n"; }
        void warning(void) const { std::cout << "warning\n"; }
        void error(void) const { std::cout << "error\n"; }
};

int main() {
    Karen k;
    k.complain("info");
}

Live Demo

A: Let us start with the required includes.
#include <cassert>
#include <iostream>
#include <map>

Providing the log level as a string, can lead to errors, since the compiler cannot check for typos. Hence an enum::class would be a better choice for determining the log level.
enum class LogLevel {
  DEBUG,
  INFO,
  WARNING,
  ERROR
};

C++ does not offer a way to obtain a function pointer given a string. After compiling and linking the function names all have been replaced by their appropriate addresses in memory. Hence, we first need to store the function pointers, in a way that allows us to look them up as needed. For this purpose you can use a static class attribute, and store the function pointers in a std::map.
class Logger
{
    public:
        Logger();
        ~Logger();

        void complain(LogLevel level);

    private:
        void debug() const;
        void info() const;
        void warning() const;
        void error() const;

        using HandlerMap = std::map<LogLevel, void (Logger::*)(void) const>;
        static HandlerMap handlers;
};

Logger::HandlerMap Logger::handlers{
  {LogLevel::DEBUG, &Logger::debug},
  {LogLevel::INFO, &Logger::info},
  {LogLevel::WARNING, &Logger::warning},
  {LogLevel::ERROR, &Logger::error}
};

The complain method then just needs to look up the correct function pointer and call the method.
void Logger::complain(LogLevel level) {
  assert(handlers.find(level) != handlers.end());
  (this->*handlers[level])();
}

The remaining functions look as follows.
Logger::Logger() {}
Logger::~Logger() {}

void Logger::debug() const { std::cout << "debug" << std::endl; }
void Logger::info() const { std::cout << "info" << std::endl; }
void Logger::warning() const { std::cout << "warning" << std::endl; }
void Logger::error() const { std::cout << "error" << std::endl; }

int main(int argc, char* argv[]) {
  Logger k;
  k.complain(LogLevel::DEBUG);
  k.complain(LogLevel::INFO);
  k.complain(LogLevel::WARNING);
  k.complain(LogLevel::ERROR);
}

Note, if you insist on using strings, you can replace LogLevel by std::string and LogLevel::<member> by the corresponding string.

The same can be achived using C++98. However, you will need a bit more bootstrapping.
#include <cassert>
#include <iostream>
#include <map>

enum LogLevel {
  LL_DEBUG,
  LL_INFO,
  LL_WARNING,
  LL_ERROR
};

class Logger
{
    public:
        Logger();
        ~Logger();

        void complain(LogLevel level);

        typedef std::map<LogLevel, void (Logger::*)() const> HandlerMap;

        friend struct LoggerInit;
    private:
        void debug() const;
        void info() const;
        void warning() const;
        void error() const;

        static HandlerMap handlers;
};

Logger::HandlerMap Logger::handlers = Logger::HandlerMap();

struct LoggerInit {
  LoggerInit() {
    Logger::handlers[LL_DEBUG] = &Logger::debug;
    Logger::handlers[LL_INFO] = &Logger::info;
    Logger::handlers[LL_WARNING] = &Logger::warning;
    Logger::handlers[LL_ERROR] = &Logger::error;
  }
} logger_init;

void Logger::complain(LogLevel level) {
  assert(handlers.find(level) != handlers.end());
  (this->*handlers[level])();
}

Logger::Logger() {}
Logger::~Logger() {}

void Logger::debug() const { std::cout << "debug" << std::endl; }
void Logger::info() const { std::cout << "info" << std::endl; }
void Logger::warning() const { std::cout << "warning" << std::endl; }
void Logger::error() const { std::cout << "error" << std::endl; }

int main(int argc, char* argv[]) {
  Logger k;
  k.complain(LL_DEBUG);
  k.complain(LL_INFO);
  k.complain(LL_WARNING);
  k.complain(LL_ERROR);
}


text:
Q: How can I check for an invalid directory and return a 404? I am trying to place a .htaccess file in an httpdocs directory which I hope to use across a number of sites with a similar structure and end up with clean URLs for a number of scenarios.
I found a great recent post (Removing file extions(.html & .php) And Trailing Slash in Website URL) which gave me almost exactly what I was after but my experience with rewrites is very limited and I'm really struggling to find the last piece of the puzzle.
I have a number of conditions to pass for this to work completely;
pages with html extensions:
example.com/valid_page.html presents example.com/valid_page [pass]
pages without html extensions:
example.com/valid_page presents example.com/valid_page.html [pass]
example.com/valid_page/ removes slash and presents example.com/valid_page.html [pass]
directories with same name as pages:
example.com/valid_page_same_as_dir/valid_page presents example.com/valid_dir_same_as_page/valid_page.html [pass]
example.com/valid_page_same_as_dir presents example.com/valid_page_same_as_dir.html [pass]
non-existent pages and directories:
example.com/something_invalid presents 404 error doc at explicit url [pass]
example.com/valid_dir/something_invalid presents 404 error doc at explicit url [pass]
example.com/valid_page/something_invalid presents 404 error doc at explicit url [fail - actually presents 500 internal server error]
As you can see, this last one is the issue. Where a page name exists and a directory with the same does not exist, then we experience an internal server error instead of throwing a 404.
I've tried tweaking this so much with the resources I've been able to find to get this to work but I just cannot get this last condition to be met. The contents of the .htaccess file as it currently stands is below.
DirectorySlash Off
RewriteEngine On

# If it's a request to index(.html)
RewriteCond %{THE_REQUEST} \ /(.+/)?index(\.html)?(\?.*)?\  [NC]
# Remove it.
RewriteRule ^(.+/)?index(\.html)?$ /%1 [R=301,L]

# if request has a trailing slash
RewriteCond %{REQUEST_URI} ^/(.*)/$
# but it isn't a directory
RewriteCond %{DOCUMENT_ROOT}/%1 !-d
# and if the trailing slash is removed and a .html appended to the end, it IS a file
RewriteCond %{DOCUMENT_ROOT}/%1.html -f
# redirect without trailing slash
RewriteRule ^ /%1 [L,R=301]

RewriteCond %{REQUEST_FILENAME} -d
# And a HTML file exists.
RewriteCond %{REQUEST_FILENAME}/index.html -f
# And there is a trailing slash redirect to remove it.
RewriteRule ^(.*?)/$ /$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} -d
# And a HTML file exists.
RewriteCond %{REQUEST_FILENAME}/index.html -f
# And there is no trailing slash show the index.html.
RewriteRule [^/]$ %{REQUEST_URI}/index.html [L]

# Remove HTML extensions.
# If it's a request from a browser, not an internal request by Apache/mod_rewrite.
RewriteCond %{ENV:REDIRECT_STATUS} ^$
# And the request has a HTML extension. Redirect to remove it.
RewriteRule ^(.+)\.html$ /$1 [R=301,L]

# If the request exists with a .html extension.
RewriteCond %{SCRIPT_FILENAME}.html -f
# And there is no trailing slash, rewrite to add the .html extension.
RewriteRule [^/]$ %{REQUEST_URI}.html [QSA,L]

ErrorDocument 404 https://example.com/404

If anybody has any ideas about how we can overcome this I'd really appreciate your thoughts.
Thanks


text:
Q: CSS Styling is not working in Angular 6 after using angular material I have used bootstrap with Angular 6 to design a web page. Then I added material sidenav including all the imports required. Now the CSS is not getting applied. Can someone let me know is the styling getting overriden by material styles. How do I use the original styles provided by angular/bootstrap for textboxes and buttons.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import {HttpClientModule} from '@angular/common/http';
import { AppComponent } from './app.component';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { NavigationComponent } from './navigation/navigation.component';
import { CostShareComponent } from './cost-share/cost-share.component';
import { PenaltyComponent } from './penalty/penalty.component';
import {RouterModule, Routes} from "@angular/router";
import {CustomMaterialModule} from "./core/material.module";
import {ContractService} from './service/contract.service';
import { HttpModule } from '@angular/http';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { NgbdModalContent } from './app-modal.component';

const appRoutes: Routes = [
  { path: '', component: CostShareComponent, data: { title: 'Cost Share' } },
  { path: 'cost-share', component: CostShareComponent, data: { title: 'Cost Share' } },
  { path: 'penalty', component: PenaltyComponent, data: { title: 'Penalty' } }
];

@NgModule({
  declarations: [
    AppComponent,
    NavigationComponent,
    CostShareComponent,
    PenaltyComponent,
    NgbdModalContent
  ],
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    HttpClientModule,
    HttpModule,
    FormsModule,
    ReactiveFormsModule,
    RouterModule.forRoot(
      appRoutes,
      { useHash: true }
      ),
    CustomMaterialModule
  ],
  providers: [ContractService],
  bootstrap: [AppComponent],
  entryComponents: [NgbdModalContent],
})
export class AppModule { }

xyz.component.html

      Cost Share Conditions

  <form *ngIf="addForm" [formGroup]="addForm" (ngSubmit)="onSubmit()">

      ×
      Success! {{successMessage}}

    ×
      Error! {{errorMessage | json}}

      <input type="text" name="contractId" ng-model="contractId" style="display: none;"/>

        Contract Name:
        <input formControlName="contractName" placeholder="Contract Name" class="form-control" name="contractName" id="contractName">

Penalty Conditions

        Category Of Services:
        <select id ="serviceId" [(ngModel)]="serviceId" formControlName="serviceId" name="serviceId" class="form-control">
      <option value="1">Emergency Room</option>
      <option value="2">OP Radiology</option>
  </select>

        Penalty Applies:
         <select id ="penaltyApplies" formControlName="penaltyApplies" name="penaltyApplies" class="form-control">
      <option>Y</option>
      <option>N</option>
  </select>

        Copay Amount:
        <input formControlName="copay" placeholder="Copay Amount" class="form-control" name="copay" id="copay">

        Penalty Rule:
         <select id ="penaltyRule" formControlName="penaltyRule" name="penaltyRule" class="form-control">
      <option>Non Emergency ER Use</option>
  </select>

        Deductible Applies:
          <select id ="deductibleApplies" formControlName="deductibleApplies" name="deductibleApplies" class="form-control">
      <option>Y</option>
      <option>N</option>
  </select>

        Penalty Type:
        <select id ="penaltyType" name="penaltyType" formControlName="penaltyType" class="form-control">
      <option>Coinsurance</option>
      <option>Dollar Amount</option>
  </select>

        CoInsurance:
        <input formControlName="coinsurance" placeholder="Coinsurance" name="coinsurance" class="form-control" id="coinsurance">

        Penalty Value:
        <input formControlName="penaltyValue" placeholder="Penalty Value" name="penaltyValue" class="form-control" id="penaltyValue">

        Deductible Applies:
        <select id ="deductibleAppliesPenalty" name="deductibleAppliesPenalty" formControlName="deductibleAppliesPenalty" class="form-control">
      <option>Y</option>
      <option>N</option>
  </select>

      <button class="btn btn-success" [disabled]="!addForm.valid">Save</button>
      <button style="margin-left: 20px" class="btn btn-success" (click)="onReset()">Reset</button>

    </form>


text:
Q: Problema con Fullcalendar Hola Tengo una duda y necesito una ayuda..
tengo esta funcion en calendario.js
function cargaCalendario(json_events){

                      $('#calendar').fullCalendar({
                          header: {

                            left: 'prev,next today',
                            center: 'title',
                            right: 'month,basicWeek,basicDay'
                          },
                          defaultDate: new Date(),
                          editable: true,
                          eventLimit: true,
                          height:500,
                          width:400,
                          events: $.parseJSON(json_events),
                          eventDrop: function(event,delta,revertFunc){
                            //alert(event.title+" - "+ event.id +" - " +event.start.format('DD-MM-YYYY[T]HH:MM:SS'));
                            $("#id").val(event.id);
                            $("#tit").val(event.title);
                            $("#finic").val(event.start.format());
                            var titulo;
                            var Fstart;
                            var Fend;
                            alert($('#id').val()+" "+$('#tit').val()+" "+$('#finic').val())
                            var eventid;
                            var id=event.id;
                            var title=event.title;
                            var start=event.start.format();
                            var end=(event.end == null) ? start : event.end.format();

                            //alert(id+" "+title+" "+start+" "+end);
                            $.ajax({
                                    url:'leerCalendario.php?op=Actualizar',
                                    type:'get',
                                    data: "titulo="+title+"Fstart="+start+"Fend="+end+"eventid="+id,
                                    async:false,
                                    success: function(response){
                                        if(response.status != 'success')
                                            alert(response.status);
                                        revertFunc();
                                      },
                                      error: function(e){
                                        revertFunc();
                                        alert('Error processing your request: '+e.responseText);
                                      }
                                });
                          }
                        });
}

. el cual al mover el evendo deveria ejecutar el archivo leerCalendario.php opcion actualiza.
case 'Cargar':
        $events = array();
        $query = mysqli_query($con, "SELECT idcalendario,paciente,inicio,final FROM calendario");
        while($fetch = mysqli_fetch_array($query,MYSQLI_ASSOC)) {
         $e=array();
         $e['id']=$fetch['idcalendario'];
         $e['title']=$fetch['paciente'];
         $e['start']=$fetch['inicio'];
         $e['end']=$fetch['final'];
         $e['title']=$fetch['paciente'];
         array_push($events, $e);
        }
        echo json_encode($events);

break;

case 'Actualizar':
        $title=$_POST["titulo"];
        $startdate = $_POST["Fstart"];
        $enddate=$_POST["Fend"];
        $eventid = $_POST["eventid"];

        $actualiza = mysqli_query($con,"UPDATE calendario SET paciente='$title', inicio = '$startdate', final = '$enddate' WHERE idcalendario='$eventid'");
        if($actualiza)
          echo json_encode(array('status'=>'success'));
        else
          echo json_encode(array('status'=>'failed'));
break;

Pero no me ejecuta la variable $actualiza la cual hace un update. me devuelve en response.status "undefined".

A: No estás armando correctamente los datos para enviar por GET:

data: "titulo="+title+"Fstart="+start+"Fend="+end+"eventid="+id

Cada parámetro (variable) debe estar separado por &
data: "titulo="+title+"&Fstart="+start+"&Fend="+end+"&eventid="+id


text:
Q: Undefined symbols after installing new xcode 3.2.3 build I want to move to the new XCode 3.2.3 GM Seed build for development, but when I bring up my project I get 'base sdk missing' because my project is set to use iPhone SDK 3.0.  If I change 'base SDK' to iPhone 3.2 or 4.0 and then compile I get a lot of errors that I don't understand.  I dumped a few of them below.  Can anyone tell me what I am missing?  Also, can someone confirm that if I choose 'base sdk' of iPhone 3.2 or 4.0 that I can still choose 'target device' of iPhone 3.0 and not force my customers to install the new SDK.  I really don't want to be the app that forces my customers to upgrade their OS.
Thanks!
Undefined symbols:
  ".objc_class_name_NSObject", referenced from:
      .objc_class_name_FlurryAPI in libFlurry.a(FlurryAPI.o)
      .objc_class_name_FlurrySession in libFlurry.a(FlurrySession.o)
      .objc_class_name_FlurryHTTPEater in libFlurry.a(FlurryHTTPEater.o)
      .objc_class_name_FlurryHTTPResponse in libFlurry.a(FlurryHTTPResponse.o)
      .objc_class_name_FlurryConnectionDelegate in libFlurry.a(FlurryConnectionDelegate.o)
      .objc_class_name_FlurryAd in libFlurry.a(FlurryAd.o)
      .objc_class_name_FlurryAdParser in libFlurry.a(FlurryAdParser.o)
      literal-pointer@__OBJC@__cls_refs@NSObject in libFlurry.a(FlurryAdView.o)
      .objc_class_name_FlurryAdImage in libFlurry.a(FlurryAdImage.o)
      .objc_class_name_FlurryAdImpression in libFlurry.a(FlurryAdImpression.o)
      .objc_class_name_FlurryPageViewDelegate in libFlurry.a(FlurryPageViewDelegate.o)
      .objc_class_name_FlurryAdTheme in libFlurry.a(FlurryAdTheme.o)
      .objc_class_name_FlurryAdHook in libFlurry.a(FlurryAdHook.o)
      .objc_class_name_FlurryAdProperties in libFlurry.a(FlurryAdProperties.o)
      .objc_class_name_FlurryFileCache in libFlurry.a(FlurryFileCache.o)
      .objc_class_name_FlurryEvent in libFlurry.a(FlurryEvent.o)
      .objc_class_name_FlurryProtocolData in libFlurry.a(FlurryProtocolData.o)
      .objc_class_name_FlurryAdAssignment in libFlurry.a(FlurryAdAssignment.o)
      .objc_class_name_FlurryAdAppStoreConnectionDelegate in libFlurry.a(FlurryAdAppStoreConnectionDelegate.o)
      .objc_class_name_FlurryHeartBeater in libFlurry.a(FlurryHeartBeater.o)
      .objc_class_name_FlurryImageCache in libFlurry.a(FlurryImageCache.o)
      .objc_class_name_FlurryUtil in libFlurry.a(FlurryUtil.o)
      .objc_class_name_FlurryAdNavigationDelegate in libFlurry.a(FlurryAdNavigationDelegate.o)
      .objc_class_name_FlurryAdLocation in libFlurry.a(FlurryAdLocation.o)
      .objc_class_name_FlurryAdDimension in libFlurry.a(FlurryAdDimension.o)
      .objc_class_name_FlurryAdTextStyle in libFlurry.a(FlurryAdTextStyle.o)
  ".objc_class_name_NSFileManager", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSFileManager in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSFileManager in libFlurry.a(FlurryFileCache.o)
  ".objc_class_name_NSString", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSString in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSString in libFlurry.a(FlurryHTTPEater.o)
      literal-pointer@__OBJC@__cls_refs@NSString in libFlurry.a(FlurryHTTPResponse.o)
      literal-pointer@__OBJC@__cls_refs@NSString in libFlurry.a(FlurryAd.o)
      literal-pointer@__OBJC@__cls_refs@NSString in libFlurry.a(FlurryAdParser.o)
      literal-pointer@__OBJC@__cls_refs@NSString in libFlurry.a(FlurryAdCanvasViewController.o)
      literal-pointer@__OBJC@__cls_refs@NSString in libFlurry.a(FlurryFileCache.o)
      literal-pointer@__OBJC@__cls_refs@NSString in libFlurry.a(FlurryImageCache.o)
  ".objc_class_name_NSError", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSError in libFlurry.a(FlurryUtil.o)
  "_OBJC_METACLASS_$_FlurryAPI", referenced from:
      _OBJC_METACLASS_$_NFlurryAPI in NFlurryAPI.o
  ".objc_class_name_UIWindow", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIWindow in libFlurry.a(FlurryAdCanvasViewController.o)
  ".objc_class_name_NSException", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSException in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSException in libFlurry.a(FlurryUtil.o)
  ".objc_class_name_UIColor", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIColor in libFlurry.a(FlurryAdParser.o)
      literal-pointer@__OBJC@__cls_refs@UIColor in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@UIColor in libFlurry.a(FlurryAdCanvasViewController.o)
      literal-pointer@__OBJC@__cls_refs@UIColor in libFlurry.a(FlurryAdCanvasView.o)
  "_OBJC_CLASS_$_FlurryAPI", referenced from:
      _OBJC_CLASS_$_NFlurryAPI in NFlurryAPI.o
  ".objc_class_name_NSMutableSet", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSMutableSet in libFlurry.a(FlurryAdAssignment.o)
  ".objc_class_name_UIFont", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIFont in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@UIFont in libFlurry.a(FlurryAdCanvasView.o)
  ".objc_class_name_UIImage", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIImage in libFlurry.a(FlurryAdParser.o)
      literal-pointer@__OBJC@__cls_refs@UIImage in libFlurry.a(FlurryAdImage.o)
  ".objc_class_name_UIApplication", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIApplication in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@UIApplication in libFlurry.a(FlurryAdCanvasViewController.o)
      literal-pointer@__OBJC@__cls_refs@UIApplication in libFlurry.a(FlurryAdAppStoreConnectionDelegate.o)
  ".objc_class_name_UILabel", referenced from:
      literal-pointer@__OBJC@__cls_refs@UILabel in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@UILabel in libFlurry.a(FlurryAdCanvasViewController.o)
      literal-pointer@__OBJC@__cls_refs@UILabel in libFlurry.a(FlurryAdCanvasView.o)
  ".objc_class_name_UIView", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIView in libFlurry.a(FlurryAdView.o)
      .objc_class_name_FlurryAdView in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@UIView in libFlurry.a(FlurryAdCanvasViewController.o)
      .objc_class_name_FlurryAdListView in libFlurry.a(FlurryAdListView.o)
  ".objc_class_name_NSMutableString", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSMutableString in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableString in libFlurry.a(FlurryHTTPEater.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableString in libFlurry.a(FlurryAdView.o)
  ".objc_class_name_NSTimer", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSTimer in libFlurry.a(FlurryHeartBeater.o)
  ".objc_class_name_NSMutableData", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSMutableData in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableData in libFlurry.a(FlurryConnectionDelegate.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableData in libFlurry.a(FlurryAdImpression.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableData in libFlurry.a(FlurryEvent.o)
  ".objc_class_name_NSNumber", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSNumber in libFlurry.a(FlurryAPI.o)
      literal-pointer@__OBJC@__cls_refs@NSNumber in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSNumber in libFlurry.a(FlurryAdParser.o)
      literal-pointer@__OBJC@__cls_refs@NSNumber in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@NSNumber in libFlurry.a(FlurryAdImpression.o)
      literal-pointer@__OBJC@__cls_refs@NSNumber in libFlurry.a(FlurryAdCanvasViewController.o)
  "_objc_exception_match", referenced from:
      +[FlurrySession createActiveFlurrySession:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession dataForSessions:requestAds:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession initialTimestamp] in libFlurry.a(FlurrySession.o)
  ".objc_class_name_UINavigationItem", referenced from:
      literal-pointer@__OBJC@__cls_refs@UINavigationItem in libFlurry.a(FlurryAdCanvasViewController.o)
  ".objc_class_name_UIViewController", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIViewController in libFlurry.a(FlurryAdView.o)
      .objc_class_name_FlurryAdCanvasViewController in libFlurry.a(FlurryAdCanvasViewController.o)
  ".objc_class_name_NSMutableArray", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSMutableArray in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableArray in libFlurry.a(FlurryHTTPEater.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableArray in libFlurry.a(FlurryAdParser.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableArray in libFlurry.a(FlurryImageCache.o)
      literal-pointer@__OBJC@__cls_refs@NSMutableArray in libFlurry.a(FlurryAdNavigationDelegate.o)
  ".objc_class_name_UIScreen", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIScreen in libFlurry.a(FlurryAdCanvasViewController.o)
  ".objc_class_name_NSURLCache", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSURLCache in libFlurry.a(FlurryHTTPEater.o)
  ".objc_class_name_NSNotificationCenter", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSNotificationCenter in libFlurry.a(FlurryAPI.o)
      literal-pointer@__OBJC@__cls_refs@NSNotificationCenter in libFlurry.a(FlurryAdParser.o)
      literal-pointer@__OBJC@__cls_refs@NSNotificationCenter in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@NSNotificationCenter in libFlurry.a(FlurryHeartBeater.o)
  ".objc_class_name_NSInvocation", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSInvocation in libFlurry.a(FlurryPageViewDelegate.o)
  ".objc_class_name_NSURL", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSURL in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSURL in libFlurry.a(FlurryHTTPEater.o)
      literal-pointer@__OBJC@__cls_refs@NSURL in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@NSURL in libFlurry.a(FlurryAdCanvasViewController.o)
  "_objc_exception_extract", referenced from:
      +[FlurryAPI startSession:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI startSession:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI pauseSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI pauseSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI resumeSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI resumeSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endTimedEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endTimedEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:exception:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:exception:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:error:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:error:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageViews:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageViews:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageView] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageView] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setUserID:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setUserID:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setEventLoggingEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setEventLoggingEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setServerURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setServerURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setLandscapeCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setLandscapeCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppStoreURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppStoreURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setSessionReportsOnCloseEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setSessionReportsOnCloseEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppVersion:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppVersion:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setGender:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setGender:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAge:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAge:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:attachToView:orientation:canvasOrientation:autoRefresh:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:attachToView:orientation:canvasOrientation:autoRefresh:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI updateHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI updateHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI removeHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI removeHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI openCatalog:canvasOrientation:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI openCatalog:canvasOrientation:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppCircleDelegate:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppCircleDelegate:] in libFlurry.a(FlurryAPI.o)
      +[FlurrySession createActiveFlurrySession:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession createActiveFlurrySession:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession sendSessionsToServerWithTimeout:useWebView:requestAds:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession sendSessionsToServerWithTimeout:useWebView:requestAds:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession dataForSessions:requestAds:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession dataForSessions:requestAds:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession initialTimestamp] in libFlurry.a(FlurrySession.o)
      +[FlurrySession initialTimestamp] in libFlurry.a(FlurrySession.o)
      +[FlurryAdParser oldInstance] in libFlurry.a(FlurryAdParser.o)
      +[FlurryAdParser instance] in libFlurry.a(FlurryAdParser.o)
      -[FlurryAdView initWithAd:hook:xLoc:yLoc:parent:attachToView:orientation:canvasOrientation:autoRefresh:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView initWithAd:hook:xLoc:yLoc:parent:attachToView:orientation:canvasOrientation:autoRefresh:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView refreshWithAd] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView refreshWithAd] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView updateToOrientation] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView updateToOrientation] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView touchesEnded:withEvent:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView touchesEnded:withEvent:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView alertView:clickedButtonAtIndex:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView alertView:clickedButtonAtIndex:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView checkBannerLocation] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView checkBannerLocation] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView dealloc] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView dealloc] in libFlurry.a(FlurryAdView.o)
      -[FlurryPageViewDelegate navigationController:didShowViewController:animated:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate navigationController:didShowViewController:animated:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate navigationController:willShowViewController:animated:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate navigationController:willShowViewController:animated:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:shouldSelectViewController:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:shouldSelectViewController:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:didSelectViewController:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:didSelectViewController:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:willBeginCustomizingViewControllers:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:willBeginCustomizingViewControllers:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:willEndCustomizingViewControllers:changed:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:willEndCustomizingViewControllers:changed:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:didEndCustomizingViewControllers:changed:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:didEndCustomizingViewControllers:changed:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryAdCanvasViewController dealloc] in libFlurry.a(FlurryAdCanvasViewController.o)
      -[FlurryAdCanvasViewController dealloc] in libFlurry.a(FlurryAdCanvasViewController.o)
      +[FlurryFileCache createInstanceWithApiKey:] in libFlurry.a(FlurryFileCache.o)
      +[FlurryAdAssignment createInstance] in libFlurry.a(FlurryAdAssignment.o)
      +[FlurryHeartBeater createAndStartInstance:] in libFlurry.a(FlurryHeartBeater.o)
      +[FlurryImageCache createInstanceWithFileCache:] in libFlurry.a(FlurryImageCache.o)
  ".objc_class_name_NSMutableURLRequest", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSMutableURLRequest in libFlurry.a(FlurryHTTPEater.o)
  ".objc_class_name_NSRunLoop", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSRunLoop in libFlurry.a(FlurryHTTPEater.o)
  ".objc_class_name_NSKeyedUnarchiver", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSKeyedUnarchiver in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSKeyedUnarchiver in libFlurry.a(FlurryFileCache.o)
  ".objc_class_name_NSData", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSData in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSData in libFlurry.a(FlurryAdParser.o)
  ".objc_class_name_NSDate", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSDate in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@NSDate in libFlurry.a(FlurryHTTPEater.o)
      literal-pointer@__OBJC@__cls_refs@NSDate in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@NSDate in libFlurry.a(FlurryAdImpression.o)
      literal-pointer@__OBJC@__cls_refs@NSDate in libFlurry.a(FlurryEvent.o)
  ".objc_class_name_UIBarButtonItem", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIBarButtonItem in libFlurry.a(FlurryAdCanvasViewController.o)
  ".objc_class_name_NSURLRequest", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSURLRequest in libFlurry.a(FlurryAdCanvasViewController.o)
      literal-pointer@__OBJC@__cls_refs@NSURLRequest in libFlurry.a(FlurryAdAppStoreConnectionDelegate.o)
  ".objc_class_name_UIDevice", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIDevice in libFlurry.a(FlurrySession.o)
      literal-pointer@__OBJC@__cls_refs@UIDevice in libFlurry.a(FlurryAdView.o)
  ".objc_class_name_UIImageView", referenced from:
      literal-pointer@__OBJC@__cls_refs@UIImageView in libFlurry.a(FlurryAdView.o)
      literal-pointer@__OBJC@__cls_refs@UIImageView in libFlurry.a(FlurryAdCanvasViewController.o)
      literal-pointer@__OBJC@__cls_refs@UIImageView in libFlurry.a(FlurryAdCanvasView.o)
  "_objc_exception_try_exit", referenced from:
      +[FlurryAPI startSession:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI pauseSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI resumeSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endTimedEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:exception:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:error:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageViews:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageView] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setUserID:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setEventLoggingEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setServerURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setLandscapeCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppStoreURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setSessionReportsOnCloseEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppVersion:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setGender:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAge:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:attachToView:orientation:canvasOrientation:autoRefresh:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI updateHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI removeHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI openCatalog:canvasOrientation:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppCircleDelegate:] in libFlurry.a(FlurryAPI.o)
      +[FlurrySession createActiveFlurrySession:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession createActiveFlurrySession:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession sendSessionsToServerWithTimeout:useWebView:requestAds:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession dataForSessions:requestAds:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession dataForSessions:requestAds:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession initialTimestamp] in libFlurry.a(FlurrySession.o)
      +[FlurrySession initialTimestamp] in libFlurry.a(FlurrySession.o)
      +[FlurrySession initialTimestamp] in libFlurry.a(FlurrySession.o)
      +[FlurryAdParser oldInstance] in libFlurry.a(FlurryAdParser.o)
      +[FlurryAdParser instance] in libFlurry.a(FlurryAdParser.o)
      -[FlurryAdView initWithAd:hook:xLoc:yLoc:parent:attachToView:orientation:canvasOrientation:autoRefresh:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView refreshWithAd] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView updateToOrientation] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView touchesEnded:withEvent:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView alertView:clickedButtonAtIndex:] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView checkBannerLocation] in libFlurry.a(FlurryAdView.o)
      -[FlurryAdView dealloc] in libFlurry.a(FlurryAdView.o)
      -[FlurryPageViewDelegate navigationController:didShowViewController:animated:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate navigationController:willShowViewController:animated:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:shouldSelectViewController:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:didSelectViewController:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:willBeginCustomizingViewControllers:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:willEndCustomizingViewControllers:changed:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryPageViewDelegate tabBarController:didEndCustomizingViewControllers:changed:] in libFlurry.a(FlurryPageViewDelegate.o)
      -[FlurryAdCanvasViewController dealloc] in libFlurry.a(FlurryAdCanvasViewController.o)
      +[FlurryFileCache createInstanceWithApiKey:] in libFlurry.a(FlurryFileCache.o)
      +[FlurryAdAssignment createInstance] in libFlurry.a(FlurryAdAssignment.o)
      +[FlurryHeartBeater createAndStartInstance:] in libFlurry.a(FlurryHeartBeater.o)
      +[FlurryImageCache createInstanceWithFileCache:] in libFlurry.a(FlurryImageCache.o)
  ".objc_class_name_NSDateFormatter", referenced from:
      literal-pointer@__OBJC@__cls_refs@NSDateFormatter in libFlurry.a(FlurrySession.o)
  "_objc_exception_try_enter", referenced from:
      +[FlurryAPI startSession:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI startSession:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI pauseSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI pauseSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI resumeSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI resumeSession] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logEvent:withParameters:timed:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endTimedEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI endTimedEvent:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:exception:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:exception:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:error:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI logError:message:error:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageViews:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageViews:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageView] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI countPageView] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setUserID:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setUserID:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setEventLoggingEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setEventLoggingEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setServerURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setServerURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setLandscapeCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setLandscapeCanvasURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppStoreURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppStoreURL:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setSessionReportsOnCloseEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setSessionReportsOnCloseEnabled:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppVersion:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppVersion:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setGender:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setGender:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAge:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAge:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:attachToView:orientation:canvasOrientation:autoRefresh:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI getHook:xLoc:yLoc:view:attachToView:orientation:canvasOrientation:autoRefresh:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI updateHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI updateHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI removeHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI removeHook:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI openCatalog:canvasOrientation:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI openCatalog:canvasOrientation:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppCircleDelegate:] in libFlurry.a(FlurryAPI.o)
      +[FlurryAPI setAppCircleDelegate:] in libFlurry.a(FlurryAPI.o)
      +[FlurrySession createActiveFlurrySession:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession createActiveFlurrySession:] in libFlurry.a(FlurrySession.o)
      +[FlurrySession sendSessionsToServerWithTimeout:useWebView:requestAds:] in libFlurry.a(FlurrySession.o)

A: Flurry posted v2.4 of their SDK today (or last night) seems to work fine in the simulator on xcode 3.2.3 with iOS 4.0...

A: I also have this problem, but I think it is looking for iPhone OS 3.1.3 (which I no longer have installed).
ld: warning: directory '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk/Developer/Library/Frameworks' following -F not found
  "_OBJC_CLASS_$_FlurryAPI", referenced from:
  objc-class-ref-to-FlurryAPI in MoviePlayerAppDelegate.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

(I would have added a comment to your comment as I know this isn't an answer but I can't)
---------------------------------------------------------EDIT--------------------------------------------------------------------
I emailed Flurry about this, and they just replied with an SDK which is compatible with iOS4 and 3.2 (and I'm assuming it will also work for you). If you want I can email the files to you, just send me a message at EDIT: Removed email

A: Upgrade the Flurry lib and do a build clean all.

A: Similar problem for me but with foundation framework. The suggestion above about the target library path led me to a solution... in my case the 'framework search path' had an absolute reference to SDK 3.0 for some reason. I altered it to be a relative address i.e. "System/Library/Frameworks" and it linked properly in simulator!!


text:
Q: Error when reading an Excel-generated CSV file in Django I have problems reading a CSV file generated by Excel. The code reading the file is very simple and it works ok with CSV files generated by hand:
file = request.FILES['organisations']
data = csv.reader(file, dialect='excel', delimiter=',', quotechar='"')

for line in data :
    ...

However, I get the following error pointing to that last line when I try to upload an Excel CSV file:
new-line character seen in unquoted field - do you need to open the file in universal-newline mode?
I've been Googling around but haven't been able to find something useful. Any help is appreciated!

A: Update this line:
data = csv.reader(StringIO.StringIO(file.read()), dialect='excel', delimiter=',', quotechar='"')


text:
Q: Read in text not the same as assigned text I have a problem that should be simple. I must be missing something fundamental. I create a String viz.
String text = "\u0391\u039A\u03C1\u1F83\uA978\u0370\u03D8\u03C0";

If I use that as the argument to a JLabel with the default font, it prints Greek characters as I'd like.
However, if I put that same string (with no quotes, of course) into a text file and read that line in and assign the line to a JLabel, I get the "uninterpreted" string. It looks just like it is in the file. I've tried using different encodings to read the file like ISO-8859-1, UTF-8, UTF-16, etc. to no avail.
How do I get the read in text to be just like an assigned piece of text?
Try
String text = "\u0391\u039A\u03C1\u1F83\uA978\u0370\u03D8\u03C0";
System.out.println( "As ascii text = " + text );

and
String label = new String( readLabel( directory + File.separator
+ "testReadLabel.txt" ) );
System.out.println( "As ascii label = " + label );

When testReadLabel.txt contains the text above and the read is a standard
BufferedReader br = new BufferedReader( new InputStreamReader(
new FileInputStream( fileName ), "ISO-8859-1" ) );

return br.readLine();

A: You must unescape the string first after you did read it from the file. You could e.g. use the StringEscapeUtils from Apache Commons to do this:
String label = StringEscapeUtils.unescapeJava(stringFromFile);

A: Backslash escape codes are translated in string literals by the compiler. They are not translated in file IO. If you want to parse the escape codes, you'll have to do that yourself or use a library to do it for you.


text:
Q: Custom Bootstrap 4 css and asset management in Yii2 I've installed the yii2-bootstrap4 extension in yii2-advanced and I've added a customized css file (custom.css) re-compiling Bootstrap source with Sass.
Then I've added custom.css to frontend/web/css and I've modified frontend/assets/AppAsset.php as follows:
class AppAsset extends AssetBundle
{
    public $basePath = '@webroot';
    public $baseUrl = '@web';
    public $css = [
        'css/custom.css',
        'css/site.css',
    ];
    public $js = [
    ];
    public $depends = [
        'yii\web\YiiAsset',
        'yii\bootstrap4\BootstrapAsset',
    ];
}

I obtained the result I wanted, but I noticed that the ... of my pages contains the following:
<link href="/yii2-advanced/frontend/web/assets/1758a11a/css/bootstrap.css" rel="stylesheet">
<link href="/yii2-advanced/frontend/web/css/custom.css" rel="stylesheet">
<link href="/yii2-advanced/frontend/web/css/site.css" rel="stylesheet">

And:

*

*[...]/css/bootstrap.css contains the original Bootstrap 4 css

*if I delete that first entry from the DOM (via Devtools) the web pages are not
affected.

Questions

*

*Is this the correct way to replace the Bootstrap 4 css file in Yii2?

*Is there a way to prevent the loading of [...]/css/bootstrap.css?

A: Adapting one of the answers of this other question (suggested by @Sfili_81), I solved modifying frontend/assets/AppAsset.php as follows:
class AppAsset extends AssetBundle
{
    public $basePath = '@webroot';
    public $baseUrl = '@web';
    public $css = [
        'css/custom.css',
        'css/site.css',
    ];
    public $js = [
    ];
    public $depends = [
        'yii\web\YiiAsset',
        'yii\bootstrap4\BootstrapAsset',
    ];

    public function init(){
        parent::init();
        // resetting BootstrapAsset to not load own css files
        \Yii::$app->assetManager->bundles['yii\\bootstrap4\\BootstrapAsset'] = [
            'css' => [],
            //'js' => []
        ];
    }
}

Now the css files included in the  section are only these ones:
<link href="/yii2-advanced/frontend/web/css/custom.css" rel="stylesheet">
<link href="/yii2-advanced/frontend/web/css/site.css" rel="stylesheet">


text:
Q: How to test a React functional component that loads data during mount I want to have different unit tests to test the different states of my component and it's interaction with an async request. I am having alot of difficulty doing so. Most documentation says to "simulate" the event that triggers the async state change (i.e. simulate a click of a component), however, my state is supposed to change on component load and not by any user interaction. I have seen reference to the act function (https://reactjs.org/blog/2019/02/06/react-v16.8.0.html#testing-hooks) but I don't know how to implement it in this context.
Here is my functional react component:
import { useRequest } from '@umijs/hooks' // Request custom hook

// An async function that does an async task to get data
async function someAsyncFunctionToFetch() => {
    return Promise.resolve({data: 'data'})
}

// The functional component
export function TestComponent() {
  const { data, error, loading } = useRequest(FulfillmentService.getFullfillmentServices)

  const loadingMarkup = (

Loading

  )

  const errorMarkup = (

Error

  )

  const contentMarkup = (

{ data }

  )

  if (loading) {
    return loadingMarkup
  } else if (error) {
    return errorMarkup
  } else if (!isEmpty(data)) {
    return contentMarkup
  } else {
    return
Some empty state

  }
}

These are the tests that I want to achieve:
describe('TestComponent', () => {
    it.todo('when data is loading the loading markup should be rendered')
    it.todo('when data fetching results in an error the error markup should be rendered')
    it.todo('when data fetching returns with valid data the content markup should be rendered')
    it.todo('when data fetching returns an empty data object the empty state markup should be rendered')
})

A: To test the component renders the desired markup for each state you can mock the return value of the useRequest hook. This can be achieved using the jest.mock function to mock the behaviour of the @umijs/hooks module:
import { useRequest } from "@umijs/hooks";

jest.mock("@umijs/hooks");

Now each state can be simulated using the mockReturnValue function. For example to mock the loading state we would do:
useRequest.mockReturnValue({
  loading: true
});

The tests for each scenario would look something along the lines of:
import { useRequest } from "@umijs/hooks";

jest.mock("@umijs/hooks");

describe("TestComponent", () => {
  describe("loading description", () => {
    beforeEach(() => useRequest.mockReturnValue({ loading: true }));

    it("loading assertion", () => {/* ... */});
  });

  describe("error description", () => {
    beforeEach(() => useRequest.mockReturnValue({ error: "Given error" }));

    it("error assertion", () => {/* ... */});
  });

  describe("valid data description", () => {
    beforeEach(() => {
      useRequest.mockReturnValue({ data: { value: "Given data" }});
    });

    it("valid data assertion", () => {/* ... */});
  });

  describe("empty data description", () => {
    beforeEach(() => useRequest.mockReturnValue({ data: {} }));

    it("empty data assertion", () => {/* ... */});
  });
});

A: I'd recommend trying to abstract out FulfillmentService.getFullfillmentServices either by moving it to your props or create a context. That way you can easily mock each response from FulfillmentService.getFullfillmentServices.
The second option would be to use nock and intercept FulfillmentService.getFullfillmentServices's api call.


text:
Q: jQuery animate a value of one elem of a class I have problems to animate a value of a certain element when selecting it with the class, instead it will animate all elements of that class.
$('.class').parent().hover(
                function() {
                   $({ value: $(this).val() }).animate( .... );
                   ...
                }, function() {
                   $({ value: $(this).val() }).animate( .... );
                   ...
                });

Unfortunately due to a plugin i use for creating a slider i have to use the .parent() selector, so i can not use ..
$('.parent') -> $('.class', this)

.. what i think it would solve it.
I have three elements with the ".class"-class and they are all three animated whenever i hover one of them.
further explanation:
The html is only one thing:
<input type="text" value="0" class="class" />

The Plugin creates a canvas above the input and the input is used as the value for the animated bar. It also creates a div wrapping around this two elements. Like so :
<div>
  <canvas>
  <input ... >
</div>

I'm sure i can find a easy solution by using id's and writing it multiple times in the code with the id's as selector, but i hope for a more elegant way to solve this.
Here the JSFiddle

A: As long as you know that the <canvas> tag will always be created, why not just use the <canvas> tag as the selector to provide context?
$('canvas').hover(
    function() {
        var that = $(this);
        $({ value: $(this).next() }).animate(
            ...
            progress: function() {
                that.next().val(Math.round(this.value)).trigger('change');
            }
        );
    }, function() {
        var that = $(this);
        $({ value: $(this).next().val() }).animate(
            ...
            progress: function() {
                that.next().val(Math.round(this.value)).trigger('change');
            }
        );
    });

NEW Working Fiddle

A: Maybe try wrapping it in an event listener instead:
$(function(){
    $('.class').on('hover',function(){
        $({value:$(this).parent().val()}).animate( ...)
    })
});


text:
Q: How do I trigger my Google App script after I open a new tab?
*

*Context
I am using Google Sheets as a database to store some stock price data. I have created a list of formulas that automatically populate cells on edit. What I am trying to do is to copy these formulas when I open a new tab for a new stock/company. Below is the code in app script I have created:
function setUpTrigger(){
 ScriptApp.NewTrigger('copyRowswithSetValues')
 }

function copyRowswithSetValues() {
 // Define the spreadsheet and sheet that we will get the data from. I want to trigger this when I insert a new tab.
 var ss = SpreadsheetApp.getActiveSpreadsheet();
 let sourceSheet = ss.getSheetByName('Softcat');

 // Get the source range from the source sheet. It will get data from the range that has data
 let sourceRange = sourceSheet.getDataRange();
 let sourceValues = sourceRange.getValues();

 // Insert data into row when we open a new tab. From the first column
 let rowCount = sourceValues.length;
 let columnCount = sourceValues[0].length;

 // Where the data will be copied into
 let targetSheet = ss.insertSheet();
 let targetRange = targetSheet.getRange(1, 1, rowCount, columnCount);

 targetRange.setValues(sourceValues);

 }//End of function

I was able to use the edit->current project's triggers to set-up the OnChange trigger.

*

*Problem
Whenever run this code, via the OnChange trigger, it repeatedly opens up a new tab and copies data from the source sheet to the new sheets. What I want is for the action to trigger WHEN I open a new tab. I suspect the issue I am having is the trigger and the targetSheet variable definition. But I'm not quite sure how exactly to achieve this.
*** UPDATE
function copyRowswithSetValues(e) {
  // Define the spreadsheet and sheet that we will get the data from. I want to trigger this when I insert a new tab.
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const sourceSheet = ss.getSheetByName('Softcat');

  // Get the source range from the source sheet. It will get data from the range that has data
  let sourceRange = sourceSheet.getDataRange();
  let sourceValues = sourceRange.getValues();

  // Where the data will go (first row and column)
  let rowCount = sourceValues.length;
  let columnCount = sourceValues[0].length;

  // Where the data will be copied into. Want it to trigger when I open a new tab
  let targetSheet = ss.INSERT_GRID;
  // Which row I want the data to be copied into, the column, number of rows and columns
  let targetRange = targetSheet.getRange(1, 1, rowCount, columnCount);

  targetRange.setValues(sourceValues);

}//End of function

I am getting the error:
Error
TypeError: Cannot read property 'getRange' of undefined

This I presume is because appscript can't find the range.
Problem_2
Do I remove the latter part (the target range variable)? I tried that but it did not succeed. Any suggestions?
*** Update 3
I was able to work something. This is what I got so far:
function Opennewtabandsave() {
// Within spreadsheet
const ss = SpreadsheetApp.getActiveSpreadsheet();
// Where the data is coming from
let sourceSheet = ss.getSheetByName('Softcat');
 // Get data range from the source sheet
let sourceRange = sourceSheet.getDataRange();

// If we open a new sheet (as an event)
if(ss.insertSheet('New Stock')){
 // Create a variable for the new sheet
 let targetSheet = ss.getSheetByName('New Stock');
 // Copy and paste source sheet to new opened sheet
    sourceRange.copyTo(targetSheet.getRange(1,1));
    }
  }

So this works. Whenever I open a new tab, it creates the name and copies and pastes the data. Though the issue is that every time I open a new tab, it moves the tab to the position itself as the second tab. For example, If I open it after the 9th tab, this 'New Stock' tab will open in the second position.
Also, everytime I do something to the spreadsheet, new tabs open up. If I delete one it opens a new tab. I'm sure the On_grid feature works here but still have not seen anything to suggest how it's used in the code.
Problem 3
How can I get the new tab to open at the right position - to the right of the tab I opened it from?
Problem 4
How can I get the onChange trigger to only happen when I open a new tab and ignore all other actions?

A: You can generate a trigger with an onChange trigger of type INSERT_GRID the problem is that the event object does not provide a reference to the new sheet and the active sheet appears to remain that same as it was before the event. I guess they did it this way so that you can't change the expected functionality of the insert new sheet operation for another user.
You say:

Whenever run this code, via the OnChange trigger, it repeatedly opens up a new tab and copies data from the source sheet to the new sheets. What I want is for the action to trigger WHEN I open a new tab. I suspect the issue I am having is the trigger and the targetSheet variable definition. But I'm not quite sure how exactly to achieve this.

So you need to have an if statement with something like:
if(e.changeType=='INSERT_GRID') {
  //put rest of your code in here
}

you say:

Do I remove the latter part (the target range variable)? I tried that but it did not succeed. Any suggestions?

I don't know what you mean?
you say:

So this works. Whenever I open a new tab, it creates the name and copies and pastes the data. Though the issue is that every time I open a new tab, it moves the tab to the position itself as the second tab. For example, If I open it after the 9th tab, this 'New Stock' tab will open in the second position.

Also, everytime I do something to the spreadsheet, new tabs open up. If I delete one it opens a new tab. I'm sure the On_grid feature works here but still have not seen anything to suggest how it's used in the code.
I believe that you can control the position where you insert the new sheet but since the on change doesn't provide range you can't determine current sheet so that may not be something you can fix. The addition of utilizing the changeType should help with the second part
you ask:

How can I get the new tab to open at the right position - to the right of the tab I opened it from?

I don't think you can with onChange event
you ask:

How can I get the onChange trigger to only happen when I open a new tab and ignore all other actions?

The if statement already discussed should help with that.  If not there are not many other options since the onChange does not provide much info in the event object.


text:
Q: Getting messages within 5 minutes from a specific ID and timestamp MYSQL I'm building a chat app retrieving chat history when a certain chat is expanded but i want a function or functions that can help me get chats that are 5 minutes within each other and are sent by the same user let's say given this table below

id
message
msg_owner_id
msg_reciever
msg_time
msg_type
seen
seen_time
note(not part of table)

1
hey
20
6
10:42:51
interchats
0

<----- 20 sent to 6

2
hi
20
6
10:43:20
interchats
0

<------20 sent to 20

3
am fine
20
6
10:44:11
interchats
0

<------20 sends to 6 again

4
mannnn
6
20
10:45:02
interchats
0

<-- 6 replies to 20

5
mannnn
20
11
10:53:02
interchats
0

<-- 20 sends to 11

I have used the following code however some values are missing
SELECT GROUP_CONCAT(id), DATE_FORMAT(msg_time, '%Y-%m-%d %H:%i'),
    id as ID, msg_owner_id as MSG_OWNER, msg_reciever as MSG_RECEIVER,
    message as MESSAGE
FROM chats WHERE msg_time >= :msg_time - INTERVAL 5 MINUTE AND id >= :id
GROUP BY 2 ORDER BY 2

let's say we need to start from id 1 and timestamp 10:42:51, how do I select all the chats sent within a 5 minutes interval from ID 1 and timestamp 10:42:52
Desired result should be:
the following IDs returned 1, 2 and 3


text:
Q: Limiting ajax call per input I have a working ajax call that I've made which sends a value to an endpoint for every input change. SO if the user is typing, it sends the call per keystroke.
I put a setTimeout around it for 2 seconds, which delays the call just fine. But the problem is it still sends a call for every keystroke.
I want to get it to where, after 2 seconds, it sends a call for what's been typed so far. If the user starts typing again maybe it would set again.
I"m just trying to send fewer keystrokes and make it to where when the user stops typing there's just a slight delay and call.
Here's the call now:
$('#input').on('input', function() {
  let _this = $(this);

  if (_this.val() === '') {
    return;
  } else {

    const searchResult = $(this).val();
    console.log(searchResult);
    //if I type "PLANT" the console shows "P" "PL" "PLA" "PLAN" "PLANT"

    //after 2 seconds, send searchResult via ajax
    setTimeout(function () {
        $.ajax({ url: '/endpoint',
          data: {
            search_result:searchResult
          },
          "_token": "{{ csrf_token() }}",
          type: "POST",
          success: successHandler

        });
    }, 2000);
  }
});

A: You should debounce the ajax call. The idea is that the timeout is cleared if the user enters another value. That way the ajax call will only be made once after the user has stopped typing for the given timeout period (2 seconds for your case). That would look something like this:

var timeout;

$('#input').on('input', function() {
  let _this = $(this);

  if (_this.val() === '') {
    return;
  } else {

    const searchResult = $(this).val();
    console.log(searchResult);
    //if I type "PLANT" the console shows "P" "PL" "PLA" "PLAN" "PLANT"

    if (timeout) {
      clearTimeout(timeout);
    }

    //after 2 seconds, send searchResult via ajax
    timeout = setTimeout(function () {
        $.ajax({ url: '/endpoint',
          data: {
            search_result:searchResult
          },
          "_token": "{{ csrf_token() }}",
          type: "POST",
          success: successHandler

        });
    }, 2000);
  }
});


text:
Q: How to access the iPhone Library folder programmatically I heard in this TUAW Article that iPhone apps should stop using the Documents folder to store files.  Instead they should use the library folder.  How do you access the Library folder to store files to it?
Thanks in advance!

A: Use the NSLibraryDirectory constant instead of the NSDocumentDirectory constant when you call  NSSearchPathForDirectoriesInDomains. You would only have to worry about this if you actually do plan on writing an application that allows users to manage documents.


text:
Q: How to declare instance of delegate in C#? private delegate void stopMachineryDelegate();
public stopMachineryDelegate StopMachinery;

this.StopMachinery += new stopMachineryDelegate(painting);

In the above example in the second line are we creating a delegate instance or a delegate variable? If the second line creates delegate instance of type stopMachineryDelegate, then in the third line what are we doing?

A: On the second line you are declaring a variable of type stopMachineryDelegate. But at this point the variable is still unassigned having holding a default value of null.
On the third line you are assigning a value to this variable by creating a new instance of the delegate pointing to the painting function.
So once this variable is assigned you could use it to invoke the function it is pointing to:
this.StopMachinery();

which will basically invoke the painting method in the same class.

A: First line is used to define your delegate type (stopMachineryDelegate), as a delegate accepting no parameters and returning no values (void).
Second line is declaring a field of that type, named StopMachinery. At that point, StopMachinery is null.
The third line has some syntactic sugar behind it. If StopMachinery is null at that point, it will create a new instance of that MulticastDelegate, and then add the painting method delegate to its invocation list.
If you only wanted to assign a single delegate to that field, you could have simply written:
 // implicitly wrap the `painting` method into a new delegate and
 // assign to the `StopMachinery` field
 this.StopMachinery = painting;

On the other hand, using += allows you to specify a list of delegates to be invoked when you invoke StopMachinery:
 this.StopMachinery += painting;
 this.StopMachinery += someOtherMethod;
 this.StopMachinery += yetAnotherMethod;

In the latter case, invocation of the StopMachinery delegate will invoke each of the methods in the invocation list, synchronously, in the order they were specified.


text:
Q: Projectile motion from a height
I came across a problem in my book with this diagram,

A machine gun is mounted on the top of a tower 100 m high. At what angle should the gun be inclined to cover a maximum range of firing on the ground below? The muzzle speed of bullet is 150 ms^-1 .

I read that when a body is projected with a certain angle from the ground it returns with the same angle and speed with which it was projected. But in this case the projectile goes below the level of projection. How does it still hit the ground at an angle $\theta$?

A: It does not. The diagram is incorrect, as it assumes that the path becomes a straight line after it reaches $y = 100 \text{m}$ from the ground. The path still remains a parabola, so the final angle($\theta_f$) is different from the initial angle at which the bullet was shot ($\theta_i$)
To solve the question, find the range $R$ for any arbitrary $\theta_i$ and set $\frac{dR}{d\theta_i}$ to zero to maximise $R$ in terms of $\theta_i$.
Hope this helps.


text:
Q: How to add a shortcode to call a function I'm using Cimy User Extra Fields to add more registration fields. I'm also using Contact Form 7 Dynamic Text Extension to pre-populate contact form fields.
I've read, in order to be able to use Cimy fields to pre-populate the contact form i need to add a shortcode. I've read this here.
He say's that you have to add a shortcode which calls a function that is in Cimy User Extra Fields.
The function in Cimy is called get_cimyFieldValue().
Here is the code he is referring to from Dynamic Text Extension.
function cf7_get_current_user($atts){
    extract(shortcode_atts(array(
        'key' => 'user_login',
    ), $atts));

    global $current_user;
    get_currentuserinfo();

    $val = $current_user->$key;
    return $val;
}
add_shortcode('CF7_get_current_user', 'cf7_get_current_user');

How can i add a shortcode in my functions.php to call get_cimyFieldValue() so i can populate the contact form with fields from Cimy?
Thanks
EDIT:
From the answer below i've managed to get this to work however it only seems to work if i use a user id. I need it to work with the current user not a predefined user.

A: So you're just looking for a simple shortcode that will call an existing function?
The following will create the shortcode you're looking for, but admittedly I haven't tested it with the Cimy User Extra Fields plugin. Add this to functions.php and try it out:
function shortcode_cimyFieldValue( $atts ) {

    global $current_user;
    $user_id = ( is_user_logged_in() ? $current_user->ID : NULL );

    /*
     * First, check to make sure the get_cimyFieldValue() function
     * exists. This way, if the plugin is not installed the site
     * doesn't blow up...
     */
    if( function_exists( 'get_cimyFieldValue' ) ) {

        // Grab the shortcode parameters
        extract( shortcode_atts( array(
            'user'  => $user_id,
            'field' => '',
            'value' => ''
        ), $atts ));

        /*
         * Call the get_cimyFieldValue() function using any of the
         * user-entered parameters
         */
        if( $user_id != NULL ) {
            return get_cimyFieldValue( $user, $field, $value );
        }
    }
}

// Adds the above function as as shortcode
add_shortcode( 'my_cimy_field', 'shortcode_cimyFieldValue' );

This should allow you to call the shortcode [my_cimy_field] in either of the following ways:
[my_cimy_field field="my_field_name"]
or
[my_cimy_field field="my_field_name" value="Sample Field Value"]


text:
Q: Do Document Sets work like Folders as far as the List View Threshold is concerned? We have a small SharePoint deployment with a handful of team sites deployed.  One of these sites had a document library that recently hit the list view threshold (currently set to the default of 5000).  In order to rectify the problem, we organized all the documents into folders as they act as separators as far as the list view threshold is concerned.  However, another library in the same site is now approaching the threshold.  The difference in this library is that all of the documents are organized into document sets.  This leads me to the following question:
Can document sets be used to alleviate the list view threshold problem in the same way that folders are, or will we need to find another way to organize our content?

A: Document sets are more advanced form of Folders in SharePoint and yes it can be used to alleviate the list view threshold problem But to counter the threshold limit problem in SharePoint it is recommended to create views and add filters to refine your result in a particular view.


text:
Q: AWK to filter output i'm confusing about this i have a following directory structure
ls -d */*
keyspace1/table2           system/peers                  system/sstable_activity                     system_schema/columns
system/IndexInfo           system/prepared_statements    system/transferred_ranges                   system_schema/dropped_columns
system/available_ranges    system/range_xfers            system/views_builds_in_progress             system_schema/functions
system/batches             system/schema_aggregates      system_auth/resource_role_permissons_index  system_schema/indexes
system/batchlog            system/schema_columnfamilies  system_auth/role_members                    system_schema/keyspaces
system/built_views         system/schema_columns         system_auth/role_permissions                system_schema/tables
system/compaction_history  system/schema_functions       system_auth/roles                           system_schema/triggers
system/hints               system/schema_keyspaces       system_distributed/parent_repair_history    system_schema/types
system/local               system/schema_triggers        system_distributed/repair_history           system_schema/views
system/paxos               system/schema_usertypes       system_distributed/view_build_status        system_traces/events
system/peer_events         system/size_estimates         system_schema/aggregates                    system_traces/sessions

and i want to exclude all system folder, but the system_schema and other directories must remain!
i've tried to do this using AWK but this doesn't works as i want
ls -d */* | awk '{for(i=1;i<=NF;i++) { if(($i=="system_schema") || ($i!~"system")) {print $i}}}'
keyspace1/table2

this prints other dirs which is ok, but when my system_schema folder? or how can i do it using other UNIX tools?
thanks

A: With sample grep you can do it on this way:
ls -d */* | grep -v "^system/"

or if you want all records which start with system, but not system/ you can use something like:
ls -d */* | grep "^system"|grep -v "^system/"

If you want only system_schema and keyspace1 you can use this code:
 ls -d */* | egrep "system_schema|keyspace"


text:
Q: Cocoapods installing error mkmf.rb can't find header files for ruby sudo gem install cocoapods throws mkmf.rb can't find header files for ruby.
The full output:
Last login: Sat Mar 21 19:00:12 on ttys000
praneeths-MacBook-Air:~ praneeth$ sudo gem install cocoapods
Password:
Building native extensions.  This could take a while...
ERROR:  Error installing cocoapods:
    ERROR: Failed to build gem native extension.

    current directory: /Library/Ruby/Gems/2.3.0/gems/ffi-1.12.2/ext/ffi_c
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby -r ./siteconf20200321-2325-4gn5jh.rb extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /Library/Ruby/Gems/2.3.0/gems/ffi-1.12.2 for inspection.
Results logged to /Library/Ruby/Gems/2.3.0/extensions/universal-darwin-18/2.3.0/ffi-1.12.2/gem_make.out

A: This also happened to me and it is because you have to update your ruby version. Someone already posted an issue on cocoapods github repository. That issue pointed me to this stackoverflow answer and this is the solution copy-pasted from that answer:
Open Terminal

curl -L https://get.rvm.io | bash -s stable

Close and Reopen Terminal

rvm install ruby-2.6
rvm use ruby-2.6.5
rvm --default use 2.6.5

From MahmoudKhaled's comment on
link


text:
Q: Visitors who visited a certain URL In Google Analytics, how to focus on visitors who visited a certain URL at least once?
Example:

*

*let's say UserA has visited http://example.com/purchasecompleted/SX8DQ/ on June 12th

*UserB has visited the same URL on June 10th.
How to see all traffic of all time  (and be able to see referrers, etc.) of these visitors?
This would allow to know where do the customers first came from (even if they first visited the website 10 days before buying)

Note: When I'm in the this section :

I don't find an UI element to filter visitors who have visited a certain URL.

A: To answer your first question on how to check all traffic to a given URL in Google Analytics, the best approach is for you to use a custom segment. You can do this by going to the top of the reports section and clicking on "+ Add Segment". Then you would be given the option to add a new segment, check the screenshot below for an example,

The second part of your question about the option to check the page URL in the Referrals report, you can use the secondary dimension "Page" to get this data. Refer to the image below,

However I wish to clarify that the Google Analytics Web UI doesn't provide hit level data, therefore you cannot get the stats about hit level custom dimensions and metrics which were sent to a particular page by a particular visitor. This could only be obtained if you've an Analytics 360 Premium account. Nevertheless, the data which you would get otherwise would be session level data (i.e. anyone who visited that URL along with all other URLs visited in that session)


text:
Q: how to use insert function in FormArray? I am tying to insert data by index it's not working
i have sequence this sequence use as index but not patch properly
angualr.ts
for (let key in this.existingCompanyObj) {
              companyControl.insert(Number(this.existingCompanyObj[key].sequence), this.fb.group({ company: this.companyNamesObj[key], role: this.existingCompanyObj[key].role, sequence: this.existingCompanyObj[key].sequence }));

[0:{company:company[0],role:role[0]},1:{company:company[1],role:role[1]};

A: insert function not working properly use two for loop for that
for (let key in this.existingCompanyObj)
{
 companyControl.push(new FormControl());
}
for (let key in this.existingCompanyObj
{
 companyControl.setControl(this.existingCompanyObj[key].sequence, this.fb.group({ company:
 this.companyNamesObj[key], role: this.existingCompanyObj[key].role, sequence:
 this.existingCompanyObj[key].sequence }));
}

first you need to push(new FormControl) blank formControl and then a sing value using setControl(index object)


text:
Q: Is there an open-source tool for drawing OPC UA graphical notation? Do you know about some drawing tool that supports the Graphical Notation described in the OPC UA standard Part 3 Annex D?
The notation is similar to UML but has some extra elements that map nicely to the OPC UA information model (like different types of references). This is an example of the notation:

It would be great if it was free, ideally open-source. Thanks.

A: There is a way to get the official OPC UA Specification Graphical Notation:
This requires a Windows PC with Office Word and Office Visio installed.

*

*Download the Companion Specification Template (free after registering):
https://opcfoundation.org/developer-tools/specifications-unified-architecture/opc-ua-companion-specification-template/

*Open the Word Document

*Scroll to a Diagram in the first part of the document. Since all the drawings are embedded visio files, you can double-click to edit the graphical notation inplace.

*Then select the graphical notation and copy/paste it to a new Visio Document

*Use any part of the copied notation to create your own drawing

A: Yes Draw.io is good choise.
I have found recently one shape library for draw.io on github by Costantino Pipero. There are already created standard shapes.

You can just download .xml file and in draw.io you can import it in File -> Open Library from -> (choose from where you want import)
If you want edit this library or create your own - tutorial

A: If you have a Windows PC and Visio installed you can simply download the official Visio shape library form the OPC Foundation website: https://opcfoundation.org/guidelines-and-templates/

A: You can use draw.io: https://www.draw.io/
It's not an explicit tool for OPC UA but it supports all shapes, arrows and styling options.


text:
Q: NDSolve not handling discontinuity in initial condition I am trying to solve a PDE in two variables z and t. This PDE is from "Universality of Capillary Rise" by Zhou and Doi (2020). There is additonally a parameter n that can take positive integer values. The initial condition is defined as a piecewise function with a linear component and a zero component. However, when I attempt to use NDSolve on this problem and examine the output at t=0 the output is not close to the linear profile I specified. Further, while my code performs ok for n=1 it does not come close to evaluating correctly for n=2. Rather, for that case it appears that the code gets stuck and never advances the solution in time. Any help would be appreciated!
geqn[n_] :=
  Simplify[
   1/((3 n + 1 ) G[z, t]^n)*
    D[G[z, t]^(3 n + 1) (1 + 1/G[z, t]^(n + 1) D[G[z, t], z]), z]];
equilBottom[n_] := (.1*n)^(-1/n);
initialEqn[z_, Z0_, n_] :=
  Piecewise[{{equilBottom[n] (1 - (z - .1)/(Z0 - .1)),
     0.1 <= z <= Z0}, {0, Z0 < z}}];
eqnList[n_] := {D[G[z, t], t] == geqn[n], G[0.1, t] == equilBottom[n],
   G[20, t] == 0, G[z, 0] == initialEqn[z, 1, n]}

sol1 = NDSolve[eqnList[1], G[z, t], {z, .1, 20}, {t, 0, 1000}] //
   First;
sol2 = NDSolve[eqnList[2], G[z, t], {z, .1, 20}, {t, 0, 50000}] //
   First;
sol11 = sol1[[1, 2]];
sol21 = sol2[[1, 2]];

The output of these two solutions at various values of t is shown below. The output is along the x-axis and the y-axis is z. Note that the black line is the equilibrium solution of the PDE.

Further, the initial condition in the case of n=1 is shown below. Note the similarity to the output of the second plot while not obeying the initial condition as specificed in the equaiton.

Here is the code for the graphics:
Import["https://pastebin.com/raw/uUJ4rmc1", "Package"]
colors = Table[parulaNew[i], {i, 0, 1, 1/(5 - 1)}];
plots = MapThread[
   ParametricPlot[{sol11 /. {z -> z0, t -> #1}, z0}, {z0, .1, 20},
     PlotRange -> {{0, 1}, {0, 20}}, AspectRatio -> 9/16,
     PlotStyle -> #2] &, {{200, 400, 600, 800, 1000}, colors}];
equiPlot = ParametricPlot[{1/z, z}, {z, .1, 20}, PlotStyle -> Black];
plots = Join[plots, {equiPlot}];
p1 = Show[plots]

plots2 = MapThread[
   ParametricPlot[{sol21 /. {z -> z0, t -> #1}, z0}, {z0, .1, 20},
     PlotRange -> {{0, 1}, {0, 20}}, AspectRatio -> 9/16,
     PlotStyle -> #2] &, {{1000, 2000, 3000, 4000, 50000}, colors}];
equiPlot2 =
  ParametricPlot[{(2 z)^(-1/2), z}, {z, .1, 20}, PlotStyle -> Black];
plots2 = Join[plots2, {equiPlot2}];
p2 = Show[plots2]

p3 = ParametricPlot[{sol11 /. {z -> z0, t -> 0}, z0}, {z0, .1, 20},
  PlotRange -> {{-.1, 1}, {0, 5}}, AspectRatio -> 9/16]